/* DynamoShow — primera maqueta. Identidad DynamoAV / Cinema Studio. */
@font-face{font-family:Oswald;src:url('../fonts/Oswald.ttf') format('truetype');font-weight:200 700;font-display:swap}
@font-face{font-family:'Libre Franklin';src:url('../fonts/LibreFranklin.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--bg:#0d0d0d;--panel:#1c1c1c;--gold:#d4af37;--text:#f4f4f4;--muted:#b7b4ae;--line:rgba(244,244,244,.2)}
body,input,select,textarea,button{font-family:'Libre Franklin',sans-serif;font-weight:400;color:var(--text)}
body{background:var(--bg);font-size:16px;line-height:1.85}
h1,h2,h3,h4{font-family:Oswald,sans-serif;font-weight:400;letter-spacing:.025em;text-transform:none}
a{transition:color .2s,border-color .2s,background .2s}a:hover{color:var(--gold)}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}
[hidden]{display:none!important}
.topline{position:absolute;z-index:5;top:32px;left:46px;right:46px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.2em;color:#d0cdc4}
.group-mark{border:0;font-weight:600;letter-spacing:.15em}.group-mark span{font-weight:400;color:var(--gold);margin-left:4px}.location{font-size:9px}
#wrapper{padding:7rem 2rem 2rem;min-height:100svh;justify-content:center}
#header{max-width:960px;width:100%;gap:0}
#header>*{margin-top:0}#header>*:before{display:none}
.masthead{display:flex;align-items:center;gap:16px;color:var(--gold);font-size:10px;letter-spacing:.32em;margin-bottom:30px!important}.masthead .line{width:38px;height:1px;background:var(--gold);opacity:.7}
#header .content{border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:100%;max-width:820px}
#header .content .inner{padding:34px 24px 35px}
#header h1{font-size:clamp(58px,8.8vw,112px);line-height:1.06;letter-spacing:.005em;font-weight:500;margin:0 0 23px}
#header h1 span{color:var(--gold)}
#header .hero-title{font-size:clamp(18px,2.1vw,25px);line-height:1.5;letter-spacing:0;text-transform:none;font-weight:300;margin:0 0 18px}
#header .hero-copy{font-size:12px;letter-spacing:.02em;text-transform:none;color:#c6c3bc;line-height:1.8;margin:0}
#header nav{margin-top:30px}#header nav ul{border-color:rgba(212,175,55,.4);border-radius:3px;background:rgba(13,13,13,.25)}
#header nav ul li{border-color:rgba(212,175,55,.35)}#header nav ul li a{font-size:10px;letter-spacing:.14em;min-width:145px;height:52px;line-height:52px;padding:0 24px;font-weight:500}
#header nav ul li a:hover{background:rgba(212,175,55,.1);color:var(--gold)}#header nav ul li:last-child a{color:var(--gold)}#header nav ul li a span{padding-left:5px}
#header .hero-footnote{font-size:9px;letter-spacing:.13em;margin:24px 0 0;color:#c3bfb7;text-transform:uppercase;line-height:2}#header .hero-footnote span{color:var(--gold);padding:0 10px}
#footer{margin-top:65px;width:100%;display:flex;justify-content:space-between;max-width:1200px;font-size:8px;letter-spacing:.16em;color:#a6a199;opacity:1}
#footer .credit{letter-spacing:.04em}#footer a{border-bottom-color:#555}
#bg:after{background-image:url('../../images/operacion.webp');background-position:center 43%;transform:scale(1.03);filter:saturate(.45)}
#bg:before{background-image:linear-gradient(90deg,rgba(10,10,10,.67),rgba(10,10,10,.5) 45%,rgba(10,10,10,.8)),linear-gradient(0deg,rgba(13,13,13,.96),rgba(13,13,13,.18) 45%,rgba(13,13,13,.68));background-size:cover;background-color:transparent}
body.is-article-visible #bg:after{filter:blur(5px) saturate(.3);transform:scale(1.05)}
body.is-article-visible #bg:before{background-color:rgba(0,0,0,.45)}
#main{width:100%;max-width:780px}.js #main{display:none}.js #main.is-open{display:block}
#main article{position:relative;width:100%;max-width:none;background:rgba(24,24,23,.97);border:1px solid rgba(212,175,55,.15);border-radius:5px;padding:55px 62px;opacity:1;transform:none;animation:reveal .3s ease-out}
#main article h2{font-size:48px;line-height:1.15;margin:10px 0 24px;outline:none}#main article h3{font-size:24px;line-height:1.4;margin-bottom:10px}
#main article p{font-size:14px;color:#c8c5bf;margin-bottom:24px;line-height:1.85}#main article .eyebrow,.eyebrow{font-size:9px;color:var(--gold);letter-spacing:.24em;font-weight:500;margin-bottom:24px}
#main article .lead{font-size:19px;line-height:1.65;color:var(--text);font-weight:300}
#main article .close{position:absolute;top:20px;right:20px;width:44px;height:44px;font-family:'Libre Franklin',sans-serif;font-size:27px;line-height:30px;font-weight:300;letter-spacing:0;border:1px solid #555;border-radius:50%;background:none;color:#c8c5bf;box-shadow:none;text-indent:0;padding:0;white-space:normal}
#main article .close:before{display:none}#main article .close:hover{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,.08)}
.feature-image{margin:30px 0}.feature-image img{display:block;width:100%;height:auto;max-height:360px;object-fit:cover;border-radius:2px}
figcaption{font-size:10px;color:var(--muted);padding-top:10px;letter-spacing:.03em}
.service-line{border-top:1px solid var(--line);padding-top:24px;margin-top:32px}.service-line>span{font-size:9px;color:var(--gold);letter-spacing:.18em}.service-line p{margin-top:10px}
.group-note{background:none;border-top:1px solid var(--line);padding:24px 0;margin:30px 0}.group-note p{margin:10px 0 12px!important}.group-note a{font-size:12px}
.text-link{display:flex;justify-content:space-between;color:var(--gold);font-size:12px;letter-spacing:.04em;border-bottom:1px solid rgba(212,175,55,.4);padding:18px 0 12px;margin-top:30px}
.process-list{padding:0;list-style:none;margin:35px 0}.process-list li{display:grid;grid-template-columns:42px 1fr;gap:20px;padding:27px 0;border-top:1px solid var(--line)}.process-list p{margin-bottom:12px!important}.step{font-family:Oswald,sans-serif;color:var(--gold);font-size:27px;font-weight:300}.deliverable{font-size:8px;letter-spacing:.15em;color:#bab39f}
.pullquote{font-family:Oswald,sans-serif;font-size:30px;line-height:1.4;color:var(--gold);margin:15px 0 24px}
.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.photo-pair figure{margin:0}.photo-pair img{width:100%;height:260px;object-fit:cover;border-radius:2px}
.contact-button.button.primary{display:flex;align-items:center;justify-content:space-between;background:var(--gold);color:var(--bg)!important;font-family:'Libre Franklin',sans-serif;font-weight:600;font-size:12px;letter-spacing:.02em;text-transform:none;height:auto;line-height:1.5;padding:20px 22px;box-shadow:none;border-radius:2px;white-space:normal;margin:32px 0}.contact-button.button.primary:hover{background:#e8d48b}
.contact-details{margin:34px 0}.contact-details>div{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}.contact-details dt{font-size:9px;letter-spacing:.18em;color:var(--muted);font-weight:400}.contact-details dd{margin:0;font-size:13px}.contact-details a{border:0}
.engagement{display:flex;gap:16px;flex-wrap:wrap;font-size:8px;letter-spacing:.12em;color:var(--gold);margin:34px 0}.contact-signoff{font-size:11px!important;color:#a6a199!important;margin-bottom:0!important}
@keyframes reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1400px){#header .content .inner{padding-top:42px;padding-bottom:42px}#footer{margin-top:85px}}
@media(max-width:736px){.topline{top:24px;left:24px;right:24px}.location{font-size:8px;letter-spacing:.1em}.group-mark{font-size:9px}#wrapper{padding:100px 24px 26px}#header .content .inner{padding:30px 0}#header h1{font-size:clamp(49px,12vw,80px)}#header .hero-title{font-size:20px}#header .hero-copy{max-width:280px;margin:auto;font-size:11px}#header nav{width:100%;max-width:440px}#header nav ul{display:grid;grid-template-columns:1fr 1fr}#header nav ul li{border:0;border-bottom:1px solid rgba(212,175,55,.3)}#header nav ul li:nth-child(odd){border-right:1px solid rgba(212,175,55,.3)}#header nav ul li:nth-child(n+3){border-bottom:0}#header nav ul li a{padding:0 8px;font-size:9px;min-width:0;height:51px;line-height:51px}#header .hero-footnote{font-size:8px;letter-spacing:.045em}#header .hero-footnote span{padding:0 4px}#footer{margin-top:50px;gap:16px;flex-direction:column;text-align:center;font-size:7px}#main article{padding:42px 25px 30px}#main article h2{font-size:37px}#main article .lead{font-size:17px}#main article p{font-size:13px}#main article .close{top:16px;right:16px}.photo-pair{gap:12px}.photo-pair img{height:200px}.process-list li{gap:12px;grid-template-columns:32px 1fr}.contact-details>div{flex-direction:column;gap:5px}.contact-details dd{font-size:12px}.engagement{gap:12px;font-size:7px}#bg:after{background-position:40% center}#bg:before{background-image:linear-gradient(0deg,rgba(13,13,13,.95),rgba(13,13,13,.55) 55%,rgba(13,13,13,.7))}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Símbolo entregado por el propietario; conservar el archivo original. */
#header .brand-symbol{width:78px;height:auto;display:block;mask-image:url('../../images/logo-dynamoshow.png');mask-size:contain;mask-repeat:no-repeat;mask-mode:luminance;margin:0 0 21px}
#header .masthead{margin-bottom:22px!important}
#header .content .hero-title{font-size:23px;line-height:1.5;letter-spacing:0;text-transform:none;font-weight:300;margin:0 0 16px}
#header .content .hero-copy{font-size:12px;letter-spacing:.02em;text-transform:none;color:#c6c3bc;line-height:1.8;margin:0}
@media(max-width:736px){#header .brand-symbol{width:60px;margin-bottom:16px}#header .content .inner{padding:24px 0}#header .content .hero-title{font-size:18px}#header .content .hero-copy{font-size:11px;max-width:280px;margin:auto}#header .masthead{font-size:8px;margin-bottom:18px!important}#footer{margin-top:36px}}

/* Revisión Impeccable: lectura, contacto y controles táctiles. */
#main article p{max-width:70ch}
#header nav ul li a{font-size:11px}
#header .content .hero-copy{font-size:14px}
#main article h2{font-size:clamp(34px,4.5vw,48px)}
.contact-button.button.primary{font-size:14px}
.contact-details dd{font-size:14px}
.contact-details a{display:inline-flex;align-items:center;min-height:44px}
.group-note a{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
.text-link{min-height:48px;align-items:center;font-size:14px}
#main article .close:active,.contact-button:active{transform:translateY(1px)}
@media(max-width:736px){
 #main article p{font-size:14px}
 #header .content .hero-copy{font-size:14px;max-width:300px}
 #header nav ul li a{font-size:12px;letter-spacing:.03em}
 #header .hero-footnote{font-size:9px;letter-spacing:0}
 #main article .eyebrow{font-size:10px}
 .contact-details dd{font-size:14px}
 .contact-details dt{font-size:11px}
 .contact-signoff{font-size:12px!important}
 .deliverable{font-size:10px;letter-spacing:.06em}
 figcaption{font-size:12px;line-height:1.5}
 #bg:after{background-position:22% center}
 #bg:before{background-image:linear-gradient(0deg,rgba(13,13,13,.96),rgba(13,13,13,.68) 55%,rgba(13,13,13,.7))}
}
