/* Rhema: adaptaciones responsive sin cambiar la identidad visual */
html{max-width:100%;scroll-padding-top:95px}
body{width:100%;max-width:100%;overflow-x:clip}
img,video,iframe,svg{max-width:100%}
.nav,.hero,section,.quick,.grid,.card,.pads,.contact,.form-container{min-width:0}
.nav > *, .hero > *, .grid > *, .card > *, .pads > *, .contact > *{min-width:0}
.links{align-items:center}
.links a{white-space:nowrap}
.menu-toggle{display:none;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:9px 13px;border:1px solid #e0e0e0;border-radius:12px;background:#fff;color:#292929;font:800 14px inherit;cursor:pointer}
.menu-toggle .bars{display:grid;gap:4px}
.menu-toggle .bars i{display:block;width:20px;height:2px;border-radius:1px;background:currentColor}
.menu-toggle:focus-visible,.links a:focus-visible{outline:3px solid var(--rojo,#d93235);outline-offset:3px}
.form-container input,.form-container textarea,.form-container select,input,textarea,select{max-width:100%}
@media(max-width:1020px){
 .nav{flex-wrap:wrap}
 .links{gap:3px}
 .links a{font-size:13px;padding:9px 8px}
 .hero{gap:24px}
 .section-title .bar{min-width:0;overflow-wrap:anywhere}
}
@media(max-width:760px){
 .nav{position:relative;align-items:center!important;flex-wrap:wrap;gap:10px;padding:10px 16px}
 .brand img{width:clamp(105px,28vw,145px)}
 .brand small{font-size:10px}
 .menu-toggle{display:inline-flex;margin-left:auto;font-family:inherit}
 .links{display:none!important;order:3;width:100%;flex-basis:100%;flex-direction:column;align-items:stretch;gap:4px;background:#fff;border-top:1px solid #eee;padding:8px 0 4px}
 .nav.menu-open .links{display:flex!important}
 .links a{font-size:15px;padding:12px 14px;border-radius:10px;white-space:normal}
 .links a[aria-current="page"]{background:#fff1f1;color:var(--rojo,#d93235)}
 .hero{grid-template-columns:minmax(0,1fr)!important;padding:32px 16px 24px!important;gap:24px}
 .hero h1{font-size:clamp(34px,9vw,60px);line-height:1.05;overflow-wrap:break-word}
 .lead{font-size:clamp(16px,4.3vw,20px)}
 .hero-card{max-width:100%;padding:12px}
 .hero-logo{min-height:0!important;max-width:100%}
 .hero-logo img{max-height:270px;object-fit:contain}
 .quick{padding:0 16px;margin-bottom:18px}
 section{padding:30px 16px!important}
 .sections-track>section{padding-left:16px!important;padding-right:16px!important}
 .section-title{gap:9px}
 .section-title .tag{font-size:clamp(22px,6.6vw,34px)}
 .section-title .bar{flex:1 1 100%;font-size:clamp(18px,5.5vw,29px);letter-spacing:.06em!important;padding:10px 8px}
 .grid{grid-template-columns:minmax(0,1fr)!important;gap:16px}
 .card{grid-template-columns:minmax(0,1fr)!important;min-height:0!important}
 .product-photo{height:auto!important;min-height:190px;max-height:310px;padding:14px}
 .product-photo img{max-height:280px;height:auto;object-fit:contain}
 .card-body{padding:18px;gap:11px}
 .pads,.contact,.circle-showcase{grid-template-columns:minmax(0,1fr)!important}
 .pads-copy{padding:20px}
 .cta-row{gap:10px}
 .btn{max-width:100%;white-space:normal;text-align:center}
 .form-container{width:100%;max-width:100%}
 footer{overflow-wrap:anywhere}
}
@media(max-width:420px){
 .nav{padding:9px 12px}
 .brand img{width:112px}
 .menu-toggle{padding:9px 10px}
 .hero{padding:24px 12px 20px!important}
 section{padding:25px 12px!important}
 .sections-track>section{padding-left:12px!important;padding-right:12px!important}
 .quick{padding:0 12px;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
 .quick a{font-size:12px;padding:12px 6px;overflow-wrap:anywhere}
 .card-body{padding:15px}
 .product-photo{min-height:160px}
 .color-swatches{gap:10px;justify-content:center}
 .color-item{min-width:62px}
 .color-circle{width:44px;height:44px}
 .contact{padding:18px!important}
 .cta-row .btn{flex:1 1 100%}
 .section-title .bar{font-size:18px}
}
@media(prefers-reduced-motion:reduce){.links,.menu-toggle{scroll-behavior:auto}}
