:root{--black:#0b0b0b;--green:#20f778;--panel:#1e1e1e;--gray:#9a9a9a;--line:#303030;--display:'Archivo Black','Arial Black',Arial,sans-serif;--body:Inter,Arial,sans-serif;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--black);color:white;font-family:var(--body);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,input,textarea,select{outline-offset:6px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--green)}img{max-width:100%;display:block;height:auto}figure,p,h1,h2,h3{margin:0}figure{min-width:0}.wrap{width:min(1344px,calc(100% - 96px));margin-inline:auto}.header{display:flex;align-items:center;justify-content:space-between;height:132px;gap:32px}.logo{display:block;width:155px;height:85px;overflow:hidden}.logo img{width:200px;max-width:none;margin-left:-23px;margin-top:-57px}.header nav{display:flex;gap:32px;margin-left:auto}.header nav a:hover,.text-link:hover,.services a:hover{color:var(--green)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:14px 25px;border:1px solid transparent;border-radius:100px;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .18s,color .18s}.green{background:var(--green);color:var(--black)}.green:hover{background:#a5ffc9}.outline{border-color:white}.outline:hover{background:white;color:var(--black)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:720px;gap:36px}.hero-copy{padding:40px 0 60px;position:relative;z-index:1}.eyebrow{color:var(--gray);font-size:11px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;margin-bottom:30px}h1,h2,h3{font-family:var(--display);font-weight:900;text-transform:uppercase;letter-spacing:-.055em}h1{font-size:clamp(64px,7.1vw,106px);line-height:.94}h1 span,h2 span{color:var(--green)}.intro{font-size:18px;line-height:1.65;color:#d1d1d1}.hero .intro{max-width:485px;margin:30px 0}.hero-art{position:relative;min-height:700px;overflow:hidden;background:var(--panel)}.hero-art>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 45%}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 65%,#000a)}.hero-art figcaption{position:absolute;right:28px;bottom:32px;z-index:1;text-align:right;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;line-height:1.7}.image-label{position:absolute;left:24px;top:24px;z-index:1;font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:7px 12px;background:#0b0b0b99}.brand-line{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:30px;border-bottom:1px solid var(--line);font-size:12px;color:var(--gray)}.brand-line span:first-child{color:white}.brand-line span:nth-child(2){font-size:30px;color:var(--green)}.section{padding-block:105px}h2{font-size:clamp(42px,4.7vw,70px);line-height:1.03}.section-heading{margin-bottom:48px}.section-heading>p:last-child{max-width:460px;color:var(--gray);margin-top:24px}.services{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.services article{display:flex;flex-direction:column;padding:30px 24px 30px 0;margin-right:24px;border-right:1px solid var(--line)}.services article:last-child{border:0;margin:0;padding-right:0}.number{font-size:12px;color:var(--green);margin-bottom:36px}.services h3{font-size:24px;line-height:1.15;letter-spacing:-.04em;margin-bottom:20px}.services p{font-size:14px;color:#bbb;min-height:50px}.services ul{list-style:none;padding:0;margin:30px 0;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--gray)}.services li{margin-block:7px}.services a{font-size:12px;margin-top:auto;display:flex;gap:10px;justify-content:space-between}.work-section{background:#141414}.work-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.work-heading>p{max-width:330px!important}.work-board img{width:100%;border:1px solid var(--line)}.work-board figcaption{font-size:11px;color:var(--gray);padding-top:15px}.about{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center}.about figure{border:1px solid var(--line);border-radius:18px;overflow:hidden}.about .intro{margin:25px 0 16px}.about p:not(.intro):not(.eyebrow){color:var(--gray);font-size:14px}.text-link{display:inline-block;margin-top:26px;font-size:13px;border-bottom:1px solid var(--line);padding-bottom:7px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px;border-top:1px solid var(--line)}.contact h2{font-size:clamp(70px,7vw,110px)}.contact .intro{max-width:410px;margin:30px 0}.contact-email{display:block;font-size:clamp(17px,2vw,26px);margin-bottom:12px}.phone{color:var(--gray);font-size:15px}.contact form{background:var(--panel);padding:36px}.contact form h3{font-size:24px;letter-spacing:-.04em;margin-bottom:26px}.contact label{display:block;font-size:12px;margin:20px 0 9px;color:#d0d0d0}.contact input,.contact select,.contact textarea{width:100%;padding:13px 14px;border:1px solid #484848;background:#151515;color:white;border-radius:0;font-size:14px}.contact textarea{resize:vertical}.contact input::placeholder,.contact textarea::placeholder{color:#959595}.form-note{font-size:11px;color:#aaa;line-height:1.65;margin:18px 0 22px}#form-status{font-size:12px;color:var(--green);margin-top:14px}.footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:30px;font-size:11px;color:var(--gray)}.footer>a:first-child{font-size:16px;font-weight:800;color:white}.footer span{color:var(--green);margin-left:10px}.skip{position:absolute;left:16px;top:-90px;background:var(--green);color:black;padding:10px;z-index:10}.skip:focus{top:10px}@media(min-width:1700px){.hero{min-height:780px}.hero-art{min-height:780px}}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.header{height:115px;gap:20px}.header nav{gap:20px}.header-cta{padding:12px 18px}.hero{gap:24px;min-height:620px}.hero-art{min-height:620px}.hero .intro{font-size:16px}h1{font-size:clamp(64px,8vw,90px)}.services{grid-template-columns:1fr 1fr}.services article{border-bottom:1px solid var(--line);padding:28px 20px 28px 0}.services article:nth-child(2){border-right:0;margin:0}.services article:nth-child(n+3){border-bottom:0}.about{gap:35px}.contact{gap:35px}.section{padding-block:80px}}@media(max-width:650px){.wrap{width:calc(100% - 36px)}.header{height:auto;min-height:120px;flex-wrap:wrap;gap:0 15px;padding-top:15px;padding-bottom:18px}.logo{width:140px;height:65px}.logo img{width:180px;margin-top:-52px;margin-left:-20px}.header nav{order:3;width:100%;margin-top:16px;justify-content:space-between;font-size:13px}.header-cta{font-size:10px;margin-left:auto;padding:10px 15px;gap:16px}.hero{grid-template-columns:1fr;gap:0}.hero-copy{padding:34px 0 42px}.eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:24px}h1{font-size:clamp(63px,16vw,97px);line-height:.96}.hero .intro{max-width:100%;margin:26px 0}.hero-art{min-height:440px}.hero-art>img{object-position:center 48%}.brand-line{font-size:11px;padding-block:22px}.brand-line span:last-child{display:none}.section{padding-block:65px}h2{font-size:43px}.section-heading{margin-bottom:30px}.section-heading>p:last-child{font-size:14px}.services article{margin-right:18px;padding-right:16px}.services h3{font-size:20px}.services p{font-size:13px;min-height:64px}.number{margin-bottom:26px}.services ul{font-size:9px}.services a{font-size:11px;line-height:1.6}.work-heading{display:block}.work-board{overflow:hidden}.work-board img{max-width:none;width:160%;margin-left:-12%}.work-board figcaption{line-height:1.6}.about,.contact{grid-template-columns:1fr;gap:35px}.about figure{order:2}.intro{font-size:16px}.contact h2{font-size:76px}.contact form{padding:24px}.footer{flex-wrap:wrap;gap:16px}.footer p{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Expanded studio positioning and draft package catalogue. */
.header nav{gap:24px}.about{align-items:start}.about figure{position:sticky;top:40px}.about h2{font-size:clamp(33px,3.5vw,52px)}.about>div>p:not(.eyebrow){margin-top:18px}.about .about-promise{color:white!important;font-weight:700}.brand-experience{grid-column:1/-1;border-top:1px solid var(--line);padding-top:35px}.brand-experience ul{list-style:none;display:flex;flex-wrap:wrap;gap:24px 48px;padding:0;margin:0;font-size:clamp(22px,3vw,36px);font-weight:800;letter-spacing:-.04em}.brand-experience .eyebrow{margin:0 0 18px}.brand-experience p:last-child{margin-top:16px}.shop-section{background:#141414}.pricing-note,.package-terms{font-size:12px;line-height:1.8;color:#b9b9b9;max-width:950px}.pricing-note{border-left:2px solid var(--green);padding:8px 18px;margin-bottom:40px}.package-group{font-size:22px;letter-spacing:-.03em;margin:36px 0 28px}.packages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.package{display:flex;flex-direction:column;position:relative;padding:30px 22px;border:1px solid #383838;background:var(--black)}.package .eyebrow{font-size:9px;line-height:1.7;min-height:32px;margin-bottom:17px}.package h4{font:800 22px/1.2 var(--body);letter-spacing:-.045em;margin:0 0 24px;min-height:53px}.price{font-size:40px;line-height:1.2;font-weight:800;letter-spacing:-.055em;margin-bottom:24px}.price span{font-size:10px;color:var(--gray);letter-spacing:.05em}.price small{font-size:13px;letter-spacing:0}.package>p:not(.price):not(.eyebrow){font-size:13px;color:#bbb}.package ul{padding-left:17px;color:#dedede;font-size:12px;line-height:1.8;margin:22px 0}.package .delivery{margin-top:auto;min-height:75px;margin-bottom:24px}.package .button{font-size:9px;gap:10px;padding:12px 10px;line-height:1.6}.featured{border-color:var(--green)}.featured-label{position:absolute;left:-1px;right:-1px;top:-19px;background:var(--green);color:black;padding:4px 10px;font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.08em;text-align:center}.package-terms{margin-top:28px}.custom-services{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:45px;padding-top:35px;border-top:1px solid var(--line)}.custom-services h3{font-size:24px;letter-spacing:-.04em;margin-bottom:12px}.custom-services p{font-size:14px;color:var(--gray);max-width:650px}.custom-services .button{flex-shrink:0}@media(max-width:1100px){.packages{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}.header nav{gap:16px;font-size:13px}.services h3{font-size:21px}}@media(max-width:650px){.header nav{gap:10px;font-size:12px}.about figure{position:static}.brand-experience{order:3}.brand-experience ul{gap:16px 24px}.about h2{font-size:35px}.packages{grid-template-columns:1fr;gap:30px}.package{padding:28px}.package h4{min-height:0}.package .eyebrow{min-height:0}.package .delivery{min-height:0;margin-top:0}.package .button{font-size:11px;padding:14px}.custom-services{display:block}.custom-services .button{margin-top:24px}.price{font-size:46px}}


/* Primary AI offers and supporting capabilities. */
.hero h1{font-size:clamp(48px,5.45vw,81px);line-height:1.02;letter-spacing:-.06em}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-actions .button{font-size:10px;padding:14px 18px;gap:14px}.primary-offers{display:grid;grid-template-columns:1fr 1fr;gap:24px}.primary-offer{background:#141414;border:1px solid var(--line);padding:44px;scroll-margin-top:30px}.primary-offer h3{font-size:clamp(38px,4.5vw,64px);line-height:1.02;margin-bottom:28px}.primary-offer h3 span,.social-support h3 span{color:var(--green)}.primary-offer>p:not(.eyebrow){font-size:16px;color:#bfbfbf;max-width:470px}.primary-offer ul{list-style:none;padding:0;margin:25px 0 32px;font-size:13px;color:#d5d5d5;line-height:2}.primary-offer li:before{content:"/ ";color:var(--green)}.primary-offer .button{font-size:11px;padding:14px 20px;gap:16px}.offer-detail{display:block;color:var(--gray);font-size:11px;margin-top:18px}.social-support{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding-top:55px;margin-top:55px;border-top:1px solid var(--line)}.social-support h3{font-size:clamp(28px,3vw,42px);line-height:1.1}.social-support>div>p:not(.eyebrow){color:#bfbfbf;font-size:16px}.essentials{grid-template-columns:1fr 1fr}.essentials .package h4{min-height:0}.essentials .package .eyebrow{min-height:0}.essentials .delivery{min-height:0}.influencer-quote{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:40px;padding-top:35px;border-top:1px solid var(--line)}.influencer-quote h3{font-size:22px;letter-spacing:-.04em;margin-bottom:12px}.influencer-quote p{color:var(--gray);font-size:14px;max-width:640px}.influencer-quote .button{font-size:10px;flex-shrink:0}.additional{padding-bottom:35px}.additional h2{font-size:clamp(36px,4vw,56px)}.additional-intro{color:var(--gray);max-width:540px;margin-top:24px}.additional-links{margin:35px 0;border-top:1px solid var(--line)}.additional-links a{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:22px 0;border-bottom:1px solid var(--line);font-size:18px}.additional-links a:hover{color:var(--green)}.additional-links small{font-size:11px;color:var(--gray);text-align:right}.additional details{border:1px solid var(--line);padding:22px}.additional summary{cursor:pointer;display:flex;justify-content:space-between;gap:15px;font-size:14px}.additional summary span{color:var(--green)}.bonus-packages{grid-template-columns:1fr 1fr;margin-top:25px}.bonus-packages h4{min-height:0}.bonus-packages .delivery{min-height:0}@media(max-width:850px){.primary-offer{padding:28px}.primary-offer .button{font-size:9px;padding:12px}.influencer-quote{align-items:flex-start;flex-direction:column;gap:24px}.header nav{gap:14px;font-size:12px}}@media(max-width:650px){.hero h1{font-size:clamp(38px,10.8vw,68px)}.primary-offers,.social-support{grid-template-columns:1fr;gap:25px}.primary-offer h3{font-size:42px}.primary-offer .button{font-size:10px}.social-support{padding-top:35px;margin-top:35px}.essentials,.bonus-packages{grid-template-columns:1fr}.additional-links a{font-size:15px}.additional-links small{max-width:100px}.additional details{padding:18px}.header nav{font-size:11px;gap:8px}.hero-actions{gap:10px}.hero-actions .button{font-size:9px;gap:10px;padding:13px 15px}}


/* Unified brand gallery with optically balanced artwork. */
.brand-experience .brand-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:30px;font:inherit;letter-spacing:normal;list-style:none;padding:0}
.brand-logos li{min-width:0}
.about .brand-logos figure{position:static;overflow:visible;border:0;border-radius:0}
.brand-logo-stage{height:170px;position:relative;overflow:hidden;border-radius:18px;border:1px solid #fff;background:radial-gradient(ellipse at 40% 15%,#fff 10%,#f5f5f5 65%,#dfE2e3 100%);box-shadow:inset 0 1px 0 #fff,0 9px 24px #0002;isolation:isolate}
.brand-logo-stage img{display:block;position:absolute;object-fit:contain;mix-blend-mode:multiply}
.brand-logo-stage.bumbu img{filter:url(#logo-remove-dark)}
.brand-logos figcaption{margin-top:13px;color:#b9b9b9;font-size:11px;line-height:1.5;text-align:center}
.brand-experience .brands-more{font-size:clamp(24px,3vw,36px)!important;font-weight:800;color:white!important;letter-spacing:-.04em;margin-top:32px!important}
.logo-filter-definitions{position:absolute;pointer-events:none}
.brand-logos li.logo-reveal-ready{opacity:0;transform:translateY(28px) scale(.97);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.brand-logos li.logo-reveal-ready.is-visible{opacity:1;transform:translateY(0) scale(1)}
@media(hover:hover){.brand-logo-stage{transition:transform .25s ease,box-shadow .25s ease}.brand-logos li:hover .brand-logo-stage{transform:translateY(-5px);box-shadow:inset 0 1px 0 #fff,0 16px 30px #0005}}
@media(max-width:850px){.brand-experience .brand-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}.brand-logo-stage{height:155px}}
@media(max-width:380px){.brand-logo-stage{height:140px}}
@media(prefers-reduced-motion:reduce){.brand-logos li.logo-reveal-ready{opacity:1;transform:none;transition:none}.brand-logo-stage{transition:none}.brand-logos li:hover .brand-logo-stage{transform:none}}
.brand-logo-stage img[src$="brand-spar.webp"]{width:min(calc(76% * 1.10578),calc(86px * 3.41351));height:auto;max-width:none;max-height:none;left:50%;top:50%;transform:translate(-51.15176%,-44.94424%);}
.brand-logo-stage img[src$="brand-amandla.webp"]{width:min(calc(76% * 1.19048),calc(86px * 3.18471));height:auto;max-width:none;max-height:none;left:50%;top:50%;transform:translate(-50.40000%,-48.50000%);}
.brand-logo-stage img[src$="brand-bumbu.jpg"]{width:min(calc(76% * 1.33173),calc(86px * 2.15564));height:auto;max-width:none;max-height:none;left:50%;top:50%;transform:translate(-50.00000%,-48.64621%);}
.brand-logo-stage img[src$="brand-fundi.webp"]{width:min(calc(76% * 1.00000),calc(86px * 5.40530));height:auto;max-width:none;max-height:none;left:50%;top:50%;transform:translate(-50.00000%,-49.00990%);}
.brand-logo-stage img[src$="brand-fidelity.webp"]{width:min(calc(76% * 1.00000),calc(86px * 4.11111));height:auto;max-width:none;max-height:none;left:50%;top:50%;transform:translate(-50.00000%,-50.00000%);}
.brand-logo-stage img[src$="brand-crave.webp"]{width:min(calc(76% * 1.11111),calc(86px * 2.76243));height:auto;max-width:none;max-height:none;left:50%;top:50%;transform:translate(-49.80000%,-53.80000%);}
.brand-logo-stage img[src$="brand-atkv.webp"]{width:min(calc(76% * 2.03252),calc(86px * 1.54799));height:auto;max-width:none;max-height:none;left:50%;top:50%;transform:translate(-50.00000%,-50.10000%);}
.brand-logo-stage img[src$="brand-honey.webp"]{width:min(calc(76% * 1.06762),calc(86px * 2.50000));height:auto;max-width:none;max-height:none;left:50%;top:50%;transform:translate(-50.16667%,-49.00000%);}

/* Restrained optical sizing: smaller marks with extra breathing room. */
.brand-logo-stage{height:145px;border-radius:12px}
.brand-logo-stage img[src$="brand-spar.webp"]{width:min(calc(58% * 1.10578),calc(60px * 3.41351))}
.brand-logo-stage img[src$="brand-amandla.webp"]{width:min(calc(58% * 1.19048),calc(60px * 3.18471))}
.brand-logo-stage img[src$="brand-bumbu.jpg"]{width:min(calc(57% * 1.33173),calc(66px * 2.15564))}
.brand-logo-stage img[src$="brand-fundi.webp"]{width:min(58%,calc(56px * 5.40530))}
.brand-logo-stage img[src$="brand-fidelity.webp"]{width:min(66%,calc(60px * 4.11111))}
.brand-logo-stage img[src$="brand-crave.webp"]{width:min(calc(46% * 1.11111),calc(45px * 2.76243))}
.brand-logo-stage img[src$="brand-atkv.webp"]{width:min(calc(58% * 2.03252),calc(72px * 1.54799))}
.brand-logo-stage img[src$="brand-honey.webp"]{width:min(calc(48% * 1.06762),calc(45px * 2.50000))}
@media(max-width:850px){.brand-logo-stage{height:135px}}
@media(max-width:380px){.brand-logo-stage{height:125px}}


/* Full-width studio portrait with copy below, including on mobile. */
.about{grid-template-columns:minmax(0,1fr);gap:48px}.about>.about-banner{position:static;order:0;width:100%;border:0;border-radius:0}.about-banner img{width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}.about>div:not(.brand-experience){width:100%;max-width:960px}.about>.brand-experience{width:100%}@media(max-width:650px){.about{gap:30px}.about>.about-banner{order:0}}

/* User-selected packages glow; the featured label does not imply selection. */
.package{transition:border-color .25s,box-shadow .25s,transform .25s,background .25s}
.package.featured{border-color:#383838}
.package.is-selected{border-color:var(--green);background:#101b14;box-shadow:0 0 0 1px var(--green),0 0 28px #20f77840;transform:translateY(-4px);animation:package-light-up .45s ease-out}
.package-select{background:transparent;border:1px solid #555;color:#ccc;border-radius:100px;padding:9px 12px;margin-bottom:12px;font-size:11px;cursor:pointer}
.package-select:hover{border-color:var(--green);color:var(--green)}
.package.is-selected .package-select{color:var(--green);border-color:var(--green)}
.package.is-selected>.button{background:var(--green);border-color:var(--green);color:var(--black)}
@keyframes package-light-up{from{box-shadow:0 0 0 1px var(--green),0 0 45px #20f77880}to{box-shadow:0 0 0 1px var(--green),0 0 28px #20f77840}}
@media(prefers-reduced-motion:reduce){.package{transition:none}.package.is-selected{animation:none;transform:none}}
/* Scroll-driven portfolio columns retain the original artwork. */
.work-board{overflow:hidden;padding-top:50px}
.work-tiles{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:12px 0 60px}
.work-strip{display:flex;flex-direction:column;gap:10px;will-change:transform}
.work-tile{aspect-ratio:538/712;background-image:url('assets/selected-work.jpg');background-size:700% 300%;background-repeat:no-repeat;border:1px solid #303030;border-radius:8px;box-shadow:0 8px 20px #0004}
@media(max-width:650px){.work-tiles{width:175%;margin-left:-37.5%;gap:7px}.work-strip{gap:7px}.work-board{padding-top:40px}.work-tile{border-radius:5px}}
@media(prefers-reduced-motion:reduce){.work-strip{will-change:auto;transform:none!important}}
/* Viewport reveals use translate independently of package-selection transforms. */
.scroll-reveal{opacity:0;translate:0 26px;transition:opacity .7s ease var(--scroll-delay,0ms),translate .7s cubic-bezier(.2,.7,.2,1) var(--scroll-delay,0ms)}
.scroll-reveal.scroll-revealed{opacity:1;translate:0 0}
.package.scroll-reveal{transition:opacity .7s ease var(--scroll-delay,0ms),translate .7s ease var(--scroll-delay,0ms),border-color .25s,box-shadow .25s,transform .25s,background .25s}
.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:var(--green);box-shadow:0 0 12px #20f77880;transform-origin:left;z-index:100;pointer-events:none}
.hero-art>img{will-change:transform}
.primary-offer{transition:border-color .25s,box-shadow .25s,opacity .7s ease var(--scroll-delay,0ms),translate .7s ease var(--scroll-delay,0ms)}
.primary-offer:hover{border-color:#20f77880;box-shadow:0 12px 36px #0005}
@media(prefers-reduced-motion:reduce){.scroll-reveal{opacity:1;translate:none;transition:none!important}.hero-art>img{transform:none!important;will-change:auto}.reading-progress{display:none}.primary-offer{transition:none}}
@media print{.scroll-reveal{opacity:1;translate:none}.reading-progress{display:none}}
.digital-showcase{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:center;margin:48px 0;padding:36px;background:linear-gradient(135deg,#15231a,#141414 65%);border:1px solid #303e34;border-radius:16px;overflow:hidden}
.digital-showcase h3{font-size:clamp(25px,3vw,40px);line-height:1.1;margin-bottom:22px}.digital-showcase h3 span{color:var(--green)}
.digital-showcase-copy>p:not(.eyebrow){font-size:14px;color:#bfbfbf;max-width:390px}
.digital-showcase-screen{display:block;aspect-ratio:1.25;overflow:hidden;border-radius:10px;border:1px solid #ffffff25;box-shadow:0 20px 40px #0005;background:#eef4f0}
.digital-showcase-screen img{width:100%;height:auto;transition:transform 1.4s ease}.digital-showcase-screen:hover img{transform:translateY(-8%)}
@media(max-width:650px){.digital-showcase{grid-template-columns:1fr;padding:24px;gap:28px}.digital-showcase-screen{aspect-ratio:1}}
@media(prefers-reduced-motion:reduce){.digital-showcase-screen img{transition:none;transform:none!important}}
.brief-header{padding-block:30px;font-weight:800}.brief-header span{color:var(--green)}.brief-page{max-width:850px;padding-block:35px 90px}.brief-page h1{font-size:clamp(42px,7vw,76px)}.brief-page .intro{margin:30px 0}.brief-notice{border:1px solid #4c6554;padding:20px;color:#cad6ce;font-size:14px}.brief-page form{margin-top:35px}.brief-page label{display:block;margin:25px 0 9px;font-size:14px}.brief-page input:not([type=checkbox]),.brief-page select,.brief-page textarea{width:100%;background:#151515;color:white;border:1px solid #484848;padding:14px;font-size:15px}.brief-page textarea{resize:vertical}.brief-page .brief-consent{display:flex;gap:12px;align-items:flex-start}.brief-consent input{margin-top:6px}#brief-status{margin-top:18px;color:var(--green);font-size:14px}

.contact .contact-help{font-size:14px;color:#bfbfbf;max-width:430px;margin-top:24px}

.legal-page{max-width:900px;padding-block:40px 90px}.legal-page h1{font-size:clamp(35px,6vw,65px);line-height:1.1}.legal-page .brief-notice{margin:30px 0}.legal-page section{margin:35px 0}.legal-page h2{font:700 23px/1.35 var(--body);text-transform:none;letter-spacing:-.02em;margin-bottom:12px}.legal-page p{color:#ccc;line-height:1.85}.legal-page nav{padding-top:25px;border-top:1px solid var(--line);font-size:14px}.legal-page a:hover,.footer nav a:hover{color:var(--green)}.footer nav{font-size:11px}

/* Legal print layout */
.legal-page section{margin-bottom:12px}.legal-page section+p{margin-bottom:28px}.legal-page a{overflow-wrap:anywhere;text-decoration:underline}@media print{.legal-page{width:100%;max-width:none;padding:0;color:#000}.legal-page p,.legal-page h1,.legal-page h2{color:#000}.legal-page h1{font-size:26pt}.legal-page h2{font-size:14pt;break-after:avoid}.legal-page nav,.brief-header{display:none}.legal-page .brief-notice{border:1px solid #555;color:#000}body{background:#fff;color:#000}}
/* Brand typography and responsive refinements. */
@font-face{font-family:'Archivo Black';src:url('assets/archivo-black.woff2') format('woff2');font-weight:400 900;font-display:swap}
@font-face{font-family:Inter;src:url('assets/inter.woff2') format('woff2');font-weight:900;font-display:swap}
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero-copy,.hero-art{min-width:0}.hero h1{font-size:clamp(30px,4.1vw,61px);overflow-wrap:anywhere;letter-spacing:-.055em}.header nav{gap:18px;font-size:13px}.contact-email{overflow-wrap:anywhere}.contact-location{font-size:14px;color:var(--gray);margin-top:22px}
.package .eyebrow{font-size:11px;letter-spacing:.09em}.package .button{font-size:11px;min-height:46px}.package ul{font-size:14px}.package>p:not(.price):not(.eyebrow){font-size:14px}.featured-label{font-size:11px}.package-terms a{text-decoration:underline;text-underline-offset:4px}.pricing-note{font-size:14px}
.work-tile{background-image:url('assets/selected-work-1600.webp')}.reel-stage{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.reel-stage>img,.reel-stage>video{width:100%;height:100%;object-fit:cover}.reel-stage>img{opacity:.45}.reel-caption{position:absolute;inset:auto 32px 32px;max-width:80%}.reel-caption>p{font:700 clamp(22px,3vw,40px)/1.2 var(--body);margin-bottom:24px}.reel-caption .eyebrow{display:block;margin-bottom:12px}.reel-tabs{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.reel-tabs button{background:transparent;border:1px solid #555;color:white;padding:12px;cursor:pointer}.reel-tabs button[aria-pressed=true]{border-color:var(--green);color:var(--green)}
.process{border-top:1px solid var(--line)}.process-steps{padding:0;list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:48px}.process-steps li{counter-increment:step;border-top:1px solid #454545;padding-top:20px}.process-steps li:before{content:'0' counter(step);color:var(--green);font-size:13px}.process-steps h3{font:700 19px/1.3 var(--body);letter-spacing:-.03em;text-transform:none;margin:15px 0}.process-steps p{font-size:14px;color:#bfbfbf}
@media(max-width:1000px){.hero h1{font-size:clamp(28px,3.9vw,45px)}.process-steps{grid-template-columns:1fr 1fr}.primary-offer{min-width:0}.header{gap:14px}.header nav{gap:12px;font-size:12px}}
@media(max-width:650px){.hero{grid-template-columns:minmax(0,1fr)}.hero h1{font-size:clamp(24px,7.5vw,48px)}.hero-actions .button{font-size:11px}.header nav{flex-wrap:wrap;gap:12px;justify-content:flex-start}.header nav a{min-height:36px;display:flex;align-items:center}.hero-art{min-height:390px}.section{padding-block:52px}.eyebrow{font-size:11px}.reel-stage{aspect-ratio:4/5}.reel-caption{inset:auto 20px 24px;max-width:none}.reel-caption .button{font-size:10px;padding:12px}.process-steps{gap:26px 20px}.process-steps h3{font-size:17px}.package .button{font-size:12px}.footer nav{font-size:13px;line-height:2}.hero-art>img,.work-strip{will-change:auto}.about h2{font-size:clamp(26px,8vw,35px)}.contact h2{font-size:clamp(52px,16vw,76px)}.primary-offer h3{font-size:clamp(30px,10vw,42px)}}
@media(max-width:360px){.process-steps{grid-template-columns:1fr}.header-cta{font-size:9px;gap:8px;padding:10px}.logo{width:125px}.button{max-width:100%}.primary-offer{padding:22px}}

.project-story{grid-column:1/-1}.project-story p{color:#ccc;font-size:14px;margin-top:18px}

@font-face{font-family:Inter;src:url('assets/inter-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url('assets/inter-700.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Inter;src:url('assets/inter-800.woff2') format('woff2');font-weight:800;font-display:swap}
/* Show the supplied device composition in full, without cropping or panning. */
.concept-showcase{grid-template-columns:minmax(0,1fr);gap:30px}.concept-showcase .digital-showcase-copy{max-width:760px}.concept-showcase .digital-showcase-copy>p:not(.eyebrow){max-width:620px}.concept-showcase .digital-showcase-screen{aspect-ratio:1672/941;background:#0b0b0b}.concept-showcase .digital-showcase-screen img{width:100%;height:100%;object-fit:contain;transform:none;transition:none}

/* Portrait settles gently into its frame when the existing scroll reveal fires. */
.about-banner img{transform-origin:60% 45%;transition:transform .8s ease}
.about-banner.scroll-revealed img{animation:portrait-settle 1.5s cubic-bezier(.2,.7,.2,1)}
@keyframes portrait-settle{from{transform:scale(1.035) translateY(6px)}to{transform:scale(1) translateY(0)}}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.about-banner:hover img{transform:scale(1.012)}}
@media(prefers-reduced-motion:reduce){.about-banner img,.about-banner.scroll-revealed img{animation:none;transition:none;transform:none}}

/* Slow seamless carousel, paused on an individual logo or keyboard focus. */
.brand-experience{min-width:0}
.brand-carousel{overflow:hidden;width:100%;margin-top:30px;padding-block:8px}
.brand-experience .brand-carousel .brand-logos{display:flex;width:max-content;gap:22px;margin:0;animation:brand-drift 90s linear infinite}
.brand-carousel .brand-logos>li{flex:0 0 230px;width:230px;opacity:1;transform:none}
.brand-carousel .brand-logos>li:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:12px}
.brand-carousel:has(li:hover) .brand-logos,.brand-carousel:focus-within .brand-logos,.brand-carousel.is-offscreen .brand-logos{animation-play-state:paused}
@keyframes brand-drift{to{transform:translateX(calc(-50% - 11px))}}
@media(max-width:650px){.brand-carousel .brand-logos>li{flex-basis:180px;width:180px}}
@media(prefers-reduced-motion:reduce){.brand-carousel{overflow-x:auto}.brand-experience .brand-carousel .brand-logos{animation:none;transform:none}.brand-carousel .brand-duplicate{display:none}}

.work-tile.work-tile-studio{background-image:url("assets/spar-studio-creative.webp");background-size:cover;background-position:center!important}

/* A compact editorial collage shows a consistent personality across contexts. */
.primary-offers{align-items:start}
.personality-collage{margin:0 0 32px;min-width:0}
.personality-frames{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:9px;height:420px}
.personality-frames img{width:100%;height:100%;min-height:0;object-fit:cover;border-radius:10px;border:1px solid #ffffff1c}
.personality-frames .personality-main{grid-row:1/4;object-position:50% 45%}
.personality-lifestyle{object-position:50% 43%}
.personality-podcast{object-position:50% 40%}
.personality-expression{object-position:50% 31%}
.personality-collage figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:15px;font-size:12px;line-height:1.5;color:#bfbfbf}
.personality-collage figcaption strong{color:var(--green);font-weight:700}
@media(min-width:651px) and (max-width:1000px){.personality-frames{height:340px}}
@media(max-width:650px){.personality-frames{height:360px;gap:7px}.personality-collage{margin-bottom:28px}}
@media(max-width:360px){.personality-frames{height:310px}}

/* Preserve the supplied four-panel composition; the play marks are artwork. */
.video-creative-collage{margin:0 0 32px;min-width:0}
.video-creative-collage>img{width:100%;height:420px;object-fit:contain;background:#000;border-radius:10px}
.video-creative-collage figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:15px;font-size:12px;line-height:1.5;color:#bfbfbf}
.video-creative-collage figcaption strong{color:var(--green);font-weight:700}
@media(min-width:651px) and (max-width:1000px){.video-creative-collage>img{height:340px}}
@media(max-width:650px){.video-creative-collage{margin-bottom:28px}.video-creative-collage>img{height:auto;aspect-ratio:1448/1086}}

/* Keep the reference's cinematic montage; remove its baked-in heading and CTA. */
.presence-board{position:relative;aspect-ratio:1672/941;isolation:isolate;background:#000;overflow:hidden;border-radius:14px}
.presence-art{position:absolute;inset:0;z-index:-1}
.presence-art>img{width:100%;height:100%;object-fit:contain;clip-path:polygon(41.5% 0,100% 0,100% 90%,0 90%,0 33%,41.5% 33%)}
.presence-copy{position:absolute;top:5%;left:3.5%;width:36%}
.presence-copy .eyebrow{font-size:clamp(10px,1vw,14px);letter-spacing:.24em;color:white;margin-bottom:14px}
.presence-copy h2{font-size:clamp(23px,2.65vw,43px);line-height:1.05;letter-spacing:-.055em}.presence-copy h2 span{white-space:nowrap}
.presence-description{font-size:clamp(11px,1.15vw,17px);color:#ddd;line-height:1.55;margin-top:12px;padding-left:14px;border-left:3px solid var(--green)}
.presence-cta{position:absolute;bottom:3%;left:2.5%;border-color:var(--green);color:var(--green);font-size:12px}
.presence-note{font-size:12px;color:var(--gray);margin-top:14px}
@media(min-width:651px) and (max-width:1000px){.presence-copy .eyebrow{margin-bottom:10px}.presence-copy h2{font-size:2.45vw}.presence-description{margin-top:10px;font-size:11px}.presence-cta{font-size:10px;padding:9px 15px}}
@media(max-width:650px){.presence-board{aspect-ratio:auto;padding:24px 18px;display:flex;flex-direction:column;gap:24px}.presence-copy{position:static;width:100%}.presence-copy h2{font-size:clamp(28px,8vw,43px)}.presence-copy .eyebrow{font-size:11px;margin-bottom:20px}.presence-description{font-size:14px;margin-top:20px}.presence-art{position:relative;inset:auto;z-index:0;aspect-ratio:1672/536;overflow:hidden}.presence-art>img{position:absolute;width:100%;height:auto;max-width:none;clip-path:none;transform:translateY(-33%)}.presence-cta{position:static;align-self:flex-start;font-size:11px;padding:12px 16px}.presence-note{font-size:11px}}

@media(max-width:650px){.presence-copy h2 span{white-space:normal}}

.presence-frame{display:none;position:absolute;background-repeat:no-repeat;border-radius:14px;box-shadow:0 4px 16px #0005;transition:transform .3s cubic-bezier(.2,.7,.2,1);transform-origin:center}
@media(min-width:651px){.presence-art.has-motion-frames>img{display:none}.presence-art.has-motion-frames .presence-frame{display:block}}
@media(prefers-reduced-motion:reduce){.presence-frame{transform:none!important;transition:none}}
/* Hosted enquiries work without a configured email application. */
.quote-card{padding:clamp(24px,4vw,44px);border:1px solid #333;border-radius:20px;background:#151515;min-width:0}
.quote-card p{line-height:1.65}.quote-card .button{white-space:normal;text-align:center}
.footer>.form-note{max-width:34rem;line-height:1.7}
@media(max-width:650px){.brand-line{flex-wrap:wrap;gap:8px 16px}.brand-line span:last-child{display:block;flex-basis:100%}.footer>.form-note{display:block;flex-basis:100%}}
/* Clear hosted-checkout reassurance beneath fixed-price purchase buttons. */
.checkout-note{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0 0;color:var(--muted,#9a9a9a);font-size:12px;line-height:1.5;text-align:center}
.checkout-note svg{color:var(--green,#20f778);flex:none}
.payment-reassurance{border:1px solid #294435;background:linear-gradient(115deg,#102018,#151515);border-radius:14px;padding:18px 22px;margin:28px 0 16px}
.payment-reassurance p{margin:0;max-width:70ch;font-size:14px;line-height:1.7;color:#c6c6c6}
.payment-reassurance strong{color:var(--green,#20f778)}
