/* Barlow: sistema tipográfico aprobado. Cargar después de las hojas existentes.
   Fuentes locales. Se conservan estructura, contenido, colores de marca y Brevo. */
@font-face{font-family:Barlow;src:url('/assets/Barlow-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('/assets/Barlow-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('/assets/Barlow-SemiBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('/assets/Barlow-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('/assets/BarlowCondensed-SemiBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
:root{--font-reading:Barlow,Arial,sans-serif;--font-heading:'Barlow Condensed','Arial Narrow',Arial,sans-serif;--type-body:19px;--type-control:17px;--type-label:16px;--type-note:14px;--muted:#bdc1b5;font-family:var(--font-reading)}
body{font-family:var(--font-reading);font-size:var(--type-body);line-height:1.6}
h1,h2,h3{font-family:var(--font-heading);font-weight:600;letter-spacing:0;line-height:1.12;text-wrap:balance}
h1{font-size:clamp(46px,4.5vw,62px);letter-spacing:-.015em}
h2{font-size:clamp(32px,3vw,38px)}
h3{font-size:28px}
.eyebrow{font-size:var(--type-label);letter-spacing:0;font-weight:500;line-height:1.45}
.fine{font-size:var(--type-note);line-height:1.65}
.text-link{font-size:var(--type-control)}
.button{font-size:var(--type-control);font-weight:600;line-height:1.4;min-height:50px}
.page-intro .lead{font-size:var(--type-body);line-height:1.6}
.section-heading>p{font-size:var(--type-label)}
.steps li>span,.services article>span{font-size:var(--type-label);font-weight:500}
.steps h2,.steps h3{font-size:30px}
.steps p,.trust-grid,.services p,.faq details p,.about-story>div,.about-channel p{font-size:var(--type-body)}
.faq summary{font-size:20px;min-height:44px;line-height:1.4}
.pending,.biography-pending{font-family:var(--font-reading);font-size:var(--type-label);line-height:1.6}
.services h2{font-size:32px}
.pricing-note{font-size:var(--type-body)}
.personal-photo a>span{font-size:var(--type-note);padding:9px 12px}
.personal-photo figcaption{font-size:var(--type-label);flex-wrap:wrap;gap:4px 12px}
.personal-photo figcaption small{font-size:var(--type-note)}
.youtube-note{font-size:var(--type-label)}
.privacy-copy h1{font-size:clamp(46px,4.5vw,62px)}
.privacy-copy h2{font-size:32px}
.privacy-copy p{font-size:var(--type-body)}
.privacy-copy code{font-size:17px}

/* Cabecera y navegación: no reducir la letra para encajar el menú. */
.site-header{gap:24px}
.site-brand{font-family:var(--font-heading);font-size:26px;font-weight:600;line-height:1.12}
.site-brand img{width:43px;height:43px}
.site-brand small{font-family:var(--font-reading);font-size:var(--type-note);font-weight:400;letter-spacing:0;margin-top:5px}
.main-nav{font-size:var(--type-label);gap:20px;line-height:1.35}
.menu-toggle{font-size:var(--type-label);padding:8px 12px}

/* Portada y accesos. */
.hero-copy .eyebrow{font-size:var(--type-label);letter-spacing:0}
.hero-copy h1{font-size:clamp(46px,4.5vw,62px);line-height:1.04;letter-spacing:-.015em}
.hero-copy h1>span{font-family:var(--font-reading);font-size:var(--type-label);font-weight:400;letter-spacing:0;line-height:1.4;margin-top:16px}
.hero-copy>p:last-child{font-size:var(--type-body);line-height:1.6}
.hero-film figcaption{flex-wrap:wrap;gap:10px 18px}
.hero-film figcaption span{font-family:var(--font-reading);font-size:var(--type-body)}
.hero-film figcaption>div>button{font-size:var(--type-note);min-height:44px}
.hero-film #video-toggle{font-size:var(--type-label);padding:10px 14px}
.hero-film #video-status{font-family:var(--font-reading);font-size:var(--type-note)}
.entry-number{font-size:var(--type-label);letter-spacing:0}
.entry-card h2{font-size:34px;line-height:1.12}
.entry-card p{font-size:var(--type-body);line-height:1.6;max-width:34ch}
.entry-link{font-size:var(--type-control);line-height:1.4;gap:12px}
.feature-copy h2,.letter h2{font-size:38px}
.letter p:not(.eyebrow){font-size:var(--type-body);color:var(--muted)}
.letter-actions .text-link{font-size:var(--type-control)}

/* Catálogo y vídeos. */
.video-play,.video-stop,.video-copy .text-link{font-size:var(--type-control);line-height:1.4}
.video-copy time{font-size:var(--type-note)}
.video-copy h2{font-size:30px;line-height:1.2}
.sample-notice{font-size:var(--type-label);line-height:1.6}
.catalog-tools label{font-size:var(--type-label)}
.catalog-tools input,.catalog-tools select,.catalog-tools button{font-size:var(--type-control)}
.catalog-count{font-size:var(--type-label);min-height:30px}
.watch-brand{font-size:var(--type-control);font-weight:600;letter-spacing:0}
.watch-model{font-family:var(--font-heading);font-size:30px;font-weight:600;line-height:1.15}
.watch-sample{font-size:var(--type-note);letter-spacing:0;line-height:1.5}
.watch-details{font-size:var(--type-label);line-height:1.5}
.watch-price{font-size:28px;font-weight:500;line-height:1.25}
.watch-availability{font-size:var(--type-label);line-height:1.5}
.watch-contact{font-size:var(--type-control);font-weight:600;line-height:1.4}

/* Pie y ventanas: misma escala que el contenido principal. */
footer.site-footer{font-size:var(--type-label);grid-template-columns:1.15fr 1.5fr auto;gap:30px}
footer.site-footer .footer-brand{font-family:var(--font-heading);font-size:28px;font-weight:600}
.footer-brand span{font-family:var(--font-reading);font-size:var(--type-label);font-weight:400}
.site-footer>div>p:not(.eyebrow){font-size:var(--type-label)}
footer.site-footer .footer-contact>a{font-size:var(--type-control);max-width:100%}
.site-footer .social-links{font-size:var(--type-label)}
.site-footer .social-links a,.site-footer .footer-links a,.site-footer .footer-links button{font-size:var(--type-label);min-height:44px}
.dialog-head>span{font-size:var(--type-label);letter-spacing:0}
.dialog-head button{font-size:var(--type-label)}
.dialog-head h2{font-size:26px}
.dialog-body{font-size:var(--type-body)}
.dialog-body h2{font-size:36px;line-height:1.15}
.dialog-body .lead{font-size:21px;line-height:1.5}
.photo-dialog>p{font-size:var(--type-note)}

/* Solo presentación del formulario oficial: sus campos y scripts no cambian. */
.newsletter-brand,.newsletter-brand span{font-size:var(--type-label);letter-spacing:0}
.newsletter-popup h2{font-family:var(--font-heading);font-size:44px;font-weight:600;line-height:1.1;letter-spacing:0}
#newsletter-description{font-size:var(--type-body);line-height:1.6}
.newsletter-promise,.newsletter-preview-note,.newsletter-data-note{font-size:var(--type-note);line-height:1.6}
.newsletter-decline{font-size:var(--type-label);min-height:44px}
.newsletter-feedback{font-size:var(--type-label)}
#newsletter-popup .sib-form,#newsletter-popup .sib-form-block,#newsletter-popup .entry__label,#newsletter-popup .entry__error,#newsletter-popup .sib-form-message-panel,#newsletter-popup .sib-form-message-panel__inner-text,#newsletter-popup #EMAIL,#newsletter-popup .sib-form-block__button{font-family:var(--font-reading)!important}
#newsletter-popup .entry__label{font-size:var(--type-label)!important;line-height:1.5!important}
#newsletter-popup #EMAIL{font-size:var(--type-control)!important}
#newsletter-popup .entry__error,#newsletter-popup #success-message,#newsletter-popup #error-message,#newsletter-popup .sib-form-message-panel__inner-text{font-size:var(--type-label)!important}
#newsletter-popup .sib-form-block__button{font-size:var(--type-control)!important;font-weight:600!important}
.newsletter-consent label{font-family:var(--font-reading);font-size:var(--type-label)!important;line-height:1.5!important}
.newsletter-consent input{width:20px;height:20px;min-width:20px;margin-top:3px}
#newsletter-description,.newsletter-promise,.newsletter-decline,.newsletter-data-note,.newsletter-consent label{color:var(--muted)}

@media(max-width:1100px){
 .site-header{flex-wrap:wrap;gap:0;padding-block:18px;min-height:85px}
 .menu-toggle:not([hidden]){display:block}
 .main-nav{width:100%;flex-direction:column;align-items:stretch;padding-top:15px;gap:0;font-size:var(--type-label)}
 .main-nav a{border-bottom:1px solid var(--line);padding:10px 0;min-height:48px}
 .site-header.menu-ready .main-nav:not(.is-open){display:none}
 .site-header.menu-ready .main-nav.is-open{display:flex}
 .hero-copy{padding-inline:20px}
 .entry-card{padding-inline:20px}
 .letter{grid-template-columns:1fr}
 .letter-actions{justify-self:start}
 footer.site-footer{grid-template-columns:1fr 1fr}
 .site-footer>div.footer-links{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:8px 24px}
}
@media(max-width:700px){
 h1,.hero-copy h1{font-size:46px}
 h2{font-size:32px}
 .site-header{padding-block:13px;gap:12px}
 .site-brand{font-size:23px;gap:10px}
 .site-brand img{width:35px;height:35px}
 .site-brand small{font-size:var(--type-note)}
 .hero-copy{padding:22px 24px 26px}
 .hero-film figcaption{flex-wrap:wrap}
 .entry-card{padding:26px 8px}
 .entry-card h2{font-size:34px}
 .entry-card p{max-width:none}
 .feature-copy h2,.letter h2{font-size:36px}
 .services{grid-template-columns:1fr}
 .services h2{font-size:30px}
 .personal-photo a>span{padding:8px;font-size:var(--type-note);bottom:7px;right:7px}
 .personal-photo figcaption{font-size:var(--type-label)}
 .dialog-body h2{font-size:34px}
 .newsletter-popup h2{font-size:38px}
 .newsletter-content{padding:40px 25px 26px}
 footer.site-footer{grid-template-columns:1fr;gap:26px}
}
@media(max-width:380px){
 .site-brand{font-size:22px;gap:8px}
 .site-brand img{width:30px;height:30px}
 .site-header{gap:6px}
 .menu-toggle{padding-inline:8px}
 .menu-toggle span{margin-left:4px}
 .hero-copy{padding-inline:18px}
 .personal-photo figcaption small{display:block}
 .photo-grid{grid-template-columns:1fr}
 .personal-photo,.personal-photo:first-child,.personal-photo:nth-child(-n+2){grid-column:span 1}
 .newsletter-content{padding-inline:20px}
}
@media(max-width:360px){.site-brand>span{max-width:128px}}

/* Catálogo comercial: los modelos aparecen inmediatamente después de la entrada. */
.watch-shop .page-intro{max-width:none;padding:48px 0 32px}
.watch-shop .page-intro h1{margin-top:12px;text-wrap:initial}
.watch-shop .page-intro .lead{max-width:760px;margin-top:18px}
.watch-shop .catalog-section{margin-top:0;padding-top:26px;border-top:1px solid var(--line)}
.watch-shop .section-heading{margin-bottom:20px}
.watch-shop .section-heading h2{margin-top:0}
.watch-shop .request-panel{margin:48px 0}
.watch-shop .faq{padding-top:0}
@media(max-width:700px){
 .watch-shop .page-intro{padding:32px 0 28px}
 .watch-shop .catalog-section{padding-top:22px}
 .watch-shop .section-heading>p{margin-top:10px}
}
