/* Auto-extracted shared rules — identical across 158 pages. Generated
   by scripts/extract_common_css.py; safe to dedup (no render change). */
.lang-switch:hover{border-color:var(--secondary);color:var(--secondary);}
.nav-logo img{height:44px;width:auto;}
.nav-menu{display:flex;align-items:center;gap:4px;flex:1;justify-content:center;}
.nav-link{padding:8px 14px;font-size:.88rem;font-weight:500;color:var(--primary);border-radius:8px;transition:var(--transition);position:relative;}
.nav-link:hover,.nav-link.active{color:var(--secondary);}
.nav-link::after{content:'';position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:0;height:2px;background:var(--secondary);transition:width var(--transition);border-radius:2px;}
.nav-link:hover::after,.nav-link.active::after{width:55%;}
.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}
.mob-menu.open{transform:translateX(0);}
@media(max-width:1080px){.nav-menu{display:none;}.hamburger{display:flex;}.mob-menu{display:flex;}}
.prod-nav-arrow:hover{background:#F6851F;transform:translateY(-50%) scale(1.08)}
.prod-nav-arrow.prev{inset-inline-start:18px}
.prod-nav-arrow.next{inset-inline-end:18px}
.prod-nav-arrow:hover .pn-tip{opacity:1;transform:translateY(0)}
@media (max-width:700px){.prod-nav-arrow{width:44px;height:44px;font-size:.95rem}.prod-nav-arrow.prev{inset-inline-start:8px}.prod-nav-arrow.next{inset-inline-end:8px}.prod-nav-arrow .pn-tip{display:none}}
/* square main-image frame (standard across products) */
.pd-gallery .gal-main{aspect-ratio:1/1;min-height:0;}
.pd-gallery .gal-main img{width:auto;height:auto;max-width:100%;max-height:100%;}
