/* Shared storefront refinement. All colours come from the approved palette. */
main :is(.section>h2,.section-heading){margin-bottom:clamp(24px,4vw,36px)}
main .section-heading h2{margin-bottom:0}
main .section>h2+ :is(.product-grid,.i18n-grid){margin-top:0}
main.policy-content section>h2{margin:0 0 12px;line-height:1.3}
main.policy-content section>p{margin:0}
.home-introduction{font-size:clamp(16px,2vw,19px);line-height:1.65;max-width:58ch;margin:18px 0 24px;color:inherit}
.hero-copy .home-introduction{font-size:17px;max-width:42ch}
.listing-order{margin:0 0 24px;color:var(--muted,var(--vass));font-size:14px;line-height:1.5}
.home-seo{display:grid;gap:32px;margin-top:56px;padding-block:40px;border-top:1px solid var(--line);max-width:1320px}
.home-seo h2{font-size:clamp(24px,4vw,32px);line-height:1.2;letter-spacing:-.025em;margin:0 0 18px}
.home-seo p{font-size:17px;line-height:1.75;max-width:68ch;margin:0}
.home-project-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:22px}
.home-project-links a{display:inline-flex;gap:8px;align-items:center;min-height:44px;text-underline-offset:4px;color:var(--djup)}
.digital-format{display:block;font-size:15px;font-weight:400;color:var(--vass);margin-top:8px;line-height:1.4}
body .price-row>[data-digital-format]{font-size:15px;line-height:1.4;max-width:22ch}
body .review-summary{display:inline-flex;align-items:center;gap:12px;max-width:100%;font-size:14px;line-height:1.4;margin:2px 0 24px;text-decoration:none;color:var(--djup)}
.review-summary:hover .review-count{text-decoration:underline;text-underline-offset:4px}
.review-summary .review-count{color:var(--muted,var(--vass))}
.review-overview{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 28px!important}
.review-overview .rating-stars{transform-origin:left center}
.rating-stars{vertical-align:middle;color:var(--vass)}
body #recensioner{padding-top:48px;scroll-margin-top:100px}
body #recensioner>h2{margin-bottom:16px}
body .customer-reviews{display:grid;gap:0;max-width:850px}
body .customer-review{padding:26px 0;margin:0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;overflow-wrap:anywhere}
.customer-review-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin-bottom:14px}
.customer-review-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 12px;font-size:14px;line-height:1.5}
.customer-review-meta strong{font-size:16px;color:var(--djup)}
.customer-review-meta time,.review-verified{color:var(--muted,var(--vass));font-size:13px}
body .customer-review>p:not(.review-incentive){font-size:17px;line-height:1.7;margin:0;max-width:72ch}
body .customer-review .review-incentive{font-size:13px;line-height:1.6;margin:14px 0 0;color:var(--muted,var(--vass))}
.review-form .review-stars{gap:8px}
.review-form .review-stars label{min-height:44px;min-width:44px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line)}
.review-form .review-stars label:has(input:checked){outline:2px solid var(--vass);outline-offset:2px}
body .site-footer[data-storefront-footer]{display:grid;grid-template-columns:minmax(0,1fr);gap:36px;padding:40px 24px;border-top:1px solid var(--line);font-family:var(--font-body);color:var(--djup);background:var(--dimma)}
.site-footer[data-storefront-footer] .footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.site-footer[data-storefront-footer] .brand{display:block;width:150px}
.site-footer[data-storefront-footer] .brand img{display:block;width:100%;height:auto}
.site-footer[data-storefront-footer] nav{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.site-footer[data-storefront-footer] h2{font-size:18px;margin:0 0 12px;line-height:1.4;letter-spacing:0}
.site-footer[data-storefront-footer] :is(nav>a,.footer-cookie-choice){display:inline-flex;align-items:center;min-height:38px;font:400 15px/1.5 var(--font-body);text-decoration:none;color:inherit;padding:0;border:0;background:none;cursor:pointer}
.site-footer[data-storefront-footer] :is(nav>a,.footer-cookie-choice):hover{text-decoration:underline;text-underline-offset:4px}
body #cart{box-sizing:border-box;width:min(520px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 32px);padding:24px;border-radius:20px;overflow:auto}
#cart .cart-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
#cart .cart-heading h2{font-size:clamp(25px,6vw,30px);line-height:1.2;margin:0}
#cart .cart-close{width:44px;height:44px;min-height:44px;flex:0 0 44px;display:grid;place-items:center;padding:10px;margin:0}
#cart .shop-item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;align-items:start;padding:24px 0;margin:0;border-top:1px solid var(--line);border-bottom:0}
#cart .shop-item>img{width:72px;height:72px;aspect-ratio:1;object-fit:cover;display:block;border-radius:8px;margin:0}
#cart .cart-item-body{min-width:0}
#cart .cart-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
#cart .cart-item-top>strong:first-child{font-size:16px;line-height:1.4;overflow-wrap:anywhere}
#cart .cart-item-top>strong:last-child{font-size:16px;line-height:1.4;white-space:nowrap;flex:none}
#cart .cart-unit-price{font-size:14px;color:var(--muted,var(--vass));margin:7px 0 0;line-height:1.4}
#cart .cart-controls{display:flex;align-items:center;gap:12px;margin:8px 0 0}
#cart .cart-remove{display:inline-flex;align-items:center;min-height:40px;padding:4px 0;font:400 14px/1.5 var(--font-body);color:var(--vass);text-underline-offset:4px}
#cart .cart-total{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:4px 0 0;padding:22px 0 0;border-top:1px solid var(--line);font-size:18px}
#cart .cart-total strong{font-size:22px;white-space:nowrap}
body #cart .checkout-link{display:flex;box-sizing:border-box;width:100%;min-height:58px;padding:16px 20px;font-size:17px;line-height:1.4;margin:24px 0 12px;justify-content:center}
body #cart>button.button-secondary{display:flex;box-sizing:border-box;width:100%;min-height:52px;justify-content:center;margin:0;background:transparent;border:1px solid var(--line);color:var(--djup)}
@media(min-width:700px){.home-seo{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}body .site-footer[data-storefront-footer]{grid-template-columns:minmax(180px,1fr) minmax(0,1fr) minmax(0,1fr);gap:48px;padding:56px max(32px,calc((100vw - 1280px)/2))}}
@media(max-width:374px){body #cart{padding:20px}#cart .shop-item{grid-template-columns:56px minmax(0,1fr);gap:12px}#cart .shop-item>img{width:56px;height:56px}#cart .cart-item-top{flex-wrap:wrap;gap:6px}}

/* Language names retain their identity; close controls keep a 44px hit target. */
.mh-dialog-head button[data-mh-close]{border:0;border-radius:0;box-shadow:none}

/* Pointer/touch closes remain transparent; retain visible keyboard focus. */
.mh-dialog-head button[data-mh-close],.mh-dialog-head button[data-mh-close]:hover,.mh-dialog-head button[data-mh-close]:focus,.mh-dialog-head button[data-mh-close]:active{background:transparent!important;box-shadow:none!important;outline:none;-webkit-tap-highlight-color:transparent}
.mh-dialog-head button[data-mh-close]:focus-visible{outline:2px solid currentColor;outline-offset:2px}
