:root{
  --warm:#f4f1e9;
  --paper:#fbfaf6;
  --ink:#1b1916;
  --charcoal:#1b1916;
  --muted:#6f6a61;
  --line:#d7d0c4;
  --linen:#e8e1d5;
  --accent:#9b8768;
  --shadow:0 32px 90px rgba(25,22,18,.14);
  --max:1320px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{
  margin:0;
  overflow-x:hidden;
  background:var(--warm);
  color:var(--ink);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
::selection{background:#c9b99f;color:var(--ink)}

.container{width:min(calc(100% - 64px),var(--max));margin-inline:auto}
.section{padding:clamp(96px,10vw,160px) 0}
.serif{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;letter-spacing:-.045em;line-height:.92}
.eyebrow{
  margin:0;
  color:#514c43;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.22em;
  line-height:1.3;
  text-transform:uppercase;
}
.skip-link{
  position:fixed;
  top:12px;
  left:12px;
  z-index:100;
  padding:12px 18px;
  transform:translateY(-160%);
  background:#fff;
  color:#111;
  font-weight:700;
  transition:transform .2s ease;
}
.skip-link:focus{transform:none}
:focus-visible{outline:2px solid var(--accent);outline-offset:4px}

.logo{
  display:inline-block;
  flex:0 0 auto;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:1.32rem;
  font-weight:500;
  letter-spacing:.15em;
  line-height:.95;
  text-transform:uppercase;
}
.logo span{
  display:block;
  margin-top:5px;
  padding-left:2px;
  font-family:Inter,sans-serif;
  font-size:.54rem;
  font-weight:600;
  letter-spacing:.57em;
}

.site-header{
  position:fixed;
  inset:0 0 auto;
  z-index:50;
  height:92px;
  color:#fff;
  border-bottom:1px solid transparent;
  transition:height .35s ease,background .35s ease,color .35s ease,border-color .35s ease,backdrop-filter .35s ease;
}
.site-header.is-scrolled,.site-header.menu-active{
  height:76px;
  background:rgba(244,241,233,.94);
  color:var(--ink);
  border-color:rgba(27,25,22,.12);
  backdrop-filter:blur(18px);
}
.site-header.menu-active{
  background:transparent;
  border-color:transparent;
  backdrop-filter:none;
}
.site-header.menu-active .logo{position:relative;z-index:2;color:var(--ink)}
.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}
.nav-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(20px,2.4vw,38px);
  margin-left:auto;
}
.nav-links>a,.nav-waitlist{
  position:relative;
  padding:8px 0;
  font-size:.64rem;
  font-weight:700;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.nav-links>a:after,.nav-waitlist:after{
  content:"";
  position:absolute;
  right:0;
  bottom:1px;
  left:0;
  height:1px;
  transform:scaleX(0);
  transform-origin:right;
  background:currentColor;
  transition:transform .25s ease;
}
.nav-links>a:hover:after,.nav-links>a:focus-visible:after,.nav-waitlist:hover:after,.nav-waitlist:focus-visible:after{transform:scaleX(1);transform-origin:left}
.nav-actions{display:flex;align-items:center;gap:22px}
.mobile-nav-actions,.menu-toggle{display:none}

.btn{
  display:inline-flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  padding:0 24px;
  border:1px solid currentColor;
  background:transparent;
  color:inherit;
  cursor:pointer;
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.16em;
  line-height:1;
  text-transform:uppercase;
  transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-dark{border-color:var(--charcoal);background:var(--charcoal);color:#fff}
.btn-dark:hover{background:#342f29;border-color:#342f29}
.btn-light{border-color:rgba(255,255,255,.92);background:rgba(255,255,255,.92);color:var(--ink)}
.site-header.is-scrolled .btn-light{border-color:var(--charcoal);background:var(--charcoal);color:#fff}
.btn-ghost{border-color:rgba(255,255,255,.62);color:#fff}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.1)}
.btn-wide{width:100%}
.text-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding-bottom:6px;
  border-bottom:1px solid currentColor;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.text-link span{transition:transform .25s ease}
.text-link:hover span{transform:translate(3px,-3px)}

.hero{
  position:relative;
  display:flex;
  min-height:760px;
  height:100svh;
  max-height:980px;
  align-items:center;
  overflow:hidden;
  background:#2a241e;
  color:#fff;
}
.hero-media,.hero-media img,.hero-shade{position:absolute;inset:0;width:100%;height:100%}
.hero-media img{object-fit:cover;object-position:55% center;animation:hero-drift 18s ease-out both}
.hero-shade{
  background:
    linear-gradient(90deg,rgba(20,16,12,.73) 0%,rgba(20,16,12,.49) 34%,rgba(20,16,12,.08) 66%,rgba(20,16,12,.12) 100%),
    linear-gradient(180deg,rgba(0,0,0,.15),transparent 40%,rgba(0,0,0,.28));
}
.hero-content{position:relative;z-index:2;display:flex;height:100%;align-items:center;padding-top:78px}
.hero-copy{max-width:680px}
.hero .eyebrow{margin-bottom:22px;color:rgba(255,255,255,.8)}
.hero h1{max-width:680px;margin:0;font-size:clamp(4.6rem,7vw,7.8rem);text-wrap:balance}
.hero-intro{max-width:470px;margin:30px 0 0;color:rgba(255,255,255,.86);font-size:1.06rem;line-height:1.75}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.scroll-cue{
  position:absolute;
  right:0;
  bottom:42px;
  display:flex;
  align-items:center;
  gap:16px;
  color:rgba(255,255,255,.78);
  font-size:.61rem;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.scroll-cue i{display:block;width:72px;height:1px;background:rgba(255,255,255,.65);animation:cue 2.4s ease-in-out infinite}

.philosophy{background:var(--paper)}
.philosophy-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(54px,8vw,118px);align-items:center}
.philosophy-copy{padding-left:clamp(0px,4vw,52px)}
.philosophy h2{max-width:610px;margin:22px 0 32px;font-size:clamp(3.6rem,5.6vw,6.5rem)}
.philosophy .lead{max-width:500px;margin:0;color:#4d483f;font-size:1.02rem}
.mini-proof{display:grid;gap:11px;margin-top:40px;padding-top:26px;border-top:1px solid var(--line)}
.mini-proof span{font-size:.68rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.philosophy-image{margin:0}
.philosophy-image img{width:100%;height:clamp(520px,56vw,760px);object-fit:cover;box-shadow:var(--shadow)}
.philosophy-image figcaption{display:grid;grid-template-columns:42px 1fr;gap:20px;max-width:570px;margin:24px 0 0 auto;color:var(--muted);font-size:.82rem;line-height:1.6}
.philosophy-image figcaption span{padding-top:3px;border-top:1px solid var(--ink);color:var(--ink);font-family:"Cormorant Garamond",Georgia,serif;font-size:1.2rem}

.method{background:var(--warm)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px}
.section-heading>p:last-child{max-width:350px;margin:0;color:var(--muted);text-align:right}
.method-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:54px;border-top:1px solid var(--line)}
.method-item{position:relative;min-height:300px;padding:28px 30px 28px 0;border-right:1px solid var(--line)}
.method-item:not(:first-child){padding-left:30px}
.method-item:last-child{border-right:0}
.number{color:#726b60;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.55rem}
.method-item h3{margin:72px 0 14px;font-family:"Cormorant Garamond",Georgia,serif;font-size:2.55rem;font-weight:400;letter-spacing:-.035em;line-height:1}
.method-item p{max-width:230px;margin:0;color:var(--muted);font-size:.9rem}

.approach{padding:clamp(100px,10vw,152px) 0;background:var(--charcoal);color:#f4efe6}
.approach .eyebrow{color:#bdb5a8}
.approach-heading{display:flex;align-items:start;justify-content:space-between;gap:40px}
.approach-heading h2{margin:0;font-size:clamp(4rem,7vw,7.6rem);text-align:right}
.principles{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;margin-top:86px}
.principle{padding-top:20px;border-top:1px solid rgba(255,255,255,.24)}
.principle>span{color:#928a7d;font-size:.65rem;letter-spacing:.16em}
.principle h3{margin:42px 0 14px;font-family:"Cormorant Garamond",Georgia,serif;font-size:2.1rem;font-weight:400;letter-spacing:-.025em;line-height:1.05}
.principle p{margin:0;color:#aaa397;font-size:.86rem}

.feature-photo{position:relative;display:flex;height:min(82vw,840px);min-height:620px;align-items:end;overflow:hidden;background:#c6b9a4;color:#fff}
.feature-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.feature-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 36%,rgba(20,15,10,.58) 100%)}
.feature-copy{position:relative;z-index:1;padding-bottom:70px}
.feature-copy .eyebrow{margin-bottom:18px;color:rgba(255,255,255,.76)}
.feature-copy h2{max-width:850px;margin:0;font-size:clamp(4rem,7vw,7.8rem)}

.services{background:var(--paper)}
.services-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:68px}
.services-head h2{margin:18px 0 0;font-size:clamp(4rem,6vw,7rem)}
.services-head>p{max-width:450px;margin:0 0 12px;color:var(--muted)}
.service-list{border-top:1px solid var(--ink)}
.service-row{display:grid;grid-template-columns:64px minmax(270px,.85fr) 1fr 54px;gap:30px;align-items:center;padding:40px 0;border-bottom:1px solid var(--line)}
.service-number{align-self:start;padding-top:8px;color:var(--muted);font-family:"Cormorant Garamond",Georgia,serif;font-size:1.25rem}
.service-title p{margin:0 0 10px;color:var(--muted);font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.service-title h3{margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.5rem,4vw,4.5rem);font-weight:400;letter-spacing:-.04em;line-height:.94}
.service-description{max-width:470px;margin:0;color:#5e584f}
.round-link{display:grid;width:52px;height:52px;place-items:center;border:1px solid var(--ink);border-radius:50%;font-size:1.15rem;transition:background .25s ease,color .25s ease,transform .25s ease}
.round-link:hover{transform:rotate(45deg);background:var(--ink);color:#fff}
.service-note{margin:24px 0 0;color:var(--muted);font-size:.75rem}

.service-area{border-top:1px solid var(--line);background:var(--warm)}
.service-area-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(60px,9vw,140px);align-items:start}
.service-area h2{max-width:700px;margin:20px 0 0;font-size:clamp(3.8rem,5.5vw,6.6rem)}
.area-copy{padding-top:34px;border-top:1px solid var(--ink)}
.area-copy>p{max-width:550px;margin:0 0 38px;color:#504b43}
.area-list{display:grid;grid-template-columns:repeat(2,1fr);margin-bottom:38px;border-top:1px solid var(--line)}
.area-list span{padding:13px 0;border-bottom:1px solid var(--line);font-size:.7rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}

.book-section{overflow:hidden;background:#ded6c9}
.book-layout{display:grid;grid-template-columns:1fr .95fr;gap:clamp(60px,9vw,130px);align-items:center}
.book-stage{position:relative;display:grid;min-height:670px;place-items:center;perspective:1200px}
.book-stage:before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:rgba(255,255,255,.34);filter:blur(1px)}
.book-shadow{position:absolute;bottom:62px;width:390px;height:70px;transform:rotate(-4deg);border-radius:50%;background:rgba(35,28,21,.2);filter:blur(24px)}
.book-mockup{position:relative;display:flex;width:min(385px,72vw);aspect-ratio:3/4;flex-direction:column;padding:48px 42px 38px;transform:rotateY(-10deg) rotateZ(-2deg);border:1px solid rgba(53,46,38,.3);background:#f3efe5;box-shadow:32px 36px 55px rgba(44,36,28,.25),inset -13px 0 22px rgba(80,67,50,.08)}
.book-mockup:after{content:"";position:absolute;inset:0 0 0 auto;width:10px;background:linear-gradient(90deg,rgba(100,85,65,.04),rgba(100,85,65,.15))}
.book-mockup p{margin:0 0 30px;font-size:.64rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.book-mockup h3{margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-size:3.65rem;font-weight:400;letter-spacing:-.045em;line-height:.84}
.book-mockup>span{max-width:185px;margin-top:auto;color:#61594e;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.2rem;line-height:1.2}
.book-mockup small{margin-top:28px;font-size:.58rem;font-weight:700;letter-spacing:.2em}
.book-copy h2{max-width:640px;margin:22px 0 30px;font-size:clamp(3.8rem,5.6vw,6.5rem)}
.book-copy>p:not(.eyebrow){max-width:520px;margin:0 0 34px;color:#534c42}
.book-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:560px;margin-top:36px}
.book-form .btn,.book-form .form-status{grid-column:1/-1}
.book-form .btn{min-height:54px}

.testimonials{padding:clamp(96px,10vw,150px) 0;background:var(--paper)}
.testimonial-heading{display:flex;align-items:end;justify-content:space-between;gap:30px}
.testimonial-heading h2{max-width:700px;margin:0;font-size:clamp(3.8rem,5.5vw,6.4rem);text-align:right}
.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:78px}
.quote{padding-top:26px;border-top:1px solid var(--line)}
.quote blockquote{min-height:150px;margin:0 0 36px;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(1.8rem,2.6vw,2.5rem);letter-spacing:-.02em;line-height:1.1}
.quote cite{color:var(--muted);font-size:.65rem;font-style:normal;font-weight:700;letter-spacing:.15em;text-transform:uppercase}

.faq-section{border-top:1px solid var(--line);background:var(--warm)}
.faq-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(60px,9vw,140px);align-items:start}
.faq-heading{position:sticky;top:120px}
.faq-heading h2{max-width:520px;margin:20px 0 28px;font-size:clamp(3.6rem,5vw,6rem)}
.faq-heading>p:last-child{max-width:400px;margin:0;color:var(--muted)}
.faq-list{border-top:1px solid var(--ink)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{position:relative;padding:28px 62px 28px 0;cursor:pointer;list-style:none;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.75rem;letter-spacing:-.02em;line-height:1.1}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";position:absolute;top:28px;right:5px;width:28px;height:28px;color:var(--muted);font-family:Inter,sans-serif;font-size:1.15rem;font-weight:400;line-height:1;text-align:center;transition:transform .3s ease}
.faq-list details[open] summary:after{transform:rotate(45deg)}
.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.faq-answer p{overflow:hidden;max-width:650px;margin:0;color:#565048;line-height:1.75}
.faq-list details[open] .faq-answer{grid-template-rows:1fr}
.faq-list details[open] .faq-answer p{padding:0 50px 30px 0}

.waitlist{border-top:1px solid var(--line);background:var(--paper)}
.waitlist-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(60px,9vw,135px);align-items:start}
.waitlist-copy h2{max-width:620px;margin:20px 0 28px;font-size:clamp(4rem,5.6vw,6.8rem)}
.waitlist-copy>p:not(.eyebrow){max-width:470px;margin:0;color:var(--muted)}
.waitlist-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:38px}
.waitlist-meta span{padding:8px 12px;border:1px solid var(--line);font-size:.62rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;padding-top:4px}
.field{display:flex;flex-direction:column;gap:8px}
.field-wide{grid-column:1/-1}
.field label{font-size:.64rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.field label span{color:var(--muted);font-weight:400;text-transform:none}
input,select,textarea{width:100%;min-height:54px;padding:0 15px;border:1px solid #cfc7ba;border-radius:0;outline:none;background:#fff;color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease}
textarea{min-height:126px;padding-top:14px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(27,25,22,.08)}
.form-grid>.btn{grid-column:1/-1;min-height:56px}
.form-note{grid-column:1/-1;margin:0;color:var(--muted);font-size:.78rem;text-align:center}
.form-note a{border-bottom:1px solid var(--line)}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-status{min-height:1.4em;margin:0;color:var(--muted);font-size:.78rem;line-height:1.5}
.form-status.is-success{color:#365f48}
.form-status.is-error{color:#8c302a}
.brevo-form[aria-busy="true"] button{cursor:wait;opacity:.68}

footer{padding:86px 0 30px;background:var(--charcoal);color:#eee8de}
.footer-top{display:grid;grid-template-columns:2.1fr repeat(3,1fr);gap:50px;padding-bottom:76px}
.footer-brand>p{margin:38px 0 0;color:#d6cfc4;font-size:clamp(2.3rem,3.2vw,3.7rem)}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:9px;color:#a9a296;font-size:.82rem}
.footer-column a{transition:color .2s ease}.footer-column a:hover{color:#fff}
.footer-label{margin:0 0 18px;color:#eee8de;font-size:.62rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.footer-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.16);color:#8f887d;font-size:.67rem;letter-spacing:.05em}
.footer-bottom>span:nth-child(2){text-align:center}
.rinko-credit{color:#c9c1b5;text-align:right}
.rinko-credit strong{color:#fff;font-weight:600}

@keyframes hero-drift{from{transform:scale(1.04)}to{transform:scale(1)}}
@keyframes cue{0%,100%{transform:scaleX(.5);transform-origin:left}50%{transform:scaleX(1);transform-origin:left}}
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .85s ease,transform .85s cubic-bezier(.22,1,.36,1)}
.js .reveal.in{opacity:1;transform:none}

@media(max-width:1120px){
  .site-header{height:78px}
  .nav-actions{margin-left:0}
  .nav-waitlist{display:none}
  .menu-toggle{position:relative;z-index:2;display:flex;width:46px;height:46px;flex-direction:column;align-items:center;justify-content:center;gap:7px;margin-left:auto;padding:0;border:1px solid rgba(255,255,255,.58);background:transparent;cursor:pointer}
  .site-header.is-scrolled .menu-toggle,.site-header.menu-active .menu-toggle{border-color:var(--line)}
  .menu-toggle span{display:block;width:18px;height:1px;background:currentColor;transition:transform .25s ease}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .nav-links{position:fixed;inset:0;display:flex;visibility:hidden;align-items:flex-start;justify-content:center;flex-direction:column;gap:0;margin:0;padding:118px 32px 48px;background:var(--warm);color:var(--ink);opacity:0;transform:translateY(-14px);transition:opacity .3s ease,transform .3s ease,visibility .3s ease}
  .nav-links.is-open{visibility:visible;opacity:1;transform:none}
  .nav-links>a{width:100%;padding:13px 0;border-bottom:1px solid var(--line);font-family:"Cormorant Garamond",Georgia,serif;font-size:2.55rem;font-weight:400;letter-spacing:-.02em;text-transform:none}
  .nav-links>a:after{display:none}
  .mobile-nav-actions{display:flex;align-items:center;gap:24px;margin-top:32px}
  .philosophy-grid{grid-template-columns:.9fr 1.1fr;gap:52px}
  .method-grid{grid-template-columns:repeat(2,1fr)}
  .method-item:nth-child(2){border-right:0}.method-item:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .principles{grid-template-columns:repeat(2,1fr)}
  .service-row{grid-template-columns:50px 1fr 1fr 52px;gap:22px}
  .footer-top{grid-template-columns:1.7fr repeat(3,1fr);gap:32px}
}

@media(max-width:820px){
  .container{width:min(calc(100% - 40px),var(--max))}
  .section{padding:92px 0}
  .nav-actions .btn{display:none}
  .hero{min-height:720px;max-height:900px}
  .hero-media img{object-position:62% center}
  .hero-shade{background:linear-gradient(90deg,rgba(20,16,12,.72),rgba(20,16,12,.3)),linear-gradient(180deg,rgba(0,0,0,.08),transparent 42%,rgba(0,0,0,.35))}
  .hero h1{font-size:clamp(4.1rem,13vw,6.1rem)}
  .scroll-cue{display:none}
  .philosophy-grid,.service-area-grid,.book-layout,.faq-layout,.waitlist-grid{grid-template-columns:1fr}
  .philosophy-copy{padding-left:0}
  .philosophy-image{margin-top:8px}
  .philosophy-image img{height:min(110vw,680px)}
  .approach-heading,.services-head,.testimonial-heading{display:block}
  .approach-heading h2,.testimonial-heading h2{margin-top:24px;text-align:left}
  .principles{margin-top:58px}
  .feature-photo{height:760px}
  .feature-photo>img{object-position:58% center}
  .service-row{grid-template-columns:42px 1fr 52px}
  .service-description{grid-column:2/3}
  .round-link{grid-column:3;grid-row:1/3}
  .area-copy{padding-top:0;border-top:0}
  .book-stage{min-height:560px;order:2}
  .book-copy{order:1}
  .quote-grid{grid-template-columns:1fr;gap:48px}
  .quote blockquote{min-height:0}
  .faq-heading{position:static}
  .faq-list{margin-top:6px}
  .footer-top{grid-template-columns:1.7fr 1fr 1fr}
  .footer-column:last-child{display:none}
}

@media(max-width:560px){
  html{scroll-padding-top:70px}
  .container{width:min(calc(100% - 28px),var(--max))}
  .site-header,.site-header.is-scrolled,.site-header.menu-active{height:70px}
  .logo{font-size:1.14rem}.logo span{font-size:.49rem}
  .menu-toggle{width:42px;height:42px}
  .nav-links{padding:98px 20px 34px}
  .nav-links>a{font-size:2.15rem}
  .mobile-nav-actions{align-items:flex-start;flex-direction:column}
  .hero{min-height:700px;height:100svh}
  .hero-content{align-items:flex-end;padding:118px 0 66px}
  .hero-media img{object-position:64% center}
  .hero-shade{background:linear-gradient(180deg,rgba(20,16,12,.18) 0%,rgba(20,16,12,.18) 32%,rgba(20,16,12,.82) 100%)}
  .hero h1{font-size:clamp(3.75rem,17vw,5rem)}
  .hero-intro{margin-top:22px;font-size:.96rem}
  .hero-actions{margin-top:28px}.hero-actions .btn{min-height:46px;padding:0 16px}
  .philosophy h2,.service-area h2,.book-copy h2,.faq-heading h2,.waitlist-copy h2{font-size:3.55rem}
  .philosophy-image img{height:125vw;max-height:620px}
  .section-heading{display:block}.section-heading>p:last-child{margin-top:18px;text-align:left}
  .method-grid{grid-template-columns:1fr;margin-top:38px}
  .method-item,.method-item:not(:first-child){min-height:0;padding:24px 0 30px;border-right:0;border-bottom:1px solid var(--line)}
  .method-item h3{margin:34px 0 12px}
  .principles{grid-template-columns:1fr;gap:40px}
  .approach-heading h2{font-size:3.85rem}
  .feature-photo{height:650px;min-height:0}.feature-copy{padding-bottom:42px}.feature-copy h2{font-size:4rem}
  .services-head h2{font-size:4rem}.services-head>p{margin-top:24px}
  .service-list{margin-top:48px}
  .service-row{grid-template-columns:32px 1fr 44px;gap:14px;padding:30px 0}
  .service-title h3{font-size:2.55rem}.service-description{font-size:.88rem}
  .round-link{width:42px;height:42px}
  .area-list{grid-template-columns:1fr}
  .book-stage{min-height:480px}.book-stage:before{width:430px;height:430px}.book-mockup{padding:38px 30px 30px}.book-mockup h3{font-size:3rem}
  .book-form{grid-template-columns:1fr}
  .book-form .btn,.book-form .form-status{grid-column:auto}
  .testimonial-heading h2{font-size:3.75rem}
  .quote-grid{margin-top:52px}.quote blockquote{font-size:2rem}
  .faq-list summary{padding:24px 46px 24px 0;font-size:1.5rem}.faq-list summary:after{top:24px}
  .form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.form-grid>.btn,.form-note{grid-column:auto}
  .footer-top{grid-template-columns:1fr 1fr;gap:54px 28px}.footer-brand{grid-column:1/-1}.footer-brand>p{font-size:2.7rem}
  .footer-bottom{grid-template-columns:1fr;gap:10px}.footer-bottom>span:nth-child(2){display:none}.rinko-credit{text-align:left}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .js .reveal{opacity:1;transform:none}
}
