
/* Renovación Jaspe: producto primero, fotografía amplia y navegación clara. */
.product-hero { background:#f4f5f5; padding:clamp(2rem,5vw,5rem) 0; }
.product-hero__in { display:grid; grid-template-columns:1fr 1.05fr; align-items:center; gap:3rem; }
.product-hero__copy { max-width:610px; }
.product-hero h1 { font-family:var(--display); font-size:clamp(3.1rem,6.5vw,6.6rem); line-height:1; text-transform:uppercase; margin:0 0 1.5rem; color:var(--tinta); }
.product-hero h1 em { font-style:normal; color:var(--rojo); }
.product-hero__copy>p:not(.eyebrow) { max-width:510px; font-size:1.15rem; }
.product-hero__visual { display:block; text-decoration:none; }
.product-hero__visual img { width:100%; max-height:510px; object-fit:contain; mix-blend-mode:multiply; }
.product-hero__caption { display:flex; align-items:center; justify-content:space-between; gap:1rem; border-top:1px solid #ccd0d2; margin-top:1rem; padding-top:1rem; font-size:.95rem; }
.product-hero__caption strong { font-family:var(--display); font-size:2rem; }
.product-strip { color:white; background:var(--tinta); padding:1rem 0; font-size:.9rem; }
.product-strip>.wrap { display:flex; justify-content:space-between; gap:1.25rem; flex-wrap:wrap; }
.product-strip a { text-underline-offset:4px; }
.eyebrow { font-size:.875rem; }
@media(max-width:750px) { .product-hero__in { grid-template-columns:1fr; gap:2rem; }.product-hero__visual img { max-height:360px; }.product-strip>.wrap { display:grid; grid-template-columns:1fr 1fr; }.product-hero__caption { flex-wrap:wrap; } }
.sector-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.4rem; }
.sector-card { text-decoration:none; border:1px solid var(--linea); display:flex; flex-direction:column; background:#fff; transition:box-shadow .2s; }
.sector-card:hover { box-shadow:var(--sombra); }
.sector-card>img { width:100%; aspect-ratio:1.7; object-fit:cover; }
.sector-card>div { padding:1.35rem; display:flex; flex-direction:column; flex:1; }
.sector-card__number { color:var(--acero); font-size:.875rem; text-transform:uppercase; letter-spacing:.08em; }
.sector-card h3 { font-family:var(--display); text-transform:uppercase; font-size:1.8rem; line-height:1.15; margin:.6rem 0; }
.sector-card p { margin:0 0 1rem; font-size:1rem; }
.sector-card__link { font-weight:600; margin-top:auto; color:var(--rojo-osc); }
.home-page .grid--cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
.pcard { clip-path:none; }
.pcard__media img { object-fit:contain; }
.size-guide { background:#f3f4f4; }
.size-guide .section__head { align-items:end; }
.size-controls { display:flex; gap:.6rem; }
.size-controls[hidden] { display:none; }
.size-controls button { width:48px; height:48px; border:1px solid var(--tinta); background:transparent; font-size:1.3rem; cursor:pointer; }
.size-controls button:hover { background:var(--tinta); color:white; }
.size-controls button:disabled { opacity:.35; cursor:default; }
.size-steps { display:flex; gap:1.4rem; overflow-x:auto; scroll-snap-type:x mandatory; list-style:none; margin:0; padding:0 0 1rem; scrollbar-color:var(--rojo) #ddd; }
.size-step { flex:0 0 calc((100% - 2.8rem)/3); scroll-snap-align:start; background:white; border:1px solid var(--linea); padding:2rem; }
.size-step__number { display:block; font:600 clamp(3rem,6vw,5rem)/1 var(--display); color:var(--rojo); padding-bottom:1.6rem; border-bottom:1px solid var(--linea); }
.size-step h3 { font:600 1.6rem/1.2 var(--display); text-transform:uppercase; margin:1.4rem 0 .75rem; }
.size-step p { font-size:1rem; margin:0; }
.size-guide__foot { display:flex; justify-content:space-between; gap:1.5rem; align-items:center; margin-top:1.5rem; }
.size-guide__foot p { font-size:.95rem; }
.product-benefits .grid { margin-top:2.5rem; gap:3rem; }
.product-benefits article { border-top:1px solid #50545a; padding-top:1.5rem; }
.product-benefits article>span { color:#f6757b; font-size:1rem; }
.product-benefits h3 { font:600 1.7rem/1.2 var(--display); text-transform:uppercase; color:#fff; margin:1rem 0; }
.product-benefits p { color:#d1d4d8; font-size:1rem; }
.product-benefits a { color:white; text-underline-offset:5px; font-size:1rem; }
.home-page .story__media::after { display:none; }
.catalog-page .page-hero,.contact-page .page-hero { background:#f4f5f5; padding:3.5rem 0; }
.catalog-page .page-hero .h1,.contact-page .page-hero .h1 { color:var(--tinta); }
.catalog-page .page-hero__sub,.contact-page .page-hero__sub { color:var(--acero); }
.catalog-page .page-hero .eyebrow,.contact-page .page-hero .eyebrow { color:var(--acero); }
.catalog-page .hero__seam,.contact-page .hero__seam { display:none; }
.catalog-layout { display:grid; grid-template-columns:245px minmax(0,1fr); gap:2.5rem; align-items:start; }
.catalog-filters { border-right:1px solid var(--linea); padding-right:1.7rem; }
.filter-heading { display:flex; gap:1rem; flex-wrap:wrap; align-items:center; padding-bottom:1rem; }
.filter-heading h2 { font:600 1.4rem var(--display); text-transform:uppercase; margin:0; }
.filter-heading button { font:inherit; font-size:.875rem; border:0; padding:0; text-decoration:underline; background:none; cursor:pointer; color:var(--rojo-osc); }
.catalog-filters fieldset { margin:1rem 0; padding:0 0 1.25rem; border:0; border-bottom:1px solid var(--linea); min-width:0; }
.catalog-filters legend { font:600 1.35rem var(--display); text-transform:uppercase; margin:0 0 1rem; }
.filter-option { display:flex; align-items:start; gap:.65rem; font-size:1rem; cursor:pointer; padding:.35rem 0; }
.filter-option input { flex:none; width:18px; height:18px; margin:5px 0 0; accent-color:var(--rojo); }
.catalog-count { margin:0 0 1.25rem; font-size:.95rem; color:var(--acero); }
.catalog-results .grid--cards { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.catalog-results .pcard { border:1px solid var(--linea); box-shadow:none; }
.catalog-results .pcard__body { padding:1rem; }
.catalog-results .pcard__title { font-size:1.55rem; }
.catalog-results .pcard__use { font-size:.95rem; }
.catalog-results .pcard__model,.catalog-results .pcard__tag,.pcard__sizes { font-size:.875rem; }
.catalog-results .pcard__meta { flex-wrap:wrap; }
[hidden] { display:none!important; }
.contact-page .page-hero { text-align:center; }
.contact-page .page-hero .eyebrow { justify-content:center; }
.contact-page .page-hero__sub { margin-inline:auto; }
.contact-page .contacto__grid { width:min(760px,100% - 3rem); grid-template-columns:1fr; gap:3rem; }
.contact-page .form { padding:0; border:0; }
.contact-page .form__two { grid-template-columns:1fr; gap:0; }
.contact-page .form label { font-size:.9rem; }
.contact-page .form .h2 { text-align:center; margin-bottom:2rem; }
.contact-page .contacto__cards { gap:0; }
.contact-page .ccard { flex-direction:column; align-items:center; text-align:center; border:0; border-top:1px solid var(--linea); padding:1.8rem 1rem; }
.contact-page .ccard strong { font-size:1.4rem; }
.contact-page .ccard .link-arrow { justify-content:center; margin-top:.65rem; }
.contact-page .ccard span { max-width:570px; font-size:1rem; }
.jaspe-about .h2 { max-width:780px; font-size:clamp(2.2rem,4.5vw,4rem); }
.jaspe-about__text { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; margin-top:1.8rem; }
.jaspe-about__text p { margin:0; }
.jaspe-about__facts { margin-top:3rem; border-top:1px solid var(--linea); padding-top:2rem; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
.jaspe-about__facts strong { display:block; font:600 3.4rem/1.1 var(--display); color:var(--rojo-osc); }
.jaspe-about__facts span { display:block; font-size:1rem; margin-top:.6rem; }
.historia { background:#f4f5f5; }
@media(max-width:1100px) { .catalog-results .grid--cards { grid-template-columns:repeat(2,minmax(0,1fr)); }.catalog-layout { grid-template-columns:220px minmax(0,1fr); gap:1.5rem; } }
@media(max-width:800px) { .sector-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.size-step { flex-basis:calc((100% - 1.4rem)/2); }.home-page .grid--cards { grid-template-columns:repeat(2,minmax(0,1fr)); }.jaspe-about__text { grid-template-columns:1fr; gap:1rem; }.product-benefits .grid { grid-template-columns:1fr; gap:1.5rem; }.catalog-layout { grid-template-columns:1fr; }.catalog-filters { border-right:0; padding-right:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }.filter-heading { grid-column:1/-1; padding:0; }.catalog-filters fieldset { margin:0 0 1rem; } }
@media(max-width:540px) { .sector-grid { grid-template-columns:1fr; }.size-step { flex-basis:88%; padding:1.5rem; }.size-guide__foot { flex-direction:column; align-items:start; }.size-guide .section__head { flex-direction:column; align-items:start; gap:1rem; }.catalog-filters { grid-template-columns:1fr; gap:0; }.catalog-filters fieldset { margin:1rem 0 0; }.catalog-results .grid--cards,.home-page .grid--cards { grid-template-columns:1fr; }.jaspe-about__facts { grid-template-columns:1fr; }.catalog-page .page-hero,.contact-page .page-hero { padding:2.3rem 0; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }


/* Product photo framing: remove empty margins without altering the original photography. */
.photo-crop { display:block; position:relative; overflow:hidden; width:100%; aspect-ratio:1.2; background:#f7f7f7; }
.photo-crop img { position:absolute; max-width:none!important; max-height:none!important; height:auto!important; padding:0!important; object-fit:initial!important; mix-blend-mode:normal!important; }
.product-hero,.pcard__media,.pdp__photo { background:#f7f7f7; }
.photo-crop--evolution-blanco img { width:140.8848%!important; left:-18.3731%; top:-6.6885%; }
.photo-crop--evolution-beige img { width:139.4000%!important; left:-19.9614%; top:-5.2024%; }
.photo-crop--elastica img { width:117.9561%!important; left:-12.4309%; top:-74.3050%; }
.photo-crop--supervisor-j07 img { width:129.5965%!important; left:-15.6549%; top:-89.0684%; }
.photo-crop--electricista-alta img { width:145.8917%!important; left:-23.2650%; top:-8.5390%; }
.photo-crop--supervisor-j011 img { width:131.1059%!important; left:-16.9767%; top:-88.9797%; }
.photo-crop--evolution-negro img { width:138.1063%!important; left:-18.6647%; top:-6.1402%; }
.photo-crop--supervisor-j02 img { width:129.1715%!important; left:-17.7571%; top:-89.1979%; }
.photo-crop--operador img { width:129.3837%!important; left:-19.5177%; top:-88.3269%; }

/* Sector scenes: one consistent image area across all six cards. */
.sector-card>img { display:block; width:100%; height:auto; aspect-ratio:1.7; object-fit:cover; background:#e8ebed; }

/* Contact channels stay below the centered vertical form. */
.contact-page .contacto__grid { width:min(1180px,100% - 3rem); }
.contact-page .form { width:min(760px,100%); margin-inline:auto; }
.contact-page .contacto__cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; width:100%; }
.contact-page .ccard { min-width:0; padding:1.8rem .75rem; }
.contact-page .ccard span { overflow-wrap:anywhere; }
.contact-page .ccard--static { grid-column:1/-1; }
.quality-page .qcards { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(max-width:760px) { .contact-page .contacto__cards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) { .contact-page .contacto__cards { grid-template-columns:1fr; } .quality-page .qcards { grid-template-columns:1fr; } }

.footer__product { width:180px; max-width:100%; margin-bottom:1.25rem; border-radius:4px; }
.footer__brand .footer__product img { margin:0; }

/* Approved header contrast and transparent Operador footer */
.brand__mark{filter:brightness(0) invert(1)}
.footer__boot{display:block;position:static;width:180px;max-width:100%;height:auto;object-fit:contain;background:transparent;margin:0 0 1.25rem;padding:0}

/* Soldador: real photographs framed without altering product details. */
.photo-crop--soldador-negro img{width:105%!important;left:-3%;top:-50%}
.photo-crop--soldador-marron{background:#fff}
.photo-crop--soldador-marron img{width:170%!important;left:14.5%;top:-44%;clip-path:polygon(24% 35.76%,41.25% 35.76%,41.25% 100%,0 100%,0 42%,24% 42%)}
.soldador-colors{border:0;padding:0;margin:1.3rem 0;display:flex;gap:1.5rem}
.soldador-colors legend{font-weight:600;margin-bottom:.65rem}
.soldador-colors label{display:flex;align-items:center;gap:.5rem;cursor:pointer}
.soldador-colors input{accent-color:#bd302f;width:18px;height:18px}

.pdp__photo:has(.photo-crop--soldador-marron){background:#fff}

.pcard__media:has(.termica-photo),.pdp__photo:has(.termica-photo){background:#fff}

/* Consistent catalog/detail scale; blend white photography into panel. */
.uniform-product-photo{display:block;position:relative;width:100%;aspect-ratio:1.2;background:#f7f7f7;isolation:isolate;overflow:hidden}
.uniform-product-photo img{position:absolute!important;inset:0;display:block;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;padding:3%!important;mix-blend-mode:multiply!important;box-sizing:border-box}
