@font-face{font-family:Outfit;src:url('fonts/outfit.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap}@font-face{font-family:Manrope;src:url('fonts/manrope.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
:root{--bg:#f5f8fc;--surface:#e8eff7;--ink:#082e58;--muted:#4b5f75;--line:#c8d5e5;--accent:#ff6500;--accent-ink:#b43e00;--field:#ffffff;--header:rgba(245,248,252,.97);--hero:#003366;--radius:3px;--nav-h:76px;--layer-header:20;--layer-dock:30;--layer-toast:40;color-scheme:light}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#081c33;--surface:#102a45;--ink:#edf4fc;--muted:#b5c9df;--line:#35516f;--accent-ink:#ffa46b;--field:#0c223d;--header:rgba(8,28,51,.97);color-scheme:dark}}
:root[data-theme=dark]{--bg:#081c33;--surface:#102a45;--ink:#edf4fc;--muted:#b5c9df;--line:#35516f;--accent-ink:#ffa46b;--field:#0c223d;--header:rgba(8,28,51,.97);color-scheme:dark}
*{box-sizing:border-box}html{scroll-padding-top:calc(var(--nav-h) + 20px);scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}main{overflow:clip;width:100%}h1,h2,h3,h4,.brand,.product-measure,.reference-total{font-family:Outfit,sans-serif;font-weight:600;letter-spacing:-.035em;line-height:1.08;margin:0}h2{font-size:clamp(2.5rem,4.4vw,4.8rem);max-width:20ch}h3{font-size:1.45rem;letter-spacing:-.02em}p{margin:0 0 1em;max-width:65ch}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}img{display:block;max-width:100%;object-fit:cover}button{border:0}a,button{touch-action:manipulation}input,select,textarea{min-width:0;caret-color:var(--accent-ink)}::selection{color:#082e58;background:#ffc69e}:focus-visible{outline:3px solid var(--accent-ink);outline-offset:5px}a:hover{text-decoration-color:var(--accent-ink)}[hidden]{display:none!important}.container{width:min(1360px,calc(100% - 112px));margin-inline:auto}.section{padding-block:112px}.icon{display:inline-block;width:21px;height:21px;flex:none;background:currentColor;mask:var(--icon) center/contain no-repeat;-webkit-mask:var(--icon) center/contain no-repeat;vertical-align:middle}.button{background:var(--accent);color:#082e58;display:inline-flex;align-items:center;justify-content:center;gap:32px;padding:16px 23px;border-radius:var(--radius);font-size:14px;font-weight:800;white-space:nowrap;min-height:52px;transition:transform .2s,background .2s}.button:hover{background:#ff8433;transform:translateY(-2px)}.button:active{transform:translateY(0) scale(.98)}.button.secondary{background:var(--surface);color:var(--ink);border:1px solid var(--line)}.button:disabled{opacity:.65;cursor:wait;transform:none}.icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border-radius:var(--radius);transition:background .2s}.icon-button:hover{background:var(--surface)}.text-link,.text-button{display:inline-flex;align-items:center;gap:22px;font-weight:750;line-height:1.4;padding-block:12px;border-bottom:1px solid currentColor;background:none;font-size:14px}.text-link .icon,.button .icon{transition:transform .25s}.text-link:hover .icon,.button:hover .icon{transform:translate(3px,-2px)}.text-button{border:0;padding:8px;font-size:12px;gap:10px}.fine-print{font-size:12px;line-height:1.7;color:var(--muted)}.skip-link{position:fixed;top:8px;left:16px;transform:translateY(-200%);background:var(--accent);color:#082e58;padding:12px;z-index:50}.skip-link:focus{transform:none}
.site-header{position:fixed;inset:0 0 auto;height:var(--nav-h);padding:0 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--header);border-bottom:1px solid var(--line);z-index:var(--layer-header)}.brand{font-size:25px;font-weight:750;letter-spacing:-.05em;line-height:1;max-width:260px}.brand>span{display:flex;flex-direction:column}.brand span span{font-family:Manrope,sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:.21em;font-weight:650;margin-top:6px}.desktop-nav{display:flex;gap:32px;font-size:13px;font-weight:700}.desktop-nav a{padding-block:15px;position:relative}.desktop-nav a:after{content:'';height:2px;background:var(--accent-ink);position:absolute;inset:auto 0 9px;transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover:after{transform:scaleX(1)}.nav-actions{display:flex;gap:15px;align-items:center}.nav-quote{min-height:42px;padding:10px 18px;gap:18px;font-size:12px}.menu-toggle{display:none}.mobile-nav{position:absolute;inset:var(--nav-h) 0 auto;background:var(--bg);border-bottom:1px solid var(--line);padding:16px 24px 24px}.mobile-nav a{display:block;font-size:18px;padding:14px 0;font-weight:650}
.hero{margin-top:var(--nav-h);position:relative;min-height:620px;height:min(760px,calc(100dvh - var(--nav-h)));background:var(--hero);color:#f4f7fc;isolation:isolate;display:flex;align-items:center}.hero-media{position:absolute;inset:0;z-index:-2;overflow:hidden}.hero-media img{width:100%;height:100%;object-position:center}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,14,19,.78) 0%,rgba(10,14,19,.65) 32%,rgba(10,14,19,.20) 64%,rgba(10,14,19,.05) 100%)}.hero-content{padding-block:52px}.hero h1{font-size:clamp(3rem,5.1vw,5.3rem);font-weight:600;max-width:1080px;width:100%;letter-spacing:-.04em;line-height:1.06;text-wrap:balance}.hero h1 span{display:block;color:var(--accent)}.hero p{font-size:16px;max-width:40ch;line-height:1.7;margin:28px 0 32px;color:#dce7f3}.hero-cta{gap:38px;min-height:56px;padding-inline:25px}.section-heading{margin-bottom:42px}.section-heading p{max-width:49ch;color:var(--muted);margin-top:24px}.family-strip{display:flex;gap:12px;min-height:280px;margin-bottom:48px}.family{position:relative;overflow:hidden;min-width:0;flex:1;background:#202020;color:#f5f8fc;border-radius:var(--radius);transition:flex .6s cubic-bezier(.16,1,.3,1);height:290px}.family.active,.family:hover,.family:focus-visible{flex:1.65}.family img{width:100%;height:100%;opacity:1;transition:transform .7s}.family:hover img,.family:focus-visible img{transform:scale(1.06);opacity:1}.family:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.85))}.family>span{position:absolute;left:22px;right:22px;bottom:22px;z-index:1;font-family:Outfit,sans-serif;font-weight:550;font-size:22px;line-height:1.15;display:flex;justify-content:space-between;gap:16px}.catalog-controls{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(180px,.85fr) minmax(0,1fr);gap:18px;align-items:end;scroll-margin-top:100px}label{display:block;font-size:12px;font-weight:750;margin-bottom:8px}input,select,textarea{width:100%;padding:13px 14px;background:var(--field);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);font-size:14px;min-height:48px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}select{padding-right:34px;cursor:pointer}textarea{resize:vertical}.input-icon{position:relative}.input-icon .icon{position:absolute;left:15px;top:15px;color:var(--muted);width:18px;height:18px}.input-icon input{padding-left:43px}.technical-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-caption{margin:28px 0 16px;display:flex;gap:24px;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);min-height:30px}.catalog-caption p{margin:0}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}.product{padding:26px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:88px 1fr;column-gap:24px;align-items:start}.product-measure{background:var(--surface);min-height:100px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:24px;letter-spacing:-.045em;padding:12px;line-height:1.15;overflow-wrap:anywhere}.product-title{font-size:20px;line-height:1.2;letter-spacing:-.02em;font-weight:600}.product-meta{font-size:11px;color:var(--muted);margin-top:8px;line-height:1.7}.product-price{font-family:Outfit,sans-serif;font-size:24px;line-height:1.3;font-weight:600;letter-spacing:-.025em;margin:14px 0 12px}.product-price small{font-family:Manrope,sans-serif;font-size:11px;letter-spacing:0;font-weight:500;color:var(--muted)}.product-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.add-product{font-size:12px;padding:9px 14px;min-height:40px;gap:15px;background:var(--ink);color:var(--bg)}.add-product:hover{background:var(--accent);color:#082e58}.detail-button{font-size:11px;min-height:40px;border-bottom:1px solid var(--line);padding:4px 0}.product-details{grid-column:1/-1;margin-top:20px}.product-details summary{cursor:pointer}.specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin:20px 0}.specs div{min-width:0}.specs dt{font-size:11px;color:var(--muted)}.specs dd{margin:0;font-size:13px;font-weight:700;overflow-wrap:anywhere}.product-description{font-size:12px;color:var(--muted)}.stock-note{font-size:11px;color:var(--muted);margin-top:12px}.skeleton{height:224px;background:var(--surface);margin:8px 0;border-radius:var(--radius)}.catalog-empty{text-align:center;max-width:490px;margin:60px auto}.catalog-empty>.icon{width:38px;height:38px}.catalog-empty h3{margin:22px 0 12px}.catalog-empty p{color:var(--muted)}.catalog-empty .text-link{margin:18px}.catalog-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin:28px 0}.catalog-pagination span{font-size:12px}.catalog-pagination button{border:1px solid var(--line)}
.delivery{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:128px}.delivery-intro{align-self:start}.delivery-intro p{color:var(--muted);margin:26px 0 14px;max-width:35ch}.inline-photo{display:inline-block;vertical-align:middle;width:105px;height:53px;background:url('blocks.webp') center/cover;border-radius:var(--radius);margin-inline:4px}.flow-item{padding:0 0 32px 45px;position:relative;margin-bottom:28px;border-bottom:1px solid var(--line)}.flow-item>.icon{position:absolute;left:0;top:3px;color:var(--accent-ink);width:25px;height:25px}.flow-item p{font-size:14px;color:var(--muted);margin-top:14px}.flow-photo{margin:10px 0 40px;overflow:hidden}.flow-photo img{aspect-ratio:1.5;width:100%;object-fit:cover}.flow-photo figcaption{font-size:11px;color:var(--muted);margin-top:8px}.coverage{background:var(--surface);padding:28px}.coverage h3{font-size:20px}.coverage p{font-size:13px;margin-top:12px}.coverage .fine-print{font-size:11px}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:40px}.gallery-arrows{display:flex;gap:12px}.gallery-arrows button{border:1px solid var(--line)}.gallery-note{font-size:12px;color:var(--muted);margin:24px 0 0}.carousel-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:40px max(56px,calc((100vw - 1360px)/2));scrollbar-width:thin;scrollbar-color:var(--accent-ink) var(--surface);cursor:grab;touch-action:pan-x pan-y}.carousel-track.dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}.gallery-card{margin:0;flex:0 0 min(620px,65vw);scroll-snap-align:start}.gallery-card img{width:100%;aspect-ratio:1.5;transition:transform .6s;border-radius:var(--radius);pointer-events:none}.gallery-card:hover img{transform:scale(.985)}.gallery-card figcaption{padding-top:18px}.gallery-card h3{font-size:22px}.gallery-card p{font-size:12px;color:var(--muted);margin:8px 0 0}.team-section{padding-top:50px}.team-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:46px}.team-person{border-top:1px solid var(--line);padding-top:22px}.team-person img{width:72px;height:72px;margin-bottom:20px;border-radius:var(--radius)}.team-person h3{font-size:21px}.team-person .role{font-size:11px;color:var(--accent-ink);font-weight:750;margin:8px 0}.team-person p{font-size:12px;color:var(--muted)}#testimonial-list{display:flex;overflow-x:auto;gap:50px;margin-top:40px;scroll-snap-type:x mandatory}blockquote{flex:0 0 min(560px,80vw);margin:0;scroll-snap-align:start}blockquote p{font-family:Outfit,sans-serif;font-size:30px;line-height:1.3}blockquote cite{font-size:12px;font-style:normal;color:var(--muted)}.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;border-top:1px solid var(--line)}.faq-section>div>p{margin-top:24px;color:var(--muted);max-width:30ch}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:24px;list-style:none;cursor:pointer;font-family:Outfit,sans-serif;font-size:20px;line-height:1.3;padding:24px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary .icon{width:18px;height:18px;transition:transform .2s}.faq-list details[open] summary .icon{transform:rotate(45deg)}.faq-list details p{font-size:13px;color:var(--muted);padding-bottom:16px;max-width:60ch}
.quote-section{background:var(--surface)}.quote-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%}.quote-intro h2{font-size:clamp(3rem,5vw,5.5rem)}.quote-intro>p{max-width:33ch;margin-top:26px;color:var(--muted)}.quote-contact{display:flex;flex-direction:column;align-items:start;gap:26px;margin-top:34px}.quote-contact>a:not(.text-link){font-size:18px;display:flex;align-items:center;gap:15px}.quote-selection{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--line)}.selection-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.selection-heading h3{font-size:21px}.selection-heading>span{font-size:11px;color:var(--muted)}.selection-empty{font-size:12px;color:var(--muted);margin:18px 0 0}.selected-product{display:grid;grid-template-columns:minmax(0,1fr) 106px 32px;gap:14px;align-items:center;margin-top:22px}.selected-product h4{font-size:15px;letter-spacing:-.015em;line-height:1.3}.selected-product small{font-size:11px;color:var(--muted)}.quantity{display:grid;grid-template-columns:30px 46px 30px;border:1px solid var(--line);background:var(--field);align-items:center;height:38px}.quantity button{background:transparent;padding:5px;height:36px}.quantity input{padding:0;border:0;min-height:34px;height:34px;text-align:center;font-size:12px;-moz-appearance:textfield}.quantity input::-webkit-inner-spin-button{display:none}.quantity .icon{width:13px;height:13px}.remove-product{width:32px;height:38px}.remove-product .icon{width:17px;height:17px}.quote-reference{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px;font-size:11px;color:var(--muted)}.reference-total{font-size:25px;color:var(--ink);white-space:nowrap}.quote-form{display:grid;gap:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}.quote-form .fine-print{font-size:11px;margin:0}.form-submit{width:100%;justify-content:space-between}.form-status{font-size:13px;margin:0;line-height:1.6}.form-status:empty{display:none}.form-status.error{color:var(--accent-ink)}.form-status.success{color:var(--ink);font-weight:750}.required{color:var(--accent-ink)}.optional{font-weight:450;color:var(--muted)}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.location-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:center}.location-info h2{font-size:clamp(2.5rem,4vw,4.2rem)}address{font-style:normal;font-size:13px;color:var(--muted);line-height:1.8;max-width:38ch;margin:25px 0 12px}.hours{margin-top:36px}.hours h3{font-size:20px}.hours dl{margin-top:20px;max-width:380px}.hours dl div{display:flex;justify-content:space-between;gap:24px;padding:8px 0;font-size:12px}.hours dd{margin:0;font-variant-numeric:tabular-nums;font-weight:700}.map-frame{background:var(--surface);width:100%;height:500px;border-radius:var(--radius);overflow:hidden}.map-frame iframe{width:100%;height:100%;border:0}.site-footer{background:#082e58;color:#edf4fc;padding-top:64px}.footer-top{display:grid;grid-template-columns:1.2fr .8fr 1.15fr;gap:70px;padding-bottom:52px}.footer-brand{font-size:28px;display:inline-block;line-height:1.12}.footer-top>div>p{color:#c0d2e7;font-size:12px;margin-top:20px;line-height:1.8}.footer-contact{display:flex;flex-direction:column;align-items:start;gap:16px;font-size:13px}.footer-contact .icon{width:16px;height:16px}.footer-address{max-width:40ch;margin-top:0!important}.social-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.social-links a{width:35px;height:35px;display:flex;align-items:center;justify-content:center;border:1px solid #6380a2;border-radius:var(--radius);transition:background .2s}.social-links a:hover{background:#164978}.social-links img{width:15px;height:15px;filter:brightness(0) invert(1)}.social-links .icon{width:17px;height:17px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;border-top:1px solid #44668c;padding:25px 0;font-size:10px;color:#c0d2e7}.footer-bottom p{margin:0}.soloenlace-credit{display:flex;align-items:center;gap:12px}.soloenlace-credit img{width:97px;height:auto;filter:brightness(0) invert(1)}#admin-link{display:flex;align-items:center;gap:10px}#admin-link .icon{width:13px;height:13px}.floating-whatsapp{position:fixed;right:24px;bottom:24px;border-radius:50%;background:var(--accent);width:60px;height:60px;display:flex;align-items:center;justify-content:center;z-index:var(--layer-dock);box-shadow:0 8px 25px rgba(4,26,50,.24);transition:transform .25s}.floating-whatsapp img{filter:brightness(0)}.floating-whatsapp:hover{transform:translateY(-4px) scale(1.04)}.quote-dock{position:fixed;left:50%;transform:translateX(-50%);bottom:22px;z-index:var(--layer-dock);background:var(--ink);color:var(--bg);display:flex;gap:16px;align-items:center;padding:13px 20px;font-size:12px;border-radius:var(--radius);box-shadow:0 8px 25px rgba(4,26,50,.24);white-space:nowrap}.quote-dock #dock-count{background:var(--accent);color:#082e58;min-width:22px;height:22px;text-align:center;font-weight:800}.toast{position:fixed;bottom:92px;left:50%;transform:translateX(-50%);z-index:var(--layer-toast);background:var(--ink);color:var(--bg);padding:12px 20px;border-radius:var(--radius);font-size:12px;max-width:calc(100vw - 36px);box-shadow:0 8px 30px rgba(4,26,50,.25)}
@media(min-width:1536px){.hero h1{font-size:85px}.hero p{font-size:18px}}@media(max-width:1279px){.container{width:calc(100% - 80px)}.site-header{padding-inline:32px;gap:16px}.desktop-nav{gap:22px}.brand{font-size:23px}.hero{min-height:570px}.hero h1{font-size:clamp(52px,5.3vw,74px)}.catalog-controls{grid-template-columns:1fr 1fr}.technical-filters{grid-column:1/-1}.technical-filters:empty{display:none}.family>span{left:16px;right:16px;font-size:19px}.product-grid{gap:0 24px}.product{grid-template-columns:72px 1fr;gap:18px}.product-measure{font-size:22px}.footer-top{gap:40px}.section{padding-block:92px}}
@media(max-width:1023px){:root{--nav-h:70px}.desktop-nav{display:none}.menu-toggle{display:flex}.site-header{padding-inline:26px}.container{width:calc(100% - 64px)}.hero h1{font-size:clamp(45px,6.4vw,63px)}.hero{height:610px;min-height:0}.hero-media{inset:0}.hero p{font-size:15px}.family-strip{min-height:250px}.family{height:260px}.family>span{font-size:17px}.family>span .icon{display:none}.delivery,.quote-layout,.location-section,.faq-section{gap:6%}.flow-item{padding-left:36px}.inline-photo{width:75px;height:42px}.team-list{grid-template-columns:1fr 1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:last-child{grid-column:1/-1}.footer-address{max-width:70ch}.footer-bottom{flex-wrap:wrap}.product{grid-template-columns:1fr}.product-measure{display:none}.quote-intro h2{font-size:52px}.map-frame{height:420px}}
@media(max-width:767px){:root{--nav-h:66px}.container{width:calc(100% - 40px)}.section{padding-block:72px}.site-header{padding-inline:20px;gap:12px}.brand{font-size:21px;max-width:215px}.brand span span{font-size:8px;margin-top:5px}.nav-actions{gap:4px}.nav-quote{display:none}.theme-toggle{width:40px}.hero{height:calc(86dvh - var(--nav-h));min-height:480px;max-height:720px;align-items:end}.hero-media{inset:0}.hero-media img{object-position:center}.hero-shade{background:linear-gradient(0deg,rgba(10,14,19,.86) 0%,rgba(10,14,19,.70) 38%,rgba(10,14,19,.26) 72%,rgba(10,14,19,.03) 100%)}.hero-content{padding-block:48px}.hero h1{font-size:clamp(37px,8.4vw,61px);letter-spacing:-.04em;max-width:650px;text-wrap:balance}.hero h1 span{display:inline}.hero p{font-size:13px;max-width:33ch;margin:22px 0 25px}.hero-cta{min-height:52px;font-size:13px;gap:32px}h2{font-size:clamp(32px,8.8vw,49px)}.section-heading p{font-size:13px;margin-top:20px}.family-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-height:0;margin-bottom:34px}.family{height:180px}.family>span{font-size:17px;bottom:16px;left:14px;right:14px}.family.active{outline:2px solid var(--accent);outline-offset:0}.catalog-controls{grid-template-columns:1fr;gap:15px}.technical-filters{grid-template-columns:1fr 1fr}.product-grid{grid-template-columns:1fr}.product{grid-template-columns:72px 1fr;gap:16px;padding-block:24px}.product-measure{display:flex;min-height:91px;font-size:22px}.product-title{font-size:18px}.product-price{font-size:23px;margin-top:12px}.product-meta{font-size:10px}.product-actions{gap:16px}.catalog-caption{font-size:11px;gap:10px}.catalog-empty h3{font-size:25px}.delivery{grid-template-columns:1fr;gap:48px}.delivery-intro h2{max-width:14ch}.delivery-intro p{font-size:13px;max-width:43ch}.flow-item{padding-left:44px;margin-bottom:24px}.flow-item h3{font-size:23px}.flow-item p{font-size:13px}.inline-photo{width:88px;height:44px}.coverage{padding:23px}.gallery-heading{gap:20px}.gallery-heading h2{font-size:34px}.gallery-arrows{gap:4px;flex:none}.gallery-arrows button{width:38px;height:38px}.carousel-track{padding:28px 20px;gap:16px}.gallery-card{flex-basis:84vw}.gallery-card h3{font-size:20px}.gallery-note{font-size:11px;margin-top:20px}.team-list{gap:28px 20px;margin-top:34px}.team-person h3{font-size:19px}.team-person p{font-size:11px}.team-person .role{font-size:10px}.faq-section{grid-template-columns:1fr;gap:26px}.faq-section>div>p{font-size:13px;max-width:40ch;margin-top:18px}.faq-list summary{font-size:18px;padding:22px 0}.faq-list details p{font-size:12px}.quote-layout{grid-template-columns:1fr;gap:45px}.quote-intro h2{font-size:49px}.quote-intro>p{font-size:13px}.quote-contact{margin-top:24px;gap:22px}.quote-contact>a:not(.text-link){font-size:17px}.form-grid{grid-template-columns:1fr;gap:18px}.quote-form input,.quote-form textarea,.quote-form select{font-size:16px}.selection-heading h3{font-size:20px}.selected-product{gap:12px}.selected-product h4{font-size:14px}.quote-reference{align-items:start}.reference-total{font-size:23px}.location-section{grid-template-columns:1fr;gap:32px}.location-info h2{font-size:38px}address{max-width:45ch}.hours{margin-top:26px}.hours dl{max-width:none}.map-frame{height:330px}.site-footer{padding-top:48px}.footer-top{grid-template-columns:1fr;gap:34px;padding-bottom:40px}.footer-top>div:last-child{grid-column:auto}.footer-brand{font-size:28px}.footer-top>div>p{margin-top:16px}.footer-bottom{align-items:start;gap:22px;padding-bottom:100px;flex-direction:column;font-size:10px}.floating-whatsapp{width:54px;height:54px;right:18px;bottom:18px}.quote-dock{left:20px;transform:none;bottom:22px;gap:12px;padding:11px 15px}.quote-dock>.icon:first-child{display:none}.toast{bottom:86px;font-size:11px;text-align:center}input,select,textarea{min-height:48px}.technical-filters select{font-size:13px}}
@media(max-width:359px){.product{grid-template-columns:1fr}.product-measure{display:none}.hero h1{font-size:35px}.gallery-heading{display:block}.gallery-arrows{margin-top:20px}.team-list{grid-template-columns:1fr}.selected-product{grid-template-columns:1fr 100px 28px;gap:8px}.quantity{grid-template-columns:27px 44px 27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}.family{transition:none}}
@media(prefers-reduced-transparency:reduce){.site-header{background:var(--bg)}}

/* Product photographs stay uncropped, including packaging and labels. */
.product{grid-template-columns:132px minmax(0,1fr)}.product-media{width:132px;aspect-ratio:1;overflow:hidden;background:#f5f8fc;border-radius:var(--radius);align-self:start}.product-media img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .35s cubic-bezier(.22,1,.36,1)}.product-measure{display:flex;min-height:132px}.product-content{min-width:0}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.product:hover .product-media img{transform:scale(1.045)}}
@media(min-width:768px) and (max-width:1279px){.product{grid-template-columns:104px minmax(0,1fr)}.product-media{width:104px}.product-measure{min-height:104px}}
@media(max-width:767px){.product{grid-template-columns:96px minmax(0,1fr)}.product-media{width:96px}.product-measure{display:flex;min-height:96px}}
@media(max-width:359px){.product{grid-template-columns:80px minmax(0,1fr);gap:12px}.product-media{width:80px}.product-measure{min-height:80px;font-size:18px}}

/* Minimum readable sizes for mobile metadata and interactive footer text. */
.footer-bottom{font-size:12px}.product-meta,.team-person .role,.selection-heading>span,.flow-photo figcaption,.quote-form .fine-print,.coverage .fine-print,.gallery-note{font-size:12px}.product-price small,.stock-note,.specs dt,.selected-product small,.product-meta,.team-person p,.quote-reference{font-size:12px}.hero-content p{font-size:16px}.site-header .brand{font-size:22px;font-weight:650;letter-spacing:-.035em;line-height:1.1;max-width:250px}.site-header .brand>span{display:block}.product>img{width:88px;height:100px;object-fit:cover}.catalog-pagination button:disabled{opacity:.4;cursor:default}.gallery-arrows button:disabled{opacity:.4;cursor:default}
@media(max-width:767px){.site-header .brand{font-size:20px;max-width:190px}.hero-content p{font-size:14px}.footer-bottom{font-size:12px}.product-meta,.team-person .role,.team-person p,.gallery-note,.quote-form .fine-print{font-size:12px}.hero h1{font-size:clamp(36px,9.5vw,52px)}.product>img{width:72px;height:91px}.gallery-card{flex-basis:84vw}}

.flow-photo img,.gallery-card img{height:auto;aspect-ratio:3/2;object-fit:cover}.hero-content{animation:hero-settle .7s cubic-bezier(.16,1,.3,1) both}@keyframes hero-settle{from{transform:translateY(14px)}to{transform:translateY(0)}}.flow-item.enter-flow{animation:hero-settle .6s cubic-bezier(.16,1,.3,1) both}

@supports(content-visibility:auto){.delivery,.gallery-section,.team-section,.testimonials-section,.faq-section,.quote-section,.location-section,.site-footer{content-visibility:auto;contain-intrinsic-size:auto 700px}.delivery{contain-intrinsic-size:auto 1200px}.quote-section{contain-intrinsic-size:auto 900px}}

.map-frame{position:relative;padding-bottom:54px}.map-fallback{position:absolute;inset:auto 0 0;min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 18px;background:var(--surface);color:var(--ink);font-size:12px}.map-fallback a{display:inline-flex;gap:10px;align-items:center;font-weight:750;white-space:nowrap}.map-fallback .icon{width:16px;height:16px}@media(max-width:359px){.map-fallback{font-size:11px;padding-inline:12px;gap:10px}}

.brand,.product-measure{letter-spacing:-.035em}
.product-source{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:750;text-decoration:underline;text-underline-offset:4px;line-height:1.5}.product-source .icon{width:15px;height:15px}
.team-photo{width:112px;aspect-ratio:4/5;overflow:hidden;border-radius:var(--radius);margin-bottom:20px;background:var(--surface)}.team-photo img{width:100%;height:100%;margin:0;object-fit:cover;transition:transform .35s cubic-bezier(.22,1,.36,1)}.team-photo-note{margin:22px 0 0}.team-photo-note:not([hidden])+.team-list{margin-top:30px}@media(hover:hover) and (prefers-reduced-motion:no-preference){.team-person:hover .team-photo img{transform:scale(1.045)}}@media(max-width:767px){.team-photo{width:96px}}

/* Official supplied color and white logo variants follow the surface theme. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header .brand{display:block;max-width:none;flex:none}.brand-logo img{height:60px;width:auto;object-fit:contain}.brand-logo picture{display:block}.brand-logo{padding:0;margin:0}.footer-brand{display:inline-block;padding:0;background:transparent;max-width:100%}.footer-brand img{width:240px;height:auto;object-fit:contain}.site-footer{background:#003366}.brand-logo:focus-visible,.footer-brand:focus-visible{outline-color:#ff6500}.floating-whatsapp img{filter:brightness(0) saturate(100%) invert(13%) sepia(86%) saturate(1580%) hue-rotate(185deg) brightness(85%) contrast(101%)}@media(max-width:767px){.brand-logo img{height:50px}.site-header .brand{max-width:none}.footer-brand img{width:220px}}

.hero-video{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;background:transparent}.hero-video-toggle{position:absolute;right:26px;bottom:26px;z-index:2;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(10,14,19,.74);border-radius:50%;transition:background .2s}.hero-video-toggle:hover{background:rgba(10,14,19,.92)}.hero-video-toggle .icon{width:18px;height:18px}@media(max-width:767px){.hero-video-toggle{right:20px;bottom:20px}}

/* Photography stays natural; brand artwork is displayed without cropping. */
.family-product img{object-fit:contain;background:#f4f3ef}.family>span{font-weight:650;text-shadow:0 1px 4px rgba(0,0,0,.6)}
.promotion-section{background:var(--surface)}
.promotion-track{display:grid;grid-template-columns:minmax(0,1fr);padding-top:36px;overflow:clip;touch-action:pan-y;isolation:isolate}
.promotion-item{grid-area:1/1;min-width:0;width:100%;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 240ms cubic-bezier(.23,1,.32,1),visibility 0s 240ms}
.promotion-item.is-active{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;z-index:1}
.promotion-image{display:block;width:100%;height:auto;aspect-ratio:1400/481;object-fit:contain;background:#f4f3ef;pointer-events:none}
.promotion-body{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:22px}
.promotion-body h3{font-size:clamp(22px,2.3vw,32px);line-height:1.15}
.promotion-body p{font-size:13px;color:var(--muted);margin:8px 0 0;max-width:55ch}
.promotion-body .text-link{flex:none}
.promotion-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;margin-top:18px}
.promotion-dot{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:transparent;border-radius:var(--radius)}
.promotion-dot-marker{width:8px;height:8px;border:1px solid var(--muted);border-radius:50%;transition:background-color 120ms ease,border-color 120ms ease}
.promotion-dot[aria-current=true] .promotion-dot-marker{width:10px;height:10px;background:var(--accent-ink);border-color:var(--accent-ink)}
.promotion-track:focus-visible{outline-offset:5px}
.carousel-track{scroll-padding-inline:max(56px,calc((100vw - 1360px)/2))}.gallery-card img{object-fit:contain;background:#f4f3ef}.carousel-track:focus-visible{outline-offset:-4px}
@media(hover:hover) and (pointer:fine){.promotion-dot:hover .promotion-dot-marker{background:var(--muted)}}
@media(max-width:767px){.promotion-track{padding-top:28px}.promotion-body{align-items:start;flex-direction:column;gap:8px;padding-top:18px}.promotion-body h3{font-size:23px}.promotion-body p{font-size:12px}.carousel-track{scroll-padding-inline:20px}.promotion-section .gallery-heading{align-items:center;flex-wrap:wrap;gap:14px}.promotion-section .gallery-heading h2{font-size:34px}.promotion-section .gallery-arrows{margin-left:auto}.promotion-dots{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.promotion-item,.promotion-dot-marker{transition:none}}

/* Catalog manufacturers: full-color original artwork on one continuous surface. */
.brand-belt{background:#f1f2f2;color:#082e58;border-bottom:1px solid #d5dedf;padding:34px 0 32px}
.brand-belt-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}
.brand-belt h2{font-size:22px;letter-spacing:-.02em;line-height:1.2;font-weight:500;min-width:0}
.brand-belt-controls{display:flex;gap:8px;flex-shrink:0}
.brand-belt-controls button{color:#082e58;border:1px solid #bdcbd2;touch-action:manipulation}
.brand-belt-controls button:hover,.brand-belt-controls button[aria-pressed=true]{background:#e1e7eb}
.brand-belt-controls button:disabled{opacity:.35;cursor:default}
.brand-track{position:relative;overflow:clip;padding-block:6px 12px;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.brand-track:focus-visible{outline-color:#b43e00;outline-offset:0}
.brand-track.dragging,.brand-track.dragging .brand-link{cursor:grabbing}
.brand-loop{display:flex;width:max-content}
.brand-cycle{display:flex;flex-shrink:0;gap:36px;padding-right:36px;width:max-content}
.brand-link{flex:0 0 150px;min-width:0;min-height:90px;display:flex;align-items:center;justify-content:center;color:#082e58;touch-action:pan-y;-webkit-user-drag:none}
.brand-link:focus-visible{outline-color:#b43e00;outline-offset:-3px}
.brand-mark{display:block;width:138px;height:72px;object-fit:contain;transition:transform .2s ease;pointer-events:none}
.brand-link:focus-visible .brand-mark{transform:translateY(-3px) scale(1.04)}
.brand-mark-tolteca{width:72px;height:72px;border-radius:50%}
.brand-mark-sika{width:80px;height:84px}
.brand-mark-crest{width:140px;height:auto;background:#d20b23;padding:9px 10px}
.brand-mark-truper-expert{width:146px}
.brand-mark-fester{width:136px;height:66px}
.brand-mark-mapei{width:140px;height:46px}
.brand-mark-urrea{width:136px;height:62px}
.brand-mark-surtek{width:140px;height:46px}
.brand-name{font-family:Outfit,sans-serif;font-size:21px;font-weight:600;text-align:center}
.brand-track-static{display:flex;gap:36px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#b43e00 transparent;scroll-padding-inline:6px}
@media(hover:hover) and (pointer:fine){.brand-link:hover .brand-mark{transform:translateY(-3px) scale(1.04)}}
@media(max-width:1279px){.brand-belt{padding-block:30px}}
@media(max-width:767px){.brand-belt{padding-block:27px 22px}.brand-belt-heading{gap:12px;margin-bottom:15px}.brand-belt h2{font-size:18px;max-width:18ch}.brand-belt-controls{gap:6px}.brand-belt-controls button{width:38px;height:38px}.brand-cycle{gap:30px;padding-right:30px}.brand-track-static{gap:30px}.brand-link{flex-basis:138px;min-height:88px}.brand-mark{width:132px}.brand-mark-tolteca{width:68px;height:68px}.brand-mark-sika{width:74px;height:80px}.brand-mark-truper-expert{width:138px}}
@media(prefers-reduced-motion:reduce){.brand-link .brand-mark{transition:none;transform:none}}
