/* FRAGON: cinematic mountain landscape, original imagery and native motion. */
:root{--forest:#091510;--forest-panel:#11231b;--gold-soft:#e7c69b;--motion-play:running}
.mountain-page{background:var(--forest);--bg:var(--forest);--accent:var(--gold-soft);--muted:#b9c0b4;overflow-x:clip}
.mountain-page .header{background:#08120dd9;border-color:#cdb78a26;box-shadow:0 8px 45px #0002}
.mountain-page .brand span{color:#b6baa9}
.mountain-page .reading-progress{position:fixed;z-index:60;top:0;left:0;right:0;height:2px;pointer-events:none}
.reading-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#775c34,#ecc68d,#fff0cd);transform:scaleX(var(--reading-progress,0));transform-origin:left;box-shadow:0 0 12px #ecc68d55}
.mountain-page .hero{background:#08120d;isolation:isolate;padding-top:30px;overflow:hidden}
.mountain-page .hero>.cinema-scene,.mountain-page .hero>.cinema-shade,.mountain-page .hero>.cinema-light{display:none}
.mountain-scene{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.mountain-panorama{width:100%;height:100%;object-fit:cover;object-position:70% 48%;transform:translate3d(0,var(--landscape-shift,0px),0) scale(1.08);will-change:transform}
.mountain-atmosphere{position:absolute;inset:0;background:linear-gradient(90deg,#08120df2 0%,#08120dde 21%,#08120d99 42%,#08120d19 67%,transparent 85%),linear-gradient(0deg,#091510,transparent 25%,transparent 82%,#08120d55)}
.mountain-page .hero-grid{grid-template-columns:1.08fr 1fr;gap:45px;min-height:710px;position:relative}
.mountain-page .hero-copy{padding:48px 0 62px}
.mountain-page .hero-copy h1{font-size:clamp(44px,4.1vw,62px);line-height:1.1;max-width:620px;text-wrap:balance}
.mountain-page em{color:#e8c798}
.mountain-page .hero-copy .lead{color:#e4e5dc;max-width:535px;font-size:17px;text-shadow:0 2px 18px #0007}
.mountain-page .hero-detail{color:#b9c1b4;max-width:490px;line-height:1.85}
.mountain-page .hero-art-space{min-height:560px}
.mountain-page .eyebrow{color:#dfbf8b;letter-spacing:.16em}
.mountain-page .button{background:linear-gradient(135deg,#e9cca3,#cfaa70);color:#172013;border:1px solid #f0d7b0a3;border-radius:12px;box-shadow:inset 0 1px 0 #fff4d46b,0 12px 38px #0003;position:relative;overflow:hidden;isolation:isolate}
.mountain-page .button:before{content:"";position:absolute;z-index:-1;inset:-50% -20%;background:linear-gradient(110deg,transparent 38%,#fff5d94d 48%,transparent 58%);transform:translateX(-100%);transition:transform .8s ease;pointer-events:none}
.mountain-page .button:hover:before{transform:translateX(100%)}
.mountain-page .button:hover{box-shadow:0 16px 45px #d8b47722;filter:brightness(1.05)}
.mountain-page .button:focus-visible,.mountain-page .hero-foot a:focus-visible{outline:2px solid #f5d6a3;outline-offset:5px}
.mountain-page .hero-foot{width:min(1280px,calc(100% - 64px));border-top:1px solid #cdb78a3b;border-bottom:1px solid #cdb78a1a;display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;margin-bottom:26px;backdrop-filter:blur(8px);background:#08150e5e;border-radius:0 0 12px 12px}
.mountain-page .hero-foot a{color:#b8c4b1;padding:23px 12px;font-size:9px;letter-spacing:.13em;text-align:center;transition:color .3s,background .3s}
.mountain-page .hero-foot a+a{border-left:1px solid #cdb78a1f}.mountain-page .hero-foot a:hover{color:#f6d6a4;background:#d5b4740f}
.mist{position:absolute;pointer-events:none;border-radius:50%;width:115%;height:40%;left:-8%;background:radial-gradient(ellipse at 22% 65%,#cbd6bc1f,transparent 44%),radial-gradient(ellipse at 76% 50%,#e5d4ab24,transparent 48%);filter:blur(32px);mix-blend-mode:screen;animation:mist-drift 23s ease-in-out infinite alternate;animation-play-state:var(--motion-play)}
.mist-near{bottom:4%;animation-duration:27s}.mist-far{top:16%;left:13%;opacity:.45;animation-duration:33s;animation-direction:alternate-reverse}
.mountain-motes{position:absolute;inset:0;width:100%;height:100%;opacity:.65;pointer-events:none}
@keyframes mist-drift{from{transform:translate3d(-5%,0,0) scale(1)}to{transform:translate3d(7%,3%,0) scale(1.1)}}
.mountain-page .motion-toggle{position:fixed;right:20px;bottom:20px;z-index:41;background:#0a180fe8;color:#e1c99d;border-color:#cab0804d;font-size:10px;box-shadow:0 7px 35px #0004}
.mountain-page .motion-toggle:hover{background:#1c2e20}
.mountain-page .section{background:#0a1711;border-top-color:#bda77620;isolation:isolate;overflow:clip}
.mountain-page .section.light{background:linear-gradient(135deg,#15271d,#0e1c14);color:var(--ink)}
.mountain-page .section>.wrap{position:relative;z-index:2}
.mountain-page .section:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#d0ae7244,transparent);transform:scaleX(.3);transform-origin:center;transition:transform 1.8s cubic-bezier(.16,1,.3,1);pointer-events:none}
.mountain-page .section.is-inview:before{transform:scaleX(1)}
.mountain-page .section h2{letter-spacing:-.045em;line-height:1.16}
.mountain-page .light .prose,.mountain-page .light .section-heading>p:last-child,.mountain-page .symptoms p,.mountain-page .solution-sequence p,.mountain-page .deliverables p,.mountain-page .commercial-columns p,.mountain-page .ecosystem-points p,.mountain-page .process-list p,.mountain-page .fit-grid li,.mountain-page .faq-items details>div,.mountain-page .faq-layout>div:first-child>p:last-child{color:#b9c1b5}
.mountain-page .light .eyebrow,.mountain-page .light .mini-label,.mountain-page .solution-sequence li>span,.mountain-page .process-output,.mountain-page .deliverables small,.mountain-page .ecosystem-points span{color:#d6b787}
.section-topography{position:absolute;inset:0;z-index:0;opacity:.045;background-image:repeating-radial-gradient(ellipse at 100% 20%,transparent 0 47px,#e9c78a 48px,transparent 49px 69px);pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000);animation:topography-drift 24s ease-in-out infinite alternate;animation-play-state:var(--motion-play)}
@keyframes topography-drift{to{transform:translate3d(-25px,18px,0)}}
.mountain-page .symptoms{border:0;gap:18px;margin-top:50px}
.mountain-page .symptoms article,.mountain-page .solution-sequence li,.mountain-page .fit-grid article{border:1px solid #d1b6832b;border-radius:18px;padding:28px;background:linear-gradient(135deg,#e8ddbc08,#0a190c38);position:relative;overflow:hidden}
.mountain-page .symptoms h3{margin-top:18px}.mountain-page .symptoms article>span{color:#dcb783}
.mountain-page .solution-sequence{gap:18px}.mountain-page .solution-sequence li{padding:26px 22px;border-top:1px solid #dcc59655}
.mountain-page .comparison-diagram,.mountain-page .engagement-card,.mountain-page .ecosystem-map{background:linear-gradient(140deg,#1c3223e6,#0a1710);border-color:#d9ba843b;box-shadow:inset 0 1px 0 #fff5d714,0 30px 90px #0002;backdrop-filter:blur(12px)}
.mountain-page .comparison-diagram .circle{border-color:#cba6717d;background:#b28c4620;color:#f1d4a4;box-shadow:0 0 35px #d9ae5014}
.mountain-page .example-before{background:#0b1911}.mountain-page .example-after{background:linear-gradient(135deg,#243d2a,#122319)}
.mountain-page .example-panel{border-color:#d9ba843b}.mountain-page .example-tag,.mountain-page .example-result,.mountain-page .scope-note,.mountain-page .deliverable-aside>p{color:#aab5a3}
.mountain-page .deliverables article{padding-inline:18px;border-radius:12px;transition:background .45s,border-color .45s;position:relative}
.mountain-page .deliverables article:hover{background:#d1bb8210;border-color:#d9bc8259}
.mountain-page .deliverable-aside{border:1px solid #d9ba843b;background:linear-gradient(150deg,#263c2a88,#102117);border-radius:20px;padding:28px 25px;box-shadow:0 24px 60px #0002}
.mountain-page .deliverable-aside>.mini-label{color:#d8bd91}.mountain-page .document-stack{margin-inline:0;transform:perspective(900px) rotateY(-9deg);transition:transform 1s cubic-bezier(.16,1,.3,1)}
.mountain-page .deliverable-aside:hover .document-stack{transform:perspective(900px) rotateY(0) translateY(-5px)}
.mountain-page .doc-front{background:linear-gradient(145deg,#123423,#07170e);border:1px solid #bfa87742}.mountain-page .doc-mid{background:#d2c5a7}.mountain-page .doc-back{background:#aa9c7c}
.quill-studio{position:relative;overflow:hidden;width:100%;aspect-ratio:1;min-height:0;margin:28px 0;border-radius:14px;border:1px solid #cdb78a40;background:#211c14;box-shadow:0 16px 40px #0003;pointer-events:none}
.quill-studio .cinema-canvas{width:100%;height:100%;margin:0;transform:none;min-height:0}
.mountain-page .ecosystem-map{position:relative;overflow:hidden}
.mountain-page .ecosystem-map:before{content:"";position:absolute;inset:12px;pointer-events:none;border-radius:inherit;border:1px solid #d1b0771c}
.mountain-page .ecosystem-core{position:relative}.mountain-page .ecosystem-core:after{content:"";position:absolute;bottom:-1px;left:10%;width:20%;height:2px;background:linear-gradient(90deg,transparent,#e7c587,transparent);box-shadow:0 0 12px #e7c58766;animation:signal-travel 5s ease-in-out infinite;animation-play-state:var(--motion-play)}
@keyframes signal-travel{0%{transform:translateX(0);opacity:0}20%{opacity:1}80%{opacity:1}100%{transform:translateX(300%);opacity:0}}
.mountain-page .process{background:linear-gradient(90deg,#102019f5,#0b1a12eb),url('assets/fragon-mountain-landscape.webp') 75% center/cover}
.mountain-page .process-list{position:relative;isolation:isolate}
.mountain-page .process-list:before,.mountain-page .process-list:after{content:"";position:absolute;left:19px;top:48px;bottom:70px;width:1px;background:#baa47535;z-index:-1;pointer-events:none}
.mountain-page .process-list:after{background:linear-gradient(#e6c78e,#986e35);transform:scaleY(var(--journey-progress,0));transform-origin:top;box-shadow:0 0 12px #e6c78e55}
.mountain-page .process-list li{border-color:#c3a77921;padding-left:0}
.mountain-page .step{border:1px solid #d1b0774d;background:#152a1b;color:#cfb88d;transition:color .6s,background .6s,box-shadow .6s}
.mountain-page .process-list li.is-current .step{background:#dcc090;color:#132418;box-shadow:0 0 0 5px #dbbd8215,0 0 26px #dbbd8238}
.mountain-page .author-image{box-shadow:0 35px 100px #0005;border-color:#bea3725e;position:relative}
.mountain-page .author-image img{transition:transform 1.8s cubic-bezier(.16,1,.3,1)}.mountain-page .author-image:hover img{transform:scale(1.04)}
.mountain-page .author-image:after{background:linear-gradient(0deg,#0d1d10e8,transparent 70%)}
.mountain-page .fit-grid article{padding:30px}.mountain-page .fit-grid .mini-label{color:#d4ba8b}.mountain-page .fit-grid li{border-color:#c3a77926}
.mountain-page .faq-items details{border-color:#c3a77936}.mountain-page .faq-items details[open]{background:#cbbe9110;border-radius:10px;padding-inline:16px}.mountain-page .faq-items summary:after{color:#d4bc88}
.mountain-page .final{background:linear-gradient(#0b1a12dc,#09150eee),url('assets/fragon-mountain-landscape.webp') center 30%/cover;position:relative;overflow:hidden}
.mountain-page .final:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at 50% 55%,#e9c17910,transparent 62%);animation:final-breathe 8s ease-in-out infinite alternate;animation-play-state:var(--motion-play)}
@keyframes final-breathe{to{opacity:.3;transform:scale(1.2)}}
.mountain-page footer{background:#07110c;border-color:#bea37228}
.motion-ready .motion-reveal{opacity:0;transform:translate3d(0,34px,0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1);transition-delay:var(--entry-delay,0ms)}
.motion-ready .motion-reveal.is-visible{opacity:1;transform:none}
.motion-ready .motion-card{--tilt-x:0deg;--tilt-y:0deg;transform:perspective(1000px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .4s ease,box-shadow .4s,border-color .4s}
.motion-ready .motion-card:hover{box-shadow:0 28px 65px #0003;border-color:#dbc5976b}
.motion-card:after{content:"";position:absolute;pointer-events:none;inset:0;background:radial-gradient(circle at var(--shine-x,50%) var(--shine-y,0%),#f0d6a710,transparent 55%);opacity:0;transition:opacity .5s;border-radius:inherit}
.motion-card:hover:after{opacity:1}
.mountain-page.motion-paused{--motion-play:paused}.mountain-page.motion-paused .section{--motion-play:paused!important}.motion-paused .hero-copy>*{animation-play-state:paused}.motion-paused .motion-reveal{transition:none;opacity:1;transform:none}.motion-paused .motion-card{transform:none!important}
@media(max-width:1100px){.mountain-page .hero-grid{grid-template-columns:1.1fr .9fr;gap:20px}.mountain-page .hero-copy h1{font-size:45px}.mountain-page .symptoms article{padding:24px 20px}.mountain-page .deliverable-aside{padding-inline:16px}.mountain-page .document-stack{margin-left:-12px}}
@media(max-width:820px){.mountain-page .hero-grid{grid-template-columns:1fr;min-height:0}.mountain-page .hero-copy{padding:34px 0 10px}.mountain-page .hero-copy h1{font-size:clamp(40px,6vw,52px);max-width:640px}.mountain-page .hero-art-space{min-height:0;height:370px}.mountain-page .mountain-panorama{object-position:73% 50%}.mountain-scene{top:auto;height:620px;bottom:95px}.mountain-atmosphere{background:linear-gradient(0deg,#091510 0%,transparent 20%,#08120d11 40%,#08120dc7 69%,#08120d 94%)}.mountain-page .hero-foot{grid-template-columns:1fr 1fr;gap:0;width:calc(100% - 56px)}.mountain-page .hero-foot a{padding:19px 10px;font-size:8px}.mountain-page .hero-foot a:nth-child(3){border-left:0;border-top:1px solid #cdb78a1f}.mountain-page .hero-foot a:nth-child(4){border-top:1px solid #cdb78a1f}.mountain-page .solution-sequence{gap:18px}.mountain-page .motion-toggle{bottom:auto;top:90px;right:22px;font-size:9px;padding:8px 10px}.mountain-page .hero-copy .eyebrow{padding-right:110px}.mountain-page .process-list:before,.mountain-page .process-list:after{left:19px}.mountain-page .symptoms article{padding:23px 20px}.mountain-page .process{background:#102019}.mountain-page .mist{filter:blur(18px)}}
@media(max-width:540px){.mountain-page .hero{padding-top:16px}.mountain-page .hero-copy{padding-top:31px}.mountain-page .hero-copy h1{font-size:38px;line-height:1.1}.mountain-page .hero-copy .lead{font-size:16px}.mountain-page .hero-detail{font-size:13px}.mountain-page .hero-art-space{height:290px}.mountain-page .mountain-scene{height:445px;bottom:96px}.mountain-page .mountain-panorama{object-position:76% 50%;transform:scale(1.04)}.mountain-page .hero-foot{width:calc(100% - 40px);margin-bottom:15px}.mountain-page .hero-foot a{font-size:7px;letter-spacing:.09em;padding:18px 7px}.mountain-page .hero-copy .eyebrow{font-size:8px;padding-right:95px;letter-spacing:.09em}.mountain-page .motion-toggle{top:87px;right:20px;font-size:8px;padding:7px 9px}.mountain-page .section{padding-block:65px}.mountain-page .solution-sequence{grid-template-columns:1fr;gap:14px}.mountain-page .solution-sequence li{padding:24px}.mountain-page .process-list:before,.mountain-page .process-list:after{left:15px;top:44px;bottom:105px}.mountain-page .step{width:32px;height:32px}.mountain-page .fit-grid article{padding:24px}.mountain-page .symptoms{margin-top:30px;gap:14px}.mountain-page .deliverables article{padding-inline:0}.mountain-page .final{background:linear-gradient(#0b1a12e6,#09150eee),url('assets/fragon-mountain-landscape.png') 65% center/cover}.mountain-page .section-topography{animation:none}.mountain-page .reading-progress{height:2px}.motion-ready .motion-card{transform:none!important}}
@media(prefers-reduced-motion:reduce){.mountain-page{--motion-play:paused}.mountain-page .mountain-panorama{transform:scale(1.04);will-change:auto}.mountain-page .motion-reveal,.mountain-page .reveal{opacity:1!important;transform:none!important;transition:none!important}.mountain-page .motion-card{transform:none!important}.mountain-page .hero-copy>*{animation:none}.mountain-page .section:before{transform:scaleX(1);transition:none}.mountain-page .button:before,.mountain-page .button span{transition:none}.mountain-page .button:hover,.mountain-page .button:hover span{transform:none}.mountain-page .mountain-motes{display:none}.mountain-page .motion-toggle{display:none}.mountain-page .author-image img,.mountain-page .document-stack{transition:none}.mountain-page .author-image:hover img,.mountain-page .deliverable-aside:hover .document-stack{transform:none}}
