/* Atlantic Media — fluid cinema opening and pointer interactions */
html{overflow-x:clip}body.brand-demo{overflow-x:clip}.brand-demo .wrap{width:100%;max-width:none;padding-left:clamp(20px,4vw,88px);padding-right:clamp(20px,4vw,88px)}
.brand-demo .header{position:fixed;left:24px;top:16px;width:calc(100% - 48px);max-width:none;margin:0;min-height:78px;background:#11151c99;backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%)}
.intro-film{height:100svh;min-height:560px;max-height:1200px;width:100%;position:relative;overflow:hidden;background:#0e1115}
.intro-film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.intro-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#05070b66,transparent 32%,#05070b22 50%,#05070bcc)}
.intro-word{position:absolute;left:clamp(24px,4vw,88px);bottom:140px;display:flex;flex-direction:column;gap:12px;color:#fefefe;text-shadow:0 3px 24px #0005}
.intro-word>span{font-size:10px;letter-spacing:3px;font-weight:700}.intro-word strong{font-size:clamp(45px,7.7vw,132px);letter-spacing:-.055em;line-height:1}
.accent-dot{color:#BD1F30!important}.intro-bottom{position:absolute;bottom:28px;left:clamp(24px,4vw,88px);right:clamp(24px,4vw,88px);display:flex;justify-content:space-between;align-items:center;gap:18px;color:#f5f5f5;border-top:1px solid #ffffff44;padding-top:20px}
.intro-bottom a{font-size:10px;font-weight:700;letter-spacing:1.5px;display:flex;gap:24px;align-items:center}.intro-bottom a span{font-size:24px;animation:scroll-cue 2s ease-in-out infinite}.intro-bottom p{margin:0;font-size:11px;color:#e8e8e8}.intro-bottom button{padding:9px 16px;background:#ffffff10;color:#f5f5f5;border:1px solid #ffffff55;border-radius:30px;font-size:11px;backdrop-filter:blur(12px)}
.brand-demo .hero{padding-top:120px;padding-bottom:100px;scroll-margin-top:90px;text-align:center;overflow:clip}.brand-demo .hero h1{max-width:1500px;font-size:clamp(38px,5.7vw,100px);line-height:1.08;letter-spacing:-.045em;color:#f5f5f5;margin:22px auto 30px}.brand-demo .hero h1 .headline-accent{color:#31d5a0}.brand-demo .hero-intro{font-size:clamp(15px,1.25vw,21px);color:#c6c8cc}.brand-demo .hero .button-row{display:flex;margin-top:30px}.brand-demo .hero .eyebrow{color:#d5d5d5}.brand-demo .heritage-sun{right:-80px;top:20px;width:clamp(300px,33vw,600px);height:auto;opacity:.2}
.brand-demo .discipline-bar{max-width:none;margin-inline:clamp(20px,4vw,88px);padding-inline:0;flex-wrap:wrap;justify-content:center}.brand-demo .services,.brand-demo .closing{margin-inline:clamp(12px,1.5vw,28px)}
.brand-demo .service-tabs{display:flex;flex-wrap:wrap;overflow:visible;gap:6px}.brand-demo .service-tabs button{flex:1 0 auto;padding:12px 16px;font-size:clamp(11px,.85vw,14px)}
.brand-demo .service-panel{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,6vw,120px)}.brand-demo .service-panel>div{min-width:0}.brand-demo .service-panel h3{max-width:650px;font-size:clamp(36px,3.6vw,64px)}
.brand-demo .service-preview{position:relative;display:block;height:auto;min-height:0;aspect-ratio:4/3;border-radius:24px;overflow:hidden;padding:0;background:#15191e!important;border:1px solid #ffffff35;box-shadow:0 20px 60px #0004;transition:transform .35s,border-color .35s,box-shadow .35s}
.service-preview>img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .7s cubic-bezier(.2,.65,.25,1)}
.service-preview[data-kind=social]>img,.service-preview[data-kind=flipbook]>img,.service-preview[data-kind=scan]>img{object-fit:contain;padding:12px 0 64px;background:#14191e}.service-preview[data-kind=social]>img{padding:0}
.service-preview:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000b,transparent 60%);pointer-events:none}.service-preview-caption{position:absolute;bottom:20px;left:20px;right:20px;z-index:1;padding:16px 20px;background:#14191d88;border:1px solid #ffffff40;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:15px;display:flex;flex-direction:column;gap:8px;color:#fff}.service-preview-caption .art-eyebrow{font-size:9px;letter-spacing:1.5px;color:#e8e8e8}.service-preview-caption strong{font-size:19px;line-height:1.2}
.brand-demo .work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.5vw,32px)}.brand-demo .catalog-card{position:relative;isolation:isolate;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s;background:#ffffff06}.brand-demo .catalog-card .work-card-body{transition:background .35s}.brand-demo .catalog-poster>img{transition:transform .65s cubic-bezier(.2,.65,.25,1),filter .35s}.brand-demo .work-card-foot{transition:color .3s}
@media(hover:hover) and (pointer:fine){.brand-demo .catalog-card:hover,.brand-demo .catalog-card:focus-visible{transform:translateY(-8px);border-color:#31d5a099;box-shadow:0 20px 50px #0005,0 0 28px #31d5a013}.brand-demo .catalog-card:hover .work-card-body{background:#ffffff0b}.brand-demo .catalog-card:hover .catalog-poster>img{transform:scale(1.045);filter:brightness(1.07)}.brand-demo .catalog-card:hover .work-card-foot{color:#31d5a0}.brand-demo .service-preview:hover{transform:translateY(-5px);border-color:#31d5a088;box-shadow:0 25px 65px #0006}.brand-demo .service-preview:hover>img{transform:scale(1.025)}}
.pointer-aura{position:fixed;left:0;top:0;z-index:9999;width:38px;height:38px;border:1px solid #31d5a088;border-radius:50%;pointer-events:none;opacity:0;display:grid;place-items:center;transform:translate(-100px,-100px);background:#31d5a006;transition:width .25s,height .25s,border-color .25s,background .25s,opacity .2s;will-change:transform;color:#fff;font-size:9px;font-weight:700;letter-spacing:1px}.pointer-aura.on{opacity:1}.pointer-aura.over{width:68px;height:68px;background:#18181b77;border-color:#31d5a0;backdrop-filter:blur(4px)}
.section-arrive{animation:section-arrive .7s ease-out both}@keyframes section-arrive{from{opacity:.25;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes scroll-cue{50%{transform:translateY(6px)}}
.brand-demo .booking{gap:clamp(24px,7vw,140px)}.brand-demo h2 em{color:#31d5a0}.brand-demo .eyebrow{color:#dcdcdc}.brand-demo .footer{max-width:none}
@media(min-width:1900px){.brand-demo .hero h1{font-size:100px}.brand-demo .section{padding-block:120px}.brand-demo .about-copy p,.brand-demo .service-panel p,.brand-demo .service-panel li{font-size:18px}}
@media(max-width:1199px){.brand-demo .work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-demo .header nav{gap:16px}.brand-demo .service-panel{gap:30px}}
@media(max-width:760px){.brand-demo .header{left:12px;top:10px;width:calc(100% - 24px);min-height:70px;padding:12px;gap:8px}.brand-demo .header nav.open{position:absolute;top:calc(100% + 8px);left:0;right:0;width:100%;padding:20px;gap:20px}.intro-film{min-height:550px;height:92svh;max-height:900px}.intro-film video{object-position:46% center}.intro-word{bottom:150px;left:22px;right:22px;gap:14px}.intro-word strong{font-size:clamp(40px,10vw,70px)}.intro-word>span{font-size:8px;letter-spacing:2px}.intro-bottom{left:22px;right:22px;bottom:24px;flex-wrap:wrap;row-gap:16px}.intro-bottom p{order:3;width:100%;font-size:10px}.intro-bottom a{font-size:8px;letter-spacing:1px;gap:12px}.intro-bottom button{font-size:10px;padding:9px 12px}.brand-demo .hero{padding-top:75px;padding-bottom:65px}.brand-demo .hero h1{font-size:clamp(34px,7.5vw,54px)}.brand-demo .hero .eyebrow{font-size:7px;letter-spacing:1.2px}.brand-demo .service-panel{grid-template-columns:minmax(0,1fr);gap:30px}.brand-demo .service-preview{aspect-ratio:4/3;max-height:550px}.brand-demo .service-tabs{gap:6px;flex-wrap:wrap;overflow:visible;padding:6px}.brand-demo .service-tabs button{flex:1 1 auto;padding:10px 13px;font-size:11px}.brand-demo .work-grid{grid-template-columns:minmax(0,1fr)}.brand-demo .discipline-bar{font-size:9px;gap:12px;flex-wrap:wrap}.pointer-aura{display:none}.service-preview-caption{left:14px;right:14px;bottom:14px;padding:14px}.service-preview-caption strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){.intro-bottom a span,.section-arrive{animation:none}.pointer-aura{display:none}.brand-demo .catalog-card,.brand-demo .catalog-poster>img,.brand-demo .service-preview,.service-preview>img{transition:none!important}.brand-demo .catalog-card:hover,.brand-demo .service-preview:hover{transform:none!important}}
@media print{.intro-film,.pointer-aura{display:none}.brand-demo .header{position:static}}
