.brand-logo { width: 58px; height: 58px; object-fit: contain; flex: none; background: #fff; }
.skip-link { left: 0; top: -80px; }
.skip-link:focus { top: 0; }
input[name=website] { left: auto !important; inset-inline-start: 0; width: 1px; height: 1px; padding: 0; clip-path: inset(50%); overflow: hidden; }
.brand-name { font-size: 1.2rem; white-space: nowrap; }
.header-inner { gap: 36px; }
.language-picker { position: relative; }
.language-button { display: flex; align-items: center; gap: 6px; font-size: .88rem; min-height: 44px; }
.language-button svg { width: 17px; height: 17px; }
.language-button svg:last-child { width: 14px; }
.language-menu { position: absolute; inset-inline-end: 0; top: calc(100% + 10px); width: 248px; max-height: min(590px, calc(100svh - 100px)); overflow: auto; background: #fff; border: 1px solid var(--line); box-shadow: 0 14px 34px #18202320; padding: 6px; border-radius: 4px; z-index: 50; }
.language-menu button { display: grid; grid-template-columns: minmax(0, 1fr) 18px; gap: 1px 10px; align-items: center; width: 100%; text-align: start; border: 0; padding: 8px 11px; background: #fff; color: var(--ink); font-size: .9rem; min-height: 43px; }
.language-menu button:hover, .language-menu button.selected { background: #f1f4f2; }
.language-menu small { grid-row: 2; font-size: .75rem; color: var(--muted); }
.language-menu svg { grid-column: 2; grid-row: 1 / 3; width: 17px; }
.hero-slide { position: absolute; inset: 0; }
.hero-slide[hidden] { display: none; }
.editorial-hero .hero-content { padding-bottom: 108px; }
.editorial-hero .hero-content .hero-title { font-size: 5rem; line-height: 1.05; margin: 0 0 22px; max-width: 100%; overflow-wrap: anywhere; color: #fff; }
.hero-message { max-width: 850px; width: 100%; }
.hero-bottom-row { align-items: end; }
.editorial-hero .hero-content p { max-width: 470px; }
.editorial-hero .hero-actions a { max-width: 320px; text-wrap: balance; }
.carousel-controls { position: absolute; bottom: 28px; inset-inline-end: 56px; display: flex; align-items: center; gap: 10px; z-index: 3; }
.carousel-button { display: grid; place-items: center; width: 42px; height: 42px; flex: none; border: 1px solid #ffffff80; background: #15202280; color: white; border-radius: 50%; }
.carousel-button:hover { background: #152022; }
.carousel-button svg { width: 19px; }
.carousel-dots { display: flex; gap: 4px; }
.carousel-dots button { padding: 0; width: 28px; height: 34px; background: none; border: 0; display: grid; place-items: center; }
.carousel-dots button::after { content: ''; display: block; width: 7px; height: 7px; border: 1px solid white; border-radius: 50%; background: transparent; }
.carousel-dots button[aria-current=true]::after { background: #fff; width: 10px; height: 10px; }
.slide-count { font-size: .8rem; color: white; min-width: 50px; direction: ltr; unicode-bidi: isolate; }
.product-tags { display: flex; flex-wrap: wrap; gap: 5px; margin: 8px 0 12px; }
.product-tag { display: inline-flex; align-items: center; gap: 4px; font-size: .75rem; line-height: 1.4; color: #8823a3; background: #f6e8fb; padding: 3px 7px; border-radius: 4px; max-width: 100%; overflow-wrap: anywhere; }
.product-tag:hover { background: #edcef6; }
.product-tag svg { width: 12px; height: 12px; flex: none; }
.special-tag { color: #a32735; background: #ffe6e9; }
.category-inner .special-rail { color: #af2639; }
.card-actions { gap: 10px; flex-wrap: wrap; }
.card-actions a, .card-actions button { min-width: 0; overflow-wrap: anywhere; }
.card-actions a { white-space: normal; }
.section-heading .text-link { white-space: normal; max-width: 14rem; }
.detail-buttons > * { min-width: 130px; text-align: center; overflow-wrap: anywhere; }
.detail-info h1 { font-size: 2.65rem; }
.page-top h1 { overflow-wrap: anywhere; }
.about-intro h2, .about-intro p { overflow-wrap: anywhere; }
.about-intro p { white-space: pre-line; }
.hero-content, .detail-info, .form-panel { min-width: 0; }
[dir=rtl] .header-actions { margin-left: 0; margin-right: auto; }
[dir=rtl] .hero-overline span:last-child { text-align: left; }
[dir=rtl] .detail-section-nav a { border-left: 0; border-right: 2px solid var(--line); }
[dir=rtl] .form-success { border-left: 0; border-right: 3px solid #35865b; }
[dir=rtl] .language-menu { direction: ltr; }
@media (max-width: 1100px) { .header-inner { gap: 20px; } .primary-nav { gap: 20px; } .header-actions { gap: 3px; } }
@media (max-width: 950px) and (min-width: 761px) { .primary-nav { gap: 12px; font-size: .84rem; } .quote-button span { display: none; } .search-action { display: none; } }
@media (max-width: 760px) {
  .brand-logo { width: 43px; height: 43px; }
  .brand-name { font-size: 1rem; }
  .header-inner { gap: 8px; padding-inline: 16px; }
  .language-button { gap: 4px; padding: 6px; }
  .language-button span { max-width: 65px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .language-menu { position: fixed; inset-inline-end: 16px; top: 65px; max-height: calc(100svh - 85px); }
  .editorial-hero .hero-content { padding: 24px 20px 98px; }
  .editorial-hero .hero-content .hero-title { font-size: 3rem; }
  .hero-bottom-row { display: block; }
  .editorial-hero .hero-actions { display: flex; width: auto; }
  .editorial-hero .hero-actions a { width: auto; max-width: 100%; font-size: .88rem; padding: 12px 16px; }
  .carousel-controls { inset-inline-end: 20px; bottom: 20px; gap: 8px; }
  .detail-info h1 { font-size: 2rem; }
  .product-card .product-tag { font-size: .7rem; }
  .product-card .card-actions { align-items: start; }
  [dir=rtl] .detail-section-nav a { border-right: 0; }
}
@media (max-width: 380px) { .brand-name { font-size: .86rem; } .brand-logo { width: 35px; height: 40px; } .language-button > svg:first-child { display: none; } .header-actions .quote-button { padding: 9px; } .header-actions .icon-button { width: 32px; } .editorial-hero .hero-content .hero-title { font-size: 2.6rem; } }
