/*
  SIARE FINAL UI REPAIR
  Loaded after legacy stylesheets to prevent black-on-black controls,
  missing mobile navigation, tiny action controls, and floating legal links.
  Dark surfaces use graphite #292A28 rather than pure black.
*/
:root {
  --siare-dark-surface: #292A28;
  --siare-dark-surface-raised: #363833;
  --siare-dark-foreground: #F5F2EA;
  --siare-dark-muted: rgba(245,242,234,.78);
  --siare-control-min-height: 48px;
}

html { scroll-padding-top: 96px; }
body { font-size: 16px; line-height: 1.65; }
button, input, select, textarea { font: inherit; }
a, button { -webkit-tap-highlight-color: transparent; }

/* Graphite surfaces: no large flat pure-black panels. Foreground colors are explicit. */
.site-header,
.home-page .site-header,
.home-page .site-header.scrolled,
.inquiry-page .site-header,
.mf-page .site-header,
.custom-header,
.legal-header {
  background: rgba(41,42,40,.97) !important;
  color: var(--siare-dark-foreground) !important;
  border-bottom-color: rgba(200,169,107,.38) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.16);
}
.site-header .brand,
.site-header .brand-name,
.custom-brand,
.entry-brand,
.legal-header .brand { color: #D8BC80 !important; }
.site-header .brand-tag { color: rgba(245,242,234,.74) !important; }
.site-header .main-nav > a,
.main-nav > a,
.custom-nav > a { color: rgba(245,242,234,.92) !important; }
.site-header .main-nav > a:hover,
.main-nav > a:hover,
.custom-nav > a:hover,
.custom-nav > a[aria-current="page"] { color: #D8BC80 !important; }
.language-menu,
.custom-language-menu,
.entry-language-menu { background: #363833 !important; border-color: rgba(200,169,107,.48) !important; }
.language-menu button,
.custom-language-menu button,
.entry-language-menu button { color: #F5F2EA !important; min-height: 44px; font-size: 14px !important; }
.language-menu button:hover,
.custom-language-menu button:hover,
.entry-language-menu button:hover { background: rgba(200,169,107,.16) !important; color: #F5F2EA !important; }
.mobile-menu-toggle,
.mobile-toggle,
.custom-menu-toggle { color: #F5F2EA !important; border-color: rgba(200,169,107,.78) !important; background: #363833 !important; min-width: 48px; min-height: 48px; font-size: 22px !important; }
.mobile-menu-toggle span { background: #D8BC80 !important; }

/* Entry page: centered, balanced brand lock-up with stable bottom legal row. */
.entry,
.entry-image { background-color: #292A28 !important; }
.entry-shade { background: linear-gradient(90deg,rgba(41,42,40,.54),rgba(41,42,40,.22) 52%,rgba(41,42,40,.48)),linear-gradient(0deg,rgba(41,42,40,.55),transparent 43%,rgba(41,42,40,.35)) !important; }
.entry:before { border-color: rgba(200,169,107,.46) !important; }
.entry-content { width: min(900px,calc(100% - 44px)); margin-inline:auto; text-align:center; align-items:center; }
.entry-content h1 { width:100%; text-align:center; margin-inline:auto; }
.entry-subtitle { max-width:560px; text-align:center; font-size:clamp(16px,1.25vw,20px) !important; }
.entry-cta { min-height:58px !important; width:auto; max-width:100%; justify-content:center; gap:24px; padding-inline:25px; color:#171815 !important; background:#C8A96B !important; border-color:#C8A96B !important; font-size:14px !important; letter-spacing:.09em !important; }
.entry-cta:hover { background:#D9BC80 !important; border-color:#D9BC80 !important; color:#171815 !important; }
.entry-bottom { font-size:11px !important; color:rgba(245,242,234,.84) !important; letter-spacing:.12em !important; }
.entry-legal-links { position:absolute !important; left:18px !important; right:18px !important; bottom:14px !important; top:auto !important; width:auto !important; margin:0 !important; display:flex !important; flex-flow:row wrap !important; justify-content:center !important; align-items:center !important; gap:8px 22px !important; color:#F5F2EA !important; font-size:12px !important; transform:none !important; }
.entry-legal-links a,.entry-legal-links button { min-height:34px; display:inline-flex; align-items:center; justify-content:center; color:#F5F2EA !important; font-size:12px !important; }

/* Home: five sections, medium-large type, visible controls on charcoal areas. */
.home-page { color:#191A18; background:#F5F2EA; }
.home-page .shower-collection { background-color:#292A28 !important; }
.home-page .shower-collection .collection-image { background-color:#292A28 !important; }
.home-page .shower-collection .collection-overlay { background:linear-gradient(90deg,rgba(41,42,40,.82) 0%,rgba(41,42,40,.52) 52%,rgba(41,42,40,.18) 100%),linear-gradient(0deg,rgba(41,42,40,.45),transparent 60%) !important; }
.home-page .collection-content,
.home-page .collection-content * { color:#F5F2EA; }
.home-page .collection-content h2 span:last-child { color:#C8A96B !important; }
.home-page .collection-description p { color:rgba(245,242,234,.88) !important; font-size:clamp(15px,1.1vw,17px) !important; }
.home-page .collection-button { min-height:52px !important; padding-inline:24px !important; color:#181916 !important; background:#C8A96B !important; border-color:#C8A96B !important; font-size:14px !important; }
.home-page .manufacturing-title,
.home-page .customization-title,
.home-page .about-title,
.home-page .contact-section-title { text-wrap:balance; }
.home-page .manufacturing-description,
.home-page .customization-description,
.home-page .about-description { font-size:clamp(15px,1.05vw,17px) !important; line-height:1.85 !important; }
.home-page .manufacturing-button,
.home-page .customization-button { min-height:52px !important; padding-inline:22px !important; background:#292A28 !important; border-color:#292A28 !important; color:#F5F2EA !important; font-size:14px !important; }
.home-page .manufacturing-button:hover,
.home-page .customization-button:hover { background:#C8A96B !important; border-color:#C8A96B !important; color:#171815 !important; }

/* Contact scene: every dark-surface label, link, and icon gets an explicit readable color. */
.home-page .contact-section { background:#292A28 !important; color:#F5F2EA !important; }
.home-page .contact-section h1,
.home-page .contact-section h2,
.home-page .contact-section h3,
.home-page .contact-section p,
.home-page .contact-section li,
.home-page .contact-section .contact-section-title,
.home-page .contact-section .contact-title,
.home-page .contact-section .contact-social-copy h2,
.home-page .contact-section .contact-main h2 { color:#F5F2EA !important; }
.home-page .contact-section .contact-eyebrow,
.home-page .contact-section .contact-quote-eyebrow { color:#D8BC80 !important; }
.home-page .contact-section .contact-description,
.home-page .contact-section .contact-lead { color:rgba(245,242,234,.84) !important; font-size:16px !important; line-height:1.8; }
.home-page .contact-section .contact-social-link,
.home-page .contact-section .contact-action-link { color:#F5F2EA !important; background:#363833 !important; border-color:rgba(200,169,107,.68) !important; font-size:14px !important; min-height:50px !important; }
.home-page .contact-section .contact-social-link *,
.home-page .contact-section .contact-action-link * { color:inherit; }
.home-page .contact-section .contact-social-icon,
.home-page .contact-section .contact-action-icon,
.home-page .contact-section .contact-link-arrow { color:#D8BC80 !important; }
.home-page .contact-section .contact-social-icon svg,
.home-page .contact-section .contact-action-icon svg,
.home-page .contact-section .contact-link-arrow svg { color:#D8BC80 !important; stroke:#D8BC80 !important; fill:none !important; }
.home-page .contact-section .contact-action-copy strong { color:#F5F2EA !important; font-size:16px !important; }
.home-page .contact-section .contact-action-copy small { color:rgba(245,242,234,.8) !important; font-size:13px !important; }
.home-page .contact-section .contact-quote-link { color:#191A18 !important; background:#C8A96B !important; border-color:#C8A96B !important; min-height:64px !important; }
.home-page .contact-section .contact-quote-copy strong,
.home-page .contact-section .contact-quote-action,
.home-page .contact-section .contact-quote-arrow,
.home-page .contact-section .contact-quote-action span { color:#191A18 !important; }
.home-page .contact-section .contact-quote-eyebrow { color:#292A28 !important; }
.home-page .contact-section .contact-quote-description { color:#292A28 !important; font-size:15px !important; }
.home-page .contact-section .contact-footer { background:transparent !important; border-top-color:rgba(245,242,234,.26) !important; color:rgba(245,242,234,.82) !important; }
.home-page .contact-section .contact-footer-brand { color:#D8BC80 !important; }
.home-page .contact-section .contact-footer-tagline,
.home-page .contact-section .contact-footer-note { color:rgba(245,242,234,.78) !important; }
.home-page .contact-section .siare-legal-links { position:static !important; inset:auto !important; width:100%; margin-top:20px; }
.home-page .contact-section .siare-legal-links a,
.home-page .contact-section .siare-legal-links button { color:#F5F2EA !important; }
.home-page .contact-section .siare-legal-links a:hover,
.home-page .contact-section .siare-legal-links button:hover { color:#D8BC80 !important; }

/* Catalog/detail: improve readability, avoid black surfaces, and make the return button unmissable. */
.catalog-hero { background-color:#292A28 !important; }
.catalog-hero:before { background:linear-gradient(90deg,rgba(41,42,40,.84),rgba(41,42,40,.52) 52%,rgba(41,42,40,.17)),linear-gradient(0deg,rgba(41,42,40,.5),transparent 65%) !important; }
.site-footer,.footer { background:#292A28 !important; color:#F5F2EA !important; }
.site-footer a,.footer a { color:#F5F2EA !important; }
.site-footer a:hover,.footer a:hover { color:#D8BC80 !important; }
.catalog-hero .eyebrow,.section-eyebrow,.section-description,.card-meta,.count-label,.result-count { font-size:12px !important; line-height:1.7 !important; }
.catalog-hero .hero-lead,.card-subtitle { font-size:15px !important; line-height:1.8 !important; }
.card-title,.product-card .product-card-name,.product-card h3 { font-size:clamp(18px,1.5vw,23px) !important; line-height:1.35 !important; }
.category-pill,.series-pill,.filter-chip,.category-button,.series-button { min-height:44px !important; padding:10px 15px !important; font-size:13px !important; letter-spacing:.04em !important; }
.card-cta,.text-link { font-size:13px !important; letter-spacing:.05em !important; }
.card-badge { background:#292A28 !important; color:#F5F2EA !important; border-color:rgba(200,169,107,.55) !important; font-size:11px !important; }
.product-detail-page .site-header,
.product-detail-page .footer { background:#292A28 !important; color:#F5F2EA !important; }
.detail-back-row { display:flex !important; align-items:center !important; justify-content:space-between !important; gap:16px !important; margin:10px 0 24px !important; padding:12px 0 18px !important; border-bottom:1px solid rgba(41,42,40,.2) !important; }
.detail-back-button { display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:12px !important; min-height:50px !important; padding:0 18px !important; border:1px solid #C8A96B !important; background:#E4E1DA !important; color:#292A28 !important; font-size:14px !important; font-weight:600 !important; line-height:1.3 !important; letter-spacing:.04em !important; opacity:1 !important; visibility:visible !important; }
.detail-back-button .detail-back-arrow { color:#756044 !important; font-size:20px !important; }
.detail-back-button:hover { background:#292A28 !important; color:#F5F2EA !important; border-color:#C8A96B !important; }
.detail-back-button:hover .detail-back-arrow { color:#C8A96B !important; }
.detail-back-kicker { color:#686961 !important; font-size:11px !important; letter-spacing:.1em !important; }
.breadcrumbs { font-size:12px !important; line-height:1.6 !important; }
.product-info h1 { font-size:clamp(36px,4.5vw,66px) !important; }
.product-info .subtitle,.product-info .description,.product-info .note { font-size:15px !important; line-height:1.8 !important; }
.info-block h2 { font-size:14px !important; line-height:1.5 !important; letter-spacing:.08em !important; }
.spec-item span:first-child,.spec-item span:last-child,.dimension,.color-chip { font-size:14px !important; line-height:1.6 !important; }
.product-detail-page .button,.action-button { min-height:52px !important; font-size:14px !important; letter-spacing:.04em !important; background:#292A28 !important; border-color:#292A28 !important; color:#F5F2EA !important; }
.product-detail-page .button.secondary,.action-button.secondary { background:#E4E1DA !important; border-color:#C8A96B !important; color:#292A28 !important; }
.product-detail-page .button:hover,.action-button:hover { background:#C8A96B !important; border-color:#C8A96B !important; color:#191A18 !important; }

/* Customization and manufacturing: graphite instead of flat black, light text always explicit. */
.custom-process,.custom-footer { background:#292A28 !important; color:#F5F2EA !important; }
.custom-process h1,.custom-process h2,.custom-process h3,.custom-process p,.custom-process li,
.custom-footer,.custom-footer p,.custom-footer a,.custom-footer span { color:#F5F2EA; }
.custom-process .custom-eyebrow,.custom-process .custom-step>span,.custom-footer-brand { color:#D8BC80 !important; }
.custom-process .custom-step h3 { color:#F5F2EA !important; font-size:14px !important; }
.custom-process .custom-step p { color:rgba(245,242,234,.8) !important; font-size:15px !important; line-height:1.8 !important; }
.custom-feature-card-dark { background:#363833 !important; color:#F5F2EA !important; }
.custom-feature-card-dark h3,.custom-feature-card-dark p { color:#F5F2EA !important; }
.custom-feature-card-dark p { color:rgba(245,242,234,.82) !important; }
.custom-header .custom-menu-toggle { color:#F5F2EA !important; }
.custom-nav .custom-language-menu { background:#363833 !important; }
.custom-button { min-height:52px !important; padding-inline:20px !important; font-size:14px !important; letter-spacing:.04em !important; }
.custom-page .custom-back { min-height:44px; font-size:13px !important; color:#4C4E47 !important; }
.mf-page { --mf-bg:#292A28; background:#292A28 !important; color:#F5F2EA !important; }
.mf-page::after { background:linear-gradient(90deg,rgba(41,42,40,.66),rgba(41,42,40,.4) 48%,rgba(41,42,40,.66)),linear-gradient(180deg,rgba(41,42,40,.28),rgba(41,42,40,.44) 52%,rgba(41,42,40,.62)) !important; }
.mf-page .site-header { background:rgba(41,42,40,.93) !important; }
.mf-page .mf-intro h1 { color:#F5F2EA !important; opacity:1 !important; visibility:visible !important; transform:none !important; }
.mf-page .mf-intro-copy,.mf-page .mf-step-copy p { color:rgba(245,242,234,.84) !important; font-size:15px !important; line-height:1.85 !important; }
.mf-page .mf-back-link { display:inline-flex !important; align-items:center; min-height:48px; color:#F5F2EA !important; font-size:14px !important; letter-spacing:.04em !important; }
.mf-page .mf-back-arrow { color:#D8BC80 !important; }

/* Inquiry page: strong, visible back control; large, clear, high usability form controls. */
.inquiry-page .site-header { background:rgba(41,42,40,.97) !important; }
.inquiry-page .inquiry-main { padding-top:100px !important; }
.inquiry-back-row { width:min(1120px,100%); margin:0 auto 16px; }
.inquiry-back-button { display:inline-flex !important; align-items:center; justify-content:center; gap:12px; min-height:50px; padding:0 18px; border:1px solid #C8A96B; background:#292A28; color:#F5F2EA !important; font-size:14px !important; font-weight:600; line-height:1.35; letter-spacing:.04em; text-decoration:none; }
.inquiry-back-button:hover { background:#363833; border-color:#D8BC80; color:#F5F2EA !important; }
.inquiry-back-arrow { color:#D8BC80; font-size:20px; }
.inquiry-page .inquiry-intro { padding-top:15px !important; }
.inquiry-page .inquiry-intro h1 { font-size:clamp(38px,5vw,68px) !important; line-height:1.06 !important; }
.inquiry-page .inquiry-lead,.inquiry-page .inquiry-intro p { font-size:16px !important; line-height:1.8 !important; }
.inquiry-page .form-section-heading h2 { font-size:clamp(24px,2.5vw,34px) !important; }
.inquiry-page .form-field label,.inquiry-page .product-scope-field legend { color:#292A28 !important; font-size:15px !important; line-height:1.5 !important; font-weight:600; }
.inquiry-page .form-field input,.inquiry-page .form-field select,.inquiry-page .form-field textarea,.inquiry-page .dial-code-search,.inquiry-page .country-select-control input { min-height:52px !important; font-size:16px !important; color:#292A28 !important; background:#FBF9F4 !important; }
.inquiry-page .form-field textarea { min-height:140px !important; }
.inquiry-page .field-hint,.inquiry-page .attachment-help,.inquiry-page .submit-note { font-size:14px !important; line-height:1.75 !important; }
.inquiry-page .inquiry-submit,.inquiry-page .inquiry-add-product { min-height:56px !important; padding:12px 22px !important; font-size:15px !important; line-height:1.3 !important; background:#292A28 !important; color:#F5F2EA !important; border:1px solid #292A28 !important; }
.inquiry-page .inquiry-submit:hover,.inquiry-page .inquiry-add-product:hover { background:#C8A96B !important; color:#191A18 !important; border-color:#C8A96B !important; }
.product-scope-field { min-width:0; margin:0; padding:0; border:0; }
.product-scope-field legend { display:block; width:100%; margin:0 0 12px; padding:0; }
.product-scope-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.product-scope-option { display:flex !important; align-items:flex-start; gap:12px; min-width:0; min-height:90px; padding:17px 16px; border:1px solid #C9C1B2; background:#F5F2EA; cursor:pointer; transition:border-color .18s,background .18s,box-shadow .18s; }
.product-scope-option:has(input:checked) { border-color:#A8874C; background:#E4E1DA; box-shadow:inset 0 0 0 1px #C8A96B; }
.product-scope-option input { flex:0 0 auto; width:20px !important; height:20px !important; min-height:20px !important; margin:3px 0 0; accent-color:#756044; }
.product-scope-option-content { display:flex; min-width:0; flex-direction:column; gap:5px; }
.product-scope-option-content strong { color:#292A28; font-size:15px; line-height:1.45; }
.product-scope-option-content small { color:#5A5C55; font-size:13px; font-weight:400; line-height:1.55; }
.inquiry-page .inquiry-footer { background:#292A28 !important; color:#F5F2EA !important; }
.inquiry-page .inquiry-footer p,.inquiry-page .inquiry-footer .footer-back { color:rgba(245,242,234,.84) !important; font-size:13px !important; }
.inquiry-page .inquiry-footer .footer-brand { color:#D8BC80 !important; }

/* Upload UI is always visible; selecting files previews them. Server upload still needs the signed-upload endpoint. */
.inquiry-page .attachment-dropzone { min-height:124px !important; display:flex !important; align-items:center; gap:16px; padding:20px !important; background:#F5F2EA !important; color:#292A28 !important; border:2px dashed #A8874C !important; }
.inquiry-page .attachment-dropzone-copy strong { color:#292A28 !important; font-size:17px !important; line-height:1.4 !important; }
.inquiry-page .attachment-dropzone-copy span { color:#555750 !important; font-size:14px !important; line-height:1.6 !important; }
.inquiry-page .attachment-upload-icon { color:#756044 !important; border-color:#C8A96B !important; }
.inquiry-page .attachment-choose-button { display:inline-flex !important; align-items:center; justify-content:center; min-height:50px !important; padding:12px 18px !important; background:#292A28 !important; color:#F5F2EA !important; border:1px solid #292A28 !important; font-size:15px !important; font-weight:600 !important; white-space:nowrap; }
.inquiry-page .attachment-choose-button:hover { background:#C8A96B !important; border-color:#C8A96B !important; color:#191A18 !important; }
.inquiry-page .attachment-help { color:#555750 !important; }
.inquiry-page .attachment-preview-name { color:#292A28 !important; font-size:14px !important; }
.inquiry-page .attachment-preview-size { color:#686961 !important; font-size:13px !important; }
.inquiry-page .attachment-remove-button { color:#292A28 !important; background:#F5F2EA !important; min-width:42px !important; min-height:42px !important; font-size:22px !important; }

/* Privacy/Cookie links belong in the page/footer layout. Only the entry page uses an anchored bottom row. */
.siare-legal-links { position:static !important; inset:auto !important; transform:none !important; width:100%; max-width:100%; display:flex; flex-flow:row wrap; justify-content:center; align-items:center; gap:9px 20px; margin:14px 0 0; font-size:12px !important; line-height:1.7 !important; }
.siare-legal-links a,.siare-legal-links button { position:static !important; inset:auto !important; display:inline-flex; align-items:center; justify-content:center; min-height:38px !important; padding:6px 0 !important; font-size:12px !important; line-height:1.5 !important; white-space:normal; transform:none !important; }
.entry .entry-legal-links { position:absolute !important; inset:auto 18px 14px 18px !important; width:auto !important; margin:0 !important; }
.legal-page { display:flex !important; flex-direction:column !important; min-height:100vh; min-height:100svh; min-height:100dvh; background:#F5F2EA !important; color:#191A18 !important; }
.legal-header { flex:0 0 auto; }
.legal-main { flex:1 0 auto !important; margin-inline:auto; }
.legal-footer { position:static !important; inset:auto !important; margin-top:auto !important; width:100%; flex:0 0 auto; display:flex; flex-flow:row wrap; align-items:center; justify-content:space-between; gap:16px 24px; background:#292A28 !important; color:#F5F2EA !important; }
.legal-footer .siare-legal-links { flex-basis:100%; margin-top:4px; justify-content:center; }
.legal-footer .siare-legal-links a,.legal-footer .siare-legal-links button { color:#F5F2EA !important; }
.legal-footer .legal-footer-brand { color:#D8BC80 !important; }

/* Cookie notice: bottom-fixed banner only. The centered dialog opens only from Settings. */
.siare-cookie-banner { position:fixed !important; top:auto !important; left:50% !important; right:auto !important; bottom:max(12px,env(safe-area-inset-bottom)) !important; transform:translateX(-50%) !important; width:min(1080px,calc(100vw - 28px)) !important; max-width:1080px !important; margin:0 !important; display:grid; grid-template-columns:minmax(0,1fr) minmax(310px,auto); gap:22px !important; align-items:center; background:#F5F2EA !important; color:#292A28 !important; border:1px solid #C8A96B !important; box-shadow:0 18px 60px rgba(20,20,18,.22) !important; z-index:10000 !important; }
.siare-cookie-banner[hidden],.siare-cookie-settings[hidden],.siare-cookie-backdrop[hidden] { display:none !important; }
.siare-cookie-banner h2,.siare-cookie-banner p,.siare-cookie-banner span { color:inherit; }
.siare-cookie-title { font-size:clamp(22px,2.1vw,28px) !important; color:#292A28 !important; }
.siare-cookie-copy { font-size:14px !important; line-height:1.7 !important; color:#555750 !important; }
.siare-cookie-links { position:static !important; display:flex !important; flex-wrap:wrap; gap:8px 16px !important; margin-top:12px; font-size:12px !important; }
.siare-cookie-links a { color:#756044 !important; min-height:32px; }
.siare-cookie-actions { display:flex; flex-wrap:wrap; gap:8px !important; align-items:center; justify-content:flex-end; }
.siare-cookie-btn { min-height:48px !important; padding:10px 15px !important; border:1px solid #292A28 !important; border-radius:0 !important; background:transparent !important; color:#292A28 !important; font-size:13px !important; font-weight:600 !important; line-height:1.25 !important; cursor:pointer; }
.siare-cookie-btn-primary { background:#292A28 !important; border-color:#292A28 !important; color:#F5F2EA !important; }
.siare-cookie-btn:hover { border-color:#C8A96B !important; }
.siare-cookie-btn-primary:hover { background:#363833 !important; color:#F5F2EA !important; }
.siare-cookie-backdrop { position:fixed !important; inset:0 !important; background:rgba(41,42,40,.62) !important; z-index:10001 !important; }
.siare-cookie-settings { position:fixed !important; top:50% !important; left:50% !important; right:auto !important; bottom:auto !important; transform:translate(-50%,-50%) !important; width:min(560px,calc(100vw - 28px)) !important; max-height:min(86dvh,780px) !important; overflow:auto !important; overscroll-behavior:contain; padding:clamp(20px,4vw,30px) !important; background:#F5F2EA !important; color:#292A28 !important; border:1px solid #C8A96B !important; box-shadow:0 30px 80px rgba(20,20,18,.28) !important; z-index:10002 !important; }
.siare-cookie-settings h2 { color:#292A28 !important; font-size:30px !important; }
.siare-cookie-settings p { color:#555750 !important; font-size:14px !important; line-height:1.7 !important; }
.siare-cookie-choice strong { color:#292A28 !important; font-size:15px !important; }
.siare-cookie-choice small { color:#555750 !important; font-size:13px !important; line-height:1.65 !important; }
.siare-cookie-choice input { width:20px !important; height:20px !important; accent-color:#756044 !important; }
.siare-cookie-reopen { position:fixed !important; right:14px !important; bottom:14px !important; left:auto !important; top:auto !important; transform:none !important; z-index:9990 !important; background:#292A28 !important; color:#F5F2EA !important; border-color:#C8A96B !important; font-size:13px !important; min-height:42px; }
.siare-consent-open { overflow:hidden !important; }

/* Tablet/mobile navigation: menu is hidden until the actual toggle opens it. Links remain visible and tappable. */
@media (max-width: 900px) {
  .mobile-menu-toggle,.mobile-toggle,.custom-menu-toggle { display:inline-flex !important; align-items:center; justify-content:center; flex:0 0 48px; position:relative; z-index:1010; }
  .site-header,.custom-header { position:sticky; top:0; }
  .home-page .site-header { position:fixed; }
  .site-header .main-nav { display:none !important; position:absolute !important; top:100% !important; left:10px !important; right:10px !important; width:auto !important; max-height:calc(100dvh - 92px); overflow:auto; padding:12px 20px 18px !important; margin:0 !important; flex-direction:column !important; align-items:stretch !important; gap:0 !important; background:#292A28 !important; color:#F5F2EA !important; border:1px solid rgba(200,169,107,.38); border-top:0; box-shadow:0 18px 40px rgba(0,0,0,.22); z-index:1005; }
  .site-header .main-nav.open { display:flex !important; }
  .site-header .main-nav.open > a,
  .site-header .main-nav.open > .nav-link { display:flex !important; align-items:center; min-height:50px; padding:13px 0 !important; border-bottom:1px solid rgba(245,242,234,.12); color:#F5F2EA !important; font-size:14px !important; line-height:1.35; letter-spacing:.05em !important; white-space:normal; }
  .site-header .main-nav.open > a:hover { color:#D8BC80 !important; }
  .site-header .main-nav.open .language-switch { display:block !important; align-self:flex-start; margin:12px 0 0 !important; }
  .site-header .language-menu { left:0 !important; right:auto !important; top:calc(100% + 5px) !important; z-index:1020; }
  .home-page .mobile-menu-toggle { display:inline-flex !important; }
  .custom-header { position:sticky; }
  .custom-menu-toggle { display:inline-flex !important; margin-left:auto; }
  .custom-nav.is-open { display:flex !important; flex-direction:column !important; position:absolute !important; top:100% !important; left:10px !important; right:10px !important; width:auto !important; max-height:calc(100dvh - 92px); overflow:auto; padding:10px 20px 18px !important; background:#292A28 !important; border:1px solid rgba(200,169,107,.38) !important; box-shadow:0 18px 40px rgba(0,0,0,.22); z-index:1005; }
  .custom-nav.is-open > a { display:flex !important; align-items:center; min-height:50px; padding:13px 0 !important; color:#F5F2EA !important; font-size:14px !important; border-bottom:1px solid rgba(245,242,234,.12); }
  .custom-nav.is-open .custom-language { align-self:flex-start; margin-top:12px; }
  .inquiry-page .site-header .main-nav { top:100% !important; }
  .entry-content { padding:110px 8px 150px !important; }
  .entry-content h1 { font-size:clamp(64px,15vw,120px) !important; }
  .entry-subtitle { font-size:16px !important; }
  .entry-bottom { bottom:66px !important; left:22px !important; right:22px !important; justify-content:center !important; text-align:center; }
  .entry-legal-links { bottom:10px !important; gap:5px 14px !important; }
  .entry-legal-links a,.entry-legal-links button { font-size:12px !important; }
  .detail-back-row { flex-direction:column !important; align-items:flex-start !important; }
  .detail-back-button { width:auto; max-width:100%; min-height:50px !important; font-size:14px !important; white-space:normal; }
  .inquiry-page .inquiry-main { padding:92px 18px 38px !important; }
  .inquiry-back-row { margin-bottom:14px; }
  .inquiry-back-button { width:auto; max-width:100%; min-height:50px !important; }
  .product-scope-options { grid-template-columns:minmax(0,1fr); }
  .inquiry-page .attachment-dropzone { align-items:flex-start; flex-wrap:wrap; }
  .inquiry-page .attachment-dropzone-copy { flex:1 1 calc(100% - 60px); }
  .inquiry-page .attachment-choose-button { width:100%; white-space:normal; }
  .siare-cookie-banner { left:50% !important; right:auto !important; bottom:max(10px,env(safe-area-inset-bottom)) !important; transform:translateX(-50%) !important; width:calc(100vw - 20px) !important; max-height:min(76dvh,620px) !important; overflow-y:auto; grid-template-columns:minmax(0,1fr) !important; padding:17px !important; gap:14px !important; }
  .siare-cookie-actions { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; gap:7px !important; }
  .siare-cookie-btn { min-width:0; min-height:46px !important; padding:10px 8px !important; font-size:12px !important; white-space:normal; }
  .siare-cookie-settings { max-height:min(86dvh,780px) !important; }
  .legal-main { padding:42px 22px 48px !important; }
  .legal-footer { align-items:flex-start !important; flex-direction:column !important; }
  .legal-footer .siare-legal-links { justify-content:flex-start !important; }
}
@media (max-width: 480px) {
  .entry:before { inset:12px !important; }
  .entry-topbar { padding:24px 24px !important; }
  .entry-content { padding:98px 8px 154px !important; }
  .entry-content h1 { font-size:clamp(58px,17vw,86px) !important; letter-spacing:.09em !important; text-indent:.09em !important; }
  .entry-eyebrow { max-width:100%; font-size:10px !important; letter-spacing:.14em !important; line-height:1.6 !important; }
  .entry-subtitle { margin:20px auto 24px !important; font-size:15px !important; }
  .entry-cta { width:min(100%,360px) !important; min-height:54px !important; gap:12px !important; padding-inline:15px !important; font-size:12px !important; letter-spacing:.045em !important; }
  .entry-bottom { bottom:70px !important; flex-direction:column !important; gap:3px !important; font-size:10px !important; letter-spacing:.06em !important; }
  .entry-bottom > span { max-width:100% !important; text-align:center !important; }
  .entry-legal-links { bottom:8px !important; gap:3px 10px !important; font-size:11px !important; }
  .entry-legal-links a,.entry-legal-links button { font-size:11px !important; min-height:30px; }
  .siare-cookie-actions { grid-template-columns:1fr !important; }
  .siare-cookie-btn { min-height:44px !important; font-size:13px !important; }
  .inquiry-page .inquiry-back-button { width:100%; }
  .inquiry-page .inquiry-form-section { padding:20px 16px !important; }
  .product-scope-option { padding:15px 12px; }
  .product-scope-option-content strong { font-size:14px !important; }
  .product-scope-option-content small { font-size:13px !important; }
  .detail-back-button { width:100% !important; }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}


/* =========================================================
   SIARE LAST-MILE REPAIR V2
   Fixes confirmed by owner: charcoal rather than pure-black panels,
   explicit foreground colors, visible navigation, large controls,
   stable legal links, clear form and product-detail return actions.
========================================================= */
:root {
  --siare-dark-surface: #292A28;
  --siare-dark-surface-raised: #363833;
  --siare-dark-foreground: #F5F2EA;
  --siare-dark-accent: #C8A96B;
  --siare-field-surface: #F5F2EA;
}
html, body { background-color: #F5F2EA; }
body { color: #292A28; overflow-x: clip; }

/* Do not use pure-black as a large page background. */
.entry, .entry-image, .brand-world, .shower-collection,
.home-page .contact-section, .mf-page, .custom-process, .custom-footer,
.products-page, .catalog-hero, .site-footer, .footer, .inquiry-page .site-header {
  background-color: #292A28 !important;
}
.entry { color: #F5F2EA !important; }
.entry-image { background-color: #292A28 !important; }
.entry-image::before {
  background-image: url("images/siare-entry-hero-redesign.webp") !important;
  background-size: cover !important;
  background-position: center center !important;
  filter: blur(13px) brightness(.67) saturate(.82) !important;
  opacity: .64 !important;
}
.entry-image::after {
  background-image: url("images/siare-entry-hero-redesign.webp") !important;
  background-size: contain !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  opacity: .62;
}
.entry-shade {
  background: linear-gradient(90deg,rgba(41,42,40,.55),rgba(41,42,40,.24) 50%,rgba(41,42,40,.55)),linear-gradient(0deg,rgba(41,42,40,.62),transparent 45%,rgba(41,42,40,.40)) !important;
}
.entry-content { width: min(860px, calc(100% - 40px)) !important; margin: auto !important; text-align: center !important; align-items: center !important; justify-content: center !important; }
.entry-content > * { text-align: center !important; }
.entry-content h1 { width: 100% !important; text-align:center !important; }
.entry-subtitle { max-width: 560px !important; margin-inline:auto !important; font-size: clamp(16px,1.3vw,20px) !important; }
.entry-cta { min-height: 56px !important; font-size: 14px !important; letter-spacing: .08em !important; }
.entry-topbar { position:absolute !important; left:0 !important; right:0 !important; width:100% !important; display:flex !important; align-items:center !important; justify-content:space-between !important; }
.entry-legal-links { position:absolute !important; left:18px !important; right:18px !important; bottom:max(12px,env(safe-area-inset-bottom)) !important; top:auto !important; transform:none !important; z-index:8 !important; }

/* All dark surfaces use graphite; force inherited text/icon colors on each dark module. */
.site-header, .site-header.scrolled, .custom-header, .legal-header,
.site-header .main-nav.open, .custom-nav.is-open,
.home-page .shower-collection, .home-page .contact-section,
.mf-page .site-header, .custom-process, .custom-footer,
.site-footer, .footer, .inquiry-page .site-header {
  background-color: #292A28 !important;
  color: #F5F2EA !important;
}
.site-header a, .custom-header a, .legal-header a,
.custom-process h1, .custom-process h2, .custom-process h3, .custom-process p,
.custom-process li, .custom-step h3, .custom-step p,
.custom-footer, .custom-footer a, .site-footer, .site-footer a,
.footer, .footer a, .mf-page .site-header a {
  color: #F5F2EA !important;
}
.custom-process .custom-eyebrow, .custom-step > span,
.custom-footer .custom-footer-brand, .footer-brand { color: #C8A96B !important; }
.custom-process p, .custom-step p, .custom-footer-copy { color: rgba(245,242,234,.82) !important; }
.custom-process svg, .custom-footer svg, .site-footer svg, .footer svg { stroke: currentColor; }
.home-page .contact-section, .home-page .contact-section * { text-shadow: none; }
.home-page .contact-section .contact-section-title,
.home-page .contact-section .contact-title,
.home-page .contact-section h1, .home-page .contact-section h2,
.home-page .contact-section h3, .home-page .contact-section p,
.home-page .contact-section span:not(.contact-quote-action):not(.contact-quote-arrow),
.home-page .contact-section li { color: #F5F2EA; }
.home-page .contact-section .contact-quote-link { background: #C8A96B !important; color: #292A28 !important; }
.home-page .contact-section .contact-quote-link * { color: #292A28 !important; }
.home-page .contact-section .contact-social-icon,
.home-page .contact-section .contact-action-icon,
.home-page .contact-section .contact-link-arrow,
.home-page .contact-section .contact-social-icon svg,
.home-page .contact-section .contact-action-icon svg,
.home-page .contact-section .contact-link-arrow svg { color:#C8A96B !important; stroke:#C8A96B !important; fill:none !important; }
.home-page .contact-section .contact-social-link,
.home-page .contact-section .contact-action-link { background:#363833 !important; color:#F5F2EA !important; }
.home-page .contact-section .contact-social-link *,
.home-page .contact-section .contact-action-link * { color:inherit; }

/* Desktop: keep mobile toggles hidden. On touch widths, use a visible, tappable menu button. */
@media (min-width: 901px) {
  .mobile-menu-toggle, .mobile-toggle, .custom-menu-toggle { display:none !important; }
}
@media (max-width: 900px) {
  .site-header { display:flex !important; align-items:center !important; justify-content:space-between !important; min-height:72px !important; height:auto !important; padding:10px 18px !important; z-index:2000 !important; }
  .site-header .brand, .site-header .brand-name { font-size:27px !important; max-width:calc(100vw - 108px); }
  .mobile-menu-toggle, .mobile-toggle, .custom-menu-toggle { display:inline-flex !important; flex:0 0 48px !important; align-items:center !important; justify-content:center !important; width:48px !important; min-width:48px !important; height:48px !important; min-height:48px !important; color:#F5F2EA !important; background:#363833 !important; border:1px solid #C8A96B !important; font-size:22px !important; line-height:1 !important; cursor:pointer; }
  .site-header .main-nav { display:none !important; position:absolute !important; top:100% !important; left:10px !important; right:10px !important; width:auto !important; max-height:calc(100dvh - 90px) !important; overflow-y:auto !important; flex-direction:column !important; align-items:stretch !important; gap:0 !important; padding:12px 20px 18px !important; background:#292A28 !important; color:#F5F2EA !important; border:1px solid rgba(200,169,107,.5) !important; box-shadow:0 18px 40px rgba(0,0,0,.25) !important; }
  .site-header .main-nav.open { display:flex !important; }
  .site-header .main-nav.open > a, .site-header .main-nav.open .language-current { display:flex !important; align-items:center !important; min-height:50px !important; padding:12px 0 !important; color:#F5F2EA !important; font-size:14px !important; line-height:1.4 !important; letter-spacing:.045em !important; border-bottom:1px solid rgba(245,242,234,.14) !important; white-space:normal !important; }
  .site-header .main-nav.open > a:hover { color:#C8A96B !important; }
  .site-header .main-nav.open .language-switch { display:block !important; align-self:flex-start !important; margin:12px 0 0 !important; }
  .site-header .language-menu { background:#363833 !important; z-index:2010 !important; }
  .custom-header { display:flex !important; position:sticky !important; top:0 !important; align-items:center !important; min-height:72px !important; padding:10px 18px !important; z-index:2000 !important; }
  .custom-menu-toggle { display:inline-flex !important; margin-left:auto !important; }
  .custom-nav.is-open { display:flex !important; flex-direction:column !important; position:absolute !important; top:100% !important; left:10px !important; right:10px !important; width:auto !important; max-height:calc(100dvh - 90px) !important; overflow:auto !important; padding:12px 20px 18px !important; background:#292A28 !important; border:1px solid rgba(200,169,107,.5) !important; z-index:2005 !important; }
  .custom-nav.is-open > a { display:flex !important; align-items:center; min-height:50px !important; padding:12px 0 !important; color:#F5F2EA !important; font-size:14px !important; border-bottom:1px solid rgba(245,242,234,.14) !important; }
}

/* Never allow the old manufacturing intro heading rule to hide the real page title. */
.mf-page .mf-intro h1, .mf-page .mf-intro-copy, .mf-page .mf-eyebrow, .mf-page .mf-back-link {
  opacity:1 !important; visibility:visible !important; transform:none !important;
}
.mf-page { --mf-bg:#292A28 !important; --mf-ink:#F5F2EA !important; --mf-muted:rgba(245,242,234,.82) !important; background:#292A28 !important; color:#F5F2EA !important; }
.mf-page::after { background:linear-gradient(90deg,rgba(41,42,40,.72),rgba(41,42,40,.54) 48%,rgba(41,42,40,.74)),linear-gradient(180deg,rgba(41,42,40,.38),rgba(41,42,40,.64)) !important; }
.mf-page .mf-intro h1, .mf-page .mf-step-copy h2, .mf-page .mf-step-copy p { color:#F5F2EA !important; }
.mf-page .mf-back-link { display:inline-flex !important; min-height:48px !important; padding:12px 17px !important; font-size:13px !important; color:#F5F2EA !important; }

/* Product catalogue + product details: clear labels and prominent return path. */
.catalog-hero { background-color:#292A28 !important; }
.hero-inner .eyebrow, .section-eyebrow { font-size:12px !important; letter-spacing:.13em !important; }
.catalog-hero h1 { font-size:clamp(38px,5vw,68px) !important; line-height:1.04 !important; }
.hero-lead, .section-description { font-size:16px !important; line-height:1.75 !important; }
.section-title { font-size:clamp(28px,3vw,42px) !important; line-height:1.1 !important; }
.category-pill, .series-pill, .filter-chip, .sort-select, .search-box input { min-height:46px !important; font-size:14px !important; }
.category-pill, .series-pill, .filter-chip { padding:10px 15px !important; }
.card-title, .product-card-title { font-size:clamp(18px,1.5vw,23px) !important; line-height:1.3 !important; }
.card-subtitle, .product-card-subtitle, .product-description { font-size:14px !important; line-height:1.7 !important; }
.view-details, .card-action, .product-card .button, .catalog-hero .hero-cta { min-height:48px !important; font-size:13px !important; }
.page-shell { padding-top:28px; }
.detail-back-row { display:flex !important; align-items:center !important; justify-content:space-between !important; flex-wrap:wrap !important; gap:12px !important; margin:4px 0 24px !important; }
.detail-back-button, .back-button { display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:12px !important; min-height:52px !important; width:auto !important; max-width:100% !important; padding:0 20px !important; background:#292A28 !important; border:1px solid #C8A96B !important; color:#F5F2EA !important; font-size:14px !important; font-weight:600 !important; letter-spacing:.045em !important; line-height:1.35 !important; text-transform:uppercase; }
.detail-back-button .detail-back-arrow { color:#C8A96B !important; font-size:20px !important; }
.detail-back-button:hover, .back-button:hover { background:#363833 !important; color:#F5F2EA !important; }
.breadcrumbs { font-size:12px !important; line-height:1.6 !important; letter-spacing:.08em !important; }
.product-info h1 { font-size:clamp(38px,4.6vw,64px) !important; line-height:1.05 !important; }
.product-info .eyebrow { font-size:12px !important; line-height:1.6 !important; }
.product-info .subtitle { font-size:16px !important; line-height:1.75 !important; }
.product-info .model-code { font-size:12px !important; line-height:1.6 !important; }
.product-info .description { font-size:16px !important; line-height:1.85 !important; }
.product-info .info-block h2 { font-size:15px !important; line-height:1.5 !important; letter-spacing:.09em !important; }
.product-info .spec-item span:first-child { font-size:13px !important; }
.product-info .spec-item span:last-child { font-size:15px !important; }
.product-info .dimension, .product-info .color-chip { font-size:13px !important; min-height:36px; }
.product-info .button, .actions .button { min-height:54px !important; padding:10px 17px !important; font-size:14px !important; line-height:1.4 !important; letter-spacing:.04em !important; background:#292A28 !important; border-color:#292A28 !important; color:#F5F2EA !important; }
.product-info .button.secondary { background:transparent !important; border-color:#9D895E !important; color:#292A28 !important; }
.product-info .button:hover { background:#C8A96B !important; border-color:#C8A96B !important; color:#292A28 !important; }
.footer, .site-footer { background:#292A28 !important; color:#F5F2EA !important; }
.footer a, .site-footer a { color:#F5F2EA !important; }
.footer .siare-legal-links, .site-footer .siare-legal-links { position:static !important; width:100% !important; flex-basis:100% !important; justify-content:center !important; margin:16px 0 0 !important; }

/* Forms: readable fields, visible upload action, return action and the product-scope choice. */
.inquiry-page { background:#E4E1DA !important; color:#292A28 !important; }
.inquiry-page .inquiry-main { padding-top:100px !important; }
.inquiry-back-row { display:flex !important; align-items:center !important; justify-content:flex-start !important; margin:0 0 18px !important; position:static !important; transform:none !important; }
.inquiry-back-button { display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:10px !important; min-height:52px !important; max-width:100% !important; padding:0 19px !important; background:#292A28 !important; color:#F5F2EA !important; border:1px solid #C8A96B !important; font-size:14px !important; font-weight:600 !important; letter-spacing:.035em !important; line-height:1.35 !important; }
.inquiry-back-button * { color:#F5F2EA !important; }
.inquiry-back-arrow { color:#C8A96B !important; font-size:22px !important; }
.inquiry-intro h1 { font-size:clamp(36px,5vw,64px) !important; line-height:1.06 !important; }
.inquiry-lead { font-size:17px !important; line-height:1.8 !important; }
.inquiry-form-section { background:#F5F2EA !important; color:#292A28 !important; border-color:#D1CABC !important; }
.inquiry-form-section h2 { color:#292A28 !important; font-size:clamp(25px,2.5vw,34px) !important; }
.inquiry-page label, .inquiry-page legend { color:#292A28 !important; font-size:15px !important; line-height:1.55 !important; font-weight:600; }
.inquiry-page input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
.inquiry-page select, .inquiry-page textarea {
  min-height:52px !important; padding:12px 14px !important; background:#FCFBF8 !important; color:#292A28 !important; border:1px solid #BDB6A8 !important; font-size:16px !important; line-height:1.5 !important; box-shadow:none;
}
.inquiry-page textarea { min-height:150px !important; resize:vertical; }
.inquiry-page input::placeholder, .inquiry-page textarea::placeholder { color:#77776F !important; opacity:1 !important; }
.inquiry-page .field-hint, .inquiry-page .submit-note, .inquiry-page .form-status, .inquiry-page .product-request-sub { font-size:14px !important; line-height:1.7 !important; }
.product-scope-field { grid-column:1 / -1 !important; min-width:0; padding:22px !important; margin:0 !important; border:1px solid #CFC7B8 !important; background:#FCFBF8 !important; }
.product-scope-field legend { padding:0 7px !important; font-size:17px !important; font-weight:700 !important; }
.product-scope-options { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px !important; margin:10px 0 8px !important; }
.product-scope-option { display:flex !important; align-items:flex-start !important; gap:12px !important; min-width:0; min-height:92px !important; padding:18px !important; border:1px solid #CFC7B8 !important; background:#F5F2EA !important; color:#292A28 !important; cursor:pointer; }
.product-scope-option:has(input:checked) { border-color:#9A7944 !important; box-shadow:inset 0 0 0 1px #9A7944; background:#F1EBDD !important; }
.product-scope-option input[type=radio] { flex:0 0 20px; width:20px !important; min-height:20px !important; height:20px !important; margin:3px 0 0 !important; accent-color:#756044; }
.product-scope-option-content { display:flex; flex-direction:column; gap:6px; min-width:0; }
.product-scope-option-content strong { color:#292A28 !important; font-size:16px !important; line-height:1.4 !important; }
.product-scope-option-content small { color:#62625A !important; font-size:14px !important; line-height:1.55 !important; }
.inquiry-submit, .inquiry-add-product, .inquiry-action-buttons button { min-height:56px !important; padding:14px 21px !important; font-size:15px !important; line-height:1.35 !important; font-weight:600 !important; }
.inquiry-submit { background:#292A28 !important; border-color:#292A28 !important; color:#F5F2EA !important; }
.inquiry-submit *, .inquiry-submit svg { color:#F5F2EA !important; stroke:#F5F2EA !important; }
.inquiry-add-product { background:#F5F2EA !important; border:1px solid #9A7944 !important; color:#292A28 !important; }
.attachment-dropzone { display:flex !important; align-items:center !important; gap:16px !important; width:100% !important; min-height:120px !important; padding:20px !important; border:1px dashed #9A7944 !important; background:#FCFBF8 !important; color:#292A28 !important; }
.attachment-upload-icon { flex:0 0 48px !important; display:grid !important; place-items:center !important; width:48px !important; height:48px !important; border:1px solid #C8A96B !important; color:#756044 !important; background:#F5F2EA !important; font-size:27px !important; }
.attachment-dropzone-copy strong { color:#292A28 !important; font-size:17px !important; line-height:1.4 !important; }
.attachment-dropzone-copy span { color:#5A5B54 !important; font-size:14px !important; line-height:1.6 !important; }
.attachment-choose-button { display:inline-flex !important; align-items:center !important; justify-content:center !important; min-height:50px !important; flex:0 0 auto !important; padding:12px 18px !important; border:1px solid #292A28 !important; background:#292A28 !important; color:#F5F2EA !important; font-size:14px !important; font-weight:700 !important; line-height:1.4 !important; cursor:pointer !important; }
.attachment-choose-button:hover, .attachment-choose-button:focus-visible { border-color:#C8A96B !important; background:#363833 !important; color:#F5F2EA !important; }
.attachment-help { font-size:14px !important; line-height:1.65 !important; color:#555750 !important; }
.attachment-preview-card { background:#FCFBF8 !important; color:#292A28 !important; }
.attachment-preview-name { color:#292A28 !important; font-size:14px !important; }
.attachment-preview-size { color:#686961 !important; font-size:13px !important; }
.attachment-remove-button { min-width:44px !important; min-height:44px !important; font-size:22px !important; color:#292A28 !important; background:#F5F2EA !important; }

/* Legal-policy footer links stay in the document footer. They must never float around the viewport. */
.siare-legal-links { position:static !important; inset:auto !important; transform:none !important; z-index:auto !important; display:flex !important; width:100% !important; max-width:100% !important; flex-flow:row wrap !important; justify-content:center !important; align-items:center !important; gap:10px 22px !important; margin:16px 0 0 !important; font-size:13px !important; line-height:1.5 !important; }
.siare-legal-links a, .siare-legal-links button { position:static !important; inset:auto !important; transform:none !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; min-height:42px !important; padding:7px 0 !important; color:inherit !important; font-size:13px !important; line-height:1.5 !important; white-space:normal !important; background:transparent; border:0; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.entry .entry-legal-links { position:absolute !important; inset:auto 18px max(12px,env(safe-area-inset-bottom)) 18px !important; width:auto !important; max-width:none !important; z-index:8 !important; }
.entry .entry-legal-links a,.entry .entry-legal-links button { color:#F5F2EA !important; }
.legal-page { display:flex !important; flex-direction:column !important; min-height:100vh !important; min-height:100svh !important; min-height:100dvh !important; background:#F5F2EA !important; color:#292A28 !important; }
.legal-main { width:min(1040px,100%) !important; flex:1 0 auto !important; margin:0 auto !important; padding:clamp(38px,6vw,76px) clamp(22px,5vw,70px) 50px !important; color:#292A28 !important; }
.legal-main h1 { color:#292A28 !important; font-size:clamp(34px,5vw,58px) !important; line-height:1.08 !important; }
.legal-main p, .legal-sections p, .legal-sections li { color:#555750 !important; font-size:16px !important; line-height:1.8 !important; }
.legal-main h2, .legal-sections h2, .legal-sections h3 { color:#292A28 !important; font-size:clamp(20px,2.2vw,28px) !important; line-height:1.35 !important; }
.legal-footer { position:static !important; inset:auto !important; margin-top:auto !important; flex:0 0 auto !important; display:flex !important; flex-flow:row wrap !important; align-items:center !important; justify-content:space-between !important; gap:12px 24px !important; padding:24px clamp(22px,5vw,70px) !important; background:#292A28 !important; color:#F5F2EA !important; }
.legal-footer > .siare-legal-links { flex-basis:100% !important; justify-content:center !important; }

/* Cookie consent: fixed bottom banner; only its Settings button opens the centered modal. */
.siare-cookie-banner { position:fixed !important; inset:auto auto max(12px,env(safe-area-inset-bottom)) 50% !important; transform:translateX(-50%) !important; width:min(1080px,calc(100vw - 28px)) !important; z-index:10000 !important; background:#F5F2EA !important; color:#292A28 !important; }
.siare-cookie-banner[hidden],.siare-cookie-settings[hidden],.siare-cookie-backdrop[hidden] { display:none !important; }
.siare-cookie-banner h2,.siare-cookie-banner p,.siare-cookie-banner span { color:inherit; }
.siare-cookie-banner a { position:static !important; color:#756044 !important; font-size:13px !important; }
.siare-cookie-actions { display:flex !important; flex-wrap:wrap !important; gap:9px !important; align-items:center !important; justify-content:flex-end !important; }
.siare-cookie-btn { display:inline-flex !important; align-items:center !important; justify-content:center !important; min-height:48px !important; padding:11px 15px !important; font-size:13px !important; line-height:1.35 !important; cursor:pointer !important; }
.siare-cookie-settings { position:fixed !important; top:50% !important; left:50% !important; right:auto !important; bottom:auto !important; transform:translate(-50%,-50%) !important; z-index:10002 !important; background:#F5F2EA !important; color:#292A28 !important; }
.siare-cookie-settings * { color:inherit; }
.siare-cookie-settings h2 { color:#292A28 !important; font-size:clamp(25px,4vw,32px) !important; }
.siare-cookie-settings p, .siare-cookie-settings small { color:#555750 !important; font-size:14px !important; line-height:1.65 !important; }
.siare-cookie-settings strong { color:#292A28 !important; font-size:15px !important; }
.siare-cookie-btn-primary { background:#292A28 !important; color:#F5F2EA !important; border-color:#292A28 !important; }
.siare-cookie-btn-primary * { color:#F5F2EA !important; }
.siare-cookie-backdrop { position:fixed !important; inset:0 !important; z-index:10001 !important; background:rgba(41,42,40,.65) !important; }

/* Mobile: no clipped content, no tiny controls, and no centered legal-page links. */
@media (max-width: 900px) {
  .entry:before { inset:12px !important; }
  .entry-content { width:calc(100% - 38px) !important; padding:98px 6px 148px !important; }
  .entry-content h1 { font-size:clamp(60px,15vw,92px) !important; letter-spacing:.08em !important; text-indent:.08em !important; }
  .entry-eyebrow { font-size:11px !important; letter-spacing:.14em !important; line-height:1.6 !important; }
  .entry-subtitle { font-size:16px !important; margin:20px auto 24px !important; }
  .entry-cta { width:min(100%,370px) !important; min-height:56px !important; font-size:13px !important; gap:12px !important; }
  .entry-bottom { bottom:70px !important; left:20px !important; right:20px !important; display:flex !important; flex-direction:column !important; align-items:center !important; gap:4px !important; text-align:center !important; font-size:10px !important; letter-spacing:.06em !important; }
  .entry-bottom > span { max-width:100% !important; text-align:center !important; }
  .entry .entry-legal-links { bottom:max(8px,env(safe-area-inset-bottom)) !important; display:flex !important; flex-wrap:wrap !important; gap:0 14px !important; }
  .entry .entry-legal-links a,.entry .entry-legal-links button { min-height:34px !important; font-size:12px !important; }
  .detail-back-row { flex-direction:column !important; align-items:stretch !important; }
  .detail-back-button, .back-button { width:100% !important; min-height:52px !important; font-size:14px !important; }
  .product-info .button, .actions .button { width:100% !important; min-height:54px !important; font-size:14px !important; }
  .product-scope-options { grid-template-columns:minmax(0,1fr) !important; }
  .inquiry-main { padding-left:18px !important; padding-right:18px !important; }
  .inquiry-back-button { width:auto !important; max-width:100% !important; }
  .attachment-dropzone { align-items:flex-start !important; flex-wrap:wrap !important; }
  .attachment-dropzone-copy { flex:1 1 calc(100% - 60px) !important; }
  .attachment-choose-button { width:100% !important; min-height:50px !important; }
  .siare-cookie-banner { inset:auto 10px max(10px,env(safe-area-inset-bottom)) 10px !important; transform:none !important; width:auto !important; max-height:min(76dvh,620px) !important; overflow:auto !important; grid-template-columns:minmax(0,1fr) !important; padding:17px !important; }
  .siare-cookie-actions { display:grid !important; grid-template-columns:1fr !important; width:100% !important; }
  .siare-cookie-btn { width:100% !important; min-height:48px !important; font-size:14px !important; }
  .siare-legal-links { justify-content:flex-start !important; gap:7px 16px !important; }
  .legal-footer { align-items:flex-start !important; flex-direction:column !important; }
  .legal-footer > .siare-legal-links { justify-content:flex-start !important; }
}
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; } }

/* Last specificity cleanup: keep the wordmark gold and link states clear. */
.custom-header .custom-brand { color:#C8A96B !important; }
.custom-nav > a:hover, .custom-nav > a[aria-current="page"] { color:#C8A96B !important; }
.site-header .main-nav > a:hover, .site-header .main-nav > a[aria-current="page"] { color:#C8A96B !important; }
.footer .footer-brand, .site-footer .footer-brand { color:#C8A96B !important; }
.catalog-return-row { display:flex !important; align-items:center !important; justify-content:flex-start !important; margin:0 0 20px !important; }
.catalog-return-button { display:inline-flex !important; align-items:center !important; justify-content:center !important; gap:12px !important; min-height:48px !important; padding:0 18px !important; border:1px solid rgba(200,169,107,.78) !important; background:rgba(41,42,40,.92) !important; color:#F5F2EA !important; font-size:13px !important; font-weight:600 !important; letter-spacing:.045em !important; line-height:1.4 !important; }
.catalog-return-button span:first-child { color:#C8A96B !important; font-size:20px !important; }
.catalog-return-button:hover { background:#363833 !important; color:#F5F2EA !important; }
@media(max-width:900px) { .catalog-return-row { margin-bottom:16px !important; } .catalog-return-button { min-height:50px !important; font-size:14px !important; } }

/* Footer and dark-control layout integrity */
.site-footer,.footer,.contact-footer { flex-wrap:wrap !important; }
.site-footer .siare-legal-links,.footer .siare-legal-links { flex:0 0 100% !important; width:100% !important; max-width:100% !important; }
.custom-footer .siare-legal-links { padding:0 clamp(22px,6vw,90px) 22px !important; }
.contact-footer .siare-legal-links { flex:0 0 100% !important; width:100% !important; }
.contact-section .contact-social-icon,.contact-section .contact-action-icon,.contact-section .contact-link-arrow { font-weight:700; }
.contact-section .contact-social-icon-facebook { color:#C8A96B !important; }
.catalog-hero .hero-inner { width:min(1320px,100%) !important; margin-inline:auto !important; }
