    :root{--navy:#082b5c;--deep:#03152f;--teal:#12aabd;--teal-dark:#087684;--green:#72d34f;--gold:#ffb51b;--cloud:#f7f8fa;--white:#fff;--ink:#041a38;--slate:#344054;--line:#dce3eb;--display:Montserrat,"Arial Black",sans-serif;--body:"Open Sans","Segoe UI",sans-serif;--ease:cubic-bezier(.2,0,0,1)}
    *{box-sizing:border-box}html{width:100%;max-width:100%;scroll-behavior:smooth;overflow-anchor:none}body.is-nav-scrolling .hero-character{pointer-events:none}body{width:100%;max-width:100%;margin:0;background:var(--cloud);color:var(--ink);font-family:var(--body);line-height:1.6;overflow-x:hidden}a{color:inherit}button,input,textarea{font:inherit}img{display:block;max-width:100%}.skip{position:fixed;top:-5rem;left:1rem;z-index:100;background:var(--gold);color:var(--deep);font-weight:800;padding:.7rem 1rem}.skip:focus{top:1rem}.container{width:min(1280px,calc(100% - 2rem));margin:auto}.section{padding:clamp(5rem,10vw,8.5rem) 0}.label{font:800 .72rem/1 var(--body);letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:.7rem}.label:before{content:"✦";color:var(--gold);font-size:1rem}h1,h2,h3{font-family:var(--display);letter-spacing:-.055em}h2{font-size:clamp(3rem,7vw,6.8rem);line-height:.9;margin:1.3rem 0 1.7rem;max-width:1050px}.lead{font-size:clamp(1.05rem,1.7vw,1.3rem);max-width:700px;color:var(--slate)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:52px;padding:0 1.4rem;border:2px solid var(--ink);background:transparent;text-decoration:none;font-weight:800;border-radius:999px;cursor:pointer;transition:.18s var(--ease)}.btn:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 var(--gold)}.btn:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--teal);outline-offset:3px}.btn-dark{background:var(--ink);color:#fff}.btn-gold{background:var(--gold);color:var(--deep);border-color:var(--gold)}
    header{position:absolute;z-index:30;top:0;left:0;right:0}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;position:relative}.brand{--light-x:58%;--light-y:24%;position:absolute;z-index:5;left:0;top:10px;width:256px;height:302px;text-decoration:none;isolation:isolate;transform:translateZ(0)}.brand-logo,.brand-echo,.brand-light,.brand-glint,.brand-orbit{position:absolute;inset:0;pointer-events:none}.brand-logo,.brand-echo{width:100%;height:100%;object-fit:contain}.brand-logo{z-index:4;filter:drop-shadow(0 16px 26px rgba(0,0,0,.3));transition:transform .55s var(--ease),filter .55s var(--ease)}.brand-echo{z-index:2;opacity:0;transition:opacity .45s var(--ease),transform .65s var(--ease)}.brand-echo.teal{filter:sepia(1) saturate(6) hue-rotate(132deg) brightness(.95)}.brand-echo.gold{filter:sepia(1) saturate(7) hue-rotate(350deg) brightness(1.16)}.brand-orbit{z-index:1;inset:4% 1% 6%;border:1px solid rgba(18,170,189,0);border-radius:50%;opacity:0;transform:rotate(-22deg) scale(.8);transition:opacity .45s var(--ease),border-color .45s var(--ease),transform .9s var(--ease)}.brand-orbit:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;right:18%;top:4%;background:var(--gold);box-shadow:0 0 18px rgba(255,181,27,.95)}.brand-light{z-index:5;opacity:0;mix-blend-mode:screen;background:radial-gradient(circle 54px at var(--light-x) var(--light-y),rgba(255,255,255,.94),rgba(255,181,27,.28) 34%,transparent 72%);mask:url("assets/brand/higher-pathway-logo-reversed.webp") center/contain no-repeat;-webkit-mask:url("assets/brand/higher-pathway-logo-reversed.webp") center/contain no-repeat;transition:opacity .25s var(--ease)}.brand-glint{z-index:6;opacity:0;background:linear-gradient(112deg,transparent 38%,rgba(255,255,255,.9) 48%,rgba(255,181,27,.72) 51%,transparent 61%);background-size:260% 100%;background-position:110% 0;mix-blend-mode:screen;mask:url("assets/brand/higher-pathway-logo-reversed.webp") center/contain no-repeat;-webkit-mask:url("assets/brand/higher-pathway-logo-reversed.webp") center/contain no-repeat}.brand:hover .brand-logo,.brand:focus-visible .brand-logo{transform:translateY(-3px) scale(1.018);filter:drop-shadow(0 22px 34px rgba(0,0,0,.36)) drop-shadow(0 0 14px rgba(18,170,189,.16))}.brand:hover .brand-echo,.brand:focus-visible .brand-echo{opacity:.13}.brand:hover .brand-echo.teal,.brand:focus-visible .brand-echo.teal{transform:translate(-8px,7px)}.brand:hover .brand-echo.gold,.brand:focus-visible .brand-echo.gold{transform:translate(8px,-6px)}.brand:hover .brand-orbit,.brand:focus-visible .brand-orbit{opacity:.65;border-color:rgba(18,170,189,.38);transform:rotate(158deg) scale(1.01)}.brand:hover .brand-light,.brand:focus-visible .brand-light{opacity:.92}.brand:hover .brand-glint,.brand:focus-visible .brand-glint{opacity:.72;animation:brandGlint 1.1s var(--ease) both}.brand:focus-visible{outline:2px solid var(--teal);outline-offset:5px;border-radius:1rem}@keyframes brandGlint{0%{background-position:120% 0}100%{background-position:-120% 0}}.navlinks{display:flex;align-items:center;gap:1.6rem;color:#fff;margin-left:auto}.navlinks>a:not(.btn){font-size:.84rem;text-decoration:none;font-weight:700}.navlinks>a:hover{color:var(--gold)}.menu{display:none;width:46px;height:46px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;border-radius:50%;font-size:1.2rem}.footer-brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font:800 .9rem var(--display);letter-spacing:.08em;color:#fff}.footer-brand img{width:48px;height:48px;border-radius:50%;object-fit:cover;object-position:center 21%}.footer-brand small{display:block;color:var(--teal);font-size:.61rem;letter-spacing:.23em}
    .navlinks>.btn-gold:hover,.navlinks>.btn-gold:focus-visible{color:var(--deep)}
    .hero{min-height:100svh;background:var(--deep);color:#fff;position:relative;display:grid;align-items:end;overflow:hidden;padding:8rem 0 3rem;isolation:isolate}.hero-inner{position:relative}.hero h1{font-size:clamp(4.6rem,12.2vw,12.5rem);line-height:.75;margin:0 0 2.4rem;max-width:1150px}.hero h1 span{display:block;color:var(--gold);margin-left:13vw}.hero .btn{border-color:rgba(255,255,255,.7)}.hero .btn-gold{border-color:var(--gold)}.ticker{background:var(--gold);color:var(--deep);overflow:hidden;padding:.9rem 0;border-block:2px solid var(--deep);font:900 .8rem var(--display);letter-spacing:.13em;text-transform:uppercase;transform:rotate(-1deg);width:102%;margin-left:-1%}.ticker-line{display:flex;width:max-content;animation:tick 25s linear infinite}.ticker span{padding-right:2.5rem}.ticker b{color:var(--teal-dark)}@keyframes tick{to{transform:translateX(-50%)}}
    .hero h1{position:relative;z-index:2}.hero h1 .hero-word{display:block;color:var(--gold);margin-left:13vw}.hero h1 .hero-it{position:relative;display:inline-block;color:inherit;margin-left:0;isolation:isolate}.hero-character{position:absolute;z-index:3;left:62%;bottom:.38em;width:clamp(270px,24vw,390px);aspect-ratio:1280/2293;transform:translateX(-50%);cursor:pointer;pointer-events:auto;outline:none}.character-aura,.character-portrait{position:absolute;inset:0;display:block!important;margin:0!important;pointer-events:none}.character-aura{inset:14% -12% 4%;z-index:-2;background:radial-gradient(ellipse at 53% 54%,rgba(18,170,189,.27),rgba(255,181,27,.12) 36%,transparent 70%);filter:blur(24px);opacity:.58;transition:opacity .5s var(--ease),transform .65s var(--ease)}.character-portrait{transition:transform .6s var(--ease);transform-origin:50% 88%}.character-portrait img{width:100%;height:100%;object-fit:cover;transform:scaleX(-1) translateZ(0);mix-blend-mode:lighten;filter:saturate(1.06) contrast(1.04) brightness(1.02) drop-shadow(0 18px 22px rgba(0,0,0,.22));-webkit-mask-image:radial-gradient(ellipse 82% 78% at 50% 48%,#000 58%,rgba(0,0,0,.94) 70%,transparent 100%);mask-image:radial-gradient(ellipse 82% 78% at 50% 48%,#000 58%,rgba(0,0,0,.94) 70%,transparent 100%);transition:filter .45s var(--ease)}.hero-character:hover .character-portrait,.hero-character:focus-visible .character-portrait{transform:translateY(-10px) scale(1.035)}.hero-character:hover .character-portrait img,.hero-character:focus-visible .character-portrait img{filter:saturate(1.18) contrast(1.07) brightness(1.09) drop-shadow(0 25px 30px rgba(0,0,0,.32))}.hero-character:hover .character-aura,.hero-character:focus-visible .character-aura{opacity:1;transform:scale(1.12)}.hero-character:focus-visible{outline:2px solid var(--gold);outline-offset:8px;border-radius:45%}
    .hero h1 .hero-character{display:block;color:inherit;margin:0}
    .statement{background:#fff}.statement-grid{display:grid;grid-template-columns:.6fr 1.4fr;gap:6vw;align-items:start}.statement-side{position:sticky;top:2rem}.statement-side p{color:#667085}.statement-copy{font:700 clamp(2.5rem,5vw,5.5rem)/1.03 var(--display);letter-spacing:-.055em}.statement-copy em{font-style:normal;color:var(--teal-dark)}.statement-copy mark{color:var(--ink);background:linear-gradient(transparent 60%,var(--gold) 60%)}
    .services{background:var(--cloud)}.service-list{border-top:2px solid var(--ink);margin-top:3rem}.service{display:grid;grid-template-columns:100px 1fr 1fr 55px;gap:1.5rem;align-items:center;padding:1.6rem 0;border-bottom:1px solid #cdd6e0;position:relative}.service:before{content:"";position:absolute;left:0;right:100%;bottom:-1px;height:4px;background:var(--teal);transition:.45s var(--ease)}.service:hover:before{right:0}.service-no{font:800 .75rem var(--display);color:var(--teal-dark)}.service h3{font-size:clamp(1.5rem,3vw,2.6rem);line-height:1;margin:0}.service p{color:#667085;margin:0}.service-arrow{width:46px;height:46px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-weight:900;transition:.2s}.service:hover .service-arrow{background:var(--gold);transform:rotate(45deg)}
    .work{background:var(--deep);color:#fff;overflow:hidden}.work .lead{color:#adbdcf}.work-head{display:flex;justify-content:space-between;align-items:end;gap:2rem}.round{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;cursor:pointer;transition:.2s var(--ease)}.round:hover{background:var(--gold);color:var(--deep);border-color:var(--gold)}.projects{display:flex;gap:1.25rem;margin-top:3rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 .15rem 1.3rem;scrollbar-color:var(--teal) transparent}.project{--focus:50% 50%;flex:0 0 min(72vw,490px);aspect-ratio:.69;min-height:650px;border-radius:1.5rem;position:relative;overflow:hidden;scroll-snap-align:start;display:flex;align-items:flex-end;padding:1.7rem;isolation:isolate;background:#0a1c34;box-shadow:0 20px 55px rgba(0,0,0,.24);transform:translateZ(0)}.project img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--focus);z-index:-3;filter:saturate(1.04) contrast(1.05) brightness(.96);transition:transform .9s var(--ease),filter .5s var(--ease)}.project:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(3,21,47,.06) 0%,rgba(3,21,47,.04) 42%,rgba(3,21,47,.94) 100%),linear-gradient(90deg,rgba(3,21,47,.16),transparent 50%)}.project:after{content:"";position:absolute;inset:10px;z-index:3;border:1px solid rgba(255,255,255,.23);border-radius:1rem;pointer-events:none;transition:border-color .3s}.project:hover img,.project:focus-within img{transform:scale(1.045);filter:saturate(1.12) contrast(1.06) brightness(1)}.project:hover:after{border-color:rgba(255,181,27,.65)}.project-copy{position:relative;z-index:2;max-width:92%;transform:translateY(0);transition:transform .35s var(--ease)}.project:hover .project-copy{transform:translateY(-5px)}.project-tag{position:absolute;z-index:2;top:1.4rem;left:1.4rem;background:rgba(3,21,47,.68);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.38);padding:.45rem .7rem;border-radius:999px;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 8px 24px rgba(0,0,0,.12)}.project h3{font-size:clamp(2rem,4vw,3.15rem);line-height:.98;margin:.3rem 0;text-wrap:balance;text-shadow:0 3px 18px rgba(0,0,0,.38)}.project p{margin:0;color:#e2eaf2;font-size:.9rem}.project-index{position:absolute;z-index:2;right:1.4rem;top:1.15rem;font:900 2.4rem var(--display);color:rgba(255,255,255,.68);text-shadow:0 3px 16px rgba(0,0,0,.35)}.project:nth-child(1){--focus:50% 52%}.project:nth-child(2){--focus:50% 51%}.project:nth-child(3){--focus:50% 48%}.project:nth-child(4){--focus:50% 46%}
    .faq{background:var(--navy);color:#fff}.faq .lead{color:#bac8d8}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw}.faq-list details{border-top:1px solid rgba(255,255,255,.25);padding:1.25rem 0}.faq-list details:last-child{border-bottom:1px solid rgba(255,255,255,.25)}.faq-list summary{list-style:none;cursor:pointer;font:700 1.05rem var(--display);display:flex;justify-content:space-between;gap:1rem}.faq-list summary:after{content:"↘";color:var(--gold)}.faq-list details[open] summary:after{content:"↗"}.faq-list p{color:#b9c7d7;margin:1rem 2rem 0 0}
    .contact{background:var(--cloud)}.contact-head{display:grid;grid-template-columns:1.25fr .75fr;gap:5rem;align-items:end}.contact-head h2 span{color:var(--teal-dark)}.contact-note{border-left:4px solid var(--gold);padding-left:1rem;color:var(--slate)}.form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:3rem;background:#fff;border:2px solid var(--ink);padding:clamp(1.2rem,3vw,2.3rem);box-shadow:9px 9px 0 var(--teal)}.field{display:grid;gap:.4rem}.field.full{grid-column:1/-1}.field label{font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.field input,.field textarea{border:1px solid #bcc8d5;border-radius:0;padding:.9rem;min-height:50px;color:var(--ink)}.field textarea{min-height:130px;resize:vertical}.form-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}.status{display:none;grid-column:1/-1;background:#e5f7de;color:#2f6f26;padding:.9rem;font-weight:700}.status.show{display:block}.status.error{background:#ffe7e2;color:#8c271e}.contact-form button[disabled]{cursor:wait;opacity:.72}
    footer{background:var(--deep);color:#fff;padding:4rem 0 2rem}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:3rem}.footer-grid p{color:#9fafc2;max-width:430px}.footer-title{font:900 .72rem var(--display);letter-spacing:.15em;text-transform:uppercase;color:var(--gold)}.footer-links{display:grid;gap:.55rem;margin-top:1rem}.footer-links a{text-decoration:none;color:#becbd9}.footer-bottom{border-top:1px solid rgba(255,255,255,.17);margin-top:3rem;padding-top:1.4rem;display:flex;justify-content:space-between;color:#8498ae;font-size:.72rem}.reveal{opacity:0;transform:translateY(25px);transition:.65s var(--ease)}.reveal.seen{opacity:1;transform:none}
    @media(max-width:960px){.hero h1 span{margin-left:5vw}.statement-grid,.faq-grid,.contact-head{grid-template-columns:1fr}.statement-side{position:static}.service{grid-template-columns:70px 1fr 50px}.service p{grid-column:2/3}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
    @media(max-width:720px){.brand{width:174px;height:205px;top:8px}.navlinks{position:fixed;inset:0;background:var(--deep);padding:7rem 2rem 2rem;display:flex;flex-direction:column;align-items:stretch;transform:translateX(100%);transition:.3s}.navlinks.open{transform:none}.navlinks a{padding:1rem}.menu{display:block;position:relative;z-index:7;margin-left:auto}.hero{padding-top:9rem}.hero h1{font-size:clamp(4rem,23vw,7rem);line-height:.78}.service{grid-template-columns:42px 1fr 44px;gap:.6rem}.service p{font-size:.82rem}.project{flex-basis:88vw;min-height:500px}.work-head{display:block}.form{grid-template-columns:1fr}.field.full{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}}
    @media(max-width:960px){.hero h1 .hero-word{margin-left:5vw}.hero-character{left:68%;width:clamp(230px,31vw,330px)}}
    @media(max-width:720px){.hero-character{left:74%;bottom:.48em;width:clamp(172px,44vw,230px)}}
    @media(max-width:430px){.hero-character{left:79%;bottom:.55em;width:168px}.hero h1 .hero-word{margin-left:0}}
    /* Hero character v2: transparent seated cutout, with the seat anchored to the top of “it”. */
    .hero h1 .hero-character{left:75%;top:-1.2em;bottom:auto;width:clamp(210px,16vw,270px);aspect-ratio:937/1678}.character-aura{inset:17% -8% 5%;background:radial-gradient(ellipse at 54% 54%,rgba(18,170,189,.26),rgba(255,181,27,.11) 34%,transparent 69%);filter:blur(22px)}.character-portrait img{object-fit:contain;mix-blend-mode:normal;-webkit-mask-image:none;mask-image:none;filter:saturate(1.05) contrast(1.03) brightness(1.03) drop-shadow(0 18px 18px rgba(0,0,0,.34))}.hero-character:hover .character-portrait,.hero-character:focus-visible .character-portrait{transform:translateY(-6px) scale(1.025)}
    .character-portrait img{transform:none}
    @media(min-width:1100px){.hero-inner>.label{margin-left:270px}.hero h1{padding-left:270px}.hero h1 .hero-word{margin-left:0}}
    @media(max-width:960px){.hero h1 .hero-character{left:75%;top:-1.16em;width:clamp(190px,25vw,235px)}}
    @media(max-width:720px){.hero h1 .hero-character{left:78%;top:-1.08em;bottom:auto;width:clamp(150px,38vw,190px)}}
    @media(max-width:430px){.hero h1 .hero-character{left:82%;top:-1.02em;width:145px}}
    /* Seat-lock system: the cutout's hip point stays pinned to the dot of the i. */
    .hero h1 .hero-it{white-space:nowrap}.hero h1 .hero-i,.hero h1 .hero-t,.hero h1 .hero-t-glyph{display:inline-block;color:inherit;margin:0}.hero h1 .hero-i{position:relative}.hero h1 .hero-t-glyph{position:relative;z-index:5}.hero h1 .hero-i .hero-character{--seat-x:-32%;--seat-y:-56%;z-index:7;left:50%;top:-.055em;bottom:auto;width:clamp(145px,1.12em,270px);transform:translate(var(--seat-x),var(--seat-y));aspect-ratio:937/1678}.hero h1 .hero-i .character-portrait{transform-origin:32% 56%}
    .hero h1 .hero-it{isolation:isolate}.hero h1 .hero-i{z-index:2}.hero h1 .hero-t{position:relative;z-index:-1}.hero h1 .hero-t-glyph{z-index:-1}.hero h1 .hero-i .hero-character{z-index:10}
    /* Campaign reel: compact header, expanded image stage. */
    .work.section{padding-block:clamp(3rem,5vw,5rem)}.work>.container{position:relative;width:min(1600px,calc(100% - 2rem))}.work-head{align-items:center}.work-head h2{max-width:none;margin:.75rem 0 0;font-size:clamp(2.8rem,4.8vw,5.2rem);line-height:.88}.project-stage{position:relative;margin-top:1.75rem}.projects{--card-size:min(80vw,660px);--side-pad:max(1rem,calc((100% - var(--card-size))/2));gap:1rem;margin-top:0;padding:1rem var(--side-pad) 1.5rem;scroll-padding-inline:var(--side-pad);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%)}.project-stage>.round{position:absolute;z-index:12;top:50%;width:54px;height:54px;background:rgba(3,21,47,.76);backdrop-filter:blur(14px);box-shadow:0 12px 30px rgba(0,0,0,.28);transform:translateY(-50%)}.project-stage>.round:hover{transform:translateY(-50%) scale(1.08)}.project-stage>.prev{left:.75rem}.project-stage>.next{right:.75rem}.project{--card-scale:.94;--card-lift:10px;--card-opacity:.72;--card-brightness:.78;flex-basis:var(--card-size);height:clamp(560px,70vh,900px);min-height:0;aspect-ratio:auto;scroll-snap-align:center;cursor:pointer;opacity:var(--card-opacity);filter:brightness(var(--card-brightness));transform:translateY(var(--card-lift)) scale(var(--card-scale));transition:transform .18s linear,opacity .18s linear,filter .18s linear,box-shadow .3s var(--ease)}.project[aria-current="true"]{box-shadow:0 28px 75px rgba(0,0,0,.42)}.project:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.project h3{font-size:clamp(1.9rem,3vw,2.8rem)}
    @media(max-width:720px){.work.section{padding-block:3rem}.work-head{display:block}.work-head h2{font-size:clamp(2.7rem,13vw,4.4rem)}.project-stage{margin-top:1.25rem}.projects{--card-size:88vw}.project{height:clamp(500px,72vh,620px)}.project-stage>.round{width:46px;height:46px}.project-stage>.prev{left:.25rem}.project-stage>.next{right:.25rem}}
    .projects{--side-pad:0px;padding-inline:0;scroll-padding-inline:0;overflow-anchor:none;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;touch-action:pan-x pan-y;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.projects::-webkit-scrollbar{display:none;width:0;height:0}.projects.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.projects.is-dragging .project{pointer-events:none}
    .projects .project img{-webkit-user-drag:none;user-select:none}
    .project-play{display:none;position:absolute;z-index:4;left:50%;top:50%;width:68px;height:68px;place-items:center;padding-left:4px;border:2px solid rgba(255,255,255,.9);border-radius:50%;background:rgba(3,21,47,.72);color:#fff;font-size:1.45rem;line-height:1;transform:translate(-50%,-50%);box-shadow:0 14px 38px rgba(0,0,0,.38);backdrop-filter:blur(10px);pointer-events:none}.project-video[data-video-id]:not([data-video-id=""]) .project-play{display:grid}.project-preview-video{display:none;width:min(90vw,calc(90vh * .5625));height:min(90vh,160vw);border:1px solid rgba(255,255,255,.35);border-radius:1rem;background:#000;box-shadow:0 35px 100px rgba(0,0,0,.58)}.project-preview-frame.is-video>img{display:none}.project-preview-frame.is-video>.project-preview-video{display:block}
    body.project-preview-open{overflow:hidden}.project-hover-preview{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:5vh 5vw;background:rgba(3,21,47,.72);backdrop-filter:blur(9px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s var(--ease),visibility 0s linear .25s}.project-hover-preview.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.project-preview-frame{position:relative;display:flex;max-width:90vw;max-height:90vh;transform:scale(.78);transition:transform .38s var(--ease)}.project-hover-preview.is-visible .project-preview-frame{transform:scale(1)}.project-hover-preview img{display:block;width:auto;height:auto;max-width:90vw;max-height:90vh;object-fit:contain;border:1px solid rgba(255,255,255,.35);border-radius:1rem;box-shadow:0 35px 100px rgba(0,0,0,.58)}.project-preview-close{position:absolute;z-index:2;top:-1rem;right:-1rem;width:48px;height:48px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.8);border-radius:50%;background:var(--deep);color:#fff;font:400 2rem/1 Arial,sans-serif;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.4);transition:background .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}.project-preview-close:hover,.project-preview-close:focus-visible{background:var(--gold);color:var(--deep);transform:scale(1.08);outline:none}@media(max-width:720px){.project-preview-close{top:.5rem;right:.5rem;width:44px;height:44px;font-size:1.75rem}}
    @media(prefers-reduced-motion:reduce){.project-hover-preview,.project-preview-frame,.project-preview-close{transition:none}}
    @media(min-width:1600px) and (max-width:2199px) and (max-height:1200px){.brand{width:224px;height:264px}}
    /* Independent umbrella stack: moving canopy, exact original shaft/handle, then the head in front. */
    .character-portrait{--canopy-x:66%;--canopy-top:-7%;--canopy-height:39%;--canopy-apex-y:-1.3%;--shaft-angle:-3.7deg;--shaft-length:28.6%;overflow:visible}
    .character-portrait .character-figure{position:relative;z-index:1;clip-path:inset(17% 0 0 0)}
    .character-portrait .character-head-patch{position:absolute;z-index:2;inset:0;width:100%;height:100%;object-fit:contain;clip-path:polygon(38% 12.8%,49% 12.8%,54% 17%,53% 28%,33% 28%,32% 18%);pointer-events:none}
    .character-umbrella{position:absolute;z-index:0;inset:0;display:block!important;margin:0!important;color:inherit;transform-origin:69.3% 27.2%;animation:umbrellaRock 4.6s cubic-bezier(.45,.05,.35,1) infinite;pointer-events:none;will-change:transform}
    .character-portrait .character-canopy{position:absolute;z-index:2;left:var(--canopy-x);top:var(--canopy-top);width:202%;height:var(--canopy-height);max-width:none;object-fit:contain;transform:translateX(-50%);mix-blend-mode:normal;-webkit-mask-image:none!important;mask-image:none!important;filter:saturate(1.03) contrast(1.04) brightness(.92) drop-shadow(0 12px 15px rgba(0,0,0,.24));pointer-events:none}
    .character-shaft{position:absolute;z-index:3;left:var(--canopy-x);top:calc(var(--canopy-apex-y) + 2px);width:2px;height:var(--shaft-length);margin:0!important;display:block!important;transform-origin:50% 0;transform:rotate(var(--shaft-angle));clip-path:inset(24% -3px 0 -3px);border-radius:0 0 999px 999px;background:linear-gradient(90deg,#28313a 0,#d8e0e4 48%,#58636c 72%,#171d24 100%);box-shadow:1px 0 1px rgba(255,255,255,.18),0 1px 2px rgba(0,0,0,.45)}
    .hero-character:hover .character-umbrella,.hero-character:focus-visible .character-umbrella{animation-duration:3.8s}
    @keyframes umbrellaRock{0%,100%{transform:rotate(-1.05deg)}44%{transform:rotate(1.15deg)}62%{transform:rotate(.78deg)}82%{transform:rotate(-.62deg)}}
    @media(min-width:1200px) and (min-height:720px){.character-portrait{--canopy-x:65%;--canopy-top:-10%;--canopy-height:43%;--canopy-apex-y:-3.7%;--shaft-angle:-4.5deg;--shaft-length:31%}.character-portrait .character-canopy{width:222%}}
    @media(min-width:1600px) and (min-height:900px){.character-portrait{--canopy-x:64%;--canopy-top:-12%;--canopy-height:45%;--canopy-apex-y:-5.4%;--shaft-angle:-5.2deg;--shaft-length:32.8%}.character-portrait .character-canopy{width:230%}}
    @media(max-width:720px){.character-portrait{--canopy-x:68%;--canopy-top:-4%;--canopy-height:35%;--canopy-apex-y:1.1%;--shaft-angle:-1.6deg;--shaft-length:26.2%}.character-portrait .character-canopy{width:176%}}

    /* Deeper hero water composition and stronger supporting copy. */
    .hero h1{margin-bottom:clamp(3rem,5.5vh,4.6rem)}

    /* PixiJS cinematic weather layer. */
    .hero-rain,.rain-atmosphere{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
    .hero-rain{z-index:3;opacity:1;mix-blend-mode:screen;-webkit-mask-image:none;mask-image:none}
    .rain-atmosphere{z-index:1;background:radial-gradient(ellipse 30% 42% at 68% 35%,rgba(18,170,189,.1),transparent 72%),linear-gradient(180deg,rgba(18,170,189,.025),transparent 35%,rgba(2,31,58,.08) 72%,rgba(1,10,25,.2)),radial-gradient(ellipse 82% 20% at 50% 78%,rgba(18,170,189,.09),transparent 74%)}
    .hero h1 .hero-word{position:relative;isolation:isolate;-webkit-box-reflect:none}
    .hero h1 .hero-word:before,.hero h1 .hero-word:after{content:none!important}
    .rain-floor{display:none!important}
    .rain-fallback .rain-atmosphere:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(98deg,transparent 0 27px,rgba(194,238,248,.18) 28px,transparent 29px);background-size:180% 180%;animation:fallbackRain 4.8s linear infinite;opacity:.7;-webkit-mask-image:linear-gradient(180deg,transparent 5%,#000 24%,#000 78%,transparent 100%);mask-image:linear-gradient(180deg,transparent 5%,#000 24%,#000 78%,transparent 100%)}@keyframes fallbackRain{to{background-position:-130px 460px}}
    @media(max-width:720px){.hero-rain{opacity:.92}}
    @media(max-width:720px){.hero-label{display:grid;justify-items:start;gap:.3rem;line-height:1.25}.hero-label:before{grid-row:1}.hero-label-copy{display:grid;grid-row:2;gap:.18rem}.hero-label-copy>span{white-space:nowrap}.hero-label-separator{display:none}}
    @media(max-width:720px){.hero h1 .hero-word{width:100%;max-width:100%;margin-left:0;font-size:clamp(2.8rem,15vw,4.8rem);white-space:nowrap}}
    @media(max-width:720px){.service{grid-template-columns:72px minmax(0,1fr) 46px;column-gap:.75rem;row-gap:.65rem;align-items:start;padding:1.4rem 0}.service-no{grid-column:1;grid-row:1;font-size:.72rem;line-height:1.15;white-space:normal}.service h3{grid-column:2;grid-row:1;min-width:0;margin:0;font-size:1.35rem;line-height:1.08}.service p{grid-column:2;grid-row:2;min-width:0;margin:0;font-size:.8rem;line-height:1.6}.service-arrow{grid-column:3;grid-row:1/3;align-self:center;width:44px;height:44px}}
    .ticker-break{display:none}
    @media(max-width:720px){.ticker{font-size:.7rem;line-height:1.3}.ticker-line{animation-duration:42s}.ticker-copy{display:block;flex:0 0 auto;white-space:nowrap}.ticker-break{display:block}}
    @media(max-width:720px){html{overflow-x:hidden;scrollbar-width:none}body{-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none;width:0;height:0}}
    @media(max-width:720px){.navlinks{display:flex;flex-direction:column;align-items:stretch;gap:.2rem;padding:14.5rem 2rem 2rem}.navlinks>a:not(.btn){padding:.6rem 0;text-align:left}.navlinks>.btn{width:100%;margin-top:1rem}}
    .brand-echo,.brand-orbit,.brand-light,.brand-glint{display:none}.brand-logo{transition:none}.brand:hover .brand-logo,.brand:focus-visible .brand-logo{transform:none;filter:drop-shadow(0 16px 26px rgba(0,0,0,.3))}
    @media(min-width:961px){.services{padding-top:clamp(3rem,4vw,4rem)}.services .services-intro{min-height:0}.services .services-pilot{height:430px}.services .services-pilot img{height:100%;object-fit:cover;object-position:center;transform:none}.services .services-pilot::after{-webkit-mask-size:cover;mask-size:cover}.services .services-pilot:hover img{transform:rotate(1.3deg) scale(1.025)}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.brand-echo,.brand-orbit,.brand-light,.brand-glint,.hero-rain{display:none!important}.brand:hover .brand-logo,.brand:focus-visible .brand-logo,.hero-character:hover .character-portrait,.hero-character:focus-visible .character-portrait{transform:none}}
