/*
Theme Name: Carteles Copados Dark
Author: Carteles Copados
Description: Home de cartelería a medida, con trabajos reales y contacto directo.
Version: 1.5.2
Text Domain: carteles-copados
*/
:root{--bg:#09090c;--surface:#141418;--text:#f5f3fc;--muted:#a8a6b2;--purple:#8354f3;--cyan:#05c7ed;--line:#ffffff20;--font:Roboto,Arial,Helvetica,sans-serif;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--cyan);outline-offset:6px}.shell{width:min(1320px,calc(100% - 112px));margin-inline:auto}.skip{position:fixed;left:20px;top:-100px;z-index:100;padding:12px;background:var(--cyan);color:#000}.skip:focus{top:12px}.site-header{background:#09090ced;backdrop-filter:blur(14px);position:sticky;top:0;z-index:40;border-bottom:1px solid var(--line)}.admin-bar .site-header{top:32px}.header-inner{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo-crop{display:block;position:relative;width:172px;height:65px;overflow:hidden;border-radius:5px;background:transparent}.logo-crop img{position:absolute;width:290px;max-width:none;height:auto;left:-57px;top:-62px}.header-inner nav{display:flex;gap:32px;font-size:14px;font-weight:600}.header-inner nav a:hover{color:var(--cyan)}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:58px;padding:15px 26px;background:var(--purple);border:1px solid var(--purple);border-radius:5px;font-weight:700;font-size:16px;line-height:1.3;transition:background .2s,transform .2s}.button:hover{background:#986cff;transform:translateY(-2px)}.button span{font-size:25px;line-height:1}.button-small{min-height:44px;padding:11px 18px;font-size:14px;gap:22px;background:transparent;border-color:#ffffff50}.button-small:hover{border-color:var(--purple)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:5%;align-items:center;min-height:750px;padding-block:80px 92px}.eyebrow{font:600 12px/1.6 var(--font);letter-spacing:1.7px;margin:0 0 30px}.status-dot{display:inline-block;width:7px;height:7px;background:var(--cyan);border-radius:50%;margin-right:8px;box-shadow:0 0 13px #05c7ed70}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(60px,6.55vw,98px);line-height:.99;font-weight:900;letter-spacing:-5px;margin-bottom:28px}h1>span{color:var(--cyan)}.hero-description{max-width:480px;font-size:18px;line-height:1.7;color:#b8b5c3;margin-bottom:30px}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.text-link{display:inline-flex;gap:14px;align-items:center;font-size:14px;font-weight:600;line-height:1.4;border-bottom:1px solid #ffffff55;padding-block:6px}.text-link:hover{color:var(--cyan);border-color:var(--cyan)}.hero-note{display:flex;align-items:center;gap:16px;margin-top:46px;color:var(--muted);font-size:13px;line-height:1.5}.hero-note strong{font-weight:400;color:#d3d0dc}.mini-star{font-size:44px;color:var(--purple);line-height:1}.hero-visual{height:570px;position:relative;padding:12px 0 0 18px}.hero-image{height:100%;width:100%;object-fit:cover;object-position:center;border-radius:4px;filter:brightness(.81)}.image-outline{position:absolute;inset:0 16px 18px 0;border:1px solid #8354f399;border-radius:4px;transform:rotate(-4deg);z-index:-1}.image-label{position:absolute;bottom:24px;left:42px;font-size:11px;letter-spacing:2px;background:#09090cd9;padding:8px 12px}.round-stamp{position:absolute;right:-22px;top:-25px;background:var(--cyan);color:#071012;width:124px;height:124px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15;font-size:14px;letter-spacing:.6px;transform:rotate(12deg);font-weight:700}.round-stamp b{font-size:12px;margin-top:4px}.floating-tag{position:absolute;left:-34px;bottom:92px;padding:18px 24px;background:#19141ff0;border:1px solid #ad82ff66;backdrop-filter:blur(10px);border-radius:4px;font-size:16px;font-weight:600;transform:rotate(-5deg)}.floating-tag span{color:var(--cyan);margin-right:12px}.service-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#121015}.service-strip .shell{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:86px;flex-wrap:wrap;padding-block:18px}.service-strip a{font-size:17px;font-weight:700}.service-strip a:hover{color:var(--cyan)}.service-strip span{color:var(--purple);font-size:26px}.services{padding-top:106px;padding-bottom:100px}.section-intro{display:grid;grid-template-columns:1fr 2fr;gap:30px;padding-bottom:72px}.section-intro>.eyebrow{padding-top:12px;color:var(--cyan)}h2{font-size:clamp(40px,4.4vw,66px);line-height:1.06;font-weight:800;letter-spacing:-2.5px;margin-bottom:25px}h2 span{color:var(--muted)}.section-intro>div>p{font-size:17px;color:var(--muted);max-width:490px;margin-bottom:0}.service{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;border-top:1px solid var(--line);padding-block:64px;scroll-margin-top:105px}.service:nth-of-type(even) .service-media{order:2}.service-media{position:relative;aspect-ratio:1/1.03;background:#17151c;overflow:hidden;border-radius:6px}.service-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-media:hover img{transform:scale(1.035)}#integral .service-media img{object-fit:cover}#backlights .service-media img{object-fit:contain;background:#131016}#gigantografias .service-media img{object-fit:cover}.photo-source{position:absolute;bottom:20px;left:20px;padding:9px 14px;background:#0a0a0de8;border:1px solid #ffffff40;border-radius:3px;display:flex;gap:32px;align-items:center;font-size:13px}.photo-source:hover{background:var(--purple)}.service-kicker{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:11px;letter-spacing:1.8px;margin-bottom:24px}.service-kicker>span{font-size:18px;color:var(--cyan);letter-spacing:0}.service-kicker p{margin:0}.service h2{font-size:clamp(34px,3.2vw,48px);line-height:1.07;letter-spacing:-1.7px;margin-bottom:15px}.service .service-tagline{font-size:19px;line-height:1.4;font-weight:500;margin-bottom:16px;color:#d9c9ff}.service-description{font-size:16px;color:var(--muted);line-height:1.75;margin-bottom:22px}.service ul{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:9px}.service li{font-size:14px;color:#d3d0da;display:flex;align-items:baseline;gap:12px;line-height:1.5}.service li:before{content:'↗';color:var(--purple);font-size:17px}.service-link{display:inline-flex;gap:35px;align-items:center;padding-block:10px;border-bottom:1px solid var(--purple);font-weight:700;font-size:14px}.service-link:hover{color:var(--cyan)}.service-link span{font-size:24px;color:var(--cyan)}.work-section{background:#121015;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:90px}.work-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:38px}.work-heading h2{margin:0}.work-heading>p{font-size:16px;color:var(--muted);margin:0 0 6px}.work-heading .eyebrow{color:var(--cyan);margin-bottom:22px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.work-card{display:block;overflow:hidden}.work-card img{width:100%;aspect-ratio:4/4.4;object-fit:cover;border-radius:4px;transition:filter .25s}.work-card:hover img{filter:brightness(1.16)}.work-card>div{padding-top:19px;display:grid;gap:4px}.work-card span{font-size:17px;font-weight:600}.work-card small{font-size:13px;color:var(--muted)}.instagram-link{margin-top:34px}.contact-section{margin-block:104px;background:var(--purple);padding:48px 54px 52px;border-radius:6px;position:relative;overflow:hidden}.contact-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.contact-top .eyebrow{margin-bottom:42px}.location{text-align:right;font-size:13px;line-height:1.6}.location span{opacity:.7}.contact-section h2{font-size:clamp(48px,6.6vw,96px);letter-spacing:-4px;line-height:1.01;margin-bottom:36px;position:relative}.contact-section h2 span{color:#d5cbfc}.contact-section h2 b{position:absolute;right:15px;top:-10px;color:var(--cyan);font-weight:400;font-size:150px}.contact-bottom{display:flex;align-items:center;justify-content:space-between;gap:50px}.contact-bottom p{font-size:16px;max-width:510px;color:#f0eaff;margin:0;line-height:1.7}.button-light{background:var(--text);border-color:var(--text);color:#17111f;white-space:nowrap}.button-light:hover{background:var(--cyan);border-color:var(--cyan)}footer{border-top:1px solid var(--line);padding-block:40px 86px;display:grid;grid-template-columns:1.2fr 1.2fr .7fr;gap:25px;align-items:center}.footer-brand{font-size:19px;line-height:1;letter-spacing:-.7px;font-weight:900;display:grid;position:relative;width:150px}.footer-brand span{font-size:24px;color:var(--purple)}.footer-brand i{position:absolute;right:0;top:8px;font-size:32px;color:var(--cyan);font-style:normal}footer p{font-size:13px;color:var(--muted);margin:0}footer>a:not(.footer-brand){font-size:14px;justify-self:end}footer small{font-size:12px;color:#757280;grid-column:1/-1;margin-top:14px}.floating-contact{position:fixed;bottom:24px;right:24px;background:var(--cyan);color:#05232b;display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:40px;box-shadow:0 6px 30px #0008;z-index:35;font-size:14px;font-weight:700}.floating-contact:hover{background:#77eaff}.menu-toggle{background:none;color:white;border:1px solid var(--line);border-radius:4px;width:46px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-toggle span{height:2px;width:20px;background:currentColor}
@media(min-width:1600px){.hero{min-height:800px}.hero-visual{height:610px}}@media(max-width:1100px){.shell{width:calc(100% - 64px)}.header-inner nav{gap:20px}.hero{min-height:680px;gap:6%;padding-block:65px}.hero-visual{height:490px}h1{font-size:70px;letter-spacing:-4px}.hero-actions{gap:15px}.hero-actions .text-link{font-size:13px}.service-strip .shell{gap:16px}.service-strip a{font-size:14px}.service-strip span{font-size:19px}.service{gap:6%}.service h2{font-size:38px}.contact-bottom{gap:24px}.contact-section{padding:38px}.contact-section h2 b{font-size:110px}.round-stamp{right:-12px;width:106px;height:106px;font-size:12px}}
@media(max-width:800px){html{scroll-padding-top:90px}.shell{width:calc(100% - 40px)}.header-inner{height:80px;gap:14px}.logo-crop{width:141px;height:54px}.logo-crop img{width:240px;left:-48px;top:-51px}.header-cta{margin-left:auto;font-size:13px;padding:10px 13px;gap:10px}.header-cta span{font-size:19px}.menu-toggle{display:flex}.header-inner nav{display:none;position:absolute;left:0;right:0;top:80px;padding:24px;background:#141118;border-bottom:1px solid var(--line);flex-direction:column;gap:24px;font-size:16px}.header-inner nav.is-open{display:flex}.hero{grid-template-columns:1fr;padding-top:48px;padding-bottom:55px;gap:48px}.hero-copy{max-width:660px}h1{font-size:clamp(59px,10vw,80px);letter-spacing:-3.5px}.eyebrow{font-size:11px;letter-spacing:1.3px;margin-bottom:24px}.hero-description{max-width:540px;font-size:17px}.hero-note{margin-top:28px}.hero-visual{height:560px;width:92%;justify-self:center}.floating-tag{left:-15px}.service-strip .shell{justify-content:center;gap:14px 18px;min-height:90px}.service-strip a{font-size:13px}.service-strip span{font-size:16px}.section-intro{grid-template-columns:1fr;gap:3px;padding-bottom:40px}.services{padding-top:60px;padding-bottom:42px}h2{font-size:46px;letter-spacing:-2px}.service{grid-template-columns:1fr;gap:30px;padding-block:42px}.service:nth-of-type(even) .service-media{order:0}.service-media{aspect-ratio:1.15/1}.service-content{padding:0 4px}.service-kicker{margin-bottom:16px}.service h2{font-size:40px}.service-description{max-width:650px}.service li{font-size:15px}.work-section{padding-block:60px}.work-heading{display:block}.work-heading>p{margin-top:24px}.work-grid{gap:25px;grid-template-columns:1fr}.work-card{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;align-items:center}.work-card img{aspect-ratio:1}.work-card>div{padding:0}.contact-section{margin-block:60px;padding:30px 25px}.contact-top .eyebrow{max-width:180px;margin-bottom:28px}.contact-section h2{font-size:clamp(43px,8vw,65px);letter-spacing:-2px}.contact-section h2 b{font-size:65px;right:0;top:4px}.contact-bottom{align-items:flex-start;flex-direction:column;gap:24px}.contact-bottom p{font-size:16px}.contact-top .location{font-size:12px}footer{grid-template-columns:1fr 1fr;padding-bottom:100px}footer>a:not(.footer-brand){justify-self:start}footer p{text-align:right}.floating-contact{bottom:18px;right:18px;padding:13px 17px}}
@media(max-width:420px){.header-cta{display:none}.menu-toggle{margin-left:auto}.hero-visual{height:440px}.round-stamp{width:96px;height:96px;top:-13px}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.hero-description{font-size:16px}.floating-tag{font-size:14px;padding:15px 17px}.image-label{font-size:9px;letter-spacing:1px;left:32px}.service-strip span{display:none}.work-card{display:block}.work-card>div{padding-top:16px}.contact-section h2 b{display:none}.contact-top{gap:10px}.contact-section h2{font-size:43px}.button-light{font-size:14px;gap:15px;padding:16px 19px}.contact-top .eyebrow{font-size:10px}.hero .eyebrow{font-size:10px;letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Typography and the logo without a colored panel. */
@font-face{font-family:Roboto;src:url("assets/fonts/roboto-400.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Roboto;src:url("assets/fonts/roboto-500.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Roboto;src:url("assets/fonts/roboto-600.ttf") format("truetype");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Roboto;src:url("assets/fonts/roboto-700.ttf") format("truetype");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Roboto;src:url("assets/fonts/roboto-800.ttf") format("truetype");font-style:normal;font-weight:800;font-display:swap}
@font-face{font-family:Roboto;src:url("assets/fonts/roboto-900.ttf") format("truetype");font-style:normal;font-weight:900;font-display:swap}
@font-face{font-family:"Funnel Display";src:url("assets/fonts/funnel-display-variable.ttf") format("truetype");font-style:normal;font-weight:300 800;font-display:swap}
h1,h2,h3,h4{font-family:"Funnel Display",Arial,Helvetica,sans-serif}
.logo-crop{width:184px;height:76px;background:transparent;border-radius:0;isolation:auto}
.logo-crop img{width:245px;height:auto;max-width:none;left:-30px;top:-45px;mix-blend-mode:screen}
.brand,.footer-brand{mix-blend-mode:screen;transform-origin:center}
footer .footer-brand{width:184px;display:block}
footer .footer-brand span{font-size:inherit}
@media(max-width:800px){.logo-crop{width:150px;height:63px}.logo-crop img{width:200px;left:-25px;top:-37px}footer .footer-brand{width:150px}}
@keyframes cc-logo-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-3px) rotate(1deg)}}
@keyframes cc-arrive{from{opacity:.25;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes cc-light-breathe{0%,100%{box-shadow:0 0 7px #05c7ed50}50%{box-shadow:0 0 17px #05c7edcc}}
@media(prefers-reduced-motion:no-preference){.brand{animation:cc-logo-float 5s ease-in-out infinite}.hero-copy h1{animation:cc-arrive .85s ease-out both}.hero-description{animation:cc-arrive .85s .15s ease-out both}.hero-visual{animation:cc-arrive 1s .2s ease-out both}.status-dot{animation:cc-light-breathe 3s ease-in-out infinite}.cc-reveal.is-visible{animation:cc-arrive .75s cubic-bezier(.2,.7,.3,1) both}.button:active{transform:translateY(0) scale(.98)}}

.hero h1{font-size:clamp(48px,4.8vw,72px);line-height:1.06;letter-spacing:-2.6px}.service h2 a{display:block;width:100%}.service h2 a:hover{color:var(--cyan)}@media(max-width:800px){.hero h1{font-size:clamp(43px,7.7vw,66px);letter-spacing:-1.8px}}

/* WhatsApp contact actions */
.whatsapp-icon{flex-shrink:0;width:24px;height:24px}.button-whatsapp,.floating-contact{background:#25d366;color:#072b16}.button-whatsapp:hover,.floating-contact:hover{background:#51e489;color:#072b16}.header-inner nav .nav-whatsapp{display:inline-flex;align-items:center;gap:8px;color:#25d366}.nav-whatsapp .whatsapp-icon{width:20px;height:20px}.header-inner nav .nav-whatsapp:hover{color:#51e489}

/* Crossed service ribbons and scroll-lit neon. */
main{overflow:clip}.hero{position:relative;isolation:isolate}.hero:before{content:"";position:absolute;inset:-60px -15vw -90px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 85% 38%,#ab25ed20,transparent 48%),radial-gradient(ellipse at 8% 70%,#05c7ed12,transparent 45%)}
.hero h1>span{color:#a4f4ff;text-shadow:0 0 2px #fff,0 0 19px #05c7ed75,0 0 55px #05c7ed30}.image-outline{border:2px solid #af79ff;box-shadow:0 0 9px #8354f3,0 0 35px #8354f34d,inset 0 0 14px #8354f330}.floating-tag{box-shadow:0 0 23px #af55ef30}.mini-star{filter:drop-shadow(0 0 9px #8354f3)}
.service-ribbons{height:300px;position:relative;isolation:isolate;margin-block:10px 8px;overflow:clip;display:flex;align-items:center}.ribbon{position:absolute;left:-8%;width:116%;padding:18px 0;transform-origin:center;overflow:hidden;border-block:1px solid #ffffff60}.ribbon-cyan{background:#05c7ed;color:#041b20;transform:rotate(-5deg);z-index:2;box-shadow:0 0 30px #05c7ed35}.ribbon-purple{background:#8b4cf3;color:white;transform:rotate(5deg);z-index:1;box-shadow:0 0 36px #a04fff40}.ribbon-track{display:flex;width:max-content;transform:translate3d(calc(-33.333% + var(--ribbon-shift,0px)),0,0)}.ribbon-group{display:flex;align-items:center;gap:32px;padding-right:32px;flex-shrink:0;white-space:nowrap;font-family:"Funnel Display",Arial,sans-serif;font-size:clamp(21px,2.45vw,38px);font-weight:900;line-height:1.25;letter-spacing:-.8px}.ribbon-group b{font-size:40px;font-weight:400}.ribbon a:hover{text-decoration:underline;text-underline-offset:6px}.ribbon a:focus-visible{outline-color:#061a20;outline-offset:4px}
.services{padding-top:70px}#neon{position:relative;isolation:isolate;border-top-color:#f254cd70}#neon:before{content:"";position:absolute;inset:0 -8vw;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 25% 50%,#e53bc723,transparent 62%),radial-gradient(ellipse at 90% 60%,#05c7ed10,transparent 50%)}#neon h2{color:#ffcbf6;text-shadow:0 0 3px #fff,0 0 16px #ff4dd2,0 0 46px #f130b76b}#neon .service-media{border:2px solid #f3a1e5;box-shadow:0 0 8px #f252cc,0 0 28px #e342bc44;transition:box-shadow .8s,border-color .8s}#neon.is-visible .service-media{border-color:#ffe4fa;box-shadow:0 0 12px #ff76df,0 0 38px #f34cbe80,0 0 80px #de3aaa30}#neon .service-tagline{color:#f2b4e2}#neon .service-kicker>span,#neon .service-link span{color:#ff8ddc}.contact-section{background:radial-gradient(ellipse at 95% 0,#8527a333,transparent 65%),#131018;border:1px solid #c384ff;box-shadow:0 0 12px #8354f344,inset 0 0 45px #8354f312}.contact-section h2 span{color:#e3c7ff;text-shadow:0 0 18px #a74bdb99,0 0 44px #994be54d}.contact-section h2 b{filter:drop-shadow(0 0 15px #05c7ed88)}.button:not(.button-whatsapp):hover{box-shadow:0 0 24px #8354f350}.button-whatsapp{border-color:#25d366}
@media(max-width:800px){.service-ribbons{height:220px;margin-block:15px}.ribbon{padding-block:16px;left:-12%;width:124%}.ribbon-cyan{transform:rotate(-8deg)}.ribbon-purple{transform:rotate(8deg)}.ribbon-group{gap:22px;padding-right:22px;font-size:25px}.ribbon-group b{font-size:28px}.services{padding-top:38px}#neon:before{inset:0 -20px}.hero h1>span{text-shadow:0 0 15px #05c7ed65}}
@media(prefers-reduced-motion:reduce){.ribbon-track{transform:translate3d(-33.333%,0,0)}}

/* Dedicated service pages. */
.service-details{display:flex;align-items:center;justify-content:space-between;max-width:320px;margin:12px 0;color:var(--cyan);font-weight:700}.service-details:hover{text-decoration:underline}.service-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center;padding-block:65px 85px}.breadcrumb{display:inline-block;margin-bottom:38px;font-size:14px;color:var(--muted)}.breadcrumb:hover{color:var(--cyan)}.service-hero .eyebrow{color:var(--cyan);margin-bottom:20px}.service-hero h1{font-size:clamp(48px,5.4vw,82px);letter-spacing:-2.8px;line-height:1.05;color:#bcf5ff;text-shadow:0 0 24px #05c7ed55;overflow-wrap:anywhere}.service-lead{font-size:23px;line-height:1.4;color:#dbc5ff}.service-hero .hero-description{font-size:17px}.service-hero-media{position:relative;border:1px solid #ad79ff;border-radius:8px;box-shadow:0 0 35px #8354f338;overflow:hidden}.service-hero-media>img{width:100%;aspect-ratio:1;object-fit:cover}.service-page-neon .service-hero h1{color:#ffc4ef;text-shadow:0 0 20px #fa4acd80}.service-page-neon .service-hero-media{border-color:#fface8;box-shadow:0 0 12px #ee49b95c,0 0 45px #f34cbe42}.service-body{display:grid;grid-template-columns:1fr 1.6fr;gap:10%;padding-block:60px 80px;border-block:1px solid var(--line)}.service-body aside{color:var(--muted)}.service-body aside .eyebrow{color:var(--cyan)}.service-body ul{padding-left:20px;display:grid;gap:16px;margin-bottom:38px}.service-body li::marker{color:var(--purple)}.service-body strong{font-weight:500;color:var(--text)}.service-editorial h2{font-size:clamp(28px,2.7vw,40px);letter-spacing:-1px;line-height:1.2;margin:40px 0 16px}.service-editorial h2:first-child{margin-top:0}.service-editorial p{color:var(--muted);line-height:1.85;margin:0}.service-process{padding-block:80px}.service-process>.eyebrow{color:var(--cyan)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:44px}.process-grid>div{border-top:1px solid #8354f380;padding-top:24px}.process-grid span{font-size:28px;color:var(--cyan)}.process-grid h3{font-size:24px;line-height:1.3;margin:18px 0 12px}.process-grid p{color:var(--muted);font-size:15px}.service-faq{max-width:920px;padding-block:20px 30px}.service-faq h2{font-size:clamp(32px,4vw,48px)}.service-faq details{border-bottom:1px solid var(--line);padding-block:22px}.service-faq summary{font-size:18px;cursor:pointer}.service-faq summary::marker{color:var(--cyan)}.service-faq details p{color:var(--muted);margin:18px 0 0;max-width:730px}.related-services{margin-block:0 80px}.related-services>a{display:flex;justify-content:space-between;padding-block:20px;border-bottom:1px solid var(--line);font-size:clamp(22px,3vw,36px);font-weight:700}.related-services>a:hover{color:var(--cyan)}.related-services>a span{color:var(--purple)}
@media(max-width:800px){.service-hero{grid-template-columns:1fr;gap:36px;padding-block:38px 55px}.service-hero h1{font-size:clamp(44px,9vw,65px);letter-spacing:-2px}.service-hero-media{max-width:600px;width:100%}.service-body{grid-template-columns:1fr;gap:30px;padding-block:36px}.process-grid{grid-template-columns:1fr;gap:20px}.service-process{padding-block:50px}.service-body aside{border-bottom:1px solid var(--line);padding-bottom:18px}.service-page .contact-section h2{font-size:clamp(38px,7.6vw,65px)}}

/* Funnel Display Medium across page and section headings. */
h1,h2,h3,h4,h5,h6,.ribbon-group{font-family:"Funnel Display",Arial,Helvetica,sans-serif;font-weight:500}.related-services>a{font-family:"Funnel Display",Arial,Helvetica,sans-serif;font-weight:500}

/* Shared navigation with all service pages. */
.header-inner nav{align-items:center}.header-inner nav>a{white-space:nowrap}.header-inner nav a[aria-current="page"],.has-current-service{color:var(--cyan)}.nav-services{position:relative}.nav-services summary{display:flex;align-items:center;gap:9px;list-style:none;cursor:pointer;padding-block:14px;font-weight:600}.nav-services summary::-webkit-details-marker{display:none}.nav-services summary:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.nav-services summary:hover{color:var(--cyan)}.nav-services summary>span{font-size:20px;line-height:1;transition:transform .2s}.nav-services[open] summary>span{transform:rotate(180deg)}.services-dropdown{position:absolute;left:-22px;top:100%;min-width:290px;padding:12px;background:#141118;border:1px solid #8354f37a;border-radius:8px;box-shadow:0 18px 45px #0009,0 0 22px #8354f31f;z-index:45}.services-dropdown>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 12px;border-radius:4px;font-size:14px}.services-dropdown>a:hover,.services-dropdown>a[aria-current="page"]{background:#8354f31f}.services-dropdown>a span{color:var(--cyan)}.services-dropdown .all-services{border-top:1px solid var(--line);border-radius:0;margin-top:6px;font-size:12px;color:var(--muted)}
@media(max-width:1100px){.header-cta{display:none}}
@media(max-width:800px){.header-inner nav{align-items:stretch;max-height:calc(100dvh - 112px);overflow-y:auto;gap:8px}.header-inner nav>a{padding:12px 0}.nav-services summary{justify-content:space-between;padding-block:12px}.services-dropdown{position:static;min-width:0;width:100%;margin:4px 0 8px;padding:6px;background:#1a1521;box-shadow:none;border-color:#8354f345}.services-dropdown>a{font-size:15px;padding:13px 10px}.menu-toggle{margin-left:auto}}

/* Offset neon frame on every project photo. */
.neon-photo{position:relative;isolation:isolate;padding:12px 0 0 18px;overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}.neon-photo:before{content:"";position:absolute;inset:0 16px 18px 0;border:2px solid #af79ff;border-radius:4px;transform:rotate(-4deg);box-shadow:0 0 9px #8354f3,0 0 35px #8354f34d,inset 0 0 14px #8354f330;pointer-events:none;z-index:-1}.neon-photo>img{position:relative;border-radius:4px}.service-media.neon-photo:hover img{transform:none}.service-hero-media.neon-photo,#neon .service-media.neon-photo,#neon.is-visible .service-media.neon-photo,.service-page-neon .service-hero-media.neon-photo{border:0;box-shadow:none;overflow:visible}.work-card{overflow:visible}.work-photo{display:block;width:100%;aspect-ratio:4/4.4}.work-photo>img{height:100%;width:100%;object-fit:cover;aspect-ratio:auto}.work-grid{gap:32px}.work-card>div{padding-top:24px}
@media(max-width:800px){.neon-photo{padding:10px 0 0 14px}.neon-photo:before{inset:0 12px 14px 0;transform:rotate(-3deg)}.work-photo{aspect-ratio:1}.work-card>div{padding-top:0}.work-grid{gap:32px}}
@media(max-width:420px){.work-card>div{padding-top:22px}}

/* Alternate the frame direction and image offset throughout the site. */
.neon-photo{--photo-top:12px;--photo-right:0px;--photo-bottom:0px;--photo-left:18px;--frame-top:0px;--frame-right:16px;--frame-bottom:18px;--frame-left:0px;--frame-angle:-4deg;padding:var(--photo-top) var(--photo-right) var(--photo-bottom) var(--photo-left)}.neon-photo:before{inset:var(--frame-top) var(--frame-right) var(--frame-bottom) var(--frame-left);transform:rotate(var(--frame-angle))}
.service:nth-of-type(even) .neon-photo,.work-card:nth-child(2) .neon-photo,.service-page-corporeos .neon-photo,.service-page-gigantografias .neon-photo{--photo-right:18px;--photo-left:0px;--frame-right:0px;--frame-left:16px;--frame-angle:4deg}
.service:nth-of-type(3) .neon-photo,.work-card:nth-child(3) .neon-photo,.service-page-backlights .neon-photo{--photo-top:0px;--photo-bottom:12px;--frame-top:18px;--frame-bottom:0px;--frame-angle:-3deg}
.service:nth-of-type(5) .neon-photo,.service-page-neon .neon-photo{--photo-top:0px;--photo-right:18px;--photo-bottom:12px;--photo-left:0px;--frame-top:18px;--frame-right:0px;--frame-bottom:0px;--frame-left:16px;--frame-angle:3deg}
@media(max-width:800px){.neon-photo{padding:calc(var(--photo-top)*.78) calc(var(--photo-right)*.78) calc(var(--photo-bottom)*.78) calc(var(--photo-left)*.78)}.neon-photo:before{inset:calc(var(--frame-top)*.78) calc(var(--frame-right)*.78) calc(var(--frame-bottom)*.78) calc(var(--frame-left)*.78);transform:rotate(var(--frame-angle))}}

/* Logo without a colored plate or black matte in either placement. */
.brand,.footer-brand,.logo-crop{background:transparent!important;box-shadow:none;border:0;mix-blend-mode:normal}.logo-crop img{mix-blend-mode:normal;filter:url(#cc-logo-alpha)}

/* Translucent glass header, with a transparent logo. */
.site-header{background:rgba(15,12,22,.38);-webkit-backdrop-filter:blur(22px) saturate(145%);backdrop-filter:blur(22px) saturate(145%);border-bottom:1px solid #ffffff1a;box-shadow:0 8px 28px #00000012}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-header{background:rgba(15,12,22,.88)}}

/* Ambient neon behind the content, never over the photography or copy. */
body{isolation:isolate}.ambient-neon{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 0% 25%,#00c9ee1b,transparent 42%),radial-gradient(ellipse at 100% 80%,#ab3ff321,transparent 46%)}.neon-tube{position:absolute;display:block;width:3px;height:45vh;min-height:240px;border-radius:99px;opacity:.72}.tube-cyan{left:3%;top:8%;background:#bcfbff;transform:rotate(27deg);box-shadow:0 0 7px #05c7ed,0 0 22px #05c7ed,0 0 65px 10px #05c7ed55,0 0 130px 35px #05c7ed20}.tube-purple{right:2%;top:48%;background:#efd7ff;transform:rotate(-32deg);box-shadow:0 0 7px #b270ff,0 0 24px #9d4bff,0 0 70px 12px #a13ef355,0 0 140px 40px #a13ef322}.neon-orbit{position:absolute;width:330px;height:330px;left:-245px;top:66%;border:2px solid #ffade7;border-radius:50%;opacity:.48;box-shadow:0 0 10px #ff44ba,0 0 40px #ff44ba44,inset 0 0 25px #ff44ba33}.work-section{background:#121015c7}.work-photo{min-width:0}.work-card>div{display:grid;gap:5px}.work-card small{display:block}.work-photo>img{display:block;min-width:0}
@keyframes cc-ambient-drift{from{translate:0 -18px}to{translate:0 26px}}
@media(prefers-reduced-motion:no-preference){.neon-tube,.neon-orbit{animation:cc-ambient-drift 12s ease-in-out infinite alternate}.tube-purple{animation-delay:-7s;animation-duration:16s}.neon-orbit{animation-delay:-4s;animation-duration:18s}}
@media(max-width:800px){.neon-tube{opacity:.4;width:2px}.tube-cyan{left:-3%;height:32vh}.tube-purple{right:-5%;height:35vh}.neon-orbit{left:-290px;opacity:.3}}
