
:root{--paper:#fbf8f2;--paper2:#f4eee5;--white:#fff;--ink:#282522;--muted:#716a63;--line:#ded4c8;--burgundy:#8f2226;--burgundy2:#6d171b;--gold:#c7a45e;--goldsoft:#efe4cc;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}
.topbar{position:sticky;top:0;z-index:30;background:rgba(251,248,242,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:78px}.brand{display:flex;align-items:center;gap:11px;font-weight:750}.brand-logo{width:42px;height:42px;object-fit:contain}.brand-word{font-family:Georgia,"Times New Roman",serif;font-size:1.08rem}.brand-word span{color:var(--burgundy)}.navlinks{display:flex;gap:20px;align-items:center;font-size:.88rem}.navlinks a{color:#5d5750}.navlinks a:hover{color:var(--burgundy)}
.cta{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border-radius:999px;background:var(--burgundy);color:#fff;font-weight:700;border:1px solid var(--burgundy)}.cta:hover{background:var(--burgundy2)}.cta.secondary{background:transparent;color:var(--burgundy);border-color:#c9a3a5}
.hero{padding:88px 0 72px;background:linear-gradient(180deg,#fffdf9 0%,var(--paper) 100%);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:64px;align-items:center}.hero-mark{display:flex;align-items:center;justify-content:center;min-height:340px;background:radial-gradient(circle at center,rgba(199,164,94,.14),transparent 60%)}.hero-mark img{width:min(270px,72%);filter:drop-shadow(0 18px 32px rgba(80,45,31,.10))}
.eyebrow{color:var(--burgundy);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.77rem}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;color:var(--ink)}h1{font-size:clamp(3rem,6vw,5.3rem);line-height:.98;letter-spacing:-.035em;margin:.18em 0 .34em;font-weight:600}h2{font-size:clamp(2rem,4vw,3.15rem);line-height:1.08;letter-spacing:-.02em;margin:.2em 0 .42em;font-weight:600}h3{font-size:1.08rem;margin:.2em 0 .38em;font-weight:600}.lead{font-size:1.17rem;color:var(--muted);max-width:760px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.methodline{margin-top:26px;color:var(--burgundy);font-weight:750;letter-spacing:.045em;font-size:.82rem}
.section{padding:76px 0;background:transparent!important}.section.alt{background:var(--white)!important;border-top:1px solid #eee6dc;border-bottom:1px solid #eee6dc}.section.soft{background:var(--paper2)!important}.intro{max-width:800px;margin-bottom:34px}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}.card{grid-column:span 4;background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:22px 4px 10px}.card.wide{grid-column:span 6}.card.full{grid-column:1/-1}.card p,.muted{color:var(--muted)}.kicker{color:var(--burgundy);font-weight:800}.pill{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--goldsoft);font-size:.76rem;color:#6f5427;margin:4px 4px 0 0}.quote{border-left:3px solid var(--gold);padding-left:22px;font-family:Georgia,"Times New Roman",serif;font-size:1.15rem;max-width:780px}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:28px}.step{border-top:2px solid var(--gold);padding:18px 8px 8px}.step .num{color:var(--burgundy);font-weight:800;font-size:.8rem;letter-spacing:.08em}.split{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:start}.bookrow{display:grid;grid-template-columns:1fr 1fr;gap:30px}.book{background:#fff;border:1px solid #e8dfd5;border-radius:16px;padding:28px;box-shadow:0 10px 32px rgba(72,45,28,.04)}.notice{padding:16px 18px;border:1px solid #dacaa8;background:#fffaf0;border-radius:12px;color:#6c5a38}
.footer{padding:48px 0;border-top:1px solid #cbbfaf;color:#d8cfca;background:#332b28}.footer .brand-word{color:#fff}.footer .brand-word span{color:#e5c67d}.footer a{color:#e7ded8}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}.small{font-size:.9rem}.list{display:grid;gap:9px;padding:0;list-style:none}.form{display:grid;gap:14px;max-width:720px}label{font-weight:700}input,textarea,select{width:100%;padding:14px 15px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:10px;font:inherit}textarea{min-height:150px}table{width:100%;border-collapse:collapse}td,th{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.mobile-toggle{display:none;background:none;border:1px solid var(--line);color:var(--ink);padding:8px 10px;border-radius:10px}.portrait-placeholder{min-height:400px;border:1px dashed #ccbfb1;border-radius:18px;background:linear-gradient(135deg,#fff,#f5eee6);display:grid;place-items:center;text-align:center;color:var(--muted);padding:30px}
@media(max-width:980px){.mobile-toggle{display:block}.navlinks{display:none;position:absolute;left:18px;right:18px;top:78px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;flex-direction:column;align-items:flex-start;box-shadow:0 16px 40px rgba(60,38,25,.08)}.navlinks.open{display:flex}.hero-grid,.split,.bookrow{grid-template-columns:1fr}.hero-mark{min-height:220px}.steps{grid-template-columns:1fr 1fr}.card,.card.wide{grid-column:1/-1}.footergrid{grid-template-columns:1fr}}
@media(max-width:620px){.wrap{width:min(var(--max),calc(100% - 28px))}.hero{padding:60px 0 54px}h1{font-size:clamp(2.7rem,14vw,4.1rem)}.steps{grid-template-columns:1fr}}

.founder-photo{
  width:100%;max-width:520px;aspect-ratio:4/5;object-fit:cover;
  border-radius:22px;box-shadow:0 18px 45px rgba(61,38,24,.10);
  border:1px solid #e4dbd0
}
.history-photo{
  width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;
  border:1px solid #e4dbd0;box-shadow:0 14px 34px rgba(61,38,24,.08)
}
.photo-caption{font-size:.82rem;color:var(--muted);margin-top:10px}

.section p{max-width:760px}
