/* MAD on the website (6 Website). Uses the look from 2.5 (--gp-*). Kept small; nothing loads on pages that don't need it. */
.mad-ico{width:22px;height:22px;flex:none;vertical-align:middle}

/* 6.1 Notice bar */
.mad-nb{display:flex;align-items:center;gap:8px;padding:8px 16px;font-weight:600;font-size:15px;line-height:1.35;font-family:var(--gp-font);background:var(--gp-accent);color:var(--gp-on-accent);position:relative;z-index:60}
.mad-nb p{margin:0 auto;text-align:center;flex:1}
.mad-nb a{color:inherit;text-decoration:underline;margin-left:6px}
.mad-nb-dark{background:#1d2430;color:#fff}
.mad-nb-warn{background:#fff3cd;color:#5c3d00}
.mad-nb-x{background:none;border:0;color:inherit;font-size:18px;line-height:1;cursor:pointer;min-width:36px;min-height:36px;border-radius:50%}
.mad-nb-x:focus-visible{outline:2px solid currentColor}
.mad-nb-late{display:none}

/* 6.3 Page not found */
.mad-nf-main{padding:clamp(32px,8vw,80px) 16px}
.mad-nf{max-width:640px;margin:0 auto;text-align:center}
.mad-nf-logo{max-width:100%;height:auto;margin:0 auto 20px;display:block}
.mad-nf-code{font-size:clamp(64px,14vw,120px);font-weight:800;line-height:1;margin:0;color:var(--gp-accent);opacity:.9}
.mad-nf h1{margin:8px 0 12px}
.mad-nf-search{display:flex;gap:8px;max-width:420px;margin:20px auto}
.mad-nf-search input{flex:1;min-height:44px;padding:0 12px}
.mad-nf-search button,.mad-btn-site{font:inherit;font-weight:700;font-size:16px;min-height:44px;padding:0 18px;border:0;border-radius:var(--gp-r);background:var(--gp-accent);color:var(--gp-on-accent);font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}
.mad-nf-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:20px}
.mad-btn-site-2{background:transparent;color:inherit;border:1px solid currentColor}

/* 6.5 Cookies */
.mad-ck{position:fixed;z-index:9998;background:#fff;color:#1d2430;box-shadow:0 -6px 30px rgba(0,0,0,.18);padding:16px;font-size:15px;line-height:1.45;font-family:var(--gp-font);bottom:var(--mad-qb-h,0px)}
.mad-ck[hidden]{display:none}
.mad-ck-bar{left:0;right:0}
.mad-ck-box{right:16px;bottom:calc(16px + var(--mad-qb-h,0px));max-width:380px;border-radius:calc(var(--gp-r) + 4px)}
.mad-ck-h{font-weight:800;margin:0 0 4px;font-size:16px}
.mad-ck-t{margin:0 0 12px}
.mad-ck-t a{color:inherit}
.mad-ck-btns{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.mad-ck-bar .mad-ck-btns,.mad-ck-bar .mad-ck-h,.mad-ck-bar .mad-ck-t,.mad-ck-bar .mad-ck-choose{max-width:1100px;margin-left:auto;margin-right:auto}
.mad-ck-btn{flex:1 1 140px;min-height:44px;border-radius:var(--gp-r);border:0;background:var(--gp-accent);color:var(--gp-on-accent);font-weight:700;cursor:pointer;font-size:15px}
.mad-ck-link,.mad-ck-again{background:none;border:0;color:inherit;text-decoration:underline;cursor:pointer;min-height:44px;padding:0 8px;font:inherit}
.mad-ck-choose{display:grid;gap:8px;margin:0 0 12px}
.mad-ck-choose[hidden]{display:none}
.mad-ck-row{display:flex;gap:10px;align-items:flex-start}
.mad-ck-row input{width:20px;height:20px;margin-top:2px;flex:none}
.mad-ck-foot{text-align:center;margin:0;padding:6px 0 calc(6px + var(--mad-qb-h,0px));font-size:13px;opacity:.8}
.mad-ck-again{min-height:32px;font-size:13px}
.mad-hold{box-sizing:border-box;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#e8ecf1 repeating-linear-gradient(45deg,transparent 0 12px,rgba(255,255,255,.5) 12px 24px);color:#1d2430;border-radius:var(--gp-r);width:100%;max-width:100%;padding:16px;text-align:center}
.mad-hold.is-loaded{padding:0;background:none}
.mad-hold-btn{min-height:44px;padding:0 18px;border:0;border-radius:var(--gp-r);background:var(--gp-accent);color:var(--gp-on-accent);font-weight:700;cursor:pointer}
.mad-hold-note{font-size:13px;opacity:.8}
.mad-cookie-list ul{padding-left:1.2em}
.mad-cookie-list li{margin-bottom:8px}

/* 6.8 Sticky header */
.mad-sticky{position:sticky!important;top:var(--wp-admin--admin-bar--height,0px);z-index:50;transition:transform .25s ease,box-shadow .2s ease}
.mad-sticky .custom-logo,.mad-sticky .wp-block-site-logo img{transition:max-height .2s ease}
.mad-sticky-shadow.mad-scrolled{box-shadow:0 4px 18px rgba(0,0,0,.08)}
.mad-sticky-hide{transform:translateY(-100%)}
@media (max-width:600px){.admin-bar .mad-sticky{top:0}}

/* 6.9 Quick-action bar */
.mad-qb{display:none;font-weight:600;font-size:12px;line-height:1.2;font-family:var(--gp-font)}
.mad-qb ul{list-style:none;margin:0;padding:0;display:flex}
.mad-qb li{flex:1;margin:0}
.mad-qb a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:58px;padding:6px 2px;text-decoration:none;color:inherit;text-align:center}
.mad-qb a small{font-size:10px;opacity:.8;font-weight:500}
.mad-qb-icons a span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.mad-qb-light{background:#fff;color:#1d2430;border-top:1px solid #e3e7ec}
.mad-qb-dark{background:#1d2430;color:#fff}
.mad-qb-brand{background:var(--gp-accent);color:var(--gp-on-accent)}
.mad-qb-fab{display:none}
@media (max-width:599px){.mad-qb.mad-qb-on-phone{display:block;position:fixed;left:0;right:0;bottom:0;z-index:9990;padding-bottom:env(safe-area-inset-bottom)}body.mad-has-qb:has(.mad-qb-on-phone){--mad-qb-h:58px;padding-bottom:58px}}
@media (min-width:600px) and (max-width:1024px){.mad-qb.mad-qb-on-tablet{display:block;position:fixed;left:0;right:0;bottom:0;z-index:9990;padding-bottom:env(safe-area-inset-bottom)}body.mad-has-qb:has(.mad-qb-on-tablet){--mad-qb-h:58px;padding-bottom:58px}}
@media (min-width:1025px){
.mad-qb.mad-qb-desk{display:block;position:fixed;right:20px;bottom:20px;z-index:9990;background:none;border:0;color:#1d2430}
.mad-qb-desk .mad-qb-fab{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;border:0;background:var(--gp-accent);color:var(--gp-on-accent);box-shadow:0 6px 20px rgba(0,0,0,.2);cursor:pointer;margin-left:auto}
.mad-qb-desk ul{display:none;flex-direction:column;background:#fff;border-radius:calc(var(--gp-r) + 4px);box-shadow:0 10px 30px rgba(0,0,0,.18);margin-bottom:10px;min-width:200px;overflow:hidden}
.mad-qb-desk.is-open ul{display:flex}
.mad-qb-desk a{flex-direction:row;justify-content:flex-start;gap:10px;padding:0 16px;min-height:48px;font-size:14px}
.mad-qb-desk a:hover{background:#f2f4f7}
.mad-qb-desk.mad-qb-icons a span{position:static;width:auto;height:auto;clip:auto}
}
.mad-qb-sheet{position:fixed;inset:0;background:rgba(15,20,30,.5);z-index:9999;display:flex;align-items:flex-end;justify-content:center}
.mad-qb-sheet[hidden]{display:none}
.mad-qb-sheet-box{background:#fff;color:#1d2430;width:100%;max-width:480px;border-radius:16px 16px 0 0;padding:18px 16px calc(16px + env(safe-area-inset-bottom));font-size:15px;line-height:1.4;font-family:var(--gp-font)}
@media (min-width:600px){.mad-qb-sheet{align-items:center}.mad-qb-sheet-box{border-radius:16px}}
.mad-qb-sheet-h{font-weight:800;font-size:17px;margin:0 0 10px}
.mad-qb-sheet ul{list-style:none;margin:0 0 12px;padding:0}
.mad-qb-sheet li{margin:0 0 8px}
.mad-qb-sheet a{display:block;padding:12px 14px;border:1px solid #e3e7ec;border-radius:var(--gp-r);text-decoration:none;color:inherit}
.mad-qb-sheet a b{display:block}
.mad-qb-sheet a span{font-size:14px;opacity:.85}
.mad-qb-sheet i{font-style:normal;font-size:13px}
.mad-qb-sheet .is-open,.mad-hours-status.is-open{color:#14613f}.mad-qb-sheet .is-closed,.mad-hours-status.is-closed{color:#8a5a00}
.mad-qb-sheet-x{width:100%;min-height:44px;border-radius:var(--gp-r);border:1px solid #c9d0d8;background:#fff;font-weight:700;cursor:pointer}
.mad-site-toast{position:fixed;left:50%;bottom:calc(80px + var(--mad-qb-h,0px));transform:translateX(-50%);background:#1d2430;color:#fff;padding:10px 16px;border-radius:999px;z-index:10000;font:600 14px system-ui,sans-serif}

/* 6.11 Special days */
.mad-days{position:fixed;inset:0;pointer-events:none;z-index:9997}

/* 6.14 Opening times */
.mad-hours dl{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;margin:0}
.mad-hours dt{font-weight:600}
.mad-hours dd{margin:0}
.mad-hours .is-today{font-weight:800}
.mad-hours-status{font-weight:700}
.mad-hours-next{font-size:.92em;opacity:.85}

/* 6.15 Contacts */
.mad-contact{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.mad-contact a{display:inline-flex;gap:8px;align-items:center;min-height:44px}

/* 6.16 Maps */
.mad-map-box iframe{display:block;border-radius:var(--gp-r)}
.mad-map-links{margin:8px 0 0}
.mad-cover label{display:block;font-weight:700;margin-bottom:6px}
.mad-cover-row{display:flex;gap:8px;flex-wrap:wrap}
.mad-cover input{min-height:44px;padding:0 12px;text-transform:uppercase;max-width:180px}
.mad-cover button{min-height:44px;padding:0 18px;border:0;border-radius:var(--gp-r);background:var(--gp-accent);color:var(--gp-on-accent);font-weight:700;cursor:pointer}
.mad-cover-out{display:block;margin-top:8px;font-weight:600}
.mad-cover-out.is-yes{color:#14613f}

/* 6.18 Accessibility */
.mad-listen{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 16px}
.mad-listen button,.mad-listen select{min-height:40px;border-radius:var(--gp-r);border:1px solid currentColor;background:transparent;color:inherit;padding:0 12px;font:inherit;cursor:pointer}
.mad-listen-go{font-weight:700}
.mad-reading{background:rgba(255,213,79,.45);border-radius:4px}
.mad-ax{position:fixed;left:12px;bottom:calc(12px + var(--mad-qb-h,0px) + var(--mad-up,0px));z-index:9991;font-size:14px;line-height:1.4;font-family:var(--gp-font)}
.mad-ax-btn{min-height:40px;padding:0 12px;border-radius:999px;border:1px solid #c9d0d8;background:#fff;color:#1d2430;font-weight:700;cursor:pointer;box-shadow:0 3px 10px rgba(0,0,0,.12)}
.mad-ax-panel{background:#fff;color:#1d2430;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.2);padding:12px 14px;margin-bottom:8px;display:grid;gap:8px;min-width:220px}
.mad-ax-panel[hidden]{display:none}
.mad-ax-panel label{display:flex;gap:8px;align-items:center;min-height:32px}
.mad-ax-panel input{width:20px;height:20px}
.mad-ax-reset{min-height:36px;border-radius:8px;border:1px solid #c9d0d8;background:#fff;cursor:pointer}
.mad-ax-panel small{opacity:.75}
.mad-ax-badges{list-style:none;display:flex;flex-wrap:wrap;gap:6px 14px;padding:0;margin:8px 0;font-size:.9em}
html.mad-ax-big{font-size:125%}
html.mad-ax-big body{font-size:1.15em}
html.mad-ax-contrast body{filter:contrast(1.25)}
html.mad-ax-easy body,html.mad-ax-easy body *:not(.mad-ico):not(svg){font-family:Verdana,Tahoma,Arial,sans-serif!important;letter-spacing:.02em;word-spacing:.08em;line-height:1.7}
html.mad-ax-still *,html.mad-ax-still *::before,html.mad-ax-still *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.mad-ax-links a{text-decoration:underline!important}
@media print{.mad-qb,.mad-ck,.mad-ax,.mad-nb,.mad-days,.mad-listen,.mad-ck-foot{display:none!important}}

/* 10 PWA */
.mad-app{position:fixed;left:12px;right:12px;bottom:calc(12px + var(--mad-qb-h,0px));z-index:9995;display:flex;gap:12px;align-items:center;background:#fff;color:#1d2430;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.2);padding:12px 14px;font-size:15px;line-height:1.35;font-family:var(--gp-font);max-width:520px;margin:0 auto}
.mad-app img{border-radius:10px;flex:none}
.mad-app-t{flex:1;min-width:0;display:flex;flex-direction:column}
.mad-app-t ol{margin:4px 0 0;padding-left:1.2em;font-size:14px}
.mad-app-go{min-height:44px;padding:0 16px;border:0;border-radius:var(--gp-r);background:var(--gp-accent);color:var(--gp-on-accent);font-weight:700;cursor:pointer}
.mad-app-x{background:none;border:0;font-size:18px;min-width:40px;min-height:40px;cursor:pointer;color:inherit}
.mad-app-new{position:fixed;left:50%;top:12px;transform:translateX(-50%);z-index:9999;min-height:44px;padding:0 18px;border:0;border-radius:999px;background:#1d2430;color:#fff;font-weight:700;box-shadow:0 6px 20px rgba(0,0,0,.25);cursor:pointer}
@media print{.mad-app,.mad-app-new{display:none!important}}

/* 14.1 Forms */
.mad-form{display:grid;gap:4px;max-width:640px}
.mad-f{margin:0 0 10px;display:flex;flex-direction:column;gap:4px}
.mad-f label{font-weight:600}
.mad-f input:not([type=checkbox]),.mad-f select,.mad-f textarea{min-height:44px;padding:8px 12px;border:1px solid #c9d0d8;border-radius:var(--gp-r);font:inherit;width:100%;box-sizing:border-box;background:#fff;color:inherit}
.mad-f [aria-invalid=true]{border-color:#b42318;outline:2px solid #fde8e8}
.mad-f-tick{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important}
.mad-f-tick input{width:20px;height:20px;margin-top:2px;flex:none}
.mad-f small{opacity:.75}
.mad-form-send{min-height:46px;padding:0 24px;border:0;border-radius:var(--gp-r);background:var(--gp-accent);color:var(--gp-on-accent);font:inherit;font-weight:700;cursor:pointer}
.mad-form-send:disabled{opacity:.6}
.mad-form-msg{color:#b42318;font-weight:600;margin:0}
.mad-addr{position:relative;display:block;margin-bottom:6px}
.mad-addr-list{position:absolute;left:0;right:0;top:100%;z-index:50;background:#fff;color:#1d2327;border:1px solid #c9d0d8;border-radius:var(--gp-r);box-shadow:0 8px 24px rgba(0,0,0,.12);margin-top:4px;overflow:hidden}
.mad-addr-list [role=option],.mad-addr-none{display:block;padding:12px;cursor:pointer;border-top:1px solid #eef0f3}
.mad-addr-list [role=option]:first-child{border-top:0}
.mad-addr-list [aria-selected=true],.mad-addr-list [role=option]:hover{background:#f2f4f7}
.mad-addr-none{cursor:default;opacity:.8}
.mad-f textarea.mad-addr-done{animation:mad-addr-in .9s ease}
@keyframes mad-addr-in{0%{background:#e3f7ea}100%{background:#fff}}
@media (prefers-reduced-motion:reduce){.mad-f textarea.mad-addr-done{animation:none}}
.mad-step{border:0;padding:0;margin:0;min-width:0}
.mad-step legend{font-weight:700;font-size:1.1em;padding:0;margin:0 0 10px}
.mad-form-steps .mad-step legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.mad-prog{margin:0 0 14px}
.mad-prog-t{margin:0 0 6px;font-weight:600}
.mad-prog-bar{height:8px;border-radius:8px;background:#e6e9ee;overflow:hidden}
.mad-prog-bar span{display:block;height:100%;width:0;background:var(--gp-accent);border-radius:8px;transition:width .3s ease}
.mad-step-nav{display:flex;gap:10px;justify-content:space-between;margin:4px 0 10px}
.mad-step-back{min-height:46px;padding:0 20px;border:1px solid #c9d0d8;border-radius:var(--gp-r);background:#fff;color:inherit;font:inherit;cursor:pointer}
.mad-step-next{margin-left:auto}
.mad-f[hidden],.mad-step[hidden],.mad-form-end[hidden],.mad-step-nav [hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){.mad-prog-bar span{transition:none}}
.mad-form-done{padding:16px;border-radius:var(--gp-r);background:#e3f7ea;color:#14613f;font-weight:600}

/* 14.2 Blocks */
.mad-cta{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;padding:20px;border-radius:calc(var(--gp-r) + 4px);background:color-mix(in srgb,var(--gp-accent) 10%,transparent)}
.mad-cta p{margin:0;font-weight:700;font-size:1.15em}
.mad-block-notice{border-radius:var(--gp-r)}
@media (max-width:599px){.mad-hide-phone{display:none!important}}
@media (min-width:600px) and (max-width:1024px){.mad-hide-tablet{display:none!important}}
@media (min-width:1025px){.mad-hide-computer{display:none!important}}

/* 14.4 Pop-ups */
.mad-pp{position:fixed;z-index:9994;right:16px;bottom:calc(16px + var(--mad-qb-h,0px));max-width:380px;width:calc(100% - 32px);background:#fff;color:#1d2430;border-radius:16px;box-shadow:0 12px 36px rgba(0,0,0,.22);padding:20px 18px 16px;font-family:var(--gp-font);line-height:1.45}
.mad-pp[hidden]{display:none}
.mad-pp-h{font-weight:800;font-size:18px;margin:0 28px 6px 0}
.mad-pp p{margin:0 0 10px}
.mad-pp-x{position:absolute;top:8px;right:8px;min-width:40px;min-height:40px;border:0;background:none;font-size:18px;cursor:pointer;color:inherit}
.mad-pp-form{display:flex;gap:8px;flex-wrap:wrap}
.mad-pp-form input[type=email]{flex:1 1 180px;min-height:44px;padding:0 12px;border:1px solid #c9d0d8;border-radius:var(--gp-r);font:inherit}
.mad-pp-form button{min-height:44px;padding:0 16px;border:0;border-radius:var(--gp-r);background:var(--gp-accent);color:var(--gp-on-accent);font-weight:700;cursor:pointer}
.mad-pp-small{font-size:13px;opacity:.75}
.mad-pp-done{color:#14613f;font-weight:600}

/* 6.3 Flying saucer (flat colours from 2 Brand) */
.mad-ufo{display:block;width:min(320px,80vw);height:auto;margin:0 auto 8px;overflow:visible}
.mad-ufo-beam{fill:var(--gp-accent);opacity:.16;animation:mad-beam 2.4s ease-in-out infinite}
.mad-ufo-paper{fill:#fff;stroke:var(--gp-ink);stroke-width:3;stroke-linejoin:round}
.mad-ufo-fold{fill:var(--gp-ink);opacity:.15}
.mad-ufo-page text{font:800 22px/1 var(--gp-font,system-ui,sans-serif);fill:var(--gp-accent)}
.mad-ufo-page{transform-box:fill-box;transform-origin:50% 50%;animation:mad-lift 3.2s ease-in-out infinite}
.mad-ufo-dome{fill:color-mix(in srgb,var(--gp-accent) 25%,#fff);stroke:var(--gp-ink);stroke-width:3}
.mad-ufo-body{fill:var(--gp-accent);stroke:var(--gp-ink);stroke-width:3}
.mad-ufo-rim{fill:var(--gp-ink);opacity:.25}
.mad-ufo-light{fill:#ffd23f;stroke:var(--gp-ink);stroke-width:2;animation:mad-blink 1.5s steps(1) infinite}
.mad-ufo-light:nth-of-type(2){animation-delay:.3s}.mad-ufo-light:nth-of-type(3){animation-delay:.6s}.mad-ufo-light:nth-of-type(4){animation-delay:.9s}.mad-ufo-light:nth-of-type(5){animation-delay:1.2s}
.mad-ufo-ship{animation:mad-hover 3.2s ease-in-out infinite}
.mad-ufo-ground{fill:var(--gp-ink);opacity:.15}
@keyframes mad-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes mad-lift{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-34px) rotate(8deg)}}
@keyframes mad-beam{0%,100%{opacity:.12}50%{opacity:.24}}
@keyframes mad-blink{0%{fill:#ffd23f}50%{fill:#fff}}
@media (prefers-reduced-motion:reduce){.mad-ufo *{animation:none!important}}
html.mad-ax-still .mad-ufo *{animation:none!important}

/* 12.2 Newsletter sign-up box */
.mad-signup{display:grid;gap:6px;max-width:520px;position:relative}
.mad-signup label{font-weight:600}
.mad-signup-row{display:flex;gap:8px}
.mad-signup input[type=email]{flex:1;min-width:0;min-height:44px;padding:8px 12px;border:1px solid #c9d0d8;border-radius:var(--gp-r);font:inherit;background:#fff;color:inherit}
.mad-signup button{min-height:44px;padding:0 20px;border:0;border-radius:var(--gp-r);background:var(--gp-accent);color:var(--gp-on-accent);font:inherit;font-weight:700;cursor:pointer}
.mad-signup button:disabled{opacity:.6}
.mad-signup small{opacity:.75}
.mad-signup .mad-form-msg{color:#b42318;font-weight:600}

/* 12.9 Reviews */
.mad-stars{color:#f5a623;letter-spacing:1px;white-space:nowrap}
.mad-stars-off{color:#d5d9e0}
.mad-reviews{display:grid;gap:10px}
.mad-rv-sum{margin:0}
.mad-rv-list{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.mad-rv{border:1px solid #e3e6eb;border-radius:var(--gp-r);padding:14px;margin:0;background:#fff;color:#1d2327}
.mad-rv blockquote{margin:6px 0;padding:0;border:0;font-style:normal}
.mad-rv blockquote p{margin:0}
.mad-rv-who{margin:0;font-size:.9em;opacity:.75}
.mad-rv-reply{margin-top:10px;padding:10px;border-radius:var(--gp-r);background:#f4f5f7;font-size:.95em}
.mad-rv-reply p{margin:4px 0 0}
.mad-review-form{display:grid;gap:4px;max-width:640px;position:relative}
.mad-stars-pick{border:0;padding:0;margin:0 0 10px}
.mad-stars-pick legend{font-weight:600;padding:0;margin-bottom:4px}
.mad-stars-row{display:inline-flex;flex-direction:row-reverse;gap:2px}
.mad-stars-pick input{position:absolute;opacity:0;width:1px;height:1px}
.mad-stars-pick label{font-size:34px;line-height:1;color:#d5d9e0;cursor:pointer;padding:2px;transition:color .15s,transform .15s}
.mad-stars-pick label:hover,.mad-stars-pick label:hover~label,.mad-stars-pick input:checked~label{color:#f5a623}
.mad-stars-pick input:checked+label{transform:scale(1.12)}
.mad-stars-pick input:focus-visible+label{outline:2px solid var(--gp-accent);border-radius:4px}
.mad-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (prefers-reduced-motion:reduce){.mad-stars-pick label{transition:none}}

/* 14.5 Fields on an item's page */
.mad-fields-out{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px 20px;margin:24px 0;padding:16px 0 0;border-top:1px solid #e3e6eb}
.mad-fields-out-row{margin:0;min-width:0}
.mad-fields-out-row.is-wide{grid-column:1/-1}
.mad-fields-out dt{font-weight:700;font-size:.85em;opacity:.75;margin:0}
.mad-fields-out dd{margin:2px 0 0}
.mad-field-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.mad-field-gallery img,.mad-field-photo{width:100%;height:auto;border-radius:var(--gp-r);display:block}

/* 14.10 Lists and grids */
.mad-list{display:grid;gap:14px}
.mad-list-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-width:0;max-width:100%}
.mad-list-filters input[type=search],.mad-list-filters input[type=text],.mad-list-filters select{min-height:44px;padding:8px 12px;border:1px solid #c9d0d8;border-radius:var(--gp-r);font:inherit;background:#fff;color:inherit;max-width:100%}
.mad-list-q{flex:1 1 220px}
.mad-list-near{display:flex;gap:8px;flex:1 1 300px;min-width:0;max-width:100%}
.mad-list-near input{flex:1 1 0;min-width:0;width:0}
.mad-list-near select{flex:0 1 auto;min-width:0}
.mad-list-chip{display:inline-flex;gap:6px;align-items:center;min-height:44px;padding:0 14px;border:1px solid #c9d0d8;border-radius:999px;cursor:pointer;background:#fff;color:inherit}
.mad-list-chip:has(input:checked){border-color:var(--gp-accent);box-shadow:inset 0 0 0 1px var(--gp-accent)}
.mad-cards{list-style:none;margin:0;padding:0;display:grid;gap:14px;transition:opacity .2s}
.mad-list-grid .mad-cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.mad-list.is-loading .mad-cards{opacity:.5}
.mad-card{margin:0;border:1px solid #e3e6eb;border-radius:var(--gp-r);overflow:hidden;background:#fff;color:#1d2327;display:flex;flex-direction:column;animation:mad-card-in .25s ease both}
.mad-list-list .mad-card{flex-direction:row}
.mad-card-pic{display:block;aspect-ratio:4/3;overflow:hidden;background:#f4f5f7}
.mad-list-list .mad-card-pic{flex:0 0 140px;aspect-ratio:auto}
.mad-card-img{width:100%;height:100%;object-fit:cover;display:block}
.mad-card-body{padding:12px 14px;min-width:0}
.mad-card-title{margin:0 0 4px}
.mad-card-title a{color:inherit;text-decoration:none}
.mad-card-title a:hover{text-decoration:underline}
.mad-card-lines{margin:0;font-size:.95em;opacity:.85}
.mad-list-msg{margin:0;padding:14px;border-radius:var(--gp-r);background:#f4f5f7}
.mad-list-more{margin:0;text-align:center}
.mad-list-more button{min-height:44px;padding:0 22px;border:1px solid #c9d0d8;border-radius:var(--gp-r);background:#fff;color:inherit;font:inherit;cursor:pointer}
@keyframes mad-card-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (max-width:600px){.mad-list-list .mad-card-pic{flex-basis:96px}.mad-list-near{flex-basis:100%}.mad-list-near select{flex:0 0 auto;max-width:48%}.mad-list-filters select{min-width:0}}
@media (prefers-reduced-motion:reduce){.mad-card{animation:none}.mad-cards{transition:none}}

/* 10.4 Notifications button */
.mad-push{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.mad-push-btn{min-height:44px;padding:0 20px;border:0;border-radius:var(--gp-r);background:var(--gp-accent);color:var(--gp-on-accent);font:inherit;font-weight:700;cursor:pointer}
.mad-push-btn[data-on="1"]{background:transparent;color:inherit;border:1px solid #c9d0d8;font-weight:400}
.mad-push-msg{font-size:.95em;opacity:.8}
/* 2.8 Site looks: price ticker and the visitor's look picker */
.mad-ticker{position:relative;display:flex;align-items:center;overflow:hidden;background:var(--mad-surface2,#f2f2f7);color:var(--mad-ink,#1f2430);border-bottom:var(--mad-bw,1px) solid var(--mad-line,#e3e4ea);font:600 13px/1.2 var(--mad-font,system-ui,sans-serif);height:32px}
.mad-tk-track{display:flex;width:max-content;animation:mad-tk 40s linear infinite}
.mad-ticker:hover .mad-tk-track,.mad-ticker.is-paused .mad-tk-track,.mad-x-still .mad-tk-track{animation-play-state:paused}
.mad-x-still .mad-tk-track{animation:none}
.mad-tk-list{display:flex;gap:28px;list-style:none;margin:0;padding:0 14px;white-space:nowrap}
.mad-tk-item b{font-variant-numeric:tabular-nums}
.mad-tk-label{color:var(--mad-muted,#5b6070);font-weight:500}
.mad-tk-change{font-weight:700}
.mad-tk-item.is-up .mad-tk-change{color:var(--mad-good,#16a34a)}
.mad-tk-item.is-down .mad-tk-change{color:var(--mad-muted,#5b6070)}
.mad-tk-pause{position:absolute;right:0;top:0;bottom:0;width:36px;border:0;border-left:var(--mad-bw,1px) solid var(--mad-line,#e3e4ea);background:var(--mad-surface2,#f2f2f7);color:inherit;cursor:pointer;font-size:10px;padding:0}
.mad-tk-pause[aria-pressed="true"] span{display:none}
.mad-tk-pause[aria-pressed="true"]::before{content:"▶"}
.mad-x-still .mad-tk-pause{display:none}
.mad-x-still .mad-ticker{overflow-x:auto}
@keyframes mad-tk{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mad-tk-track{animation:none}.mad-tk-pause{display:none}.mad-ticker{overflow-x:auto}}
.mad-lk-open{display:inline-flex;align-items:center;gap:6px;border:var(--mad-bw,1px) solid var(--mad-line,#e3e4ea);background:var(--mad-surface,#fff);color:var(--mad-ink,#1f2430);border-radius:99px;padding:8px 14px;font:600 14px/1 var(--mad-font,system-ui,sans-serif);cursor:pointer;box-shadow:var(--mad-sh,0 1px 3px rgba(0,0,0,.1))}
.mad-lk-corner{position:fixed;z-index:9990;left:calc(16px + env(safe-area-inset-left,0px));bottom:calc(16px + var(--mad-qb-h,0px) + var(--mad-up,0px) + env(safe-area-inset-bottom,0px))}
.mad-lk-menu{position:absolute;bottom:calc(100% + 8px);left:0;min-width:220px;background:var(--mad-surface,#fff);color:var(--mad-ink,#1f2430);border:var(--mad-bw,1px) solid var(--mad-line,#e3e4ea);border-radius:calc(var(--mad-r,10px) + 4px);box-shadow:0 10px 30px rgba(0,0,0,.18);padding:8px;font:14px/1.3 var(--mad-font,system-ui,sans-serif)}
.mad-lk-spot{position:relative;display:inline-block}
.mad-lk-spot .mad-lk-menu{bottom:auto;top:calc(100% + 8px)}
.mad-lk-menu p{margin:4px 8px 8px;font-weight:700}
.mad-lk-opt{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;color:inherit;font:inherit;text-align:left;padding:8px;border-radius:8px;cursor:pointer}
.mad-lk-opt:hover,.mad-lk-opt:focus-visible{background:var(--mad-surface2,#f2f2f7)}
.mad-lk-opt[aria-checked="true"]{font-weight:700}
.mad-lk-opt[aria-checked="true"]::after{content:"✓";margin-left:auto}
.mad-lk-sw{display:inline-flex;border-radius:6px;overflow:hidden;border:1px solid rgba(0,0,0,.15);flex:none}
.mad-lk-sw i{width:12px;height:22px}
/* The picker keeps its own look whatever the theme does to buttons */
.mad-lk-menu .mad-lk-opt,.mad-lk-menu .mad-lk-opt:hover,.mad-lk-menu .mad-lk-opt:focus{appearance:none;background:transparent;color:var(--mad-ink,#1f2430);border:0;box-shadow:none;text-transform:none;letter-spacing:normal;min-height:0;margin:0;font:inherit;text-decoration:none}
.mad-lk-menu .mad-lk-opt:hover,.mad-lk-menu .mad-lk-opt:focus-visible{background:var(--mad-surface2,#f2f2f7)}
.mad-lk-menu .mad-lk-opt:focus-visible{outline:2px solid var(--mad-brand,#8b3dff);outline-offset:1px}
.mad-lk-menu .mad-lk-opt[aria-checked="true"]{font-weight:700}
button.mad-lk-open,button.mad-lk-open:hover,button.mad-lk-open:focus{background:var(--mad-surface,#fff);color:var(--mad-ink,#1f2430);text-transform:none;letter-spacing:normal;min-height:0;margin:0}
button.mad-tk-pause,button.mad-tk-pause:hover,button.mad-tk-pause:focus{background:var(--mad-surface2,#f2f2f7);color:var(--mad-ink,#1f2430);border-radius:0;box-shadow:none;min-height:0;margin:0}
.mad-ax:focus-within,.mad-lk-corner:focus-within,.mad-ln-corner:focus-within,.mad-ln-corner:has(details[open]){z-index:9993}
