:root{
  --sb-black:#0A0A0A;
  --sb-black-2:#151515;
  --sb-blue:#0057FF;
  --sb-white:#FFFFFF;
  --sb-off:#F3F3F3;
  --sb-ink:#111111;
  --sb-muted:#555B64;
  --sb-line:#D8D8D8;
}

html{font-size:17px}
body{font-size:17px;line-height:1.65;background:var(--sb-white)!important;color:var(--sb-ink)!important}
p{font-size:1rem;line-height:1.75;color:var(--sb-muted)!important}
h1,h2,h3,h4{letter-spacing:-.02em}
h1{font-weight:700!important}
h2{font-weight:700!important}

nav,.landing-nav{height:80px!important;padding-left:clamp(24px,4vw,64px)!important;padding-right:clamp(24px,4vw,64px)!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid var(--sb-line)!important}
.nav-links{gap:34px!important}
.nav-links a,.back{font-size:15px!important;font-weight:600!important;color:#4D4D4D!important}
nav .nav-links>a[href="contacto.html"]:not(.nav-cta){display:none!important}
.nav-cta,.consult{min-height:48px;display:inline-flex!important;align-items:center;justify-content:center;padding:12px 30px!important;background:var(--sb-black)!important;color:var(--sb-white)!important;border:1px solid var(--sb-black)!important;font-size:15px!important;font-weight:700!important;letter-spacing:1.2px!important}
.nav-cta:hover,.consult:hover{background:var(--sb-blue)!important;border-color:var(--sb-blue)!important;color:var(--sb-white)!important}

section{padding-top:clamp(84px,8vw,132px)!important;padding-bottom:clamp(84px,8vw,132px)!important}
.section-label,.hero-label,.model-tag,.label{font-size:13px!important;font-weight:700!important;letter-spacing:3.5px!important}
.section-label:before{content:"";display:inline-block;width:26px;height:2px;background:var(--sb-blue);margin-right:12px;vertical-align:middle}
.btn-primary,.btn-secondary,.btn-whatsapp,.download{min-height:52px;display:inline-flex!important;align-items:center;justify-content:center;font-size:15px!important;font-weight:700!important;padding:15px 34px!important}
.btn-primary,.download{background:var(--sb-blue)!important;color:var(--sb-white)!important}
.btn-secondary{border-width:2px!important}

footer{margin-top:0!important;padding:72px clamp(24px,4vw,64px)!important;background:var(--sb-black)!important;border-top:3px solid var(--sb-blue)!important}
footer .wordmark-sabine,footer h4{color:var(--sb-white)!important}
footer p,footer a{font-size:15px!important;color:#C9C9C9!important}
.footer-bottom{padding:26px clamp(24px,4vw,64px)!important;background:var(--sb-black)!important;border-color:#2A2A2A!important;color:#999!important;font-size:13px!important}

/* Home: editorial black block inspired by the brand manual. */
.page-home .hero{min-height:94vh}
.page-home .hero h1{font-size:clamp(58px,7.5vw,104px)!important;max-width:880px}
.page-home .hero p{font-size:19px!important;color:#E2E2E2!important}
.page-home section:nth-of-type(2){background:var(--sb-black)!important;color:var(--sb-white)!important;border-top:3px solid var(--sb-blue)}
.page-home section:nth-of-type(2) h2,.page-home section:nth-of-type(2) h3,.page-home section:nth-of-type(2) h4{color:var(--sb-white)!important}
.page-home section:nth-of-type(2) p{color:#C8C8C8!important}
.page-home section:nth-of-type(2) .valor-item{background:var(--sb-black-2)!important;border:1px solid #292929!important}
.page-home section:nth-of-type(2) .valor-num{color:var(--sb-blue)!important;opacity:1!important}
.page-home section:nth-of-type(3){background:var(--sb-white)!important}

/* Model catalogue: clean white grid with electric-blue structure. */
.page-modelos section:first-of-type{padding-top:0!important}
.page-modelos section:first-of-type>div{gap:3px!important;background:var(--sb-blue)}
.page-modelos section:first-of-type>div>div{padding:68px 52px!important;background:var(--sb-white)!important}
.page-modelos section:first-of-type>div>div h2,.page-modelos section:first-of-type>div>div span{color:var(--sb-ink)!important}
.page-modelos section:first-of-type>div>div p{color:var(--sb-muted)!important}

/* Model landing pages. */
.page-landing .landing-hero{min-height:790px!important;padding-bottom:90px!important}
.page-landing .landing-hero h1{font-size:clamp(46px,5.5vw,76px)!important;max-width:820px!important}
.page-landing .landing-hero .subheadline{font-size:18px!important;color:#E0E0E0!important;max-width:680px!important}
.page-landing .landing-puntos{background:var(--sb-black)!important;border-top:3px solid var(--sb-blue)}
.page-landing .landing-puntos .punto{border-color:#2B2B2B!important;padding:38px 0!important}
.page-landing .landing-puntos .punto-num{color:var(--sb-blue)!important;opacity:1!important;font-size:40px!important}
.page-landing .landing-puntos .punto p{font-size:17px!important;color:#E2E2E2!important;max-width:1000px}
.page-landing .landing-specs{background:var(--sb-off)!important}
.page-landing .specs-grid{gap:10px!important}
.page-landing .spec-block{background:var(--sb-white)!important;border-top:3px solid var(--sb-blue)!important;padding:36px!important}
.page-landing .spec-block .spec-label{font-size:13px!important;font-weight:700!important}
.page-landing .spec-block .spec-value{font-size:28px!important;color:var(--sb-ink)!important}
.page-landing .spec-block .spec-desc{font-size:14px!important;line-height:1.6;color:var(--sb-muted)!important}
.page-landing .landing-cta{background:var(--sb-black)!important;color:var(--sb-white)!important;border-top:3px solid var(--sb-blue)}
.page-landing .landing-cta h2{color:var(--sb-white)!important;font-size:clamp(36px,4vw,58px)!important}
.page-landing .landing-cta>p{font-size:18px!important;color:#C8C8C8!important}
.page-landing .form-group label{font-size:13px!important;font-weight:700!important;color:#8CB0FF!important}
.page-landing .form-group input,.page-landing .form-group select,.page-landing .form-group textarea{background:var(--sb-white)!important;color:var(--sb-ink)!important;border:1px solid #BFBFBF!important;font-size:16px!important;padding:16px 18px!important}

/* How we work: alternating editorial chapters. */
.page-como section:nth-of-type(1),.page-como section:nth-of-type(3){background:var(--sb-black)!important;color:var(--sb-white)!important;border-top:3px solid var(--sb-blue)!important}
.page-como section:nth-of-type(1) h2,.page-como section:nth-of-type(1) blockquote,.page-como section:nth-of-type(3) h2,.page-como section:nth-of-type(3) h3{color:var(--sb-white)!important}
.page-como section:nth-of-type(1) p,.page-como section:nth-of-type(3) p{color:#C8C8C8!important}
.page-como section:nth-of-type(1) .quote-block{background:var(--sb-black-2);padding:42px 48px!important;border-left:3px solid var(--sb-blue)}
.page-como .story-transition,.page-como .story-pair{background:var(--sb-black)!important}
.page-como .proceso-grid{gap:10px!important;border:0!important}
.page-como .proceso-item{border-top:3px solid var(--sb-blue)!important;padding:52px 42px!important}
.page-como .proceso-item p,.page-como .principio-item p{font-size:16px!important}
.page-como .principio-item{background:var(--sb-black-2)!important;border-color:#292929!important;padding:48px 42px!important}

/* Service, contact and supporting pages. */
.page-servicio section:first-of-type{background:var(--sb-black)!important;color:var(--sb-white)!important;border-top:3px solid var(--sb-blue)}
.page-servicio section:first-of-type>div>div{background:var(--sb-black-2)!important;border-top:3px solid var(--sb-blue)}
.page-servicio section:first-of-type h3{color:var(--sb-white)!important}
.page-servicio section:first-of-type p{font-size:16px!important;color:#C8C8C8!important}
.page-contacto form label{font-size:13px!important;font-weight:700!important}
.page-contacto form input,.page-contacto form select,.page-contacto form textarea{font-size:16px!important;padding:16px 18px!important}
.page-nosotros section:nth-of-type(even){background:var(--sb-black)!important;color:var(--sb-white)!important;border-top:3px solid var(--sb-blue)}
.page-nosotros section:nth-of-type(even) h2,.page-nosotros section:nth-of-type(even) h3{color:var(--sb-white)!important}
.page-nosotros section:nth-of-type(even) p{color:#C8C8C8!important}

/* Technical sheets retain a clean reading surface. */
.page-ficha main{max-width:1260px!important;padding-top:70px!important}
.page-ficha main>p{font-size:18px!important}
.page-ficha .viewer{border-top:3px solid var(--sb-blue)!important;box-shadow:0 22px 60px rgba(0,0,0,.14)!important}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7FA7FF!important;outline-offset:3px}

@media(max-width:1100px){
  html{font-size:16px}
  .page-modelos section:first-of-type>div>div{padding:54px 38px!important}
}
@media(max-width:768px){
  body{font-size:16px}
  nav,.landing-nav{height:72px!important}
  .page-home .hero h1{font-size:clamp(46px,14vw,68px)!important}
  .page-landing .landing-hero h1{font-size:clamp(40px,11vw,58px)!important}
  .page-landing .landing-puntos .punto p{font-size:16px!important}
  .page-modelos section:first-of-type>div{grid-template-columns:1fr!important}
  footer{padding-top:56px!important;padding-bottom:56px!important}
}
