:root{--bg:#f4f4f1;--ink:#1d1d1f;--muted:#6f7073;--sage:#6f827e;--warm:#b7a59b;--line:#d8d8d3;--dark:#1c1d1e;--white:#f7f7f4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{color:inherit}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:999;background:white;padding:10px}.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:300}.progress i{display:block;width:100%;height:100%;background:var(--sage);transform:scaleX(0);transform-origin:left}.nav{position:fixed;z-index:200;top:0;left:0;right:0;height:62px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(244,244,241,.78);backdrop-filter:blur(22px) saturate(160%);border-bottom:1px solid rgba(29,29,31,.055)}.logo img{width:141px;display:block}.nav nav{display:flex;align-items:center;gap:4px}.nav a,.nav button{border:0;background:none;text-decoration:none;padding:10px 12px;font-size:.73rem;cursor:pointer}.navcta{border:1px solid #c8c8c3!important;border-radius:999px!important;padding:9px 16px!important;margin-left:7px}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.narrow{max-width:1040px}.eyebrow{font-size:.66rem;letter-spacing:.17em;font-weight:650;color:#77797a}.eyebrow.light{color:#a8b1ae}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;letter-spacing:-.058em}em{font-style:normal;color:var(--sage)}.primary{border:0;background:var(--ink);color:white;padding:13px 21px;border-radius:999px;cursor:pointer;font-size:.8rem;transition:transform .25s,background .25s}.primary:hover{transform:translateY(-1px);background:#343436}.hero{min-height:96vh;position:relative;display:grid;place-items:center;overflow:hidden;padding:145px 24px 100px}.hero-copy{text-align:center;width:min(1000px,100%);position:relative;z-index:2}.hero h1{font-size:clamp(4rem,7.4vw,7.8rem);line-height:.91;margin:22px 0 30px}.lede{font-size:clamp(1.08rem,1.55vw,1.35rem);line-height:1.62;color:#626367;max-width:760px;margin:0 auto}.actions{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:38px}.actions a{color:#55575a;text-decoration:none;font-size:.82rem}.actions a span{margin-left:6px}.audience{position:absolute;bottom:28px;display:flex;gap:28px;color:#8b8c8e;font-size:.62rem;letter-spacing:.15em}.lens{position:absolute;width:min(62vw,760px);aspect-ratio:1;border-radius:50%;opacity:.65;transform:scale(calc(.86 + var(--scene)*.18)) rotate(calc(var(--center)*5deg))}.lens i{position:absolute;inset:8%;border:1px solid rgba(111,130,126,.17);border-radius:48% 52% 56% 44%/54% 44% 56% 46%;transform:rotate(calc(var(--scene)*38deg))}.lens i:nth-child(2){inset:23%;border-color:rgba(183,165,155,.25);transform:rotate(calc(var(--scene)*-55deg))}.lens i:nth-child(3){inset:38%;background:radial-gradient(circle,rgba(111,130,126,.09),transparent 68%);transform:rotate(calc(var(--scene)*75deg))}.thesis{background:var(--dark);color:var(--white);padding:155px 0 130px}.thesis h2{font-size:clamp(3rem,5.3vw,5.8rem);line-height:.98;margin:24px 0 30px}.thesis>div>p:not(.eyebrow){color:#b7b8b8;font-size:1.2rem;line-height:1.68;max-width:760px}.disciplines{display:flex;justify-content:space-between;border-top:1px solid #3c3d3e;margin-top:70px;padding-top:24px;color:#747679;font-size:.69rem;letter-spacing:.14em}.disciplines strong{color:#d6e0dd;font-weight:600}.inherit,.method,.services{padding:140px 0}.section-title{max-width:840px;margin-bottom:60px}.section-title h2{font-size:clamp(2.8rem,4.8vw,5rem);line-height:.99;margin:18px 0 22px}.section-title>p:last-child{font-size:1.1rem;line-height:1.62;color:var(--muted);max-width:700px}.cards{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.cards button{text-align:left;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;min-height:300px;padding:28px;cursor:pointer;transition:background .3s,transform .3s}.cards button:hover{background:#eeeee9}.cards b{font-size:.66rem;color:#8a8b8d;letter-spacing:.1em}.cards h3{font-size:1.35rem;letter-spacing:-.035em;margin:75px 0 10px}.cards p{color:#707174;line-height:1.5;font-size:.9rem}.cards span{display:block;margin-top:30px;font-size:.72rem;color:var(--sage)}.inherit-note{margin-top:30px;font-size:1.12rem;color:#5f6163}.cinema{height:150vh;position:relative;background:#e9ebe8}.cinema-stage{position:sticky;top:0;height:100vh;display:grid;place-items:center;overflow:hidden}.portal{position:absolute;width:min(72vw,850px);aspect-ratio:1;border:1px solid rgba(29,29,31,.11);border-radius:50%;transform:scale(calc(.42 + var(--p)*1.55)) rotate(calc(var(--p)*16deg));opacity:calc(.25 + var(--p)*.65)}.portal i{position:absolute;border-radius:50%;border:1px solid rgba(111,130,126,.19);inset:12%;transform:rotate(calc(var(--p)*90deg))}.portal i:nth-child(2){inset:26%;border-color:rgba(183,165,155,.28);transform:rotate(calc(var(--p)*-120deg))}.portal i:nth-child(3){inset:39%;background:radial-gradient(circle,rgba(111,130,126,.08),transparent 65%)}.cinema-copy{text-align:center;z-index:2;width:100%}.words{height:1.15em;position:relative;font-size:clamp(3.7rem,8vw,8.8rem);font-weight:500;letter-spacing:-.065em;line-height:1}.words span{position:absolute;left:0;right:0;opacity:0;transform:scale(.78);filter:blur(12px);transition:none}.cinema-sub{color:#6e706f;font-size:1rem;margin-top:24px}.chain{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1.2fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:stretch}.chain article{padding:32px 20px;min-height:220px}.chain>i{align-self:center;color:#a3a4a4;font-style:normal}.chain small{color:#8a8b8d}.chain h3{font-size:.76rem;letter-spacing:.13em;margin:70px 0 14px}.chain p{font-size:.9rem;color:#6d6f71;line-height:1.5}.chain .final{background:var(--ink);color:white}.chain .final p,.chain .final small{color:#b7c3bf}.difference{padding:150px 0;background:#e7ebe8}.diff-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:center}.difference h2{font-size:clamp(3rem,4.7vw,5rem);line-height:.98;margin:20px 0}.statement{font-size:1.3rem;line-height:1.5}.compare{border:1px solid rgba(29,29,31,.12);background:rgba(255,255,255,.28)}.compare-head,.compare>div:not(.compare-head){display:grid;grid-template-columns:1fr 1fr}.compare-head span{padding:20px;font-size:.62rem;letter-spacing:.12em;color:#777}.compare-head span:last-child{background:var(--ink);color:#c6d1cd}.compare>div:not(.compare-head) span,.compare strong{padding:18px 20px;border-top:1px solid rgba(29,29,31,.09);font-size:.92rem}.compare>div:not(.compare-head) span{color:#777}.compare strong{background:var(--ink);color:#f4f4f1;font-weight:450}.opinion{padding:135px 0;background:var(--ink);color:white}.opinion-inner{position:relative}.opinion-head{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end}.opinion h2{font-size:clamp(3rem,5vw,5.4rem);line-height:.97;margin:20px 0}.opinion-head>p{color:#b6b8b8;line-height:1.65;font-size:1.08rem}.opinion-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #3a3b3c;border-left:1px solid #3a3b3c;margin-top:65px}.opinion-grid span{padding:25px 20px;border-right:1px solid #3a3b3c;border-bottom:1px solid #3a3b3c;color:#d3dad7;font-size:.9rem}.opinion-line{color:#929596;margin-top:28px}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:180px 1fr 1fr;gap:30px;padding:32px 0;border-bottom:1px solid var(--line);align-items:start}.service-list b{font-size:.64rem;letter-spacing:.12em;color:#858688}.service-list h3{font-size:1.45rem;letter-spacing:-.035em}.service-list p{color:#6d6f71;line-height:1.55}.advisor-strip{margin-top:50px;background:#eceeea;padding:30px 34px;display:flex;justify-content:space-between;gap:30px;align-items:center}.advisor-strip p{margin:0;color:#717375}.advisor-strip strong{font-weight:500}.final-cta{min-height:82vh;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden}.final-cta>div:not(.final-lens){max-width:850px;padding:100px 24px;position:relative;z-index:2}.final-cta h2{font-size:clamp(3.7rem,6.5vw,7rem);line-height:.94;margin:20px 0 28px}.final-cta>div>p:not(.eyebrow){color:#66686a;font-size:1.15rem;line-height:1.6;max-width:680px;margin:0 auto 30px}.final-cta small{display:block;color:#8a8b8d;margin-top:18px}.final-lens{position:absolute;width:min(65vw,700px);aspect-ratio:1;border:1px solid rgba(111,130,126,.16);border-radius:50%;transform:scale(calc(.75 + var(--scene)*.5)) rotate(calc(var(--center)*12deg))}.final-lens:after{content:"";position:absolute;inset:20%;border:1px solid rgba(183,165,155,.24);border-radius:48% 52% 45% 55%}footer{border-top:1px solid var(--line);min-height:120px;padding:30px 5vw;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#777;font-size:.75rem}footer img{width:158px}footer button{border:0;background:none;cursor:pointer}.overlay{position:fixed;inset:0;background:rgba(20,20,21,.48);backdrop-filter:blur(7px);z-index:400}.modal{position:fixed;z-index:401;right:24px;top:24px;bottom:24px;width:min(620px,calc(100% - 48px));overflow:auto;background:#f7f7f4;padding:58px 48px;box-shadow:0 20px 80px rgba(0,0,0,.16)}.x{position:absolute;right:20px;top:15px;border:0;background:none;font-size:2rem;font-weight:200;cursor:pointer}.modal h2{font-size:clamp(2.5rem,4vw,4rem);line-height:1;margin:18px 0}.modal>p:not(.eyebrow){color:#6c6e70;line-height:1.6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:.72rem;color:#666;margin:17px 0}input,select,textarea{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #d3d3ce;background:white;border-radius:0;outline:none}textarea{resize:vertical}.trap{position:absolute;left:-9999px}.topic-cols{display:grid;gap:0;border-top:1px solid var(--line);margin:35px 0}.topic-cols>div{padding:22px 0;border-bottom:1px solid var(--line)}.topic-cols b{font-size:.62rem;letter-spacing:.13em}.topic-cols p{color:#686a6c;line-height:1.55;margin:10px 0 0}.topic>small{color:#858688;line-height:1.5;display:block}
@media(max-width:900px){.cards{grid-template-columns:1fr 1fr}.cards button:last-child{grid-column:1/-1}.chain{grid-template-columns:1fr 1fr}.chain>i{display:none}.chain article{border-bottom:1px solid var(--line)}.chain .final{grid-column:1/-1}.diff-grid,.opinion-head{grid-template-columns:1fr;gap:45px}.opinion-grid{grid-template-columns:1fr 1fr}.service-list article{grid-template-columns:120px 1fr}.service-list p{grid-column:2}.advisor-strip{align-items:flex-start;flex-direction:column}.nav nav a,.nav nav button:not(.navcta){display:none}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.nav{padding:0 16px}.logo img{width:122px}.hero{min-height:90vh;padding:125px 18px 85px}.hero h1{font-size:clamp(3.2rem,14vw,5rem)}.actions{flex-direction:column}.audience{gap:10px;flex-wrap:wrap;justify-content:center;padding:0 20px}.thesis,.inherit,.method,.difference,.opinion,.services{padding:95px 0}.disciplines{gap:18px;overflow-x:auto;justify-content:flex-start}.cards{grid-template-columns:1fr}.cards button:last-child{grid-column:auto}.cards button{min-height:220px}.cards h3{margin-top:48px}.cinema{height:135vh}.words{font-size:clamp(3.1rem,15vw,5rem)}.chain{grid-template-columns:1fr}.chain .final{grid-column:auto}.opinion-grid{grid-template-columns:1fr 1fr}.service-list article{grid-template-columns:1fr;gap:10px}.service-list p{grid-column:auto}.modal{inset:10px;width:auto;padding:52px 24px}.form-row{grid-template-columns:1fr}footer{flex-direction:column;align-items:flex-start}.compare-head span,.compare>div:not(.compare-head) span,.compare strong{padding:15px 12px;font-size:.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lens,.portal,.final-lens{transform:none!important}.cinema{height:auto;padding:110px 0}.cinema-stage{position:relative;height:auto;min-height:440px}.words span{display:none}.words span:last-child{display:block;opacity:1!important;transform:none!important;filter:none!important}}

/* Cyworth Production 1.0 — stronger restrained cinematic system */
:root{--sage2:#82958f;--sage-deep:#536a63;--champagne:#c8b7aa;--ice:#dfe7e3}
body{background:linear-gradient(180deg,#f5f5f2 0%,#f1f2ef 100%)}
.hero{background:
 radial-gradient(circle at 74% 42%,rgba(111,130,126,.13),transparent 25%),
 radial-gradient(circle at 69% 47%,rgba(200,183,170,.11),transparent 38%),#f4f4f1}
.hero-copy{transform:translateY(calc((.5 - var(--scene))*18px));opacity:calc(.72 + var(--scene)*.28)}
.lens{filter:drop-shadow(0 28px 70px rgba(52,68,63,.08))}
.lens:before,.lens:after{content:"";position:absolute;border-radius:50%;inset:-7%;border:1px solid rgba(111,130,126,.08);transform:rotate(calc(var(--center)*-9deg))}
.lens:after{inset:16%;border-color:rgba(200,183,170,.15)}
.thesis{background:radial-gradient(circle at 75% 45%,rgba(111,130,126,.14),transparent 32%),#1b1c1d}
.cards{grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.18)}
.cards button{position:relative;overflow:hidden;background:rgba(255,255,255,.18);transition:background .35s ease,transform .35s ease,border-color .35s ease}
.cards button:before{content:"";position:absolute;inset:auto -30% -55% 30%;aspect-ratio:1;border:1px solid rgba(111,130,126,.14);border-radius:50%;transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .35s;opacity:.55}
.cards button:hover{background:#e9ede9;transform:translateY(-5px)}
.cards button:hover:before{transform:scale(1.45) rotate(18deg);opacity:1}
.cards h3{margin-top:96px}
.cinema{background:radial-gradient(circle at 50% 50%,#f7f7f4 0%,#e6ebe7 50%,#d9e0dc 100%)}
.portal{box-shadow:0 0 100px rgba(83,106,99,.06),inset 0 0 100px rgba(255,255,255,.4)}
.portal:before,.portal:after{content:"";position:absolute;border-radius:50%;inset:-12%;border:1px solid rgba(83,106,99,.12);transform:rotate(calc(var(--p)*-75deg)) scale(calc(.8 + var(--p)*.3))}
.portal:after{inset:18%;border-color:rgba(200,183,170,.28);transform:rotate(calc(var(--p)*135deg))}
.method{background:linear-gradient(180deg,#f4f4f1,#efefeb)}
.chain article{position:relative;overflow:hidden}
.chain article:after{content:"";position:absolute;left:20px;right:20px;bottom:0;height:2px;background:linear-gradient(90deg,var(--sage-deep),transparent);transform:scaleX(var(--scene,0));transform-origin:left}
.difference{background:radial-gradient(circle at 82% 30%,rgba(255,255,255,.7),transparent 32%),linear-gradient(135deg,#e3e9e5,#eef0ec 52%,#e5e0dc)}
.compare{box-shadow:0 25px 70px rgba(40,49,46,.08);backdrop-filter:blur(10px)}
.opinion{background:radial-gradient(circle at 80% 18%,rgba(111,130,126,.18),transparent 30%),linear-gradient(145deg,#171819,#202322)}
.opinion-grid span{transition:background .3s,color .3s}.opinion-grid span:hover{background:rgba(111,130,126,.12);color:white}
.advisor-strip{background:linear-gradient(100deg,#e5ebe7,#efebe7);border-left:3px solid var(--sage-deep)}
.final-cta{background:radial-gradient(circle at 50% 50%,rgba(111,130,126,.12),transparent 34%)}
.final-lens{box-shadow:0 30px 100px rgba(83,106,99,.08)}
/* centered dialogs — deliberate, calm, investor-grade */
.overlay{background:rgba(18,19,19,.56);backdrop-filter:blur(11px) saturate(.8)}
.modal{right:auto;bottom:auto;left:50%;top:50%;width:min(760px,calc(100% - 48px));max-height:calc(100vh - 48px);transform:translate(-50%,-50%) scale(.985);padding:62px 58px;box-shadow:0 35px 120px rgba(0,0,0,.24);border:1px solid rgba(255,255,255,.6);background:rgba(248,248,245,.98);animation:cyModal .26s cubic-bezier(.2,.8,.2,1) forwards}
.topic.modal{width:min(900px,calc(100% - 48px))}
@keyframes cyModal{to{transform:translate(-50%,-50%) scale(1)}}
.topic-cols{grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}
.topic-cols>div{padding:26px;border-bottom:0;border-right:1px solid var(--line)}.topic-cols>div:last-child{border-right:0}
.primary{box-shadow:0 10px 28px rgba(29,29,31,.10);transition:transform .25s ease,box-shadow .25s ease,background .25s}.primary:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(29,29,31,.15)}
@media(max-width:900px){.topic-cols{grid-template-columns:1fr}.topic-cols>div{border-right:0;border-bottom:1px solid var(--line)}.topic-cols>div:last-child{border-bottom:0}}
@media(max-width:600px){.modal,.topic.modal{inset:auto;left:50%;top:50%;width:calc(100% - 20px);max-height:calc(100% - 20px);padding:52px 24px;transform:translate(-50%,-50%) scale(.985)}@keyframes cyModal{to{transform:translate(-50%,-50%) scale(1)}}.cards h3{margin-top:58px}}
\n\n/* Production footer + in-place confirmation */\nfooter{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;text-align:center;padding:38px 5vw;min-height:132px}\nfooter img{justify-self:start}\nfooter p{justify-self:center;margin:0;color:#505255;font-size:.86rem;letter-spacing:.01em}\nfooter button{justify-self:end;color:#56585a}\n.success.modal{text-align:center;width:min(680px,calc(100% - 48px));overflow:hidden;padding:72px 64px 64px}\n.success-mark{width:116px;height:116px;margin:0 auto 36px;position:relative;display:grid;place-items:center}\n.success-mark i{position:absolute;inset:0;border:1px solid rgba(111,130,126,.34);border-radius:48% 52% 55% 45%/55% 45% 55% 45%;animation:successOrbit 9s linear infinite}\n.success-mark i:nth-child(2){inset:16px;border-color:rgba(183,165,155,.48);animation-direction:reverse;animation-duration:7s}\n.success-mark span{position:relative;z-index:2;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:1rem}\n.success.modal h2{font-size:clamp(3.4rem,6vw,5.6rem);margin:14px 0 20px}\n.success.modal>p:not(.eyebrow){max-width:470px;margin:0 auto 32px;font-size:1.05rem}\n@keyframes successOrbit{to{transform:rotate(360deg)}}\n@media(max-width:600px){footer{grid-template-columns:1fr;justify-items:center;gap:20px;text-align:center}footer img,footer p,footer button{justify-self:center}.success.modal{padding:60px 25px 45px}.success-mark{width:96px;height:96px;margin-bottom:28px}}\n
/* Cyworth 1.3 — cinematic investor flow. Motion is structural, not decorative. */
:root{--ease:cubic-bezier(.16,1,.3,1)}
body{overflow-x:hidden}
.nav{height:66px;background:rgba(246,246,243,.68);backdrop-filter:blur(30px) saturate(150%)}
.hero{min-height:112vh;padding-top:150px;background:#f5f5f2}
.hero-copy{max-width:1060px}
.hero h1{font-size:clamp(4.5rem,8.5vw,9.2rem);line-height:.86;margin:28px 0 34px}
.hero .lede{max-width:690px;font-size:clamp(1.02rem,1.35vw,1.25rem)}
.hero .lens{width:min(78vw,980px);opacity:.48;transform:translateY(calc(var(--center)*-35px)) scale(calc(.78 + var(--scene)*.45)) rotate(calc(var(--center)*7deg))}
.hero .lens i{border-color:rgba(111,130,126,.13)}
.hero .audience{bottom:36px}
.thesis{min-height:100vh;display:grid;align-items:center;padding:130px 0;background:radial-gradient(circle at 78% 52%,rgba(111,130,126,.18),transparent 30%),#171819}
.thesis .narrow{transform:translateY(calc((.5 - var(--scene))*70px));opacity:calc(.42 + var(--scene)*.8)}
.thesis h2{font-size:clamp(3.7rem,6.5vw,7.2rem);max-width:1080px}
.inherit{padding:170px 0 150px;background:#f5f5f2}
.inherit .section-title{margin-bottom:80px}.inherit .section-title h2{font-size:clamp(3.5rem,6vw,6.5rem)}
.cards{display:flex;gap:18px;border:0;background:transparent;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px max(0px,calc((100vw - 1180px)/2)) 30px;margin-left:calc((1180px - 100vw)/2);margin-right:calc((1180px - 100vw)/2);scrollbar-width:none}.cards::-webkit-scrollbar{display:none}
.cards button{flex:0 0 clamp(300px,31vw,430px);min-height:440px;border:1px solid rgba(29,29,31,.09);border-radius:28px;padding:34px;background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(235,239,235,.78));scroll-snap-align:center;box-shadow:0 20px 60px rgba(40,50,46,.055);transition:transform .6s var(--ease),box-shadow .6s var(--ease),background .6s var(--ease)}
.cards button:nth-child(even){background:linear-gradient(145deg,#202322,#29312e);color:#f6f6f3}.cards button:nth-child(even) p{color:#b8c0bd}.cards button:nth-child(even) span{color:#b7cbc4}
.cards button:hover{transform:translateY(-10px) scale(1.015);box-shadow:0 36px 90px rgba(40,50,46,.13)}.cards h3{font-size:2rem;margin-top:170px}.cards p{font-size:1rem}.cards span{margin-top:40px}
.inherit-note{text-align:center;margin-top:45px;font-size:1.05rem}
.cinema{height:320vh;background:#0f1111;color:#f7f7f4}
.cinema-stage{background:radial-gradient(circle at 50% 50%,rgba(111,130,126,.16),transparent 24%),#0f1111}
.portal{width:min(82vw,980px);border-color:rgba(255,255,255,.12);box-shadow:0 0 180px rgba(111,130,126,.08);transform:scale(calc(.16 + var(--p)*2.65)) rotate(calc(var(--p)*28deg));opacity:calc(.18 + var(--p)*.82)}
.portal i{border-color:rgba(159,185,176,.18)}.portal i:nth-child(2){border-color:rgba(200,183,170,.25)}
.cinema-copy .eyebrow{color:#9ca7a3}.words{font-size:clamp(4.3rem,10vw,11rem);height:1.05em}.cinema-sub{color:#a8aeac;font-size:1.08rem}
.method{padding:180px 0;background:#f5f5f2}.method .section-title h2{font-size:clamp(3.6rem,6vw,6.4rem)}
.chain{border:0;gap:12px;grid-template-columns:repeat(5,1fr)}.chain>i{display:none}.chain article{min-height:330px;border:1px solid var(--line);border-radius:22px;padding:28px;background:rgba(255,255,255,.48);transition:transform .5s var(--ease),background .5s var(--ease)}.chain article:hover{transform:translateY(-8px);background:#fff}.chain h3{margin-top:140px}.chain .final{background:#1b1d1c;border-color:#1b1d1c}.chain .final:hover{background:#252a28}
.difference{min-height:100vh;display:grid;align-items:center;padding:160px 0;background:linear-gradient(145deg,#dfe7e2 0%,#f1efeb 54%,#e4e8e5 100%)}.difference .diff-grid{transform:translateY(calc((.5 - var(--scene))*45px))}.difference h2{font-size:clamp(3.6rem,5.7vw,6.2rem)}.compare{border-radius:24px;overflow:hidden;background:rgba(255,255,255,.55);box-shadow:0 40px 120px rgba(44,54,50,.10)}
.opinion{min-height:100vh;display:grid;align-items:center;padding:150px 0;background:radial-gradient(circle at 78% 28%,rgba(111,130,126,.24),transparent 26%),#141616}.opinion h2{font-size:clamp(3.8rem,6vw,6.6rem)}.opinion-grid{border-color:#303534}.opinion-grid span{min-height:90px;display:flex;align-items:center}
.services{padding:180px 0 150px}.services .section-title h2{font-size:clamp(3.5rem,5.5vw,6rem)}.service-list article{padding:46px 0;transition:padding .4s var(--ease),background .4s}.service-list article:hover{padding-left:22px;padding-right:22px;background:rgba(111,130,126,.055)}.service-list h3{font-size:1.75rem}.advisor-strip{border:0;border-radius:24px;padding:40px;background:linear-gradient(110deg,#dfe8e3,#eee8e2)}
.closing{height:180vh;position:relative;background:#f4f4f1}.closing-copy{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:100px 24px;z-index:2}.closing h2{font-size:clamp(5rem,10vw,11rem);line-height:.82;margin:22px 0 36px}.closing-copy>p:not(.eyebrow){max-width:640px;color:#686b69;font-size:1.1rem;line-height:1.6;margin-bottom:32px}.closing-orbit{position:sticky;top:0;height:100vh;pointer-events:none;overflow:hidden;margin-bottom:-100vh}.closing-orbit:before,.closing-orbit:after,.closing-orbit i{content:"";position:absolute;left:50%;top:50%;width:min(74vw,880px);aspect-ratio:1;border:1px solid rgba(111,130,126,.14);border-radius:50%;transform:translate(-50%,-50%) scale(calc(.32 + var(--scene,0)*1.25)) rotate(calc(var(--center,0)*18deg))}.closing-orbit:after{width:min(52vw,620px);border-color:rgba(183,165,155,.22);transform:translate(-50%,-50%) scale(calc(.45 + var(--scene,0)*.95)) rotate(calc(var(--center,0)*-25deg))}.closing-orbit i:first-child{width:min(34vw,410px);background:radial-gradient(circle,rgba(111,130,126,.12),transparent 66%);border-color:transparent}.closing-orbit i:last-child{width:min(92vw,1100px);border-color:rgba(29,29,31,.045)}
footer{min-height:150px}
.modal{border-radius:28px}.contact.modal{width:min(820px,calc(100% - 48px))}.contact form .primary{margin-top:8px}.form-error{margin:12px 0 0;color:#8b514b;font-size:.78rem;line-height:1.45}
.success.modal{border-radius:32px}
@media(max-width:1200px){.cards{margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px}.chain{grid-template-columns:1fr 1fr}.chain .final{grid-column:1/-1}}
@media(max-width:700px){.hero{min-height:100vh}.hero h1{font-size:clamp(3.5rem,16vw,5.5rem)}.thesis h2{font-size:clamp(3.2rem,13vw,5rem)}.cards button{flex-basis:82vw;min-height:390px}.cards h3{margin-top:135px}.cinema{height:250vh}.words{font-size:clamp(3.3rem,16vw,5.5rem)}.chain{grid-template-columns:1fr}.chain .final{grid-column:auto}.chain article{min-height:230px}.chain h3{margin-top:80px}.closing{height:145vh}.closing h2{font-size:clamp(4rem,18vw,6.5rem)}.closing-orbit:before{width:120vw}.closing-orbit:after{width:86vw}}

/* v1.4 — scroll-driven investment exposure rail */
.inherit{
  height:240vh;
  padding:0;
  position:relative;
  overflow:hidden;
  background:#f5f5f2;
}
.inherit>.wrap{
  position:sticky;
  top:62px;
  height:calc(100vh - 62px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  overflow:visible;
}
.inherit .section-title{
  margin:0 0 36px;
  max-width:760px;
}
.inherit .section-title h2{
  font-size:clamp(3rem,5.2vw,5.75rem);
  margin:14px 0 16px;
}
.inherit .section-title>p:last-child{
  max-width:610px;
  font-size:1rem;
}
.inherit .cards{
  display:flex;
  gap:16px;
  width:max-content;
  max-width:none;
  margin:0;
  padding:4px 0 18px;
  overflow:visible;
  scroll-snap-type:none;
  background:transparent;
  border:0;
  transform:translate3d(0,0,0);
  will-change:transform;
}
.inherit .cards button{
  flex:0 0 clamp(235px,22vw,300px);
  width:clamp(235px,22vw,300px);
  min-height:300px;
  height:300px;
  padding:25px;
  border-radius:24px;
  box-shadow:0 14px 42px rgba(40,50,46,.045);
}
.inherit .cards button:before{
  inset:auto -24% -48% 34%;
  opacity:.42;
}
.inherit .cards button:hover{
  transform:translateY(-6px) scale(1.01);
  box-shadow:0 24px 60px rgba(40,50,46,.10);
}
.inherit .cards h3{
  font-size:1.45rem;
  margin-top:92px;
}
.inherit .cards p{
  font-size:.9rem;
  line-height:1.45;
}
.inherit .cards span{
  margin-top:22px;
  font-size:.7rem;
}
.inherit-note{
  margin:18px 0 0;
  text-align:left;
  font-size:.95rem;
  color:#737576;
}
@media(max-width:900px){
  .inherit{height:220vh}
  .inherit>.wrap{top:62px;height:calc(100vh - 62px)}
  .inherit .cards button{flex-basis:270px;width:270px;height:290px;min-height:290px}
}
@media(max-width:600px){
  .inherit{height:205vh}
  .inherit>.wrap{top:62px;height:calc(100vh - 62px);justify-content:center}
  .inherit .section-title{margin-bottom:28px}
  .inherit .section-title h2{font-size:clamp(2.7rem,12vw,4.15rem)}
  .inherit .section-title>p:last-child{font-size:.94rem}
  .inherit .cards{gap:12px}
  .inherit .cards button{flex-basis:72vw;width:72vw;max-width:270px;height:280px;min-height:280px;padding:22px;border-radius:21px}
  .inherit .cards h3{margin-top:82px;font-size:1.35rem}
  .inherit-note{font-size:.88rem;margin-top:14px}
}
@media(prefers-reduced-motion:reduce){
  .inherit{height:auto;padding:95px 0}
  .inherit>.wrap{position:static;height:auto;display:block}
  .inherit .cards{width:100%;overflow-x:auto;transform:none!important;padding-bottom:22px;scroll-snap-type:x mandatory}
  .inherit .cards button{scroll-snap-align:start}
}

/* v1.5 — liquid mineral glass refinement */
:root{--bg:#f8f8f5;--ink:#171819;--muted:#777b79;--sage:#849792;--warm:#c7b8ae;--line:rgba(28,31,30,.095);--white:#fbfbf8}
body{background:linear-gradient(180deg,#fafaf7 0%,#f6f7f4 48%,#faf9f6 100%)}
.nav{background:rgba(250,250,247,.58);backdrop-filter:blur(30px) saturate(175%);-webkit-backdrop-filter:blur(30px) saturate(175%);border-bottom:1px solid rgba(255,255,255,.58);box-shadow:0 1px 0 rgba(29,29,31,.035)}
.navcta{background:rgba(255,255,255,.34)!important;border-color:rgba(29,29,31,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
.closing{background:radial-gradient(circle at 50% 43%,rgba(255,255,255,.95) 0%,rgba(247,249,246,.82) 34%,rgba(243,245,242,.74) 66%,#f8f8f5 100%)}
.closing-copy{isolation:isolate}
.closing h2{color:var(--ink);text-shadow:0 1px 0 rgba(255,255,255,.65)}
.closing h2 em{color:rgba(111,133,127,.78);background:linear-gradient(180deg,rgba(123,145,139,.92),rgba(151,166,161,.70));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 12px 30px rgba(99,122,116,.08))}
.closing-copy>p:not(.eyebrow){color:#737875}
.closing-orbit:before,.closing-orbit:after,.closing-orbit i{border-color:rgba(122,143,137,.13);box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 18px 80px rgba(73,94,88,.035);backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px)}
.closing-orbit:before{background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.36),rgba(255,255,255,.06) 34%,rgba(119,143,136,.035) 65%,transparent 72%)}
.closing-orbit:after{border-color:rgba(196,177,166,.18);background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.015))}
.closing-orbit i:first-child{background:radial-gradient(circle at 40% 35%,rgba(255,255,255,.72),rgba(137,157,151,.10) 38%,rgba(183,165,155,.045) 60%,transparent 70%);filter:blur(.1px)}
.closing-orbit i:last-child{border-color:rgba(29,29,31,.035)}
.primary{background:#1c1d1e;box-shadow:0 12px 34px rgba(25,27,26,.10),inset 0 1px 0 rgba(255,255,255,.10)}
.cards button,.chain article,.compare{background:rgba(255,255,255,.42);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);border-color:rgba(29,29,31,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 18px 60px rgba(43,57,52,.035)}
.modal{background:rgba(249,249,246,.90);backdrop-filter:blur(34px) saturate(165%);-webkit-backdrop-filter:blur(34px) saturate(165%);border:1px solid rgba(255,255,255,.68)}
footer{background:rgba(249,249,246,.56);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}

/* v1.7 — Optical Ceramic / Precision Mineral
   Replaces the liquid-glass treatment with solid, luminous materials:
   porcelain fields, optical edge highlights, soft mineral depth, no backdrop blur. */
:root{
  --bg:#f7f7f3;
  --ink:#151616;
  --muted:#747875;
  --sage:#758a84;
  --warm:#c2b2a7;
  --line:#dedfda;
  --dark:#151716;
  --white:#fbfbf8;
}
body{background:var(--bg)}
.nav{
  background:#f8f8f5;
  backdrop-filter:none;-webkit-backdrop-filter:none;
  border-bottom:1px solid #e7e7e2;
  box-shadow:0 10px 36px rgba(24,27,25,.025)
}
.navcta{
  background:#fbfbf8!important;
  border-color:#d8d9d4!important;
  box-shadow:0 1px 0 #fff,0 8px 22px rgba(25,28,26,.035)
}
.primary{background:#181918;box-shadow:0 12px 28px rgba(18,20,19,.11);border:1px solid #181918}
.hero{background:radial-gradient(circle at 50% 42%,#fff 0%,#f8f8f4 44%,#f4f4f0 100%)}
.hero .lens{opacity:.72}
.hero .lens i{border-color:#d7ddd9}
.hero .lens i:nth-child(2){border-color:#e0d6cf}
.hero .lens i:nth-child(3){background:radial-gradient(circle,#eef2ef 0%,rgba(238,242,239,.45) 35%,transparent 70%)}
.cards button,.chain article,.compare{
  backdrop-filter:none;-webkit-backdrop-filter:none;
  background:linear-gradient(145deg,#fdfdfb 0%,#f4f5f1 100%);
  border-color:#dedfda;
  box-shadow:inset 0 1px 0 #fff,0 22px 54px rgba(36,43,39,.055)
}
.cards button:hover,.chain article:hover{background:#fff;box-shadow:inset 0 1px 0 #fff,0 30px 72px rgba(36,43,39,.09)}
.difference{background:linear-gradient(145deg,#e7ece8 0%,#f7f5f1 52%,#edf0ed 100%)}
.compare{box-shadow:inset 0 1px 0 #fff,0 34px 88px rgba(42,51,47,.075)}
.advisor-strip{background:linear-gradient(110deg,#e7ece8,#f2ede8);border:1px solid #dedfda}
.closing{background:radial-gradient(circle at 50% 43%,#fff 0%,#f8f8f4 38%,#f3f4f0 70%,#f7f7f3 100%)}
.closing h2{color:var(--ink);text-shadow:none}
.closing h2 em{
  color:#7b8f89;
  background:none;
  -webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:initial;
  filter:none
}
.closing-orbit:before,.closing-orbit:after,.closing-orbit i{
  backdrop-filter:none;-webkit-backdrop-filter:none;
  border-color:#d7ddd9;
  box-shadow:inset 0 1px 0 #fff,0 28px 90px rgba(63,76,70,.035)
}
.closing-orbit:before{background:radial-gradient(circle at 35% 28%,#fff 0%,#f4f6f3 32%,#edf1ee 62%,transparent 73%)}
.closing-orbit:after{border-color:#e2d8d1;background:linear-gradient(135deg,#fbfaf8,#f3f1ed)}
.closing-orbit i:first-child{background:radial-gradient(circle at 40% 35%,#fff,#edf2ef 40%,#f0eae5 62%,transparent 71%)}
.closing-orbit i:last-child{border-color:#e5e5e0}
.modal{
  background:#fafaf7;
  backdrop-filter:none;-webkit-backdrop-filter:none;
  border:1px solid #e1e2dd;
  box-shadow:0 42px 120px rgba(17,20,18,.18),inset 0 1px 0 #fff
}
.overlay{background:rgba(18,20,19,.42);backdrop-filter:none;-webkit-backdrop-filter:none}
footer{background:#f7f7f3;backdrop-filter:none;-webkit-backdrop-filter:none}

/* v1.8 — minimal editorial refinement */
:root{--bg:#f7f7f4;--ink:#171819;--muted:#747775;--line:rgba(23,24,25,.10);--dark:#111313}
body{background:var(--bg)}

/* quieter global type scale */
.hero h1{font-size:clamp(3.5rem,6.3vw,6.7rem)}
.thesis h2{font-size:clamp(3.2rem,5.4vw,5.8rem)}
.section-title h2,.inherit .section-title h2,.method .section-title h2,.difference h2,.services .section-title h2{font-size:clamp(2.65rem,4.25vw,4.65rem)}
.opinion h2{font-size:clamp(3rem,4.8vw,5.1rem)}

/* exposure rail: centered composition, shorter scroll, no dead tail */
.inherit{height:165vh;background:var(--bg)}
.inherit>.wrap{top:62px;height:calc(100vh - 62px);justify-content:center}
.inherit .section-title{margin:0 auto 34px;text-align:center;max-width:760px}
.inherit .section-title>p:last-child{margin-left:auto;margin-right:auto}
.inherit .cards{gap:14px;left:0;position:relative;padding:2px 0 14px}
.inherit .cards button{flex-basis:250px;width:250px;height:270px;min-height:270px;border-radius:20px;padding:24px;background:#fbfbf8!important;color:var(--ink)!important;box-shadow:0 10px 30px rgba(23,24,25,.035)}
.inherit .cards button p{color:var(--muted)!important}
.inherit .cards button span{color:#788b86!important}
.inherit .cards h3{font-size:1.24rem;margin-top:76px}
.inherit .cards p{font-size:.86rem}
.inherit-note{text-align:center;margin-top:14px;font-size:.88rem}

/* cinematic decision moment: typography does the work, not decorative rings */
.cinema{height:190vh;background:var(--dark)}
.cinema-stage{background:var(--dark)}
.portal{display:none!important}
.words{font-size:clamp(3.6rem,8vw,8rem)}
.cinema-sub{font-size:.96rem}

/* method: one visual system, not four white cards + one black card */
.method{padding:125px 0 115px;background:var(--bg)}
.method .section-title{margin-bottom:42px}
.chain{gap:10px}
.chain article,.chain .final{min-height:250px;border:1px solid var(--line);border-radius:18px;padding:24px;background:#fbfbf8;color:var(--ink);box-shadow:none}
.chain article:hover,.chain .final:hover{background:#fff;transform:translateY(-3px)}
.chain h3,.chain .final h3{margin-top:96px;color:var(--ink)}
.chain p,.chain .final p{color:var(--muted)}

/* tighten long sections */
.difference{min-height:auto;padding:115px 0}
.opinion{min-height:auto;padding:120px 0}
.services{padding:120px 0 105px}

/* final CTA: clean editorial close; no giant orbit, no extra scroll theatre */
.closing{height:auto;min-height:0;padding:135px 24px 125px;background:#f1f2ee;border-top:1px solid var(--line)}
.closing-orbit{display:none!important}
.closing-copy{position:relative;top:auto;height:auto;padding:0;max-width:980px;margin:auto}
.closing h2{font-size:clamp(3.2rem,5.8vw,6.2rem);line-height:.94;margin:18px 0 26px}
.closing h2 em{color:#7f918c;background:none;-webkit-text-fill-color:currentColor;filter:none}
.closing-copy>p:not(.eyebrow){font-size:1rem;max-width:610px;margin-bottom:28px}
footer{min-height:105px;padding-top:24px;padding-bottom:24px}

@media(max-width:900px){
 .inherit{height:155vh}
 .inherit .cards button{flex-basis:235px;width:235px;height:255px;min-height:255px}
 .chain{grid-template-columns:1fr 1fr}
 .chain .final{grid-column:auto}
}
@media(max-width:600px){
 .inherit{height:150vh}
 .inherit .section-title{text-align:left;margin-left:0}
 .inherit .cards button{flex-basis:72vw;width:72vw;max-width:245px;height:250px;min-height:250px}
 .inherit .cards h3{margin-top:70px;font-size:1.18rem}
 .cinema{height:165vh}
 .method{padding:90px 0 80px}
 .chain{grid-template-columns:1fr}
 .chain article,.chain .final{min-height:190px}
 .chain h3,.chain .final h3{margin-top:55px}
 .closing{padding:100px 20px 90px}
 .closing h2{font-size:clamp(3rem,14vw,4.7rem)}
}

/* v1.9 — restrained color, scroll-led motion, no decorative hover states */
:root{--ink:#17191a;--sage:#748983;--sage-deep:#526b64;--sage-pale:#e8eeea;--mist:#f0f3f0;--stone:#eeeae5;--warm:#b8a79c;--paper:#f7f7f3}
.nav nav a{color:var(--sage-deep)!important;text-decoration:none}.nav nav a:hover{color:var(--ink)!important}.navcta{color:var(--ink)!important;border-color:rgba(82,107,100,.28)!important;background:rgba(255,255,255,.72)!important}.navcta:hover{background:var(--sage-pale)!important;border-color:rgba(82,107,100,.42)!important}
.inherit{height:155vh!important;padding:0!important;overflow:hidden}.inherit>.wrap{position:sticky;top:72px;height:calc(100vh - 72px);width:100%!important;max-width:none!important;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.inherit .section-title{width:min(980px,calc(100% - 10vw));margin:0 auto 44px;text-align:center}.inherit .section-title h2{font-size:clamp(2.55rem,4.2vw,4.55rem)!important}.inherit .section-title p{margin-left:auto;margin-right:auto}.inherit .cards{display:flex!important;gap:18px!important;width:max-content!important;overflow:visible!important;padding:0!important;will-change:transform}.inherit .cards button{width:270px!important;min-width:270px!important;height:270px!important;min-height:270px!important;padding:30px!important;border-radius:24px!important;background:linear-gradient(145deg,#fbfbf8,#eef3ef)!important;border:1px solid rgba(82,107,100,.17)!important;box-shadow:0 16px 48px rgba(46,61,55,.065)!important;transition:border-color .25s ease,box-shadow .25s ease!important;transform:none!important}.inherit .cards button:hover{transform:none!important;background:linear-gradient(145deg,#fbfbf8,#eef3ef)!important;border-color:rgba(82,107,100,.3)!important;box-shadow:0 18px 52px rgba(46,61,55,.09)!important}.inherit .cards h3{font-size:1.18rem!important}.inherit .cards p{font-size:.91rem!important}.inherit-note{width:min(980px,calc(100% - 10vw));margin:26px auto 0!important;text-align:center}
.cinema{height:205vh!important;background:linear-gradient(155deg,#101514 0%,#17211e 58%,#1d2925 100%)!important}.cinema-stage{background:radial-gradient(circle at 50% 47%,rgba(116,137,131,.16),transparent 35%)!important}.portal{display:none!important}.words{font-size:clamp(4.3rem,9vw,9rem)!important}.cinema .eyebrow{color:#aab9b4!important}.cinema-sub{color:#b8c4c0!important}
.method{padding:110px 0 100px!important;background:linear-gradient(180deg,var(--paper),#f0f3f0)!important}.method .section-title h2{font-size:clamp(2.7rem,4.3vw,4.6rem)!important}.chain{gap:12px!important}.chain>i{display:none!important}.chain article{position:relative;background:rgba(255,255,255,.7)!important;border:1px solid rgba(82,107,100,.16)!important;border-radius:22px!important;box-shadow:none!important;transition:none!important;overflow:hidden}.chain article::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:var(--sage);transform:scaleX(var(--reveal,0));transform-origin:left;opacity:.75}.chain article:hover{transform:none!important;box-shadow:none!important;background:rgba(255,255,255,.7)!important}.chain article h3{color:var(--sage-deep)!important}.chain article p{color:#696f6c!important}
.difference{padding:105px 0!important;background:linear-gradient(135deg,#e6ece8 0%,#f5f2ed 55%,#e9efeb 100%)!important}.difference h2{font-size:clamp(2.65rem,4.15vw,4.45rem)!important}.difference .statement em{color:var(--sage-deep)!important}.compare{border:1px solid rgba(82,107,100,.16)!important;box-shadow:0 20px 60px rgba(45,57,52,.07)!important}.compare-head span:last-child,.compare>div:not(.compare-head) strong{background:#607a72!important;color:#f7f8f5!important}.compare>div:not(.compare-head) strong{font-weight:500!important}
.opinion{background:linear-gradient(150deg,#121716,#1b2723)!important;padding:110px 0!important}.opinion h2{font-size:clamp(2.8rem,4.5vw,4.8rem)!important}.opinion-grid{border-color:rgba(173,194,186,.24)!important}.opinion-grid span{background:rgba(255,255,255,.025)!important;border-color:rgba(173,194,186,.18)!important;color:#e6ebe8!important;transition:none!important}.opinion-grid span:hover{background:rgba(255,255,255,.025)!important;transform:none!important}.opinion-grid span:nth-child(2),.opinion-grid span:nth-child(4),.opinion-grid span:nth-child(5),.opinion-grid span:nth-child(7){background:rgba(116,137,131,.09)!important}.opinion-line{color:#aebbb6!important}
.services{padding:110px 0 95px!important;background:linear-gradient(180deg,#f7f7f3,#eef2ef)!important}.services .section-title h2{font-size:clamp(2.7rem,4.3vw,4.6rem)!important}.service-list article{position:relative;padding:34px 0!important;transition:none!important;background:transparent!important}.service-list article::before{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:var(--reveal,0);background:linear-gradient(90deg,var(--sage),rgba(116,137,131,.08))}.service-list article:hover{padding-left:0!important;padding-right:0!important;background:transparent!important}.service-list b{color:var(--sage-deep)!important}.service-list h3{font-size:1.55rem!important}.advisor-strip{background:linear-gradient(110deg,#dfe9e4,#eee8e2)!important;border:1px solid rgba(82,107,100,.12)!important}
.closing{min-height:auto!important;height:auto!important;padding:115px 0 105px!important;background:linear-gradient(145deg,#edf2ee,#f7f5f1)!important}.closing-orbit{display:none!important}.closing-copy{position:relative!important;inset:auto!important;opacity:1!important;transform:none!important}.closing-copy h2{font-size:clamp(3rem,5.2vw,5.7rem)!important;line-height:.96!important}.closing-copy h2 em{color:var(--sage)!important}.closing-copy>p{color:#69716e!important}.success.modal{background:linear-gradient(145deg,#f8f8f4,#eaf0ec)!important;border:1px solid rgba(82,107,100,.16)!important}.success .eyebrow{color:var(--sage-deep)!important}.success h2{color:var(--ink)!important}.success .primary{background:var(--sage-deep)!important}
footer{background:#edf1ee!important;border-color:rgba(82,107,100,.12)!important;color:#626b67!important}
@media(max-width:600px){.inherit{height:auto!important;padding:85px 0!important}.inherit>.wrap{position:relative;top:auto;height:auto}.inherit .cards{transform:none!important;overflow-x:auto!important;width:100%!important;padding:0 18px 14px!important;scroll-snap-type:x mandatory}.inherit .cards button{scroll-snap-align:center}.words{font-size:clamp(3.2rem,16vw,5rem)!important}.closing{padding:85px 18px!important}}

/* v2.0 — clean editorial / spatial color system */
:root{--sage:#718982;--sage-deep:#4f6961;--sage-soft:#dfe9e4;--aqua:#dfeceb;--stone:#eee8e1;--paper:#f8f8f5;--ink:#17191a}

/* Exposure section: no pinning, no horizontal theatre, no dead scroll space */
.inherit{height:auto!important;min-height:0!important;padding:112px 0 105px!important;overflow:visible!important;background:
 radial-gradient(ellipse at 18% 18%,rgba(113,137,130,.12),transparent 28%),
 radial-gradient(ellipse at 82% 78%,rgba(184,167,156,.10),transparent 26%),
 linear-gradient(180deg,#f8f8f5 0%,#f2f5f2 100%)!important}
.inherit>.wrap{position:relative!important;top:auto!important;height:auto!important;width:min(1280px,calc(100% - 72px))!important;max-width:1280px!important;display:block!important;overflow:visible!important}
.inherit .section-title{width:min(760px,100%)!important;margin:0 auto 52px!important;text-align:center!important}
.inherit .section-title h2{font-size:clamp(2.5rem,4vw,4.15rem)!important;line-height:.98!important}
.inherit .cards{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;width:100%!important;transform:none!important;overflow:visible!important;padding:0!important;position:relative!important}
.inherit .cards button{width:auto!important;min-width:0!important;height:286px!important;min-height:286px!important;padding:27px!important;border-radius:28px!important;position:relative!important;overflow:hidden!important;background:rgba(255,255,252,.68)!important;border:1px solid rgba(79,105,97,.14)!important;box-shadow:0 18px 48px rgba(35,52,46,.055)!important;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease!important}
.inherit .cards button::before{content:"";position:absolute;inset:auto -24% -36% 22%;height:64%;border-radius:50%;background:radial-gradient(circle,rgba(113,137,130,.15),rgba(113,137,130,0) 68%);pointer-events:none}
.inherit .cards button:nth-child(2)::before,.inherit .cards button:nth-child(5)::before{background:radial-gradient(circle,rgba(184,167,156,.16),rgba(184,167,156,0) 68%)}
.inherit .cards button:hover{transform:translateY(-5px)!important;border-color:rgba(79,105,97,.24)!important;box-shadow:0 24px 60px rgba(35,52,46,.085)!important;background:rgba(255,255,252,.76)!important}
.inherit .cards h3{margin-top:82px!important;font-size:1.13rem!important;position:relative;z-index:1}.inherit .cards p{font-size:.86rem!important;position:relative;z-index:1}.inherit .cards span{position:relative;z-index:1}.inherit-note{width:auto!important;margin:26px auto 0!important;text-align:center!important;font-size:.88rem!important}

/* Decision sequence: smoother, color-led, no blur-heavy animation */
.cinema{height:150vh!important;background:linear-gradient(145deg,#13201c 0%,#243b34 52%,#506a62 100%)!important}
.cinema-stage{background:radial-gradient(ellipse at 50% 48%,rgba(211,229,222,.15),transparent 38%)!important}
.words{font-size:clamp(3.7rem,7.4vw,7.7rem)!important}.words span{filter:none!important;will-change:opacity,transform;color}.words span:nth-child(1){color:#d9e4df}.words span:nth-child(2){color:#c7d8d2}.words span:nth-child(3){color:#eadfd7}.words span:nth-child(4){color:#fff}.cinema-sub{color:#d0d9d5!important}.cinema .eyebrow{color:#c2d0cb!important}

/* Method: colored workflow rather than white cards */
.method{background:linear-gradient(180deg,#f4f6f3,#eef2ef)!important;padding:105px 0 96px!important}.chain article{background:linear-gradient(155deg,rgba(255,255,252,.82),rgba(222,234,228,.72))!important;border-color:rgba(79,105,97,.13)!important}.chain article:nth-of-type(even){background:linear-gradient(155deg,rgba(255,255,252,.86),rgba(238,232,225,.76))!important}.chain article::before{height:3px!important;background:linear-gradient(90deg,#58736a,#9ab0a9)!important}.chain article:hover{background:inherit!important}

/* Difference: softer two-tone comparison, no hard black block */
.compare-head span:last-child,.compare>div:not(.compare-head) strong{background:#607a72!important}.compare-head span:first-child,.compare>div:not(.compare-head) span{background:rgba(255,255,255,.46)!important}

/* Opinion: jewel-toned dark section, not black */
.opinion{background:linear-gradient(135deg,#17231f 0%,#263c35 58%,#334d45 100%)!important}.opinion-grid span{background:rgba(244,248,245,.045)!important}.opinion-grid span:nth-child(2),.opinion-grid span:nth-child(4),.opinion-grid span:nth-child(5),.opinion-grid span:nth-child(7){background:rgba(183,165,155,.075)!important}

/* Services: quiet alternating material bands */
.services{background:linear-gradient(180deg,#f7f7f3,#edf2ee)!important}.service-list article{border-color:rgba(79,105,97,.12)!important}.service-list article:nth-child(odd){background:linear-gradient(90deg,rgba(223,233,228,.36),transparent 76%)!important;padding-left:22px!important;padding-right:22px!important;border-radius:18px}.service-list article:hover{padding-left:22px!important;padding-right:22px!important}

@media(max-width:1000px){.inherit .cards{grid-template-columns:repeat(2,1fr)!important}.inherit .cards button:last-child{grid-column:1/-1;height:230px!important;min-height:230px!important}.inherit .cards button:last-child h3{margin-top:45px!important}}
@media(max-width:600px){.inherit{padding:82px 0 78px!important}.inherit>.wrap{width:min(100% - 36px,1280px)!important}.inherit .section-title{text-align:left!important;margin-bottom:36px!important}.inherit .cards{grid-template-columns:1fr!important}.inherit .cards button,.inherit .cards button:last-child{grid-column:auto;height:220px!important;min-height:220px!important}.inherit .cards h3,.inherit .cards button:last-child h3{margin-top:45px!important}.cinema{height:135vh!important}}

/* v2.1 — editorial flow: fewer boxes, smoother motion, quieter brand */
.logo img{width:128px!important}
.nav{height:68px!important;background:rgba(247,247,243,.88)!important;backdrop-filter:blur(18px) saturate(125%)!important}

/* Method becomes a connected analytical flow, not a card gallery */
.method{background:linear-gradient(180deg,#f7f7f3 0%,#f0f3ef 100%)!important;padding:104px 0 96px!important}
.chain{display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:0!important;border:0!important;position:relative!important;align-items:stretch!important}
.chain::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(82,107,100,.18)}
.chain::after{content:"";position:absolute;left:0;top:0;height:2px;width:100%;background:linear-gradient(90deg,#526b64,#8fa49e,#b8a79c);transform:scaleX(var(--flow-progress,0));transform-origin:left;will-change:transform}
.chain article,.chain .final{min-height:190px!important;padding:34px 28px 26px!important;border:0!important;border-right:1px solid rgba(82,107,100,.12)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--ink)!important;opacity:1!important;transform:none!important;position:relative!important;overflow:visible!important}
.chain article:last-of-type{border-right:0!important}
.chain article::before{content:""!important;position:absolute!important;top:-5px!important;left:28px!important;width:10px!important;height:10px!important;border-radius:50%!important;background:#f7f7f3!important;border:2px solid #81968f!important;transform:scale(calc(.72 + var(--reveal,0)*.28))!important;opacity:1!important}
.chain article::after{content:"";position:absolute;inset:16px 10px 14px;border-radius:24px;background:radial-gradient(circle at 30% 25%,rgba(111,137,128,calc(var(--reveal,0)*.08)),transparent 62%);pointer-events:none}
.chain h3,.chain .final h3{margin:54px 0 14px!important;font-size:.72rem!important;letter-spacing:.14em!important;color:#526b64!important;position:relative;z-index:1}
.chain p,.chain .final p{font-size:.94rem!important;line-height:1.5!important;color:#676e6b!important;position:relative;z-index:1}

/* Deliverable: retain the mineral field, remove the spreadsheet-box feeling */
.opinion{background:radial-gradient(circle at 78% 18%,rgba(129,159,149,.22),transparent 34%),linear-gradient(135deg,#17231f 0%,#22362f 58%,#2e463e 100%)!important;padding:112px 0 106px!important}
.opinion-grid{margin-top:58px!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;border:0!important;gap:0!important;position:relative!important}
.opinion-grid::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(210,226,220,.16)}
.opinion-grid span{position:relative!important;padding:24px 22px 26px 24px!important;min-height:84px!important;border:0!important;border-right:1px solid rgba(210,226,220,.14)!important;background:transparent!important;color:#e7eeeb!important;font-size:.88rem!important;display:flex;align-items:center;gap:12px}
.opinion-grid span:nth-child(4n){border-right:0!important}.opinion-grid span:nth-child(n+5){padding-top:28px!important}
.opinion-grid span::before{content:"";width:5px;height:5px;border-radius:50%;background:#91aaa2;box-shadow:0 0 0 4px rgba(145,170,162,.08);flex:0 0 auto}
.opinion-grid span:nth-child(even)::before{background:#baa99f;box-shadow:0 0 0 4px rgba(186,169,159,.07)}

/* Services: lifecycle timeline, no alternating rounded boxes */
.services{background:linear-gradient(180deg,#f7f7f3 0%,#eef2ef 100%)!important;padding:106px 0 100px!important}
.service-list{position:relative!important;border-top:1px solid rgba(82,107,100,.16)!important;padding-left:28px!important}
.service-list::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:rgba(82,107,100,.14)}
.service-list::after{content:"";position:absolute;left:-1px;top:0;width:3px;height:100%;background:linear-gradient(#526b64,#9cafaa,#b8a79c);transform:scaleY(var(--service-progress,0));transform-origin:top;will-change:transform;border-radius:3px}
.service-list article,.service-list article:nth-child(odd){display:grid!important;grid-template-columns:180px 1fr 1fr!important;gap:34px!important;padding:34px 0!important;margin:0!important;border:0!important;border-bottom:1px solid rgba(82,107,100,.13)!important;border-radius:0!important;background:transparent!important;opacity:1!important;transform:translateX(calc((1 - var(--reveal,0))*14px))!important;transition:none!important;position:relative!important}
.service-list article::before{content:""!important;position:absolute!important;left:-33px!important;top:42px!important;width:9px!important;height:9px!important;border-radius:50%!important;background:#f4f5f1!important;border:2px solid #748983!important;opacity:1!important}
.service-list article:hover,.service-list article:nth-child(odd):hover{padding-left:0!important;padding-right:0!important;background:transparent!important}
.service-list h3{font-size:1.38rem!important;letter-spacing:-.035em!important}.service-list p{font-size:.94rem!important}
.advisor-strip{margin-top:44px!important;background:transparent!important;border:0!important;border-top:1px solid rgba(82,107,100,.16)!important;border-bottom:1px solid rgba(82,107,100,.16)!important;border-radius:0!important;padding:24px 0!important}

@media(max-width:900px){
 .chain{grid-template-columns:1fr!important}.chain::before,.chain::after{left:0;right:auto;top:0;bottom:0;width:2px;height:100%;transform:scaleY(var(--flow-progress,0));transform-origin:top}.chain article,.chain .final{min-height:140px!important;border-right:0!important;border-bottom:1px solid rgba(82,107,100,.12)!important;padding:24px 22px 24px 32px!important}.chain article::before{left:-4px!important;top:30px!important}.chain h3,.chain .final h3{margin:18px 0 10px!important}
 .opinion-grid{grid-template-columns:1fr 1fr!important}.opinion-grid::before{display:none}.opinion-grid span{border-bottom:1px solid rgba(210,226,220,.14)!important}.opinion-grid span:nth-child(2n){border-right:0!important}
 .service-list article,.service-list article:nth-child(odd){grid-template-columns:1fr!important;gap:8px!important}
}
@media(max-width:600px){.logo img{width:116px!important}.opinion-grid{grid-template-columns:1fr!important}.opinion-grid span{border-right:0!important}}

/* v2.2 — Precision pass: consistent geometry, reversible motion, unified brand details */
:root{
  --sage-deep:#526b64;
  --sage-mid:#7f958e;
  --sage-soft:#dfe8e3;
  --champagne:#b8a79c;
  --paper:#f7f7f3;
  --radius-sm:16px;
  --radius-md:22px;
  --radius-lg:30px;
  --ease-premium:cubic-bezier(.22,.8,.24,1);
}

/* One visual language: no blue browser-like accents, no random hover states. */
a{color:inherit}.nav a{color:#4f5f5a!important;transition:color .22s ease,opacity .22s ease}.nav a:hover{color:var(--sage-deep)!important}.navcta{color:#252826!important}
.section-title h2{max-width:900px}.section-title>p:last-child{max-width:790px}

/* Diligence explorer — calm at rest, tactile only when intentionally opened. */
.inherit .cards button{
  cursor:pointer!important;
  border-radius:var(--radius-md)!important;
  border:1px solid rgba(82,107,100,.13)!important;
  background:linear-gradient(150deg,rgba(255,255,252,.94),rgba(239,244,240,.76))!important;
  box-shadow:0 14px 38px rgba(38,52,47,.045),inset 0 1px 0 rgba(255,255,255,.9)!important;
  transition:transform .42s var(--ease-premium),border-color .42s ease,box-shadow .42s ease!important;
}
.inherit .cards button:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(82,107,100,.22)!important;
  box-shadow:0 20px 48px rgba(38,52,47,.07),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
.inherit .cards button:active{transform:translateY(-1px) scale(.992)!important}
.inherit .cards button.is-opening{animation:card-confirm .52s var(--ease-premium) both}
@keyframes card-confirm{0%{box-shadow:0 14px 38px rgba(38,52,47,.045)}45%{box-shadow:0 0 0 7px rgba(111,130,126,.10),0 24px 58px rgba(38,52,47,.10);border-color:rgba(82,107,100,.38)}100%{box-shadow:0 14px 38px rgba(38,52,47,.045)}}

/* iOS/macOS-like dialog entrance: restrained spring, optical fade and blur. */
.overlay{background:rgba(19,24,22,.34)!important;backdrop-filter:blur(8px) saturate(110%)!important;-webkit-backdrop-filter:blur(8px) saturate(110%)!important}
.overlay.modal-enter{animation:overlay-in .38s ease both}
.modal{transform-origin:50% 46%;will-change:transform,opacity,filter}
.modal.modal-enter{animation:modal-spring .58s cubic-bezier(.2,.9,.22,1.08) both}
@keyframes overlay-in{from{opacity:0}to{opacity:1}}
@keyframes modal-spring{0%{opacity:0;transform:translate(-50%,-47%) scale(.955);filter:blur(5px)}65%{opacity:1;transform:translate(-50%,-50.35%) scale(1.006);filter:blur(0)}100%{opacity:1;transform:translate(-50%,-50%) scale(1);filter:blur(0)}}
.topic.modal{border-radius:var(--radius-lg)!important;box-shadow:0 38px 110px rgba(24,31,28,.18)!important}
.topic-cols{border-radius:var(--radius-sm);overflow:hidden;border-color:rgba(82,107,100,.12)!important}
.topic-cols>div{background:rgba(255,255,252,.52)}
.topic-cols b{color:var(--sage-deep)!important;font-size:.68rem!important;letter-spacing:.15em!important}

/* Method — a single connected path. No hover highlighting; progress is scroll-driven and reversible. */
.method{padding:98px 0 92px!important}
.chain{margin-top:6px!important}
.chain article,.chain .final{
  min-height:210px!important;
  padding:34px 28px 28px!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:calc(.52 + var(--reveal,0)*.48)!important;
  transform:translateY(calc((1 - var(--reveal,0))*14px))!important;
  transition:none!important;
}
.chain article:hover,.chain .final:hover{background:transparent!important;box-shadow:none!important;transform:translateY(calc((1 - var(--reveal,0))*14px))!important}
.chain article::after{
  inset:10px 8px 10px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(126,151,142,calc(var(--reveal,0)*.055)),rgba(184,167,156,calc(var(--reveal,0)*.035)))!important;
}
.chain article::before{transform:scale(calc(.76 + var(--reveal,0)*.24))!important;background:var(--paper)!important;border-color:color-mix(in srgb,var(--sage-deep) calc(55% + var(--reveal,0)*45%),#aeb9b5)!important}
.chain h3,.chain .final h3{font-size:.74rem!important;letter-spacing:.15em!important;font-weight:700!important;color:var(--sage-deep)!important}

/* Comparison — headers should read as actual section titles. */
.compare{border-radius:var(--radius-md)!important;overflow:hidden!important}
.compare-head{min-height:76px!important}
.compare-head span{
  display:flex!important;align-items:center!important;
  font-size:.76rem!important;font-weight:700!important;letter-spacing:.15em!important;
  color:#555d5a!important;padding:0 24px!important;
}
.compare-head span:last-child{color:#f7f8f5!important;background:#607a72!important}
.compare>div:not(.compare-head) span,.compare>div:not(.compare-head) strong{padding:20px 24px!important}

/* Lifecycle — same motion grammar as Method: horizontal line + moving progress + circles. */
.services{padding:100px 0 92px!important}
.services .section-title{margin-bottom:46px!important}
.service-list{
  display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:0!important;
  position:relative!important;border:0!important;padding:0!important;margin-top:10px!important;
}
.service-list::before{
  content:""!important;position:absolute!important;left:0!important;right:0!important;top:0!important;bottom:auto!important;
  width:auto!important;height:1px!important;background:rgba(82,107,100,.18)!important;transform:none!important;
}
.service-list::after{
  content:""!important;position:absolute!important;left:0!important;top:0!important;width:100%!important;height:2px!important;
  background:linear-gradient(90deg,#526b64,#8fa49e,#b8a79c)!important;
  transform:scaleX(var(--service-progress,0))!important;transform-origin:left!important;border-radius:2px!important;
}
.service-list article,.service-list article:nth-child(odd){
  display:block!important;min-height:245px!important;margin:0!important;padding:38px 26px 26px!important;
  border:0!important;border-right:1px solid rgba(82,107,100,.12)!important;border-radius:0!important;background:transparent!important;
  opacity:calc(.50 + var(--reveal,0)*.50)!important;
  transform:translateY(calc((1 - var(--reveal,0))*14px))!important;
  transition:none!important;position:relative!important;
}
.service-list article:last-child{border-right:0!important}
.service-list article::before{
  content:""!important;position:absolute!important;left:26px!important;top:-5px!important;width:10px!important;height:10px!important;
  border-radius:50%!important;background:var(--paper)!important;border:2px solid #81968f!important;opacity:1!important;
  transform:scale(calc(.76 + var(--reveal,0)*.24))!important;
}
.service-list article::after{
  content:"";position:absolute;inset:12px 8px 12px;border-radius:18px;
  background:linear-gradient(180deg,rgba(126,151,142,calc(var(--reveal,0)*.05)),rgba(184,167,156,calc(var(--reveal,0)*.028)));
  pointer-events:none;
}
.service-list article:hover,.service-list article:nth-child(odd):hover{padding:38px 26px 26px!important;background:transparent!important;transform:translateY(calc((1 - var(--reveal,0))*14px))!important}
.service-list b,.service-list h3,.service-list p{position:relative;z-index:1}
.service-list b{display:block!important;margin:42px 0 15px!important;color:var(--sage-deep)!important;font-size:.69rem!important;font-weight:700!important;letter-spacing:.16em!important}
.service-list h3{font-size:1.28rem!important;line-height:1.14!important;margin:0 0 14px!important;letter-spacing:-.035em!important}
.service-list p{font-size:.9rem!important;line-height:1.5!important;color:#6d7471!important;margin:0!important}

/* Footer/header mark: exact same rendered width. */
.logo img,footer img{width:128px!important;height:auto!important;max-width:none!important}
footer{min-height:112px!important;padding:22px 5vw!important;align-items:center!important}

/* Micro consistency */
.primary,.navcta{transition:transform .28s var(--ease-premium),box-shadow .28s ease,background .28s ease!important}
.primary:hover,.navcta:hover{transform:translateY(-1px)!important}
.x{transition:transform .28s var(--ease-premium),background .28s ease!important}.x:hover{transform:rotate(90deg)}

@media(max-width:900px){
  .service-list{grid-template-columns:1fr!important;padding-left:22px!important}
  .service-list::before{left:0!important;right:auto!important;top:0!important;bottom:0!important;width:1px!important;height:auto!important}
  .service-list::after{left:0!important;top:0!important;width:2px!important;height:100%!important;transform:scaleY(var(--service-progress,0))!important;transform-origin:top!important}
  .service-list article,.service-list article:nth-child(odd){min-height:160px!important;border-right:0!important;border-bottom:1px solid rgba(82,107,100,.12)!important;padding:26px 22px 26px 28px!important}
  .service-list article::before{left:-27px!important;top:32px!important}.service-list b{margin:8px 0 10px!important}
}
@media(max-width:600px){.logo img,footer img{width:116px!important}.compare-head span{font-size:.63rem!important;letter-spacing:.11em!important;padding:0 14px!important}}
@media(prefers-reduced-motion:reduce){.modal.modal-enter,.overlay.modal-enter,.inherit .cards button.is-opening{animation:none!important}.chain article,.service-list article{opacity:1!important;transform:none!important}}

/* v2.3 — detail correction pass */
/* Method: the active line should read as one complete analytical path once the section is in view. */
.chain::after{z-index:2!important}
.chain article::before{z-index:3!important}

/* Comparison: make the two meanings unmistakably separate at a glance. */
.compare-head{border-bottom:1px solid rgba(82,107,100,.22)!important}
.compare-head span:first-child{border-right:1px solid rgba(82,107,100,.18)!important}
.compare-head span{font-size:.79rem!important;letter-spacing:.16em!important}
.compare>div:not(.compare-head) span{border-right:1px solid rgba(82,107,100,.12)!important}

/* Investment Cyber Opinion: executive scanability before atmosphere. */
.opinion{background:radial-gradient(circle at 76% 16%,rgba(129,159,149,.14),transparent 34%),linear-gradient(135deg,#17231f 0%,#21352e 62%,#294139 100%)!important}
.opinion-head>p{color:#c5ceca!important;line-height:1.58!important;max-width:500px!important;font-size:1rem!important}
.opinion-grid{margin-top:52px!important;border-top:1px solid rgba(221,232,227,.18)!important;border-bottom:1px solid rgba(221,232,227,.18)!important}
.opinion-grid span{min-height:78px!important;padding:22px 22px!important;color:#f1f4f2!important;font-size:.92rem!important;font-weight:500!important;line-height:1.35!important}
.opinion-grid span::before{width:6px!important;height:6px!important;box-shadow:0 0 0 4px rgba(145,170,162,.10)!important}
.opinion-line{color:#c8d0cd!important;font-size:.92rem!important;margin-top:24px!important}

/* Lifecycle: restore the original vertical editorial timeline. Motion remains scroll-linked and reversible. */
.services{padding:106px 0 100px!important}
.services .section-title{margin-bottom:52px!important}
.service-list{
  display:block!important;position:relative!important;border:0!important;border-top:0!important;
  padding:0 0 0 48px!important;margin-top:0!important;
}
.service-list::before{
  content:""!important;position:absolute!important;left:10px!important;top:0!important;bottom:0!important;
  width:1px!important;height:auto!important;background:rgba(82,107,100,.18)!important;transform:none!important;
}
.service-list::after{
  content:""!important;position:absolute!important;left:9px!important;top:0!important;width:3px!important;height:100%!important;
  background:linear-gradient(180deg,#526b64,#8fa49e,#b8a79c)!important;
  transform:scaleY(var(--service-progress,0))!important;transform-origin:top!important;border-radius:3px!important;
}
.service-list article,.service-list article:nth-child(odd){
  display:grid!important;grid-template-columns:190px minmax(260px,.85fr) minmax(320px,1.15fr)!important;gap:42px!important;
  min-height:0!important;margin:0!important;padding:34px 0 36px!important;
  border:0!important;border-bottom:1px solid rgba(82,107,100,.13)!important;border-radius:0!important;background:transparent!important;
  opacity:calc(.54 + var(--reveal,0)*.46)!important;
  transform:translateX(calc((1 - var(--reveal,0))*14px))!important;transition:none!important;position:relative!important;
}
.service-list article::before{
  content:""!important;position:absolute!important;left:-43px!important;top:39px!important;width:10px!important;height:10px!important;
  border-radius:50%!important;background:#f4f5f1!important;border:2px solid #748983!important;opacity:1!important;
  transform:scale(calc(.76 + var(--reveal,0)*.24))!important;z-index:2!important;
}
.service-list article::after{display:none!important}
.service-list article:hover,.service-list article:nth-child(odd):hover{padding:34px 0 36px!important;background:transparent!important;transform:translateX(calc((1 - var(--reveal,0))*14px))!important}
.service-list b{display:block!important;margin:7px 0 0!important;color:var(--sage-deep)!important;font-size:.72rem!important;font-weight:700!important;letter-spacing:.16em!important}
.service-list h3{font-size:1.42rem!important;line-height:1.12!important;margin:0!important;letter-spacing:-.035em!important}
.service-list p{font-size:.95rem!important;line-height:1.55!important;color:#6a716e!important;margin:0!important;max-width:540px!important}

@media(max-width:900px){
 .service-list{padding-left:34px!important}
 .service-list::before{left:5px!important}.service-list::after{left:4px!important}
 .service-list article,.service-list article:nth-child(odd){grid-template-columns:1fr!important;gap:8px!important;padding:27px 0 30px!important;transform:translateX(calc((1 - var(--reveal,0))*10px))!important}
 .service-list article::before{left:-34px!important;top:31px!important}
 .service-list article:hover,.service-list article:nth-child(odd):hover{padding:27px 0 30px!important}
 .service-list b{margin:0 0 6px!important}.service-list h3{margin-bottom:4px!important}
}

/* v2.4 — interaction correction: deliberate modal motion + exact method-line geometry */
/* Dialogs: slower, continuous open AND close motion. */
.overlay{
  opacity:0;
  transition:opacity .62s cubic-bezier(.22,.8,.24,1),backdrop-filter .62s cubic-bezier(.22,.8,.24,1)!important;
}
.overlay.is-open{opacity:1}
.modal{
  opacity:0;
  transform:translate(-50%,-48.2%) scale(.965)!important;
  filter:blur(7px);
  transition:opacity .66s cubic-bezier(.22,.8,.24,1),transform .72s cubic-bezier(.22,.8,.24,1),filter .58s ease!important;
  animation:none!important;
}
.modal.is-open{
  opacity:1;
  transform:translate(-50%,-50%) scale(1)!important;
  filter:blur(0);
}
.modal.is-closing{
  opacity:0;
  transform:translate(-50%,-48.8%) scale(.975)!important;
  filter:blur(4px);
  transition-duration:.52s!important;
}
.inherit .cards button.is-opening{
  animation:card-confirm-slow .72s cubic-bezier(.22,.8,.24,1) both!important;
}
@keyframes card-confirm-slow{
  0%{transform:translateY(0) scale(1);box-shadow:0 14px 38px rgba(38,52,47,.045)}
  42%{transform:translateY(-3px) scale(1.006);box-shadow:0 0 0 8px rgba(111,130,126,.085),0 25px 60px rgba(38,52,47,.10);border-color:rgba(82,107,100,.34)}
  100%{transform:translateY(0) scale(1);box-shadow:0 14px 38px rgba(38,52,47,.045)}
}

/* Method path: line and every node share the exact same optical center. */
.chain::before,.chain::after{top:0!important}
.chain::before{height:1px!important;z-index:0!important}
.chain::after{height:2px!important;z-index:1!important}
.chain article::before{
  top:0!important;
  transform:translateY(-50%) scale(calc(.76 + var(--reveal,0)*.24))!important;
  transform-origin:center!important;
  background:transparent!important;
  z-index:3!important;
}
@media(max-width:900px){
  .chain::before,.chain::after{top:0!important;left:0!important}
  .chain article::before{left:0!important;top:30px!important;transform:translate(-50%,-50%) scale(calc(.76 + var(--reveal,0)*.24))!important}
}
@media(prefers-reduced-motion:reduce){.overlay,.modal{transition:none!important}.modal{filter:none!important}}


/* v2.5 — executive readability + unified spatial motion */
:root{--ease-spatial:cubic-bezier(.22,.78,.22,1);--ease-settle:cubic-bezier(.18,.86,.22,1)}
/* Readability: keep the visual hierarchy, remove unnecessarily small decision text. */
.eyebrow{font-size:.72rem!important;line-height:1.35!important;letter-spacing:.16em!important}
.nav a,.nav button{font-size:.8rem!important}
.actions a,.primary{font-size:.88rem!important}
.audience{font-size:.68rem!important}
.inherit .cards p{font-size:.94rem!important;line-height:1.48!important}.inherit .cards span{font-size:.78rem!important}.inherit-note{font-size:.94rem!important}
.chain p,.chain .final p{font-size:1rem!important;line-height:1.52!important}.chain h3,.chain .final h3{font-size:.78rem!important}
.compare-head span{font-size:.8rem!important}.compare>div:not(.compare-head) span,.compare>div:not(.compare-head) strong{font-size:.98rem!important;line-height:1.4!important}
.opinion-grid span{font-size:.98rem!important}.opinion-line{font-size:.98rem!important}
.service-list b{font-size:.76rem!important}.service-list p{font-size:1rem!important}.advisor-strip p{font-size:1rem!important;line-height:1.5!important}
.final-cta small{font-size:.84rem!important}
footer{font-size:.82rem!important}
.modal>p:not(.eyebrow),.topic-lead{font-size:1rem!important;line-height:1.58!important}
.modal label{font-size:.82rem!important;line-height:1.35!important;color:#5d625f!important}
.modal input,.modal select,.modal textarea{font-size:1rem!important;line-height:1.4!important;padding:13px 14px!important;border-radius:10px!important;border-color:rgba(82,107,100,.22)!important;transition:border-color .28s var(--ease-spatial),box-shadow .28s var(--ease-spatial),background .28s ease!important}
.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:rgba(82,107,100,.58)!important;box-shadow:0 0 0 4px rgba(82,107,100,.09)!important;background:#fff!important}
.topic-cols p{font-size:1rem!important;line-height:1.52!important}.topic-cols b{font-size:.72rem!important}

/* One motion grammar everywhere: slow enough to perceive, fast enough to feel immediate. */
.primary,.navcta,.inherit .cards button,.x{transition-timing-function:var(--ease-spatial)!important}
.overlay{transition:opacity .62s var(--ease-spatial),backdrop-filter .62s var(--ease-spatial)!important}
.modal{transition:opacity .68s var(--ease-spatial),transform .76s var(--ease-settle),filter .58s ease!important}
.modal.is-closing{transition-duration:.58s!important}

/* Conversation dialog: tactile open/close and a satisfying submit-to-confirmation handoff. */
.contact.modal{overflow:hidden!important}
.contact.modal::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(circle at 50% 78%,rgba(113,137,130,.16),transparent 38%);transform:scale(.7);transition:opacity .55s var(--ease-spatial),transform .75s var(--ease-settle)}
.contact.modal.is-open::before{opacity:.6;transform:scale(1)}
.contact.modal>*{position:relative;z-index:1}
.contact form{transition:opacity .46s var(--ease-spatial),transform .58s var(--ease-settle),filter .46s ease}
.contact.is-submitting form{opacity:.52;transform:scale(.992);filter:blur(1.5px);pointer-events:none}
.contact.is-submitting .x{opacity:.35;pointer-events:none}
.contact form .primary{position:relative;overflow:hidden;min-width:230px;transition:transform .32s var(--ease-spatial),min-width .45s var(--ease-settle),background .3s ease,box-shadow .3s ease!important}
.contact form .primary::after{content:"";position:absolute;inset:0;transform:translateX(-125%);background:linear-gradient(100deg,transparent 15%,rgba(255,255,255,.22) 48%,transparent 82%);opacity:0}
.contact.is-submitting form .primary{transform:scale(.975);box-shadow:0 10px 30px rgba(23,25,24,.12)}
.contact.is-submitting form .primary::after{opacity:1;animation:request-sheen 1.05s var(--ease-spatial) infinite}
@keyframes request-sheen{to{transform:translateX(125%)}}

/* Confirmation appears as the same surface transforming, not a new page/dialog. */
.success.modal{overflow:hidden!important;text-align:center!important;padding-top:72px!important}
.success.modal::before{content:"";position:absolute;width:460px;height:460px;left:50%;top:45%;transform:translate(-50%,-50%) scale(.62);border-radius:50%;background:radial-gradient(circle,rgba(113,137,130,.17),rgba(113,137,130,.055) 34%,transparent 68%);opacity:0;transition:transform .9s var(--ease-settle),opacity .72s ease;pointer-events:none}
.success.modal.is-open::before{transform:translate(-50%,-50%) scale(1);opacity:1}
.success.modal>*{position:relative;z-index:1}
.success-mark{margin:0 auto 30px!important;transform:scale(.72) rotate(-7deg);opacity:0;transition:transform .82s var(--ease-settle),opacity .5s ease!important}
.success.is-open .success-mark{transform:scale(1) rotate(0);opacity:1}
.success-mark i{animation:none!important}.success.is-open .success-mark i{animation:success-orbit 5.8s linear infinite!important}
.success-mark span{transform:scale(.4);opacity:0;transition:transform .58s .2s var(--ease-settle),opacity .38s .18s ease}.success.is-open .success-mark span{transform:scale(1);opacity:1}
@keyframes success-orbit{to{transform:rotate(360deg)}}
.success .eyebrow,.success h2,.success>p,.success>.primary{opacity:0;transform:translateY(12px);transition:opacity .52s var(--ease-spatial),transform .62s var(--ease-settle)}
.success.is-open .eyebrow,.success.is-open h2,.success.is-open>p,.success.is-open>.primary{opacity:1;transform:translateY(0)}
.success.is-open h2{transition-delay:.07s}.success.is-open>p{transition-delay:.12s}.success.is-open>.primary{transition-delay:.17s}

@media(max-width:700px){.eyebrow{font-size:.69rem!important}.nav a{font-size:.76rem!important}.modal label{font-size:.8rem!important}.modal input,.modal select,.modal textarea{font-size:1rem!important}}
@media(prefers-reduced-motion:reduce){.contact form,.contact.modal::before,.success.modal::before,.success-mark,.success-mark span,.success .eyebrow,.success h2,.success>p,.success>.primary{transition:none!important;animation:none!important}.contact.is-submitting form{filter:none!important}}

/* v2.6 — precision fixes from review */
/* Method: remove the moving/highlight wash behind individual stages. Keep only the
   connected line, nodes and typography so the flow never looks cursor-selected. */
.chain article::after{display:none!important;content:none!important}
.chain article,.chain article:hover,.chain .final,.chain .final:hover{background:transparent!important;box-shadow:none!important}

/* Conversation: the dialog must never crop its own form. It remains centered,
   but becomes internally scrollable on shorter displays. */
.contact.modal{
  overflow-x:hidden!important;
  overflow-y:auto!important;
  max-height:calc(100dvh - 48px)!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.contact.modal form{padding-bottom:6px}
@media (max-height:820px) and (min-width:701px){
  .contact.modal{padding-top:42px!important;padding-bottom:42px!important}
  .contact.modal h2{font-size:clamp(2.45rem,3.7vw,3.45rem)!important;margin:14px 0 14px!important}
  .contact.modal>p:not(.eyebrow){margin-bottom:12px!important}
  .contact.modal label{margin:12px 0!important}
  .contact.modal textarea{min-height:104px!important;resize:vertical!important}
}
@media(max-width:700px){
  .contact.modal{max-height:calc(100dvh - 24px)!important;width:calc(100% - 24px)!important;padding:46px 24px 30px!important}
}

/* v2.7 — modal fit + neutral method hover */
/* Success close control must stay in the corner; the generic success child rule had
   accidentally overridden its absolute positioning. */
.success.modal>.x{position:absolute!important;right:22px!important;top:18px!important;z-index:5!important;margin:0!important}

/* Conversation: desktop form fits in one view — no internal scrolling required. */
.contact.modal{
  width:min(900px,calc(100% - 40px))!important;
  max-height:none!important;
  height:auto!important;
  overflow:visible!important;
  padding:34px 54px 32px!important;
}
.contact.modal .x{right:22px!important;top:16px!important}
.contact.modal .eyebrow{margin-bottom:8px!important}
.contact.modal h2{font-size:clamp(2.45rem,3.45vw,3.35rem)!important;line-height:.98!important;margin:10px 0 12px!important}
.contact.modal>p:not(.eyebrow){font-size:.94rem!important;line-height:1.45!important;margin:0 0 10px!important}
.contact.modal .form-row{gap:18px!important}
.contact.modal label{margin:9px 0!important;font-size:.78rem!important}
.contact.modal input,.contact.modal select,.contact.modal textarea{margin-top:6px!important;padding:10px 12px!important;min-height:42px!important}
.contact.modal textarea{height:86px!important;min-height:86px!important;resize:none!important}
.contact.modal form .primary{margin-top:6px!important;padding:12px 20px!important}
.contact.modal .form-error{margin-top:7px!important}

/* Method: remove all scroll/cursor highlighting. Every stage is equally readable at rest. */
.chain{overflow:visible!important}
.chain article,.chain .final{
  opacity:1!important;
  transform:none!important;
  background:transparent!important;
  box-shadow:none!important;
  transition:transform .42s var(--ease-spatial),box-shadow .42s var(--ease-spatial),background .42s ease!important;
  position:relative!important;
  z-index:1!important;
}
.chain article::after{display:none!important;content:none!important}
.chain article::before{opacity:1!important;transform:translateY(-50%) scale(1)!important}
@media (hover:hover) and (pointer:fine){
  .chain article:hover,.chain .final:hover{
    transform:scale(1.18)!important;
    z-index:12!important;
    background:rgba(249,249,246,.98)!important;
    box-shadow:0 22px 65px rgba(31,42,38,.13)!important;
    border-radius:18px!important;
  }
  .chain article:hover h3,.chain article:hover p{transform:scale(1.04);transform-origin:left center}
}

@media(max-width:900px){
  .contact.modal{width:calc(100% - 24px)!important;max-height:calc(100dvh - 24px)!important;overflow-y:auto!important;padding:42px 26px 30px!important}
  .contact.modal textarea{height:96px!important;min-height:96px!important}
  .chain article::before{transform:translate(-50%,-50%) scale(1)!important}
}
@media(max-height:700px) and (min-width:901px){
  .contact.modal{padding:26px 46px 24px!important}
  .contact.modal h2{font-size:2.35rem!important;margin:7px 0 8px!important}
  .contact.modal>p:not(.eyebrow){font-size:.88rem!important;margin-bottom:6px!important}
  .contact.modal label{margin:6px 0!important}
  .contact.modal input,.contact.modal select{min-height:38px!important;padding:8px 11px!important}
  .contact.modal textarea{height:66px!important;min-height:66px!important}
}

/* v2.8 — logo alignment lock
   Header and footer marks share the exact same width and horizontal origin. */
:root{--cyworth-edge:5vw;--cyworth-logo-width:128px}
.nav{padding-left:var(--cyworth-edge)!important;padding-right:var(--cyworth-edge)!important}
.logo{display:block!important;width:var(--cyworth-logo-width)!important;flex:0 0 var(--cyworth-logo-width)!important}
.logo img,footer img{display:block!important;width:var(--cyworth-logo-width)!important;height:auto!important;max-width:none!important}
footer{padding-left:var(--cyworth-edge)!important;padding-right:var(--cyworth-edge)!important}
footer img{justify-self:start!important}
@media(max-width:600px){
  :root{--cyworth-edge:16px;--cyworth-logo-width:122px}
  .nav{padding-left:var(--cyworth-edge)!important;padding-right:var(--cyworth-edge)!important}
  footer{padding-left:var(--cyworth-edge)!important;padding-right:var(--cyworth-edge)!important;align-items:center!important}
  footer img{justify-self:start!important}
  footer p,footer button{justify-self:start!important;text-align:left!important}
}

/* v2.9 — exact logo axis lock.
   Header and footer use the same edge, rendered width and zero internal padding. */
.nav .logo,
footer .footer-logo{
  box-sizing:border-box!important;
  display:block!important;
  width:var(--cyworth-logo-width)!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  line-height:0!important;
}
.nav .logo{position:absolute!important;left:var(--cyworth-edge)!important;top:50%!important;transform:translateY(-50%)!important;flex:0 0 var(--cyworth-logo-width)!important}
.nav .logo img,
footer .footer-logo img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
footer .footer-logo{justify-self:start!important;align-self:center!important}

/* v3.2 — navigation collision + brand-axis correction
   The brand owns the left edge; navigation may never enter its reserved zone. */
.nav{display:flex!important;align-items:center!important;justify-content:flex-end!important}
.nav .logo{z-index:2!important}
.nav nav{margin-left:auto!important;min-width:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important}
@media(max-width:1180px){
  .nav nav>a{display:none!important}
}
@media(max-width:600px){
  .nav .logo{left:var(--cyworth-edge)!important}
  .nav nav{margin-left:calc(var(--cyworth-logo-width) + 18px)!important}
  .navcta{font-size:.72rem!important;padding:8px 12px!important;white-space:nowrap!important}
  footer{align-items:flex-start!important}
  footer .footer-logo{margin-left:0!important}
}


/* v4.0 — final launch alignment: decision-gap section, intentionally unnumbered. */
.questions{padding:clamp(76px,9vw,132px) 0;background:#f4f4f1;border-top:1px solid rgba(35,48,44,.10);border-bottom:1px solid rgba(35,48,44,.10)}
.questions .wrap{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(48px,8vw,120px);align-items:start}
.questions-head{max-width:520px}.questions-head h2{font-size:clamp(2.4rem,4.1vw,4.6rem);line-height:.98;letter-spacing:-.045em;margin:14px 0 22px;color:#1b1b1d}.questions-head>p:last-child{max-width:480px;color:#747478;font-size:clamp(1rem,1.25vw,1.22rem);line-height:1.55}
.question-list{border-top:1px solid rgba(35,48,44,.22)}.question-list p{margin:0;padding:22px 0;border-bottom:1px solid rgba(35,48,44,.16);font-size:clamp(1.05rem,1.45vw,1.34rem);line-height:1.38;color:#2c302f}.question-list p:hover{color:#536b65}
@media(max-width:760px){.questions{padding:70px 0}.questions .wrap{grid-template-columns:1fr;gap:38px}.questions-head h2{font-size:clamp(2.35rem,10vw,3.25rem)}.question-list p{padding:18px 0;font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){.question-list p{transition:none!important}}

/* 4.1 optional supporting material */
.contact .optional{font-weight:400;color:var(--muted,#747478);}
.contact .form-note{display:block;margin-top:7px;font-size:12px;line-height:1.45;color:var(--muted,#747478);}
.contact input[type="file"]{padding:10px 12px;height:auto;min-height:44px;}
@media (max-height:820px) and (min-width:700px){.contact .form-note{font-size:11px;margin-top:4px}.contact input[type="file"]{min-height:40px;padding:7px 10px}}
