  :root{--ink:#171414;--ink-soft:#241719;--wine:#732e34;--wine-dark:#4f1d22;--paper:#f5f0e9;--paper-2:#ebe3d8;--white:#fff;--muted:#726866;--gold:#d7aa72;--line:rgba(115,46,52,.18);--shadow:0 28px 80px rgba(23,20,20,.18);--shell:min(1180px,calc(100% - 40px));}
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;scroll-padding-top:84px;}
  body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden;}
  img{display:block;max-width:100%;height:auto;}
  a{color:inherit;text-decoration:none;}
  button,input,textarea{font:inherit;}
  button,a{-webkit-tap-highlight-color:transparent;}
  :focus-visible{outline:3px solid var(--gold);outline-offset:4px;}
  .shell{width:var(--shell);margin-inline:auto;}
  .shell-wide{width:min(1400px,calc(100% - 40px));margin-inline:auto;}
  .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
  .skip-link{position:fixed;z-index:9999;top:12px;left:12px;padding:10px 16px;background:#fff;color:#111;transform:translateY(-150%);}
  .skip-link:focus{transform:none;}
  .site-header{position:absolute;z-index:100;top:0;left:0;right:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px;width:var(--shell);margin:auto;padding:22px 0;color:#fff;border-bottom:1px solid rgba(255,255,255,.16);}
  .brand{justify-self:start;}
  .brand img{width:108px;height:auto;}
  .site-header>nav{display:flex;gap:28px;font-size:13px;text-transform:uppercase;letter-spacing:.12em;}
  .site-header>nav a{position:relative;padding:8px 0;}
  .site-header>nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--gold);transition:right .25s ease;}
  .site-header>nav a:hover:after{right:0;}
  .button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 24px;border:1px solid var(--wine);border-radius:999px;background:var(--wine);color:#fff;font-weight:700;line-height:1.2;transition:transform .25s ease,background .25s ease,box-shadow .25s ease;}
  .button:hover{transform:translateY(-2px);background:var(--wine-dark);box-shadow:0 10px 28px rgba(115,46,52,.3);}
  .button-small{justify-self:end;min-height:42px;padding:10px 18px;border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.08);backdrop-filter:blur(8px);font-size:13px;}
  .menu-button,.mobile-nav{display:none;}
  .hero{position:relative;min-height:940px;height:100svh;max-height:980px;display:grid;align-items:center;overflow:hidden;background:radial-gradient(circle at 76% 45%,rgba(115,46,52,.6),transparent 34%),linear-gradient(120deg,#171113 0%,#29191c 58%,#120e0f 100%);color:#fff;isolation:isolate;}
  .hero-grid-glow{position:absolute;inset:0;z-index:-3;opacity:.23;background-image:linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,transparent,#000 60%,transparent);transform:perspective(700px) rotateX(64deg) scale(1.4) translateY(23%);}
  .smoke{position:absolute;z-index:-2;width:50vw;aspect-ratio:1;border-radius:50%;filter:blur(80px);opacity:.18;pointer-events:none;animation:drift 14s ease-in-out infinite alternate;}
  .smoke-one{right:-12%;top:7%;background:radial-gradient(circle,#b1535c,transparent 66%);}
  .smoke-two{left:30%;bottom:-42%;background:radial-gradient(circle,#e3b98a,transparent 66%);animation-delay:-7s;}
  @keyframes drift{to{transform:translate3d(-4%,6%,0) scale(1.08);}}
  .hero-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,.85fr);gap:7vw;align-items:center;padding-top:92px;}
  .hero-copy{position:relative;z-index:2;max-width:680px;animation:hero-in .8s cubic-bezier(.2,.75,.2,1) both;}
  .eyebrow{margin:0 0 18px;color:var(--wine);font-size:12px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;}
  .hero .eyebrow,.story-scene-dark .eyebrow{color:#e1ad77;}
  h1,h2,h3,p{margin-top:0;}
  h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:.98;letter-spacing:-.045em;}
  h1{margin-bottom:25px;font-size:clamp(58px,7vw,110px);}
  h1 em{color:#e2b27f;font-weight:400;}
  .hero-lead{max-width:640px;margin-bottom:30px;color:rgba(255,255,255,.74);font-size:clamp(17px,1.5vw,21px);}
  .hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
  .hero .button{background:#fff;color:var(--wine);border-color:#fff;}
  .hero .button:hover{background:var(--paper);}
  .text-link{display:inline-flex;gap:10px;align-items:center;font-weight:700;}
  .text-link span{transition:transform .25s ease;}
  .text-link:hover span{transform:translate(4px,4px);}
  .trust-list{display:flex;gap:22px;flex-wrap:wrap;margin:28px 0 0;padding:0;list-style:none;color:rgba(255,255,255,.65);font-size:13px;}
  .trust-list li{display:flex;align-items:center;gap:8px;}
  .trust-list li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);}
  .hero-art{position:relative;height:570px;animation:hero-in 1s .12s cubic-bezier(.2,.75,.2,1) both;}
  .orbit{position:absolute;left:50%;top:48%;border:1px solid rgba(255,255,255,.18);border-radius:50%;transform:translate(-50%,-50%) rotate(-18deg);}
  .orbit-one{width:500px;height:300px;}
  .orbit-two{width:590px;height:390px;border-color:rgba(215,170,114,.18);transform:translate(-50%,-50%) rotate(28deg);}
  .future-hero-books{position:relative;min-height:570px;}
  .future-book{position:absolute;z-index:1;top:74px;left:0;display:grid;width:clamp(170px,17vw,230px);aspect-ratio:2/3;place-items:center;opacity:0;visibility:hidden;filter:brightness(.76) saturate(.78);transform:translate3d(-18%,20px,0) rotate(-10deg) scale(.82);transition:left .9s cubic-bezier(.22,.72,.24,1),top .9s cubic-bezier(.22,.72,.24,1),transform .9s cubic-bezier(.22,.72,.24,1),opacity .55s ease,filter .9s ease,visibility 0s linear .9s;will-change:left,top,transform,opacity;}
  .future-book img{width:100%;height:100%;object-fit:cover;border-radius:5px;box-shadow:0 32px 65px rgba(0,0,0,.5);}
  .future-book.book-back,.future-book.book-main,.future-book.book-front,.future-book.book-leaving{visibility:visible;transition-delay:0s;}
  .future-book.book-back{z-index:1;top:92px;left:2%;opacity:.72;filter:brightness(.66) saturate(.68);transform:rotate(-11deg) scale(.82);}
  .future-book.book-main{z-index:3;top:12px;left:29%;opacity:1;filter:none;transform:rotate(-1deg) scale(1.06);}
  .future-book.book-front{z-index:2;top:128px;left:100%;opacity:.86;filter:brightness(.78) saturate(.82);transform:translateX(-97%) rotate(11deg) scale(.9);}
  .future-book.book-leaving{z-index:4;top:155px;left:118%;opacity:0;filter:brightness(.7);transform:translateX(-50%) rotate(17deg) scale(.78);pointer-events:none;}
  .hero-slider-caption{position:absolute;z-index:5;right:2%;bottom:8px;width:210px;margin:0;padding:14px 16px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(24,16,18,.74);box-shadow:0 18px 40px rgba(0,0,0,.28);backdrop-filter:blur(10px);color:rgba(255,255,255,.62);font-size:12px;line-height:1.45;}
  .hero-slider-caption strong{display:block;color:#fff;font-family:Georgia,serif;font-size:17px;font-weight:400;}
  .scroll-cue{position:absolute;bottom:28px;left:50%;display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.6);font-size:11px;letter-spacing:.16em;text-transform:uppercase;transform:translateX(-50%);}
  .scroll-cue i{display:block;width:42px;height:1px;background:rgba(255,255,255,.4);}
  @keyframes hero-in{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:none;}}
  .video-section,.books-section,.faq-section{padding:120px 0;}
  .video-section{background:#fbf8f3;}
  .section-heading{margin-bottom:48px;}
  .split-heading{display:grid;grid-template-columns:1.15fr .55fr;gap:8vw;align-items:end;}
  .split-heading h2,.process-heading h2,.faq-layout h2,.consultation h2{margin-bottom:0;font-size:clamp(44px,5.6vw,82px);}
  .split-heading>p{margin-bottom:8px;color:var(--muted);font-size:18px;}
  .rail-wrap{position:relative;}
  .media-rail,.book-rail{display:block;overflow:hidden;scrollbar-width:none;}
  [data-auto-rail]{scroll-behavior:auto;}
  .auto-loop-track{display:flex;gap:22px;width:max-content;will-change:transform;}
  .auto-loop-set{display:flex;flex:none;gap:22px;}
  .media-rail .auto-loop-set{width:min(1180px,calc(100vw - 40px));}
  .book-rail .auto-loop-set{width:max-content;}
  .media-rail::-webkit-scrollbar,.book-rail::-webkit-scrollbar{display:none;}
  .media-rail{padding:8px 4px 20px;}
  .video-card{flex:0 0 calc((100% - 44px)/3);min-width:0;padding:0;border:0;border-radius:18px;background:#fff;color:var(--ink);text-align:left;overflow:hidden;box-shadow:0 12px 36px rgba(31,23,24,.08);cursor:pointer;scroll-snap-align:start;transition:transform .3s ease,box-shadow .3s ease;}
  .video-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);}
  .video-frame{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#2b1b1e;}
  .video-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(20,12,14,.55));}
  .video-frame img{width:100%;height:100%;object-fit:cover;}
  .video-frame i{position:absolute;z-index:2;left:22px;bottom:20px;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#fff;color:var(--wine);font-style:normal;box-shadow:0 10px 30px rgba(0,0,0,.3);}
  .video-meta{display:grid;grid-template-columns:auto 1fr;gap:0 14px;padding:20px 22px;}
  .video-meta b{grid-row:1/3;color:var(--wine);font-size:12px;}
  .video-meta strong{font-family:Georgia,serif;font-size:22px;line-height:1.1;}
  .video-meta small{color:var(--muted);}
  .rail-arrow{position:absolute;z-index:3;top:42%;display:grid;place-items:center;width:46px;height:46px;border:0;border-radius:50%;background:var(--wine);color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.18);cursor:pointer;}
  .rail-arrow.prev{left:-18px;}
  .rail-arrow.next{right:-18px;}
  .books-section{background:var(--paper-2);overflow:hidden;}
  .books-section .section-heading{width:var(--shell);}
  .book-rail{padding:10px max(20px,calc((100vw - min(1180px,calc(100vw - 40px)))/2)) 30px;}
  .book-card{flex:0 0 220px;scroll-snap-align:start;}
  .book-card>a,.book-card>.book-static{position:relative;display:block;}
  .book-card img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:5px;box-shadow:0 15px 35px rgba(30,21,22,.2);transition:transform .35s ease,box-shadow .35s ease;}
  .book-card a:hover img{transform:translateY(-8px) rotate(.7deg);box-shadow:0 26px 50px rgba(30,21,22,.28);}
  .corner-tag{position:absolute;z-index:2;top:12px;left:-6px;width:74px;padding:5px 7px;background:var(--wine);color:#fff;font-size:9px;font-weight:800;line-height:1.05;letter-spacing:.06em;text-align:center;text-transform:uppercase;transform:rotate(-45deg) translate(-20px,-8px);transform-origin:center;box-shadow:0 4px 12px rgba(0,0,0,.2);pointer-events:none;}
  .book-action{display:flex;justify-content:space-between;gap:10px;padding-top:14px;}
  .book-action strong{font-family:Georgia,serif;font-size:16px;line-height:1.25;}
  .book-action i{color:var(--wine);font-style:normal;}
  .process-section{padding:130px 0 80px;background:#f8f4ee;}
  .process-heading{display:grid;grid-template-columns:.45fr 1fr;gap:7vw;margin-bottom:70px;}
  .process-heading>div{display:grid;grid-template-columns:1fr .55fr;gap:4vw;align-items:end;}
  .process-heading p{color:var(--muted);}
  .process-stack{position:relative;display:block;padding-bottom:34vh;}
  .process-card{position:sticky;top:clamp(82px,12vh,118px);min-height:clamp(470px,72vh,590px);margin-bottom:clamp(100px,22vh,190px);padding:44px 48px;display:grid;grid-template-columns:.7fr 1.2fr .65fr;gap:40px;align-items:end;border:1px solid rgba(255,255,255,.18);border-radius:22px;background:var(--ink-soft);color:#fff;box-shadow:0 25px 60px rgba(27,17,19,.22);overflow:hidden;}
  .process-card-1{z-index:1;}
  .process-card-2{z-index:2;}
  .process-card-3{z-index:3;}
  .process-card-4{z-index:4;}
  .process-card-5{z-index:5;margin-bottom:0;}
  .process-card-2{background:#ede4d9;color:var(--ink);}
  .process-card-3{background:#6e2b31;}
  .process-card-4{background:#d8b485;color:var(--ink);}
  .process-card-5{background:#211719;}
  .process-number{position:absolute;right:3%;top:-18%;font-family:Georgia,serif;font-size:370px;line-height:1;color:rgba(255,255,255,.07);letter-spacing:-.08em;}
  .process-card-2 .process-number,.process-card-4 .process-number{color:rgba(115,46,52,.08);}
  .process-label{align-self:start;font-size:12px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;}
  .process-content{position:relative;z-index:1;}
  .process-content h3{margin-bottom:22px;font-size:clamp(42px,4.2vw,64px);}
  .process-content p{max-width:600px;color:rgba(255,255,255,.68);font-size:18px;}
  .process-card-2 .process-content p,.process-card-4 .process-content p{color:rgba(23,20,20,.68);}
  .process-content a{display:inline-flex;gap:8px;font-weight:700;border-bottom:1px solid currentColor;}
  .process-card dl{position:relative;z-index:1;margin:0;}
  .process-card dl div{padding:16px 0;border-top:1px solid rgba(255,255,255,.2);}
  .process-card-2 dl div,.process-card-4 dl div{border-color:rgba(23,20,20,.18);}
  .process-card dt{font-family:Georgia,serif;font-size:17px;}
  .process-card dd{margin:2px 0 0;opacity:.55;font-size:12px;text-transform:uppercase;letter-spacing:.14em;}
  .story-scene{position:relative;height:200vh;overflow:clip;}
  .story-pin{position:sticky;top:0;height:100svh;min-height:620px;padding:clamp(38px,6vh,70px) 0 0;overflow:hidden;}
  .story-scene-dark,.story-scene-dark .story-pin{background:#171113;color:#fff;}
  .story-scene-light,.story-scene-light .story-pin{background:#d9c5ac;color:var(--ink);}
  .story-heading{display:grid;grid-template-columns:.4fr 1fr;gap:0 6vw;align-items:end;}
  .story-heading h2{max-width:860px;margin-bottom:12px;font-size:clamp(40px,4.6vw,70px);}
  .story-direction{grid-column:2;margin:0 0 14px;color:inherit;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;opacity:.55;}
  .story-progress{grid-column:2;width:100%;height:2px;background:rgba(255,255,255,.14);}
  .story-scene-light .story-progress{background:rgba(23,20,20,.14);}
  .story-progress i{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(0);transform-origin:left;will-change:transform;}
  .story-track{display:flex;gap:32px;width:max-content;margin-top:20px;padding:8px max(20px,calc((100vw - min(1180px,calc(100vw - 40px)))/2)) 24px;overflow:visible;will-change:transform;}
  .story-track::-webkit-scrollbar{display:none;}
  .story-track article{flex:0 0 min(520px,82vw);width:auto;height:clamp(280px,calc(100svh - 390px),360px);padding:34px 38px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid rgba(255,255,255,.15);border-radius:18px;background:linear-gradient(155deg,rgba(255,255,255,.1),rgba(255,255,255,.025));overflow:hidden;}
  .story-scene-light .story-track article{border-color:rgba(23,20,20,.15);background:rgba(255,255,255,.35);}
  .story-track article span{margin-bottom:auto;color:var(--gold);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.16em;}
  .story-scene-light .story-track article span{color:var(--wine);}
  .story-track h3{margin-bottom:18px;font-size:42px;}
  .story-track p{margin-bottom:0;max-width:430px;opacity:.65;}
  .faq-section{background:#fbf8f3;}
  .faq-layout{display:grid;grid-template-columns:.75fr 1fr;gap:9vw;}
  .faq-layout>div:first-child>p:last-child{max-width:440px;color:var(--muted);}
  .faq-list details{border-top:1px solid var(--line);}
  .faq-list details:last-child{border-bottom:1px solid var(--line);}
  .faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;font-family:Georgia,serif;font-size:21px;cursor:pointer;list-style:none;}
  .faq-list summary::-webkit-details-marker{display:none;}
  .faq-list summary span{color:var(--wine);font-family:Arial,sans-serif;font-size:28px;font-weight:300;transition:transform .2s ease;}
  .faq-list details[open] summary span{transform:rotate(45deg);}
  .faq-list details p{padding:0 44px 22px 0;color:var(--muted);}
  .consultation{padding:130px 0;background:radial-gradient(circle at 12% 15%,rgba(215,170,114,.15),transparent 27%),var(--ink-soft);color:#fff;}
  .consultation-layout{display:grid;grid-template-columns:1fr .75fr;gap:9vw;align-items:start;}
  .consultation h2{margin-bottom:24px;}
  .consultation p{max-width:600px;color:rgba(255,255,255,.66);font-size:18px;}
  .contact-links{display:grid;gap:14px;margin-top:40px;}
  .contact-links a{display:flex;gap:18px;align-items:baseline;}
  .contact-links span{width:50px;color:var(--gold);font-size:11px;text-transform:uppercase;letter-spacing:.14em;}
  .contact-links strong{font-size:18px;}
  .consultation form{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:30px;border:1px solid rgba(255,255,255,.15);border-radius:18px;background:rgba(255,255,255,.05);}
  .consultation form>label{display:grid;gap:7px;color:rgba(255,255,255,.72);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;}
  .consultation form>label:nth-of-type(4),.consultation form>.consent,.consultation form>.button,.consultation form>small{grid-column:1/-1;}
  .consultation input,.consultation textarea{width:100%;border:1px solid rgba(255,255,255,.2);border-radius:9px;background:rgba(255,255,255,.07);color:#fff;padding:12px 13px;resize:vertical;text-transform:none;letter-spacing:0;}
  .consultation input:focus,.consultation textarea:focus{border-color:var(--gold);outline:0;box-shadow:0 0 0 3px rgba(215,170,114,.15);}
  .consultation .consent{display:flex;grid-template-columns:auto 1fr;align-items:start;text-transform:none;letter-spacing:0;font-weight:400;}
  .consultation .consent input{width:auto;margin-top:4px;}
  .consultation .button{border:0;background:#fff;color:var(--wine);cursor:pointer;}
  .consultation form>small{color:rgba(255,255,255,.48);text-align:center;}
  .honeypot{position:absolute;left:-10000px;}
  footer{padding:54px 0 22px;background:#100c0d;color:#fff;}
  .footer-grid{display:grid;grid-template-columns:1fr auto auto;gap:6vw;align-items:end;padding-bottom:38px;border-bottom:1px solid rgba(255,255,255,.12);}
  .footer-grid img{width:112px;margin-bottom:12px;}
  .footer-grid p{margin:0;color:rgba(255,255,255,.5);}
  .footer-contact,footer nav{display:grid;gap:8px;}
  footer nav{text-align:right;}
  footer a:hover{color:var(--gold);}
  .copyright{display:flex;justify-content:space-between;padding-top:20px;color:rgba(255,255,255,.42);font-size:12px;}
  .video-dialog{width:min(960px,calc(100% - 24px));padding:0;border:0;border-radius:16px;background:#090707;color:#fff;box-shadow:0 30px 100px rgba(0,0,0,.55);overflow:visible;}
  .video-dialog::backdrop{background:rgba(9,6,7,.82);backdrop-filter:blur(6px);}
  .dialog-close{position:absolute;z-index:2;top:-16px;right:-10px;display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#111;font-size:28px;cursor:pointer;}
  .video-slot{aspect-ratio:16/9;}
  .video-slot iframe{display:block;width:100%;height:100%;border:0;border-radius:16px;}
  .js .section-heading,.js .process-heading,.js .faq-layout,.js .consultation-layout{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease;}
  .js .section-heading.is-visible,.js .process-heading.is-visible,.js .faq-layout.is-visible,.js .consultation-layout.is-visible{opacity:1;transform:none;}
  .js .process-card,.js .story-track article{opacity:0;transform:translateY(48px) scale(.985);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.75,.2,1);}
  .js .process-card.is-visible,.js .story-track article.is-visible{opacity:1;transform:none;}
  @media(max-width:1050px){.site-header{grid-template-columns:1fr auto;}.site-header>nav,.site-header>.button-small{display:none;}.menu-button{justify-self:end;display:grid;gap:4px;width:42px;height:42px;padding:10px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:transparent;}.menu-button span:not(.sr-only){height:1px;background:#fff;}.mobile-nav{position:absolute;top:78px;right:0;display:grid;width:min(320px,calc(100vw - 40px));padding:18px;border-radius:12px;background:#fff;color:var(--ink);box-shadow:var(--shadow);}.mobile-nav[hidden]{display:none;}.mobile-nav a{padding:12px;border-bottom:1px solid var(--line);}.hero-layout{grid-template-columns:1fr .8fr;gap:3vw;}.hero-art{transform:scale(.86);}.process-heading>div{grid-template-columns:1fr;}.process-card{grid-template-columns:.55fr 1.2fr .65fr;}.video-card{flex-basis:calc((100% - 44px)/3);}.story-heading{grid-template-columns:.3fr 1fr;}.footer-grid{grid-template-columns:1fr auto;}.footer-grid nav{grid-column:2;}.footer-contact{grid-row:1/3;grid-column:2;align-self:start;text-align:right;}}
  @media(max-width:800px){:root{--shell:min(100% - 28px,680px);}.site-header{padding:13px 0;}.brand img{width:88px;}.hero{height:auto;min-height:900px;max-height:none;padding:112px 0 70px;}.hero-layout{grid-template-columns:1fr;gap:20px;padding-top:0;}.hero-copy{text-align:center;}.hero-lead{margin-inline:auto;}.hero-actions,.trust-list{justify-content:center;}.hero-art{height:410px;transform:none;}.future-hero-books{min-height:410px;}.future-book{width:170px;}.future-book.book-back{top:82px;left:8%;}.future-book.book-main{top:18px;left:36%;}.future-book.book-front{top:116px;left:94%;}.hero-slider-caption{right:4%;bottom:0;width:184px;text-align:left;}.orbit-one{width:340px;height:205px;}.orbit-two{width:390px;height:260px;}.scroll-cue{display:none;}.video-section,.books-section,.faq-section{padding:80px 0;}.split-heading,.process-heading,.faq-layout,.consultation-layout{grid-template-columns:1fr;gap:28px;}.section-heading{margin-bottom:34px;}.rail-arrow{display:none;}.media-rail .auto-loop-set{width:auto;}.video-card{flex:0 0 82vw;width:82vw;}.book-card{flex-basis:176px;}.process-section{padding:85px 0 60px;}.process-heading>div{grid-template-columns:1fr;gap:20px;}.process-stack{padding-bottom:28vh;}.process-card{top:74px;min-height:540px;margin-bottom:16vh;padding:28px;grid-template-columns:1fr;gap:26px;}.process-card dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;}.process-number{font-size:240px;top:-10%;}.process-label{align-self:auto;}.story-pin{min-height:580px;padding:52px 0 0;}.story-heading{display:block;}.story-direction{margin:0 0 12px;}.story-progress{margin-bottom:10px;}.story-track{margin-top:18px;padding:0 14px 18px;gap:20px;}.story-track article{flex-basis:84vw;height:clamp(280px,calc(100svh - 330px),340px);padding:28px;}.consultation{padding:85px 0;}.footer-grid{grid-template-columns:1fr;gap:28px;}.footer-contact,.footer-grid nav{grid-column:auto;grid-row:auto;text-align:left;}.copyright{gap:20px;flex-wrap:wrap;}}
  @media(max-width:520px){h1{font-size:52px;}.hero{min-height:850px;}.hero .eyebrow{font-size:10px;}.hero-actions{display:grid;}.hero .button{width:100%;}.trust-list{gap:8px 14px;font-size:11px;}.hero-art{height:330px;}.future-hero-books{min-height:330px;}.future-book{width:clamp(112px,38vw,150px);}.future-book.book-back{top:66px;left:0;}.future-book.book-main{top:18px;left:29%;}.future-book.book-front{top:86px;left:100%;}.hero-slider-caption{right:0;bottom:-2px;width:158px;padding:10px 12px;}.split-heading h2,.process-heading h2,.faq-layout h2,.consultation h2{font-size:43px;}.video-meta strong{font-size:19px;}.book-card{flex-basis:44vw;}.corner-tag{top:8px;left:-10px;transform:rotate(-45deg) translate(-23px,-10px);}.process-card{min-height:430px;}.process-content h3,.story-track h3{font-size:36px;}.consultation form{grid-template-columns:1fr;padding:20px;}.consultation form>label{grid-column:1!important;}.contact-links strong{font-size:14px;}.footer-contact a{font-size:14px;}}
  @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}.smoke{display:none;}.js .section-heading,.js .process-heading,.js .faq-layout,.js .consultation-layout,.js .process-card,.js .story-track article{opacity:1;transform:none;}.auto-loop-track{transform:none!important;}.media-rail,.book-rail{overflow-x:auto;}.process-stack{padding-bottom:0;}.process-card{position:relative;top:auto;margin-bottom:28px;}.story-scene{height:auto!important;}.story-pin{position:relative;height:auto;min-height:0;padding:80px 0;}.story-track{width:auto;overflow-x:auto;padding:0 20px;transform:none!important;}.story-track article{flex:0 0 min(520px,82vw);}}
  /* Light landing-page footer */
  .landing-footer,.lp-body .landing-footer { padding:0; color:#171414; background:#e6d9c9; }
  .landing-footer a { color:inherit; text-decoration:none; }
  .landing-footer-ticker { width:100%; overflow:hidden; color:#fff; background:#752f35; border-top:1px solid rgba(255,255,255,.18); border-bottom:1px solid rgba(23,20,20,.18); }
  .landing-footer-ticker-track { display:flex; width:max-content; transform:translate3d(0,0,0); animation:landing-footer-scroll 34s linear infinite; will-change:transform; }
  .landing-footer-ticker-item { display:flex; flex:0 0 auto; align-items:center; gap:.65rem; margin:0; padding:1rem 4rem; white-space:nowrap; font-size:.86rem; line-height:1.45; }
  .landing-footer-ticker-item > span { color:#efc49f; font-size:.72rem; }
  .landing-footer-ticker-item strong { color:#fff; }
  .landing-footer-main { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(160px,.55fr) minmax(250px,.9fr); gap:clamp(2rem,7vw,7rem); align-items:start; padding-top:clamp(2.75rem,6vw,5rem); padding-bottom:clamp(2.5rem,5vw,4rem); }
  .landing-footer-brand { max-width:380px; }
  .landing-footer-brand img { display:block; width:94px; height:94px; margin:0 0 1.2rem; object-fit:contain; filter:brightness(0) saturate(100%); }
  .landing-footer-brand p { max-width:350px; margin:0; color:#554a48; font-size:.95rem; line-height:1.75; }
  .landing-footer-heading { margin:0 0 1.2rem; color:#752f35; font-size:.76rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
  .landing-footer-legal,.landing-footer-contact { display:flex; flex-direction:column; align-items:flex-start; gap:.7rem; }
  .landing-footer-legal a,.landing-footer-contact a,.landing-footer-contact address { color:#3f3634; font-size:.95rem; line-height:1.65; transition:color .2s ease; }
  .landing-footer-legal a:hover,.landing-footer-contact a:hover,.landing-footer-bottom a:hover { color:#752f35; }
  .landing-footer-contact a { overflow-wrap:anywhere; }
  .landing-footer-contact address { margin:0; font-style:normal; }
  .landing-footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding-top:1.15rem; padding-bottom:1.15rem; border-top:1px solid rgba(117,47,53,.22); color:#625653; font-size:.82rem; }
  .landing-footer-bottom p { margin:0; }
  .landing-footer-bottom a { font-weight:750; transition:color .2s ease; }
  @keyframes landing-footer-scroll { to { transform:translate3d(-50%,0,0); } }
  @media (max-width:850px) { .landing-footer-main { grid-template-columns:repeat(2,minmax(0,1fr)); } .landing-footer-brand { grid-column:1/-1; max-width:520px; } }
  @media (max-width:600px) { .landing-footer-ticker-item { padding:.85rem 2rem; font-size:.78rem; } .landing-footer-main { grid-template-columns:1fr; gap:2rem; } .landing-footer-brand { grid-column:auto; } .landing-footer-bottom { align-items:flex-start; flex-direction:column; gap:.65rem; } }
  @media (prefers-reduced-motion:reduce) { .landing-footer-ticker-track { display:block; width:auto; animation:none; } .landing-footer-ticker-item { white-space:normal; } .landing-footer-ticker-item[aria-hidden="true"] { display:none; } }

  /* Desktop-only sticky stages and horizontal stories */
  @media (max-width:1050px) { .process-stack { padding-bottom:0; } .process-card { position:relative; top:auto; min-height:0; margin:0 0 24px; padding:32px; grid-template-columns:1fr; gap:24px; align-items:start; } .process-card:last-child { margin-bottom:0; } .process-card dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; } .process-number { top:-12%; font-size:220px; } .story-scene { height:auto!important; overflow:visible; } .story-pin { position:relative; top:auto; height:auto; min-height:0; padding:80px 0; overflow:visible; } .story-heading { grid-template-columns:1fr; gap:0; } .story-heading h2,.story-direction,.story-progress { grid-column:1; } .story-direction,.story-progress { display:none; } .story-track { display:grid; width:auto!important; margin-top:32px; padding:0 max(20px,calc((100vw - min(1180px,calc(100vw - 40px)))/2)); grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; transform:none!important; will-change:auto; } .story-track article { width:auto; height:auto; min-height:300px; padding:30px; transform:none!important; } .js .process-card,.js .story-track article { opacity:1; transform:none; transition:none; } }
  @media (max-width:650px) { .process-card { padding:26px 22px; } .process-card dl { grid-template-columns:1fr; } .process-number { font-size:170px; } .story-pin { padding:64px 0; } .story-track { grid-template-columns:1fr; } .story-track article { min-height:270px; } }
  /* =========================================================
     Shared consultation-popup.php presentation
     ========================================================= */
  body.consultation-open { overflow:hidden; }
  #consultation-popup.consultation-modal { position:fixed; inset:0; z-index:2147483646; display:flex; min-width:0; align-items:center; justify-content:center; padding:16px; overflow:hidden; overscroll-behavior:contain; }
  #consultation-popup[hidden] { display:none!important; }
  #consultation-popup .consultation-backdrop { position:absolute; inset:0; background:rgb(24 15 15 / 75%); backdrop-filter:blur(5px); }
  #consultation-popup .consultation-dialog { position:relative; z-index:1; display:grid; width:min(1080px,100%); max-width:100%; height:min(680px,calc(100dvh - 32px)); max-height:calc(100dvh - 32px); grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr); overflow:hidden; border:1px solid rgb(255 255 255 / 45%); border-radius:20px; background:#fff; box-shadow:0 32px 90px rgb(24 10 11 / 38%); }
  #consultation-popup .consultation-close { position:absolute; top:14px; right:14px; z-index:10; display:grid; width:42px; height:42px; padding:0; place-items:center; border:0; border-radius:50%; color:#4c2829; background:#f7efec; cursor:pointer; transition:color .2s ease,background-color .2s ease,transform .2s ease; }
  #consultation-popup .consultation-close:hover { color:#fff; background:#752f35; transform:rotate(4deg); }
  #consultation-popup .consultation-close svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; }
  #consultation-popup .consultation-aside { position:relative; display:flex; min-width:0; min-height:0; flex-direction:column; justify-content:space-between; padding:clamp(2rem,3.5vw,3rem); overflow-x:hidden; overflow-y:auto; color:#fff; background:#752f35; scrollbar-width:thin; scrollbar-color:rgb(255 255 255 / 35%) transparent; }
  #consultation-popup .consultation-aside::after { position:absolute; right:-150px; bottom:-190px; width:390px; height:390px; border:1px solid rgb(255 255 255 / 10%); border-radius:50%; content:""; box-shadow:0 0 0 70px rgb(255 255 255 / 2.5%); pointer-events:none; }
  #consultation-popup .consultation-aside>* { position:relative; z-index:1; }
  #consultation-popup .consultation-eyebrow { margin:0 0 .8rem; color:#dba575; font-size:.72rem; font-weight:850; letter-spacing:.17em; line-height:1.3; text-transform:uppercase; }
  #consultation-popup .consultation-aside h2 { margin:0 0 1rem; color:#fff; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.2rem,3.4vw,3.8rem); font-weight:500; letter-spacing:-.035em; line-height:.98; }
  #consultation-popup .consultation-aside p { margin:0; color:rgb(255 255 255 / 74%); line-height:1.7; }
  #consultation-popup .consultation-aside ul { display:grid; gap:.85rem; margin:1.5rem 0; padding:0; list-style:none; }
  #consultation-popup .consultation-aside li { display:grid; grid-template-columns:42px 1fr; align-items:start; color:rgb(255 255 255 / 86%); font-size:.9rem; line-height:1.4; }
  #consultation-popup .consultation-aside li span { color:#efc494; font-size:.72rem; font-weight:850; letter-spacing:.08em; }
  #consultation-popup .consultation-aside>a { display:grid; gap:.2rem; padding-top:1rem; border-top:1px solid rgb(255 255 255 / 20%); color:#fff; text-decoration:none; }
  #consultation-popup .consultation-aside>a small { color:rgb(255 255 255 / 62%); }
  #consultation-popup .consultation-aside>a strong { font-family:Georgia,"Times New Roman",serif; font-size:1.3rem; }
  #consultation-popup .consultation-form { display:flex; min-width:0; min-height:0; flex-direction:column; padding:clamp(2rem,3.5vw,3rem); overflow-x:hidden; overflow-y:auto; background:#fff; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#b98a76 #f4ece8; }
  #consultation-popup .consultation-form-heading { padding-right:45px; }
  #consultation-popup .consultation-form-heading h2 { margin:0 0 .45rem; color:#241b1a; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.15rem,3.5vw,3.6rem); font-weight:500; letter-spacing:-.035em; line-height:1; }
  #consultation-popup .consultation-form-heading>p:last-child { margin:0 0 1.3rem; color:#786e6b; line-height:1.55; }
  #consultation-popup .consultation-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.9rem; }
  #consultation-popup .consultation-field { display:grid; min-width:0; gap:.4rem; }
  #consultation-popup .consultation-field-full { grid-column:1/-1; }
  #consultation-popup .consultation-field>span { color:#5d5350; font-size:.82rem; font-weight:750; }
  #consultation-popup .consultation-field b { color:#752f35; }
  #consultation-popup .consultation-field input,#consultation-popup .consultation-field select,#consultation-popup .consultation-field textarea { width:100%; min-width:0; min-height:48px; padding:.72rem .85rem; border:1px solid #ded2ce; border-radius:7px; outline:none; color:#281f1d; background:#fcfaf9; font:inherit; line-height:1.35; transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease; }
  #consultation-popup .consultation-field textarea { min-height:76px; resize:vertical; }
  #consultation-popup .consultation-field input:focus,#consultation-popup .consultation-field select:focus,#consultation-popup .consultation-field textarea:focus { border-color:#752f35; background:#fff; box-shadow:0 0 0 3px rgb(117 47 53 / 10%); }
  #consultation-popup .consultation-consent { display:grid; grid-template-columns:18px 1fr; align-items:start; gap:.6rem; margin:1rem 0; color:#625754; font-size:.78rem; line-height:1.45; cursor:pointer; }
  #consultation-popup .consultation-consent input { width:17px; height:17px; margin:.1rem 0 0; accent-color:#752f35; }
  #consultation-popup .consultation-submit { display:flex; width:100%; min-height:48px; flex:none; align-items:center; justify-content:space-between; gap:1rem; padding:.75rem 1rem; border:0; border-radius:7px; color:#fff; background:#752f35; font:inherit; font-weight:800; cursor:pointer; transition:background-color .2s ease,transform .2s ease; }
  #consultation-popup .consultation-submit:hover { background:#572126; transform:translateY(-1px); }
  #consultation-popup .consultation-submit svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.8; }
  #consultation-popup .consultation-privacy { margin:.65rem 0 0; color:#918582; font-size:.7rem; line-height:1.4; text-align:center; }

  @media (max-width:900px) {
    #consultation-popup.consultation-modal { padding:10px; }
    #consultation-popup .consultation-dialog { width:min(640px,100%); height:auto; max-height:calc(100dvh - 20px); grid-template-columns:minmax(0,1fr); border-radius:14px; }
    #consultation-popup .consultation-aside { display:none; }
    #consultation-popup .consultation-form { width:100%; max-height:calc(100dvh - 20px); padding:3.4rem 1.25rem 1.25rem; }
  }

  @media (max-width:540px) {
    #consultation-popup.consultation-modal { padding:6px; }
    #consultation-popup .consultation-dialog { max-height:calc(100dvh - 12px); }
    #consultation-popup .consultation-close { top:10px; right:10px; width:38px; height:38px; }
    #consultation-popup .consultation-form { max-height:calc(100dvh - 12px); padding:3.2rem .9rem .9rem; }
    #consultation-popup .consultation-form-heading { padding-right:28px; }
    #consultation-popup .consultation-form-heading h2 { font-size:1.85rem; }
    #consultation-popup .consultation-fields { grid-template-columns:minmax(0,1fr); gap:.7rem; }
    #consultation-popup .consultation-field-full { grid-column:auto; }
    #consultation-popup .consultation-field input,#consultation-popup .consultation-field select,#consultation-popup .consultation-field textarea { font-size:16px; }
  }
