/* ROB ZAM — Hoja de estilos principal. Sitio estático sin dependencias externas. */
:root {
  --navy: #112955;
  --navy-dark: #081a3b;
  --blue: #225caa;
  --blue-bright: #317bcc;
  --gold: #f3c849;
  --gold-soft: #ffe09a;
  --peach: #f4ad88;
  --paper: #fbfaf7;
  --white: #fff;
  --muted: #66758c;
  --line: #e6e9ee;
  --radius-lg: 30px;
  --shadow: 0 20px 60px rgba(18, 47, 87, .09);
  --font: "Arial", "Helvetica Neue", Helvetica, sans-serif;
}
*, *::before, *::after {box-sizing: border-box}
html {scroll-behavior: smooth; scroll-padding-top: 100px}
body {margin: 0; background: var(--paper); color: var(--navy); font-family: var(--font); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: clip}
img, svg {display: block; max-width: 100%}
a {color: inherit; text-decoration: none}
button, a {-webkit-tap-highlight-color: transparent}
button {font: inherit}
::selection {background: var(--gold); color: var(--navy-dark)}
:focus-visible {outline: 3px solid #2b84e8; outline-offset: 4px}
.container {width: min(100% - 88px, 1330px); margin-inline: auto}
.skip-link {position: absolute; z-index: 999; top: -100px; left: 16px; padding: 12px 18px; background: white; border-radius: 10px}
.skip-link:focus {top: 16px}
.scroll-progress {position: fixed; z-index: 110; inset: 0 auto auto 0; height: 3px; width: 0; background: var(--gold); pointer-events: none}

/* Encabezado */
.site-header {height: 92px; position: sticky; top: 0; z-index: 100; background: rgba(251,250,247,.96); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border-bottom: 1px solid rgba(18,42,83,.07); transition: box-shadow .25s ease, background .25s ease}
.site-header.is-scrolled {box-shadow: 0 8px 26px rgba(17,41,85,.075); background: rgba(255,255,255,.97)}
.header-inner {height: 100%; display: flex; align-items: center; gap: 26px}
.brand {display: inline-flex; align-items: center; gap: 12px; flex-shrink: 0; border-radius: 9px}
.brand-mark {width: 44px; height: 44px; position: relative; border-radius: 11px; background: var(--navy); color: var(--white); display: flex; align-items: center; justify-content: center; font-weight: 950; letter-spacing: -4px; font-size: 20px; line-height: 1; box-shadow: inset -3px -3px 0 rgba(35,95,180,.28)}
.brand-mark span:last-child {color: var(--gold); transform: translateY(3px)}
.brand-name {display: flex; flex-wrap: wrap; align-items: baseline; column-gap: 5px; width: 102px; font-weight: 900; letter-spacing: -.065em; line-height: 1; font-size: 23px}
.brand-name strong {color: var(--blue); font-weight: 950}
.brand-name small {display: block; width: 100%; color: var(--muted); font-size: 8px; letter-spacing: .2em; font-weight: 800; padding-top: 5px}
.main-nav {display: flex; align-items: center; justify-content: center; gap: clamp(20px, 2.4vw, 39px); flex: 1}
.nav-link {font-size: 13px; font-weight: 800; color: #5b6576; transition: color .2s ease; white-space: nowrap; position: relative; padding: 13px 0}
.nav-link::after {content: ""; position: absolute; bottom: 6px; left: 0; height: 2px; width: 0; background: var(--blue); transition: width .25s ease}
.nav-link:hover, .nav-link.is-active {color: var(--navy)}
.nav-link:hover::after, .nav-link.is-active::after {width: 100%}
.header-contact {display: inline-flex; justify-content: center; align-items: center; gap: 10px; padding: 14px 16px; min-width: 157px; min-height: 46px; background: var(--navy); color: white; border-radius: 10px; font-weight: 800; font-size: 13px; box-shadow: 0 8px 18px rgba(17,41,85,.14); transition: background .25s ease, transform .25s ease, box-shadow .25s ease}
.header-contact:hover {background: var(--blue); transform: translateY(-2px); box-shadow: 0 12px 25px rgba(17,41,85,.18)}
.header-contact svg {width: 18px; height: 18px; fill: currentColor; flex-shrink: 0}
.header-contact .arrow-icon {width: 15px; height: 15px; fill: none}
.menu-toggle {display: none; border: 0; background: var(--navy); width: 46px; height: 46px; border-radius: 10px; padding: 12px; flex-direction: column; align-items: center; justify-content: center; gap: 5px; cursor: pointer}
.menu-toggle span {width: 21px; height: 2px; background: white; border-radius: 3px; transition: transform .25s ease, opacity .2s ease}
.menu-toggle[aria-expanded="true"] span:first-child {transform: translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2) {opacity: 0}
.menu-toggle[aria-expanded="true"] span:last-child {transform: translateY(-7px) rotate(-45deg)}

/* Portada */
.hero-section {padding-top: 25px}
.hero-panel {position: relative; isolation: isolate; background: radial-gradient(ellipse at 79% 34%, #245dad 0%, #163c81 33%, #0c285c 60%, #0b1d40 100%); min-height: 650px; border-radius: 32px; overflow: hidden; display: grid; grid-template-columns: 49% 51%; align-items: stretch; box-shadow: 0 24px 46px rgba(17,41,85,.15)}
.hero-grid {position: absolute; inset: 0; z-index: -1; background-image: linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px), linear-gradient(90deg,rgba(255,255,255,.055) 1px, transparent 1px); background-size: 60px 60px; mask-image: linear-gradient(90deg, transparent 10%, #000 100%); opacity: .28}
.hero-halo {position: absolute; z-index: -1; pointer-events: none; border-radius: 50%; filter: blur(5px)}
.hero-halo-1 {width: 760px; height: 760px; right: -250px; top: -360px; border: 1px solid rgba(255,255,255,.11); background: radial-gradient(circle,rgba(118,173,255,.21),transparent 64%)}
.hero-halo-2 {width: 560px; height: 560px; bottom: -445px; left: 22%; background: radial-gradient(circle,rgba(243,200,73,.13),transparent 72%)}
.hero-content {position: relative; z-index: 6; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 83px 0 104px clamp(42px, 5.1vw, 82px)}
.eyebrow {display: flex; gap: 13px; align-items: center; margin: 0 0 21px; color: var(--blue); font-weight: 900; font-size: 12px; letter-spacing: .22em; line-height: 1.4}
.eyebrow-line {display: inline-block; height: 2px; width: 31px; flex: 0 0 31px; background: var(--gold); border-radius: 3px}
.eyebrow-on-dark {color: #b6d1f1}
.hero-content .eyebrow {margin-bottom: 28px}
.hero-content h1 {margin: 0; font-size: clamp(51px, 5.2vw, 90px); line-height: .97; letter-spacing: -.079em; font-weight: 950; color: white; white-space: nowrap}
.hero-headline-accent {display: block; color: var(--gold); margin-top: 4px}
.headline-period {color: var(--gold); position: absolute; margin-left: 4px; transform: translateY(-.9em); display: none}
.hero-product-title {font-size: clamp(28px, 2.5vw, 39px); line-height: 1.2; letter-spacing: -.05em; color: white; font-weight: 780; margin: 25px 0 0}
.hero-summary {display: inline-flex; color: #fff; font-size: 12px; font-weight: 900; letter-spacing: .17em; border: 1px solid rgba(255,255,255,.32); padding: 11px 14px; border-radius: 7px; margin: 21px 0 0; background: rgba(255,255,255,.06)}
.hero-actions {display: flex; align-items: center; gap: 23px; margin-top: 35px; flex-wrap: wrap}
.btn {display: inline-flex; justify-content: space-between; align-items: center; gap: 25px; border-radius: 11px; padding: 17px 19px 17px 21px; font-size: 13px; font-weight: 900; min-height: 56px; transition: transform .25s ease, box-shadow .25s ease, background .25s ease}
.btn:hover {transform: translateY(-3px)}
.btn svg {width: 20px; height: 20px; flex: 0 0 20px; transition: transform .25s ease}
.btn:hover svg {transform: translateX(3px)}
.btn-gold {background: var(--gold); color: var(--navy-dark); box-shadow: 0 13px 29px rgba(8,17,48,.2)}
.btn-gold:hover {background: #ffe18a; box-shadow: 0 18px 35px rgba(8,17,48,.22)}
.hero-secondary {display: inline-flex; align-items: center; gap: 11px; color: #e9f2ff; font-size: 13px; font-weight: 800; padding-block: 12px; transition: color .25s}
.hero-secondary svg {height: 16px; width: 16px; transition: transform .25s}
.hero-secondary:hover {color: var(--gold)}
.hero-secondary:hover svg {transform: translateY(3px)}
.hero-visual {position: relative; align-self: stretch; min-width: 0; z-index: 2}
.visual-orbit {position: absolute; border: 1px solid rgba(177,212,255,.19); border-radius: 50%; aspect-ratio: 1; pointer-events: none}
.orbit-one {width: 78%; right: 7%; top: 10%; box-shadow: 0 0 0 60px rgba(112,169,250,.025), 0 0 0 126px rgba(112,169,250,.018)}
.orbit-two {width: 53%; right: 20%; top: 23%; border-style: dashed; border-color: rgba(243,200,73,.2)}
.visual-platform {position: absolute; bottom: 85px; left: 3%; right: 3%; height: 34px; border-radius: 50%; background: radial-gradient(ellipse,#79c1ff 0%,rgba(86,142,208,.15) 45%,transparent 70%); filter: blur(9px)}
.hero-washer, .hero-fridge {position: absolute; object-fit: contain; height: auto; filter: drop-shadow(0 18px 27px rgba(2,10,33,.35)); user-select: none; pointer-events: none}
.hero-washer {width: min(65%, 460px); left: -3%; bottom: 41px; z-index: 3; transform: rotate(-4deg); animation: washFloat 6s ease-in-out infinite}
.hero-fridge {width: min(63%, 430px); right: 0%; bottom: 29px; z-index: 2; transform: rotate(3deg); animation: fridgeFloat 7s ease-in-out infinite}
@keyframes washFloat {0%,100% {transform: translateY(0) rotate(-4deg)} 50% {transform: translateY(-10px) rotate(-3deg)}}
@keyframes fridgeFloat {0%,100% {transform: translateY(0) rotate(3deg)} 50% {transform: translateY(-8px) rotate(2deg)}}
.hero-float-label {position: absolute; top: 85px; right: 12%; width: 145px; aspect-ratio: 1; z-index: 5; border-radius: 50%; background: var(--gold); color: var(--navy-dark); display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 4px; border: 8px solid rgba(16,44,101,.45); outline: 1px solid rgba(255,255,255,.2); box-shadow: 0 15px 35px rgba(4,18,52,.18); transform: rotate(10deg); text-align: center; font-weight: 950; font-size: 15px; line-height: 1.1; letter-spacing: -.03em}
.float-label-star {width: 22px; height: 22px; background: var(--navy); clip-path: polygon(50% 0, 61% 35%, 100% 50%, 61% 62%, 50% 100%, 39% 62%, 0 50%, 39% 35%)}
.hero-bottom-label {position: absolute; bottom: 35px; left: clamp(42px, 5.1vw, 82px); color: #93b1de; font-size: 11px; font-weight: 850; letter-spacing: .19em}
.hero-bottom-label span {color: var(--gold); margin-inline: 5px}
.value-strip {min-height: 94px; display: flex; justify-content: center; align-items: center; gap: clamp(23px,5vw,76px); background: white; margin: -1px 22px 0; padding: 23px 22px; border-radius: 0 0 20px 20px; box-shadow: 0 12px 30px rgba(24,44,82,.035); border: 1px solid #eef0f3; border-top: 0}
.strip-item {display: flex; align-items: baseline; gap: 14px; white-space: nowrap}
.strip-number {font-size: 10px; letter-spacing: .06em; color: #91a2b7; font-weight: 900}
.strip-item strong {font-weight: 950; letter-spacing: -.025em; font-size: clamp(13px,1.55vw,21px)}
.strip-divider {height: 21px; width: 1px; background: #d8e0e9}

/* Títulos y tarjetas de productos */
.section-space {padding: 132px 0}
.section-heading {display: flex; align-items: end; justify-content: space-between; gap: 25px; margin-bottom: 47px}
.section-heading h2, .services-lead h2, .contact-left h2 {font-size: clamp(42px,4.55vw,74px); line-height: 1.02; margin: 0; font-weight: 900; letter-spacing: -.07em}
.section-heading h2 em {color: var(--blue); font-style: normal}
.section-intro {margin: 0 10px 9px 0; font-size: 18px; color: var(--muted); font-weight: 700; white-space: nowrap}
.products-section {position: relative; isolation: isolate}
.products-section::before {content: ""; position: absolute; z-index: -1; top: 26%; right: 0; width: 500px; height: 500px; background: radial-gradient(circle,rgba(247,203,94,.09), transparent 65%)}
.product-grid {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px}
.product-card {background: white; border: 1px solid #e4e9ef; border-radius: 25px; padding: 14px; box-shadow: var(--shadow); transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease; min-width: 0}
.product-card:hover {transform: translateY(-8px); box-shadow: 0 28px 63px rgba(20,55,97,.15); border-color: #c8d6e7}
.product-art {height: 393px; position: relative; border-radius: 16px; overflow: hidden; isolation: isolate; display: flex; align-items: center; justify-content: center}
.product-card-washer .product-art {background: radial-gradient(circle at 50% 65%, #d5eaff 0%, #e7f3ff 45%, #dfeafb 100%)}
.product-card-fridge .product-art {background: radial-gradient(circle at 50% 65%, #fee9b5 0%, #fff3d4 49%, #ffebcf 100%)}
.art-ring {position: absolute; z-index: -1; width: 330px; height: 330px; border: 2px solid rgba(34,92,170,.12); border-radius: 50%; box-shadow: 0 0 0 60px rgba(255,255,255,.18), 0 0 0 125px rgba(255,255,255,.12)}
.product-card-fridge .art-ring {border-color: rgba(187,136,40,.19)}
.art-label {position: absolute; z-index: 2; top: 25px; left: 27px; padding: 10px 12px; border: 1px solid rgba(17,41,85,.16); border-radius: 6px; background: rgba(255,255,255,.68); color: var(--navy); font-size: 10px; font-weight: 900; letter-spacing: .15em; backdrop-filter: blur(8px)}
.product-art img {height: 355px; max-width: 95%; width: auto; object-fit: contain; filter: drop-shadow(0 18px 17px rgba(18,43,79,.16)); transform: translateY(14px); transition: transform .5s ease}
.product-card-washer .product-art img {height: 360px}
.product-card-fridge .product-art img {height: 379px; transform: translateY(17px)}
.product-card:hover .product-art img {transform: translateY(6px) scale(1.04)}
.product-card-fridge:hover .product-art img {transform: translateY(9px) scale(1.04)}
.art-corner {position: absolute; right: 22px; bottom: 22px; width: 35px; height: 35px; border-right: 2px solid rgba(17,41,85,.16); border-bottom: 2px solid rgba(17,41,85,.16)}
.product-card-content {display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 27px 15px 19px}
.card-meta {font-size: 10px; color: var(--blue); font-weight: 900; letter-spacing: .16em}
.product-copy h3 {font-size: clamp(29px,2.5vw,38px); line-height: 1.15; letter-spacing: -.05em; margin: 9px 0 6px; font-weight: 900}
.product-copy p {margin: 0; font-size: 15px; font-weight: 600; color: var(--muted)}
.icon-action {flex: 0 0 55px; width: 55px; height: 55px; border-radius: 50%; display: grid; place-items: center; color: white; background: var(--navy); transition: background .25s, transform .25s}
.icon-action:hover {background: var(--blue); transform: rotate(-35deg)}
.icon-action svg {height: 23px; width: 23px}

/* Servicios */
.services-section {background: var(--navy-dark); color: white; overflow: hidden; position: relative}
.services-section::before {content: ""; position: absolute; width: 760px; height: 760px; border-radius: 50%; left: -310px; bottom: -470px; background: radial-gradient(circle,rgba(48,108,195,.23),transparent 67%); pointer-events: none}
.services-section::after {content: ""; position: absolute; width: 640px; height: 640px; border-radius: 50%; right: -320px; top: -390px; background: radial-gradient(circle,rgba(236,170,68,.13),transparent 65%); pointer-events: none}
.services-inner {display: grid; grid-template-columns: 1fr 1.02fr; align-items: center; gap: clamp(40px,7vw,108px); position: relative; z-index: 1}
.services-lead {position: relative}
.services-lead .eyebrow {margin-bottom: 26px}
.services-lead h2 {font-size: clamp(47px,4.6vw,76px); color: var(--white)}
.services-lead h2 span {color: var(--gold)}
.services-lead > p:not(.eyebrow) {color: #afc2de; font-size: 18px; font-weight: 600; margin: 29px 0 0}
.services-pattern {width: 170px; height: 95px; margin-top: 49px; background-image: radial-gradient(rgba(243,200,73,.8) 1.5px, transparent 1.5px); background-size: 18px 18px; opacity: .44; mask-image: linear-gradient(90deg,black,transparent)}
.services-cards {display: grid; gap: 17px}
.service-card {position: relative; display: grid; grid-template-columns: 84px 1fr 40px; gap: 17px; align-items: center; min-height: 193px; padding: 29px 25px; background: #142e5b; border: 1px solid rgba(179,207,248,.16); border-radius: 19px; transition: transform .3s ease, border-color .3s, background .3s}
.service-card:hover {transform: translateX(-5px); border-color: rgba(243,200,73,.6); background: #173768}
.service-icon {width: 78px; height: 78px; background: rgba(255,255,255,.075); border: 1px solid rgba(255,255,255,.15); color: var(--gold); border-radius: 18px; display: grid; place-items: center}
.service-icon svg {width: 57px; height: 57px}
.service-index {color: #98b1d5; font-size: 10px; font-weight: 900; letter-spacing: .17em}
.service-card-text h3 {font-weight: 900; font-size: clamp(26px,2.3vw,34px); letter-spacing: -.04em; margin: 9px 0 7px}
.service-card-text p {color: #b1c5e1; font-size: 14px; line-height: 1.5; margin: 0}
.service-arrow {width: 38px; height: 38px; border-radius: 50%; background: rgba(255,255,255,.1); display: grid; place-items: center; justify-self: end; transition: background .25s, color .25s}
.service-arrow:hover {background: var(--gold); color: var(--navy-dark)}
.service-arrow svg {height: 19px; width: 19px}

/* Contacto */
.contact-section {padding-top: 132px; padding-bottom: 132px}
.contact-panel {display: flex; align-items: center; justify-content: space-between; gap: 30px; border-radius: 30px; background: linear-gradient(116deg,#f9d56b 0%,#f3bf48 48%,#f0a76b 100%); padding: clamp(35px,5vw,74px); overflow: hidden; position: relative; isolation: isolate; box-shadow: 0 22px 55px rgba(137,96,18,.11)}
.contact-ornament {position: absolute; z-index: -1; pointer-events: none; border: 1px solid rgba(255,255,255,.27); border-radius: 50%}
.contact-ornament-one {width: 510px; height: 510px; top: -310px; right: 22%}
.contact-ornament-two {width: 500px; height: 500px; bottom: -390px; right: -120px; box-shadow: 0 0 0 68px rgba(255,255,255,.06), 0 0 0 140px rgba(255,255,255,.04)}
.contact-left .eyebrow {color: #263c5c}
.contact-left .eyebrow-line {background: var(--navy)}
.contact-left h2 {font-size: clamp(48px,5.2vw,79px)}
.contact-left > p:not(.eyebrow) {font-size: 17px; font-weight: 600; margin: 18px 0 0; line-height: 1.5}
.contact-left strong {font-weight: 900}
.contact-right {background: rgba(255,255,255,.43); border: 1px solid rgba(255,255,255,.45); border-radius: 18px; padding: 29px 31px; min-width: 345px; box-shadow: 0 15px 35px rgba(140,87,5,.055); backdrop-filter: blur(7px)}
.contact-label {font-size: 11px; font-weight: 900; letter-spacing: .21em; color: #3b5574; display: block; margin-bottom: 13px}
.contact-number {display: block; font-size: clamp(31px,3vw,44px); font-weight: 900; letter-spacing: -.058em; white-space: nowrap; margin-bottom: 21px; transition: color .25s}
.contact-number:hover {color: var(--blue)}
.btn-navy {background: var(--navy); color: var(--white); min-width: 100%; box-shadow: 0 9px 25px rgba(18,42,83,.18)}
.btn-navy:hover {background: #1d5097}

/* Pie */
.site-footer {background: var(--navy-dark); color: white; padding: 70px 0 21px}
.footer-inner {display: flex; justify-content: space-between; align-items: start; gap: 30px; padding-bottom: 63px}
.footer-wordmark {font-weight: 950; color: white; font-size: 34px; letter-spacing: -.06em}
.footer-wordmark strong {color: var(--gold)}
.footer-brand p {font-size: 14px; line-height: 1.9; color: #b0c2dc; margin: 20px 0 0; max-width: 500px}
.footer-right {display: flex; flex-direction: column; align-items: flex-start; gap: 13px}
.footer-right > span {font-size: 10px; letter-spacing: .18em; color: #a4b9d8; font-weight: 900}
.footer-right a {display: flex; align-items: center; gap: 9px; font-weight: 900; font-size: 20px; transition: color .25s}
.footer-right a:hover {color: var(--gold)}
.footer-right svg {width: 18px; height: 18px}
.footer-bottom {display: flex; justify-content: space-between; gap: 15px; padding-top: 21px; border-top: 1px solid rgba(255,255,255,.11); color: #91a9c8; font-size: 11px; font-weight: 800; letter-spacing: .09em}
.mobile-whatsapp {display: none}

/* Animaciones de entrada, solo si el navegador puede ejecutar IntersectionObserver */
body.js-animations [data-reveal] {opacity: 0; transform: translateY(25px); transition: opacity .65s ease, transform .65s cubic-bezier(.18,.65,.2,1)}
body.js-animations [data-reveal].is-visible {opacity: 1; transform: translateY(0)}
body.js-animations .product-card:nth-child(2) {transition-delay: .12s}
body.js-animations .service-card:nth-child(2) {transition-delay: .1s}

/* Pantallas intermedias */
@media (max-width: 1200px) {
  .container {width: min(100% - 60px, 1330px)}
  .header-inner {gap: 16px}
  .main-nav {gap: 19px}
  .nav-link {font-size: 12px}
  .hero-panel {min-height: 595px}
  .hero-content {padding-left: 46px; padding-bottom: 95px}
  .hero-content h1 {font-size: clamp(47px,5.35vw,69px)}
  .hero-product-title {font-size: clamp(27px,3vw,35px)}
  .hero-washer {width: 72%; left: -10%}
  .hero-fridge {width: 70%; right: -6%}
  .hero-bottom-label {left: 46px}
  .hero-float-label {width: 125px; top: 88px; right: 6%; font-size: 14px}
  .product-art {height: 360px}
  .product-art img {height: 330px}
  .product-card-washer .product-art img {height: 336px}
  .product-card-fridge .product-art img {height: 355px}
  .service-card {grid-template-columns: 70px 1fr 32px; padding: 22px; gap: 14px}
  .service-icon {width: 67px; height: 67px}
  .service-icon svg {width: 50px; height: 50px}
}
@media (max-width: 980px) {
  html {scroll-padding-top: 80px}
  .site-header {height: 78px}
  .main-nav {gap: 13px}
  .header-contact {padding: 12px; min-width: 48px}
  .header-contact span, .header-contact .arrow-icon {display: none}
  .hero-panel {grid-template-columns: 50% 50%; min-height: 525px}
  .hero-content {padding: 60px 0 75px 36px}
  .hero-content h1 {font-size: clamp(41px,5.35vw,53px)}
  .hero-product-title {font-size: 27px}
  .hero-actions {gap: 15px}
  .hero-secondary {display: none}
  .btn {gap: 14px; padding: 15px; font-size: 12px}
  .hero-bottom-label {left: 36px; bottom: 28px}
  .hero-float-label {width: 107px; font-size: 12px; top: 66px; right: 5%; border-width: 6px}
  .value-strip {gap: 23px}
  .section-space {padding-block: 100px}
  .product-art {height: 320px}
  .product-art img, .product-card-washer .product-art img {height: 293px}
  .product-card-fridge .product-art img {height: 320px}
  .services-inner {grid-template-columns: .8fr 1fr; gap: 28px}
  .services-lead h2 {font-size: 48px}
  .service-card {grid-template-columns: 57px 1fr 25px; min-height: 154px; padding: 18px; gap: 11px}
  .service-icon {width: 53px; height: 53px; border-radius: 12px}
  .service-icon svg {width: 42px; height: 42px}
  .service-card-text h3 {font-size: 26px}
  .service-arrow {width: 30px; height: 30px}
  .contact-panel {padding: 43px}
  .contact-right {min-width: 295px; padding: 23px}
  .contact-number {font-size: 32px}
}
@media (max-width: 760px) {
  .container {width: min(100% - 36px, 590px)}
  .site-header {height: 74px}
  .header-inner {justify-content: space-between}
  .brand-mark {width: 40px; height: 40px}
  .brand-name {font-size: 21px}
  .menu-toggle {display: flex; margin-left: auto; order: 3}
  .header-contact {min-width: 44px; min-height: 44px; height: 44px; padding: 11px; order: 2; margin-left: auto}
  .header-contact svg {width: 20px; height: 20px}
  .main-nav {position: absolute; z-index: 30; top: 74px; left: 0; right: 0; display: flex; flex-direction: column; align-items: stretch; gap: 0; padding: 8px 18px 17px; background: white; box-shadow: 0 24px 28px rgba(15,40,80,.11); border-bottom: 1px solid var(--line); opacity: 0; visibility: hidden; transform: translateY(-8px); transition: opacity .2s,transform .2s,visibility .2s}
  .main-nav.is-open {opacity: 1; visibility: visible; transform: translateY(0)}
  .nav-link {font-size: 15px; padding: 14px; border-bottom: 1px solid #edf0f4}
  .nav-link:last-child {border-bottom: 0}
  .nav-link::after {display: none}
  .nav-link.is-active {color: var(--blue)}
  .hero-section {padding-top: 14px}
  .hero-panel {display: flex; flex-direction: column; min-height: 0; border-radius: 23px}
  .hero-content {padding: 49px 29px 0; align-items: flex-start}
  .hero-content .eyebrow {margin-bottom: 18px}
  .hero-content h1 {font-size: clamp(48px,10.4vw,76px)}
  .hero-product-title {font-size: clamp(30px,5.6vw,43px); margin-top: 20px}
  .hero-summary {margin-top: 16px}
  .hero-actions {margin-top: 25px}
  .hero-secondary {display: inline-flex}
  .hero-visual {height: 380px; flex: 0 0 380px}
  .hero-washer {width: 61%; left: 2%; bottom: 7px}
  .hero-fridge {width: 58%; right: 1%; bottom: 0}
  .hero-float-label {width: 108px; top: 12px; right: 15%; font-size: 12px}
  .visual-platform {bottom: 18px}
  .orbit-one {width: 69%; right: 14%; top: 0}
  .orbit-two {width: 46%; top: 19%; right: 25%}
  .hero-bottom-label {position: static; padding: 0 28px 28px; font-size: 10px}
  .value-strip {margin: 0 9px; min-height: 71px; padding: 19px 11px; gap: 11px; border-radius: 0 0 15px 15px}
  .strip-item {gap: 7px}
  .strip-number {font-size: 9px}
  .strip-item strong {font-size: clamp(10px,2.45vw,14px)}
  .strip-divider {height: 16px}
  .section-space {padding-block: 85px}
  .section-heading {align-items: flex-start; flex-direction: column; gap: 16px; margin-bottom: 30px}
  .section-heading h2, .contact-left h2 {font-size: clamp(44px,8vw,62px)}
  .section-intro {font-size: 16px; margin: 0}
  .product-grid {grid-template-columns: 1fr; gap: 23px}
  .product-art {height: 350px}
  .product-art img, .product-card-washer .product-art img {height: 325px}
  .product-card-fridge .product-art img {height: 349px}
  .product-card-content {padding: 23px 12px 15px}
  .services-inner {grid-template-columns: 1fr; gap: 33px}
  .services-lead h2 {font-size: clamp(49px,9vw,65px)}
  .services-lead > p:not(.eyebrow) {margin-top: 19px; font-size: 16px}
  .services-pattern {display: none}
  .service-card {grid-template-columns: 75px 1fr 40px; min-height: 164px; padding: 22px; gap: 13px}
  .service-icon {width: 70px; height: 70px}
  .service-icon svg {width: 53px; height: 53px}
  .service-arrow {height: 36px; width: 36px}
  .contact-panel {flex-direction: column; align-items: stretch; padding: 38px 29px; gap: 27px; border-radius: 22px}
  .contact-left h2 {font-size: 58px}
  .contact-right {min-width: 0; width: 100%}
  .contact-number {font-size: clamp(30px,6.5vw,40px)}
  .site-footer {padding-top: 60px; padding-bottom: 112px}
  .footer-inner {flex-direction: column; gap: 36px; padding-bottom: 40px}
  .footer-bottom {font-size: 10px}
  .mobile-whatsapp {position: fixed; z-index: 90; bottom: max(14px, env(safe-area-inset-bottom)); left: 50%; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; gap: 11px; width: min(calc(100% - 36px), 480px); min-height: 55px; background: #167a55; color: white; padding: 13px 18px; border-radius: 14px; box-shadow: 0 9px 30px rgba(5,54,35,.25); font-size: 14px; font-weight: 900}
  .mobile-whatsapp svg {height: 22px; width: 22px; fill: currentColor}
  .mobile-whatsapp .mobile-wa-arrow {height: 18px; width: 18px; margin-left: auto; fill: none}
}
@media (max-width: 420px) {
  .container {width: calc(100% - 24px)}
  .brand {gap: 8px}
  .brand-mark {width: 36px; height: 36px; font-size: 18px}
  .brand-name {font-size: 19px; width: 88px}
  .brand-name small {font-size: 7px}
  .header-inner {gap: 9px}
  .hero-content {padding: 38px 22px 0}
  .hero-content h1 {font-size: clamp(43px,11.6vw,54px)}
  .hero-product-title {font-size: 29px}
  .hero-actions {gap: 11px}
  .hero-secondary {font-size: 12px}
  .btn {font-size: 12px; min-height: 52px; gap: 12px}
  .hero-visual {height: 300px; flex-basis: 300px}
  .hero-washer {width: 65%; bottom: -5px; left: -3%}
  .hero-fridge {width: 63%; right: -5%; bottom: -7px}
  .hero-float-label {width: 86px; top: 5px; right: 8%; font-size: 10px; border-width: 5px}
  .float-label-star {width: 17px; height: 17px}
  .hero-bottom-label {padding: 5px 22px 24px; font-size: 9px}
  .value-strip {gap: 8px; padding-inline: 8px}
  .strip-item {flex-direction: column; gap: 4px}
  .strip-item strong {font-size: 10px}
  .strip-divider {height: 24px}
  .section-space {padding-block: 67px}
  .section-heading h2 {font-size: 43px}
  .product-card {padding: 9px; border-radius: 19px}
  .product-art {height: 285px; border-radius: 13px}
  .product-art img, .product-card-washer .product-art img {height: 265px}
  .product-card-fridge .product-art img {height: 286px}
  .art-label {top: 15px; left: 13px; font-size: 9px}
  .product-copy h3 {font-size: 29px}
  .icon-action {width: 47px; height: 47px; flex-basis: 47px}
  .services-lead h2 {font-size: 46px}
  .service-card {grid-template-columns: 57px 1fr 28px; gap: 11px; padding: 17px 14px; min-height: 142px}
  .service-icon {width: 54px; height: 54px; border-radius: 12px}
  .service-icon svg {width: 43px; height: 43px}
  .service-index {font-size: 9px}
  .service-card-text h3 {font-size: 25px}
  .service-card-text p {font-size: 12px}
  .service-arrow {width: 29px; height: 29px}
  .contact-panel {padding: 31px 18px}
  .contact-left h2 {font-size: 49px}
  .contact-left > p:not(.eyebrow) {font-size: 15px}
  .contact-right {padding: 22px 18px}
  .contact-number {font-size: clamp(28px, 8vw, 33px)}
  .footer-bottom {flex-direction: column; gap: 8px}
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important}
  body.js-animations [data-reveal] {opacity: 1 !important; transform: none !important}
}
