/* Deal Homepage 1.0.0, LOOK (package P5): the visual skin of the homepage block. V26C, "the photo speaks, the frame is quiet".
   Colour, border, radius, shadow, weight, type size, hover, focus, selected states. Values come from design/tokens.json via the
   deal-design-system aliases under body.ds2 (--ink --muted --hair --subtle --g50..g700 --radius-* --font --fs-*), plus the two V26C
   homepage values --page #E9EEEB and --deal #C2410C (owner decision 18.10.2026, recorded in tokens). Structure and reserved sizes: dhp-layout.css.
   Neutrals + ONE accent per card (--deal: the discount figure or the expiry text). Green only for real actions and selected states. */

body.home.ds2{--page:#E9EEEB;--deal:#C2410C}
body.home.ds2,body.home.ds2 #page,body.home.ds2 #content,body.home.ds2 .site-content{background-color:var(--page)!important}
.home.ds2 .site-content .ast-container{background:transparent}
.ds2 .fx{font-family:var(--font);font-variant-numeric:lining-nums tabular-nums}
.ds2 .fx :focus-visible{outline:3px solid var(--g600);outline-offset:2px}
.ds2 .fx button,.ds2 .fx select,.ds2 .fx input{font-family:var(--font)}
.ds2 .h1{font-size:28px;line-height:32px;font-weight:700}

/* header on the homepage (the lime stays): ink text and icons */
.home.ds2 #masthead .menu-toggle,.home.ds2 #masthead .menu-toggle *,.home.ds2 #masthead .main-header-menu-toggle,.home.ds2 #masthead .mobile-menu{color:var(--ink)!important;fill:var(--ink)!important}
.home.ds2 #masthead .menu-toggle{border-color:var(--ink)!important}
.home.ds2 #masthead .ast-mobile-svg{fill:var(--ink)}
.ds2 .fx-hs{color:var(--ink);border:1px solid var(--ink);border-radius:var(--radius-btn)}
.ds2 .fx-hs:focus-visible{outline:3px solid var(--g600);outline-offset:2px}

/* ---------- facet panel ---------- */
.ds2 .fx-side{background:#fff;border:1px solid var(--hair);border-radius:var(--radius-panel)}
.ds2 .fx-grp{border-top:1px solid var(--hair)}
#fx-facets>.fx-grp:first-child{border-top:0}
.ds2 .fx-lab{font-weight:600;font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .fx-opt{font-size:var(--fs-2);line-height:var(--lh-2);color:var(--ink)}
.ds2 .fx-opt .fx-t{font-weight:400}
.ds2 .fx-opt .fx-n{font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .fx-opt input{background:#fff;border:1px solid var(--muted);border-radius:var(--radius-chip)}
.ds2 .fx-opt input[type=radio]{border-radius:50%}
.ds2 .fx-opt input:checked{background:var(--g600);border-color:var(--g600)}
.ds2 .fx-opt input[type=checkbox]:checked::after{content:"";width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
.ds2 .fx-opt input[type=radio]:checked::after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}
.ds2 .fx-opt.is-zero .fx-t,.ds2 .fx-opt.is-zero .fx-n{color:var(--muted)}
.ds2 .fx-opt.is-zero input{border-color:var(--hair)}
.ds2 .fx-hint{font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}

/* ---------- search ---------- */
.ds2 .fx-find__i{color:var(--muted)}
.ds2 .fx-q{background:#fff;border:1px solid var(--hair);border-radius:var(--radius-btn);color:var(--ink);font-size:var(--fs-2);line-height:var(--lh-2);box-shadow:none}
.ds2 .fx-q::placeholder{color:var(--muted);opacity:1}
.ds2 .fx-q:focus{border-color:var(--g600)}
.ds2 .fx-ta,.ds2 .fx-ta *{font-family:var(--font)}
.ds2 .fx-ta{background:#fff;border:1px solid var(--hair);border-radius:var(--radius-panel);box-shadow:0 1px 3px rgba(22,32,27,.14)}
.ds2 .fx-ta li{border-top:1px solid var(--hair)}
.ds2 .fx-ta li:first-child{border-top:0}
.ds2 .fx-ta li[aria-selected=true],.ds2 .fx-ta li:hover{background:var(--g50)}
.ds2 .fx-ta .nm{font-weight:600;font-size:var(--fs-2);line-height:var(--lh-2)}
.ds2 .fx-ta .nm--q{color:var(--g700)}
.ds2 .fx-ta .ct{font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .fx-ta .fx-ta__none{cursor:default;color:var(--muted);font-size:var(--fs-2);line-height:var(--lh-2)}
.ds2 .fx-ta .fx-ta__none:hover{background:#fff}
.ds2 .fx-ta .lo,.ds2 .fx-sug .lo{border-radius:var(--radius-tile);background:#fff;box-shadow:inset 0 0 0 1px var(--hair)}
.ds2 .fx-ta .lo.lo--m,.ds2 .fx-sug .lo.lo--m{background:var(--subtle);color:var(--ink);font-weight:600;font-size:var(--fs-2);line-height:1}

/* ---------- logo tile ---------- */
.ds2 .fx .lo{border:0;border-radius:var(--radius-tile);background:#fff;box-shadow:inset 0 0 0 1px var(--hair)}
.ds2 .fx .lo.lo--m{background:var(--subtle);color:var(--ink);font-weight:600;font-size:var(--fs-3);line-height:1}
.ds2 .lo--more{color:var(--g700)}

/* ---------- category tiles, chips ---------- */
.ds2 .cat{background:#fff;border-radius:var(--radius-btn);box-shadow:inset 0 0 0 1px var(--hair);color:var(--ink);font-family:var(--font)}
.ds2 .cat__t{font-weight:600;font-size:var(--fs-2);line-height:var(--lh-2)}
.ds2 .cat__n{font-weight:400;font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .cat:hover{background:var(--g50)}
.ds2 .cat[aria-pressed=true]{background:var(--g100);box-shadow:inset 0 0 0 2px var(--g600);color:var(--g700)}
.ds2 .cat[aria-pressed=true] .cat__n{color:var(--g700);font-weight:600}
.ds2 .cat.is-zero,.ds2 .cat.is-zero .cat__n{color:var(--muted)}
.ds2 .cat.is-zero .cat__t{font-weight:400;color:var(--muted)}
.ds2 .fx-catmore,.ds2 .fx-all{color:var(--g700);font-size:var(--fs-2);line-height:var(--lh-2);font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--g200)}
.ds2 .fx-chip-c{background:#fff;border-radius:999px;box-shadow:inset 0 0 0 1px var(--hair);color:var(--ink);font-size:var(--fs-2);line-height:var(--lh-2);font-weight:600;font-family:var(--font)}
.ds2 .fx-chip-c .cat__n{font-size:var(--fs-1);line-height:var(--lh-1);font-weight:400;color:var(--muted)}
.ds2 .fx-chip-c:hover{background:var(--g50)}
.ds2 .fx-chip-c[aria-pressed=true]{background:var(--g100);box-shadow:inset 0 0 0 2px var(--g600);color:var(--g700)}
.ds2 .fx-chip-c[aria-pressed=true] .cat__n{color:var(--g700);font-weight:600}
.ds2 .fx-chip-c.is-zero,.ds2 .fx-chip-c.is-zero .cat__n{color:var(--muted);font-weight:400}
.ds2 .fx-chip-all{background:#fff;box-shadow:inset 0 0 0 1px var(--hair);color:var(--ink)}
.ds2 .fx-chip-all .cat__n{color:var(--muted);font-weight:400}
.ds2 .fx-chipbar{background:#fff}
.ds2 .fx-chipbar .al-chev::before{border-color:var(--ink)}
.ds2 .fx.is-stuck .fx-top{box-shadow:0 1px 3px rgba(22,32,27,.14)}

/* ---------- popular shops ---------- */
.ds2 .fx-ttl2{font-weight:600;font-size:var(--fs-2);line-height:var(--lh-2);color:var(--ink)}
.ds2 .fx-pop__sub{font-weight:400;font-size:var(--fs-1);color:var(--muted)}
.ds2 .fx-shop{background:none;border-radius:var(--radius-panel);color:var(--ink);font-family:var(--font);text-decoration:none}
.ds2 .fx-shop .lo--m{font-size:var(--fs-4)}
.ds2 .fx-shop .nm{font-weight:600;font-size:var(--fs-1);line-height:var(--lh-1)}
.ds2 .fx-shop .ct{font-weight:600;font-size:var(--fs-1);line-height:var(--lh-1);color:var(--g700)}
.ds2 .fx-shop:hover{background:var(--g50)}
.ds2 .fx-shop[aria-pressed=true]{background:var(--g100);box-shadow:inset 0 0 0 2px var(--g600)}
.ds2 .fx-shop[aria-pressed=true] .nm{color:var(--g700)}
.ds2 .fx-shop.is-zero .nm,.ds2 .fx-shop.is-zero .ct{color:var(--muted);font-weight:400}
.ds2 .fx-shop--all .nm{color:var(--g700)}
.ds2 .fx .fx-poprow .fx-pop{background:#fff;border:0;border-radius:var(--radius-panel);box-shadow:none}
.ds2 .fx .fx-poprow .fx-ttl2{font-size:var(--fs-2);font-weight:600}

/* ---------- tab row and controls ---------- */
.ds2 .fx-top{background:#fff;border-bottom:1px solid var(--hair)}
.ds2 .fx .tab{font-size:var(--fs-2)}
.ds2 .fx-sortw{color:var(--muted);font-size:var(--fs-2)}
.ds2 .fx-sort{border:0;background-color:var(--subtle);background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);border-radius:var(--radius-btn);color:var(--ink);font-size:var(--fs-2);font-weight:600}
.ds2 .fx-open{background:#fff;border-radius:var(--radius-btn);box-shadow:inset 0 0 0 1px var(--g600);color:var(--g700);font-size:var(--fs-2);font-weight:600}
.ds2 .fx-open b{font-weight:700}
.ds2 .fx-open:hover{background:var(--g50)}
.ds2 .fx .fx-open--tab{box-shadow:none;background:var(--subtle);gap:4px;padding:0 12px;border-radius:999px}

/* ---------- count line, quick filters, active filters ---------- */
.ds2 .fx-count{font-weight:700;font-size:var(--fs-2);line-height:var(--lh-2);color:var(--ink)}
.ds2 .fx-sub{font-weight:400;font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .fx-count a.fx-sub{color:var(--g700);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--g200)}
.ds2 .fx-count{font-size:var(--fs-1)}
@media(min-width:768px){.ds2 .fx-count{font-size:var(--fs-2)}}
.ds2 .al-q__b{font-family:var(--font)}
.ds2 .al-q__i{border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px var(--hair);color:var(--ink);font-size:var(--fs-1);line-height:1;font-weight:600}
.ds2 .al-q__i svg{color:var(--muted)}
.ds2 .al-q__i .n{font-weight:600;color:var(--muted)}
.ds2 .al-q__d{border-radius:50%;background:var(--muted)}
.ds2 .al-q__b[aria-pressed=true] .al-q__i{box-shadow:inset 0 0 0 1.5px var(--ink)}
.ds2 .fx-chip{font-size:var(--fs-1);color:var(--ink)}
.ds2 .fx-chip span{background:#fff;border:1px solid var(--hair);border-radius:var(--radius-chip);font-weight:600;line-height:1}
.ds2 .fx-chip svg{color:var(--muted)}
.ds2 .fx-chip:hover span{border-color:var(--muted)}
.ds2 .fx-clear{color:var(--g700);font-size:var(--fs-1);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--g200)}
.ds2 .fx-note{font-weight:400;font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}

/* ---------- the card ---------- */
.ds2 .fx .row.vc{border:0;border-radius:var(--radius-panel);background:#fff;box-shadow:none}
.ds2 .fx .vm{background:var(--g50)}
.ds2 .fx .vm>.lo{border-radius:var(--radius-tile);background:#fff;box-shadow:inset 0 0 0 1px var(--hair)}
.ds2 .fx .vm>.lo.lo--m{background:#fff;color:var(--ink);font-size:28px;line-height:1;font-weight:600}
.ds2 .fx .vh .row__t{font-size:13px;line-height:18px;font-weight:400;color:var(--muted)}
.ds2 .fx .vh .row__t a{color:var(--muted);text-decoration:none}
.ds2 .fx .vc .row__s{font-size:15px;line-height:20px;font-weight:600;color:var(--ink)}
.ds2 .fx .vc .row__s.is-s1{font-size:14px}
.ds2 .fx .vc .row__s.is-s2{font-size:13px}
.ds2 .fx .vl>.fg{font-size:17px;line-height:22px;font-weight:700;color:var(--deal);letter-spacing:0}
.ds2 .fx .vl>.fg .u{font-size:17px}
.ds2 .fx .vl>.fg small{font-size:13px;line-height:18px;font-weight:400;color:var(--muted);letter-spacing:0}
.ds2 .fx .vc .row__p .mt{font-size:13px;line-height:18px;font-weight:400;color:var(--muted)}
.ds2 .fx .vc .row__p .mt .acc{color:var(--deal);font-weight:600}
.ds2 .fx .vc .row__p .code__w{font-size:15px;line-height:22px;font-weight:600;letter-spacing:.03em;color:var(--ink)}
.ds2 .fx .vc .code .btn,.ds2 .fx .vc .code .btn:hover{border:0;border-radius:0;background:transparent;color:var(--ink);font-size:15px;font-weight:600;box-shadow:none}
.ds2 .fx .vc .code .btn::before{border:1px solid var(--ink);border-radius:8px}
.ds2 .fx .vc .code .btn:hover::before{background:var(--g50)}
.ds2 .fx-more .btn,.ds2 .fx-more .btn:hover{background:#fff;color:var(--g700);border-color:var(--g600)}
.ds2 .fx-more .btn:hover{background:var(--g50)}

/* ---------- "ends today / tomorrow" ---------- */
.ds2 .fx .al-ends__h{font-size:17px;line-height:22px;font-weight:600;color:var(--ink)}

/* ---------- empty state ---------- */
.ds2 .fx-empty{background:#fff;border:1px solid var(--hair);border-radius:var(--radius-panel)}
.ds2 .fx-empty h3{font-weight:600;font-size:var(--fs-2);line-height:var(--lh-2);color:var(--ink)}
.ds2 .fx-empty .fx-es{font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .fx-empty h4{font-weight:600;font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .fx-sug li{border-top:1px solid var(--hair)}
.ds2 .fx-sug li:first-child{border-top:0}
.ds2 .fx-sug button{color:var(--ink)}
.ds2 .fx-sug .nm{font-weight:600;font-size:var(--fs-2);line-height:var(--lh-2)}
.ds2 .fx-sug .ct{font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}

/* ---------- tested offers: quiet ---------- */
.ds2 .fx-tcard{background:#fff;border:0;border-radius:var(--radius-panel);box-shadow:none}
.ds2 .fx .tcard__l{font-size:var(--fs-1);line-height:16px;color:var(--muted)}
.ds2 .fx .tcard__l b{font-weight:600;color:var(--ink)}
.ds2 .fx .tcard__t{font-weight:600;font-size:var(--fs-2);line-height:24px}
.ds2 .fx .tcard__t a,.ds2 .fx .tcard__row .tcard__t a{color:var(--ink);text-decoration:none}
.ds2 .fx .tcard__s{font-size:var(--fs-1);line-height:16px;color:var(--ink)}
.ds2 .fx .tcard__a .btn,.ds2 .fx .tcard__a .btn:hover{position:relative;height:44px;border:0;border-radius:0;background:transparent;color:var(--ink);font-size:var(--fs-2);font-weight:600;padding:0 16px}
.ds2 .fx .tcard__a .btn::before{content:"";position:absolute;left:0;right:0;top:4px;bottom:4px;border:1px solid var(--ink);border-radius:8px}
.ds2 .fx .tcard__f{border-top:1px solid var(--hair)}
.ds2 .fx .tcard__f button{color:var(--g700);font-size:var(--fs-1);line-height:var(--lh-1);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--g200)}
.ds2 .fx .tcard__p{border-top:1px solid var(--hair)}
.ds2 .fx .tp__f img{border-radius:var(--radius-chip);box-shadow:inset 0 0 0 1px var(--hair)}
.ds2 .fx .tp__w{font-weight:600;font-size:var(--fs-2);line-height:var(--lh-2);color:var(--ink)}
.ds2 .fx .tp__d{font-size:var(--fs-2);line-height:var(--lh-2);color:var(--ink)}
.ds2 .fx .tp__n{font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .fx .tp__l a,.ds2 .fx .tl__f a,.ds2 .fx .tl__t a{color:var(--g700);font-size:var(--fs-1);line-height:var(--lh-1);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--g200)}
.ds2 .fx .fx-tbd,.ds2 .fx-bd{background:color-mix(in srgb,var(--ink) 45%,transparent)}
.ds2 .fx .fx-tl{background:#fff;border-radius:var(--radius-panel) var(--radius-panel) 0 0}
@media(min-width:900px){.ds2 .fx .fx-tl{border-radius:var(--radius-panel)}}
.ds2 .fx .tl__hd,.ds2 .fx-sh-hd,.ds2 .fx-sh-ft{background:#fff}
.ds2 .fx .tl__hd,.ds2 .fx-sh-hd{border-bottom:1px solid var(--hair)}
.ds2 .fx-sh-ft{border-top:1px solid var(--hair)}
.ds2 .fx .tl__hd h3,.ds2 .fx-sh-hd .fx-ttl{font-weight:700;font-size:var(--fs-3);line-height:var(--lh-3)}
.ds2 .fx .tl__i{border-top:1px solid var(--hair)}
.ds2 .fx .tl__i:first-child{border-top:0}
.ds2 .fx .tl__t a{min-height:0;color:var(--ink);font-size:var(--fs-2);line-height:var(--lh-2);text-decoration:none;font-weight:600}
.ds2 .fx .tl__s{font-size:var(--fs-1);line-height:var(--lh-1);color:var(--ink)}
.ds2 .fx .tl__m{font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .fx .tl__i .btn{background:#fff;color:var(--g700);border-color:var(--g600)}
.ds2 .fx .tl__f{border-top:1px solid var(--hair);font-size:var(--fs-1);line-height:var(--lh-1);color:var(--muted)}
.ds2 .fx .fx-x{color:var(--ink)}
.ds2 .fx-side{border-radius:var(--radius-panel)}
@media(max-width:899px){
.ds2 .fx-side{border:0;border-radius:var(--radius-panel) var(--radius-panel) 0 0}
.ds2 .fx-sh-ft .btn[disabled]{background:var(--subtle);border-color:var(--hair);color:var(--muted);cursor:default}
}

/* ---------- search overlay on phones ---------- */
body.fx-so-open::after{background:color-mix(in srgb,var(--ink) 45%,transparent)}
body.fx-so-open.ds2 .hero form.srch,body.fx-so-open .hero form.srch{background:#fff;box-shadow:0 1px 3px rgba(22,32,27,.14)}
body.fx-so-open.ds2 .hero form.srch .fx-so__x{background:#fff;border:1px solid var(--hair);border-radius:var(--radius-btn);color:var(--ink)}

/* ==================== fix2 (19.10.2026): the live preview matched to V26C ==================== */
/* 1. the design system's generic .row (row-gap 12px, column-gap 16px, list-style) leaked into the card: a 12px white band between photo and text */
.ds2 .fx .row.vc.vc.vc{row-gap:0;column-gap:0;list-style:none}
/* 2. chips sit on the page colour; only the tab bar is white with its hairline (V26C). The sticky state keeps the tab bar's own white. */
.ds2 .fx .fx-chipbar,.ds2 .fx .fx-chipbar.has-more{background:none}
.ds2 .fx .fx-top{background:none;border-bottom:0}
.ds2 .fx .tabbar{background:#fff;border-bottom:1px solid var(--hair)}
/* 3. count line left, quick filters right; the quick-filter box does not clip its focus ring; the list starts right under the count line */
.ds2 .fx .fx-sum{justify-content:space-between}
.ds2 .fx .al-q{overflow:visible}
.ds2 .fx .rows{margin-top:0}
/* 4. logo tile (style A) in the frame of a card without a photo */
.ds2 .fx .vm>.vt{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.ds2 .fx .vt .vt__f{position:absolute;inset:0;width:100%;height:100%;display:block;max-width:none}
.ds2 .fx .vt img{position:relative}
.ds2 .fx .vt img{display:block;flex:none;height:auto;max-width:none;max-height:none;padding:0;border-radius:0}
.ds2 .fx .vt--w img{width:75%;max-height:46%;object-fit:contain}
.ds2 .fx .vt--k img{width:55%;max-height:55%;object-fit:contain}
.ds2 .fx .vt--wh img{filter:brightness(0) invert(1)}
.ds2 .fx .vt--ink img{filter:brightness(0)}
.ds2 .fx .vt--ow img{filter:grayscale(1) invert(1);mix-blend-mode:screen}
.ds2 .fx .vt--oi img{filter:grayscale(1);mix-blend-mode:multiply}
.ds2 .fx .vt.is-bad{background:var(--g50)}
.ds2 .fx .vt.is-bad img,.ds2 .fx .vt.is-bad .vt__f{display:none}
.ds2 .fx .vt.is-bad::after{content:attr(data-initial);position:relative;display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1px var(--hair);color:var(--ink);font-size:28px;line-height:1;font-weight:600}
.ds2 .fx .has-ph .vm>.vt{display:none}
.ds2 .fx .al-ends__sc .vm>.vt{inset:0}
/* fix3 (19.10.2026): a logo tile whose image is missing or was removed draws the monogram from data-initial, never an empty square */
.ds2 .fx .lo:empty::before{content:attr(data-initial);color:var(--ink);font-weight:600;font-size:var(--fs-3);line-height:1}
.ds2 .fx .lo:empty{background:var(--subtle)}
.ds2 .fx .fx-shop .lo:empty::before{font-size:var(--fs-4)}
.ds2 .fx .vm>.lo:empty{background:#fff}
.ds2 .fx .vm>.lo:empty::before{font-size:28px}

/* fix3 rhythm (19.10.2026, owner: "a bit tight"): phone spacing from 4 / 8 / 12 / 16 / 24 / 32 only.
   header > H1 24, H1 > chips 16, chips > tabs 16, tabs > section title 24, title > cards 12, between sections 32, grid gap 12. */
@media (max-width:767px){
  .ds2 .hero{padding-top:24px}
  .ds2 .fx .fx-chipw{margin-top:8px}
  .ds2 .fx .fx-chipbar{padding-bottom:16px}
  .ds2 .fx .al-ends{margin:24px 0 32px}
  .ds2 .fx .al-ends__h{margin:0 0 12px}
  .ds2 .fx .fx-tcard{margin-bottom:32px}
  .ds2 .fx .fx-sum{margin-bottom:12px}
  .ds2 .fx .rows{gap:12px}
}
@media (min-width:768px){
  .ds2 .hero{padding-top:24px}
  .ds2 .fx .al-ends{margin:24px 0 32px}
  .ds2 .fx .al-ends__h{margin:0 0 12px}
}
/* header buttons: search and menu keep 44px, 8px apart, both centred on the logo line */
.ds2 #masthead .fx-hs-wrap{margin-right:0}
.ds2 #masthead .site-header-primary-section-right .ast-builder-layout-element{padding-left:0;padding-right:0}
.ds2 #masthead .ast-button-wrap{display:flex;align-items:center;height:44px;margin-left:8px}
.ds2 #masthead .menu-toggle{height:44px;min-height:44px;margin:0}

/* fix4 (19.10.2026): at 375 the three tabs needed 281px in a 272px scroll box, so the last count was cut ("373" read as "37"). Tighter gaps on narrow phones only. */
@media (max-width:420px){.ds2 .fx .tabs{gap:12px}.ds2 .fx .tab{gap:4px}}
