/* Azul institucional para componentes compartidos y el panel. */
:root{--blue:#1c55b6;--teal:#1c55b6}
.product-gallery{min-width:0}.product-thumbs{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.product-thumb{width:78px;height:68px;padding:4px;background:#fff;border:1px solid #d7e0ea;border-radius:7px;cursor:pointer}.product-thumb.active,.product-thumb:hover{border-color:#1c55b6;box-shadow:0 0 0 2px #1c55b626}.product-thumb img{display:block;width:100%;height:100%;object-fit:contain}.product-colors{margin:18px 0}.color-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.color-choice{border:1px solid #aebfd4;background:#fff;border-radius:99px;color:#123779;padding:7px 12px;font:700 .84rem Arial,sans-serif;cursor:pointer}.color-choice:hover,.color-choice.active{background:#1c55b6;border-color:#1c55b6;color:#fff}
.specs{white-space:normal;overflow-x:auto}.specification-tables{display:grid;gap:26px}.specification-table h3{margin:0 0 10px;color:#1c55b6;font:700 18px Arial,sans-serif}.specification-table table{width:100%;border-collapse:collapse;font-size:14px}.specification-table th,.specification-table td{padding:12px 14px;border:1px solid #dce5ea;text-align:left;vertical-align:top}.specification-table th{width:36%;background:#f2f5fc;color:#1c55b6;font-weight:700}.specification-table tr:nth-child(even) td{background:#fbfcff}.specification-note{margin:0;line-height:1.55}@media(max-width:600px){.specification-table th{width:42%}.specification-table th,.specification-table td{padding:10px;font-size:13px}}
.eyebrow,.card .category-label{color:#1c55b6}
.featured-original .price{display:flex;align-items:baseline;gap:5px}.price-currency{font-size:.75em;letter-spacing:.04em}.price-pair{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.price-old{color:#718096;font-size:.78em;font-weight:500;text-decoration-thickness:1.5px}.price-current{color:#1954b4;font-weight:700}.price-block .price-old{font-size:.58em}
.wa-link,.button,.floating-wa{background:#1c55b6}
.floating-wa{box-shadow:0 5px 20px #1c55b688;font-size:0}.floating-wa img{width:29px;height:29px;object-fit:contain}
.contact-box,.promo,.catalog-hero{background:#f2f5fc}
.cabal-original{background:#e6e9ec}
footer{display:block;padding:0 max(24px,calc((100vw - 1170px)/2)) 62px}
.payment-methods{border-top:1px solid rgba(255,255,255,.35);padding-top:18px;margin-top:24px}.payment-methods b{display:block;font-size:12px;margin-bottom:8px}.payment-methods img{display:block;width:min(100%,420px);height:auto;max-height:92px;object-fit:contain;object-position:left center}
.footer-location{max-width:980px;margin:0 auto;padding:58px 0 85px;display:grid;grid-template-columns:360px 1fr;gap:50px;align-items:center}.footer-location h2{font:700 39px/1.02 Arial,sans-serif;color:#fff;margin:0 0 14px;letter-spacing:-1px}.footer-location a{color:#fff;font-size:14px;font-weight:bold;text-decoration:underline}.footer-location iframe{display:block;width:100%;height:310px;border:0}.footer-details{max-width:980px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:110px;color:#fff}.footer-details p{color:#fff;line-height:1.32;max-width:370px}.footer-details a{color:#fff;text-decoration:underline;font-weight:bold}.footer-details .footer-brand{font:700 23px Arial,sans-serif}.footer-contact{padding-top:4px;font-size:14px}.social-links a,.footer-social a{display:grid;place-items:center;text-decoration:none}.social-links img,.footer-social img{display:block;width:24px;height:24px;object-fit:contain}.footer-social{display:flex;gap:11px;align-items:center}.footer-social a{width:24px;height:24px}@media(max-width:850px){footer{padding:0 28px 48px}.footer-location{display:block;padding:55px 0}.footer-location h2{font-size:30px}.footer-location iframe{height:270px;margin-top:30px}.footer-details{display:block}.footer-contact{margin-top:44px}.payment-methods img{max-width:100%}}
.footer-location{max-width:980px;margin:0 auto;padding:58px 0 85px;display:grid;grid-template-columns:360px 1fr;gap:50px;align-items:center}.footer-location h2{font:700 39px/1.02 Arial,sans-serif;color:#fff;margin:0 0 14px;letter-spacing:-1px}.footer-location a{color:#fff;font-size:14px;font-weight:bold;text-decoration:underline}.footer-location iframe{display:block;width:100%;height:310px;border:0}.footer-details{max-width:980px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:110px;color:#fff}.footer-details p{color:#fff;line-height:1.32;max-width:370px}.footer-details a{color:#fff;text-decoration:underline;font-weight:bold}.footer-details .footer-brand{font:700 23px Arial,sans-serif}.footer-contact{padding-top:4px;font-size:14px}.social-links a,.footer-social a{display:grid;place-items:center;text-decoration:none}.social-links img,.footer-social img{display:block;width:24px;height:24px;object-fit:contain}.footer-social{display:flex;gap:11px;align-items:center}.footer-social a{width:24px;height:24px}.radix-credit{max-width:980px;margin:62px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.35);display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;text-decoration:none;font-size:12px;opacity:.85;transition:opacity .2s}.radix-credit:hover{opacity:1}.radix-credit img{width:30px;height:30px;object-fit:contain}@media(max-width:850px){footer{padding:0 28px 48px}.footer-location{display:block;padding:55px 0}.footer-location h2{font-size:30px}.footer-location iframe{height:270px;margin-top:30px}.footer-details{display:block}.footer-contact{margin-top:44px}.payment-methods img{max-width:100%}.radix-credit{margin-top:45px}}

/* Ajustes móviles globales. Estas reglas quedan al final para corregir estilos heredados. */
html,body{max-width:100%;overflow-x:hidden}img,iframe{max-width:100%}
@media(max-width:850px){
  body.nav-open{overflow:hidden}
  .header{position:sticky;top:0;z-index:50;height:66px;padding:0 max(18px,env(safe-area-inset-right)) 0 max(18px,env(safe-area-inset-left));box-shadow:0 2px 12px rgba(11,45,96,.18)}
  .brand img{width:126px;max-height:48px;object-fit:contain}
  .nav-toggle{display:grid;place-items:center;width:44px;height:44px;margin-left:auto;padding:0;color:#fff;font-size:29px;line-height:1;cursor:pointer}
  .header nav.open{display:flex;position:absolute;top:66px;left:0;right:0;z-index:60;max-height:calc(100vh - 66px);overflow-y:auto;padding:12px 20px calc(18px + env(safe-area-inset-bottom));gap:0;flex-direction:column;align-items:stretch;background:#1c55b6;box-shadow:0 12px 25px rgba(0,0,0,.2)}
  .header nav.open a,.header nav.open a:first-child{display:block;width:100%;padding:13px 4px;border:0;border-bottom:1px solid rgba(255,255,255,.2);color:#fff;font-size:16px;text-align:left}

  .hero-original{min-height:0;display:flex;flex-direction:column;gap:28px;padding:46px 20px 0;text-align:left}
  .hero-original-copy{width:100%}
  .hero-original h1{margin:0 0 14px;font-size:clamp(40px,13vw,56px);line-height:.94;letter-spacing:-1px}
  .hero-original p{font-size:16px;line-height:1.42}
  .hero-original p br{display:none}
  .hero-original>img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover;object-position:center top;border-radius:12px 12px 0 0}
  .intro-original{min-height:0;padding:65px 22px 55px}
  .intro-original h2{font-size:29px;line-height:1.02}
  .intro-original p{width:auto;font-size:15px;line-height:1.55}
  .categories-original{padding:0 20px 85px;gap:38px 16px}
  .categories-original h3{font-size:20px}
  .categories-original p{min-height:0;margin-bottom:14px;line-height:1.35}
  .categories-original a{min-height:44px;display:grid;place-items:center;padding:10px 8px}
  .cabal-original{padding:48px 22px;gap:24px}
  .cabal-original>div{max-width:none}
  .cabal-original .cabal-logo{width:155px}
  .cabal-original h2{font-size:24px}
  .cabal-original>img{width:100%;max-height:none}
  .warranty-original{min-height:0;padding:62px 22px;gap:20px}
  .warranty-original h2{font-size:24px}
  .warranty-original h2 br{display:none}
  .history-original{min-height:0;padding:38px 14px}
  .featured-original{padding:58px 18px}
  .featured-original>h2{font-size:27px;line-height:1.08;margin-bottom:28px}
  .featured-original .product-grid{gap:24px 12px}
  .featured-original .card,.product-grid .card{min-width:0}
  .featured-original .card-image{height:170px}
  .card h3{font-size:16px;overflow-wrap:anywhere}
  .card p{min-height:0;font-size:13px}
  .price{font-size:17px}
  .instagram-original{padding:55px 18px 65px}
  .instagram-heading{align-items:flex-start;gap:14px}
  .instagram-heading h2{font-size:26px}
  .instagram-heading a{font-size:14px}

  .catalog-hero{padding:38px 18px 32px}
  .catalog-hero h1{font-size:2.25rem;line-height:1.05}
  .catalog-hero p{margin-bottom:0}
  .filters{margin-inline:-4px;gap:7px}
  .filters a{padding:8px 11px}
  .section{padding:44px 18px}
  main>.section .product-grid{gap:22px 12px}

  .product-page{padding:24px 16px 48px}
  .breadcrumb{margin-bottom:16px;font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .product-layout{gap:26px}
  .product-main-image{height:min(82vw,390px);border-radius:9px}
  .product-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
  .product-thumb{width:100%;height:68px}
  .product-info h1{font-size:clamp(2rem,10vw,2.75rem);line-height:1.02;margin-top:8px}
  .product-info .subtitle{font-size:1rem}
  .price-block .price{font-size:1.75rem}
  .color-choices{gap:7px}
  .color-choice{min-height:40px;padding:8px 12px}
  .contact-box{padding:18px 16px}
  .contact-box .button{white-space:normal;min-height:44px;display:grid;place-items:center}
  .description{font-size:15px;line-height:1.55}
  .product-page>.section{padding-top:46px!important}
  .specs{padding:14px}
  .specification-tables{gap:20px}

  .about-hero,.about-origin,.about-timeline,.about-current{padding-left:22px;padding-right:22px}
  .about-hero{padding-top:52px;gap:34px}
  .about-hero h1{font-size:clamp(34px,10vw,43px)}
  .about-hero p{font-size:15px}
  .about-actions{flex-wrap:wrap}
  .about-actions a{flex:1;min-width:130px;text-align:center;padding:13px 15px}
  .about-origin,.about-timeline,.about-current{padding-top:58px;padding-bottom:58px}
  .about-beginnings,.about-continuity{padding:58px 22px}
  .about-portraits img{height:auto;aspect-ratio:3/4}
  .about-complete{padding:52px 22px 76px}

  footer{padding:0 20px calc(38px + env(safe-area-inset-bottom))}
  .footer-location{padding:48px 0 58px}
  .footer-location h2{font-size:30px;overflow-wrap:anywhere}
  .footer-location iframe{height:235px;margin-top:25px}
  .footer-details p{max-width:none}
  .footer-contact{margin-top:38px}
  .footer-contact a{overflow-wrap:anywhere}
  .payment-methods img{max-height:none}
  .radix-credit{margin-top:38px;flex-wrap:wrap;text-align:center}
  .floating-wa{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:50px;height:50px}
}

@media(max-width:600px){
  .specification-table table,.specification-table tbody,.specification-table tr,.specification-table th,.specification-table td{display:block;width:100%}
  .specification-table tr{margin-bottom:10px;border:1px solid #dce5ea;border-radius:7px;overflow:hidden}
  .specification-table th,.specification-table td{border:0;padding:9px 10px}
  .specification-table th{background:#f2f5fc}
  .specification-table td{background:#fff!important}
}

@media(max-width:420px){
  .categories-original{grid-template-columns:1fr}
  .categories-original img{aspect-ratio:1.45/1}
  .featured-original .product-grid,main>.section .product-grid{grid-template-columns:1fr}
  .featured-original .card-image,.card-image{height:230px}
  .instagram-heading{display:block}
  .instagram-heading a{display:inline-block;margin-top:12px}
  .warranty-original{display:block}
  .warranty-original img{width:95px;height:auto;margin-bottom:20px}
}
