@font-face{font-family:Inter Tight;src:url('assets/inter-tight-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter Tight;src:url('assets/inter-tight-extrabold.woff2') format('woff2');font-style:normal;font-weight:700 900;font-display:swap}
:root{--paper:#f5f4f0;--ink:#111;--red:#e50925;--line:#9b9a96;--unit:calc(100vw / 984);--gutter:4.27vw;color:var(--ink);background:var(--paper);font-family:Inter Tight,Arial,Helvetica,sans-serif;font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:90px}
*{box-sizing:border-box}body{margin:0}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--red);outline-offset:5px}button.button--red:focus-visible,.contact a:focus-visible{outline-color:var(--ink)}h1,h2,h3,p,figure{margin:0}h1,h2{font-weight:900;letter-spacing:-.035em}button{border:0}svg{display:block;width:100%;height:100%}::selection{background:var(--red);color:#fff}.skip-link{position:fixed;z-index:100;top:10px;left:10px;padding:12px 20px;background:var(--ink);color:#fff;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.header{height:5.04vw;min-height:64px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #8c8b87;position:relative;z-index:20;background:var(--paper)}.wordmark{font-size:4.07vw;font-weight:900;letter-spacing:-.045em;line-height:1;display:block;transform:scaleX(1.2);transform-origin:left center}.desktop-nav{display:flex;align-items:center;gap:3.2vw;font-size:1.3vw}.desktop-nav>a{position:relative;padding:8px 0}.desktop-nav>a::after{content:'';height:1px;position:absolute;bottom:1px;left:0;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav>a:hover::after{transform:scaleX(1)}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.4em;padding:.82em 1.3em;min-height:44px;font-size:1.44vw;line-height:1;white-space:nowrap;transition:background .2s,transform .2s;color:var(--paper);border:1px solid transparent}.button span{display:inline-block;transition:transform .2s;font-size:1.1em}.button:hover span{transform:translate(2px,-2px)}.button:active{transform:translateY(1px)}.button--black{background:var(--ink)}.button--black:hover{background:#333}.button--red{background:var(--red);color:#fff}.button--red:hover{background:#bb0920}.button--white{background:var(--paper);color:var(--ink)}.button--white:hover{background:#fff}.header .button{font-size:1.3vw;min-height:34px;padding:.72em 1em;gap:.65em}.menu-toggle,.mobile-nav{display:none}
.hero{height:46.65vw;position:relative;overflow:hidden;background:var(--paper)}.hero-copy{position:relative;padding:3.25vw 0 0 var(--gutter);z-index:2;width:51%;pointer-events:none}.hero-copy a,.hero-copy button{pointer-events:auto}.eyebrow,.micro{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;font-weight:500}.eyebrow{font-size:.89vw;letter-spacing:.23em;line-height:1.5}.hero h1{font-size:9.85vw;line-height:.83;letter-spacing:-.04em;margin-top:1.27vw}.hero h1 span{color:var(--red)}.hero-description{font-size:1.79vw;line-height:1.08;margin-top:2.5vw;letter-spacing:-.025em}.hero-actions{display:flex;align-items:center;gap:2.2vw;margin-top:1.7vw}.text-link{display:inline-flex;align-items:center;justify-content:center;gap:1em;background:transparent;border-bottom:1px solid #a5a4a1;padding:.45em 0;font-size:1.36vw;line-height:1.3;transition:border-color .2s}.text-link:hover{border-color:var(--red);color:var(--red)}.hero-art{position:absolute;top:0;right:0;width:57.52%;height:100%;transform-origin:65% 60%;animation:art-in 1s cubic-bezier(.2,.65,.3,1) both}.art-label{position:absolute;bottom:1.02vw;right:4vw;font:500 .75vw Arial,sans-serif;text-transform:uppercase;letter-spacing:.24em}.capability-band{height:5.15vw;display:flex;align-items:center;justify-content:center;gap:1.4vw;background:var(--ink);color:var(--paper);border-bottom:1px solid #7e7e7e;font-size:1.56vw;text-transform:uppercase;letter-spacing:.23em;white-space:nowrap}.capability-band i{font-style:normal;font-weight:400;color:#aaa}
.work{background:#111;color:var(--paper);padding:2.45vw var(--gutter) 2.1vw}.work-grid{display:grid;grid-template-columns:1.365fr 1fr;gap:1.62vw;align-items:end}.work-left{min-width:0}.work-heading{height:12.82vw}.work-heading>.eyebrow{color:#ff2340;font-size:1.02vw;letter-spacing:.2em;margin-bottom:.65vw}.work-heading-line{display:flex;align-items:flex-end;gap:1.6vw}.work h2{font-size:5.7vw;line-height:.85;letter-spacing:-.035em}.work-heading-line>p{font-size:1.22vw;line-height:1.3;max-width:20vw;padding-bottom:.15vw}.project{min-width:0}.project-image{display:block;position:relative;overflow:hidden;width:100%;padding:0;background:#222;text-align:left}.project--identity .project-image{aspect-ratio:512/290}.project--social .project-image{aspect-ratio:376/414}.project-image svg{transition:transform .65s cubic-bezier(.2,.6,.3,1)}.project-image:hover svg{transform:scale(1.028)}.project-open{position:absolute;right:14px;bottom:14px;background:var(--paper);color:var(--ink);width:40px;height:40px;display:grid;place-items:center;font-size:25px;opacity:0;transform:translateY(8px);transition:opacity .2s,transform .2s}.project-image:hover .project-open,.project-image:focus-visible .project-open{opacity:1;transform:translateY(0)}figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding-top:.8vw;font-size:1.53vw;line-height:1.2}.micro{font-size:.64vw;letter-spacing:.22em;white-space:nowrap;color:inherit}
.services{padding:1.9vw var(--gutter) 0;background:var(--paper)}.services-heading{display:grid;grid-template-columns:1.62fr 1fr;align-items:start;margin-bottom:1.8vw}.services h2{font-size:5.03vw;line-height:.85;letter-spacing:-.035em}.services h2 span{color:var(--red)}.services-heading>p{border-left:1px solid #aaa;padding:.6vw 0 .9vw 2.9vw;margin-top:1.95vw;font-size:2.08vw;line-height:1.05;letter-spacing:-.02em}.service-grid{display:grid;grid-template-columns:.96fr 1.03fr 1.13fr .93fr;border-bottom:1px solid var(--line);padding-bottom:.95vw;gap:.65vw}.service{position:relative;display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:1.65vw .7vw 1vw 0;min-height:8vw;background:transparent;border-top:1px solid var(--line);border-right:1px solid #c7c6c2;transition:background .25s}.service:last-child{border-right:0}.service:hover{background:#e9e7e3}.service-line{display:flex;gap:.38em;font-size:1.45vw;letter-spacing:-.035em;line-height:1.25;white-space:nowrap}.service-index{color:#555}.service:first-child .service-index,.service--featured .service-index,.service:last-child .service-index{color:var(--red)}.service--featured{background:#eae9e5;padding-left:1.25vw}.service--featured:hover{background:#deddd9}.service--featured .service-line{font-size:1.32vw}.service-description{font-size:1.18vw;letter-spacing:-.02em;line-height:1.28;margin-top:.45vw}.service-arrow{position:absolute;right:1.6vw;bottom:2.7vw;font-size:1.95vw;font-weight:400;line-height:1;transition:transform .2s}.service:hover .service-arrow{transform:translate(2px,-2px)}.service--featured .service-arrow{right:.8vw;bottom:2.7vw}.approach{display:grid;grid-template-columns:1fr 3.35fr;align-items:center;min-height:6.75vw;gap:2vw}.approach>.eyebrow{font-size:.74vw;letter-spacing:.21em;white-space:nowrap}.approach ol{display:grid;grid-template-columns:1.1fr 1.04fr 1fr;list-style:none;margin:0;padding:0}.approach li{display:flex;align-items:center;justify-content:space-between;padding:.8vw 2vw;border-right:1px solid var(--line);font-size:1.59vw;letter-spacing:-.02em;white-space:nowrap}.approach li:first-child{padding-left:0}.approach li:last-child{padding-right:0;border-right:0}.approach li span{font-size:1.6vw;margin-left:1.2vw}
.contact{padding:1.4vw var(--gutter) 0;background:var(--red);overflow:hidden}.contact-top{display:flex;align-items:center;justify-content:space-between}.contact h2{font-size:7.57vw;line-height:.83;letter-spacing:-.06em;color:var(--paper)}.contact-top .button{margin-right:.1vw;padding:.83em 1.35em;gap:1.7em}.site-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:1.1vw var(--gutter) 1.9vw;background:var(--red);overflow:hidden}.footer-wordmark{font-size:12vw;line-height:.78;letter-spacing:-.035em;font-weight:900;transform:scaleX(1.21);transform-origin:left center;display:block}
.dialog{border:0;background:var(--paper);color:var(--ink);padding:44px;width:min(640px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto}.dialog::backdrop{background:rgb(0 0 0 / .72);backdrop-filter:blur(8px)}.dialog[open]{animation:dialog-in .25s ease-out}.dialog-close{position:absolute;right:16px;top:12px;width:40px;height:40px;font-size:34px;background:transparent;line-height:1}.dialog-close:hover{color:var(--red)}.dialog .eyebrow{font-size:10px;color:var(--red);padding-right:25px;margin-bottom:18px}.dialog h2{font-size:clamp(36px,5vw,64px);line-height:.95;letter-spacing:-.035em}.dialog h2 span{color:var(--red)}.dialog .button,.dialog .text-link{font-size:14px}.dialog--detail p:not(.eyebrow){font-size:18px;line-height:1.5;margin:24px 0}.dialog--detail ul{padding-left:20px;margin:24px 0 30px;line-height:1.8}.dialog--project{width:min(1040px,calc(100% - 32px))}.dialog--project h2{font-size:38px;margin-bottom:24px}.dialog--project .project-disclaimer{margin-top:16px;font-size:13px;line-height:1.5;color:#555}.dialog--project #project-content{max-width:800px;margin:auto}.dialog--project #project-content.social{max-width:400px}.form-intro{margin-top:16px;font-size:18px}form{display:grid;gap:16px}label{font-size:13px;display:flex;flex-direction:column;gap:7px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}input,select,textarea{border:1px solid #bbb8b1;border-radius:0;background:#fbfaf7;color:var(--ink);padding:12px;font-size:16px;width:100%;min-width:0}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--red);outline-offset:2px}#brief-text{padding:16px;background:#eae8e3;white-space:pre-wrap;font:14px/1.6 Inter Tight,Arial,sans-serif;overflow-wrap:anywhere}.brief-actions{display:flex;gap:10px;flex-wrap:wrap}#brief-status{margin-top:12px;min-height:1.5em}
@keyframes art-in{from{opacity:0;transform:translate(16px,6px)}to{opacity:1;transform:translate(0)}}@keyframes dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
[hidden]{display:none!important}
@media(min-width:1600px){.header{min-height:80px}}
@media(max-width:760px){:root{--gutter:6vw;scroll-padding-top:30px}.header{height:76px;min-height:0}.wordmark{font-size:34px}.desktop-nav{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;padding:10px;background:transparent}.menu-toggle span{height:2px;width:24px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.mobile-nav{position:absolute;left:0;right:0;top:75px;background:var(--paper);padding:16px var(--gutter) 28px;border-bottom:1px solid var(--ink);display:none;box-shadow:0 20px 30px #0001}.mobile-nav.is-open{display:flex;flex-direction:column;gap:10px}.mobile-nav>a{font-size:30px;padding:10px 0;border-bottom:1px solid #ccc;display:flex;justify-content:space-between}.mobile-nav .button{font-size:16px;margin-top:12px}.hero{height:auto;display:flex;flex-direction:column;min-height:0}.hero-copy{padding:34px var(--gutter) 0;width:100%;pointer-events:auto}.eyebrow{font-size:9px;letter-spacing:.18em}.hero h1{font-size:clamp(64px,20vw,146px);line-height:.82;margin-top:19px;letter-spacing:-.04em}.hero-description{font-size:18px;line-height:1.25;margin-top:26px;max-width:355px}.desktop-break{display:none}.hero-actions{gap:20px;margin-top:21px;flex-wrap:wrap}.button{font-size:14px;min-height:46px;padding:14px 17px}.text-link{font-size:13px;min-height:44px}.hero-art{position:relative;top:auto;right:auto;width:100%;height:78vw;margin-top:18px}.art-label{font-size:7px;bottom:6px;right:6vw;letter-spacing:.17em}.capability-band{height:auto;min-height:76px;flex-wrap:wrap;gap:8px 12px;padding:16px var(--gutter);font-size:11px;letter-spacing:.15em}.capability-band span{white-space:nowrap}.capability-band i:nth-of-type(2){display:none}.capability-band span:nth-of-type(3)::before{content:''}.work{padding:32px var(--gutter) 34px}.work-grid{grid-template-columns:1fr;gap:28px}.work-heading{height:auto;margin-bottom:24px}.work-heading>.eyebrow{font-size:10px;margin-bottom:15px}.work h2{font-size:clamp(47px,11vw,80px);line-height:.92}.work-heading-line{align-items:flex-end;gap:14px}.work-heading-line>p{font-size:12px;max-width:135px;padding-bottom:4px;line-height:1.35}.project-open{opacity:1;transform:none;width:33px;height:33px;font-size:23px;right:10px;bottom:10px}.project--social{width:100%}.project--social .project-image{aspect-ratio:376/414}.project-image svg{object-fit:cover}figcaption{font-size:15px;padding-top:10px;gap:8px}.micro{font-size:6px;letter-spacing:.12em}.services{padding:30px var(--gutter) 0}.services-heading{display:block;margin-bottom:26px}.services h2{font-size:clamp(40px,10.1vw,72px);line-height:.88}.services-heading>p{font-size:18px;padding:0 0 0 16px;margin-top:25px;line-height:1.15}.service-grid{grid-template-columns:1fr;gap:0;padding-bottom:0}.service{min-height:84px;border-right:0;padding:24px 14px 23px 0}.service-line,.service--featured .service-line{font-size:18px;letter-spacing:-.025em;gap:8px;white-space:normal;padding-right:24px}.service--featured{padding-left:14px;min-height:123px}.service-description{font-size:14px;margin-top:10px;line-height:1.4}.service-arrow,.service--featured .service-arrow{font-size:25px;right:14px;bottom:auto;top:25px}.approach{display:block;padding:24px 0 14px}.approach>.eyebrow{font-size:9px;margin-bottom:12px}.approach ol{grid-template-columns:1fr}.approach li,.approach li:first-child,.approach li:last-child{font-size:17px;padding:16px 0;border-right:0;border-bottom:1px solid #ccc}.approach li:last-child{border-bottom:0}.approach li span{font-size:22px;margin-left:12px}.contact{padding:26px var(--gutter) 0}.contact-top{display:block}.contact h2{font-size:clamp(52px,13vw,90px);line-height:.9;letter-spacing:-.035em}.contact-top .button{margin-top:23px;font-size:14px;padding:14px 16px}.site-footer{display:block;padding:35px var(--gutter) 28px}.footer-wordmark{font-size:17.6vw;letter-spacing:-.06em;line-height:.8;transform:scaleX(1.2);transform-origin:left;width:max-content}.dialog{padding:36px 22px 26px}.dialog .eyebrow{font-size:9px}.dialog h2{font-size:43px}.dialog--project h2{font-size:30px}.form-row{grid-template-columns:1fr}.dialog--detail p:not(.eyebrow){font-size:17px}.dialog-close{right:7px;top:7px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Visual review: consistent services, legible labels and small-screen layout. */
:root{scrollbar-gutter:stable}
.hero-copy{pointer-events:auto}
.hero h1,.services h2{word-spacing:.045em}
.contact h2{letter-spacing:-.035em;word-spacing:.055em;line-height:.9}
.micro{font-size:clamp(9px,.7vw,12px);letter-spacing:.13em}
.art-label{font-size:clamp(8px,.75vw,12px)}
figcaption{flex-wrap:wrap;row-gap:6px}
.work-heading-line h2{flex-shrink:0}
.work-heading-line>p{font-size:clamp(12px,1.22vw,20px)}
.work-heading{height:auto;min-height:12.82vw;padding-bottom:1.2vw}
.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0}
.service{min-height:clamp(164px,13.5vw,240px);padding:20px 18px 46px;border-top:1px solid var(--line);border-right:1px solid #c7c6c2;isolation:isolate}
.service:first-child{padding-left:0}
.service:last-child{padding-right:0}
.service-line{font-size:clamp(14px,1.4vw,23px);white-space:normal;letter-spacing:-.02em;gap:.45em;align-items:baseline;min-height:2.5em}
.service-index,.service:first-child .service-index,.service:last-child .service-index{color:var(--red);flex-shrink:0}
.service-description{font-size:clamp(13px,1.16vw,18px);line-height:1.4;color:#545450;letter-spacing:0;margin-top:10px;max-width:24ch}
.service-arrow{top:auto;right:18px;bottom:16px;font-size:24px}
.service:hover{background:#eae9e5}
.service:focus-visible{outline-offset:-4px}
.approach>.eyebrow{font-size:clamp(9px,.74vw,12px)}
.dialog-close{width:44px;height:44px}
.dialog{overscroll-behavior:contain}
@media(min-width:761px) and (max-width:1023px){
 .desktop-nav,.header .button{font-size:14px}
 .header .button{min-height:44px}
 .hero{min-height:405px}
 .hero .eyebrow{font-size:9px;letter-spacing:.16em}
 .hero-description{font-size:16px}
 .hero-actions{flex-wrap:wrap;gap:4px 16px}
 .hero-actions .button,.hero-actions .text-link{font-size:13px}
 .hero-art{height:100%;width:55%}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service:nth-child(2){border-right:0}
 .service:nth-child(3){padding-left:0}
 .service-line{font-size:17px;min-height:0}
 .service-description{font-size:14px;max-width:32ch}
 .work-heading-line{display:block}
 .work-heading-line>p{margin-top:10px;max-width:none}
 .work-heading{padding-bottom:18px}
 .approach{grid-template-columns:1fr;padding:20px 0;gap:12px}
 .approach li{font-size:15px}
}
@media(max-width:760px){
 .hero-actions{gap:8px 18px}
 .work-heading-line{display:block}
 .work-heading-line>p{font-size:14px;margin-top:15px;max-width:none;padding-bottom:0}
 .work-heading{padding-bottom:0}
 .work h2{font-size:clamp(42px,11vw,80px)}
 .micro{font-size:9px;letter-spacing:.12em}
 .service-grid{grid-template-columns:1fr}
 .service,.service:first-child,.service:last-child{min-height:142px;padding:22px 44px 22px 0;border-right:0}
 .service-line{font-size:18px;min-height:0;padding-right:0;line-height:1.25}
 .service-description{font-size:14px;line-height:1.4;margin-top:10px;max-width:32ch}
 .service-arrow{top:24px;right:2px;bottom:auto;font-size:25px}
 .capability-band{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;text-align:center}
 .capability-band i{display:none}
 .capability-band span:nth-of-type(odd){border-right:1px solid #555;padding-right:18px}
 .contact h2{line-height:.92;word-spacing:.045em}
 .dialog h2{font-size:clamp(34px,10.7vw,43px);overflow-wrap:break-word}
 .dialog--project h2{font-size:30px}
}
@media(prefers-reduced-motion:reduce){.hero-art,.dialog[open]{animation:none}.project-image svg{transition:none}}
/* Final narrow-screen refinements verified at 320 px. */
@media(max-width:760px){
 .hero-art{height:calc(78vw + 24px)}
 .art-label{bottom:7px}
 .services h2{font-size:clamp(32px,10.1vw,72px)}
}
@media(min-width:761px) and (max-width:1023px){.contact .button{font-size:14px}}

/* Independent photographic assets, precise lettering and layered compositions. */
.hero-scene{position:absolute;inset:0 0 6%;container-type:inline-size;isolation:isolate}
.hero-red-underlay{position:absolute;left:5%;top:61%;width:27%;height:38%;background:var(--red);transform:rotate(-18deg)}
.hero-poster{position:absolute;left:34%;top:-9%;width:44%;height:92%;padding:14% 5% 5%;background:linear-gradient(115deg,#f31030,#b70520);color:#fff;transform:rotate(-8deg);box-shadow:0 1.5cqw 3cqw #0003;display:flex;flex-direction:column;justify-content:space-between}
.poster-heading{font-size:6.5cqw;line-height:.98;font-weight:400;font-style:italic;letter-spacing:-.045em}
.hero-poster>b{font-size:3.6cqw;letter-spacing:-.035em}
.hero-product-panel{position:absolute;left:10%;top:10%;width:34%;height:84%;transform:rotate(-13deg);background:#202020 url('assets/volcanic-stage.webp') center bottom / auto 72% no-repeat;box-shadow:0 2cqw 4cqw #0004}
.panel-copy{position:absolute;left:11%;top:5%;font-size:2.05cqw;line-height:1.04;color:#eee;z-index:1}.panel-copy>span{display:block;margin-top:.8em}
.product-can{display:block;width:100%;height:100%;overflow:visible}
.hero-product-panel>.product-can{position:absolute;width:154%;height:79%;left:-28%;bottom:0;filter:drop-shadow(1.5cqw 1cqw 1.1cqw #0008)}
.hero-feed{position:absolute;left:68%;top:11%;width:35%;height:88%;padding:3%;transform:rotate(11deg);background:#f4f3ef;box-shadow:0 1.4cqw 2.5cqw #0003;container-type:inline-size;color:#111}
.feed-head{display:flex;align-items:center;justify-content:space-between;padding:8% 2% 11%;font-size:10cqw;line-height:1}.feed-head>b{font-weight:900;letter-spacing:-.035em}.feed-head>span{font-size:10cqw;font-weight:400}
.feed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4%;height:79%;align-content:start}
.feed-tile{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;aspect-ratio:.8;background:#222;color:#f5f4f0}
.feed-tile>span{font-size:4.05cqw;line-height:1.1;padding:12%;width:100%;text-align:left;letter-spacing:-.025em}.feed-tile>b{font-size:5.3cqw;letter-spacing:-.035em}
.tile-foil{background:#a80014 url('assets/red-foil.webp') center / cover}.tile-foil-alt{background-position:80% 80%;background-size:200%}
.tile-stone{background:#111 url('assets/volcanic-stage.webp') 20% 70% / auto 145%}
.tile-red{background:var(--red)}.tile-ink{background:#171717}.tile-paper{background:#e9e8e4;color:#111}
.tile-product{background:linear-gradient(130deg,#343434,#050505)}.tile-product>.product-can{position:absolute;width:160%;height:140%;max-width:none;transform:rotate(19deg);bottom:-21%;left:-29%}.tile-detail>.product-can{width:240%;height:220%;bottom:-100%;left:-70%;transform:rotate(-23deg)}
.hero-feed .feed-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2%;height:81%}.hero-feed .feed-tile{aspect-ratio:1}.hero-feed .feed-tile:nth-child(9){display:none}.hero-feed .feed-tile>span{font-size:6cqw}.hero-feed .feed-tile>b{font-size:8cqw}
.project-image{overflow:visible;background:transparent;isolation:isolate}
.project-scene{display:block;position:relative;width:100%;height:100%;container-type:inline-size;isolation:isolate}
.project-image .product-can,.project-image:hover .product-can{transform:none;transition:none}
.project-image .tile-product>.product-can,.project-image:hover .tile-product>.product-can{transform:rotate(19deg)}
.project-image .tile-detail>.product-can,.project-image:hover .tile-detail>.product-can{transform:rotate(-23deg)}
.identity-backdrop{position:absolute;inset:0;background:#222 url('assets/volcanic-stage.webp') center / cover}
.identity-product{position:absolute;left:6%;bottom:3%;height:111%;width:52%;filter:drop-shadow(1.2cqw 1.5cqw 1.5cqw #0009);transform:rotate(-3deg)}
.identity-card{position:absolute;left:61%;bottom:8%;width:29%;height:92%;padding:13% 3% 3%;background:linear-gradient(110deg,#f20a27,#b60019);color:#fff;transform:rotate(-5deg);box-shadow:1cqw 2cqw 3cqw #0005;display:flex;flex-direction:column;justify-content:space-between;text-align:left}
.identity-card>span{font-size:2.8cqw;line-height:1.12}.card-rule{display:block;margin-top:1em}.identity-card>b{font-size:2.7cqw;letter-spacing:-.035em}
.social-backdrop{position:absolute;inset:3% 0 0;background:linear-gradient(120deg,#f5f4f0,#d6d5d0)}
.social-red-sheet{position:absolute;left:7%;top:35%;width:91%;height:55%;background:var(--red);transform:rotate(16deg)}
.phone{display:block;position:absolute;left:17%;top:-2%;width:69%;height:101%;padding:9% 2.2% 7%;background:#121212;border:2px solid #777;border-radius:12% 12% 3% 3% / 7% 7% 2% 2%;box-shadow:inset 0 0 0 3px #030303,inset 0 0 0 5px #444,2.3cqw 1.5cqw 2.8cqw #0005;container-type:inline-size;overflow:hidden;color:#fff;transform:rotate(-2deg)}
.phone-speaker{position:absolute;top:3%;left:36%;width:28%;height:2%;border-radius:30px;background:#050505;box-shadow:0 1px 0 #333}.phone-home{position:absolute;bottom:2.2%;left:34%;width:32%;height:.7%;background:#aaa;border-radius:9px}.phone .feed-head{padding:2% 7% 10%;font-size:11cqw}.phone .feed-grid{height:82%;gap:1%;}.phone .feed-tile{aspect-ratio:.65}.phone .feed-tile>span{font-size:4.5cqw;padding:10%}.phone .feed-tile>b{font-size:6cqw}
.project-open{z-index:5}.project-image:focus-visible{outline-offset:9px}
#project-content{padding-top:5%;overflow:visible}#project-content .project-scene{height:auto;aspect-ratio:512/290}#project-content.social{max-width:520px;margin-inline:auto}#project-content.social .project-scene{aspect-ratio:376/414}
@media(max-width:760px){.hero-art{height:calc(83vw + 24px);margin-top:26px}.hero-scene{inset:0 2% 7% 1%}.hero-poster{top:1%;height:86%}.hero-product-panel{top:12%;height:83%;left:9%}.hero-feed{left:66%;top:15%;height:79%;width:32%}.poster-heading{font-size:6cqw}.hero-red-underlay{top:58%;height:37%}.work-heading{margin-bottom:42px}.work-grid{gap:38px}.project--social{padding-top:10px}.project-image:focus-visible{outline-offset:5px}}
/* Keep each composition's size definite and the complete feed inside its device. */
.project-image>.project-scene{position:absolute;inset:0}
.phone .feed-grid{height:auto;gap:2px}
.phone .feed-tile{aspect-ratio:.8}

/* Conversion pass: contact channels, FAQ, footer, WhatsApp and layout fixes. */
.eyebrow-region{white-space:nowrap}
.hero-poster{padding:14% 4% 17% 12%}
.poster-heading{font-size:5.3cqw}
.feed-tile.tile-long>span{-webkit-hyphens:manual;hyphens:manual}
.phone .feed-tile.tile-long>span{font-size:4cqw}
.project--identity{padding-top:8.5%}
.service{padding-bottom:18px}
.service-more{margin-top:auto;padding-top:16px;font-size:13px;line-height:24px;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:4px;color:#3a3a37}
.approach li{justify-content:flex-start}
.approach li .step-n{display:inline-grid;place-items:center;flex-shrink:0;width:1.9em;height:1.9em;margin:0 .75em 0 0;border:1px solid var(--red);border-radius:50%;color:var(--red);font-size:max(11px,.6em);font-weight:800;letter-spacing:0}
.faq{display:grid;grid-template-columns:1fr 1.9fr;gap:4vw;padding:4.2vw var(--gutter) 4.6vw;background:var(--paper);border-top:1px solid var(--line)}
.faq-heading .eyebrow{margin-bottom:1.2vw}
.faq h2{font-size:5.03vw;line-height:.85;letter-spacing:-.035em;word-spacing:.045em}.faq h2 span{color:var(--red)}
.faq-list{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:1.35vw 0;font-size:clamp(17px,1.59vw,26px);letter-spacing:-.02em;line-height:1.25;cursor:pointer;list-style:none;transition:color .2s}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';flex-shrink:0;font-size:1.3em;line-height:1;color:var(--red);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:var(--red)}
.faq summary:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.faq details p{max-width:58ch;padding:0 0 1.6vw;font-size:clamp(15px,1.16vw,18px);line-height:1.5;color:#545450}
.contact-channels{list-style:none;margin:2.4vw 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));border-top:1px solid #f594a0}
.contact-channels a{display:flex;flex-direction:column;gap:6px;height:100%;padding:1.3vw 1.5vw 1.3vw 0;color:var(--paper);border-bottom:1px solid #f594a0}
.channel-label{font:500 clamp(10px,.74vw,12px) Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.2em;opacity:.85}
.channel-value{font-size:clamp(18px,1.59vw,26px);letter-spacing:-.02em;overflow-wrap:anywhere}
.contact-channels a:hover .channel-value{text-decoration:underline;text-underline-offset:.2em}
.footer-meta{display:flex;flex-direction:column;align-items:flex-end;gap:10px;padding-bottom:.4vw;color:var(--paper);font-size:clamp(12px,.9vw,15px);line-height:1.4;text-align:right}
.footer-meta a{border-bottom:1px solid #f594a0}.footer-meta a:hover{border-color:var(--paper)}
.site-footer a:focus-visible{outline-color:var(--ink)}
body.has-wa .site-footer{padding-bottom:max(1.9vw,96px)}
.wa-float{position:fixed;right:20px;bottom:20px;z-index:30;display:inline-flex;align-items:center;gap:10px;height:56px;padding:0 22px 0 16px;border-radius:999px;background:var(--ink);color:#fff;font-size:15px;font-weight:800;box-shadow:0 10px 30px #0004;transition:transform .2s,background .2s}
.wa-float svg{width:28px;height:28px;color:#25d366}
.wa-float:hover{background:#262626;transform:translateY(-2px)}
.wa-float:focus-visible{outline:3px solid var(--red);outline-offset:3px}
#contact-form{margin-top:22px}

.dialog-channels{margin-top:14px;font-size:14px;line-height:1.5;color:#555}
.dialog-channels a{color:var(--ink);border-bottom:1px solid var(--red)}.dialog-channels a:hover{color:var(--red)}
label small{font-size:12px;color:#777}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-privacy{margin-top:-4px;font-size:12px;color:#666}
#form-submit[disabled]{opacity:.7;cursor:progress}
#result-title{margin:26px 0 10px;font-size:28px;letter-spacing:-.025em}
#result-title:focus{outline:none}
#result-text{font-size:15px;line-height:1.5}
#brief-text{margin:16px 0 0}
#form-result .brief-actions{align-items:center;margin-top:20px}
.dialog--project>.button{margin-top:22px}
@media(min-width:761px) and (max-width:1023px){
 .faq{grid-template-columns:1fr;gap:20px;padding:40px var(--gutter)}
 .faq h2{font-size:clamp(40px,7vw,64px)}
 .faq-heading .eyebrow{font-size:10px;margin-bottom:12px}
 .faq summary{padding:16px 0}
 .faq details p{padding-bottom:18px}
 .contact-channels a{padding:16px 16px 16px 0}
}
@media(max-width:760px){
 .work-heading{margin-bottom:18px}
 .service-more{padding-top:12px}
 .approach li .step-n{font-size:11px;margin:0 12px 0 0}
 .faq{grid-template-columns:1fr;gap:22px;padding:38px var(--gutter) 40px}
 .faq-heading .eyebrow{font-size:9px;margin-bottom:12px}
 .faq h2{font-size:clamp(40px,11vw,72px);line-height:.9}
 .faq summary{padding:18px 0;font-size:17px}
 .faq details p{padding-bottom:18px;font-size:15px}
 .contact-channels{grid-template-columns:1fr;margin-top:30px}
 .contact-channels a{padding:16px 0}
 .footer-meta{align-items:flex-start;margin-top:22px;text-align:left;font-size:13px}
 .wa-float{right:16px;bottom:16px;width:56px;padding:0;justify-content:center}
 .wa-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
}
@media(min-width:761px){.hero h1{font-size:9.4vw}.hero-product-panel{left:12%}}
.footer-links{display:flex;gap:18px;flex-wrap:wrap;justify-content:flex-end}
.form-privacy a{border-bottom:1px solid var(--red)}.form-privacy a:hover{color:var(--red)}
@media(max-width:760px){.footer-links{justify-content:flex-start}}
