form label{display:block;margin:1rem 0}form input:not([type=checkbox]):not([type=hidden]),form textarea{display:block;width:100%;max-width:42.5rem;padding:0.75rem;border:0.0625rem solid #aac0cc;border-radius:0.375rem;font:inherit;background:#fff;color:#102d3d}form textarea{min-height:11.25rem}.form-errors,[role=alert]{color:#a22222}.honeypot{position:absolute;left:-625rem}.bodycopy img{max-width:100%;height:auto}.bodycopy figure{margin:1.5rem 0}.bodycopy figcaption{font-size:.9rem}.pagination{display:flex;gap:1.5rem;margin-top:1.5rem}

.article-author{display:inline-flex;align-items:center;gap:0.625rem;vertical-align:middle}.author-avatar{width:2.5rem;height:2.5rem;object-fit:cover;border-radius:50%;flex-shrink:0}.contact-map{height:28.125rem}

/* Keep filled blue buttons readable inside cards and rich text. */
a.button:not(.alt):not(.soft){color:#fff}.hero-action a.button:not(.alt){color:#182735}.kickerband a.button:not(.alt):not(.soft){color:var(--brand)}
.product-gallery{display:grid;gap:1.25rem}.product-gallery .prod-white{min-height:17.5rem}
.language-links{display:flex;gap:0.625rem;font-size:0.75rem;white-space:nowrap}.language-links [aria-current]{font-weight:900;text-decoration:underline}
@media(max-width:55rem){.editorial-columns{grid-template-columns:minmax(0,1fr)}}

/* Compact navigation follows the existing CTA sizing. */
.site-header .menu-toggle{color:var(--ink)}
.site-header .header-inner{align-items:center;gap:1.125rem}
.site-header .nav{align-items:center;gap:0.25rem}
.site-header .nav>a{display:inline-flex;align-items:center;justify-content:center;padding:0.6875rem 0.625rem;border:0.0625rem solid transparent;transition:background-color .15s,color .15s}
.site-header .nav>a:hover{background:#e5edf2;opacity:1}
.site-header .nav>a.active{background:var(--brand);border-color:var(--brand);color:var(--paper)}
.site-header .nav>a.header-cta{padding:0.6875rem 1rem;border-color:var(--ink)}
@media(max-width:78rem){
.site-header .header-inner{min-height:4.625rem;flex-wrap:wrap;padding-top:0.625rem;padding-bottom:0.625rem}
.site-header .menu-toggle{display:block;margin-left:auto;align-self:center}
.site-header .nav{display:none;order:3;flex-basis:100%;flex-direction:column;align-items:stretch;white-space:normal}
.site-header .nav.is-open{display:flex}
.site-header .nav>a{justify-content:flex-start;padding:0.6875rem 1rem}
.site-header .nav>a.header-cta{margin:0;text-align:left}
}

@font-face{font-family:"Dipetane Social";src:url("/assets/fonts/fa-brands-400.woff2") format("woff2");font-display:block}.social-icon{font-family:"Dipetane Social";font-weight:400;font-style:normal;font-size:1.5rem;line-height:1}
.social-icon--facebook::before{content:"\f09a"}.social-icon--tiktok::before{content:"\e07b"}.social-icon--instagram::before{content:"\f16d"}.social-icon--youtube::before{content:"\f167"}.social-icon--linkedin::before{content:"\f08c"}.social-icon--x-twitter::before{content:"\e61f"}
.footer-social{display:flex;gap:0.75rem;margin-bottom:1.25rem}.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border:0.0625rem solid currentColor}.footer-social a:hover{color:var(--brand);background:#fff}.distributor-benefit{margin-top:1.5rem;border-top:0.0625rem solid var(--line);padding-top:1.25rem}.distributor-benefit .num{color:var(--brand);font-weight:800}.distributor-info h2{font-size:2rem}.product-tabs{margin-top:2.25rem}.product-tabs summary{padding:1.125rem 0;font-weight:800;cursor:pointer;border-bottom:0.0625rem solid var(--line)}.product-tabs .tab-content{padding:1.125rem 0}.product-tabs table{width:100%;border-collapse:collapse}.product-tabs th,.product-tabs td{padding:0.75rem;text-align:left;border-bottom:0.0625rem solid var(--line);vertical-align:top}.product-tabs th{width:30%}.review{padding:1rem 0;border-bottom:0.0625rem solid var(--line)}
.distributor-contact .distributor-info{max-width:68.75rem}.distributor-contact .distributor-benefit{break-inside:avoid}.distributor-contact .distributor-info>h2{font-size:clamp(1.875rem,4vw,3.25rem)}
.product-tabs [role=tablist]{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:1.25rem}.product-tabs [role=tab][aria-selected=true]{background:var(--brand);border-color:var(--brand);color:#fff}.product-tabs [role=tabpanel][hidden]{display:none}

.legal-page{padding-top:3rem;padding-bottom:4rem}.legal-page .body-copy h2{margin-top:2em}.withdrawal-page{max-width:60rem}.withdrawal-steps{display:flex;gap:2rem;flex-wrap:wrap;list-style:none;padding:0;margin:2rem 0}.withdrawal-steps [aria-current]{color:var(--blue,#006fae);font-weight:700}.withdrawal-form>div>div{margin-bottom:1rem}.withdrawal-form label{display:block;margin-bottom:.4rem}.withdrawal-form input:not([type=radio]):not([type=checkbox]):not([type=hidden]),.withdrawal-form textarea{width:100%;padding:.8rem;border:0.0625rem solid #879aa3;border-radius:0.25rem;font:inherit}.withdrawal-form textarea{min-height:7.5rem}.withdrawal-form input[type=radio],.withdrawal-form input[type=checkbox]{margin-right:.5rem}.withdrawal-form li{color:#ae152b}.withdrawal-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}.withdrawal-form canvas,.signature-preview{display:block;width:100%;max-width:42.5rem;aspect-ratio:3.4;background:#fff;border:0.0625rem solid #879aa3;border-radius:0.25rem}.withdrawal-form canvas{touch-action:none;margin:1rem 0}.withdrawal-summary{display:grid;grid-template-columns:minmax(7.5rem,1fr) 2fr;gap:.7rem 1rem}.withdrawal-summary dt{font-weight:700}.withdrawal-summary dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.typed-signature{font-family:Georgia,serif;font-size:1.6rem;font-style:italic}@media(max-width:37.5rem){.withdrawal-summary{grid-template-columns:1fr}.withdrawal-summary dd{margin-bottom:.6rem}.withdrawal-steps{gap:1rem}}

/* Native checkboxes stay clear on the light form surface in either browser theme. */
form input[type=checkbox]{appearance:auto;color-scheme:light;accent-color:var(--brand);width:1.5rem;height:1.5rem;min-width:1.5rem;min-height:1.5rem;flex-shrink:0;padding:0;vertical-align:middle;cursor:pointer}
form input[type=checkbox]:disabled{cursor:not-allowed}

.bodycopy table,.body-copy table{width:100%;max-width:100%;table-layout:fixed;border-collapse:collapse}.bodycopy th,.bodycopy td,.body-copy th,.body-copy td{padding:0.75rem;border:0.0625rem solid var(--line);overflow-wrap:anywhere;vertical-align:top}.bodycopy caption,.body-copy caption{font-weight:700;text-align:left;margin-bottom:.5rem}

/* Article cover: preserve desktop framing; mobile follows the actual image ratio. */
.article-cover{height:21.875rem;margin-bottom:1.5625rem}
@media(max-width:43.75rem){.article-cover{height:auto;min-height:0;aspect-ratio:auto}.article-cover .image-cover{display:block;width:100%;height:auto;min-height:0;aspect-ratio:auto;object-fit:contain}}

/* Shared frontend form feedback, independent of the form's scroll position. */
.site-feedback[hidden]{display:none}.site-feedback{position:sticky;top:0.5rem;z-index:30;max-width:47.5rem;margin:0.75rem auto;padding:1.125rem 3.75rem 1.125rem 1.25rem;background:var(--surface,#fff);color:var(--ink,#183026);border:0.125rem solid var(--accent,#16744b);border-radius:0.5rem;box-shadow:0 0.5rem 1.75rem #0003;max-height:calc(100dvh - var(--feedback-top,8.75rem) - 1rem);overflow:auto;overflow-wrap:anywhere}.site-feedback.is-positioned{position:fixed;top:var(--feedback-top);left:50%;transform:translateX(-50%);width:calc(100% - 1.5rem);margin:0}.site-feedback-close{position:absolute;right:0.375rem;top:0.375rem;min-width:2.75rem;min-height:2.75rem;border:0;background:transparent;color:var(--ink,#183026);font-size:1.75rem;line-height:1}.site-feedback-message+.site-feedback-message{margin-top:0.75rem}.site-feedback-message--error,.site-feedback-message--warning{border-left:0.25rem solid #a92d21;padding-left:0.75rem}.site-feedback-message--success{border-left:0.25rem solid #16744b;padding-left:0.75rem}.site-feedback ul{padding-left:1.25rem;margin:0.5rem 0 0}.site-feedback [tabindex]:focus{outline:0}

form [aria-invalid="true"]{border-color:#a92d21}

/* Persistent header actions stay outside the collapsible primary menu. */
.site-header .header-actions{display:flex;align-items:center;gap:1.125rem;flex-shrink:0}.site-header .header-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;padding:0.5rem;color:var(--ink);border:0.0625rem solid transparent;border-radius:0.25rem}.site-header .header-cart:hover{background:#e5edf2}.site-header .header-cart.active{color:var(--brand);border-color:var(--brand)}.header-cart-count{position:absolute;right:-0.125rem;top:-0.0625rem;min-width:1.125rem;padding:0 0.25rem;border-radius:0.75rem;background:var(--brand);color:white;text-align:center;font-size:0.625rem;font-weight:800;line-height:1.125rem}.site-header .language-links{align-items:center}.site-header .language-links a{padding:0.5rem 0}
@media(max-width:37.5rem){.site-header .header-inner{gap:0.5rem}.site-header .header-actions{gap:0.625rem}.site-header .language-links{gap:0.375rem}.site-header .logo img{width:clamp(6.25rem,30vw,9.375rem)}.site-header .menu-toggle{padding:0.4375rem 0.5625rem;font-size:0.75rem}.site-header .header-cart{min-width:2.5rem;min-height:2.75rem}}

/* Catalogue purchase controls remain distinct from editorial copy. */
.catalogue-product{display:flex;flex-direction:column;min-width:0}.catalogue-product .catalogue-description{margin-bottom:1.5rem}.catalogue-purchase{margin-top:auto;padding-top:0.75rem}.catalogue-product .catalogue-price{font-size:1.7rem;font-weight:800;line-height:1.3;margin:0 0 1.25rem;color:var(--ink,#12324d)}.catalogue-actions{display:flex;flex-wrap:wrap;gap:0.75rem;align-items:center}.catalogue-actions .catalogue-details{background:transparent;color:var(--ink,#12324d);border:0.0625rem solid currentColor;box-shadow:none}.catalogue-actions .catalogue-details:hover{background:rgba(30,100,170,.08)}

.catalogue-product .catalogue-actions .button{margin-top:0;padding:0.875rem 1.4375rem;color:#fff;background:var(--brand)}.catalogue-product .catalogue-actions .catalogue-details{background:transparent;color:var(--ink);border-color:currentColor}

.site-header .header-account{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2.75rem;color:var(--ink)}

.header-account-menu{position:relative}
.site-header button.header-account{padding:0;background:transparent;border:0;border-radius:0;color:inherit;cursor:pointer}
.account-submenu{position:absolute;right:0;top:calc(100% + 0.5rem);z-index:1100;width:15rem;max-width:calc(100vw - 1.5rem);padding:0.5rem;background:var(--surface);border:0.0625rem solid var(--line);box-shadow:0 0.5rem 1.5rem #0002;border-radius:0.25rem}
.account-submenu[hidden]{display:none}
.site-header .account-submenu a,.site-header .account-submenu button{display:block;width:100%;padding:0.75rem;text-align:left;white-space:normal;background:transparent;border:0;color:var(--ink);font:inherit;text-decoration:none;cursor:pointer}
.site-header .account-submenu a:hover,.site-header .account-submenu button:hover,.site-header .account-submenu a:focus-visible,.site-header .account-submenu button:focus-visible{background:var(--line)}
.account-submenu form{margin:0;border-top:0.0625rem solid var(--line)}
@media(max-width:55rem){.header-account-menu{position:static}.account-submenu{right:0.75rem;top:calc(100% + 0.5rem)}}

/* Persistent navigation: 0.875rem at the browser's default 1rem root size. */
.site-header{position:sticky;inset-block-start:0;z-index:200}
.site-header .nav,.site-header .menu-toggle,.site-header .language-links{font-size:.875rem}
.site-header .nav>a{padding:.6875rem .625rem}
.site-header .nav>a.header-cta{padding:.6875rem 1rem}
.site-header .header-inner{min-width:0}
.site-header .nav.is-open{max-height:calc(100dvh - 6rem);overflow-y:auto;overscroll-behavior:contain}
html{scroll-padding-top:7rem}
[data-cart-add-link][aria-disabled="true"]{cursor:progress;opacity:.65}
.site-feedback-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}
@media(max-width:37.5rem){.site-header .header-inner{gap:.5rem}.site-header .menu-toggle{font-size:.875rem}.site-header .header-actions{gap:.5rem}.site-header .header-cart{padding:.375rem;min-width:2.25rem}.site-header .logo>img.official-dipetane-logo{width:clamp(5rem,25vw,9.375rem);max-width:100%}}

/* Shared, accessible blocking state for explicit backend operations. */
.request-overlay{position:fixed;inset:0;margin:auto;border:0;padding:0;width:min(32rem,calc(100% - 2rem));max-height:calc(100dvh - 2rem);border-radius:1rem;background:var(--surface);color:var(--ink);box-shadow:0 1rem 4rem #0003;overscroll-behavior:contain}.request-overlay::backdrop{background:#102d3db3}.request-overlay-panel{padding:2rem;text-align:center}.request-overlay h2{font-size:1.5rem;margin:1rem 0}.request-overlay p{margin:1rem 0;overflow-wrap:anywhere}.request-overlay-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}.request-overlay [hidden]{display:none!important}.request-overlay .button{min-height:2.75rem}.request-overlay .button.alt{background:transparent;border:0.0625rem solid var(--brand);color:var(--brand)}.request-spinner{display:inline-block;width:2.5rem;height:2.5rem;border:.25rem solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:request-spin .8s linear infinite}@keyframes request-spin{to{transform:rotate(1turn)}}@media(prefers-reduced-motion:reduce){.request-spinner{animation:none;border-style:dotted}}
.site-header .header-cart-count{right:0;top:0;transform:translate(50%,-50%);font-size:.625rem;line-height:1.125rem;min-width:1.125rem;padding:0 .25rem}

/* Full-width legal and developer credit below the existing footer content. */
.foot .foot-inner {
    display: block;
}

.footer-main {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5625rem;
}

.footer-bottom {
    min-width: 0;
    margin-top: 1.5625rem;
    text-align: center;
}

.foot .footer-copyright {
    max-width: none;
    margin: 0;
}

.foot .footer-credit {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    max-width: none;
    margin: 1rem 0 0;
    opacity: 1;
}

.footer-credit a {
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
}

.foot .footer-developer-logo {
    display: block;
    width: 8.75rem;
    max-width: 100%;
    height: auto;
    background: transparent;
}

@media (max-width: 55rem) {
    .footer-main {
        display: block;
    }

    .footer-bottom {
        margin-top: 2rem;
    }
}
