/* Homepage fracture edition — isolated from every other route. */
.page-home .solar-stage{--solar-height:clamp(640px,calc(100svh - 96px),1000px);--intro-opacity:1;--intro-y:0px;--message-opacity:0;--message-y:32px;overflow:visible;background:#29292b;isolation:isolate;color:#f5f4f0}
.page-home .solar-pin{position:relative;overflow:clip;background:radial-gradient(ellipse at 50% 80%,#58402736,transparent 56%),#29292b}
.page-home .solar-stage .hero{position:relative;display:flex;flex-direction:column;align-items:center;min-height:0;height:auto;padding:64px 0 32px;gap:0;background:transparent!important;isolation:isolate;text-align:center}
.page-home .solar-stage .hero-copy{position:relative;z-index:3;width:100%;padding:0;max-width:1060px;text-align:center}
.page-home .solar-stage h1{font-size:clamp(58px,6.7vw,98px);line-height:1.35;letter-spacing:-2px;font-weight:600}
.page-home .solar-stage .headline-line{display:block;overflow:visible}
.page-home .solar-stage .hero-emphasis{color:#eb9c34}
.page-home .solar-stage .hero-emphasis:after{display:none}
.page-home .solar-message{position:relative;z-index:3;max-width:790px;text-align:center;margin-top:370px}
.page-home .solar-message h2{font-size:clamp(32px,3.1vw,47px);line-height:1.55;font-weight:600;letter-spacing:-.8px;margin:0}
.page-home .solar-message .eyebrow{justify-content:center;color:#c3b8a8;font-size:12px;margin-bottom:12px}
.page-home .solar-stage .hero-description{font-size:16px;line-height:1.95;max-width:560px;margin:18px auto 0;color:#c7c7c7}
.page-home .solar-stage .hero-actions{justify-content:center;margin-top:24px;gap:26px}
.page-home .solar-stage .hero-visual.solar-visual{position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;perspective:none;transform:none!important;pointer-events:none;z-index:1;overflow:clip}
.page-home .solar-canvas,.page-home .solar-aura{position:absolute;inset:0}
.page-home .solar-canvas canvas{display:block;width:100%;height:100%;pointer-events:none;outline:none}
.page-home .solar-aura{background:radial-gradient(ellipse at 50% 47%,#eb9c342b,transparent 54%);opacity:.7}
.page-home .solar-fallback{position:absolute;width:min(76vw,470px);height:360px;top:250px;left:50%;transform:translateX(-50%);display:grid;place-items:center}
.page-home .solar-fallback>img{width:100%;height:100%;object-fit:contain;grid-area:1/1}
.page-home .solar-fallback>.solar-mark{width:48%;height:auto;grid-area:1/1;filter:sepia(1) saturate(5) drop-shadow(0 8px 16px #0005)}
.page-home .solar-ready .solar-fallback{visibility:hidden}
.page-home .solar-visual .growth-art-caption{display:none}
.page-home .solar-stage .hero-bottom{position:relative;inset:auto;z-index:4;pointer-events:auto;width:100%;margin-top:40px;border:0;padding:0;min-height:44px}
.page-home .solar-stage .hero-bottom p{font-size:11px;color:#aba8a0}
.page-home .solar-stage .brand-motion-toggle{position:absolute;left:0;bottom:28px;z-index:5;min-height:44px;padding:8px 15px;font-size:11px;border-radius:99px;background:#29292b9c;border:1px solid #ffffff29;backdrop-filter:blur(12px);color:#ddd;margin:0}
.page-home .solar-stage .hero-wordmark{position:absolute;bottom:0;opacity:.022;transform:none!important;pointer-events:none;z-index:0}
.page-home .solar-stage:after,.page-home .solar-stage .hero-glow{display:none}
/* The storyboard is scroll-bound; ordinary document scrolling is never intercepted. */
.page-home .solar-stage.solar-enabled{height:calc(var(--solar-height) + min(140svh,1250px))}
.page-home .solar-enabled .solar-pin{height:var(--solar-height);position:sticky;top:96px}
.page-home .solar-enabled .hero{height:100%;padding:0}
.page-home .solar-enabled .hero-copy{position:absolute;top:16%;opacity:var(--intro-opacity);transform:translateY(var(--intro-y));pointer-events:none;will-change:transform,opacity}
.page-home .solar-enabled .solar-message{position:absolute;top:49%;margin:0;opacity:var(--message-opacity);transform:translateY(var(--message-y));will-change:transform,opacity}
.page-home .solar-enabled .solar-message:focus-within{opacity:1;transform:none}
.page-home .solar-enabled .hero-bottom{position:absolute;inset:auto 0 22px;margin:0}
.page-home .solar-enabled .hero-bottom p{opacity:var(--message-opacity);padding-left:150px}
.page-home .solar-enabled .brand-motion-toggle{bottom:22px}
.page-home .solar-enabled .solar-fallback{top:auto;bottom:-210px;width:530px;height:530px}
.page-home .solar-enabled .solar-fallback>.solar-mark{opacity:0}
.page-home #clients{position:relative;border-radius:36px 36px 0 0;background:#f5f5f4;z-index:3}
.page-home .logo-item{background:#fff;border:1px solid #e6e6e3;border-radius:12px}
.page-home .logo-item img{opacity:.9}
.page-home .work-section{border-radius:40px 40px 0 0;overflow:clip}
.page-home .mosaic-card{border-radius:20px;overflow:hidden}
.page-home .mosaic-copy{background:linear-gradient(125deg,#171717f2,#171717ce);border:1px solid #ffffff17;border-radius:12px;backdrop-filter:blur(6px)}
.page-home .services-overview{background:linear-gradient(180deg,#fff,#faf9f6)}
.page-home .service-category{background:#fff;border:1px solid #e4e3df;border-radius:20px;padding:30px 28px;box-shadow:0 12px 32px #25201803}
.page-home .service-category h3{line-height:1.8}
.page-home .service-category p{color:#666}
.page-home .service-category:hover,.page-home .service-category:focus-within{border-color:#c38b40;box-shadow:0 12px 28px #30221309}
.page-home .solution-pair>a{border-radius:24px;overflow:hidden}
.page-home .client-voices .testimonial{border-radius:24px;box-shadow:8px 8px 0 #eb9c34}
.page-home .collaboration-map{border-radius:28px}
.page-home .faq details{transition:border-color .2s,background .2s;border-radius:10px}
.page-home .faq details[open]{background:#f8f7f4;border-color:#d9c4a5}
.page-home .article-card{border-radius:20px;overflow:hidden}
.page-home .contact-section{border-radius:40px 40px 0 0;position:relative;overflow:clip}
.page-home .solar-contact{max-width:380px;width:100%;padding:25px}
.page-home .solar-signature{position:relative;width:100%;aspect-ratio:1;display:grid;place-items:center;isolation:isolate}
.page-home .solar-signature:before{content:'';position:absolute;inset:-10%;border-radius:50%;background:radial-gradient(circle,#eb9c342b,transparent 67%);z-index:-1}
.page-home .signature-orbit{position:absolute;inset:12%;border-radius:50%;background:conic-gradient(from 20deg,#5e3b1b,#f5ca85,#eb9c34,#8b4f1e,#ffe0a8,#eb9c34,#5e3b1b);box-shadow:inset 2px 2px 9px #fff4,-8px 20px 35px #0003;transform:rotateX(42deg) rotate(-25deg);border:1px solid #f5bf714d}
.page-home .signature-orbit:after{content:'';position:absolute;inset:9%;border-radius:50%;background:#29292b;box-shadow:inset 0 4px 18px #0008}
.page-home .signature-glass{width:87%;padding:15% 12%;border-radius:24px;border:1px solid #ffffff38;background:linear-gradient(145deg,#ffffff16,#ffffff03);backdrop-filter:blur(12px);box-shadow:0 18px 50px #0002;transform:rotate(-9deg);z-index:2}
.page-home .contact-art .signature-mark{display:block;width:100%;height:auto;overflow:hidden}
.page-home .solar-contact>span{margin:8px -10px 0;font-size:12px}
/* Readability and keyboard access always outrank decorative motion. */
.js-motion .page-home .reveal{opacity:1;visibility:visible;transform:none;filter:none}
.page-home :is(#clients,#results,#work,#services,#partnership,#process,#contact,.service-category){scroll-margin-top:112px}
.page-home .mosaic-card:focus-visible{outline:3px solid #eb9c34;outline-offset:5px}
.page-home .challenge-lens{border-radius:28px;border-color:#e2dfd8;background:linear-gradient(140deg,#faf9f6,#f1f0ed);box-shadow:0 20px 55px #29292b04}
.page-home .challenge-options button{border-radius:12px;transition:background .25s,color .25s,box-shadow .25s,translate .3s}
.page-home .challenge-options button:hover{translate:0 -2px;box-shadow:0 7px 18px #29292b0a}
.page-home .service-category,.page-home .story-card,.page-home .article-card,.page-home .mosaic-card,.page-home .solution-pair>a{isolation:isolate;position:relative;--card-axis-x:1;--card-axis-y:0;--card-angle:0deg;rotate:var(--card-axis-x) var(--card-axis-y) 0 var(--card-angle);transition:border-color .35s,box-shadow .35s,rotate .5s cubic-bezier(.2,.7,.2,1),translate .4s}
.page-home .service-category:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;opacity:0;background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,30%),#eb9c3425,transparent 68%);transition:opacity .4s;pointer-events:none}
.page-home .service-category:hover:before,.page-home .service-category:focus-within:before{opacity:1}
.page-home .service-category h3 a span,.page-home .mosaic-arrow,.page-home .story-open{transition:transform .45s cubic-bezier(.2,.7,.2,1),background .3s}
.page-home .service-category:hover h3 a span{transform:translate(-3px,-3px) rotate(-7deg)}
.page-home .mosaic-card:hover .mosaic-arrow{transform:rotate(-35deg) scale(1.08);background:#eb9c34;color:#29292b}
.page-home .mosaic-copy{transition:background .3s,translate .4s}
.page-home .mosaic-card:hover .mosaic-copy{translate:0 -3px;background:#232323e8}
.page-home .story-card{border-radius:26px;overflow:hidden;box-shadow:0 15px 45px #25201805}
.page-home .story-visual img,.page-home .article-card>img{transition:scale .85s cubic-bezier(.2,.7,.2,1)}
.page-home .story-card:hover .story-visual img,.page-home .article-card:hover>img{scale:1.025}
.page-home .service-category:hover,.page-home .service-category:focus-within{translate:0 -4px}
.page-home .logo-item{transition:translate .4s,border-color .4s}
.page-home .logo-item:hover{translate:0 -3px;border-color:#d2b88f}
.page-home .faq summary{transition:color .25s}
.page-home .faq summary:hover{color:#ad7226}
.page-home .collaboration-steps>li{transition:border-color .35s,background .35s}
.page-home .collaboration-steps>li:hover{border-color:#d6b681;background:#eb9c3405}
@media(max-width:1100px) and (min-width:701px){.page-home .solar-message h2{font-size:35px}.page-home .service-category{padding:24px}}
@media(max-width:700px){
 .page-home .solar-stage{--solar-height:max(570px,calc(100svh - 77px))}
 .page-home .solar-stage.solar-enabled{height:calc(var(--solar-height) + 100svh)}
 .page-home .solar-enabled .solar-pin{top:77px}
 .page-home .solar-stage .hero{padding:40px 0 24px}
 .page-home .solar-enabled .hero{padding:0}
 .page-home .solar-stage h1{font-size:clamp(44px,11vw,68px);line-height:1.44;letter-spacing:-1px}
 .page-home .solar-enabled .hero-copy{top:18%}
 .page-home .solar-message{margin-top:300px;width:100%}
 .page-home .solar-enabled .solar-message{top:46%;margin-top:0}
 .page-home .solar-message h2{font-size:clamp(25px,6.5vw,35px);line-height:1.5;letter-spacing:0}
 .page-home .solar-message .eyebrow{font-size:10px;margin-bottom:8px}
 .page-home .solar-stage .hero-description{font-size:13px;line-height:1.9;margin-top:13px}
 .page-home .solar-stage .hero-actions{gap:16px;margin-top:16px;flex-wrap:wrap}
 .page-home .solar-stage .hero-actions .button{font-size:12px;padding:10px 14px;min-height:44px}
 .page-home .solar-stage .hero-actions .text-link{font-size:12px;min-height:44px}
 .page-home .solar-stage .hero-bottom{display:flex;flex-direction:row;justify-content:flex-start;min-height:44px;margin-top:30px}
 .page-home .solar-enabled .hero-bottom{bottom:10px;margin:0}
 .page-home .solar-stage .hero-bottom p{display:none}
 .page-home .solar-stage .brand-motion-toggle{bottom:22px;padding:6px 10px;font-size:10px;max-width:130px}
 .page-home .solar-enabled .brand-motion-toggle{bottom:10px}
 .page-home .solar-fallback{top:180px;height:300px}
 .page-home .service-category{padding:24px;border-radius:20px}
 .page-home .work-section,.page-home #clients,.page-home .contact-section{border-radius:28px 28px 0 0}
 .page-home .solar-contact{max-width:290px;padding:10px;margin-top:20px}
 .page-home .challenge-lens{border-radius:22px}
 .page-home :is(.service-category,.story-card,.article-card,.mosaic-card,.solution-pair>a){rotate:none!important}
}
@media(max-width:600px){
 .page-home .mosaic-grid,.page-home .mosaic-grid.compact{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;gap:18px}
 .page-home .mosaic-grid .mosaic-card:nth-child(n){grid-column:1;grid-row:auto;aspect-ratio:1.1;min-height:0;border-radius:20px}
 .page-home .mosaic-grid .mosaic-card.tile-tall{aspect-ratio:.9}
 .page-home .mosaic-copy strong{font-size:18px}.page-home .mosaic-copy>span{font-size:12px}
 .page-home .mosaic-copy{padding:12px 14px;max-width:calc(100% - 16px)}
 .page-home .mosaic-overlay{padding:18px}.page-home .client-voices .testimonial{box-shadow:5px 5px 0 #eb9c34}
}
@media(max-height:680px) and (min-width:701px){.page-home .solar-stage{--solar-height:570px}.page-home .solar-message h2{font-size:29px}.page-home .solar-enabled .solar-message{top:44%}.page-home .solar-stage .hero-description{font-size:13px}.page-home .solar-stage h1{font-size:64px}}
.motion-paused .page-home :is(.service-category,.story-card,.article-card,.mosaic-card),.page-home.motion-paused :is(.service-category,.story-card,.article-card,.mosaic-card){rotate:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.page-home .solar-stage,.page-home .solar-stage.solar-enabled{height:auto}.page-home .solar-enabled .solar-pin{position:relative;height:auto;top:auto}.page-home .solar-enabled .hero-copy,.page-home .solar-enabled .solar-message{position:relative;top:auto;opacity:1;transform:none}.page-home .solar-enabled .solar-message{margin-top:310px}.page-home .solar-fallback{visibility:visible!important}.page-home .solar-canvas{visibility:hidden}.page-home .logo-track{animation:none!important}.page-home *{scroll-behavior:auto!important;transition:none!important;rotate:none!important}}
.page-home .solar-frozen .hero-copy{top:5%;opacity:1;transform:none}.page-home .solar-frozen h1{font-size:32px;line-height:1.3}.page-home .solar-frozen .headline-line{display:inline-block;margin-inline:5px}.page-home .solar-message:focus-within{pointer-events:auto!important}
/* The no-WebGL composition has its own normal-flow layout, avoiding overlaps. */
.page-home .solar-static-holder{position:relative;display:grid;place-items:center;width:min(78vw,370px);aspect-ratio:1;margin:44px auto 28px;pointer-events:none;z-index:2}
.page-home .solar-static-holder>img{grid-area:1/1;width:100%;height:auto}
.page-home .solar-static-holder>.solar-mark{grid-area:1/1;width:53%;height:auto;filter:drop-shadow(0 3px 8px #662400)}
.page-home .solar-stage:not(.solar-enabled) .solar-visual{visibility:hidden}
.page-home .solar-stage:not(.solar-enabled) .solar-message{margin-top:0}
.page-home .solar-enabled .solar-static-holder{display:none}
@media(max-width:700px){.page-home .solar-static-holder{width:min(76vw,290px);margin:32px auto 20px}}
@media(prefers-reduced-motion:reduce){.page-home .solar-enabled .solar-static-holder{display:grid}.page-home .solar-visual{visibility:hidden!important}.page-home .solar-enabled .solar-message{margin-top:0}}
