/* Responsive layout, desktop to compact phones. */
:root{--page-max:1480px;--page-gutter:clamp(20px,4vw,64px);--header-size:88px}
html{width:100%;scroll-padding-top:calc(var(--header-size) + 20px);-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{width:100%;min-width:0;line-height:1.5}
*,*::before,*::after{box-sizing:border-box}
img,video{max-width:100%}img{display:block}button,input,textarea,select{max-width:100%}
.wrap{width:min(calc(100% - 2 * var(--page-gutter)),var(--page-max));max-width:none;padding-inline:0;margin-inline:auto}
.heroGrid,.about,.contactGrid,.sectionhead,.navrow,.footerrow,.serviceCardsGrid,.momentsGrid,.statGrid,.resultsGrid,.socialbar,.audience,.fieldrow{min-width:0}
.heroGrid>*,.about>*,.contactGrid>*,.sectionhead>*,.navrow>*,.footerrow>*,.serviceCardsGrid>*,.momentsGrid>*,.statGrid>*,.resultsGrid>*,.socialbar>*,.audience>*,.fieldrow>*{min-width:0}
p,figcaption,h2,h3,label,.commercial a,footer small{overflow-wrap:anywhere}
section{padding-block:clamp(56px,6.25vw,105px)}h2{font-size:clamp(34px,3.8vw,58px);line-height:1.12;letter-spacing:-.045em}
.navrow{height:var(--header-size);gap:24px}.logo{flex:0 0 auto}.logo img{width:176px;height:76px;object-fit:contain}.navlinks{gap:clamp(18px,2.1vw,34px);font-size:14px;white-space:nowrap}.navlinks .btn{font-size:14px}
.hero{padding-block:clamp(38px,4vw,72px) clamp(45px,5vw,80px)}.heroGrid{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(32px,5vw,82px)}
.hero h1{font-size:clamp(50px,6vw,94px);letter-spacing:-.055em;line-height:1.02;margin:24px 0}.hero p{font-size:clamp(15px,1.25vw,18px);max-width:540px;line-height:1.8}.hero .eyebrow{font-size:clamp(9px,.8vw,12px);letter-spacing:.15em;flex-wrap:wrap}
.actions{gap:12px}.actions .btn{font-size:14px;padding-inline:22px;min-height:54px}.portrait{width:100%;height:auto;aspect-ratio:4/5;max-height:700px;margin:0;min-width:0}.portrait>img{width:100%;height:100%;object-fit:cover;object-position:50% 24%;border-radius:36% 36% 18px 18px}.portrait:after,.portrait:before{border-radius:36% 36% 18px 18px}.sticker{font-size:clamp(18px,1.9vw,28px);padding:16px 20px;left:-20px;max-width:calc(100% + 10px)}.asterisk{right:-12px;font-size:clamp(60px,7vw,100px)}
.about{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,6vw,90px)}.aboutphoto{height:auto;aspect-ratio:1149/1369;max-width:600px}.aboutphoto img{width:100%;height:100%;object-fit:cover;object-position:center}.bodycopy{font-size:clamp(15px,1.15vw,17px);line-height:1.85}.sectionhead{align-items:flex-end}.sectionhead p{margin-bottom:0}
.workGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;overflow:visible;scroll-snap-type:none}.videoCard{width:100%;min-width:0}.thumb{height:auto;aspect-ratio:4/5}.cardfoot{gap:15px}.cardfoot h3{line-height:1.35;font-size:18px}.cardfoot p{line-height:1.6;font-size:12px}
.serviceCardsGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.serviceOffer{width:100%;min-width:0}.serviceVisual{height:clamp(180px,16vw,240px);flex-shrink:0}.offerContent{padding:clamp(22px,2vw,32px)}.offerContent h3{font-size:clamp(23px,1.9vw,29px);line-height:1.2}.offerContent p{font-size:15px;line-height:1.8}.offerContent .btn{min-height:50px;gap:12px;font-size:13px;white-space:normal}
.momentsGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.moment{height:auto;aspect-ratio:3/4}.momentContent{aspect-ratio:3/4}.momentBrand{aspect-ratio:3/4}.moment h3{font-size:clamp(20px,1.8vw,27px);line-height:1.2}.extraPhotos{gap:24px}.extraPhoto figcaption{line-height:1.3}
.statGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.stat{padding:clamp(20px,2.2vw,32px)}.stat strong{font-size:clamp(27px,3vw,45px);line-height:1.2}.reachHighlight{flex-wrap:wrap;gap:12px 30px}.reachHighlight>strong{font-size:clamp(35px,4vw,55px);line-height:1.15}.reachHighlight>div{font-size:clamp(18px,2vw,25px)}.audience{grid-template-columns:1.3fr 1fr 1fr}.audience strong{font-size:clamp(21px,2vw,29px)}
.contactGrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,90px)}.contactGrid h2{font-size:clamp(40px,4.5vw,64px)}.commercial{gap:16px;align-items:flex-start}.commercial>div:last-child{min-width:0}.commercial a{font-size:15px;line-height:1.6}.avatar{flex:0 0 53px}.commercial p{line-height:1.5}form{width:100%;padding:clamp(24px,2.5vw,36px)}form input,form select,form textarea{font-size:16px;min-width:0}form label{font-size:13px}form .btn{white-space:normal;line-height:1.5;gap:12px}form .privacy{font-size:12px}.footerrow{flex-wrap:wrap;gap:30px}footer small{font-size:12px;line-height:1.7;max-width:430px}.service{grid-template-columns:48px minmax(0,1fr) minmax(0,1fr) 30px}.service h3{line-height:1.25}.socialbar{grid-template-columns:1.3fr repeat(3,minmax(0,1fr))}.socialbar a{gap:12px;line-height:1.5}
body.admin-bar nav{top:32px}
@media(min-width:1700px){.heroGrid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.hero .actions{margin-block:34px}.hero h1{font-size:94px}.hero{padding-block:72px 80px}}
@media(max-width:1100px){.navlinks{gap:18px}.navlinks a{font-size:13px}.navlinks .btn{padding-inline:18px}.hero h1{font-size:clamp(48px,6vw,66px)}.heroGrid{gap:35px}.actions .btn{font-size:13px;padding-inline:17px}.serviceCardsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.serviceVisual{height:210px}.momentsGrid{gap:16px}.about,.contactGrid{gap:35px}.socialbar{grid-template-columns:1fr 1fr}.socialbar h3{grid-column:1/-1}.socialbar a:last-child{grid-column:1/-1}}
@media(max-width:980px){:root{--header-size:78px;--page-gutter:clamp(20px,4vw,38px)}.menu{display:block;min-width:44px;min-height:44px;font-size:20px}.navlinks{display:none;position:absolute;top:var(--header-size);left:0;right:0;background:#1b1b1b;padding:24px var(--page-gutter);flex-direction:column;align-items:stretch;gap:18px;max-height:calc(100dvh - var(--header-size));overflow-y:auto;box-shadow:0 16px 25px #0003}.navlinks.open{display:flex}.navlinks a{font-size:16px;min-height:40px;display:flex;align-items:center}.navlinks .btn{justify-content:center}.logo img{width:155px;height:65px}.heroGrid{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:28px}.hero h1{font-size:clamp(43px,6.3vw,61px)}.hero .actions{flex-direction:column;align-items:stretch;max-width:340px}.portrait{aspect-ratio:3/4}.sticker{left:-13px;padding:12px;font-size:19px}.hero p{font-size:15px}.about,.contactGrid{grid-template-columns:minmax(0,1fr)}.about{gap:36px}.aboutphoto{order:0;max-width:570px;width:100%;margin-inline:auto;aspect-ratio:4/4.5}.about>div:last-child{max-width:720px}.contactGrid{gap:36px}.contactGrid>div{max-width:720px}h2{font-size:clamp(34px,5vw,45px)}.workGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.workGrid .videoCard:last-child{grid-column:auto}.sectionhead{align-items:flex-start;flex-direction:column;gap:22px}.sectionhead p,.momentsIntro{max-width:650px!important}.moment figcaption{padding:50px 18px 20px}.statGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat strong{font-size:35px}.moment h3{font-size:21px}.audience{gap:24px}.reachHighlight{padding:25px}}
@media(max-width:700px){.heroGrid{grid-template-columns:minmax(0,1fr);gap:42px}.hero h1{font-size:clamp(47px,10vw,70px);max-width:600px}.hero .actions{flex-direction:row;max-width:100%}.hero .actions .btn{flex:1 1 205px}.portrait{width:min(100% - 22px,520px);margin-inline:auto;aspect-ratio:4/5;max-height:none}.hero .eyebrow{font-size:10px}.hero p{font-size:16px;max-width:600px}.sticker{font-size:clamp(18px,4.7vw,25px)}.momentsGrid{grid-template-columns:minmax(0,1fr)}.moment{aspect-ratio:4/5;max-width:560px;width:100%;margin-inline:auto}.momentContent{aspect-ratio:3/4}.momentBrand{aspect-ratio:4/5}.extraPhotos{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.extraPhoto,.extraPhoto:nth-child(-n+2){grid-column:auto;aspect-ratio:3/4}.extraPhoto:first-child{grid-column:1/-1;aspect-ratio:3/4}.extraPhoto figcaption{font-size:14px}.serviceCardsGrid{grid-template-columns:minmax(0,1fr)}.serviceVisual{height:210px}.offerContent h3{font-size:27px}.offerContent p{font-size:15px}.offerContent{padding:26px}.workGrid{grid-template-columns:minmax(0,1fr);gap:28px}.thumb{aspect-ratio:4/4.5;max-height:560px}.videoCard{max-width:560px;justify-self:center}.service{grid-template-columns:30px minmax(0,1fr) 24px;gap:12px}.service p{grid-column:2;grid-row:2}.service .arrow{grid-column:3;grid-row:1}.resultsGrid{grid-template-columns:1fr}.result strong{font-size:45px}.socialbar{grid-template-columns:1fr}.socialbar a:last-child{grid-column:auto}.socialbar a{padding:18px 20px}.audience{grid-template-columns:1fr;gap:16px}.audience>div{border-bottom:1px solid #444;padding-bottom:12px}.audience strong{font-size:26px}.stat{padding:22px 18px}.stat strong{font-size:clamp(27px,6vw,35px)}.stat span{font-size:15px}.stat small{font-size:12px}.reachHighlight>strong{font-size:clamp(34px,8.8vw,48px)}.reachHighlight>div{font-size:21px}.fieldrow{grid-template-columns:minmax(0,1fr);gap:0}.footerrow{flex-direction:column;align-items:flex-start}.contactGrid h2{font-size:clamp(39px,9vw,56px)}.commercial a{font-size:clamp(12px,3.3vw,16px)}.quote h2{font-size:clamp(35px,8vw,55px)}.quote .textlink{white-space:normal;line-height:1.8}.floating{right:14px;bottom:max(14px,env(safe-area-inset-bottom));width:50px;height:50px}.photoLabel{max-width:calc(100% - 28px);left:14px;bottom:14px;font-size:11px}.tags span{max-width:100%;overflow-wrap:anywhere}.commercialKit .btn{width:auto;max-width:100%}.textlink{white-space:normal;line-height:1.7}}
@media(max-width:400px){:root{--page-gutter:18px}.hero h1{font-size:clamp(40px,11vw,47px);letter-spacing:-.055em}.hero .eyebrow{font-size:9px;letter-spacing:.08em}.hero .actions{flex-direction:column}.hero .actions .btn{flex:auto}.sticker{font-size:18px}.statGrid{gap:12px}.stat{padding:20px 14px}.stat strong{font-size:27px}form{padding:22px 18px}.commercial{gap:10px}.avatar{flex-basis:42px;width:42px;height:42px}.offerContent{padding:23px}.reachHighlight{padding:23px}.carouselTiles{transform:scale(.9)}}
@media(max-width:782px){body.admin-bar nav{top:46px}}
@media(max-width:600px){body.admin-bar nav{top:0}}
/* Original footer: brand, identity/contact, editorial credits. */
footer .footerrow{display:grid;grid-template-columns:minmax(160px,1fr) minmax(240px,1.2fr) minmax(240px,1fr);align-items:center;gap:clamp(32px,5vw,90px)}
footer{padding-block:40px;background:#141414}footer .logo img{width:180px;height:90px;max-width:100%;object-fit:contain}footer small{font-size:12px;line-height:1.8;color:#aaa;max-width:none}footer a{color:inherit;text-decoration:none}footer a:hover{color:var(--lime)}
@media(max-width:900px){footer .footerrow{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:30px}footer .footerrow>small:last-child{grid-column:2}}
@media(max-width:650px){footer .footerrow{grid-template-columns:minmax(0,1fr);gap:25px;align-items:start}footer .footerrow>small:last-child{grid-column:auto}footer .logo img{height:70px;width:160px}footer small{font-size:12px}}
