/*
Theme Name: FRIOZEN Child
Template: storefront
Version: 0.6.1
Description: German B2B demo storefront.
Text Domain: friozen-child
*/
.frz { --ink:#082c43; --cyan:#087f97; --paper:#faf9f4; --line:#d6dedb; --muted:#526773; font:1rem/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--paper); }
.frz *, .frz *::before, .frz *::after { box-sizing:border-box; }
.frz h1,.frz h2,.frz h3,.frz p,.frz ul,.frz dl { margin:0; color:inherit; }
.frz h1 { font-size:clamp(2.25rem,5.3vw,4.5rem); line-height:1.05; letter-spacing:-.045em; font-weight:750; }
.frz h2 { font-size:clamp(1.6875rem,3.2vw,2.5rem); line-height:1.15; letter-spacing:-.03em; font-weight:700; }
.frz h3 { font-size:1.3125rem; line-height:1.3; letter-spacing:-.02em; font-weight:650; }
.frz main :is(h1,h2,h3) { overflow-wrap:anywhere; hyphens:auto; }
.frz a { color:inherit; text-decoration:none; }
.frz a:hover { text-decoration:underline; text-underline-offset:4px; }
.frz-demo-bar { padding:9px 20px; background:#e6efef; text-align:center; font-size:0.75rem; line-height:1.4; }
.frz-demo-bar strong { margin-right:10px; font-size:0.6875rem; letter-spacing:.1em; }
.frz-header { display:flex; align-items:center; gap:24px; max-width:1280px; padding:30px 48px; margin:auto; }
.frz-logo { display:inline-flex; align-items:center; gap:9px; font-size:1.6875rem; font-weight:850; letter-spacing:-.045em; white-space:nowrap; }
.frz-logo svg { color:#078eaa; width:32px; height:32px; }
.frz-header > nav { display:flex; align-items:center; gap:28px; margin-left:auto; font-size:0.875rem; font-weight:600; }
.frz-cart-link .frz-cart-count { flex:none; background:var(--ink); color:white; border-radius:50%; min-width:23px; min-height:23px; padding-inline:4px; display:grid; place-items:center; font-size:0.6875rem; white-space:nowrap; }
.frz main { max-width:1280px; padding:0 48px; margin:auto; }
.frz-hero { display:grid; grid-template-columns:1.06fr 1fr; gap:64px; padding:42px 0 55px; align-items:center; }
.frz-kicker { font-size:0.6875rem; letter-spacing:.13em; font-weight:750; margin-bottom:20px !important; }
.frz-intro { font-size:1.125rem; line-height:1.6; max-width:490px; margin:25px 0 !important; color:var(--muted) !important; }
.frz-price { display:flex; align-items:center; gap:18px; margin:22px 0 3px; font-size:3.375rem; line-height:1.1; font-weight:750; letter-spacing:-.035em; }
.frz-price span { font-size:0.8125rem; line-height:1.5; font-weight:500; letter-spacing:0; }
.frz-muted { color:var(--muted) !important; }
.frz-button span { font-size:1.25rem; }
.frz-hero-copy > .frz-button { margin-top:25px; }
.frz-text-link { display:block; font-size:0.875rem; font-weight:600; margin-top:20px; }
.frz-product-visual { display:flex; flex-direction:column; align-items:center; justify-content:space-between; min-height:490px; padding:26px; border-radius:16px; background:#e8efeb; background-image:radial-gradient(circle at 35% 35%,#f4f7f0,transparent 65%); position:relative; }
.frz-tag { font-size:0.625rem; letter-spacing:.09em; font-weight:750; border:1px solid #bccfcf; padding:4px 9px; border-radius:30px; display:inline-block; }
.frz-cylinder { width:85%; max-width:300px; height:350px; display:block; }
.frz-product-visual p { font-size:0.6875rem; color:var(--muted); text-align:center; }
.frz-visual-label { width:100%; display:flex; justify-content:space-between; font-size:1.375rem; font-weight:600; border-top:1px solid #c7d8d4; padding-top:16px; margin-top:20px; }
.frz-facts { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--line); padding:24px 0; gap:32px; }
.frz-facts div { display:flex; flex-direction:column; }
.frz-facts strong { font-size:0.9375rem; }
.frz-facts span { font-size:0.8125rem; color:var(--muted); }
.frz-section { padding:66px 0; }
.frz-section-title { display:flex; align-items:flex-end; justify-content:space-between; gap:25px; margin-bottom:22px; }
.frz-section-title a { font-size:0.875rem; white-space:nowrap; }
.frz-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.frz-steps { margin-top:35px; }
.frz-steps article { border-top:1px solid var(--line); padding-top:20px; }
.frz-steps article > span { color:var(--cyan); font-size:0.8125rem; font-weight:750; display:block; margin-bottom:30px; }
.frz-steps h3 { margin-bottom:12px; }
.frz-steps p { color:var(--muted); font-size:0.875rem; max-width:300px; }
.frz-card { border:1px solid var(--line); border-radius:10px; padding:24px; background:#fff; }
.frz-card h3 { margin:14px 0 8px; }
.frz-card p { font-size:0.9375rem; }
.frz-card small { font-size:0.75rem; color:var(--muted); }
.frz-accessories { margin-top:30px; }
.frz-accessory-art { height:130px; background:#f0f4f3; border-radius:6px; display:grid; place-items:center; margin-bottom:20px; }
.frz-accessory-art span { font-size:4.5rem; line-height:1; color:#9db5bd; }
.frz-buy { display:flex; flex-wrap:wrap; gap:12px; align-items:flex-end; margin-top:20px; }
.frz label { display:flex; flex-direction:column; gap:7px; font-size:0.8125rem; font-weight:600; }
.frz-two-column { display:grid; grid-template-columns:1fr 1fr; gap:65px; }
.frz-faq details { border-bottom:1px solid var(--line); }
.frz-faq summary { cursor:pointer; padding:20px 0; font-size:1rem; font-weight:600; }
.frz-faq p { color:var(--muted); font-size:0.875rem; padding-bottom:20px; }
.frz-bulk { background:var(--ink); color:white; border-radius:14px; padding:38px; display:flex; gap:30px; align-items:center; justify-content:space-between; margin-bottom:60px; }
.frz-bulk h2 { max-width:600px; font-size:2rem; }
.frz-bulk p:not(.frz-kicker) { margin-top:15px; color:#bed1d9; font-size:0.875rem; }
.frz-footer { border-top:1px solid var(--line); max-width:1280px; padding:40px 48px 25px; margin:auto; display:block; }
.frz-legal h2 { font-size:1.5rem; margin-top:36px; }
.frz .frz-legal h1 { font-size:clamp(1.75rem,4.5vw,3rem); overflow-wrap:anywhere; hyphens:auto; }
.frz-legal a { overflow-wrap:anywhere; text-decoration:underline; text-underline-offset:3px; }
.frz-page-title { padding:55px 0 0; }
.frz-page-title p:last-child { margin-top:20px; color:var(--muted); }
.frz-panel { background:#fff; border:1px solid var(--line); border-radius:10px; padding:30px; align-self:start; }
.frz-panel h2 { font-size:1.625rem; margin-bottom:20px; }
.frz-panel h3 { margin-bottom:15px; }
.frz-panel > p { margin:20px 0; }
.frz-specs div { display:flex; gap:20px; justify-content:space-between; border-bottom:1px solid var(--line); padding:14px 0; font-size:0.875rem; }
.frz-specs dd { margin:0; text-align:right; font-weight:600; }
.frz-specs dt { min-width:0; overflow-wrap:anywhere; hyphens:auto; }
.frz-specs + p { margin-top:25px; }
.frz-cart-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:40px; }
.frz-cart-layout > * { min-width:0; overflow-wrap:anywhere; }
.frz-cart-row { display:flex; flex-wrap:wrap; gap:20px; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); padding:20px 0; }
.frz-cart-row > div { flex:1; min-width:180px; }
.frz-cart-row h3 { font-size:1.0625rem; margin:8px 0; }
.frz-cart-row p { font-size:0.75rem; color:var(--muted); }
.frz-cart-row label { width:80px; }
.frz-form-layout { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:start; }
.frz-form-layout h1 { font-size:clamp(2.1875rem,4.4vw,3.5rem); }
.frz-mini-product { margin:30px 0; padding-block:20px; border-block:1px solid var(--line); display:flex; flex-direction:column; }
.frz-mini-product span { font-size:0.875rem; color:var(--muted); }
.frz-fields { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.frz-wide { grid-column:1/-1; }
.frz-checkbox { flex-direction:row !important; align-items:flex-start; gap:10px !important; margin:25px 0 15px; font-size:0.75rem !important; }
.frz-form-note { font-size:0.75rem; background:#f0f5f5; padding:12px; margin-bottom:25px !important; border-radius:5px; }
.frz-small { font-size:0.6875rem; }
.frz-small a { text-decoration:underline; }
.frz-request > .frz-button { margin-top:22px; width:100%; }
.frz-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.frz-basket-note { margin-top:20px; font-size:0.8125rem; padding:15px; border:1px solid var(--line); border-radius:5px; }
.frz-flash { margin:20px 0; background:#e3f0ea; border:1px solid #94c4b2; padding:15px; font-size:0.875rem; border-radius:6px; }
.frz-article { max-width:760px; margin:auto; padding:60px 0 80px; }
.frz-article h1 { font-size:clamp(2.25rem,4.5vw,3.5rem); }
.frz-article .frz-kicker { margin-top:30px; }
.frz-article > p:not(.frz-kicker) { margin-bottom:24px; }
.frz-article > .frz-button { margin-top:20px; }
@media(max-width:1000px) { .frz-header,.frz-footer { padding-inline:28px; } .frz main { padding-inline:28px; } .frz-header > nav { gap:18px; } .frz-hero { gap:30px; } .frz-form-layout,.frz-two-column { gap:35px; } .frz-grid { gap:15px; } .frz-card { padding:18px; } }
@media(max-width:760px) { .frz-header { padding:22px 20px 16px; flex-wrap:wrap; gap:16px; } .frz-header > nav { order:3; width:100%; justify-content:space-between; margin:0; padding-top:12px; border-top:1px solid var(--line); } .frz-cart-link { margin-left:auto; } .frz-logo { font-size:1.4375rem; } .frz-logo svg { width:26px; height:26px; } .frz main { padding-inline:20px; } .frz-hero { grid-template-columns:1fr; padding:28px 0 35px; gap:30px; } .frz h1 { font-size:2.875rem; } .frz-intro { font-size:1rem; margin:20px 0 !important; } .frz-price { font-size:2.8125rem; } .frz-hero-copy > .frz-button { width:100%; } .frz-product-visual { min-height:340px; padding:20px; } .frz-cylinder { height:240px; } .frz-visual-label { font-size:1.1875rem; } .frz-facts { grid-template-columns:1fr; gap:18px; padding:22px 0; } .frz-facts div { padding-left:16px; border-left:2px solid #0793a6; } .frz-section { padding:42px 0; } .frz-grid,.frz-two-column,.frz-form-layout,.frz-cart-layout { grid-template-columns:1fr; } .frz-steps { gap:24px; } .frz-steps article > span { margin-bottom:15px; } .frz-steps p { max-width:none; } .frz-section-title { align-items:flex-start; flex-direction:column; gap:18px; } .frz-bulk { padding:25px; flex-direction:column; align-items:stretch; margin-bottom:40px; } .frz-bulk h2 { font-size:1.75rem; } .frz-footer { padding:30px 20px; } .frz-form-layout { gap:25px; } .frz-form-layout h1 { font-size:2.5rem; } .frz-panel { padding:22px; } .frz-fields { gap:16px; } .frz-page-title { padding-top:30px; } .frz-article { padding-top:35px; } .frz-article h1 { font-size:2.375rem; } }
@media(max-width:380px) { .frz h1 { font-size:2.5rem; } .frz-header > nav { gap:10px; font-size:0.75rem; } .frz-fields { grid-template-columns:1fr; } .frz-demo-bar { font-size:0.6875rem; } .frz main { padding-inline:16px; } }
body.friozen-preview,body.friozen-demo-page { margin:0; }
.frz-woo { font-size:1rem; }
.frz-woo::after { content:""; display:table; clear:both; }
.frz-woo .woocommerce-MyAccount-navigation ul { list-style:none; padding:0; }
.frz-woo p,.frz-woo h2,.frz-woo h3 { margin-bottom:18px; }
.frz-woo form { min-width:0; }
.frz-woo .woocommerce-MyAccount-content,.frz-woo .col2-set { min-width:0; }
.frz-woo .woocommerce-MyAccount-content table { overflow-wrap:anywhere; }
.frz-woo label.frz-qa-b2b { display:flex; gap:10px; align-items:flex-start; }
@media(max-width:760px) { .frz-header > nav { flex-wrap:wrap; row-gap:12px; } .frz-woo .woocommerce-MyAccount-navigation,.frz-woo .woocommerce-MyAccount-content { float:none; width:100%; } .frz-woo .woocommerce-MyAccount-navigation { margin-bottom:28px; } .frz-woo .col2-set .col-1,.frz-woo .col2-set .col-2 { float:none; width:100%; } .frz-woo table { font-size:0.8125rem; } }

/* Supplied FRIOZEN logo: preserve its natural proportions. */
.frz-logo .frz-brand-logo { display:block; width:200px; height:auto; max-width:none; }
@media(max-width:1000px) { .frz-logo .frz-brand-logo { width:180px; } }
@media(max-width:760px) { .frz-logo .frz-brand-logo { width:165px; } }

/* Approved premium presentation. Native renderer and WooCommerce share this palette. */
body.friozen-preview,body.friozen-demo-page { background:#090b0b; }
.frz-premium {
    --ink:#f4f6f4; --cyan:#85e2b5; --paper:#090b0b; --line:#2b3230; --muted:#a7b1ad;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    -webkit-font-smoothing:antialiased;
}
.frz-premium .frz-header { max-width:1380px; padding:25px 64px; gap:28px; }
.frz-premium .frz-logo { padding:5px 8px; background:#f4f5f1; border-radius:6px; }
.frz-premium .frz-logo .frz-brand-logo { width:168px; filter:none; }
.frz-premium .frz-footer .frz-logo { padding:0; background:transparent; border-radius:0; }
.frz-premium .frz-footer .frz-brand-layers { position:relative; display:block; width:156px; aspect-ratio:3; }
.frz-premium .frz-footer .frz-brand-layers .frz-brand-logo { width:100%; height:auto; filter:brightness(0) invert(1); clip-path:inset(0 0 0 29%); }
.frz-premium .frz-footer .frz-brand-layers .frz-brand-mark { position:absolute; inset:0; filter:none; clip-path:inset(0 71% 0 0); }
.frz-premium .frz-header > nav { font-weight:450; gap:30px; font-size:0.8125rem; color:#c3cbc7; }
.frz-premium .frz-cart-link .frz-cart-count { background:#e1e9e4; color:#131b16; }
.frz-premium main { max-width:1380px; padding:0 64px; }
.frz-premium .frz-hero { grid-template-columns:1fr 1.02fr; gap:18px; padding:40px 0 50px; min-height:660px; }
.frz-premium .frz-hero-copy { position:relative; z-index:1; padding:0 0 15px; }
.frz-premium .frz-kicker { color:#92cdb0; font-size:0.625rem; font-weight:600; letter-spacing:.2em; }
.frz-premium .frz-hero h1 { font-size:clamp(4.75rem,8.7vw,7.75rem); line-height:1; letter-spacing:-.065em; font-weight:650; }
.frz-premium-headline { display:block; font-size:clamp(1.875rem,3.25vw,2.9375rem); line-height:1.13; letter-spacing:-.04em; color:#c1cbc5; margin-top:14px; font-weight:500; }
.frz-premium .frz-intro { font-size:1.0625rem; line-height:1.7; max-width:480px; }
.frz-premium .frz-hero .frz-intro { margin:27px 0 26px !important; }
.frz-premium .frz-price { font-size:3.0625rem; font-weight:550; gap:18px; }
.frz-premium .frz-price span { color:#cad2ce; font-size:0.75rem; }
.frz-premium .frz-hero-copy > .frz-muted { font-size:0.75rem; }
.frz-premium .frz-hero-copy > .frz-button { margin-top:25px; }
.frz-premium .frz-text-link { font-size:0.8125rem; font-weight:500; color:#b9c6be; }
.frz-premium .frz-product-visual {
    padding:0; min-height:0; border-radius:0; background:none; overflow:visible;
    position:relative; display:block; align-self:center;
}
.frz-premium-cylinder {
    display:block; width:100%; height:auto;
    mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 4%,#000 87%,transparent);
    mask-composite:intersect;
}
.frz-premium-mobile-offer { display:none; }
.frz-premium .frz-premium-commerce > .frz-button { margin-top:25px; }
.frz-premium .frz-premium-commerce > .frz-muted { font-size:0.75rem; }
.frz-premium-caption { display:flex; justify-content:space-between; gap:12px; padding:17px 24px 0; font-size:0.625rem; color:#a8b5ad; letter-spacing:.06em; }
.frz-premium-caption span:first-child { font-weight:650; color:#d2dcd6; }
.frz-premium .frz-facts { gap:40px; padding:28px 0; }
.frz-premium .frz-facts strong { font-size:0.875rem; font-weight:550; }
.frz-premium .frz-facts span { font-size:0.75rem; margin-top:6px; }
.frz-premium .frz-section { padding:80px 0; }
.frz-premium h2 { font-size:clamp(1.75rem,3.5vw,2.9375rem); line-height:1.15; letter-spacing:-.04em; font-weight:550; }
.frz-premium h3 { font-weight:550; }
.frz-premium .frz-steps { gap:45px; margin-top:45px; }
.frz-premium .frz-steps article { padding-top:20px; }
.frz-premium .frz-steps article > span { font-size:2.0625rem; color:#8cb39d; font-weight:400; margin-bottom:30px; letter-spacing:-.04em; }
.frz-premium .frz-steps h3 { font-size:1.1875rem; }
.frz-premium .frz-steps p { font-size:0.8125rem; line-height:1.7; }
.frz-premium .frz-card,.frz-premium .frz-panel { background:#121714; border-color:var(--line); border-radius:18px; }
.frz-premium .frz-card { padding:25px; }
.frz-premium .frz-card h3 { font-size:1.25rem; }
.frz-premium .frz-card p { color:#d9e2dc; }
/* Current Ratgeber materials share the shop grid without becoming products. */
.frz-premium .frz-editorial-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.frz-premium .frz-editorial-card { display:flex; flex-direction:column; min-width:0; padding:1.75rem; overflow-wrap:anywhere; }
.frz-premium .frz-editorial-card h2 { margin:0 0 1rem; font-size:clamp(1.5rem,2.2vw,1.875rem); line-height:1.25; letter-spacing:-.025em; }
.frz-premium .frz-editorial-card p { margin:0 0 1.5rem; font-size:1rem; line-height:1.65; }
.frz-premium .frz-editorial-card > a { display:inline-flex; align-items:center; align-self:flex-start; gap:.5rem; min-height:2.75rem; margin-top:auto; color:var(--cyan); }
.frz-premium .frz-editorial-article { max-width:none; margin:0; padding-block:3.75rem 5rem; overflow-wrap:anywhere; }
.frz-premium .frz-editorial-header h1 { margin-bottom:1.5rem; font-size:clamp(2rem,4vw,3.5rem); line-height:1.15; }
.frz-premium .frz-editorial-header .frz-intro { max-width:none; font-size:1.125rem; }
.frz-premium .frz-editorial-back { display:inline-flex; align-items:center; min-height:2.75rem; color:var(--cyan); }
.frz-premium .frz-editorial-body { font-size:1.125rem; line-height:1.65; }
.frz-premium .frz-editorial-body p { margin:0 0 1.5rem; }
.frz-premium .frz-editorial-cta { margin-top:2rem; }
.frz-premium .frz-accessory-art { background:radial-gradient(ellipse at 50% 30%,#293a30,#171f1a 75%); height:150px; border-radius:12px; }
.frz-premium .frz-accessory-art span { color:#93b9a2; font-size:3.9375rem; font-weight:300; }
.frz-premium .frz-accessory-photo { aspect-ratio:1.25; overflow:hidden; border-radius:12px; margin-bottom:20px; background:#090c0a; }
.frz-premium .frz-accessory-photo img { width:100%; height:100%; display:block; object-fit:contain; }
.frz-premium .frz-buy label { font-weight:450; }
.frz-premium .frz-buy .frz-button span { font-size:1rem; line-height:1; }
.frz-premium .frz-bulk { padding:42px; background:linear-gradient(125deg,#1e3228,#12221a); border:1px solid #385342; border-radius:20px; }
.frz-premium .frz-bulk h2 { font-size:2.1875rem; }
.frz-premium .frz-bulk p:not(.frz-kicker) { color:#b6cabc; }
.frz-premium .frz-footer { max-width:1380px; padding:40px 64px 30px; }
.frz-premium .frz-footer .frz-brand-logo { width:156px; }
.frz-premium .frz-panel { padding:32px; }
.frz-premium .frz-panel h2 { font-size:1.6875rem; }
.frz-premium .frz-specs div { border-color:var(--line); }
.frz-premium .frz-specs dd { font-weight:500; }
.frz-premium .frz-form-layout,.frz-premium .frz-two-column { gap:65px; }
.frz-premium .frz-form-layout h1 { font-weight:550; font-size:clamp(2rem,4.4vw,3.5625rem); letter-spacing:-.04em; }
.frz-premium .frz-fields label { color:#d0dbd4; font-size:0.75rem; font-weight:500; }
.frz-premium .frz-form-note { background:#1c3024; color:#d3e3d9; }
.frz-premium .frz-flash { background:#163426; border-color:#5a8b6b; color:#e1efe6; }
.frz-premium .frz-checkbox span { color:#d0dbd4; }
.frz-premium .frz-mini-product,.frz-premium .frz-basket-note { border-color:var(--line); }
.frz-premium .frz-faq summary { font-weight:500; }
@media(max-width:1100px) {
    .frz-premium .frz-accessories { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .frz-premium .frz-header,.frz-premium .frz-footer { padding-inline:32px; }
    .frz-premium main { padding-inline:32px; }
    .frz-premium .frz-header > nav { gap:20px; }
    .frz-premium .frz-hero { min-height:580px; gap:10px; }
    .frz-premium .frz-hero h1 { font-size:5.625rem; }
    .frz-premium-headline { font-size:2.125rem; }
    .frz-premium .frz-form-layout,.frz-premium .frz-two-column { gap:35px; }
}
@media(max-width:760px) {
    .frz-premium .frz-header { padding:20px 22px 12px; gap:15px; }
    .frz-premium .frz-logo .frz-brand-logo { width:147px; }
    .frz-premium .frz-header > nav { font-size:0.75rem; padding-top:14px; gap:14px; color:#c3cbc7; }
    .frz-premium main { padding-inline:22px; }
    .frz-premium .frz-hero { grid-template-columns:1fr; min-height:0; padding:33px 0 30px; gap:17px; }
    .frz-premium .frz-hero-copy { display:contents; }
    .frz-premium-titleblock { grid-row:1; }
    .frz-premium .frz-hero .frz-product-visual { grid-row:2; }
    .frz-premium-commerce { grid-row:3; }
    .frz-premium .frz-kicker { font-size:0.5625rem; margin-bottom:17px !important; }
    .frz-premium .frz-hero h1 { font-size:5rem; letter-spacing:-.065em; }
    .frz-premium-headline { font-size:2rem; margin-top:10px; }
    .frz-premium .frz-hero .frz-intro { font-size:0.9375rem; margin:21px 0 !important; }
    .frz-premium .frz-price { font-size:2.6875rem; }
    .frz-premium .frz-premium-commerce > .frz-button { width:auto; min-width:208px; }
    .frz-premium .frz-product-visual { width:100%; max-width:500px; margin:auto; }
    .frz-premium-caption { padding:12px 5px 0; font-size:0.5625rem; }
    .frz-premium .frz-facts { grid-template-columns:1fr; gap:20px; padding:27px 0; }
    .frz-premium .frz-facts div { border-left:1px solid #68977a; padding-left:15px; }
    .frz-premium .frz-section { padding:48px 0; }
    .frz-premium h2 { font-size:2rem; }
    .frz-premium .frz-steps { gap:27px; margin-top:30px; }
    .frz-premium .frz-steps article > span { font-size:1.625rem; margin-bottom:15px; }
    .frz-premium .frz-grid,.frz-premium .frz-two-column,.frz-premium .frz-form-layout,.frz-premium .frz-cart-layout { grid-template-columns:1fr; }
    .frz-premium .frz-card,.frz-premium .frz-panel { padding:24px; }
    .frz-premium .frz-bulk { padding:27px; margin-bottom:36px; }
    .frz-premium .frz-bulk h2 { font-size:1.75rem; }
    .frz-premium .frz-footer { padding:30px 22px; }
    .frz-premium .frz-footer .frz-brand-logo { width:147px; }
    .frz-premium .frz-footer .frz-brand-layers { width:147px; }
    .frz-premium .frz-editorial-grid { grid-template-columns:minmax(0,1fr); }
    .frz-premium .frz-editorial-card { padding:1.5rem; }
    .frz-premium .frz-editorial-article { padding-block:2.25rem 3rem; }
    .frz-premium .frz-form-layout h1 { font-size:2.375rem; }
    .frz-premium-mobile-offer {
        position:fixed; bottom:0; inset-inline:0; z-index:10;
        display:flex; align-items:center; justify-content:space-between; gap:12px;
        padding:12px 20px calc(12px + env(safe-area-inset-bottom));
        background:#101a14; border-top:1px solid #425149;
        font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:#f4f6f4;
    }
    .frz-premium-mobile-offer > div { display:flex; flex-direction:column; flex:none; }
    .frz-premium-mobile-offer strong { font-size:1.4375rem; line-height:1.2; letter-spacing:-.03em; font-weight:550; }
    .frz-premium-mobile-offer > div > span { font-size:0.625rem; color:#acbcb2; margin-top:4px; }
    body:has(.frz-premium-mobile-offer) { padding-bottom:calc(var(--frz-mobile-offer-height, 5.625em) + 1rem + env(safe-area-inset-bottom)); }
}
@media(max-width:380px) {
    .frz-premium main { padding-inline:18px; }
    .frz-premium .frz-header,.frz-premium .frz-footer { padding-inline:18px; }
    .frz-premium .frz-hero h1 { font-size:4.5625rem; }
    .frz-premium-headline { font-size:1.8125rem; }
}

/* Native WooCommerce: readable controls and panels within the premium storefront. */
.frz-premium .frz-woo .woocommerce { color:var(--ink); }
.frz-premium .frz-woo h2,.frz-premium .frz-woo h3 { color:var(--ink); }
.frz-premium .frz-woo label { color:#d0dbd4; }
.frz-premium .frz-woo table.shop_table,.frz-premium .frz-woo table.shop_table th,
.frz-premium .frz-woo table.shop_table td,.frz-premium .frz-woo .cart_totals,
.frz-premium .frz-woo #payment,.frz-premium .frz-woo #payment .payment_box,
.frz-premium .frz-woo #payment .payment_methods li,.frz-premium .frz-woo #payment .place-order {
    background:#121714; color:var(--ink); border-color:var(--line);
}
.frz-premium .frz-woo #payment .payment_box::before { border-bottom-color:#121714; }
.frz-premium .frz-woo .woocommerce-info,.frz-premium .frz-woo .woocommerce-message {
    background:#20382b; color:#e1efe6;
}
.frz-premium .frz-woo .woocommerce-error { background:#522922; color:#fff0e9; }
.frz-premium .frz-woo .woocommerce-privacy-policy-text,.frz-premium .frz-woo .woocommerce-terms-and-conditions {
    color:#c3cec7; background:transparent;
}
.frz-premium .frz-woo label.checkbox,.frz-premium .frz-woo label.woocommerce-form__label-for-checkbox,
.frz-premium .frz-woo label.frz-qa-b2b { flex-direction:row; align-items:flex-start; gap:10px; }
.frz-premium .frz-woo #order_review {
    background:#121714; color:var(--ink); border:1px solid var(--line); border-radius:18px; overflow:hidden;
}
.frz-premium .frz-woo #order_review_heading,.frz-premium .frz-woo #order_payment_heading {
    float:none; width:auto; margin:0; padding:20px 24px; text-align:left; background:#121714; color:var(--ink);
}
.frz-premium .frz-woo .wc-gzd-checkbox-placeholder,.frz-premium .frz-woo .wc-gzd-order-submit {
    padding:18px 24px; background:#121714; color:var(--ink);
}
.frz-premium .frz-woo .wc-gzd-order-submit #place_order { width:100%; }

/* Quantity-based shipping and destination totals. */
.frz-shipping-table {margin-top:24px}
.frz-shipping-table h3 {font-size:1.125rem;margin:0 0 16px}
.frz .frz-shipping-table > p {margin:16px 0 0}
.frz-delivery-postcode {display:block;margin:12px 0;font-weight:600}
.frz-delivery-postcode input {display:block;margin-top:8px}
.frz-shipping-totals {margin-top:20px}
.frz-shipping-totals .frz-total {border-top:1px solid var(--line);padding-top:16px;font-weight:700;font-size:1.1875rem}
.frz-shipping-totals dd {white-space:nowrap}
#frz-order {scroll-margin-top:24px}

/* Delivery estimates are separate from the order form and saved basket. */
.frz-premium .frz-shipping-link {display:inline-block;margin-top:14px;color:#b8c8be;font-size:0.8125rem;text-decoration:underline;text-underline-offset:3px}
.frz-delivery-layout {display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:64px;align-items:start}
.frz-delivery-calculator h2 {font-size:1.4375rem;margin-bottom:22px}
.frz-delivery-calculator .frz-fields {margin-bottom:16px}
.frz-delivery-calculator [data-shipping-message] {margin-top:12px;min-height:22px}
.frz-delivery-calculator .frz-shipping-totals {margin-bottom:16px}
.frz-shipping-totals [hidden] {display:none}
.frz-delivery-calculator .frz-text-link {margin-top:20px}
.frz-delivery-conditions h2 {font-size:1.5625rem;margin-bottom:18px}
.frz-delivery-conditions h3 {margin-top:30px;margin-bottom:12px}
.frz-delivery-conditions p {margin-top:12px;color:var(--muted)}
.frz-delivery-conditions p a {text-decoration:underline;text-underline-offset:3px}
.frz-shipping-details {margin-top:24px;border-block:1px solid var(--line)}
.frz-shipping-details .frz-shipping-table {margin-top:16px}
.frz-shipping-details .frz-shipping-table h3 {margin:0 0 16px}
@media(max-width:760px) {.frz-delivery-layout {grid-template-columns:minmax(0,1fr);gap:36px}.frz-delivery-calculator {padding:22px}.frz-delivery-calculator .frz-fields {grid-template-columns:minmax(0,1fr)}}
.frz-checkout-start {margin-top:22px}
.frz-account-purchase-note {margin-bottom:24px !important}
.frz-premium .woocommerce-error,.frz-premium .woocommerce-info,.frz-premium .woocommerce-message {background:#20382b;color:#e1efe6}
.frz-premium .woocommerce-error {background:#522922;color:#fff0e9}
.frz-premium .frz-woo .woocommerce table:not(.has-background) thead th,
.frz-premium .frz-woo .woocommerce table:not(.has-background) tbody td,
.frz-premium .frz-woo .woocommerce table:not(.has-background) tbody th,
.frz-premium .frz-woo .woocommerce table:not(.has-background) tfoot th,
.frz-premium .frz-woo .woocommerce table:not(.has-background) tfoot td {background:#121714;color:var(--ink)}
.frz-invoice-confirmation {margin:30px 0;padding:24px;border:1px solid var(--line);border-radius:18px;background:#121714}
.frz-invoice-confirmation h2 {font-size:1.5625rem;margin-bottom:14px}
.frz-invoice-confirmation p {margin-bottom:18px;color:var(--muted)}
.frz-premium .frz-woo .woocommerce-bacs-bank-details {background:#121714;color:var(--ink);padding:24px;border-radius:18px;margin-block:24px}

/* Premium hero: direct purchase, quiet secondary action and a studio display. */
.frz-cart-icon { display:block; flex:none; }
.frz-premium .frz-hero-actions { display:flex; flex-wrap:wrap; align-items:flex-end; gap:12px; margin-top:25px; }
.frz-premium .frz-hero-actions .frz-buy { margin:0; flex:0 0 auto; gap:10px; }
.frz-premium .frz-hero-actions .frz-buy label { font-size:0.6875rem; letter-spacing:.02em; }
.frz-premium-stage {
    position:relative; isolation:isolate; padding:18px; overflow:hidden; border-radius:30px;
    border:1px solid #b4cebf40; background:linear-gradient(145deg,#17221c,#0a0f0c 55%,#17241c);
    box-shadow:inset 0 1px 0 #e5f2e31a,0 30px 80px #00000040;
}
.frz-premium-stage::before {
    content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
    background:radial-gradient(ellipse at 50% 18%,#dcf3e624,transparent 58%),radial-gradient(ellipse at 82% 76%,#82c9a61c,transparent 45%);
}
.frz-premium-stage::after {
    content:""; position:absolute; top:0; left:20%; right:20%; height:1px; pointer-events:none;
    background:linear-gradient(90deg,transparent,#ebf7e78c,transparent);
}
.frz-premium-stage .frz-premium-cylinder { position:relative; z-index:1; border-radius:20px; }
.frz-premium .frz-premium-caption { padding:18px 12px 0; color:#b8c8be; letter-spacing:.08em; }
@media(max-width:760px) {
    .frz-premium-stage { padding:12px; border-radius:24px; }
    .frz-premium-stage .frz-premium-cylinder { border-radius:16px; }
    .frz-premium .frz-premium-caption { padding:14px 4px 0; }
    .frz-premium .frz-hero-actions { gap:12px; margin-top:24px; }
}
.frz-premium .frz-woo .frz-accessory-photo {width:64px;max-width:100%;margin:0;border-radius:6px;aspect-ratio:1}
.frz-premium .frz-woo .woocommerce ul.order_details {background:#121714;color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:24px;margin:24px 0}
.frz-premium .frz-woo .woocommerce ul.order_details::before,
.frz-premium .frz-woo .woocommerce ul.order_details::after {display:none;background:none}
.frz-premium .frz-woo .woocommerce ul.order_details li {color:var(--muted);border-color:var(--line)}
.frz-premium .frz-woo .woocommerce ul.order_details li strong {color:var(--ink);overflow-wrap:anywhere}
@media(max-width:760px){.frz-premium .frz-woo .woocommerce ul.order_details li {float:none;display:block;width:100%;margin:0 0 16px;padding:0 0 16px;border-right:0;border-bottom:1px solid var(--line)}.frz-premium .frz-woo .woocommerce ul.order_details li:last-child {margin:0;padding:0;border-bottom:0}}

/* Shared keyboard, footer/legal and native-account presentation; approved palette stays intact. */
.frz .frz-skip-link {
    position:fixed; z-index:1000; top:1rem; left:1rem; max-width:calc(100% - 2rem);
    transform:translateY(-250%); padding:.75rem 1rem; border-radius:.5rem;
    background:var(--cyan); color:var(--paper); font-size:1rem; font-weight:650;
}
.frz .frz-skip-link:focus { transform:none; }
.frz-premium #frz-main:focus-visible { outline:3px solid var(--cyan); outline-offset:4px; }
.frz-premium .frz-header { flex-wrap:wrap; }
.frz-premium .frz-header > nav { min-width:0; flex-wrap:wrap; margin-inline:auto; }
.frz-premium .frz-header > nav a { display:inline-flex; align-items:center; justify-content:center; min-height:var(--frz-control-height,48px); margin:0; line-height:1.5; white-space:normal; overflow-wrap:anywhere; }
.frz-premium .frz-footer { display:block; font-size:.875rem; }
.frz-premium .frz-footer > .frz-footer-grid {
    display:grid; grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));
    width:100%; margin:0; gap:2.5rem; font-size:inherit;
}
.frz-footer-brand,.frz-footer-nav { min-width:0; overflow-wrap:anywhere; }
.frz-footer-brand p { margin-block:1rem; color:var(--muted); }
.frz-contact-details { margin-block:1.5rem; }
.frz-contact-details p { display:flex; flex-wrap:wrap; align-items:baseline; gap:0 1rem; margin:0; }
.frz-contact-details p > span:first-child { min-width:4.25rem; color:var(--muted); }
.frz-contact-details a {
    display:inline-flex; align-items:center; min-height:2.75rem; max-width:100%;
    color:inherit; line-height:1.5; white-space:normal; overflow-wrap:anywhere;
    text-decoration:underline; text-underline-offset:.2em;
}
.frz-premium .frz-footer-heading { margin:0 0 .75rem; font-size:1rem; line-height:1.5; letter-spacing:0; }
.frz-footer-nav ul { margin:0; padding:0; list-style:none; }
.frz-footer-nav a { display:inline-flex; align-items:center; min-height:2.75rem; padding-block:.25rem; line-height:1.5; }
.frz-premium .frz-footer > .frz-footer-meta {
    display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); width:100%;
    margin:2.75rem 0 0; padding-top:1.25rem; gap:.75rem 1.5rem; align-items:center;
    border-top:1px solid var(--line); font-size:.8125rem; color:var(--muted); overflow-wrap:anywhere;
}
/* Navigation stays quiet in every state; content links retain their own affordance. */
.frz-premium a:focus:not(:focus-visible) { outline:none; }
.frz-premium .frz-footer a,.frz-premium .frz-header > nav a { color:inherit; text-decoration:none; }
.frz-premium .frz-footer a:visited,.frz-premium .frz-header > nav a:visited { color:inherit; }
.frz-premium .frz-footer a:hover,.frz-premium .frz-header > nav a:hover,
.frz-premium .frz-footer a:active,.frz-premium .frz-header > nav a:active { color:var(--cyan); text-decoration:none; }
.frz-premium .frz-footer a:focus:not(:focus-visible),.frz-premium .frz-header > nav a:focus:not(:focus-visible) { outline:none; }
.frz-premium .frz-footer a:focus-visible,.frz-premium .frz-header > nav a:focus-visible { color:var(--ink); outline:3px solid #85e2b5; outline-offset:4px; }
.frz-premium .frz-footer-heading { border:0; padding:0; }
.frz-premium .frz-legal { width:100%; max-width:none; margin:0; padding:0; font-size:1rem; line-height:1.8; }
.frz .frz-legal h1 { font-size:2.75rem; line-height:1.15; }
.frz-premium .frz-legal h2 { margin:0 0 1rem; font-size:1.5rem; line-height:1.35; letter-spacing:-.02em; overflow-wrap:anywhere; }
.frz-legal-head { margin-bottom:2rem; }
.frz-legal-head .frz-kicker { margin:0 0 1rem !important; font-size:.75rem; }
.frz-legal-nav { margin-bottom:2.5rem; padding:1.25rem; border:1px solid var(--line); border-radius:1rem; }
.frz-legal-nav .frz-kicker { margin:0 0 .75rem !important; font-size:.75rem; }
.frz-legal-nav ul { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr)); gap:.25rem 1.5rem; list-style:none; padding:0; margin:0; }
.frz-legal-nav a { display:inline-flex; align-items:center; min-height:2.75rem; padding-block:.25rem; overflow-wrap:anywhere; }
.frz-legal-content { max-width:none; overflow-wrap:anywhere; hyphens:auto; }
.frz-legal-section { scroll-margin-top:2rem; }
.frz-legal-section + .frz-legal-section { margin-top:2.5rem; }
.frz-legal-section p { margin-bottom:1.25rem; }
.frz-premium .frz-woo { font-size:1rem; }
.frz-premium .frz-woo #customer_login { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; }
.frz-premium .frz-woo #customer_login::before,.frz-premium .frz-woo #customer_login::after { display:none; }
.frz-premium .frz-woo #customer_login > .col-1,.frz-premium .frz-woo #customer_login > .col-2 { float:none; width:auto; min-width:0; margin:0; }
.frz-premium .frz-woo #customer_login h2 { font-size:1.5rem; line-height:1.3; }
.frz-premium .frz-woo .form-row > label { display:block; font-size:1rem; line-height:1.6; margin-bottom:.5rem; }
.frz-premium .frz-woo label .required { display:inline; white-space:nowrap; }
.frz-premium .frz-woo label:has(> input[type=checkbox]),.frz-premium .frz-woo label.frz-qa-b2b {
    display:flex; flex-direction:row; align-items:flex-start; gap:.75rem;
    min-height:2.75rem; overflow-wrap:anywhere;
}
@media(max-width:760px) {
    .frz-premium .frz-footer > .frz-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
    .frz-footer-brand { grid-column:1/-1; }
    .frz .frz-legal h1 { font-size:2rem; }
    .frz-premium .frz-legal { padding:0; }
    .frz-premium .frz-woo #customer_login { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:380px) {
    .frz-premium .frz-footer > .frz-footer-grid { grid-template-columns:minmax(0,1fr); }
}

/* Keep the original quantity field in its grid slot with a valid explicit label. */
.frz .frz-quantity-field { display:flex; flex-direction:column; align-items:flex-start; gap:8px; min-width:0; max-width:100%; }
.frz .frz-quantity-field[hidden] { display:none; }
.frz.frz-premium .frz-quantity-field > label { width:auto; max-width:100%; flex:none; margin:0; }
.frz.frz-premium .frz-buy .frz-quantity-field { width:120px; flex:0 1 120px; }
.frz.frz-premium .frz-accessories > .frz-card { min-width:0; }
@media(prefers-reduced-motion:reduce) {
    .frz .frz-skip-link { transition:none; }
    .frz-legal-section { scroll-behavior:auto; }
}

/* Footer uses the shared site container without a separate contact band. */
.frz-footer-brand p { line-height:1.75; }
.frz-premium .frz-footer .frz-footer-brand p a,
.frz-premium .frz-footer .frz-footer-brand p a:visited { color:var(--mint,#85e2b5); text-decoration:underline; text-underline-offset:.2em; }
.frz-premium .frz-footer .frz-footer-brand p a:is(:hover,:active,:focus-visible) { color:var(--ink); text-decoration:underline; }
.frz-google-business { display:inline-flex; align-items:center; justify-content:center; width:2.75rem; height:2.75rem; border:1px solid var(--line); border-radius:.5rem; color:var(--ink); background:#18221c; }
.frz-footer-meta p { margin:0; }
.frz-footer-meta > p:last-child { justify-self:end; text-align:right; }
.frz-premium .frz-footer-heading { color:var(--ink); font-weight:650; font-size:1rem; }
.frz-ui-icon { flex:none; width:1.25rem; height:1.25rem; color:var(--cyan); }
.frz-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.frz-external-link { position:relative; display:inline-flex; flex-wrap:wrap; align-items:center; gap:.35em; max-width:100%; }
.frz-external-link > span:first-child { min-width:0; overflow-wrap:anywhere; }
.frz-external-link .frz-ui-icon { width:.95em; height:.95em; color:inherit; }

/* Legal pages share the full main container; the native contents control stays compact. */
.frz-legal-layout { display:grid; grid-template-columns:15rem minmax(0,1fr); gap:3.5rem; align-items:start; padding-block:3rem 4rem; }
.frz-legal-layout > * { min-width:0; }
.frz-legal-sidebar { position:sticky; top:1.5rem; margin:0; padding:0; border:0; border-radius:0; }
.frz-legal-toc > summary { min-height:2.75rem; padding-block:.5rem; font-weight:650; cursor:pointer; color:var(--ink); }
.frz-legal-toc ul { display:block; margin-top:.75rem; max-height:calc(100svh - 8rem); overflow:auto; padding:.25rem .5rem .5rem 0; }
.frz-legal-toc a { font-size:.875rem; line-height:1.5; text-decoration:none; border-inline-start:2px solid var(--line); padding:.5rem .75rem; width:100%; }
.frz-legal-toc a:hover { border-color:var(--cyan); text-decoration:underline; }
.frz-legal-toc a:focus-visible { outline-offset:0; }
.frz-legal-content p { line-height:1.8; }

/* Native login/register fields and validation remain owned by Woo. */
.frz-premium .frz-woo #customer_login { gap:3rem; align-items:start; }
.frz-premium .frz-woo #customer_login > .col-1,.frz-premium .frz-woo #customer_login > .col-2 { padding:1.75rem; border:1px solid var(--line); border-radius:1rem; background:#121714; }
.frz-premium .frz-woo #customer_login h2 { display:flex; align-items:center; gap:.65rem; margin-bottom:1.5rem; }
.frz-field-icon { display:inline-flex; width:1.25rem; height:1.25rem; margin-inline-end:.5rem; vertical-align:-.2em; color:var(--cyan); flex:none; }
.frz-field-icon svg { width:100%; height:100%; }
.frz-premium .frz-woo #customer_login h2 .frz-field-icon { margin:0; width:1.5rem; height:1.5rem; }
.frz-premium .frz-woo .frz-password-hint { position:relative; margin:0 0 1.25rem; padding:.875rem 1rem .875rem 2.75rem; border-inline-start:2px solid var(--cyan); border-radius:.25rem .5rem .5rem .25rem; background:#1c3024; color:#d3e3d9; font-size:.875rem; line-height:1.6; }
.frz-password-hint > .frz-field-icon { position:absolute; top:.95rem; left:.875rem; margin:0; }
.frz-premium .frz-woo #customer_login .form-row { margin-bottom:1.25rem; }

/* FRZ-053: allow demonstrated home text to reflow without smaller fonts or clipping. */
.frz-premium .frz-hero { grid-template-columns:minmax(0,1fr) minmax(0,1.02fr); }
.frz-premium .frz-hero-copy,.frz-premium-titleblock,.frz-premium-commerce,.frz-premium .frz-hero-actions,.frz-premium .frz-buy { min-width:0; max-width:100%; }
.frz-premium .frz-hero h1,.frz-premium-headline,.frz-premium .frz-hero .frz-intro { overflow-wrap:anywhere; }
.frz-premium .frz-section-title > div { min-width:0; }
.frz-premium .frz-section-title h2 { overflow-wrap:anywhere; }
.frz-premium .frz-price,.frz-premium-caption { flex-wrap:wrap; }
.frz-premium .frz-hero-actions .frz-buy { flex:0 1 auto; }
.frz-premium .frz-hero-actions .frz-buy .frz-button { flex:0 1 auto; min-width:0; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.frz-premium .frz-button-secondary { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
@media(max-width:1000px) {
    .frz-premium .frz-footer > .frz-footer-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
    .frz-footer-brand { grid-column:1/-1; }
    .frz-footer-brand p { max-width:54ch; }
    .frz-premium .frz-footer > .frz-footer-meta { grid-template-columns:minmax(0,1fr); justify-items:center; text-align:center; }
    .frz-footer-meta > p:last-child { justify-self:center; text-align:center; }
    .frz-legal-layout { grid-template-columns:minmax(0,1fr); gap:1.5rem; padding-block:2rem 3rem; }
    .frz-legal-sidebar { position:static; padding:.75rem 1rem; border-block:1px solid var(--line); }
    .frz-legal-toc ul { max-height:14rem; }
}
@media(max-width:760px) {
    .frz-premium .frz-footer > .frz-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.75rem 1.5rem; }
    .frz-premium .frz-woo #customer_login { gap:1.5rem; }
    .frz-premium .frz-woo #customer_login > .col-1,.frz-premium .frz-woo #customer_login > .col-2 { padding:1.25rem; }
    .frz-premium .frz-hero { grid-template-columns:minmax(0,1fr); }
    .frz-premium-mobile-offer { flex-wrap:wrap; }
    .frz-premium-mobile-offer > div { flex:1 1 auto; min-width:0; }
    .frz-premium-mobile-offer .frz-button { flex:1 1 auto; min-width:0; max-width:100%; white-space:normal; overflow-wrap:anywhere; }
}
@media(max-width:380px) { .frz-premium .frz-footer > .frz-footer-grid { grid-template-columns:minmax(0,1fr); } }

/* Native handlers/storage stay unchanged; launchers belong to the footer bottom line. */
.frz .frz-footer-utilities { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:.5rem; min-width:0; max-width:100%; margin:0; padding:0; }
.frz-cookie-open .frz-ui-icon { color:inherit; width:20px; height:20px; }
.frz-document-list { list-style:none; padding:0; margin:1rem 0 0; }
.frz-document-list li { min-width:0; margin:0; padding:0; }
.frz-document-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.25rem 1.5rem; }
.frz .frz-document-link { display:inline-flex; align-items:center; gap:.5rem; min-width:0; max-width:100%; min-height:44px; padding:.25rem 0; border:0; background:transparent; box-shadow:none; color:var(--cyan,#85e2b5); text-decoration:underline; text-underline-offset:.2em; white-space:normal; overflow-wrap:anywhere; }
.frz .frz-document-link:hover { color:var(--ink,#f4f6f4); }
.frz .frz-document-link .frz-ui-icon { flex:none; width:20px; height:20px; color:inherit; }
.frz-document-download { margin-block:.75rem; }

.frz-legal-head .frz-legal-lead { max-width:65ch; margin:1.25rem 0 1rem; color:var(--muted); font-size:1.125rem; line-height:1.7; }
.frz-legal-head .frz-legal-updated { font-size:.875rem; color:var(--muted); }
.frz-legal-content :is(p,ul),.frz-legal-head .frz-legal-lead { max-width:none; }
.frz-legal-list { margin:1rem 0; padding-inline-start:1.25rem; line-height:1.8; }
.frz-legal-list li + li { margin-top:.5rem; }
.frz .frz-cookie-settings { margin-top:.5rem; }
.frz-legal-content .frz-contact-details { margin-block:1rem; }
.frz-legal-content .frz-contact-details p { display:grid; grid-template-columns:4.25rem minmax(0,1fr); align-items:center; gap:0 .75rem; margin:0; min-height:2.75rem; line-height:1.5; }
.frz-legal-content .frz-contact-details a { justify-self:start; }
#cmplz-cookiebanner-container .cmplz-cookiebanner { min-width:0; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:none; grid-auto-rows:max-content; align-content:start; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header { grid-template-columns:minmax(0,1fr) 2.75rem; gap:.75rem; padding:0; border-bottom:0; margin:0 0 .625rem; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header .cmplz-logo { display:none; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header .cmplz-title { display:block; grid-column:1; justify-self:start; text-align:left; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header .cmplz-close { display:flex; grid-column:2; }
#cmplz-cookiebanner-container .cmplz-cookiebanner :is(.cmplz-body,.cmplz-buttons,.cmplz-message,.cmplz-categories) { min-width:0; width:100%; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { margin:0 0 1rem; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message p { margin:0; font-size:inherit; line-height:inherit; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message p + p { margin-top:.75rem; color:#c3cbc7; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { display:flex; flex-direction:row; flex-wrap:wrap; gap:.625rem; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn { flex:1 1 calc(50% - .625rem); width:auto; margin:0; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-always-active { color:#85e2b5; font-size:.75rem; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category { background:#18221c; color:#edf3ee; border:1px solid #46534b; border-radius:.5rem; margin-bottom:.75rem; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-header { color:#edf3ee; grid-template-columns:minmax(0,1fr) auto 2.75rem; gap:.5rem; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-title { font-size:.875rem; line-height:1.5; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-description { font-size:.875rem; line-height:1.65; color:#c3cbc7; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-description-functional { display:block; min-width:0; }
/* Complianz 7.5.6 hides the whole statistics description when its unused
   anonymous-text option is off. Preserve the native toggle's hidden state,
   while exposing the active GA4 explanation and its disclosure icon. */
.frz-consent-optional #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-statistics .cmplz-description:not([hidden]) { display:block; }
.frz-consent-optional #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-statistics .cmplz-icon { display:inline-flex; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-description-functional p { margin:.5rem 0; font:inherit; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .frz-consent-inventory { width:100%; margin:.75rem 0; border-collapse:collapse; table-layout:fixed; font:inherit; color:inherit; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .frz-consent-inventory caption { padding:0 0 .5rem; text-align:left; font-weight:600; color:#edf3ee; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .frz-consent-inventory :is(th,td) { padding:.5rem .625rem; border:0; border-bottom:1px solid #46534b; background:transparent; color:inherit; font:inherit; text-align:left; vertical-align:top; overflow-wrap:anywhere; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .frz-consent-inventory thead th { color:#edf3ee; font-weight:600; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .frz-consent-inventory :is(th,td):first-child { width:45%; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-toggle { color:#edf3ee; width:2.75rem; min-height:2.75rem; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-toggle svg { fill:currentColor; }
/* Desktop actions keep readable labels; native display rules still own visibility. */
@media(min-width:481px) {
    body.frz-consent-necessary #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; }
    body.frz-consent-necessary #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn { width:100%; min-height:48px; padding:.625rem .75rem; font-size:.875rem; line-height:1.5; white-space:normal; }
    body.frz-consent-necessary #cmplz-cookiebanner-container .cmplz-cookiebanner:not(.cmplz-categories-visible) .cmplz-view-preferences { grid-column:1 / -1; }
    body.frz-consent-necessary #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { margin-bottom:.75rem; font-size:.875rem; line-height:1.55; }
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .frz-consent-unavailable { padding:var(--frz-cell-block) var(--frz-cell-inline); margin-bottom:.75rem; border:1px solid #46534b; border-radius:var(--frz-control-radius); background:#18221c; color:#c3cbc7; font-size:.875rem; line-height:1.65; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .frz-consent-unavailable p { margin:0; font:inherit; }
#cmplz-cookiebanner-container .cmplz-cookiebanner .frz-consent-unavailable .frz-consent-unavailable-title { margin:0 0 .375rem; color:#edf3ee; font-weight:600; }
@media(max-width:480px) {
    body.frz-consent-necessary #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn { flex-basis:100%; }
}
@media(max-width:760px) {
    #cmplz-cookiebanner-container .cmplz-cookiebanner { left:1rem !important; right:1rem !important; bottom:1rem !important; margin-inline:auto; }
    #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn { flex-basis:calc(50% - .625rem); }
    #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-header { grid-template-columns:minmax(0,1fr) 2.75rem; }
    #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-always-active { grid-column:1; }
    #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-category-toggle { grid-column:2; grid-row:1/3; }
}
@media(prefers-reduced-motion:reduce) {
    #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories.cmplz-fade-in { animation:none; opacity:1; }
}
.frz-cookie-document #cmplz-document { max-width:none; color:inherit; font-size:inherit; }
.frz-cookie-document #cmplz-document :is(h2,h3,h4,h5,p,li) { color:inherit; }
.frz-cookie-document #cmplz-document a { color:#85e2b5; }
.frz-cookie-document #cmplz-document .cmplz-dropdown { margin:1rem 0; }
.frz-cookie-document #cmplz-document :is(.cookies-per-purpose,.cmplz-cookies) { overflow-wrap:anywhere; }
/* Retain the native inventory while hiding only its unavailable per-service control. */
.frz-cookie-document #cmplz-document input.cmplz-accept-service.cmplz-hidden,
.frz-cookie-document #cmplz-document .cmplz_consent_per_service_label:has(+ input.cmplz-accept-service.cmplz-hidden) { display:none; }

/* Local reading preferences complement the page's native accessibility. */
html[data-frz-reading-size="125"] { font-size:125%; }
html[data-frz-reading-size="150"] { font-size:150%; }
html[data-frz-reading-size="200"] { font-size:200%; }
html[data-frz-reading-size] .frz-header,html[data-frz-reading-size] .frz-header > nav { flex-wrap:wrap; }
html[data-frz-reading-size] .frz-header > nav { min-width:0; }
html[data-frz-reading-contrast="true"] .frz { --paper:#000; --ink:#fff; --muted:#fff; --line:#fff; --cyan:#a7ffcd; }
html[data-frz-reading-contrast="true"] .frz :is(.frz-header,.frz-footer,.frz-article,.frz-panel,.frz-reading-panel) { background:#000; }
html[data-frz-reading-contrast="true"] .frz :is(.frz-muted,.frz-legal-lead,.frz-legal-updated,.frz-footer-brand p) { color:#fff !important; }
html[data-frz-reading-links="true"] .frz a { text-decoration:underline !important; text-underline-offset:.2em; }
html[data-frz-reading-motion="true"] { scroll-behavior:auto !important; }
html[data-frz-reading-motion="true"] *,html[data-frz-reading-motion="true"] *::before,html[data-frz-reading-motion="true"] *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
.frz-reading-open svg { width:20px; height:20px; flex:none; }
.frz .frz-reading-panel {
    inset:0; margin:auto;
}
.frz-reading-panel::backdrop { background:#0009; }
.frz .frz-reading-header { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:.75rem; margin-bottom:.5rem; }
.frz .frz-reading-header h2 { margin:0; letter-spacing:0; }
.frz-reading-panel p { margin:0 0 1rem; color:#c3cbc7; }
.frz-reading-panel :is(button,select) { max-width:100%; white-space:normal; overflow-wrap:anywhere; font:inherit; cursor:pointer; }
.frz .frz-reading-header button { display:inline-flex; align-items:center; justify-content:center; width:44px; min-height:44px; padding:.375rem; border:1px solid #82988b; border-radius:var(--frz-control-radius,8px); background:#18221c; color:#edf3ee; }
.frz-reading-header button svg { width:20px; height:20px; }
.frz .frz-reading-panel fieldset { min-width:0; min-inline-size:0; margin:1rem 0; padding:0; border:0; background:transparent; }
.frz .frz-reading-panel legend { display:block; box-sizing:border-box; width:100%; margin:0 0 .5rem; padding:0; border:0; background:transparent; color:#edf3ee; font-weight:600; }
.frz-reading-sizes { display:flex; flex-wrap:wrap; gap:.5rem; }
.frz .frz-reading-option { display:flex; flex-direction:row; align-items:center; gap:.625rem; min-width:0; min-inline-size:0; min-height:44px; padding:.5rem .75rem; border:1px solid #46534b; border-radius:.5rem; font-size:1rem; font-weight:400; line-height:1.5; cursor:pointer; }
.frz-reading-option > span { min-width:0; overflow-wrap:anywhere; }
.frz-reading-sizes .frz-reading-option { flex:1 1 calc(50% - .5rem); }
.frz .frz-reading-option:has(input:checked) { border-color:#85e2b5; background:#1c3024; }
.frz .frz-reading-option :is(input[type="radio"],input[type="checkbox"]) { width:20px; height:20px; min-width:20px; margin:0; padding:0; accent-color:#85e2b5; flex:none; }
.frz-reading-options { display:grid; gap:.5rem; }
.frz .frz-reading-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-block:1rem 0; }
.frz .frz-reading-panel :is(.frz-reading-storage,.frz-reading-status) { font-size:.875rem; line-height:1.6; }
.frz-reading-status:empty { display:none; }
.frz.frz-premium .frz-reading-panel :is(button,a,input):focus { outline-color:#85e2b5; box-shadow:none; }
.frz.frz-premium .frz-reading-panel :is(button,a,input):focus:not(:focus-visible) { outline:none; }
.frz.frz-premium .frz-reading-panel :is(button,a,input):focus-visible { outline:3px solid #85e2b5; outline-offset:3px; }
@media(max-width:760px) { .frz-premium .frz-header > nav { margin-inline:0; } }
@media(max-width:480px) { .frz-reading-sizes .frz-reading-option { flex-basis:100%; } }
@media(max-width:380px) {
    .frz-legal-content .frz-contact-details p { grid-template-columns:minmax(0,1fr); gap:0; padding-bottom:.375rem; }
    .frz-legal-content .frz-contact-details p > span:first-child { font-size:.875rem; }
}

/* Native language chooser beside the shared cart. Flags decorate full autonyms. */
.frz-premium .frz-header-actions { display:flex; align-items:center; gap:12px; margin-inline-start:auto; }
.frz-premium .frz-cart-link > .frz-cart-icon { display:none; }
.frz-premium .frz-language-switcher { position:relative; flex:none; font-size:.8125rem; }
.frz-premium .frz-language-switcher > summary { display:flex; align-items:center; justify-content:center; gap:8px; min-width:48px; min-height:48px; padding:8px; cursor:pointer; list-style:none; }
.frz-premium .frz-language-switcher > summary::-webkit-details-marker { display:none; }
.frz-premium .frz-language-switcher > summary::after { content:""; flex:none; width:.4rem; height:.4rem; border-inline-end:1.5px solid currentColor; border-block-end:1.5px solid currentColor; transform:rotate(45deg); }
.frz-premium .frz-language-switcher[open] > summary::after { transform:rotate(225deg); }
.frz-premium .frz-language-flag { flex:none; width:20px; height:14px; object-fit:contain; border-radius:0; }
.frz-premium .frz-language-switcher > nav { position:absolute; z-index:30; inset-inline-end:0; display:grid; gap:2px; width:18rem; max-width:calc(100vw - 36px); margin:4px 0 0; padding:8px; border:1px solid var(--line); border-radius:var(--frz-control-radius,8px); color:var(--ink); background:var(--paper); box-shadow:0 10px 30px #0003; }
.frz-premium .frz-language-switcher > nav a { display:flex; align-items:center; gap:12px; min-height:48px; padding:8px 12px; color:inherit; text-decoration:none; overflow-wrap:anywhere; }
.frz-premium .frz-language-switcher > nav a[aria-current="page"] { color:var(--cyan); font-weight:650; }
.frz-premium .frz-language-switcher :is(summary,a):hover { color:var(--cyan); }
.frz-premium .frz-language-switcher :is(summary,a):focus-visible { outline:var(--frz-control-focus,3px solid #85e2b5); outline-offset:3px; }
@media(max-width:760px) {
    .frz-premium .frz-header-actions { position:relative; gap:6px; }
    .frz-premium .frz-header { column-gap:8px; }
    .frz-premium .frz-language-switcher { position:static; }
    .frz-premium .frz-language-switcher > summary { gap:4px; padding-inline:6px; }
    .frz-premium .frz-language-switcher > nav { inset-block-start:100%; }
    .frz.frz-premium .frz-header-actions .frz-cart-link { flex:none; gap:4px; width:auto; min-width:var(--frz-control-height,48px); padding-inline:8px; }
    .frz-premium .frz-cart-link > .frz-cart-icon { display:block; width:22px; height:22px; }
    .frz-premium .frz-cart-label { display:none; }
}
@media(max-width:380px) { .frz-premium .frz-header .frz-brand-logo { width:118px; } .frz-premium .frz-header-actions { gap:2px; } }
.frz-target-label { color:inherit; font:inherit; }
.frz .frz-target-language { margin-inline-start:.2em; color:inherit; font-size:.65em; font-weight:600; line-height:1; white-space:nowrap; }
.frz .frz-cart-link .frz-target-label { display:inline; min-width:0; height:auto; border-radius:0; background:transparent; color:inherit; font:inherit; }
.frz .frz-target-label > .frz-sr-only { min-width:1px; width:1px; height:1px; background:transparent; }
@media(max-width:380px) { .frz-premium-mobile-offer .frz-button:has(.frz-target-language) { gap:.375rem; padding-inline:.75rem; } }
