:root{--dm-bg:#f7f4ef;--dm-paper:#fff;--dm-ink:#171717;--dm-muted:#69645d;--dm-line:#e6e0d8;--dm-accent:#8b1e3f;--dm-accent-dark:#67162f;--dm-radius:18px;--dm-shell:1240px;--dm-shadow:0 16px 40px rgba(0,0,0,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--dm-ink);background:var(--dm-paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}.dm-shell{width:min(calc(100% - 40px),var(--dm-shell));margin-inline:auto}.dm-skip{position:absolute;left:-9999px}.dm-skip:focus{left:12px;top:12px;z-index:9999;background:#fff;padding:10px}.dm-topbar{background:#171717;color:#fff;font-size:12px;letter-spacing:.04em}.dm-topbar-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;text-align:center;padding:9px 0}.dm-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--dm-line)}.dm-header-row{min-height:86px;display:grid;grid-template-columns:230px 1fr auto;gap:28px;align-items:center}.dm-wordmark{font-family:Georgia,serif;font-size:27px;font-weight:700;letter-spacing:.02em}.dm-wordmark span{display:block;font-family:Inter,sans-serif;font-size:9px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--dm-muted);margin-top:1px}.custom-logo{max-height:62px;width:auto}.dm-search form{position:relative}.dm-search input[type=search]{width:100%;height:46px;border:1px solid var(--dm-line);border-radius:999px;padding:0 18px;background:#faf9f7;font-size:14px}.dm-search button{position:absolute;right:5px;top:5px;height:36px;border:0;border-radius:999px;background:var(--dm-ink);color:#fff;padding:0 16px}.dm-actions{display:flex;gap:18px;font-size:14px}.dm-cart-count{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:50%;background:var(--dm-accent);color:#fff;font-size:11px;margin-left:3px}.dm-nav{border-top:1px solid var(--dm-line)}.dm-menu{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:30px}.dm-menu>li>a{display:block;padding:14px 0;font-size:13px;font-weight:650;text-transform:uppercase;letter-spacing:.06em}.dm-menu>li:last-child>a{color:var(--dm-accent)}.dm-menu-toggle,.dm-mobile-nav{display:none}.dm-hero{position:relative;min-height:610px;display:flex;align-items:flex-end;background:linear-gradient(125deg,#eee7dc 0%,#d8cdc0 100%);background-image:var(--dm-hero-image,linear-gradient(125deg,#eee7dc,#d8cdc0));background-size:cover;background-position:center}.dm-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,15,15,.68) 0%,rgba(15,15,15,.38) 42%,rgba(15,15,15,.02) 78%)}.dm-hero-content{position:relative;color:#fff;padding-bottom:80px}.dm-eyebrow{font-size:11px;letter-spacing:.2em;font-weight:750;text-transform:uppercase;margin:0 0 13px;color:var(--dm-accent)}.dm-hero .dm-eyebrow{color:#fff}.dm-hero h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(50px,7vw,92px);line-height:.95;max-width:750px;margin:0 0 22px}.dm-hero p:not(.dm-eyebrow){max-width:600px;font-size:19px;margin:0 0 30px}.dm-hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.dm-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 23px;border-radius:999px;font-size:13px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;transition:.2s}.dm-btn:hover{transform:translateY(-1px)}.dm-btn-primary{background:var(--dm-accent);color:#fff}.dm-btn-primary:hover{background:var(--dm-accent-dark)}.dm-btn-secondary{background:#fff;color:#111}.dm-btn-dark{background:#171717;color:#fff}.dm-trust{border-bottom:1px solid var(--dm-line);background:#fff}.dm-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:16px 0;font-size:13px;text-align:center}.dm-section{padding:88px 0}.dm-section-head{text-align:center;max-width:690px;margin:0 auto 38px}.dm-section-head h2,.dm-store h2,.dm-finder h2{font-family:Georgia,serif;font-weight:500;font-size:clamp(34px,4vw,54px);line-height:1.08;margin:0 0 12px}.dm-section-head>p:last-child{color:var(--dm-muted)}.dm-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.dm-category-card{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:var(--dm-radius);background:#eae5de}.dm-category-card img,.dm-category-placeholder{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.dm-category-card:hover img{transform:scale(1.035)}.dm-category-card:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.66))}.dm-category-label{position:absolute;left:22px;bottom:20px;color:#fff;font-family:Georgia,serif;font-size:26px;z-index:2}.dm-products-section{background:var(--dm-bg)}.dm-head-row{max-width:none;display:flex;align-items:end;justify-content:space-between;text-align:left}.dm-head-row>div{max-width:650px}.dm-head-row>a{font-weight:700;font-size:13px}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0!important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;background:#fff;border-radius:15px;overflow:hidden;padding:0 0 18px!important}.woocommerce ul.products li.product a img{margin:0 0 15px!important;aspect-ratio:1/1.15;object-fit:cover;background:#f2f0ed}.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .button{margin-left:16px!important;margin-right:16px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px!important}.woocommerce ul.products li.product .price{color:var(--dm-ink)!important;font-weight:700!important}.woocommerce ul.products li.product .button{border-radius:999px;background:#171717;color:#fff;padding:10px 16px;font-size:12px}.dm-finder{background:var(--dm-accent);color:#fff}.dm-finder .dm-eyebrow{color:#fff}.dm-finder-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.dm-finder-inner>div{max-width:760px}.dm-finder p{font-size:17px}.dm-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.dm-guide-grid article{padding:30px;border:1px solid var(--dm-line);border-radius:var(--dm-radius);background:#fff}.dm-guide-grid article span{font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--dm-accent)}.dm-guide-grid h3{font-family:Georgia,serif;font-size:25px;line-height:1.12}.dm-guide-grid p{color:var(--dm-muted)}.dm-store{background:#171717;color:#fff}.dm-store-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:center}.dm-store .dm-eyebrow{color:#e5b7c6}.dm-store-card{background:#fff;color:#171717;border-radius:var(--dm-radius);padding:36px}.dm-store-card strong{font-family:Georgia,serif;font-size:28px}.dm-footer{background:#0d0d0d;color:#eee;padding:65px 0 20px}.dm-footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:50px}.dm-footer h3{font-size:12px;letter-spacing:.12em;text-transform:uppercase}.dm-footer a{display:block;color:#bbb;margin:7px 0}.dm-footer p{color:#aaa;max-width:330px}.dm-footer-brand{font-family:Georgia,serif;font-size:28px}.dm-footer-bottom{margin-top:45px;padding-top:18px;border-top:1px solid #272727;display:flex;justify-content:space-between;color:#777;font-size:12px}.dm-content{padding:70px 0;max-width:850px}.dm-page h1,.dm-article h1{font-family:Georgia,serif;font-size:48px}.dm-shop-layout{display:grid;grid-template-columns:250px 1fr;gap:45px;padding:50px 0}.dm-shop-sidebar{position:sticky;top:145px;align-self:start}.dm-widget{border-bottom:1px solid var(--dm-line);padding:0 0 22px;margin:0 0 22px}.dm-widget-title{font-size:14px}.woocommerce .woocommerce-breadcrumb{color:#888;font-size:12px}.woocommerce div.product{padding-bottom:70px}.woocommerce div.product .product_title{font-family:Georgia,serif;font-size:42px;line-height:1.05}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--dm-ink);font-weight:700}.woocommerce div.product form.cart .button{background:var(--dm-accent);border-radius:999px;padding:14px 28px}.woocommerce-message,.woocommerce-info{border-top-color:var(--dm-accent)}.woocommerce-message:before,.woocommerce-info:before{color:var(--dm-accent)}
@media(max-width:900px){.dm-topbar-inner{grid-template-columns:1fr 1fr}.dm-header-row{grid-template-columns:auto 1fr auto;min-height:70px;gap:12px}.dm-menu-toggle{display:block;border:0;background:none;font-size:24px}.dm-search{grid-column:1/-1;padding-bottom:12px}.dm-nav{display:none}.dm-mobile-nav{display:block;background:#fff;border-top:1px solid var(--dm-line);padding:8px 20px 20px}.dm-mobile-nav[hidden]{display:none}.dm-mobile-menu{list-style:none;padding:0;margin:0}.dm-mobile-menu a{display:block;padding:12px 0;border-bottom:1px solid var(--dm-line);font-weight:650}.dm-actions a:first-child{display:none}.dm-hero{min-height:530px}.dm-category-grid{grid-template-columns:repeat(2,1fr)}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dm-guide-grid,.dm-store-grid{grid-template-columns:1fr}.dm-finder-inner{display:block}.dm-finder .dm-btn{margin-top:15px}.dm-footer-grid{grid-template-columns:1fr 1fr}.dm-shop-layout{grid-template-columns:1fr}.dm-shop-sidebar{position:static}.dm-trust-grid{grid-template-columns:1fr 1fr;gap:8px}.dm-head-row{display:block}.dm-head-row>a{display:inline-block;margin-top:8px}}
@media(max-width:560px){.dm-shell{width:min(calc(100% - 28px),var(--dm-shell))}.dm-topbar-inner span:nth-child(n+3){display:none}.dm-topbar-inner{grid-template-columns:1fr 1fr}.dm-wordmark{font-size:22px}.dm-actions{font-size:12px}.dm-hero-content{padding-bottom:48px}.dm-hero h1{font-size:52px}.dm-hero p:not(.dm-eyebrow){font-size:16px}.dm-section{padding:62px 0}.dm-category-grid{gap:10px}.dm-category-label{font-size:20px;left:15px;bottom:14px}.woocommerce ul.products{gap:12px!important}.dm-guide-grid,.dm-footer-grid{grid-template-columns:1fr}.dm-footer-bottom{display:block}.dm-footer-bottom span{display:block;margin:4px 0}.dm-store-grid{gap:35px}.dm-trust-grid{font-size:11px}.dm-shop-layout{padding-top:30px}.woocommerce div.product .product_title{font-size:34px}}

/* v1.1 — clean modern navigation */
.dm-nav .dm-menu { display:flex; align-items:center; justify-content:center; gap:clamp(22px,2.3vw,42px); margin:0; padding:0; list-style:none; }
.dm-nav .dm-menu > li { position:relative; margin:0; padding:0; }
.dm-nav .dm-menu > li > a { display:block; padding:18px 0; white-space:nowrap; font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.dm-nav .sub-menu { position:absolute; z-index:50; top:100%; left:-18px; min-width:190px; margin:0; padding:10px 0; list-style:none; background:#fff; border:1px solid var(--dm-border,#e8e1d9); box-shadow:0 16px 35px rgba(0,0,0,.10); opacity:0; visibility:hidden; transform:translateY(8px); transition:.18s ease; }
.dm-nav .menu-item-has-children:hover > .sub-menu, .dm-nav .menu-item-has-children:focus-within > .sub-menu { opacity:1; visibility:visible; transform:translateY(0); }
.dm-nav .sub-menu a { display:block; padding:10px 18px; font-size:14px; font-weight:600; text-transform:none; letter-spacing:0; }
.dm-nav .sub-menu a:hover { background:#f7f4f1; }
@media (max-width: 980px) {
  .dm-nav { display:none; }
  .dm-mobile-menu .sub-menu { position:static; box-shadow:none; border:0; padding-left:18px; opacity:1; visibility:visible; transform:none; }
}

/* v1.2 — flexible campaign hero + smarter category presentation */
.dm-campaigns{position:relative;height:540px;overflow:hidden;background:#d9d0c5}.dm-campaign-slide{position:absolute;inset:0;display:flex;align-items:flex-end;opacity:0;visibility:hidden;transition:opacity .55s ease,visibility .55s ease;background:linear-gradient(125deg,#76716b,#ded4c7);background-image:var(--dm-slide-image,linear-gradient(125deg,#76716b,#ded4c7));background-size:cover;background-position:center}.dm-campaign-slide.is-active{opacity:1;visibility:visible;z-index:2}.dm-campaign-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,14,14,.76) 0%,rgba(14,14,14,.46) 42%,rgba(14,14,14,.08) 72%,rgba(14,14,14,.02) 100%)}.dm-campaign-content{position:relative;z-index:2;color:#fff;padding-bottom:62px}.dm-campaign-content .dm-eyebrow{color:#fff}.dm-campaign-content h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(48px,6vw,82px);line-height:.98;max-width:760px;margin:0 0 20px}.dm-campaign-content>p:not(.dm-eyebrow){max-width:610px;font-size:18px;margin:0 0 28px}.dm-slider-controls{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:5;display:flex;gap:8px;pointer-events:none}.dm-slider-dot{pointer-events:auto;width:31px;height:4px;border:0;padding:0;border-radius:999px;background:rgba(255,255,255,.48);cursor:pointer;transition:.2s}.dm-slider-dot.is-active{background:#fff;width:52px}.dm-category-card{box-shadow:0 1px 0 rgba(0,0,0,.02)}.dm-category-placeholder{background:linear-gradient(145deg,#cfc5b9,#ede7df)}.dm-category-card:before{content:"Se udvalg";position:absolute;z-index:3;right:18px;bottom:23px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;opacity:0;transform:translateY(5px);transition:.25s}.dm-category-card:hover:before{opacity:.9;transform:none}.woocommerce ul.products li.product{transition:transform .2s ease,box-shadow .2s ease}.woocommerce ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.07)}
@media(max-width:900px){.dm-campaigns{height:500px}.dm-campaign-content{padding-bottom:58px}.dm-campaign-shade{background:linear-gradient(90deg,rgba(14,14,14,.72),rgba(14,14,14,.32))}}
@media(max-width:560px){.dm-campaigns{height:470px}.dm-campaign-content{padding-bottom:56px}.dm-campaign-content h1{font-size:46px}.dm-campaign-content>p:not(.dm-eyebrow){font-size:16px;max-width:95%}.dm-slider-controls{bottom:18px}.dm-category-card:before{display:none}}
@media(prefers-reduced-motion:reduce){.dm-campaign-slide,.dm-slider-dot{transition:none}}

/* v1.3 — spacious, conversion-focused WooCommerce product page */
.single-product .dm-shop-layout{width:min(calc(100% - 64px),1360px);display:block;padding-top:42px;padding-bottom:84px}
.single-product .dm-shop-main{width:100%;min-width:0}
.single-product .woocommerce-breadcrumb{margin:0 0 26px;color:#7b766f;font-size:12px}
.single-product .woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(420px,.94fr);column-gap:clamp(48px,6vw,88px);row-gap:0;padding:0 0 40px;align-items:start}
.single-product .woocommerce div.product div.images,
.single-product .woocommerce div.product div.summary{float:none!important;width:100%!important;margin:0!important;min-width:0}
.single-product .woocommerce div.product div.images{grid-column:1;grid-row:1;position:sticky;top:160px}
.single-product .woocommerce div.product div.summary{grid-column:2;grid-row:1;padding:8px 0 0}
.single-product .woocommerce div.product .woocommerce-tabs,
.single-product .woocommerce div.product .up-sells,
.single-product .woocommerce div.product .related{grid-column:1/-1;width:100%;float:none!important;clear:both;margin-left:0;margin-right:0}
.single-product .woocommerce div.product .woocommerce-product-gallery__wrapper{margin:0;border:1px solid var(--dm-line);border-radius:20px;overflow:hidden;background:#fff}
.single-product .woocommerce div.product .woocommerce-product-gallery__image a{display:flex;align-items:center;justify-content:center;min-height:560px;background:#fbfaf8}
.single-product .woocommerce div.product .woocommerce-product-gallery__image img{width:100%;max-height:680px;object-fit:contain;margin:0!important;padding:24px}
.single-product .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 0!important;padding:0!important}
.single-product .flex-control-thumbs li{float:none!important;width:auto!important;margin:0!important;border:1px solid var(--dm-line);border-radius:10px;overflow:hidden;background:#fff}
.single-product .flex-control-thumbs img{aspect-ratio:1/1;object-fit:contain;padding:5px}
.single-product .woocommerce div.product .product_title{font-family:Georgia,serif;font-size:clamp(38px,3.4vw,58px);font-weight:500;line-height:1.02;letter-spacing:-.025em;margin:0 0 14px}
.single-product .woocommerce div.product p.price,
.single-product .woocommerce div.product span.price{font-size:24px!important;line-height:1.2;color:var(--dm-ink)!important;font-weight:750;margin:0 0 22px}
.single-product .woocommerce-product-details__short-description{font-size:16px;line-height:1.7;color:#504c47;margin-bottom:26px;max-width:590px}
.single-product .woocommerce-product-details__short-description p:last-child{margin-bottom:0}
.single-product .woocommerce div.product form.cart{margin:24px 0 0;padding:24px 0 0;border-top:1px solid var(--dm-line)}
.single-product .woocommerce div.product form.cart table.variations{margin:0 0 18px;width:100%}
.single-product .woocommerce div.product form.cart table.variations th,
.single-product .woocommerce div.product form.cart table.variations td{display:block;width:100%;padding:0;text-align:left}
.single-product .woocommerce div.product form.cart table.variations th{margin:0 0 9px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.single-product .woocommerce div.product form.cart table.variations td{margin-bottom:18px}
.single-product .woocommerce div.product form.cart select{width:100%;min-height:48px;border:1px solid #cfc8bf;border-radius:10px;background:#fff;padding:0 13px;font-size:14px}
.single-product .variable-items-wrapper,
.single-product ul.variable-items-wrapper{display:flex!important;flex-wrap:wrap;gap:8px;margin:8px 0 4px!important;padding:0!important}
.single-product .variable-item,
.single-product .button-variable-item{min-width:44px!important;height:42px!important;border:1px solid #cfc8bf!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important;margin:0!important;padding:0 10px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:13px!important;font-weight:700!important;transition:.15s ease}
.single-product .variable-item:hover,
.single-product .variable-item.selected,
.single-product .button-variable-item.selected{border-color:var(--dm-ink)!important;box-shadow:inset 0 0 0 1px var(--dm-ink)!important}
.single-product .reset_variations{display:inline-block;margin-top:8px;color:var(--dm-muted);font-size:12px;text-decoration:underline}
.single-product .single_variation_wrap{margin-top:12px}
.single-product .woocommerce-variation-availability{font-size:13px;font-weight:650;color:#37633a;margin:0 0 10px}
.single-product .woocommerce div.product form.cart .quantity{margin:0 10px 0 0!important}
.single-product .woocommerce div.product form.cart .qty{height:52px;width:70px;border:1px solid #cfc8bf;border-radius:999px;padding:0 8px;text-align:center}
.single-product .woocommerce div.product form.cart .single_add_to_cart_button,
.single-product .woocommerce div.product form.cart .button{min-height:52px!important;border-radius:999px!important;background:var(--dm-accent)!important;color:#fff!important;padding:0 30px!important;font-size:14px!important;font-weight:800!important;letter-spacing:.03em;box-shadow:none!important}
.single-product .woocommerce div.product form.cart .single_add_to_cart_button:hover{background:var(--dm-accent-dark)!important}
.single-product .product_meta{margin-top:20px;padding-top:18px;border-top:1px solid var(--dm-line);font-size:12px;color:#77716b;line-height:1.8}
.single-product .dm-product-trust{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
.single-product .dm-product-trust>div{border:1px solid var(--dm-line);border-radius:12px;padding:15px 16px;background:#fbfaf8}
.single-product .dm-product-trust strong{display:block;font-size:13px;margin-bottom:2px}
.single-product .dm-product-trust span{display:block;font-size:11px;line-height:1.4;color:var(--dm-muted)}
.single-product .woocommerce-tabs{margin-top:78px!important;border-top:1px solid var(--dm-line);padding-top:0}
.single-product .woocommerce-tabs ul.tabs{display:flex;gap:34px;padding:0!important;margin:0 0 38px!important;border-bottom:1px solid var(--dm-line)}
.single-product .woocommerce-tabs ul.tabs:before,
.single-product .woocommerce-tabs ul.tabs li:before,
.single-product .woocommerce-tabs ul.tabs li:after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li{border:0!important;background:transparent!important;border-radius:0!important;margin:0!important;padding:0!important}
.single-product .woocommerce-tabs ul.tabs li a{display:block!important;padding:22px 0 17px!important;font-size:12px!important;font-weight:800!important;letter-spacing:.08em;text-transform:uppercase;color:#777!important;border-bottom:2px solid transparent}
.single-product .woocommerce-tabs ul.tabs li.active a{color:var(--dm-ink)!important;border-bottom-color:var(--dm-accent)}
.single-product .woocommerce-Tabs-panel{max-width:900px;margin:0 0 22px!important;font-size:16px;line-height:1.8;color:#403d39}
.single-product .woocommerce-Tabs-panel h2{font-family:Georgia,serif;font-size:34px;font-weight:500;margin:0 0 22px;color:var(--dm-ink)}
.single-product .up-sells,
.single-product .related{margin-top:68px!important;padding-top:34px;border-top:1px solid var(--dm-line)}
.single-product .up-sells>h2,
.single-product .related>h2{font-family:Georgia,serif;font-size:34px;font-weight:500;margin:0 0 28px}
.single-product .woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important}
.single-product .woocommerce ul.products li.product{border:1px solid var(--dm-line);border-radius:14px;padding-bottom:17px!important;box-shadow:none}
.single-product .woocommerce ul.products li.product a img{aspect-ratio:1/1!important;object-fit:contain!important;background:#fbfaf8!important;padding:12px;margin:0 0 14px!important}
.single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14px!important;line-height:1.35;min-height:38px}
.single-product .woocommerce ul.products li.product .price{font-size:14px!important;margin-top:6px!important}
.single-product .woocommerce ul.products li.product .button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin-top:8px!important;padding:8px 14px!important;background:#171717!important;color:#fff!important}

@media(max-width:1050px){
  .single-product .woocommerce div.product{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);column-gap:42px}
  .single-product .woocommerce div.product .woocommerce-product-gallery__image a{min-height:470px}
  .single-product .dm-product-trust{grid-template-columns:1fr}
}
@media(max-width:800px){
  .single-product .dm-shop-layout{width:min(calc(100% - 28px),1360px);padding-top:26px}
  .single-product .woocommerce div.product{display:block}
  .single-product .woocommerce div.product div.images{position:static;margin-bottom:34px!important}
  .single-product .woocommerce div.product .woocommerce-product-gallery__image a{min-height:0}
  .single-product .woocommerce div.product .woocommerce-product-gallery__image img{max-height:none;padding:16px}
  .single-product .woocommerce div.product .product_title{font-size:40px}
  .single-product .woocommerce-tabs{margin-top:52px!important}
  .single-product .woocommerce-tabs ul.tabs{gap:18px;overflow-x:auto;white-space:nowrap}
  .single-product .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
}
@media(max-width:480px){
  .single-product .woocommerce div.product .product_title{font-size:34px}
  .single-product .dm-product-trust{grid-template-columns:1fr 1fr;gap:8px}
  .single-product .dm-product-trust>div{padding:12px}
  .single-product .woocommerce div.product form.cart .quantity{float:none!important;margin:0 0 10px!important}
  .single-product .woocommerce div.product form.cart .qty{width:100%}
  .single-product .woocommerce div.product form.cart .single_add_to_cart_button{float:none!important;width:100%}
  .single-product .up-sells>h2,.single-product .related>h2{font-size:28px}
}

/* v1.4 — balanced desktop product page, based on 100% browser zoom */
@media(min-width:801px){
  .single-product .dm-shop-layout{width:min(calc(100% - 56px),1220px);padding-top:34px;padding-bottom:68px}
  .single-product .woocommerce-breadcrumb{margin-bottom:20px}
  .single-product .woocommerce div.product{grid-template-columns:minmax(0,520px) minmax(390px,1fr);column-gap:clamp(44px,5vw,68px);padding-bottom:28px}
  .single-product .woocommerce div.product div.images{position:sticky;top:154px}
  .single-product .woocommerce div.product .woocommerce-product-gallery__image a{min-height:455px}
  .single-product .woocommerce div.product .woocommerce-product-gallery__image img{max-height:520px;padding:18px}
  .single-product .woocommerce div.product .product_title{font-size:clamp(38px,3vw,46px);line-height:1.04;margin-bottom:12px}
  .single-product .woocommerce div.product p.price,
  .single-product .woocommerce div.product span.price{font-size:21px!important;margin-bottom:16px}
  .single-product .woocommerce-product-details__short-description{font-size:14px;line-height:1.62;margin-bottom:18px;max-width:520px}
  .single-product .woocommerce div.product form.cart{margin-top:17px;padding-top:18px}
  .single-product .woocommerce div.product form.cart table.variations{margin-bottom:12px}
  .single-product .woocommerce div.product form.cart table.variations td{margin-bottom:12px}
  .single-product .woocommerce div.product form.cart select{min-height:44px}
  .single-product .single_variation_wrap{margin-top:8px}
  .single-product .woocommerce-variation-add-to-cart{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
  .single-product .woocommerce div.product form.cart .quantity{float:none!important;margin:0!important;flex:0 0 64px}
  .single-product .woocommerce div.product form.cart .qty{height:46px;width:64px}
  .single-product .woocommerce div.product form.cart .single_add_to_cart_button,
  .single-product .woocommerce div.product form.cart .button{min-height:46px!important;padding:0 24px!important;font-size:13px!important;float:none!important}
  .single-product .dm-product-trust{grid-template-columns:1fr;margin-top:18px;gap:0;border:1px solid var(--dm-line);border-radius:12px;overflow:hidden;background:#fbfaf8}
  .single-product .dm-product-trust>div{border:0;border-bottom:1px solid var(--dm-line);border-radius:0;padding:10px 13px;background:transparent}
  .single-product .dm-product-trust>div:last-child{border-bottom:0}
  .single-product .dm-product-trust strong{font-size:12px}
  .single-product .dm-product-trust span{font-size:10.5px}
  .single-product .product_meta{margin-top:16px;padding-top:14px;font-size:11px;line-height:1.65}
  .single-product .woocommerce-tabs{margin-top:54px!important}
  .single-product .woocommerce-tabs ul.tabs{margin-bottom:28px!important}
  .single-product .woocommerce-tabs ul.tabs li a{padding:18px 0 14px!important}
  .single-product .woocommerce-Tabs-panel{max-width:820px;font-size:15px;line-height:1.7}
  .single-product .woocommerce-Tabs-panel h2{font-size:30px;margin-bottom:18px}
  .single-product .up-sells,.single-product .related{margin-top:48px!important;padding-top:26px}
  .single-product .up-sells>h2,.single-product .related>h2{font-size:30px;margin-bottom:22px}
  .single-product .woocommerce ul.products{gap:18px!important}
  .single-product .woocommerce ul.products li.product{border-radius:12px;padding-bottom:14px!important}
  .single-product .woocommerce ul.products li.product a img{padding:10px;margin-bottom:10px!important}
  .single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px!important;min-height:35px}
  .single-product .woocommerce ul.products li.product .price{font-size:13px!important}
  .single-product .woocommerce ul.products li.product .button{min-height:34px;padding:7px 12px!important;font-size:11px}
}

/* Modern menu dropdown, used consistently across home/shop/product pages. */
.dm-menu>li{position:relative}
.dm-menu .sub-menu{position:absolute;left:-18px;top:100%;min-width:190px;list-style:none;margin:0;padding:10px;background:#fff;border:1px solid var(--dm-line);border-radius:12px;box-shadow:var(--dm-shadow);opacity:0;visibility:hidden;transform:translateY(5px);transition:.15s;z-index:150}
.dm-menu>li:hover>.sub-menu,.dm-menu>li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.dm-menu .sub-menu a{display:block;padding:9px 10px;border-radius:8px;font-size:13px}
.dm-menu .sub-menu a:hover{background:var(--dm-bg)}

/* v1.5 — product purchase form cleanup + robust modern navigation */
.single-product .dm-nav .dm-menu{display:flex!important;justify-content:center!important;gap:30px!important;list-style:none!important;margin:0!important;padding:0!important}

@media(min-width:801px){
  .single-product .woocommerce div.product form.variations_form,
  .single-product .woocommerce div.product form.cart{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
  .single-product .woocommerce div.product form.cart table.variations{height:auto!important;min-height:0!important}
  .single-product .single_variation_wrap{height:auto!important;min-height:0!important;max-height:none!important;margin:8px 0 0!important;padding:0!important;clear:both!important}
  .single-product .single_variation{height:auto!important;min-height:0!important;margin:0!important;padding:0!important}
  .single-product .woocommerce-variation-description:empty,
  .single-product .woocommerce-variation-price:empty,
  .single-product .woocommerce-variation-availability:empty{display:none!important}
  .single-product .woocommerce-variation-add-to-cart,
  .single-product .woocommerce-variation-add-to-cart-enabled{display:grid!important;grid-template-columns:68px minmax(190px,1fr)!important;gap:10px 12px!important;align-items:center!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:10px 0 0!important;padding:0!important;float:none!important;clear:both!important}
  .single-product .woocommerce-variation-add-to-cart .quantity{grid-column:1!important;float:none!important;position:static!important;inset:auto!important;margin:0!important;padding:0!important;width:68px!important;height:auto!important;min-height:0!important}
  .single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button{grid-column:2!important;float:none!important;position:static!important;inset:auto!important;margin:0!important;width:100%!important;min-width:0!important}
  .single-product .woocommerce-variation-add-to-cart input[type=hidden]{display:none!important}
  .single-product .dm-size-help{grid-column:1/-1!important;display:block!important;margin:0 0 2px!important;padding:10px 12px!important;border:1px solid var(--dm-line)!important;border-radius:10px!important;background:#fbfaf8!important;color:var(--dm-muted)!important;font-size:11.5px!important;line-height:1.45!important;position:static!important;float:none!important;width:auto!important;max-width:none!important;min-height:0!important;height:auto!important}
  .single-product .dm-size-help a{color:var(--dm-accent)!important;text-decoration:underline!important;font-weight:700!important}
  .single-product .dm-product-trust{margin-top:14px!important}
  .single-product .woocommerce-tabs{margin-top:44px!important}
  .single-product .up-sells,.single-product .related{margin-top:40px!important;padding-top:22px!important}
}


/* v1.6 — hard reset of legacy product-form geometry. This keeps WooCommerce's
   own variation logic, but removes floats/positioning inherited from legacy CSS. */
@media(min-width:801px){
  body.single-product .summary form.variations_form{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:18px 0 0!important;
    padding:0!important;
    position:static!important;
    float:none!important;
    clear:both!important;
  }
  body.single-product .summary form.variations_form > *{
    position:static!important;
    float:none!important;
    clear:none!important;
    transform:none!important;
    inset:auto!important;
  }
  body.single-product .summary form.variations_form table.variations{
    order:1!important;
    display:table!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    height:auto!important;
    min-height:0!important;
  }
  body.single-product .summary form.variations_form table.variations tbody,
  body.single-product .summary form.variations_form table.variations tr,
  body.single-product .summary form.variations_form table.variations th,
  body.single-product .summary form.variations_form table.variations td{
    height:auto!important;
    min-height:0!important;
    position:static!important;
    float:none!important;
  }
  body.single-product .summary form.variations_form .single_variation_wrap{
    order:2!important;
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    position:static!important;
    float:none!important;
    clear:none!important;
  }
  body.single-product .summary form.variations_form .single_variation{
    display:block;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    height:auto!important;
    min-height:0!important;
    position:static!important;
    float:none!important;
  }
  body.single-product .summary form.variations_form .single_variation:empty{display:none!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px 12px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    position:static!important;
    float:none!important;
    clear:none!important;
  }
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart > *{
    position:static!important;
    float:none!important;
    clear:none!important;
    transform:none!important;
    inset:auto!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .dm-size-help{
    flex:0 0 100%!important;
    order:1!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .quantity{
    flex:0 0 68px!important;
    order:2!important;
    width:68px!important;
  }
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button{
    flex:1 1 210px!important;
    order:3!important;
    width:auto!important;
    min-width:210px!important;
    border-radius:999px!important;
  }
  /* Legacy helpers sometimes come with huge margins or fixed heights. */
  body.single-product .summary form.variations_form p,
  body.single-product .summary form.variations_form div{
    max-height:none!important;
  }
  body.single-product .summary .dm-product-trust{margin-top:16px!important}
}

/* v1.7 — product-page UX polish */
@media(min-width:801px){
  body.single-product .dm-shop-layout{width:min(calc(100% - 64px),1180px);padding-top:30px;padding-bottom:60px}
  body.single-product .woocommerce div.product{grid-template-columns:minmax(0,500px) minmax(390px,1fr);column-gap:56px;align-items:start}
  body.single-product .woocommerce div.product div.images{top:148px}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image a{min-height:430px;border-radius:14px;background:#fbfaf8}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{max-height:485px;padding:16px}
  body.single-product .woocommerce div.product .product_title{font-size:42px;line-height:1.04;letter-spacing:-.02em;margin:0 0 12px}
  body.single-product .woocommerce div.product p.price,
  body.single-product .woocommerce div.product span.price{font-size:21px!important;margin:0 0 16px!important}
  body.single-product .woocommerce-product-details__short-description{max-width:500px;font-size:14px;line-height:1.65;margin-bottom:16px;color:#48443f}

  body.single-product .summary form.variations_form{gap:10px!important;margin-top:14px!important;padding-top:16px!important;border-top:1px solid var(--dm-line)}
  body.single-product .summary form.variations_form table.variations th,
  body.single-product .summary form.variations_form table.variations td{display:block!important;width:100%!important;padding:0!important;text-align:left!important}
  body.single-product .summary form.variations_form table.variations th.label{margin:0 0 7px!important}
  body.single-product .summary form.variations_form table.variations th.label label{font-size:12px!important;font-weight:800!important;letter-spacing:.04em;text-transform:uppercase;color:var(--dm-ink)}
  body.single-product .summary form.variations_form table.variations td.value{margin:0!important}
  body.single-product .summary form.variations_form select{width:100%!important;min-height:46px!important;border:1px solid #d9d3cc!important;border-radius:10px!important;padding:0 42px 0 13px!important;background-color:#fff!important;font-size:13px!important;color:var(--dm-ink)!important;box-shadow:none!important}
  body.single-product .summary form.variations_form select:focus{outline:2px solid rgba(155,31,68,.18)!important;outline-offset:1px;border-color:var(--dm-accent)!important}
  body.single-product .summary form.variations_form .reset_variations{display:inline-block!important;margin-top:7px!important;font-size:11px!important;color:var(--dm-muted)!important;text-decoration:underline!important}

  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart{display:grid!important;grid-template-columns:68px minmax(0,1fr)!important;gap:10px!important;align-items:center!important;margin-top:2px!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .dm-size-help{grid-column:1/-1!important;width:100%!important;padding:9px 11px!important;border:1px solid var(--dm-line)!important;border-radius:10px!important;background:#fbfaf8!important;font-size:11px!important;line-height:1.45!important;color:var(--dm-muted)!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .quantity{grid-column:1!important;width:68px!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .qty{width:68px!important;height:46px!important;border:1px solid #d9d3cc!important;border-radius:10px!important;text-align:center!important;background:#fff!important;font-weight:700!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button{grid-column:2!important;width:100%!important;min-width:0!important;height:46px!important;min-height:46px!important;border-radius:999px!important;font-size:13px!important;font-weight:800!important;letter-spacing:.01em!important;background:var(--dm-accent)!important;color:#fff!important;opacity:1!important;transition:transform .15s ease,background .15s ease,opacity .15s ease!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button:not(:disabled):hover{transform:translateY(-1px);background:#821938!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button:disabled,
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button{background:#d8c7cc!important;color:#fff!important;cursor:not-allowed!important;transform:none!important}

  body.single-product .dm-product-trust{margin-top:14px!important;border-radius:12px!important}
  body.single-product .dm-product-trust>div{position:relative;padding:10px 13px 10px 36px!important}
  body.single-product .dm-product-trust>div:before{content:'✓';position:absolute;left:13px;top:11px;width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f3e8eb;color:var(--dm-accent);font-size:9px;font-weight:900}
  body.single-product .dm-product-trust strong{font-size:11.5px!important;margin-bottom:2px!important}
  body.single-product .dm-product-trust span{font-size:10.5px!important}
  body.single-product .product_meta{color:#8b8781!important}

  body.single-product .woocommerce-tabs{margin-top:40px!important}
  body.single-product .woocommerce-tabs ul.tabs{margin-bottom:24px!important}
  body.single-product .woocommerce-Tabs-panel{font-size:14.5px;line-height:1.72;max-width:760px}
  body.single-product .woocommerce-Tabs-panel h2{font-size:29px;margin-bottom:16px}
  body.single-product .up-sells,body.single-product .related{margin-top:38px!important;padding-top:22px!important}
  body.single-product .up-sells>h2,body.single-product .related>h2{font-size:29px;margin-bottom:20px}
  body.single-product .woocommerce ul.products{gap:16px!important}
  body.single-product .woocommerce ul.products li.product{border-radius:12px;padding-bottom:13px!important}
  body.single-product .woocommerce ul.products li.product a img{padding:9px!important;margin-bottom:9px!important}
}

@media(max-width:800px){
  body.single-product .woocommerce div.product form.variations_form table.variations th,
  body.single-product .woocommerce div.product form.variations_form table.variations td{display:block;width:100%;padding:0}
  body.single-product .woocommerce div.product form.variations_form table.variations th{margin-bottom:6px}
  body.single-product .woocommerce div.product form.variations_form select{width:100%;min-height:46px;border-radius:10px}
  body.single-product .woocommerce div.product form.variations_form .woocommerce-variation-add-to-cart{display:grid!important;grid-template-columns:64px 1fr!important;gap:10px!important;align-items:center!important}
  body.single-product .woocommerce div.product form.variations_form .dm-size-help{grid-column:1/-1!important}
  body.single-product .woocommerce div.product form.variations_form .quantity{grid-column:1!important;width:64px!important;margin:0!important}
  body.single-product .woocommerce div.product form.variations_form .qty{width:64px!important;height:46px!important;border-radius:10px!important}
  body.single-product .woocommerce div.product form.variations_form .single_add_to_cart_button{grid-column:2!important;width:100%!important;min-height:46px!important;border-radius:999px!important;margin:0!important}
}


/* v1.8 — final product-page proportion and recommendation-card polish */
@media(min-width:801px){
  body.single-product .dm-shop-layout{width:min(calc(100% - 72px),1160px);padding-top:28px;padding-bottom:54px}
  body.single-product .woocommerce div.product{grid-template-columns:minmax(0,465px) minmax(390px,1fr);column-gap:52px}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image a{min-height:395px}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{max-height:445px;padding:14px}
  body.single-product .woocommerce div.product .product_title{font-size:39px;line-height:1.05;margin-bottom:11px}
  body.single-product .woocommerce div.product p.price,
  body.single-product .woocommerce div.product span.price{font-size:20px!important;margin-bottom:14px!important}
  body.single-product .woocommerce-product-details__short-description{font-size:13.5px;line-height:1.62;margin-bottom:13px}

  body.single-product .summary form.variations_form{margin-top:12px!important;padding-top:14px!important;gap:9px!important}
  body.single-product .summary form.variations_form select{min-height:44px!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .qty{height:44px!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button{height:44px!important;min-height:44px!important}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button:not(:disabled):not(.disabled){background:var(--dm-accent)!important;box-shadow:0 8px 20px rgba(155,31,68,.13)}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button:not(:disabled):not(.disabled):hover{background:#821938!important;box-shadow:0 10px 24px rgba(155,31,68,.18)}
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart-disabled .single_add_to_cart_button,
  body.single-product .summary form.variations_form .single_add_to_cart_button.disabled{background:#d9cdd0!important;box-shadow:none!important;opacity:1!important}

  body.single-product .yith-wcwl-add-to-wishlist{margin-top:9px!important;margin-bottom:0!important;font-size:12px!important;opacity:.82}
  body.single-product .yith-wcwl-add-to-wishlist:hover{opacity:1}
  body.single-product .dm-product-trust{margin-top:12px!important}
  body.single-product .dm-product-trust>div{padding:9px 12px 9px 34px!important}
  body.single-product .dm-product-trust>div:before{left:12px;top:10px}
  body.single-product .product_meta{font-size:10.5px!important;line-height:1.55!important;margin-top:12px!important}

  body.single-product .woocommerce-tabs{margin-top:34px!important}
  body.single-product .woocommerce-tabs ul.tabs{margin-bottom:20px!important}
  body.single-product .woocommerce-Tabs-panel{max-width:700px;font-size:14px;line-height:1.68}
  body.single-product .woocommerce-Tabs-panel h2{font-size:27px;margin-bottom:14px}

  body.single-product .up-sells,
  body.single-product .related{margin-top:32px!important;padding-top:20px!important}
  body.single-product .up-sells>h2,
  body.single-product .related>h2{font-size:27px;margin-bottom:18px}

  body.single-product .up-sells ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:860px}
  body.single-product .related ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  body.single-product .woocommerce ul.products{gap:15px!important;align-items:stretch}
  body.single-product .woocommerce ul.products li.product{display:flex!important;flex-direction:column!important;border:1px solid var(--dm-line)!important;border-radius:11px!important;padding:0 0 12px!important;overflow:hidden;background:#fff;min-width:0}
  body.single-product .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-width:0}
  body.single-product .woocommerce ul.products li.product a img{width:100%!important;height:225px!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;padding:12px!important;margin:0 0 8px!important;background:#fbfaf8!important}
  body.single-product .up-sells ul.products li.product a img{height:245px!important}
  body.single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px!important;line-height:1.32!important;min-height:0!important;margin:0 13px 6px!important;padding:0!important}
  body.single-product .woocommerce ul.products li.product .price{font-size:12.5px!important;line-height:1.35!important;margin:0 13px 8px!important;color:var(--dm-ink)!important}
  body.single-product .woocommerce ul.products li.product .button{align-self:flex-start!important;min-height:32px!important;margin:0 13px!important;padding:7px 12px!important;border-radius:999px!important;font-size:10.5px!important;line-height:1!important}
  body.single-product .woocommerce ul.products li.product .onsale{top:10px!important;right:10px!important;left:auto!important;min-width:auto!important;min-height:auto!important;padding:6px 8px!important;line-height:1!important;border-radius:999px!important;background:var(--dm-accent)!important;color:#fff!important;font-size:10px!important;font-weight:800!important}
}

@media(min-width:801px) and (max-width:1100px){
  body.single-product .woocommerce div.product{grid-template-columns:minmax(0,430px) minmax(360px,1fr);column-gap:36px}
  body.single-product .related ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

@media(max-width:800px){
  body.single-product .woocommerce ul.products li.product a img{aspect-ratio:1/1!important;object-fit:contain!important;background:#fbfaf8!important;padding:8px!important}
  body.single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{min-height:0!important}
  body.single-product .woocommerce ul.products li.product .onsale{background:var(--dm-accent)!important;color:#fff!important}
}

/* v1.9 — finish single-product recommendations and reading rhythm */
@media(min-width:801px){
  body.single-product .woocommerce-Tabs-panel{max-width:640px!important;line-height:1.7!important}

  body.single-product .up-sells,
  body.single-product .related{margin-top:28px!important;padding-top:20px!important}
  body.single-product .up-sells>h2,
  body.single-product .related>h2{font-size:26px!important;line-height:1.15!important;margin:0 0 17px!important}

  body.single-product .up-sells ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:790px!important;gap:14px!important}
  body.single-product .related ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:1040px!important;gap:14px!important}

  body.single-product .woocommerce ul.products li.product{
    display:flex!important;
    flex-direction:column!important;
    min-height:100%!important;
    border:1px solid #ece7e2!important;
    border-radius:12px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:none!important;
    padding:0 0 13px!important;
  }
  body.single-product .woocommerce ul.products li.product:hover{
    box-shadow:0 9px 24px rgba(20,18,16,.055)!important;
    transform:translateY(-1px);
    transition:box-shadow .18s ease,transform .18s ease;
  }
  body.single-product .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    display:flex!important;
    flex-direction:column!important;
    flex:1 1 auto!important;
  }
  body.single-product .woocommerce ul.products li.product a img{
    width:100%!important;
    height:198px!important;
    max-height:198px!important;
    object-fit:contain!important;
    object-position:center!important;
    padding:12px!important;
    margin:0 0 10px!important;
    background:#fbfaf8!important;
  }
  body.single-product .up-sells ul.products li.product a img{
    height:205px!important;
    max-height:205px!important;
  }
  body.single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:12.5px!important;
    line-height:1.35!important;
    min-height:34px!important;
    margin:0 13px 6px!important;
    padding:0!important;
  }
  body.single-product .woocommerce ul.products li.product .price{
    font-size:12px!important;
    line-height:1.35!important;
    min-height:18px!important;
    margin:0 13px 10px!important;
  }
  body.single-product .woocommerce ul.products li.product .button{
    align-self:flex-start!important;
    margin:0 13px!important;
    min-height:31px!important;
    padding:7px 12px!important;
    font-size:10.5px!important;
    border-radius:999px!important;
  }
  body.single-product .woocommerce ul.products li.product .onsale{
    top:9px!important;
    right:9px!important;
    padding:6px 8px!important;
    min-width:0!important;
    min-height:0!important;
    line-height:1!important;
    border-radius:999px!important;
    background:var(--dm-accent)!important;
    color:#fff!important;
    font-size:9.5px!important;
    font-weight:800!important;
  }
}

@media(min-width:801px) and (max-width:1100px){
  body.single-product .related ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:820px!important}
  body.single-product .up-sells ul.products{max-width:760px!important}
}

@media(max-width:800px){
  body.single-product .woocommerce-Tabs-panel{max-width:100%!important}
  body.single-product .woocommerce ul.products li.product a img{height:180px!important;max-height:180px!important;object-fit:contain!important;background:#fbfaf8!important}
  body.single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{min-height:0!important}
}

/* v2.0 — storefront, category discovery and shop archives */
.dm-home-heading{max-width:760px}
.dm-category-grid-v2{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.dm-category-grid-v2 .dm-category-card{aspect-ratio:1/1.12;border-radius:16px;box-shadow:none}
.dm-category-grid-v2 .dm-category-card:after{display:none}
.dm-category-grid-v2 .dm-category-overlay{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.72));z-index:1}
.dm-category-grid-v2 .dm-category-label{display:flex;flex-direction:column;gap:3px;left:18px;right:18px;bottom:16px;font-size:25px;line-height:1.05}
.dm-category-grid-v2 .dm-category-label small{font-family:Inter,ui-sans-serif,sans-serif;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.88}
.dm-category-grid-v2 .dm-category-card:before{display:none}

.dm-shop-for{padding-top:22px;background:#fff}
.dm-audience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.dm-audience-card{min-height:170px;padding:25px;border:1px solid var(--dm-line);border-radius:16px;background:linear-gradient(145deg,#fff,#faf7f3);display:flex;flex-direction:column;align-items:flex-start;transition:.2s}
.dm-audience-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(30,22,20,.055);border-color:#ddd3cb}
.dm-audience-card>span{font-family:Georgia,serif;font-size:29px;line-height:1.05}
.dm-audience-card small{margin:8px 0 auto;color:var(--dm-muted);font-size:12px;line-height:1.5}
.dm-audience-card b{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--dm-accent);margin-top:18px}

.dm-products-v2{padding-bottom:76px}
.dm-new-products{background:#fff;padding-top:76px}
.dm-products-v2 .woocommerce ul.products li.product,
.dm-new-products .woocommerce ul.products li.product{border:1px solid #ece7e2;border-radius:14px;background:#fff;box-shadow:none}
.dm-products-v2 .woocommerce ul.products li.product a img,
.dm-new-products .woocommerce ul.products li.product a img{height:255px;aspect-ratio:auto;object-fit:contain;padding:12px;background:#fbfaf8}
.dm-products-v2 .woocommerce ul.products li.product .onsale,
.dm-new-products .woocommerce ul.products li.product .onsale{background:var(--dm-accent);color:#fff;top:10px;right:10px;left:auto;border-radius:999px;min-width:0;min-height:0;line-height:1;padding:7px 9px;font-size:10px}
.dm-finder-v2{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
.dm-finder-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.dm-text-link{font-size:12px;font-weight:750;text-decoration:underline;text-underline-offset:4px}

/* Modern WooCommerce archive */
.dm-shop-archive{padding:34px 0 72px}
.dm-breadcrumbs{font-size:11px;color:var(--dm-muted);display:flex;gap:7px;align-items:center;margin-bottom:22px}
.dm-breadcrumbs a:hover{color:var(--dm-accent)}
.dm-archive-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:42px;align-items:end;border-bottom:1px solid var(--dm-line);padding:0 0 28px;margin-bottom:24px}
.dm-archive-hero>div:first-child{max-width:780px}
.dm-archive-hero h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(38px,4.6vw,62px);line-height:1.02;margin:0 0 12px}
.dm-archive-hero p:not(.dm-eyebrow){margin:0;color:var(--dm-muted);font-size:14px;line-height:1.65;max-width:720px}
.dm-archive-help{padding:18px;border:1px solid var(--dm-line);border-radius:14px;background:#fbfaf8;display:flex;flex-direction:column;gap:4px}
.dm-archive-help strong{font-family:Georgia,serif;font-size:19px}
.dm-archive-help span{font-size:11.5px;color:var(--dm-muted);line-height:1.45}
.dm-archive-help a{font-size:11px;font-weight:800;color:var(--dm-accent);margin-top:5px}
.dm-subcategory-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 28px}
.dm-subcategory-card{min-width:0;border:1px solid var(--dm-line);border-radius:12px;overflow:hidden;background:#fff;display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;transition:.18s}
.dm-subcategory-card:hover{border-color:#d8ccc4;box-shadow:0 7px 20px rgba(25,20,18,.045)}
.dm-subcategory-card img{width:72px;height:72px;object-fit:contain;background:#fbfaf8;padding:5px}
.dm-subcategory-card>span{padding:9px 10px;min-width:0;display:flex;flex-direction:column}
.dm-subcategory-card strong{font-size:11.5px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dm-subcategory-card small{font-size:9.5px;color:var(--dm-muted);margin-top:3px}
.dm-shop-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:34px;align-items:start}
.dm-shop-archive .dm-shop-sidebar{position:sticky;top:150px;align-self:start}
.dm-filter-heading{display:none}
.dm-shop-archive .dm-widget{padding-bottom:18px;margin-bottom:18px}
.dm-shop-archive .dm-widget-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px}
.dm-filter-shortcuts ul{list-style:none;margin:0;padding:0}
.dm-filter-shortcuts li+li{border-top:1px solid #eee8e3}
.dm-filter-shortcuts a{display:flex;padding:9px 0;font-size:12px;font-weight:650}
.dm-price-links{display:grid;gap:6px}
.dm-price-links a{font-size:11.5px;padding:8px 10px;border:1px solid var(--dm-line);border-radius:9px;background:#fff}
.dm-price-links a:hover{border-color:#cdbdc2;color:var(--dm-accent)}
.dm-shop-archive .dm-shop-main{min-width:0}
.dm-shop-archive .woocommerce .woocommerce-result-count{font-size:11.5px;color:var(--dm-muted);margin:10px 0 18px}
.dm-shop-archive .woocommerce .woocommerce-ordering{margin:0 0 18px}
.dm-shop-archive .woocommerce .woocommerce-ordering select{min-height:40px;border:1px solid var(--dm-line);border-radius:10px;background:#fff;padding:0 34px 0 12px;font-size:12px}
.dm-shop-archive .woocommerce ul.products{gap:16px!important}
.dm-shop-archive .woocommerce ul.products li.product{display:flex!important;flex-direction:column!important;border:1px solid #ece7e2;border-radius:13px!important;background:#fff;padding:0 0 13px!important;box-shadow:none;overflow:hidden}
.dm-shop-archive .woocommerce ul.products li.product:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(20,18,16,.055)}
.dm-shop-archive .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:flex!important;flex-direction:column!important;flex:1 1 auto!important}
.dm-shop-archive .woocommerce ul.products li.product a img{height:235px!important;aspect-ratio:auto!important;object-fit:contain!important;background:#fbfaf8!important;padding:10px!important;margin:0 0 10px!important}
.dm-shop-archive .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12.5px!important;line-height:1.35!important;margin:0 12px 6px!important;padding:0!important;min-height:34px}
.dm-shop-archive .woocommerce ul.products li.product .price{font-size:12px!important;margin:0 12px 9px!important;color:var(--dm-ink)!important}
.dm-shop-archive .woocommerce ul.products li.product .button{align-self:flex-start;margin:0 12px!important;padding:7px 12px!important;min-height:31px;border-radius:999px!important;font-size:10.5px!important;background:#171717!important;color:#fff!important}
.dm-shop-archive .woocommerce ul.products li.product .onsale{top:9px!important;right:9px!important;left:auto!important;background:var(--dm-accent)!important;color:#fff!important;min-width:0!important;min-height:0!important;padding:6px 8px!important;line-height:1!important;font-size:9.5px!important;border-radius:999px!important}
.dm-shop-archive .woocommerce nav.woocommerce-pagination{margin-top:34px}
.dm-shop-archive .woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:7px}
.dm-shop-archive .woocommerce nav.woocommerce-pagination ul li{border:0}
.dm-shop-archive .woocommerce nav.woocommerce-pagination ul li a,
.dm-shop-archive .woocommerce nav.woocommerce-pagination ul li span{display:grid;place-items:center;min-width:38px;height:38px;border:1px solid var(--dm-line);border-radius:50%;padding:0;background:#fff;color:var(--dm-ink)}
.dm-shop-archive .woocommerce nav.woocommerce-pagination ul li span.current{background:var(--dm-ink);color:#fff;border-color:var(--dm-ink)}
.dm-shop-toolbar-mobile{display:none}

@media(max-width:1100px){
  .dm-subcategory-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dm-shop-grid{grid-template-columns:190px minmax(0,1fr);gap:24px}
  .dm-shop-archive .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .dm-audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .dm-category-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dm-finder-v2{grid-template-columns:1fr}.dm-finder-actions{align-items:flex-start;margin-top:16px}
  .dm-archive-hero{grid-template-columns:1fr}.dm-archive-help{max-width:430px}
  .dm-shop-grid{display:block}.dm-shop-toolbar-mobile{display:block;margin-bottom:16px}
  .dm-filter-toggle{border:1px solid var(--dm-line);background:#fff;border-radius:999px;padding:10px 15px;font-weight:750;font-size:12px}
  .dm-shop-archive .dm-shop-sidebar{position:fixed;inset:0 auto 0 0;width:min(86vw,340px);z-index:9999;background:#fff;padding:20px;overflow:auto;transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 45px rgba(0,0,0,.12)}
  .dm-shop-archive .dm-shop-sidebar.is-open{transform:none}
  .dm-filter-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;margin-bottom:15px;border-bottom:1px solid var(--dm-line)}
  .dm-filter-close{border:0;background:none;font-size:27px;line-height:1;cursor:pointer}
  .dm-shop-archive .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .dm-category-grid-v2{gap:9px}.dm-category-grid-v2 .dm-category-label{font-size:20px;left:13px;bottom:12px}
  .dm-audience-grid{grid-template-columns:1fr 1fr;gap:9px}.dm-audience-card{min-height:145px;padding:18px}.dm-audience-card>span{font-size:24px}
  .dm-products-v2 .woocommerce ul.products li.product a img,.dm-new-products .woocommerce ul.products li.product a img{height:185px}
  .dm-subcategory-strip{display:flex;overflow:auto;gap:8px;padding-bottom:4px}.dm-subcategory-card{flex:0 0 205px}
  .dm-shop-archive{padding-top:22px}.dm-archive-hero{gap:18px}.dm-archive-hero h1{font-size:39px}.dm-archive-help{display:none}
  .dm-shop-archive .woocommerce ul.products{gap:10px!important}
  .dm-shop-archive .woocommerce ul.products li.product a img{height:170px!important}
  .dm-shop-archive .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:11.5px!important;margin-inline:10px!important;min-height:31px}
  .dm-shop-archive .woocommerce ul.products li.product .price{font-size:11px!important;margin-inline:10px!important}
  .dm-shop-archive .woocommerce ul.products li.product .button{margin-inline:10px!important;font-size:10px!important;padding:7px 10px!important}
}


/* v2.1 — intelligent catalogue curation and richer visual navigation */
.dm-audience-card.dm-audience-visual{position:relative;padding:0;overflow:hidden;min-height:230px;background:#ddd5cc;border:0;color:#fff}
.dm-audience-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.dm-audience-visual:hover img{transform:scale(1.035)}
.dm-audience-shade{position:absolute;inset:25% 0 0;background:linear-gradient(transparent,rgba(12,12,12,.75))}
.dm-audience-copy{position:absolute;z-index:2;inset:auto 22px 20px;display:flex;flex-direction:column;align-items:flex-start}
.dm-audience-copy strong{font-family:Georgia,serif;font-size:29px;line-height:1.05}
.dm-audience-copy small{margin:7px 0 9px;color:rgba(255,255,255,.86);font-size:12px}
.dm-audience-copy b{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:#fff}
.dm-filter-chips{display:flex;flex-wrap:wrap;gap:6px}
.dm-filter-chips a{display:inline-flex;align-items:center;min-height:31px;padding:5px 9px;border:1px solid var(--dm-line);border-radius:999px;background:#fff;font-size:10.5px}
.dm-filter-chips a:hover{border-color:#cdbdc2;color:var(--dm-accent)}
.dm-subcategory-card:not(:has(img)){grid-template-columns:1fr}
.dm-subcategory-card:not(:has(img))>span{min-height:72px;justify-content:center}
@media(max-width:560px){.dm-audience-card.dm-audience-visual{min-height:180px}.dm-audience-copy{inset:auto 15px 14px}.dm-audience-copy strong{font-size:24px}.dm-audience-copy small{font-size:10.5px}}


/* v2.2 — tighter catalogue filters and cleaner customer-facing shop navigation */
.dm-shop-archive .dm-shop-sidebar{font-size:11.5px}
.dm-shop-archive .dm-widget{padding-bottom:14px;margin-bottom:14px}
.dm-shop-archive .dm-widget-title{margin-bottom:9px;font-size:11px;letter-spacing:.09em}
.dm-shop-archive .dm-filter-shortcuts a{padding:7px 0;font-size:11.5px}
.dm-shop-archive .dm-price-links{display:grid;gap:6px}
.dm-shop-archive .dm-price-links a{display:block;border:1px solid var(--dm-line);border-radius:9px;padding:7px 9px;font-size:10.5px;background:#fff}
.dm-shop-archive .dm-filter-chips{gap:5px;max-height:132px;overflow:auto;padding-right:3px;scrollbar-width:thin}
.dm-shop-archive .dm-filter-chips a{min-height:27px;padding:4px 7px;font-size:9.5px;line-height:1.15;background:#fff}
.dm-shop-archive .dm-dance-type-filter .dm-filter-chips{max-height:none}
.dm-shop-archive .dm-dance-type-filter .dm-filter-chips a{font-weight:700}
.dm-shop-archive .dm-attribute-filter:nth-of-type(n+7){display:none}
.dm-subcategory-card span strong{line-height:1.15}
@media(max-width:1050px){.dm-shop-archive .dm-filter-chips{max-height:115px}}
@media(max-width:760px){.dm-shop-archive .dm-filter-chips{max-height:none;overflow:visible}.dm-shop-archive .dm-widget{padding-bottom:18px;margin-bottom:18px}}

/* v2.3 — category-aware filters and calmer archive product imagery */
body.dm-archive-shoes .dm-shop-archive .woocommerce ul.products li.product a img{
  object-fit:contain!important;
  padding:12px!important;
  background:#fff!important;
}
body.dm-archive-shoes .dm-shop-archive .woocommerce ul.products li.product{
  background:#fff!important;
}
body.dm-archive-clothing .dm-filter-kind-shoe_size,
body.dm-archive-clothing .dm-filter-kind-heel,
body.dm-archive-gymnastics .dm-filter-kind-shoe_size,
body.dm-archive-gymnastics .dm-filter-kind-heel{display:none!important}
.dm-shop-sidebar .dm-filter-kind-clothing_size .dm-filter-chips,
.dm-shop-sidebar .dm-filter-kind-shoe_size .dm-filter-chips,
.dm-shop-sidebar .dm-filter-kind-color .dm-filter-chips{
  max-height:132px;
  overflow:auto;
  padding-right:4px;
  scrollbar-width:thin;
}
.dm-shop-sidebar .dm-filter-kind-heel .dm-filter-chips,
.dm-shop-sidebar .dm-filter-kind-gender .dm-filter-chips,
.dm-shop-sidebar .dm-filter-kind-width .dm-filter-chips{max-height:none;overflow:visible}
.dm-shop-archive .woocommerce ul.products li.product a img{
  transition:transform .18s ease;
}
.dm-shop-archive .woocommerce ul.products li.product:hover a img{transform:scale(1.015)}
@media(min-width:901px){
  body.dm-archive-shoes .dm-shop-archive .woocommerce ul.products li.product a img{aspect-ratio:1/1.02!important}
  .dm-shop-sidebar{width:100%}
}

/* v2.4 — final archive-filter cleanup */
body.dm-archive-shoes .dm-filter-kind-clothing_size,
body.dm-archive-shoes .dm-filter-kind-size_generic{display:none!important}
.dm-shop-sidebar .dm-filter-kind-shoe_size .dm-filter-chips{max-height:170px}
.dm-shop-sidebar .dm-filter-kind-shoe_size .dm-widget-title{font-weight:800}
body.dm-archive-shoes .dm-shop-sidebar .dm-filter-kind-shoe_size{order:1}
body.dm-archive-shoes .dm-shop-sidebar .dm-filter-kind-heel{order:2}
body.dm-archive-shoes .dm-shop-sidebar .dm-filter-kind-width{order:3}
body.dm-archive-shoes .dm-shop-sidebar .dm-filter-kind-color{order:4}

/* v3.0 — DanseSko Finder */
.dm-finder-hero{background:#f6f1eb;border-bottom:1px solid var(--dm-line);padding:72px 0}
.dm-finder-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:70px;align-items:center}
.dm-finder-hero h1{font-family:Georgia,serif;font-size:clamp(44px,5vw,72px);line-height:.98;margin:8px 0 22px;max-width:820px}
.dm-finder-hero p{max-width:760px;font-size:16px;line-height:1.65}
.dm-finder-hero aside{border:1px solid #ded4ca;border-radius:16px;background:#fff;padding:26px}
.dm-finder-hero aside strong{font-family:Georgia,serif;font-size:22px}.dm-finder-hero aside p{font-size:13px;margin:9px 0}.dm-finder-hero aside a{font-weight:800;color:var(--dm-accent)}
.dm-finder-benefits{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;font-size:12px;font-weight:750}.dm-finder-benefits span{background:#fff;border:1px solid var(--dm-line);padding:8px 12px;border-radius:999px}
.dm-finder-workspace{padding-top:54px}.dm-shoe-finder{max-width:1040px;margin:0 auto;border:1px solid var(--dm-line);border-radius:22px;background:#fff;padding:34px 38px;box-shadow:0 18px 60px rgba(22,18,15,.06)}
.dm-finder-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:38px}.dm-finder-progress span{height:5px;border-radius:5px;background:#eee7e0;font-size:0}.dm-finder-progress span.is-active,.dm-finder-progress span.is-done{background:var(--dm-accent)}
.dm-finder-step{display:none;border:0;padding:0;margin:0}.dm-finder-step.is-active{display:block}.dm-finder-step legend{font-family:Georgia,serif;font-size:38px;line-height:1.1;width:100%;margin-bottom:28px}.dm-finder-step legend small{display:block;font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.14em;color:var(--dm-accent);font-weight:850;margin-bottom:9px}.dm-finder-step legend em{font-family:Inter,Arial,sans-serif;font-size:13px;font-style:normal;color:#777}
.dm-choice-grid{display:grid;gap:14px}.dm-choice-grid-3{grid-template-columns:repeat(3,1fr)}.dm-choice-grid-dances{grid-template-columns:repeat(3,1fr)}
.dm-choice-card{position:relative;cursor:pointer}.dm-choice-card input{position:absolute;opacity:0;pointer-events:none}.dm-choice-card span{display:flex;min-height:112px;flex-direction:column;justify-content:center;border:1px solid var(--dm-line);border-radius:15px;padding:22px;background:#fbfaf8;transition:.18s}.dm-choice-card strong{font-family:Georgia,serif;font-size:24px}.dm-choice-card small{margin-top:6px;color:#777}.dm-choice-card:hover span{border-color:#cbb9bf;transform:translateY(-1px)}.dm-choice-card input:checked+span{border-color:var(--dm-accent);box-shadow:inset 0 0 0 2px var(--dm-accent);background:#fff7f8}
.dm-chip-choice-grid{display:flex;flex-wrap:wrap;gap:9px;max-height:330px;overflow:auto;padding:2px}.dm-chip-choice-grid label{position:relative;cursor:pointer}.dm-chip-choice-grid input{position:absolute;opacity:0}.dm-chip-choice-grid span{display:flex;align-items:center;justify-content:center;min-width:52px;min-height:42px;padding:8px 14px;border:1px solid var(--dm-line);border-radius:999px;background:#fff;font-size:12px;transition:.15s}.dm-chip-choice-grid input:checked+span{background:var(--dm-ink);border-color:var(--dm-ink);color:#fff}.dm-chip-choice-grid label:hover span{border-color:#aaa}
.dm-finder-note{padding:18px;border-radius:12px;background:#f7f3ef;color:#6d625b}
.dm-finder-nav{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--dm-line);margin-top:34px;padding-top:24px}.dm-finder-nav [data-finder-submit]{display:none}.dm-finder-nav.is-last [data-finder-next]{display:none}.dm-finder-nav.is-last [data-finder-submit]{display:inline-flex}.dm-finder-nav button:disabled{opacity:.35;cursor:not-allowed}
.dm-finder-results{background:#f8f4ef}.dm-finder-product-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;margin:30px 0 0!important;padding:0!important}.dm-finder-product-grid li.product{width:auto!important;margin:0!important;background:#fff;border:1px solid var(--dm-line);border-radius:14px;overflow:hidden;padding-bottom:14px!important}.dm-finder-product-grid li.product img{height:245px!important;object-fit:contain!important;background:#fff!important;padding:12px!important}.dm-finder-product-grid li.product .woocommerce-loop-product__title,.dm-finder-product-grid li.product .price,.dm-finder-product-grid li.product .button{margin-left:14px!important;margin-right:14px!important}.dm-no-results{padding:32px 0}
@media(max-width:900px){.dm-finder-hero-grid{grid-template-columns:1fr;gap:28px}.dm-finder-hero aside{max-width:520px}.dm-choice-grid-dances{grid-template-columns:repeat(2,1fr)}.dm-finder-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.dm-finder-hero{padding:46px 0}.dm-finder-hero h1{font-size:45px}.dm-shoe-finder{padding:24px 17px;border-radius:0;border-left:0;border-right:0}.dm-finder-workspace .dm-shell{padding:0}.dm-choice-grid-3,.dm-choice-grid-dances{grid-template-columns:1fr}.dm-choice-card span{min-height:82px}.dm-finder-step legend{font-size:31px}.dm-finder-nav{justify-content:space-between}.dm-finder-nav .dm-btn{padding-inline:17px}.dm-finder-product-grid li.product img{height:190px!important}}

/* v3.2 — intelligent finder results */
.dm-match-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:28px}
.dm-match-card{background:#fff;border:1px solid var(--dm-border,#e8e0d8);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 8px 28px rgba(0,0,0,.035)}
.dm-match-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:#fff;padding:16px}
.dm-match-image img{width:100%;height:100%;object-fit:contain}
.dm-match-body{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}
.dm-match-score{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#94183d;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.dm-match-score strong{font-size:14px}.dm-match-score span{color:#766f69;text-transform:none;letter-spacing:0}
.dm-match-card h3{font-size:18px;line-height:1.2;margin:0}.dm-match-card h3 a{color:inherit;text-decoration:none}
.dm-match-price{font-weight:700}.dm-match-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}
.dm-match-tags span{font-size:12px;padding:5px 8px;border-radius:999px;background:#f7f2ed;color:#514b46}
.dm-match-card .dm-btn{margin-top:auto;align-self:flex-start}
.dm-finder-results{background:#f8f4ef}
@media(max-width:980px){.dm-match-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.dm-match-grid{grid-template-columns:1fr}.dm-match-score{align-items:flex-start;flex-direction:column;gap:2px}}

/* v3.3 — clearer match explanations and alternatives */
.dm-finder-restart{display:inline-flex;align-items:center;gap:6px;font-weight:800;text-decoration:none;color:var(--dm-ink);padding:10px 14px;border:1px solid var(--dm-line);border-radius:999px;background:#fff}
.dm-finder-restart:hover{border-color:var(--dm-accent);color:var(--dm-accent)}
.dm-match-group{margin-top:34px}.dm-match-group+.dm-match-group{margin-top:52px;padding-top:36px;border-top:1px solid var(--dm-line)}
.dm-match-group-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:16px}.dm-match-group-head h3{font-family:Georgia,serif;font-size:32px;margin:0}.dm-match-group-head p{margin:0;color:#6f6862;max-width:620px}
.dm-match-card{min-height:100%}.dm-match-body{min-height:330px}
.dm-match-score{align-items:flex-start}.dm-match-score>div{display:flex;flex-direction:column;gap:3px}.dm-match-score strong{font-size:14px}.dm-match-score em{font-style:normal;color:var(--dm-ink);font-size:11px;text-transform:none;letter-spacing:0;font-weight:700}.dm-match-score>span{white-space:nowrap;padding-top:2px}
.dm-match-top{box-shadow:0 10px 34px rgba(148,24,61,.09)}.dm-match-top .dm-match-score strong{color:#8e1238}.dm-match-strong .dm-match-score strong{color:#a03050}.dm-match-alternative .dm-match-score strong{color:#6d625b}
.dm-match-explain{display:flex;flex-direction:column;gap:6px;margin:2px 0 8px}.dm-match-explain span{display:flex;align-items:flex-start;gap:7px;font-size:12px;line-height:1.35;padding:7px 9px;border-radius:9px}.dm-match-explain b{flex:0 0 auto;width:15px;text-align:center}
.dm-match-explain .is-match{background:#f3f7f1;color:#345238}.dm-match-explain .is-match b{color:#2f7a3c}.dm-match-explain .is-miss{background:#faf4f1;color:#755c50}.dm-match-explain .is-miss b{color:#b7775f}
.dm-match-alternatives .dm-match-card{background:#fffdfa}.dm-match-alternatives .dm-match-image{background:#fffdfa}
@media(max-width:980px){.dm-match-group-head{align-items:flex-start;flex-direction:column;gap:6px}.dm-match-body{min-height:0}}
@media(max-width:620px){.dm-finder-results .dm-head-row{align-items:flex-start;flex-direction:column}.dm-finder-restart{margin-top:10px}.dm-match-group-head h3{font-size:27px}.dm-match-score>span{white-space:normal}}

/* v3.4 — finished storefront navigation + homepage polish */
.dm-nav .dm-menu{gap:clamp(16px,1.65vw,30px)}
.dm-nav .dm-menu>li>a{font-size:12px;letter-spacing:.065em}
.dm-nav .dm-has-panel{position:static}
.dm-nav .dm-menu-panel{position:absolute;left:50%;top:100%;width:min(980px,calc(100vw - 40px));transform:translate(-50%,10px);padding:0;background:#fff;border:1px solid var(--dm-line);border-radius:0 0 18px 18px;box-shadow:0 24px 55px rgba(0,0,0,.13);opacity:0;visibility:hidden;transition:.18s ease;z-index:180}
.dm-nav .dm-has-panel:hover>.dm-menu-panel,.dm-nav .dm-has-panel:focus-within>.dm-menu-panel{opacity:1;visibility:visible;transform:translate(-50%,0)}
.dm-menu-panel-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:26px}
.dm-menu-column{padding:0 18px;border-right:1px solid var(--dm-line)}
.dm-menu-column:first-child{padding-left:0}.dm-menu-column:nth-last-child(2){border-right:0}
.dm-menu-column-title{display:block!important;padding:0 0 10px!important;font-size:13px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.06em!important}
.dm-menu-column ul{list-style:none;margin:0;padding:0}.dm-menu-column li{margin:0}.dm-menu-column li a{display:block;padding:6px 0!important;font-size:13px!important;color:#555}.dm-menu-column li a:hover{color:var(--dm-accent);background:none!important}
.dm-menu-feature{border:0!important;background:#f7f3ef;border-radius:12px;padding:18px!important}.dm-menu-feature span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--dm-muted);font-weight:800}.dm-menu-feature strong{display:block;font-family:Georgia,serif;font-size:20px;line-height:1.12;margin:8px 0 12px}.dm-menu-feature a{font-weight:800!important;font-size:12px!important;color:var(--dm-accent)!important}
.dm-submenu-toggle{display:none}
.dm-home-intro{padding-top:76px}.dm-home-heading{margin-bottom:30px}.dm-shop-for{padding-top:70px}.dm-products-v2,.dm-new-products{padding-top:76px;padding-bottom:76px}
.dm-home-quicklinks{background:#fff;border-top:1px solid var(--dm-line);border-bottom:1px solid var(--dm-line)}
.dm-home-quicklinks .dm-shell{display:grid;grid-template-columns:repeat(5,1fr)}
.dm-home-quicklinks a{padding:18px 16px;text-align:center;border-right:1px solid var(--dm-line);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.dm-home-quicklinks a:first-child{border-left:1px solid var(--dm-line)}.dm-home-quicklinks a:hover{background:#faf7f4;color:var(--dm-accent)}
.dm-guide-grid article{position:relative;transition:.2s ease}.dm-guide-grid article:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.06)}
.dm-guide-grid article a{position:absolute;inset:0;z-index:2;font-size:0}
.dm-footer .dm-footer-links{list-style:none;margin:0;padding:0}
@media(max-width:1100px){.dm-nav .dm-menu{gap:15px}.dm-nav .dm-menu>li>a{font-size:11px}.dm-menu-panel-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dm-menu-feature{display:none}}
@media(max-width:900px){
  .dm-mobile-nav{max-height:calc(100vh - 70px);overflow:auto;padding:8px 20px 24px}
  .dm-mobile-menu>li{position:relative;border-bottom:1px solid var(--dm-line)}
  .dm-mobile-menu>li>a{padding-right:44px;border:0}
  .dm-mobile-menu .dm-submenu-toggle{display:block;position:absolute;right:0;top:5px;width:38px;height:38px;border:0;background:transparent;cursor:pointer}
  .dm-mobile-menu .dm-submenu-toggle:after{content:'+';font-size:22px;line-height:1}
  .dm-mobile-menu .dm-submenu-toggle[aria-expanded=true]:after{content:'–'}
  .dm-mobile-menu .dm-menu-panel{display:none;position:static!important;transform:none!important;opacity:1!important;visibility:visible!important;width:auto!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0 0 12px!important;background:#faf8f5!important}
  .dm-mobile-menu .dm-has-panel.is-open>.dm-menu-panel{display:block}
  .dm-mobile-menu .dm-menu-panel-grid{display:block;padding:12px 14px}
  .dm-mobile-menu .dm-menu-column{padding:8px 0;border:0}
  .dm-mobile-menu .dm-menu-column-title{padding:5px 0!important;font-size:12px!important}
  .dm-mobile-menu .dm-menu-column ul{padding-left:10px}
  .dm-mobile-menu .dm-menu-column li a{padding:7px 0!important;font-weight:500}
  .dm-mobile-menu .dm-menu-feature{display:block;margin-top:8px}
  .dm-home-quicklinks .dm-shell{grid-template-columns:repeat(3,1fr)}.dm-home-quicklinks a{border-bottom:1px solid var(--dm-line)}
}
@media(max-width:560px){.dm-home-quicklinks .dm-shell{grid-template-columns:1fr 1fr}.dm-home-quicklinks a{font-size:10px;padding:14px 8px}.dm-home-quicklinks a:first-child{border-left:0}}

/* ===== DanseMessen Modern v3.5 — finished header + homepage ===== */
.dm-header-row{min-height:78px;grid-template-columns:minmax(190px,230px) minmax(260px,1fr) auto}
.dm-actions{align-items:center;gap:12px}.dm-action-link{position:relative;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#222;padding:8px 5px}.dm-action-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.dm-action-link:hover{color:var(--dm-accent)}.dm-cart-count{position:absolute;top:0;right:-5px;margin:0;min-width:18px;height:18px;font-size:10px}
.dm-nav{position:relative;background:#fff}.dm-nav .dm-menu{gap:clamp(12px,1.45vw,25px)}.dm-nav .dm-menu>li>a{padding:13px 0;font-size:11.5px;white-space:nowrap}.dm-nav .dm-menu-finder>a{background:#171717;color:#fff!important;border-radius:999px;padding:8px 14px;margin:5px 0}.dm-nav .dm-menu-outlet>a{color:var(--dm-accent)!important}.dm-menu-feature p{font-size:11px;line-height:1.45;color:var(--dm-muted);margin:0 0 12px}
.dm-home-entry{background:#fff;border-bottom:1px solid var(--dm-line);padding:18px 0}.dm-home-entry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dm-home-entry-card{min-height:82px;padding:16px 18px;border:1px solid var(--dm-line);border-radius:14px;background:#fff;display:flex;flex-direction:column;justify-content:center;transition:.2s}.dm-home-entry-card span{font-family:Georgia,serif;font-size:21px;line-height:1.1}.dm-home-entry-card small{margin-top:5px;color:var(--dm-muted);font-size:11px}.dm-home-entry-card:hover{border-color:#d5c7bd;background:#fbf8f5;transform:translateY(-1px)}.dm-home-entry-guide{background:#171717;color:#fff;border-color:#171717}.dm-home-entry-guide small{color:rgba(255,255,255,.72)}.dm-home-entry-guide:hover{background:#292929;border-color:#292929}
.dm-shop-for{padding-top:68px;padding-bottom:42px}.dm-home-intro{padding-top:48px}.dm-shop-for .dm-section-head>p:last-child{max-width:620px;margin-left:auto;margin-right:auto}.dm-category-grid-v2 .dm-category-card,.dm-audience-card.dm-audience-visual{background:#ece7e1}.dm-products-section .dm-section-head{text-align:left;margin-left:0}.dm-products-section .dm-head-row{max-width:none}.dm-finder-v2{border-radius:20px}.dm-guides article{border-radius:16px}.dm-store-card{border-radius:18px}
@media(max-width:1100px){.dm-nav .dm-menu{gap:10px}.dm-nav .dm-menu>li>a{font-size:10.5px}.dm-nav .dm-menu-finder>a{padding:8px 11px}.dm-home-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.dm-header-row{grid-template-columns:auto 1fr auto;min-height:70px}.dm-brand{justify-self:start}.dm-actions .dm-action-link span{display:none}.dm-actions{gap:4px}.dm-home-entry{padding:12px 0}.dm-home-entry-card{min-height:70px}.dm-shop-for{padding-top:52px}.dm-home-intro{padding-top:38px}}
@media(max-width:560px){.dm-home-entry-grid{grid-template-columns:1fr 1fr;gap:7px}.dm-home-entry-card{padding:13px 12px;min-height:72px}.dm-home-entry-card span{font-size:18px}.dm-home-entry-card small{font-size:9.5px}.dm-shop-for{padding-bottom:28px}.dm-home-intro{padding-top:28px}}

/* ===== DanseMessen Modern v3.6 — homepage finish pass ===== */
.dm-topbar{background:var(--dm-accent);color:#fff}
.dm-topbar-inner{font-size:11px;font-weight:650;letter-spacing:.025em}
.dm-header{box-shadow:0 2px 14px rgba(22,18,15,.035)}
.dm-header-row{min-height:82px}
.dm-actions{align-items:center}
.dm-action-link{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.dm-action-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.dm-nav .dm-menu>li>a{font-weight:750}
.dm-nav .dm-menu>li:last-child>a{color:var(--dm-accent)}

.dm-campaigns{height:500px}
.dm-campaign-content{padding-bottom:68px}
.dm-campaign-content h1{font-size:clamp(52px,6.2vw,88px);max-width:650px}
.dm-campaign-content>p:not(.dm-eyebrow){font-size:17px;max-width:580px}
.dm-campaign-shade{background:linear-gradient(90deg,rgba(12,10,10,.72) 0%,rgba(12,10,10,.38) 42%,rgba(12,10,10,.06) 72%,rgba(12,10,10,0) 100%)}

.dm-trust-grid{grid-template-columns:repeat(5,1fr);gap:0;padding:0}
.dm-trust-grid span{min-height:66px;display:flex;flex-direction:column;justify-content:center;padding:11px 18px;border-right:1px solid var(--dm-line)}
.dm-trust-grid span:first-child{border-left:1px solid var(--dm-line)}
.dm-trust-grid b{font-size:12px;line-height:1.2}
.dm-trust-grid small{font-size:10px;color:var(--dm-muted);margin-top:4px}

.dm-home-entry{padding:16px 0;background:#fbfaf8}
.dm-home-entry-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.dm-home-entry-card.dm-home-entry-visual{position:relative;overflow:hidden;min-height:104px;padding:0 10px 0 18px;display:grid;grid-template-columns:1fr 48%;align-items:center;background:#fff;border:1px solid #ece6df}
.dm-home-entry-visual img{width:100%;height:92px;object-fit:contain;align-self:end;justify-self:end;mix-blend-mode:multiply}
.dm-home-entry-copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;min-width:0}
.dm-home-entry-copy strong{font-family:Georgia,serif;font-size:20px;line-height:1.05;font-weight:500}
.dm-home-entry-copy small{margin-top:5px;font-size:10px;color:var(--dm-muted)}
.dm-home-entry-copy i{margin-top:8px;font-style:normal;font-size:15px}
.dm-home-entry-visual:hover{background:#fff;box-shadow:0 10px 28px rgba(31,23,19,.06)}

.dm-shop-for{background:#faf7f3;padding-top:56px;padding-bottom:54px}
.dm-shop-for .dm-section-head{margin-bottom:28px}
.dm-home-intro{padding-top:54px;padding-bottom:66px}
.dm-audience-card.dm-audience-visual{min-height:220px}
.dm-category-grid-v2{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.dm-category-grid-v2 .dm-category-card{aspect-ratio:1.32/1;border-radius:10px}
.dm-category-grid-v2 .dm-category-label{font-size:22px;bottom:13px}

.dm-product-showcase{background:#f8f4ef;padding-top:56px;padding-bottom:60px}
.dm-product-showcase-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,.85fr);gap:28px;align-items:start}
.dm-showcase-panel{min-width:0}
.dm-showcase-panel .dm-section-head{margin:0 0 22px;text-align:left;max-width:none}
.dm-showcase-panel .dm-section-head h2{font-size:40px}
.dm-showcase-panel .dm-head-row{display:flex;align-items:flex-end}
.dm-showcase-bestsellers .woocommerce ul.products{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important}
.dm-showcase-news .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.dm-product-showcase .woocommerce ul.products li.product{border:1px solid #eee7e0;border-radius:10px;padding-bottom:12px!important;box-shadow:none}
.dm-product-showcase .woocommerce ul.products li.product a img{aspect-ratio:1/.92!important;object-fit:contain!important;background:#fff!important;margin-bottom:8px!important;padding:8px!important}
.dm-product-showcase .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12px!important;line-height:1.3!important;padding:0!important;margin-left:10px!important;margin-right:10px!important;min-height:32px}
.dm-product-showcase .woocommerce ul.products li.product .price{font-size:12px!important;margin-left:10px!important;margin-right:10px!important}
.dm-product-showcase .woocommerce ul.products li.product .button{display:block!important;text-align:center!important;background:var(--dm-accent)!important;font-size:10px!important;padding:8px 7px!important;margin:7px 10px 0!important}

.dm-finder{background:linear-gradient(100deg,#861c3c,#9e2248);padding:42px 0}
.dm-finder-v2{border-radius:0}
.dm-finder-inner{gap:50px}
.dm-finder-inner h2{font-size:44px}
.dm-finder-actions{text-align:right;min-width:260px}
.dm-finder-actions .dm-btn-dark{background:#fff;color:var(--dm-accent)}
.dm-finder-actions .dm-text-link{display:block;margin-top:10px;text-decoration:underline;font-size:12px}

.dm-guides{padding-top:54px;padding-bottom:62px}
.dm-guide-grid-v36{grid-template-columns:repeat(4,1fr);gap:12px}
.dm-guide-grid-v36 article{padding:0;overflow:hidden;display:grid;grid-template-columns:42% 58%;min-height:178px;border-radius:10px}
.dm-guide-image{min-height:178px;background:#f0ebe5}
.dm-guide-image img{width:100%;height:100%;object-fit:cover;display:block}
.dm-guide-copy{padding:18px 16px;display:flex;flex-direction:column;align-items:flex-start}
.dm-guide-grid-v36 h3{font-size:18px;margin:7px 0 7px}
.dm-guide-grid-v36 p{font-size:11px;line-height:1.45;margin:0 0 10px}
.dm-guide-grid-v36 b{margin-top:auto;color:var(--dm-accent);font-size:11px}

.dm-store{padding:52px 0}
.dm-store-grid{gap:50px}
.dm-store h2{font-size:42px}
.dm-store-card{padding:28px}

.dm-footer{padding-top:52px}
.dm-footer-grid-v36{grid-template-columns:1.35fr .8fr .9fr 1fr 1.1fr;gap:32px}
.dm-footer-tagline{display:block;color:#999;letter-spacing:.18em;font-size:9px;margin-top:1px}
.dm-footer-about p{max-width:280px}
.dm-footer-cta{font-weight:700!important;color:#fff!important;margin-top:15px!important}
.dm-footer-help{background:#fff;color:#171717;border-radius:12px;padding:22px}
.dm-footer-help h3{color:#171717}
.dm-footer-help p{color:#666;margin-top:8px}
.dm-footer-help .dm-btn{display:inline-flex;color:#fff;margin-top:8px;padding-inline:15px}

@media(max-width:1100px){
  .dm-topbar-inner span:nth-child(4){display:none}.dm-topbar-inner{grid-template-columns:repeat(3,1fr)}
  .dm-home-entry-grid{grid-template-columns:repeat(3,1fr)}
  .dm-product-showcase-grid{grid-template-columns:1fr}
  .dm-showcase-news .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .dm-guide-grid-v36{grid-template-columns:repeat(2,1fr)}
  .dm-footer-grid-v36{grid-template-columns:1.4fr repeat(2,1fr)}.dm-footer-help{grid-column:span 2}
}
@media(max-width:900px){
  .dm-campaigns{height:470px}.dm-home-entry-grid{grid-template-columns:repeat(2,1fr)}
  .dm-trust-grid{grid-template-columns:repeat(2,1fr)}.dm-trust-grid span:nth-child(5){grid-column:1/-1}.dm-trust-grid span{border-bottom:1px solid var(--dm-line)}
  .dm-category-grid-v2{grid-template-columns:repeat(2,1fr)}
  .dm-product-showcase .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dm-footer-grid-v36{grid-template-columns:1fr 1fr}.dm-footer-help{grid-column:1/-1}
}
@media(max-width:560px){
  .dm-topbar-inner span:nth-child(n+3){display:none}.dm-topbar-inner{grid-template-columns:1fr 1fr}
  .dm-campaigns{height:440px}.dm-campaign-content h1{font-size:45px}.dm-campaign-content{padding-bottom:55px}
  .dm-trust-grid span{padding:9px 8px;min-height:58px}.dm-trust-grid b{font-size:10.5px}.dm-trust-grid small{font-size:8.5px}
  .dm-home-entry-grid{grid-template-columns:1fr}.dm-home-entry-card.dm-home-entry-visual{min-height:92px}
  .dm-audience-grid{grid-template-columns:1fr 1fr}.dm-audience-card.dm-audience-visual{min-height:170px}
  .dm-category-grid-v2 .dm-category-card{aspect-ratio:1.1/1}
  .dm-product-showcase{padding-top:42px}.dm-showcase-panel .dm-section-head h2{font-size:34px}
  .dm-product-showcase .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dm-finder-inner{display:block}.dm-finder-actions{text-align:left;margin-top:20px;min-width:0}
  .dm-guide-grid-v36{grid-template-columns:1fr}.dm-guide-grid-v36 article{grid-template-columns:38% 62%}
  .dm-footer-grid-v36{grid-template-columns:1fr}.dm-footer-help{grid-column:auto}
}

/* ===== DanseMessen Modern v3.7 — visual polish from desktop/mobile QA ===== */
@media (min-width:1101px){
  .dm-header-row{min-height:86px}
  .dm-nav .dm-menu{gap:clamp(16px,1.55vw,28px)}
  .dm-nav .dm-menu>li>a{font-size:12px;letter-spacing:.055em;padding:14px 0}
  .dm-menu-panel{border-top:1px solid #eee7e0}
}

/* Give the hero a little more breathing room without making the homepage taller. */
.dm-campaign-content{max-width:760px}
.dm-campaign-content h1{text-wrap:balance}
.dm-campaign-content>p:not(.dm-eyebrow){text-wrap:pretty}

/* More consistent product cards across bestseller/news panels. */
.dm-product-showcase .woocommerce ul.products li.product{height:100%;display:flex;flex-direction:column}
.dm-product-showcase .woocommerce ul.products li.product>a:first-child{display:block}
.dm-product-showcase .woocommerce ul.products li.product .button{margin-top:auto!important}
.dm-product-showcase .woocommerce ul.products li.product .price{min-height:19px}

@media (max-width:900px){
  .dm-header{position:sticky;top:0}
  .dm-header-row{min-height:64px;padding-top:5px}
  .dm-menu-toggle{width:40px;height:40px;border:1px solid var(--dm-line);border-radius:999px;font-size:0;position:relative}
  .dm-menu-toggle:before,.dm-menu-toggle:after,.dm-menu-toggle{background:#fff}
  .dm-menu-toggle:before{content:'☰';font-size:21px;line-height:38px;position:absolute;inset:0;text-align:center;color:var(--dm-ink)}
  .dm-wordmark{font-size:24px;line-height:1}
  .dm-wordmark span{font-size:7.5px;margin-top:3px}
  .dm-search{padding-bottom:10px}
  .dm-search input[type=search]{height:42px;background:#fff}
  .dm-search button{height:32px;top:5px;right:5px;padding-inline:15px}
  .dm-actions{gap:8px}
  .dm-action-link{width:38px;height:38px;display:grid!important;place-items:center;position:relative}
  .dm-action-link svg{width:20px;height:20px}
  .dm-cart-count{position:absolute;top:-2px;right:-3px;min-width:17px;height:17px;font-size:9px}

  /* Homepage quick links become a swipeable strip instead of a long stack. */
  .dm-home-entry{padding:11px 0}
  .dm-home-entry-grid{display:flex!important;overflow-x:auto;gap:9px;scroll-snap-type:x proximity;padding-bottom:4px;scrollbar-width:none}
  .dm-home-entry-grid::-webkit-scrollbar{display:none}
  .dm-home-entry-card.dm-home-entry-visual{flex:0 0 min(76vw,300px);min-height:88px;scroll-snap-align:start}

  .dm-campaign-content{padding-bottom:48px}
  .dm-campaign-content h1{font-size:clamp(40px,11.5vw,58px);line-height:.98;max-width:12ch}
  .dm-campaign-content>p:not(.dm-eyebrow){font-size:15px;max-width:34ch}
  .dm-hero-buttons .dm-btn{min-height:44px;padding-inline:18px;font-size:11px}
  .dm-slider-controls{bottom:18px}

  .dm-section-head{margin-bottom:28px}
  .dm-shop-for,.dm-home-intro{padding-left:0;padding-right:0}
  .dm-product-showcase-grid{gap:44px}
  .dm-showcase-panel .dm-head-row{display:flex;align-items:end;justify-content:space-between;gap:10px}
  .dm-showcase-panel .dm-head-row>a{margin:0 0 4px;white-space:nowrap}
}

@media (max-width:560px){
  .dm-topbar-inner{display:flex;justify-content:center;gap:18px;white-space:nowrap;overflow:hidden;padding:7px 0}
  .dm-topbar-inner span{display:none!important}
  .dm-topbar-inner span:first-child,.dm-topbar-inner span:nth-child(2){display:inline!important;font-size:9.5px}
  .dm-header-row{grid-template-columns:42px minmax(0,1fr) auto;gap:8px}
  .dm-brand{min-width:0}
  .dm-wordmark{font-size:21px}
  .dm-actions .dm-action-link:first-child{display:none!important}
  .dm-search{grid-column:1/-1}

  .dm-campaigns{height:410px}
  .dm-campaign-slide{background-position:center center}
  .dm-campaign-content{padding-bottom:42px}
  .dm-campaign-content h1{font-size:43px;max-width:9.5ch}
  .dm-campaign-content>p:not(.dm-eyebrow){font-size:14px;line-height:1.5;margin-bottom:20px}
  .dm-hero-buttons{gap:8px}
  .dm-hero-buttons .dm-btn{min-height:42px;padding-inline:15px;font-size:10px}

  .dm-trust-grid{grid-template-columns:repeat(2,1fr)}
  .dm-trust-grid span:nth-child(5){display:none}
  .dm-home-entry-card.dm-home-entry-visual{flex-basis:78vw;grid-template-columns:1fr 42%}
  .dm-home-entry-copy strong{font-size:18px}

  .dm-shop-for{padding-top:44px}
  .dm-home-intro{padding-top:30px}
  .dm-section-head h2{font-size:36px}
  .dm-audience-grid{gap:10px}
  .dm-category-grid-v2{gap:9px}
  .dm-category-grid-v2 .dm-category-card{aspect-ratio:4/4.4}

  .dm-product-showcase{padding-top:38px;padding-bottom:46px}
  .dm-product-showcase .woocommerce ul.products{gap:10px!important}
  .dm-product-showcase .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:11px!important;min-height:30px}
  .dm-product-showcase .woocommerce ul.products li.product .button{font-size:9px!important;padding:7px 5px!important}

  .dm-finder-inner{padding-inline:4px}
  .dm-finder-actions{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
  .dm-guide-grid-v36 article{grid-template-columns:40% 60%;min-height:160px}
  .dm-guide-image{min-height:160px}
  .dm-guide-copy{padding:15px 13px}
  .dm-guide-grid-v36 h3{font-size:17px}
  .dm-footer{padding-top:42px}
}

/* ===== DanseMessen Modern v3.8 — mobile finish & balanced storefront ===== */
.dm-product-showcase-grid{align-items:start}
.dm-showcase-bestsellers .woocommerce ul.products,
.dm-showcase-news .woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important}

@media (max-width:1100px){
  .dm-showcase-bestsellers .woocommerce ul.products,
  .dm-showcase-news .woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}

@media (max-width:900px){
  .dm-showcase-bestsellers .woocommerce ul.products,
  .dm-showcase-news .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media (max-width:560px){
  /* Four products per panel = an intentional 2x2 block, avoiding a lone fifth card. */
  .dm-product-showcase-grid{gap:38px}
  .dm-showcase-panel .dm-head-row{margin-bottom:20px}
  .dm-showcase-panel .dm-head-row>div>p:last-child{font-size:12px;line-height:1.45;margin-top:4px}
  .dm-product-showcase .woocommerce ul.products li.product a img{padding:6px!important}
  .dm-product-showcase .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:11.5px!important;line-height:1.25!important;min-height:29px}
  .dm-product-showcase .woocommerce ul.products li.product .price{font-size:11.5px!important}
  .dm-product-showcase .woocommerce ul.products li.product .button{min-height:30px;display:flex!important;align-items:center;justify-content:center}

  /* Shorter, easier-to-scan footer on phones. */
  .dm-footer-grid-v36{grid-template-columns:1fr 1fr!important;gap:28px 18px}
  .dm-footer-about,.dm-footer-grid-v36>div:nth-child(4),.dm-footer-help{grid-column:1/-1}
  .dm-footer-about{padding-bottom:2px}
  .dm-footer h3{font-size:10px;margin:0 0 11px}
  .dm-footer a{font-size:11px;margin:5px 0}
  .dm-footer p{font-size:11px;line-height:1.55;margin:6px 0}
  .dm-footer-brand{font-size:25px}
  .dm-footer-help{padding:20px}
  .dm-footer-bottom{display:block;margin-top:32px;font-size:9px;line-height:1.6}
  .dm-footer-bottom span{display:block;margin-top:5px}
}

/* ===== DanseMessen Modern v3.9 — desktop balance & final homepage rhythm ===== */
@media (min-width:1101px){
  /* Use the available desktop canvas a little better without making text lines too wide. */
  :root{--dm-shell:1320px}
  .dm-header-row{grid-template-columns:245px minmax(420px,1fr) auto}
  .dm-campaign-content{max-width:820px}
  .dm-campaign-content h1{max-width:12ch}

  /* Bestseller / news now have equal visual weight. In v3.8 the news cards became too small. */
  .dm-product-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px}
  .dm-showcase-bestsellers .woocommerce ul.products,
  .dm-showcase-news .woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
  .dm-product-showcase .woocommerce ul.products li.product a img{min-height:138px}
  .dm-product-showcase .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12.5px!important;min-height:34px}
  .dm-product-showcase .woocommerce ul.products li.product .price{font-size:12.5px!important}
  .dm-product-showcase .woocommerce ul.products li.product .button{font-size:10.5px!important;min-height:32px}

  /* Keep the lower page visually aligned with the stronger product area. */
  .dm-guide-grid-v36{gap:14px}
  .dm-guide-grid-v36 article{min-height:188px}
  .dm-guide-image{min-height:188px}
  .dm-store-grid{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr)}
}

@media (min-width:1400px){
  :root{--dm-shell:1380px}
  .dm-product-showcase-grid{gap:44px}
}

@media (max-width:900px){
  /* Keep the two product sections clearly separated on touch devices. */
  .dm-showcase-panel + .dm-showcase-panel{padding-top:2px}
}

@media (max-width:560px){
  /* Final small-screen rhythm: slightly less empty space between the large discovery blocks. */
  .dm-shop-for{padding-bottom:46px}
  .dm-home-intro{padding-bottom:50px}
  .dm-product-showcase-grid{gap:34px}
  .dm-finder{padding:36px 0}
  .dm-guides{padding-top:46px;padding-bottom:50px}
  .dm-store{padding:44px 0}
}


/* v4.0 — finished navigation and mega menu */
.dm-nav .dm-menu-finder>a{background:var(--dm-accent);color:#fff!important;border-radius:999px;padding:8px 14px!important;margin:5px 0;box-shadow:0 6px 16px rgba(151,25,66,.18)}
.dm-nav .dm-menu-finder>a:hover{background:var(--dm-accent-dark);transform:translateY(-1px)}
.dm-menu-panel-grid{align-items:start}.dm-menu-column{padding:2px 16px 4px;border-right:1px solid #eee8e2;min-height:130px}.dm-menu-column:last-child{border-right:0}.dm-menu-column-title{display:block;font-size:13px!important;font-weight:800!important;letter-spacing:.02em;margin:0 0 8px;color:#171717!important}.dm-menu-column ul{list-style:none;margin:0;padding:0}.dm-menu-column li a{display:block;padding:6px 0!important;font-size:12.5px!important;font-weight:500!important;color:#5c5650!important}.dm-menu-column li a:hover{color:var(--dm-accent)!important;background:transparent!important}.dm-menu-feature{background:#f8f4f1;border-radius:12px;padding:18px!important;border-right:0!important}.dm-menu-feature span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--dm-accent);font-weight:800;margin-bottom:5px}.dm-menu-feature strong{display:block;font-family:Georgia,serif;font-size:19px;line-height:1.15;margin-bottom:7px}.dm-menu-feature>a{display:inline-block!important;padding:0!important;color:var(--dm-accent)!important;font-weight:750!important}.dm-menu-panel-small{width:min(860px,calc(100vw - 40px))!important}.dm-brand-panel-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.dm-brand-link a{display:block;padding:12px 14px!important;border:1px solid var(--dm-line);border-radius:10px;font-size:13px!important;font-weight:700!important;background:#fff}.dm-brand-link a:hover{border-color:#d4c3c8;background:#fbf7f8!important;color:var(--dm-accent)!important}.dm-guide-panel-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
@media(max-width:1100px){.dm-nav .dm-menu-finder{display:none}.dm-brand-panel-grid,.dm-guide-panel-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:900px){.dm-mobile-menu .dm-menu-finder{display:block}.dm-mobile-menu .dm-menu-finder>a{margin:12px 0 4px;background:var(--dm-accent);color:#fff!important;border-radius:999px;text-align:center;padding:12px 16px!important}.dm-mobile-menu .dm-menu-column{min-height:0;border:0}.dm-mobile-menu .dm-brand-panel-grid,.dm-mobile-menu .dm-guide-panel-grid{display:block!important}.dm-mobile-menu .dm-brand-link a{margin:6px 0;border-bottom:1px solid var(--dm-line)!important}.dm-mobile-menu .dm-menu-feature{padding:14px!important}.dm-mobile-menu .dm-menu-feature>a{border:0!important}}
\n\n/* v4.1 — mega-menu polish: proportional panels and useful simple columns */\n@media(min-width:1101px){\n  .dm-nav .dm-menu-panel-cols-2{width:min(560px,calc(100vw - 40px))!important}\n  .dm-nav .dm-menu-panel-cols-3{width:min(720px,calc(100vw - 40px))!important}\n  .dm-nav .dm-menu-panel-cols-4{width:min(900px,calc(100vw - 40px))!important}\n  .dm-nav .dm-menu-panel-cols-5{width:min(1040px,calc(100vw - 40px))!important}\n  .dm-menu-panel-cols-2 .dm-menu-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}\n  .dm-menu-panel-cols-3 .dm-menu-panel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}\n  .dm-menu-panel-cols-4 .dm-menu-panel-grid{grid-template-columns:repeat(4,minmax(0,1fr))}\n  .dm-menu-panel-cols-5 .dm-menu-panel-grid{grid-template-columns:repeat(5,minmax(0,1fr))}\n}\n.dm-menu-column-simple{min-height:130px}\n.dm-menu-column-copy{margin:0 0 10px;color:#77706a;font-size:11.5px;line-height:1.45;max-width:150px}\n.dm-menu-column-more{display:inline-block!important;padding:0!important;color:var(--dm-accent)!important;font-size:11.5px!important;font-weight:750!important}\n.dm-menu-column-more:hover{background:transparent!important;text-decoration:underline}\n.dm-brand-panel-grid:not(:has(.dm-brand-link)){grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)!important}\n@media(max-width:1100px) and (min-width:901px){\n  .dm-nav .dm-menu-panel{width:min(900px,calc(100vw - 28px))}\n  .dm-menu-column{padding-left:13px;padding-right:13px}\n}\n@media(max-width:900px){\n  .dm-mobile-menu .dm-menu-column-copy{max-width:none;margin:0 0 7px}\n  .dm-mobile-menu .dm-menu-column-more{padding:2px 0 7px!important}\n}\n

/* ===== DanseMessen Modern v4.2 — premium shop/category archives ===== */
.dm-shop-archive{padding-top:30px}
.dm-shop-archive .dm-breadcrumbs{margin-bottom:18px}
.dm-archive-hero{background:linear-gradient(135deg,#fbf8f4 0%,#fff 72%);border:1px solid #eee6df;border-radius:18px;padding:28px 30px;margin-bottom:18px;align-items:center}
.dm-archive-hero h1{font-size:clamp(40px,4vw,58px);letter-spacing:-.02em}
.dm-archive-hero .dm-eyebrow{margin-bottom:8px}
.dm-archive-help{background:#fff;border-color:#e8ddd5;box-shadow:0 10px 28px rgba(42,31,25,.035)}
.dm-archive-help strong{font-size:20px;line-height:1.12}
.dm-subcategory-strip{margin-bottom:24px}
.dm-subcategory-card{min-height:76px}
.dm-shop-grid{grid-template-columns:230px minmax(0,1fr);gap:30px}
.dm-shop-archive .dm-shop-sidebar{top:138px;background:#fbfaf8;border:1px solid #eee7e0;border-radius:15px;padding:17px 16px}
.dm-shop-archive .dm-shop-sidebar .dm-widget:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}
.dm-shop-archive .dm-shop-main{background:#fff;min-width:0}

.dm-catalog-toolbar{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #eee7e1;margin-bottom:12px;padding:0 0 12px}
.dm-catalog-toolbar .woocommerce-result-count,.dm-catalog-toolbar .woocommerce-ordering{float:none!important;margin:0!important}
.dm-catalog-toolbar .woocommerce-result-count{font-size:12px!important;color:#756d67!important}
.dm-catalog-order{margin-left:auto}
.dm-catalog-toolbar .woocommerce-ordering select{height:38px!important;min-height:38px!important;border-radius:999px!important;padding-left:14px!important;padding-right:36px!important;background:#fbfaf8!important;font-size:11.5px!important;cursor:pointer}
.dm-active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:0 0 17px;padding:0 0 14px;border-bottom:1px solid #f0ebe6}
.dm-active-filters-label{font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:800;color:#8b817a;margin-right:2px}
.dm-active-filter{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:5px 7px 5px 10px;border-radius:999px;background:#f6eef1;color:#7f1839;font-size:10.5px;font-weight:700}
.dm-active-filter b{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#fff;font-size:13px;line-height:1}
.dm-clear-filters{font-size:10.5px;font-weight:750;text-decoration:underline;text-underline-offset:3px;margin-left:3px;color:#625b56}
.dm-shop-archive .woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:13px!important}
.dm-shop-archive .woocommerce ul.products li.product{border-color:#eee8e2!important;border-radius:12px!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.dm-shop-archive .woocommerce ul.products li.product:hover{border-color:#ddcfd3!important;box-shadow:0 12px 30px rgba(24,18,15,.07)}
.dm-shop-archive .woocommerce ul.products li.product a img{height:210px!important;padding:12px!important;background:#fff!important}
.dm-shop-archive .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:12px!important;min-height:33px;margin-inline:11px!important}
.dm-shop-archive .woocommerce ul.products li.product .price{font-size:11.5px!important;margin-inline:11px!important}
.dm-shop-archive .woocommerce ul.products li.product .button{margin-inline:11px!important;background:var(--dm-accent)!important;font-size:10px!important;min-height:30px;display:flex!important;align-items:center;justify-content:center}
.dm-shop-archive .woocommerce ul.products li.product .button:hover{background:var(--dm-accent-dark)!important}
.dm-shop-archive .woocommerce nav.woocommerce-pagination{padding-top:8px}

@media(max-width:1200px) and (min-width:901px){
  .dm-shop-grid{grid-template-columns:205px minmax(0,1fr);gap:22px}
  .dm-shop-archive .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .dm-shop-archive .woocommerce ul.products li.product a img{height:205px!important}
}
@media(max-width:900px){
  .dm-archive-hero{padding:23px 22px;border-radius:15px}
  .dm-shop-toolbar-mobile{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px}
  .dm-filter-toggle{background:#171717;color:#fff;border-color:#171717}
  .dm-catalog-toolbar{min-height:46px}
  .dm-shop-archive .dm-shop-sidebar{border-radius:0;border:0;top:0}
}
@media(max-width:560px){
  .dm-shop-archive{padding-top:16px}
  .dm-archive-hero{padding:20px 17px;margin-bottom:14px}
  .dm-archive-hero h1{font-size:34px;margin-bottom:8px}
  .dm-archive-hero p:not(.dm-eyebrow){font-size:12px;line-height:1.55}
  .dm-subcategory-card{flex-basis:185px;grid-template-columns:62px minmax(0,1fr);min-height:68px}
  .dm-subcategory-card img{width:62px;height:68px}
  .dm-catalog-toolbar{align-items:center;gap:8px;padding-bottom:10px;margin-bottom:9px}
  .dm-catalog-toolbar .woocommerce-result-count{font-size:10.5px!important;max-width:48%;line-height:1.25}
  .dm-catalog-toolbar .woocommerce-ordering select{max-width:145px;height:34px!important;min-height:34px!important;font-size:10px!important;padding-left:10px!important}
  .dm-active-filters{gap:5px;margin-bottom:12px;padding-bottom:11px}
  .dm-active-filter{font-size:9.5px;min-height:27px;padding-left:8px}
  .dm-shop-archive .woocommerce ul.products{gap:8px!important}
  .dm-shop-archive .woocommerce ul.products li.product a img{height:158px!important;padding:7px!important}
  .dm-shop-archive .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:10.5px!important;line-height:1.25!important;min-height:27px;margin:0 8px 5px!important}
  .dm-shop-archive .woocommerce ul.products li.product .price{font-size:10.5px!important;margin:0 8px 7px!important}
  .dm-shop-archive .woocommerce ul.products li.product .button{margin:0 8px!important;font-size:9px!important;padding:6px 7px!important;min-height:28px}
}

/* v4.3 — catalogue width, stronger sidebar and mobile filter toolbar */
@media(min-width:1180px){
  .dm-shop-archive{width:min(calc(100% - 56px),1480px)!important}
  .dm-shop-grid{grid-template-columns:250px minmax(0,1fr);gap:30px}
  .dm-shop-archive .woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important}
  .dm-shop-archive .woocommerce ul.products li.product a img{height:260px!important}
}
.dm-shop-archive .dm-shop-sidebar{
  background:#fbfaf8;
  border:1px solid #ece5df;
  border-radius:16px;
  padding:17px 16px;
}
.dm-shop-archive .dm-shop-sidebar .dm-widget{padding-bottom:15px;margin-bottom:15px}
.dm-shop-archive .dm-shop-sidebar .dm-widget:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.dm-shop-archive .dm-shop-sidebar{font-size:12.5px}
.dm-shop-archive .dm-shop-sidebar .dm-widget-title{font-size:11.5px;margin-bottom:10px}
.dm-shop-archive .dm-price-links a{background:#fff}
.dm-shop-archive .woocommerce ul.products li.product{border-color:#e8e1da!important}
.dm-shop-archive .woocommerce ul.products li.product a img{background:#fcfbf9!important}

@media(max-width:900px){
  .dm-shop-toolbar-mobile{display:flex!important;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 16px!important;position:relative;z-index:2}
  .dm-filter-toggle{display:inline-flex!important;align-items:center;justify-content:center;min-height:40px;padding:0 16px!important;background:var(--dm-ink)!important;color:#fff!important;border-color:var(--dm-ink)!important}
  .dm-shop-archive .dm-shop-sidebar{border-radius:0;border:0;padding:20px!important;background:#fff}
  .dm-shop-archive .woocommerce .woocommerce-result-count{float:none!important;margin:0 0 10px!important}
  .dm-shop-archive .woocommerce .woocommerce-ordering{float:none!important;margin:0 0 16px!important;width:100%}
  .dm-shop-archive .woocommerce .woocommerce-ordering select{width:100%;min-height:42px}
}
@media(max-width:560px){
  .dm-shop-archive{width:min(calc(100% - 22px),var(--dm-shell))!important}
  .dm-breadcrumbs{margin-bottom:14px}
  .dm-archive-hero{padding-bottom:18px;margin-bottom:16px}
  .dm-archive-hero h1{font-size:34px}
  .dm-archive-hero p:not(.dm-eyebrow){font-size:12.5px;line-height:1.55}
  .dm-shop-archive .woocommerce ul.products{gap:9px!important}
  .dm-shop-archive .woocommerce ul.products li.product{border-radius:11px!important;padding-bottom:11px!important}
  .dm-shop-archive .woocommerce ul.products li.product a img{height:165px!important;padding:7px!important;margin-bottom:8px!important}
  .dm-shop-archive .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:11px!important;line-height:1.3!important;min-height:29px;margin:0 9px 5px!important}
  .dm-shop-archive .woocommerce ul.products li.product .price{font-size:10.5px!important;margin:0 9px 8px!important}
  .dm-shop-archive .woocommerce ul.products li.product .button{display:block!important;text-align:center!important;margin:0 9px!important;font-size:9.5px!important;padding:7px 6px!important;min-height:30px}
}

/* ===== DanseMessen Modern v4.4 — polished catalogue cards & mobile shopping controls ===== */
.dm-shop-archive .woocommerce ul.products li.product{
  display:flex!important;
  flex-direction:column;
  height:100%;
  background:#fff!important;
  border:1px solid #e9e2dc!important;
  box-shadow:0 1px 0 rgba(30,22,18,.02);
  overflow:hidden;
}
.dm-shop-archive .woocommerce ul.products li.product>a:first-child{
  display:block;
  position:relative;
}
.dm-shop-archive .woocommerce ul.products li.product a img{
  width:100%!important;
  object-fit:contain!important;
  border-bottom:1px solid #f1ebe6;
  margin-bottom:12px!important;
  transition:transform .22s ease;
}
.dm-shop-archive .woocommerce ul.products li.product:hover a img{transform:scale(1.018)}
.dm-shop-archive .woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-weight:650!important;
  color:#231f1c!important;
  margin-top:0!important;
}
.dm-shop-archive .woocommerce ul.products li.product .price{
  margin-top:auto!important;
  padding-top:2px;
  color:#231f1c!important;
}
.dm-shop-archive .woocommerce ul.products li.product .button{
  width:calc(100% - 22px)!important;
  margin:8px 11px 0!important;
  border-radius:999px!important;
  background:var(--dm-accent)!important;
  color:#fff!important;
  font-weight:750!important;
  letter-spacing:.015em;
  text-align:center!important;
  box-shadow:none!important;
}
.dm-shop-archive .woocommerce ul.products li.product .button:hover{
  background:var(--dm-accent-dark)!important;
  color:#fff!important;
}
.dm-shop-archive .woocommerce ul.products li.product .star-rating{margin-left:11px!important;margin-right:11px!important}

/* Better visual rhythm in the catalogue intro/toolbar. */
.dm-shop-main .term-description,
.dm-shop-main>.woocommerce-products-header__description{
  color:#5f5752;
  font-size:13px;
  line-height:1.65;
  max-width:980px;
}
.dm-catalog-toolbar{
  background:#fbfaf8;
  border:1px solid #eee7e1;
  border-radius:12px;
  padding:9px 11px!important;
  margin:12px 0 18px!important;
  min-height:50px;
}
.dm-catalog-toolbar .woocommerce-ordering select{background:#fff!important;border-color:#dfd7d0!important}

@media(min-width:1500px){
  .dm-shop-grid{grid-template-columns:255px minmax(0,1fr);gap:34px}
  .dm-shop-archive .woocommerce ul.products{gap:22px!important}
  .dm-shop-archive .woocommerce ul.products li.product a img{height:270px!important}
}

@media(max-width:900px){
  .dm-shop-toolbar-mobile{
    position:sticky;
    top:70px;
    z-index:45;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(10px);
    margin-left:-11px!important;
    margin-right:-11px!important;
    padding:8px 11px!important;
    border-top:1px solid #f0ebe6;
    border-bottom:1px solid #e9e2dc;
  }
  .dm-filter-toggle{width:100%;font-size:11px!important;letter-spacing:.03em}
  .dm-catalog-toolbar{border-radius:10px;margin-top:8px!important}
}

@media(max-width:560px){
  .dm-shop-archive .woocommerce ul.products li.product{
    padding-bottom:10px!important;
    box-shadow:0 4px 14px rgba(25,19,16,.035);
  }
  .dm-shop-archive .woocommerce ul.products li.product a img{
    height:154px!important;
    background:#fbfaf8!important;
  }
  .dm-shop-archive .woocommerce ul.products li.product .button{
    width:calc(100% - 16px)!important;
    margin:6px 8px 0!important;
    background:var(--dm-accent)!important;
  }
  .dm-catalog-toolbar{padding:8px!important;gap:7px}
  .dm-catalog-toolbar .woocommerce-result-count{max-width:42%;font-size:10px!important}
  .dm-catalog-toolbar .woocommerce-ordering{flex:1;min-width:0}
  .dm-catalog-toolbar .woocommerce-ordering select{max-width:none!important;width:100%!important}
}

/* ===== DanseMessen Modern v4.5 — premium single-product page ===== */
body.single-product .dm-shop-layout{
  width:min(calc(100% - 72px),1380px);
  padding-top:34px;
  padding-bottom:72px;
}
body.single-product .woocommerce div.product{
  grid-template-columns:minmax(0,610px) minmax(430px,1fr);
  column-gap:clamp(58px,6vw,96px);
}
body.single-product .woocommerce div.product div.images{top:152px}
body.single-product .woocommerce div.product .woocommerce-product-gallery__wrapper{
  border:1px solid #ece7e2;
  border-radius:18px;
  box-shadow:0 10px 34px rgba(24,19,15,.035);
}
body.single-product .woocommerce div.product .woocommerce-product-gallery__image a{
  min-height:520px;
  background:#fbfaf8;
}
body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{
  max-height:590px;
  padding:24px;
}
body.single-product .flex-control-thumbs{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
  margin-top:11px!important;
}
body.single-product .flex-control-thumbs li{
  border-color:#e6e0da;
  border-radius:11px;
  transition:border-color .15s ease,box-shadow .15s ease;
}
body.single-product .flex-control-thumbs li:hover{border-color:#b9afa5;box-shadow:0 4px 14px rgba(25,20,16,.05)}
body.single-product .summary{max-width:560px}
body.single-product .woocommerce div.product .product_title{
  font-size:clamp(42px,3.2vw,54px);
  line-height:1.02;
  margin-bottom:14px;
}
body.single-product .woocommerce div.product p.price,
body.single-product .woocommerce div.product span.price{font-size:23px!important;margin-bottom:18px!important}
body.single-product .woocommerce-product-details__short-description{
  font-size:15px;
  line-height:1.72;
  max-width:540px;
  margin-bottom:18px;
}
body.single-product .summary form.variations_form{
  margin-top:18px!important;
  padding-top:18px!important;
  border-top:1px solid #ece7e2!important;
}
body.single-product .summary form.variations_form table.variations th.label label{
  font-size:11.5px!important;
  letter-spacing:.08em;
}
body.single-product .summary form.variations_form select{min-height:48px!important;border-radius:12px!important}
body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart{
  grid-template-columns:76px minmax(0,1fr)!important;
  gap:11px!important;
}
body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .quantity,
body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .qty{width:76px!important}
body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .qty{height:48px!important;border-radius:12px!important}
body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button{
  min-height:48px!important;
  height:48px!important;
  background:var(--dm-accent)!important;
  box-shadow:0 9px 24px rgba(155,31,68,.14)!important;
}
body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button:not(:disabled):not(.disabled):hover{
  background:#821938!important;
  box-shadow:0 12px 28px rgba(155,31,68,.2)!important;
}
body.single-product .dm-product-trust{
  margin-top:16px!important;
  border:1px solid #e9e3dd!important;
  border-radius:14px!important;
  overflow:hidden;
  background:#fbfaf8;
}
body.single-product .dm-product-trust>div{padding:12px 14px 12px 39px!important}
body.single-product .dm-product-trust>div:before{left:14px;top:13px}
body.single-product .dm-product-trust strong{font-size:12px!important}
body.single-product .dm-product-trust span{font-size:11px!important;line-height:1.45!important}
body.single-product .woocommerce-tabs{
  margin-top:56px!important;
  padding-top:0!important;
}
body.single-product .woocommerce-tabs ul.tabs{margin-bottom:30px!important}
body.single-product .woocommerce-Tabs-panel{
  max-width:840px!important;
  font-size:15px!important;
  line-height:1.78!important;
}
body.single-product .woocommerce-Tabs-panel h2{font-size:31px!important}
body.single-product .up-sells,
body.single-product .related{
  margin-top:48px!important;
  padding-top:30px!important;
}
body.single-product .up-sells>h2,
body.single-product .related>h2{font-size:31px!important;margin-bottom:22px!important}
body.single-product .up-sells ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:900px!important}
body.single-product .related ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:none!important}
body.single-product .woocommerce ul.products li.product{border-radius:14px!important}
body.single-product .woocommerce ul.products li.product a img{height:235px!important;max-height:235px!important;padding:14px!important}
body.single-product .up-sells ul.products li.product a img{height:245px!important;max-height:245px!important}
body.single-product .woocommerce ul.products li.product .button{
  background:var(--dm-accent)!important;
  color:#fff!important;
  border-radius:999px!important;
}

@media(min-width:801px) and (max-width:1180px){
  body.single-product .dm-shop-layout{width:min(calc(100% - 48px),1120px)}
  body.single-product .woocommerce div.product{grid-template-columns:minmax(0,500px) minmax(390px,1fr);column-gap:44px}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image a{min-height:445px}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{max-height:505px;padding:18px}
}

@media(max-width:800px){
  body.single-product .dm-shop-layout{width:min(calc(100% - 24px),100%);padding-top:18px;padding-bottom:46px}
  body.single-product .woocommerce-breadcrumb{margin-bottom:15px;font-size:10px}
  body.single-product .woocommerce div.product div.images{margin-bottom:22px!important}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__wrapper{border-radius:14px;box-shadow:none}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image a{min-height:350px}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{width:100%!important;max-height:430px!important;padding:12px!important}
  body.single-product .flex-control-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:8px!important}
  body.single-product .woocommerce div.product .product_title{font-size:32px!important;line-height:1.05;margin-bottom:10px}
  body.single-product .woocommerce div.product p.price,
  body.single-product .woocommerce div.product span.price{font-size:20px!important;margin-bottom:12px!important}
  body.single-product .woocommerce-product-details__short-description{font-size:13.5px;line-height:1.65;margin-bottom:14px}
  body.single-product .summary form.variations_form{margin-top:14px!important;padding-top:14px!important}
  body.single-product .woocommerce div.product form.variations_form .woocommerce-variation-add-to-cart{grid-template-columns:62px minmax(0,1fr)!important;gap:9px!important}
  body.single-product .woocommerce div.product form.variations_form .quantity,
  body.single-product .woocommerce div.product form.variations_form .qty{width:62px!important}
  body.single-product .woocommerce div.product form.variations_form .qty{height:46px!important}
  body.single-product .woocommerce div.product form.variations_form .single_add_to_cart_button{min-height:46px!important;height:46px!important}
  body.single-product .dm-product-trust{grid-template-columns:1fr!important;margin-top:14px!important}
  body.single-product .dm-product-trust>div{padding:10px 12px 10px 35px!important}
  body.single-product .dm-product-trust>div:before{left:12px;top:11px}
  body.single-product .woocommerce-tabs{margin-top:38px!important}
  body.single-product .woocommerce-tabs ul.tabs{gap:20px;margin-bottom:20px!important}
  body.single-product .woocommerce-tabs ul.tabs li a{font-size:10.5px!important;padding:16px 0 12px!important}
  body.single-product .woocommerce-Tabs-panel{font-size:14px!important;line-height:1.72!important}
  body.single-product .woocommerce-Tabs-panel h2{font-size:27px!important}
  body.single-product .up-sells,
  body.single-product .related{margin-top:34px!important;padding-top:22px!important}
  body.single-product .up-sells>h2,
  body.single-product .related>h2{font-size:27px!important;margin-bottom:16px!important}
  body.single-product .up-sells ul.products,
  body.single-product .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:none!important;gap:10px!important}
  body.single-product .woocommerce ul.products li.product a img{height:auto!important;max-height:none!important;aspect-ratio:1/1!important;padding:8px!important}
  body.single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:11.5px!important;min-height:31px!important;margin:0 10px 5px!important}
  body.single-product .woocommerce ul.products li.product .price{font-size:11px!important;margin:0 10px 7px!important}
  body.single-product .woocommerce ul.products li.product .button{margin:0 10px!important;padding:7px 10px!important;font-size:9.5px!important;min-height:30px!important}
}

/* ===== DanseMessen Modern v4.6 — final product-page balance ===== */
@media(min-width:801px){
  body.single-product .dm-shop-layout{
    width:min(calc(100% - 64px),1460px);
    padding-top:30px;
    padding-bottom:78px;
  }
  body.single-product .woocommerce div.product{
    grid-template-columns:minmax(0,650px) minmax(430px,560px);
    justify-content:center;
    column-gap:clamp(64px,6vw,104px);
  }
  body.single-product .woocommerce div.product div.images{top:148px}
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image a{
    min-height:545px;
  }
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{
    max-height:615px;
    padding:22px;
    object-fit:contain!important;
  }
  body.single-product .summary{max-width:560px}
  body.single-product .woocommerce-tabs,
  body.single-product .up-sells,
  body.single-product .related{max-width:1240px;margin-left:auto!important;margin-right:auto!important}
  body.single-product .woocommerce-Tabs-panel{max-width:900px!important}
  body.single-product .up-sells ul.products{max-width:920px!important}
}

/* Keep WooCommerce/Flexslider images contained instead of zoom-cropping on phones. */
@media(max-width:800px){
  body.single-product .dm-shop-layout{
    width:100%;
    padding:10px 14px 48px;
  }
  body.single-product .woocommerce-breadcrumb{display:none}
  body.single-product .woocommerce div.product div.images{
    width:calc(100% + 28px)!important;
    margin-left:-14px!important;
    margin-right:-14px!important;
    margin-bottom:20px!important;
  }
  body.single-product .woocommerce-product-gallery,
  body.single-product .woocommerce-product-gallery .flex-viewport,
  body.single-product .woocommerce-product-gallery__wrapper{
    width:100%!important;
    max-width:100%!important;
  }
  body.single-product .woocommerce-product-gallery .flex-viewport{
    overflow:hidden!important;
  }
  body.single-product .woocommerce div.product .woocommerce-product-gallery__wrapper{
    border-left:0;
    border-right:0;
    border-radius:0;
    background:#fff;
  }
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image,
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image a{
    width:100%!important;
    min-height:320px!important;
    height:320px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#fff!important;
  }
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image img,
  body.single-product .woocommerce-product-gallery .flex-viewport img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:320px!important;
    object-fit:contain!important;
    object-position:center!important;
    padding:10px 14px!important;
    margin:0!important;
  }
  body.single-product .flex-control-thumbs{
    padding:0 14px!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;
  }
  body.single-product .flex-control-thumbs img{
    width:100%!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    padding:3px!important;
  }
  body.single-product .summary{max-width:none!important;padding:0 1px!important}
  body.single-product .woocommerce div.product .product_title{
    font-size:30px!important;
    line-height:1.08!important;
    margin-top:2px!important;
  }
  body.single-product .woocommerce-product-details__short-description{
    max-width:none!important;
    font-size:13px!important;
    line-height:1.62!important;
  }
  body.single-product .summary form.variations_form{
    margin-top:16px!important;
    padding-top:16px!important;
  }
  body.single-product .summary form.variations_form table.variations td{margin-bottom:12px!important}
  body.single-product .summary form.variations_form select{
    min-height:45px!important;
    border-radius:10px!important;
  }
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart{
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:9px!important;
    width:100%!important;
  }
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .quantity,
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .qty{
    width:58px!important;
  }
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart .single_add_to_cart_button{
    width:100%!important;
    border-radius:999px!important;
  }
  body.single-product .dm-size-help{grid-column:1/-1!important}
  body.single-product .dm-product-trust{
    margin-top:12px!important;
    border-radius:12px!important;
  }
  body.single-product .dm-product-trust>div{padding:10px 11px 10px 34px!important}
  body.single-product .product_meta{font-size:10.5px!important;line-height:1.55!important}
  body.single-product .woocommerce-tabs{
    margin-top:34px!important;
    border-top:1px solid var(--dm-line)!important;
  }
  body.single-product .woocommerce-tabs ul.tabs{
    gap:17px!important;
    margin-bottom:18px!important;
    -webkit-overflow-scrolling:touch;
  }
  body.single-product .woocommerce-Tabs-panel h2{font-size:25px!important}
  body.single-product .woocommerce-Tabs-panel{font-size:13.5px!important;line-height:1.68!important}
  body.single-product .up-sells,
  body.single-product .related{margin-top:30px!important;padding-top:20px!important}
  body.single-product .up-sells>h2,
  body.single-product .related>h2{font-size:25px!important;line-height:1.15!important}
  body.single-product .up-sells ul.products,
  body.single-product .related ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
  }
  body.single-product .woocommerce ul.products li.product{
    border:1px solid #eee9e4!important;
    border-radius:12px!important;
    overflow:hidden!important;
    padding-bottom:10px!important;
  }
  body.single-product .woocommerce ul.products li.product a img{
    aspect-ratio:1/1!important;
    object-fit:contain!important;
    background:#fbfaf8!important;
    padding:6px!important;
  }
  body.single-product .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:11px!important;
    line-height:1.25!important;
    min-height:30px!important;
    margin:0 9px 4px!important;
  }
  body.single-product .woocommerce ul.products li.product .price{
    font-size:10.5px!important;
    margin:0 9px 7px!important;
  }
  body.single-product .woocommerce ul.products li.product .button{
    width:calc(100% - 18px)!important;
    min-height:30px!important;
    margin:0 9px!important;
    padding:7px 8px!important;
    text-align:center!important;
    font-size:9.5px!important;
  }
}

/* v4.7.0 — cart, checkout and final purchase-flow polish */
.woocommerce-cart .dm-shop-layout,
.woocommerce-checkout .dm-shop-layout,
.woocommerce-account .dm-shop-layout{width:min(calc(100% - 56px),1220px);display:block;padding-top:38px;padding-bottom:74px}
.woocommerce-cart .dm-shop-main,
.woocommerce-checkout .dm-shop-main,
.woocommerce-account .dm-shop-main{width:100%;min-width:0}

.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout form.checkout,
.woocommerce-checkout .woocommerce-order,
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content{font-size:14px}

.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table,
.woocommerce-order-received table.shop_table{border:1px solid var(--dm-line)!important;border-radius:14px!important;border-collapse:separate!important;border-spacing:0!important;overflow:hidden;background:#fff}
.woocommerce-cart table.shop_table th,
.woocommerce-checkout table.shop_table th,
.woocommerce-order-received table.shop_table th{padding:15px 18px!important;background:#fbfaf8;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.woocommerce-cart table.shop_table td,
.woocommerce-checkout table.shop_table td,
.woocommerce-order-received table.shop_table td{padding:16px 18px!important;border-top:1px solid var(--dm-line)!important;vertical-align:middle}
.woocommerce-cart table.shop_table .product-thumbnail img{width:86px!important;height:86px!important;object-fit:contain;border-radius:10px;background:#fbfaf8;padding:5px}
.woocommerce-cart table.shop_table .product-name a{font-weight:750}
.woocommerce-cart table.shop_table .product-remove a{color:var(--dm-accent)!important;font-size:24px!important}
.woocommerce-cart table.shop_table input.qty{width:70px;height:42px;border:1px solid #d7d0c8;border-radius:10px;text-align:center}

.woocommerce-cart .coupon{display:flex!important;gap:8px!important;align-items:center!important}
.woocommerce-cart .coupon input.input-text{width:180px!important;min-height:42px;border:1px solid #d7d0c8!important;border-radius:999px!important;padding:0 14px!important}
.woocommerce-cart button.button,
.woocommerce-cart a.button,
.woocommerce-checkout button.button,
.woocommerce-checkout a.button,
.woocommerce-account a.button,
.woocommerce-account button.button{border-radius:999px!important;min-height:42px!important;padding:0 18px!important;background:#171717!important;color:#fff!important;font-size:12px!important;font-weight:800!important}
.woocommerce-cart button.button:hover,
.woocommerce-cart a.button:hover,
.woocommerce-checkout button.button:hover,
.woocommerce-checkout a.button:hover{background:var(--dm-accent)!important;color:#fff!important}

.woocommerce-cart .cart-collaterals{display:flex;justify-content:flex-end;margin-top:28px}
.woocommerce-cart .cart_totals{float:none!important;width:min(100%,460px)!important;border:1px solid var(--dm-line);border-radius:16px;background:#fff;padding:22px}
.woocommerce-cart .cart_totals h2,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-billing-fields>h3,
.woocommerce-checkout .woocommerce-additional-fields>h3{font-family:Georgia,serif;font-size:28px;font-weight:500;margin:0 0 18px}
.woocommerce-cart .wc-proceed-to-checkout{padding:14px 0 0!important}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{display:flex!important;align-items:center;justify-content:center;background:var(--dm-accent)!important;min-height:50px!important;margin:0!important;font-size:13px!important}

.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,440px);gap:42px;align-items:start}
.woocommerce-checkout #customer_details{grid-column:1;display:block!important;width:100%!important}
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2{float:none!important;width:100%!important;margin:0 0 22px!important}
.woocommerce-checkout #order_review_heading{grid-column:2;grid-row:1;margin:0 0 -18px;padding-top:0}
.woocommerce-checkout #order_review{grid-column:2;grid-row:1;margin-top:48px;position:sticky;top:155px;border:1px solid var(--dm-line);border-radius:16px;background:#fff;padding:20px}
.woocommerce-checkout .form-row{margin:0 0 14px!important}
.woocommerce-checkout .form-row label{font-size:12px;font-weight:750;margin:0 0 6px}
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select,
.woocommerce-account input.input-text,
.woocommerce-account textarea,
.woocommerce-account select{min-height:46px;border:1px solid #d7d0c8!important;border-radius:10px!important;background:#fff;padding:9px 12px!important;box-shadow:none!important}
.woocommerce-checkout textarea{min-height:110px}
.woocommerce-checkout .select2-container .select2-selection--single{height:46px!important;border:1px solid #d7d0c8!important;border-radius:10px!important}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:44px!important;padding-left:12px!important}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:44px!important}
.woocommerce-checkout #payment{background:#fbfaf8!important;border-radius:12px!important;border:1px solid var(--dm-line)!important}
.woocommerce-checkout #payment ul.payment_methods{padding:18px!important;border-bottom:1px solid var(--dm-line)!important}
.woocommerce-checkout #payment div.form-row{padding:18px!important;margin:0!important}
.woocommerce-checkout #place_order{width:100%!important;min-height:50px!important;background:var(--dm-accent)!important;font-size:13px!important}

.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:34px}
.woocommerce-account .woocommerce-MyAccount-navigation{float:none!important;width:100%!important;border:1px solid var(--dm-line);border-radius:14px;background:#fff;padding:10px}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:11px 12px;border-radius:9px;font-weight:700}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:#f6f1f2;color:var(--dm-accent)}
.woocommerce-account .woocommerce-MyAccount-content{float:none!important;width:100%!important}

@media(max-width:800px){
  .woocommerce-cart .dm-shop-layout,
  .woocommerce-checkout .dm-shop-layout,
  .woocommerce-account .dm-shop-layout{width:min(calc(100% - 24px),100%);padding-top:22px;padding-bottom:46px}
  /* VIGTIGT: kun varelisten (tabellen inde i .woocommerce-cart-form) maa laegges om til
     82px-gitteret. WooCommerce giver ogsaa totalerne under "Samlet beloeb i kurven"
     klassen shop_table_responsive (cart-totals.php), saa et usaet ".woocommerce-cart"
     her pressede Subtotal, Levering og Total i alt ned i billed-kolonnen paa 82px. */
  .woocommerce-cart .woocommerce-cart-form table.shop_table{border:0!important;background:transparent!important}
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr{display:grid!important;grid-template-columns:82px 1fr;gap:0 12px;padding:14px 0!important;border-bottom:1px solid var(--dm-line)!important}
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr td{display:block!important;border:0!important;padding:4px 0!important;text-align:left!important}
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr td:before{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--dm-muted)}
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive .product-remove{grid-column:1/-1;text-align:right!important;order:-2}
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive .product-thumbnail{display:block!important;grid-column:1;grid-row:2/8}
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive .product-name,
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive .product-price,
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive .product-quantity,
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive .product-subtotal{grid-column:2}
  .woocommerce-cart .woocommerce-cart-form table.shop_table_responsive .actions{grid-column:1/-1!important;padding-top:12px!important}
  .woocommerce-cart .coupon{display:grid!important;grid-template-columns:1fr auto!important;width:100%!important}
  .woocommerce-cart .coupon input.input-text{width:100%!important}
  .woocommerce-cart .actions>button.button{width:100%!important;margin-top:8px!important}
  .woocommerce-cart .cart-collaterals{display:block}
  .woocommerce-cart .cart_totals{width:100%!important;padding:18px}

  .woocommerce-checkout form.checkout{display:block}
  .woocommerce-checkout #order_review_heading{margin:30px 0 14px}
  .woocommerce-checkout #order_review{position:static;margin:0;padding:14px}
  .woocommerce-checkout table.shop_table th,
  .woocommerce-checkout table.shop_table td{padding:12px!important}

  .woocommerce-account .woocommerce{display:block}
  .woocommerce-account .woocommerce-MyAccount-navigation{margin-bottom:22px}
}

/* v4.8.0 — premium cart + checkout flow */
.woocommerce-cart .dm-shop-layout,
.woocommerce-checkout .dm-shop-layout,
.woocommerce-account .dm-shop-layout{
  width:min(calc(100% - 64px),1460px);
  padding-top:46px;
  padding-bottom:86px;
}

.woocommerce-cart .dm-shop-main>h1,
.woocommerce-checkout .dm-shop-main>h1,
.woocommerce-account .dm-shop-main>h1{
  font-family:Georgia,serif;
  font-size:clamp(36px,3vw,54px);
  line-height:1.05;
  font-weight:500;
  margin:0 0 28px;
}

/* Cart: make the table, recommendations and summary feel like one purchase flow */
.woocommerce-cart .woocommerce-cart-form{
  margin-bottom:28px;
}
.woocommerce-cart table.shop_table{
  box-shadow:0 8px 28px rgba(23,23,23,.035);
}
.woocommerce-cart table.shop_table td.product-name{
  min-width:280px;
}
.woocommerce-cart table.shop_table .product-name a{
  font-size:14px;
  line-height:1.35;
}
.woocommerce-cart table.shop_table .variation{
  margin-top:7px!important;
  font-size:12px;
  color:var(--dm-muted);
}
.woocommerce-cart table.shop_table .variation dt,
.woocommerce-cart table.shop_table .variation dd{
  margin-bottom:3px!important;
}
.woocommerce-cart table.shop_table .actions{
  background:#fbfaf8;
}
.woocommerce-cart .coupon input.input-text{
  width:230px!important;
  background:#fff!important;
}
.woocommerce-cart .cart-collaterals{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(390px,500px);
  gap:44px;
  align-items:start;
  margin-top:34px;
}
.woocommerce-cart .cross-sells{
  width:100%!important;
  float:none!important;
  margin:0!important;
  padding:22px 0 0;
}
.woocommerce-cart .cross-sells>h2,
.woocommerce-cart .cart_totals h2{
  font-family:Georgia,serif!important;
  font-size:30px!important;
  font-weight:500!important;
  line-height:1.1!important;
}
.woocommerce-cart .cross-sells ul.products{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  margin-top:18px!important;
}
.woocommerce-cart .cross-sells ul.products li.product{
  border:1px solid #eee9e4!important;
  border-radius:14px!important;
  padding-bottom:14px!important;
}
.woocommerce-cart .cross-sells ul.products li.product img{
  aspect-ratio:1/1!important;
  object-fit:contain!important;
  padding:8px!important;
  background:#fbfaf8!important;
}
.woocommerce-cart .cart_totals{
  width:100%!important;
  margin:0!important;
  padding:28px!important;
  border-radius:18px;
  box-shadow:0 12px 34px rgba(23,23,23,.045);
}
.woocommerce-cart .cart_totals table.shop_table{
  box-shadow:none;
  border-radius:12px!important;
  margin-bottom:0!important;
}
.woocommerce-cart .cart_totals table.shop_table th{
  width:34%;
}
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td{
  font-size:16px!important;
  font-weight:800!important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  min-height:54px!important;
  box-shadow:0 7px 20px rgba(139,30,63,.16);
}

/* Checkout: use the desktop canvas properly and give the order panel more authority */
.woocommerce-checkout form.checkout{
  grid-template-columns:minmax(0,1.45fr) minmax(430px,.9fr);
  gap:58px;
  max-width:1360px;
  margin-inline:auto;
}
.woocommerce-checkout #customer_details{
  padding:0;
}
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2{
  border:1px solid var(--dm-line);
  border-radius:18px;
  background:#fff;
  padding:28px!important;
  margin-bottom:24px!important;
}
.woocommerce-checkout .woocommerce-billing-fields>h3,
.woocommerce-checkout .woocommerce-shipping-fields>h3,
.woocommerce-checkout .woocommerce-additional-fields>h3{
  font-family:Georgia,serif;
  font-size:30px;
  font-weight:500;
  margin:0 0 22px;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{
  display:flex;
  flex-wrap:wrap;
  gap:0 16px;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row{
  width:100%!important;
  float:none!important;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-first,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last{
  width:calc(50% - 8px)!important;
}
.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea,
.woocommerce-checkout select{
  min-height:50px;
  border-radius:11px!important;
}
.woocommerce-checkout .select2-container .select2-selection--single{
  height:50px!important;
  border-radius:11px!important;
}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{
  line-height:48px!important;
}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{
  height:48px!important;
}
.woocommerce-checkout #order_review_heading{
  font-size:32px;
  margin:0 0 -12px;
}
.woocommerce-checkout #order_review{
  margin-top:52px;
  top:150px;
  padding:26px;
  border-radius:18px;
  box-shadow:0 14px 38px rgba(23,23,23,.05);
}
.woocommerce-checkout #order_review table.shop_table{
  margin-bottom:20px!important;
}
.woocommerce-checkout #order_review .product-name{
  font-weight:650;
}
.woocommerce-checkout #order_review .cart-subtotal th,
.woocommerce-checkout #order_review .order-total th,
.woocommerce-checkout #order_review .woocommerce-shipping-totals th{
  width:34%;
}
.woocommerce-checkout #order_review .order-total th,
.woocommerce-checkout #order_review .order-total td{
  font-size:16px!important;
  font-weight:800!important;
}
.woocommerce-checkout #payment{
  margin-top:16px;
  background:#faf7f5!important;
  border-radius:14px!important;
}
.woocommerce-checkout #payment ul.payment_methods{
  padding:22px!important;
}
.woocommerce-checkout #payment div.payment_box{
  border-radius:10px!important;
  background:#fff!important;
}
.woocommerce-checkout #payment div.payment_box:before{
  border-bottom-color:#fff!important;
}
.woocommerce-checkout #payment div.form-row{
  padding:22px!important;
}
.woocommerce-checkout #place_order{
  min-height:56px!important;
  font-size:14px!important;
  letter-spacing:.02em;
  box-shadow:0 8px 22px rgba(139,30,63,.18);
}
.woocommerce-checkout .woocommerce-form-coupon-toggle{
  margin-bottom:16px;
}
.woocommerce-checkout form.checkout_coupon{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  border:1px solid var(--dm-line)!important;
  border-radius:14px!important;
  padding:16px!important;
  margin:0 0 28px!important;
  background:#fbfaf8!important;
}
.woocommerce-checkout form.checkout_coupon p{
  margin:0!important;
  width:auto!important;
  float:none!important;
}
.woocommerce-checkout form.checkout_coupon .form-row-first,
.woocommerce-checkout form.checkout_coupon .form-row-last{
  width:auto!important;
}

@media(max-width:1100px){
  .woocommerce-cart .dm-shop-layout,
  .woocommerce-checkout .dm-shop-layout,
  .woocommerce-account .dm-shop-layout{width:min(calc(100% - 40px),1200px)}
  .woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:34px}
  .woocommerce-cart .cart-collaterals{grid-template-columns:minmax(0,1fr) minmax(360px,440px);gap:30px}
}

@media(max-width:800px){
  .woocommerce-cart .dm-shop-layout,
  .woocommerce-checkout .dm-shop-layout,
  .woocommerce-account .dm-shop-layout{width:min(calc(100% - 22px),100%);padding-top:22px;padding-bottom:48px}

  .woocommerce-cart .dm-shop-main>h1,
  .woocommerce-checkout .dm-shop-main>h1,
  .woocommerce-account .dm-shop-main>h1{font-size:34px;margin-bottom:20px}

  .woocommerce-cart .cart-collaterals{display:block!important;margin-top:22px}
  .woocommerce-cart .cross-sells{padding-top:8px;margin-bottom:28px!important}
  .woocommerce-cart .cross-sells ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .woocommerce-cart .cart_totals{padding:18px!important;border-radius:14px}
  .woocommerce-cart .coupon{grid-template-columns:1fr!important}
  .woocommerce-cart .coupon input.input-text,
  .woocommerce-cart .coupon button.button{width:100%!important}

  .woocommerce-checkout form.checkout{display:block;max-width:none}
  .woocommerce-checkout #customer_details .col-1,
  .woocommerce-checkout #customer_details .col-2{padding:18px!important;border-radius:14px}
  .woocommerce-checkout .woocommerce-billing-fields>h3,
  .woocommerce-checkout .woocommerce-shipping-fields>h3,
  .woocommerce-checkout .woocommerce-additional-fields>h3{font-size:25px;margin-bottom:16px}
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-first,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last{width:100%!important}
  .woocommerce-checkout #order_review_heading{font-size:28px;margin:26px 0 14px}
  .woocommerce-checkout #order_review{position:static;margin:0;padding:16px;border-radius:14px;box-shadow:none}
  .woocommerce-checkout form.checkout_coupon{grid-template-columns:1fr}
  .woocommerce-checkout form.checkout_coupon button.button{width:100%!important}
  .woocommerce-checkout #payment ul.payment_methods,
  .woocommerce-checkout #payment div.form-row{padding:16px!important}
}

/* v4.8.1 — corrective width/layout pass for cart + checkout */
body.woocommerce-cart .dm-shop-layout,
body.woocommerce-checkout .dm-shop-layout{
  width:min(calc(100% - 64px),1320px)!important;
  max-width:1320px!important;
  display:block!important;
}
body.woocommerce-cart .dm-shop-main,
body.woocommerce-checkout .dm-shop-main,
body.woocommerce-cart .dm-shop-main>.woocommerce,
body.woocommerce-checkout .dm-shop-main>.woocommerce{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}

/* Cart: keep recommendations and order summary on one balanced row */
body.woocommerce-cart .cart-collaterals{
  width:100%!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 460px!important;
  gap:48px!important;
  align-items:start!important;
  clear:both!important;
}
body.woocommerce-cart .cart-collaterals:before,
body.woocommerce-cart .cart-collaterals:after{display:none!important}
body.woocommerce-cart .cart-collaterals .cross-sells,
body.woocommerce-cart .cart-collaterals .cart_totals{
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.woocommerce-cart .cart-collaterals .cross-sells{
  padding-top:0!important;
}
body.woocommerce-cart .cross-sells ul.products{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(190px,1fr))!important;
  gap:18px!important;
  justify-content:start!important;
}
body.woocommerce-cart .cross-sells ul.products li.product{
  width:100%!important;
  max-width:250px!important;
  justify-self:start!important;
}
body.woocommerce-cart .cart_totals{
  justify-self:end!important;
  min-width:0!important;
  padding:30px!important;
}
body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td{
  padding:14px 12px!important;
  vertical-align:top!important;
}
body.woocommerce-cart .cart_totals ul#shipping_method li{
  margin:0 0 10px!important;
  line-height:1.45!important;
}

/* Checkout: force the purchase form to use the available desktop canvas */
body.woocommerce-checkout form.checkout.woocommerce-checkout{
  width:100%!important;
  max-width:1280px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.48fr) minmax(460px,.95fr)!important;
  column-gap:54px!important;
  row-gap:0!important;
  align-items:start!important;
}
body.woocommerce-checkout #customer_details{
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
}
body.woocommerce-checkout #order_review_heading{
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  margin:0 0 0!important;
  padding:0!important;
  min-width:0!important;
}
body.woocommerce-checkout #order_review{
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin-top:54px!important;
  padding:28px!important;
}
body.woocommerce-checkout #order_review table.shop_table{
  width:100%!important;
  table-layout:auto!important;
}
body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{
  padding:14px 12px!important;
  line-height:1.45!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}
body.woocommerce-checkout #order_review table.shop_table .product-name{
  width:62%!important;
}
body.woocommerce-checkout #order_review ul#shipping_method li{
  margin:0 0 10px!important;
  line-height:1.45!important;
}
body.woocommerce-checkout #payment{
  width:100%!important;
}

@media(max-width:1050px){
  body.woocommerce-cart .cart-collaterals{grid-template-columns:minmax(0,1fr) 400px!important;gap:30px!important}
  body.woocommerce-checkout form.checkout.woocommerce-checkout{grid-template-columns:minmax(0,1fr) minmax(390px,.9fr)!important;gap:32px!important}
}
@media(max-width:800px){
  body.woocommerce-cart .dm-shop-layout,
  body.woocommerce-checkout .dm-shop-layout{width:min(calc(100% - 24px),100%)!important}
  body.woocommerce-cart .cart-collaterals{display:block!important}
  body.woocommerce-cart .cart-collaterals .cart_totals{margin-top:26px!important;padding:20px!important}
  body.woocommerce-cart .cross-sells ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.woocommerce-cart .cross-sells ul.products li.product{max-width:none!important}
  body.woocommerce-checkout form.checkout.woocommerce-checkout{display:block!important;max-width:none!important}
  body.woocommerce-checkout #order_review_heading{margin:30px 0 14px!important}
  body.woocommerce-checkout #order_review{position:static!important;margin-top:0!important;padding:18px!important}
}

/* v4.8.2 — ensure WooCommerce Cart and Checkout pages use the purchase-flow canvas */
body.woocommerce-cart .dm-purchase-flow,
body.woocommerce-checkout .dm-purchase-flow{
  width:min(calc(100% - 64px),1320px)!important;
  max-width:1320px!important;
  display:block!important;
  padding:56px 0 72px!important;
}
body.woocommerce-cart .dm-purchase-page,
body.woocommerce-checkout .dm-purchase-page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body.woocommerce-cart .dm-purchase-page>h1,
body.woocommerce-checkout .dm-purchase-page>h1{
  max-width:1280px!important;
  margin:0 auto 28px!important;
}
body.woocommerce-cart .dm-purchase-page>.woocommerce,
body.woocommerce-checkout .dm-purchase-page>.woocommerce{
  width:100%!important;
  max-width:1280px!important;
  margin:0 auto!important;
}
body.woocommerce-cart .woocommerce-cart-form{
  width:100%!important;
  max-width:none!important;
}
body.woocommerce-cart .cart-collaterals{
  margin-top:34px!important;
}
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon{
  max-width:1280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:800px){
  body.woocommerce-cart .dm-purchase-flow,
  body.woocommerce-checkout .dm-purchase-flow{
    width:min(calc(100% - 24px),100%)!important;
    padding:30px 0 50px!important;
  }
  body.woocommerce-cart .dm-purchase-page>h1,
  body.woocommerce-checkout .dm-purchase-page>h1{margin-bottom:20px!important}
}

/* =========================================================
   v4.8.3 — Checkout Final Polish
   Final desktop balance pass for Cart + Checkout.
   ========================================================= */

/* Give the purchase flow a little more breathing room on large screens. */
body.woocommerce-cart .dm-purchase-flow,
body.woocommerce-checkout .dm-purchase-flow{
  width:min(calc(100% - 72px),1480px)!important;
  max-width:1480px!important;
}
body.woocommerce-cart .dm-purchase-page>h1,
body.woocommerce-checkout .dm-purchase-page>h1,
body.woocommerce-cart .dm-purchase-page>.woocommerce,
body.woocommerce-checkout .dm-purchase-page>.woocommerce{
  max-width:1420px!important;
}

/* CART — final visual balance */
body.woocommerce-cart .woocommerce-cart-form table.shop_table{
  border-radius:18px!important;
  overflow:hidden!important;
}
body.woocommerce-cart .cart-collaterals{
  grid-template-columns:minmax(0,1fr) minmax(430px,500px)!important;
  gap:56px!important;
}
body.woocommerce-cart .cart_totals{
  border-radius:18px!important;
  box-shadow:0 12px 32px rgba(23,23,23,.045)!important;
}
body.woocommerce-cart .cart_totals h2{
  font-family:Georgia,serif!important;
  font-size:30px!important;
  font-weight:500!important;
  margin:0 0 18px!important;
}
body.woocommerce-cart .wc-proceed-to-checkout{
  padding-bottom:0!important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  width:100%!important;
  text-align:center!important;
}

/* CHECKOUT — stronger 60/40-ish composition with a wider order card. */
body.woocommerce-checkout form.checkout.woocommerce-checkout{
  max-width:1420px!important;
  grid-template-columns:minmax(0,1.34fr) minmax(520px,1fr)!important;
  column-gap:58px!important;
}
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2{
  padding:30px!important;
  border-radius:20px!important;
}
body.woocommerce-checkout #order_review_heading{
  font-family:Georgia,serif!important;
  font-size:31px!important;
  line-height:1.1!important;
}
body.woocommerce-checkout #order_review{
  margin-top:50px!important;
  padding:30px!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 14px 38px rgba(23,23,23,.055)!important;
}
body.woocommerce-checkout #order_review table.shop_table{
  border-radius:14px!important;
  overflow:hidden!important;
  margin-bottom:22px!important;
}
body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{
  padding:15px 14px!important;
}
body.woocommerce-checkout #order_review table.shop_table .product-name{
  width:58%!important;
}
body.woocommerce-checkout #order_review .cart-subtotal th,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th,
body.woocommerce-checkout #order_review .order-total th{
  width:30%!important;
}
body.woocommerce-checkout #order_review .woocommerce-shipping-totals td{
  padding-top:16px!important;
  padding-bottom:16px!important;
}
body.woocommerce-checkout #order_review ul#shipping_method{
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout #order_review ul#shipping_method li{
  display:block!important;
  margin:0 0 12px!important;
  padding:0!important;
  line-height:1.5!important;
}
body.woocommerce-checkout #order_review ul#shipping_method li:last-child{
  margin-bottom:0!important;
}
body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td{
  font-size:17px!important;
  padding-top:18px!important;
  padding-bottom:18px!important;
}

/* Payment is one clear continuation of the order card. */
body.woocommerce-checkout #payment{
  margin-top:18px!important;
  border:1px solid var(--dm-line)!important;
  background:#fbf8f6!important;
  overflow:hidden!important;
}
body.woocommerce-checkout #payment ul.payment_methods{
  padding:24px!important;
  border-bottom:1px solid var(--dm-line)!important;
}
body.woocommerce-checkout #payment div.form-row{
  padding:24px!important;
}
body.woocommerce-checkout #place_order{
  width:100%!important;
  min-height:58px!important;
  border-radius:999px!important;
  background:var(--dm-wine)!important;
  color:#fff!important;
  opacity:1;
}
body.woocommerce-checkout #place_order:disabled,
body.woocommerce-checkout #place_order.disabled{
  opacity:.45!important;
}

/* Make the top coupon area compact rather than spanning the entire checkout. */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon{
  max-width:820px!important;
  margin-left:0!important;
  margin-right:0!important;
}
body.woocommerce-checkout form.checkout_coupon{
  grid-template-columns:minmax(0,1fr) auto!important;
  padding:14px!important;
  margin-bottom:30px!important;
}
body.woocommerce-checkout form.checkout_coupon input.input-text{
  min-height:46px!important;
}
body.woocommerce-checkout form.checkout_coupon button.button{
  min-height:46px!important;
  padding-left:24px!important;
  padding-right:24px!important;
}

/* Better visual grouping and readable labels in customer details. */
body.woocommerce-checkout #customer_details label{
  font-weight:650!important;
}
body.woocommerce-checkout #customer_details .form-row{
  margin-bottom:15px!important;
}
body.woocommerce-checkout #customer_details textarea{
  min-height:110px!important;
}

/* Keep the order summary visible on normal desktop heights without fighting mobile/tablet. */
@media(min-width:1101px){
  body.woocommerce-checkout #order_review{
    position:sticky!important;
    top:150px!important;
  }
}

/* Mid desktop / small laptop */
@media(max-width:1180px) and (min-width:801px){
  body.woocommerce-cart .dm-purchase-flow,
  body.woocommerce-checkout .dm-purchase-flow{
    width:min(calc(100% - 40px),1240px)!important;
  }
  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    grid-template-columns:minmax(0,1fr) minmax(430px,.92fr)!important;
    column-gap:34px!important;
  }
  body.woocommerce-cart .cart-collaterals{
    grid-template-columns:minmax(0,1fr) minmax(390px,440px)!important;
    gap:34px!important;
  }
}

/* Mobile/tablet keeps the proven stacked flow. */
@media(max-width:800px){
  body.woocommerce-cart .dm-purchase-flow,
  body.woocommerce-checkout .dm-purchase-flow{
    width:min(calc(100% - 24px),100%)!important;
  }
  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    display:block!important;
    max-width:none!important;
  }
  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2{
    padding:18px!important;
    border-radius:14px!important;
  }
  body.woocommerce-checkout #order_review_heading{
    font-size:28px!important;
    margin:30px 0 14px!important;
  }
  body.woocommerce-checkout #order_review{
    position:static!important;
    margin-top:0!important;
    padding:18px!important;
    border-radius:14px!important;
    box-shadow:none!important;
  }
  body.woocommerce-checkout .woocommerce-form-coupon-toggle,
  body.woocommerce-checkout form.checkout_coupon{
    max-width:none!important;
    width:100%!important;
  }
  body.woocommerce-checkout form.checkout_coupon{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-checkout form.checkout_coupon button.button{
    width:100%!important;
  }
  body.woocommerce-cart .cart-collaterals{
    display:block!important;
  }
}

/* =========================================================
   v4.8.4 — Checkout Final Balance
   Final desktop checkout-width and readability pass.
   ========================================================= */

/* Checkout only: give the order/payment side more room. */
body.woocommerce-checkout form.checkout.woocommerce-checkout{
  max-width:1460px!important;
  grid-template-columns:minmax(0,1.22fr) minmax(590px,1fr)!important;
  column-gap:62px!important;
}

/* Slightly stronger alignment between the two checkout columns. */
body.woocommerce-checkout #customer_details{
  min-width:0!important;
}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  min-width:0!important;
}

/* Make the order summary easier to scan. */
body.woocommerce-checkout #order_review{
  padding:32px!important;
}
body.woocommerce-checkout #order_review table.shop_table{
  font-size:15px!important;
}
body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{
  padding:16px 15px!important;
  vertical-align:top!important;
}
body.woocommerce-checkout #order_review table.shop_table .product-name{
  width:62%!important;
}
body.woocommerce-checkout #order_review .cart-subtotal th,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th,
body.woocommerce-checkout #order_review .order-total th{
  width:26%!important;
}

/* Shipping choices: one readable option per line with more breathing room. */
body.woocommerce-checkout #order_review ul#shipping_method{
  display:grid!important;
  gap:12px!important;
}
body.woocommerce-checkout #order_review ul#shipping_method li{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  align-items:start!important;
  column-gap:10px!important;
  margin:0!important;
  line-height:1.45!important;
}
body.woocommerce-checkout #order_review ul#shipping_method input[type="radio"]{
  margin-top:4px!important;
}
body.woocommerce-checkout #order_review ul#shipping_method label{
  display:block!important;
  margin:0!important;
}

/* Emphasize final total a little more. */
body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td{
  font-size:18px!important;
  font-weight:700!important;
  border-top:2px solid var(--dm-line)!important;
  padding-top:20px!important;
  padding-bottom:20px!important;
}

/* Payment area: more visual separation and room for Bambora/Shop n Pay. */
body.woocommerce-checkout #payment{
  background:#faf7f5!important;
  border:1px solid #eadfd9!important;
  border-radius:16px!important;
  box-shadow:0 8px 24px rgba(23,23,23,.035)!important;
}
body.woocommerce-checkout #payment ul.payment_methods{
  padding:26px!important;
}
body.woocommerce-checkout #payment .payment_box{
  margin-top:14px!important;
  padding:18px!important;
  border-radius:12px!important;
  background:#fff!important;
}
body.woocommerce-checkout #payment div.form-row{
  padding:26px!important;
}
body.woocommerce-checkout #payment .woocommerce-privacy-policy-text{
  line-height:1.55!important;
}

/* Final CTA polish. */
body.woocommerce-checkout #place_order{
  min-height:60px!important;
  font-size:15px!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
}

/* Keep the coupon bar compact but align it with the billing column. */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon{
  max-width:860px!important;
}

/* Laptop widths: still wider on the order side, but never cramped. */
@media(max-width:1260px) and (min-width:901px){
  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    grid-template-columns:minmax(0,1.18fr) minmax(500px,.96fr)!important;
    column-gap:40px!important;
  }
}

/* Tablet/mobile retain the proven stacked structure. */
@media(max-width:900px){
  body.woocommerce-checkout form.checkout.woocommerce-checkout{
    display:block!important;
    max-width:none!important;
  }
  body.woocommerce-checkout #order_review{
    position:static!important;
    margin-top:0!important;
  }
}

/* =========================================================
   v4.8.5 — Checkout Shipping Fix
   Fix Shipmondo/GLS shipping labels being squeezed vertically.
   Keeps the v4.8.4 checkout width and cart styling unchanged.
   ========================================================= */

/* Undo the v4.8.4 grid layout that conflicts with Shipmondo markup. */
body.woocommerce-checkout #order_review ul#shipping_method{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

body.woocommerce-checkout #order_review ul#shipping_method li{
  display:block!important;
  width:100%!important;
  margin:0 0 14px!important;
  padding:0!important;
  line-height:1.5!important;
  white-space:normal!important;
  overflow:visible!important;
}

body.woocommerce-checkout #order_review ul#shipping_method li:last-child{
  margin-bottom:0!important;
}

body.woocommerce-checkout #order_review ul#shipping_method input[type="radio"]{
  display:inline-block!important;
  vertical-align:top!important;
  margin:4px 8px 0 0!important;
  flex:0 0 auto!important;
}

body.woocommerce-checkout #order_review ul#shipping_method label{
  display:inline!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

/* Shipmondo / Shop n Pay nested content must have full usable width. */
body.woocommerce-checkout #order_review .shipping,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals,
body.woocommerce-checkout #order_review .woocommerce-shipping-methods,
body.woocommerce-checkout #order_review .shipmondo,
body.woocommerce-checkout #order_review [class*="shipmondo"],
body.woocommerce-checkout #order_review [class*="pakkeshop"],
body.woocommerce-checkout #order_review [class*="shipping"]{
  min-width:0!important;
}

body.woocommerce-checkout #order_review .woocommerce-shipping-totals td{
  width:auto!important;
  min-width:0!important;
  white-space:normal!important;
}

body.woocommerce-checkout #order_review .woocommerce-shipping-totals td > *{
  max-width:100%!important;
}

/* Prevent any shipping text from collapsing to character-width columns. */
body.woocommerce-checkout #order_review .woocommerce-shipping-totals,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals *,
body.woocommerce-checkout #order_review ul#shipping_method,
body.woocommerce-checkout #order_review ul#shipping_method *{
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Keep Shop n Pay / pickup selector readable. */
body.woocommerce-checkout #order_review .woocommerce-shipping-totals .select2-container,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals select,
body.woocommerce-checkout #order_review [class*="shipmondo"] .select2-container,
body.woocommerce-checkout #order_review [class*="shipmondo"] select{
  width:100%!important;
  max-width:100%!important;
}

/* Preserve the wider v4.8.4 order card but give shipping cells more room. */
body.woocommerce-checkout #order_review table.shop_table .woocommerce-shipping-totals th{
  width:22%!important;
}
body.woocommerce-checkout #order_review table.shop_table .woocommerce-shipping-totals td{
  width:78%!important;
}

/* Mobile/tablet: shipping options stack naturally. */
@media(max-width:900px){
  body.woocommerce-checkout #order_review ul#shipping_method li{
    display:block!important;
  }
  body.woocommerce-checkout #order_review ul#shipping_method label{
    display:inline!important;
  }
}

/* =========================================================
   v4.9.0 — My Account
   Premium account area for dashboard + all Woo endpoints.
   ========================================================= */

body.woocommerce-account .dm-shop-layout{
  width:min(calc(100% - 64px),1360px)!important;
  padding-top:58px!important;
  padding-bottom:92px!important;
}

body.woocommerce-account .dm-shop-main>h1{
  font-family:Georgia,serif!important;
  font-size:clamp(40px,3.4vw,58px)!important;
  font-weight:500!important;
  line-height:1.02!important;
  letter-spacing:-.025em!important;
  margin:0 0 34px!important;
  color:#171717!important;
}

/* Logged-in account shell */
body.woocommerce-account.logged-in .woocommerce{
  display:grid!important;
  grid-template-columns:270px minmax(0,1fr)!important;
  gap:38px!important;
  align-items:start!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation{
  float:none!important;
  width:100%!important;
  margin:0!important;
  padding:12px!important;
  border:1px solid #ebe4df!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 12px 32px rgba(23,23,23,.045)!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:0!important;
  padding:0!important;
  border:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li+li{
  margin-top:3px!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-height:48px!important;
  padding:0 15px!important;
  border-radius:12px!important;
  color:#23201e!important;
  font-size:13px!important;
  font-weight:750!important;
  line-height:1.2!important;
  text-decoration:none!important;
  transition:background .18s ease,color .18s ease,transform .18s ease!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{
  background:#faf6f4!important;
  color:var(--dm-accent)!important;
  transform:translateX(2px)!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
  color:var(--dm-accent)!important;
  background:#f7eff1!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:9px!important;
  bottom:9px!important;
  width:3px!important;
  border-radius:999px!important;
  background:var(--dm-accent)!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout{
  margin-top:10px!important;
  padding-top:10px!important;
  border-top:1px solid #eee8e4!important;
}

/* Main account card */
body.woocommerce-account .woocommerce-MyAccount-content{
  float:none!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:34px!important;
  border:1px solid #ebe4df!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 14px 38px rgba(23,23,23,.045)!important;
  color:#342f2c!important;
  font-size:14px!important;
  line-height:1.65!important;
}

body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{
  margin-top:0!important;
  padding:18px 20px!important;
  border-radius:14px!important;
  background:#fbf8f6!important;
  border:1px solid #eee6e2!important;
  font-size:14px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.dm-account-shortcut){
  color:var(--dm-accent)!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:2px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3{
  font-family:Georgia,serif!important;
  color:#171717!important;
  font-weight:500!important;
  line-height:1.15!important;
}

body.woocommerce-account .woocommerce-MyAccount-content h2{
  font-size:31px!important;
  margin:0 0 20px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content h3{
  font-size:24px!important;
}

/* Dashboard shortcuts */
body.woocommerce-account .dm-account-shortcuts{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  margin-top:28px!important;
}

body.woocommerce-account .dm-account-shortcut{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  min-height:118px!important;
  padding:18px!important;
  border:1px solid #ece5e1!important;
  border-radius:16px!important;
  background:#fff!important;
  color:#171717!important;
  text-decoration:none!important;
  box-shadow:0 7px 22px rgba(23,23,23,.028)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}

body.woocommerce-account .dm-account-shortcut:hover{
  transform:translateY(-2px)!important;
  border-color:#dec8d0!important;
  box-shadow:0 12px 28px rgba(23,23,23,.055)!important;
}

body.woocommerce-account .dm-account-shortcut-icon{
  display:grid!important;
  place-items:center!important;
  width:40px!important;
  height:40px!important;
  border-radius:50%!important;
  background:#f7eff1!important;
  color:var(--dm-accent)!important;
  font-size:18px!important;
  font-weight:800!important;
}

body.woocommerce-account .dm-account-shortcut-copy{
  display:block!important;
  min-width:0!important;
}

body.woocommerce-account .dm-account-shortcut-copy strong{
  display:block!important;
  margin-bottom:4px!important;
  color:#171717!important;
  font-family:Georgia,serif!important;
  font-size:18px!important;
  font-weight:600!important;
  line-height:1.15!important;
}

body.woocommerce-account .dm-account-shortcut-copy span{
  display:block!important;
  color:#716965!important;
  font-size:12px!important;
  line-height:1.45!important;
}

body.woocommerce-account .dm-account-shortcut-arrow{
  color:var(--dm-accent)!important;
  font-size:18px!important;
}

/* Orders / downloads tables */
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account .woocommerce-table,
body.woocommerce-account table.shop_table{
  width:100%!important;
  border:1px solid #ebe4df!important;
  border-radius:14px!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  overflow:hidden!important;
  background:#fff!important;
}

body.woocommerce-account table.shop_table th{
  padding:14px 16px!important;
  background:#fbf9f7!important;
  color:#514b47!important;
  font-size:10.5px!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}

body.woocommerce-account table.shop_table td{
  padding:15px 16px!important;
  border-top:1px solid #eee8e4!important;
  vertical-align:middle!important;
}

body.woocommerce-account table.shop_table .button{
  min-height:36px!important;
  padding:0 14px!important;
  font-size:11px!important;
}

/* Address cards */
body.woocommerce-account .woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  margin-top:20px!important;
}

body.woocommerce-account .woocommerce-Address{
  float:none!important;
  width:100%!important;
  margin:0!important;
  padding:22px!important;
  border:1px solid #ebe4df!important;
  border-radius:16px!important;
  background:#fbfaf8!important;
}

body.woocommerce-account .woocommerce-Address-title{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:14px!important;
  margin-bottom:12px!important;
}

body.woocommerce-account .woocommerce-Address-title h3{
  margin:0!important;
  font-size:22px!important;
}

body.woocommerce-account address{
  margin:0!important;
  color:#625b57!important;
  line-height:1.7!important;
}

/* Forms inside account */
body.woocommerce-account fieldset{
  margin:28px 0 0!important;
  padding:22px!important;
  border:1px solid #ebe4df!important;
  border-radius:16px!important;
  background:#fbfaf8!important;
}

body.woocommerce-account fieldset legend{
  padding:0 8px!important;
  font-family:Georgia,serif!important;
  font-size:20px!important;
  font-weight:600!important;
}

body.woocommerce-account .form-row{
  margin-bottom:15px!important;
}

body.woocommerce-account .form-row label{
  display:block!important;
  margin:0 0 6px!important;
  color:#413b37!important;
  font-size:11.5px!important;
  font-weight:800!important;
}

body.woocommerce-account input.input-text,
body.woocommerce-account textarea,
body.woocommerce-account select{
  width:100%!important;
  min-height:48px!important;
  border:1px solid #d9d1cc!important;
  border-radius:11px!important;
  background:#fff!important;
  padding:10px 13px!important;
  box-shadow:none!important;
}

body.woocommerce-account textarea{
  min-height:120px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .button,
body.woocommerce-account .woocommerce-form .button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:0 18px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--dm-accent)!important;
  color:#fff!important;
  font-size:11.5px!important;
  font-weight:800!important;
  box-shadow:none!important;
}

/* Notices */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error{
  margin:0 0 22px!important;
  padding:15px 18px 15px 46px!important;
  border:1px solid #e8dfda!important;
  border-top:3px solid var(--dm-accent)!important;
  border-radius:12px!important;
  background:#fbfaf8!important;
  color:#332f2c!important;
}

/* Logged-out account / login & register */
body.woocommerce-account:not(.logged-in) .woocommerce{
  display:block!important;
  max-width:980px!important;
  margin:0 auto!important;
}

body.woocommerce-account:not(.logged-in) #customer_login{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:24px!important;
}

body.woocommerce-account:not(.logged-in) #customer_login>.col-1,
body.woocommerce-account:not(.logged-in) #customer_login>.col-2{
  float:none!important;
  width:100%!important;
  padding:28px!important;
  border:1px solid #ebe4df!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 12px 32px rgba(23,23,23,.04)!important;
}

body.woocommerce-account:not(.logged-in) #customer_login h2{
  font-family:Georgia,serif!important;
  font-size:30px!important;
  font-weight:500!important;
  margin:0 0 20px!important;
}

/* Tablet */
@media(max-width:1000px){
  body.woocommerce-account.logged-in .woocommerce{
    grid-template-columns:220px minmax(0,1fr)!important;
    gap:24px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:26px!important;
  }

  body.woocommerce-account .dm-account-shortcuts{
    grid-template-columns:1fr!important;
  }
}

/* Mobile */
@media(max-width:800px){
  body.woocommerce-account .dm-shop-layout{
    width:min(calc(100% - 22px),100%)!important;
    padding-top:28px!important;
    padding-bottom:54px!important;
  }

  body.woocommerce-account .dm-shop-main>h1{
    font-size:36px!important;
    margin-bottom:22px!important;
  }

  body.woocommerce-account.logged-in .woocommerce{
    display:block!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation{
    margin:0 0 18px!important;
    padding:8px!important;
    border-radius:14px!important;
    box-shadow:none!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li+li{
    margin-top:0!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li a{
    min-height:44px!important;
    padding:0 11px!important;
    font-size:11.5px!important;
    background:#fbfaf8!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
    background:#f7eff1!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout{
    margin-top:0!important;
    padding-top:0!important;
    border-top:0!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:18px!important;
    border-radius:15px!important;
    box-shadow:none!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{
    padding:14px!important;
  }

  body.woocommerce-account .dm-account-shortcut{
    min-height:104px!important;
    padding:15px!important;
    grid-template-columns:36px minmax(0,1fr) auto!important;
  }

  body.woocommerce-account .dm-account-shortcut-icon{
    width:36px!important;
    height:36px!important;
  }

  body.woocommerce-account .woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-account:not(.logged-in) #customer_login{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-account:not(.logged-in) #customer_login>.col-1,
  body.woocommerce-account:not(.logged-in) #customer_login>.col-2{
    padding:20px!important;
  }

  body.woocommerce-account table.shop_table_responsive thead{
    display:none!important;
  }

  body.woocommerce-account table.shop_table_responsive tr{
    display:block!important;
    padding:14px!important;
    border-bottom:1px solid #eee8e4!important;
  }

  body.woocommerce-account table.shop_table_responsive td{
    display:flex!important;
    justify-content:space-between!important;
    gap:18px!important;
    padding:7px 0!important;
    border:0!important;
    text-align:right!important;
  }

  body.woocommerce-account table.shop_table_responsive td:before{
    content:attr(data-title)!important;
    color:#554f4b!important;
    font-weight:800!important;
    text-align:left!important;
  }
}

/* =========================================================
   v4.9.1 — My Account Grid Corrective Fix
   WooCommerce clearfix pseudo-elements were becoming grid items,
   which squeezed/reordered the navigation and dashboard content.
   ========================================================= */

body.woocommerce-account .dm-shop-main,
body.woocommerce-account .dm-shop-main > .woocommerce,
body.woocommerce-account.logged-in .woocommerce{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Critical: WooCommerce clearfix must not participate in the account grid. */
body.woocommerce-account.logged-in .woocommerce::before,
body.woocommerce-account.logged-in .woocommerce::after{
  content:none!important;
  display:none!important;
}

body.woocommerce-account.logged-in .woocommerce{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  grid-template-areas:"account-nav account-content"!important;
  gap:34px!important;
  align-items:start!important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation{
  grid-area:account-nav!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}

body.woocommerce-account.logged-in .woocommerce-MyAccount-content{
  grid-area:account-content!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}

/* Dashboard cards should use the available content width rather than shrink. */
body.woocommerce-account .dm-account-shortcuts{
  width:100%!important;
  max-width:none!important;
}

body.woocommerce-account .dm-account-shortcut{
  min-width:0!important;
}

/* Keep the account heading aligned with the full account shell. */
body.woocommerce-account .dm-shop-main > h1{
  width:100%!important;
  max-width:none!important;
}

/* Tablet */
@media(max-width:1000px) and (min-width:801px){
  body.woocommerce-account.logged-in .woocommerce{
    grid-template-columns:220px minmax(0,1fr)!important;
    gap:24px!important;
  }
}

/* Mobile: return to a single normal flow. */
@media(max-width:800px){
  body.woocommerce-account.logged-in .woocommerce{
    display:block!important;
  }

  body.woocommerce-account.logged-in .woocommerce-MyAccount-navigation,
  body.woocommerce-account.logged-in .woocommerce-MyAccount-content{
    width:100%!important;
    max-width:none!important;
  }
}

/* =========================================================
   v4.9.2 — My Account Dashboard Polish
   Wider content area and roomier shortcut cards.
   ========================================================= */

body.woocommerce-account.logged-in .woocommerce{
  grid-template-columns:230px minmax(0,1fr)!important;
  gap:28px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content{
  padding:36px 38px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{
  margin-bottom:22px!important;
}

/* Use three proper readable cards instead of narrow vertical columns. */
body.woocommerce-account .dm-account-shortcuts{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(180px,1fr))!important;
  gap:16px!important;
  margin-top:30px!important;
}

body.woocommerce-account .dm-account-shortcut{
  grid-template-columns:42px minmax(0,1fr) auto!important;
  min-height:132px!important;
  padding:20px!important;
}

body.woocommerce-account .dm-account-shortcut-copy strong{
  font-size:19px!important;
  line-height:1.18!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

body.woocommerce-account .dm-account-shortcut-copy span{
  font-size:12.5px!important;
  line-height:1.5!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* Prevent headings such as "Kontooplysninger" from being squeezed character-by-character. */
body.woocommerce-account .dm-account-shortcut,
body.woocommerce-account .dm-account-shortcut *{
  min-width:0!important;
  writing-mode:horizontal-tb!important;
}

/* Let the account shell occupy a bit more of the available desktop width. */
@media(min-width:1200px){
  body.woocommerce-account .dm-shop-layout{
    width:min(calc(100% - 56px),1460px)!important;
  }
}

/* Tablet: two cards then one full-width, still readable. */
@media(max-width:1150px) and (min-width:801px){
  body.woocommerce-account .dm-account-shortcuts{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.woocommerce-account .dm-account-shortcut:last-child{
    grid-column:1 / -1!important;
  }
}

/* Mobile keeps the compact single-column version from earlier releases. */
@media(max-width:800px){
  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:18px!important;
  }

  body.woocommerce-account .dm-account-shortcuts{
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-top:20px!important;
  }

  body.woocommerce-account .dm-account-shortcut,
  body.woocommerce-account .dm-account-shortcut:last-child{
    grid-column:auto!important;
    min-height:104px!important;
    padding:15px!important;
  }
}

/* =========================================================
   v4.9.3 — My Account Dashboard Final Proportion Fix
   Wider dashboard content and horizontal shortcut cards.
   ========================================================= */

@media(min-width:1001px){
  body.woocommerce-account .dm-shop-layout{
    width:min(calc(100% - 56px),1540px)!important;
  }

  body.woocommerce-account.logged-in .woocommerce{
    grid-template-columns:220px minmax(0,1fr)!important;
    gap:30px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:34px 36px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{
    margin-bottom:18px!important;
  }

  body.woocommerce-account .dm-account-shortcuts{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
    margin-top:22px!important;
  }

  body.woocommerce-account .dm-account-shortcut{
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr) 18px!important;
    gap:12px!important;
    align-items:center!important;
    min-height:108px!important;
    padding:16px 17px!important;
  }

  body.woocommerce-account .dm-account-shortcut-icon{
    width:34px!important;
    height:34px!important;
    font-size:14px!important;
  }

  body.woocommerce-account .dm-account-shortcut-copy strong{
    font-size:17px!important;
    line-height:1.15!important;
    margin-bottom:3px!important;
  }

  body.woocommerce-account .dm-account-shortcut-copy span{
    font-size:11.5px!important;
    line-height:1.42!important;
  }

  body.woocommerce-account .dm-account-shortcut-arrow{
    font-size:15px!important;
  }
}

/* Keep long titles from forcing awkward narrow wrapping. */
body.woocommerce-account .dm-account-shortcut-copy strong,
body.woocommerce-account .dm-account-shortcut-copy span{
  hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Tablet stays readable without making cards too narrow. */
@media(max-width:1000px) and (min-width:801px){
  body.woocommerce-account .dm-account-shortcuts{
    grid-template-columns:1fr 1fr!important;
  }

  body.woocommerce-account .dm-account-shortcut:last-child{
    grid-column:1 / -1!important;
  }
}

/* =========================================================
   v4.9.4 — My Account Dashboard card spacing fix
   Cleaner shortcut tiles inside the dashboard box.
   ========================================================= */

@media(min-width:1001px){
  body.woocommerce-account .dm-shop-layout{
    width:min(calc(100% - 56px),1580px)!important;
  }

  body.woocommerce-account.logged-in .woocommerce{
    grid-template-columns:220px minmax(0,920px)!important;
    justify-content:center!important;
    gap:32px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:36px 40px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{
    margin-bottom:20px!important;
  }

  body.woocommerce-account .dm-account-shortcuts{
    display:grid!important;
    grid-template-columns:1fr 1fr 1.12fr!important;
    gap:14px!important;
    margin-top:24px!important;
    align-items:stretch!important;
  }

  body.woocommerce-account .dm-account-shortcut{
    display:grid!important;
    grid-template-columns:34px 1fr 16px!important;
    grid-template-areas:
      "icon . arrow"
      "copy copy copy"!important;
    column-gap:10px!important;
    row-gap:10px!important;
    align-items:start!important;
    min-height:148px!important;
    padding:16px!important;
  }

  body.woocommerce-account .dm-account-shortcut-icon{
    grid-area:icon!important;
    width:34px!important;
    height:34px!important;
    font-size:13px!important;
  }

  body.woocommerce-account .dm-account-shortcut-copy{
    grid-area:copy!important;
  }

  body.woocommerce-account .dm-account-shortcut-arrow{
    grid-area:arrow!important;
    justify-self:end!important;
    align-self:center!important;
    font-size:14px!important;
  }

  body.woocommerce-account .dm-account-shortcut-copy strong{
    font-size:16px!important;
    line-height:1.18!important;
    margin-bottom:5px!important;
  }

  body.woocommerce-account .dm-account-shortcut-copy span{
    font-size:11.5px!important;
    line-height:1.48!important;
  }
}

body.woocommerce-account .dm-account-shortcut-copy strong,
body.woocommerce-account .dm-account-shortcut-copy span{
  hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}

@media(max-width:1180px) and (min-width:801px){
  body.woocommerce-account .dm-account-shortcuts{
    grid-template-columns:1fr 1fr!important;
  }

  body.woocommerce-account .dm-account-shortcut:last-child{
    grid-column:1 / -1!important;
  }
}

/* =========================================================
   v4.9.5 — My Account endpoints polish
   Consistent layout for dashboard, orders, downloads,
   addresses, account details and login/register.
   ========================================================= */

@media(min-width:1001px){
  body.woocommerce-account .dm-shop-layout{
    width:min(calc(100% - 56px),1500px)!important;
  }

  body.woocommerce-account.logged-in .woocommerce{
    grid-template-columns:220px minmax(0,860px)!important;
    justify-content:center!important;
    gap:30px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content{
    width:100%!important;
    max-width:860px!important;
    padding:34px 36px!important;
  }

  /* Dashboard shortcuts: three calm equal cards fully inside the shell. */
  body.woocommerce-account .dm-account-shortcuts{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:14px!important;
  }

  body.woocommerce-account .dm-account-shortcut{
    min-height:138px!important;
  }

  /* Orders / downloads use the full content width. */
  body.woocommerce-account .woocommerce-orders-table,
  body.woocommerce-account .woocommerce-table,
  body.woocommerce-account table.shop_table{
    width:100%!important;
    margin:0!important;
  }

  /* Address page: two balanced cards in one row. */
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .u-columns.woocommerce-Addresses{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px!important;
    width:100%!important;
    margin:20px 0 0!important;
  }

  body.woocommerce-account .woocommerce-Addresses>.col-1,
  body.woocommerce-account .woocommerce-Addresses>.col-2,
  body.woocommerce-account .woocommerce-Addresses>.woocommerce-Address{
    float:none!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }

  body.woocommerce-account .woocommerce-Address{
    min-height:190px!important;
    padding:24px!important;
  }

  body.woocommerce-account .woocommerce-Address-title{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    gap:12px!important;
  }

  body.woocommerce-account .woocommerce-Address-title .edit{
    float:none!important;
    white-space:nowrap!important;
    font-size:11.5px!important;
    margin-top:4px!important;
  }

  /* Account details form should feel like one coherent form panel. */
  body.woocommerce-account form.woocommerce-EditAccountForm{
    width:100%!important;
    max-width:760px!important;
    margin:0 auto!important;
  }

  /* Login / registration: two equal cards aligned on the same baseline. */
  body.woocommerce-account:not(.logged-in) .woocommerce{
    width:min(100%,980px)!important;
    max-width:980px!important;
    margin:0 auto!important;
  }

  body.woocommerce-account:not(.logged-in) #customer_login,
  body.woocommerce-account:not(.logged-in) .u-columns#customer_login{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:26px!important;
    align-items:start!important;
    width:100%!important;
    margin:0!important;
  }

  body.woocommerce-account:not(.logged-in) #customer_login>.col-1,
  body.woocommerce-account:not(.logged-in) #customer_login>.col-2{
    float:none!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    align-self:start!important;
  }

  body.woocommerce-account:not(.logged-in) #customer_login form{
    margin:0!important;
  }
}

@media(max-width:1000px) and (min-width:801px){
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .u-columns.woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:800px){
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .u-columns.woocommerce-Addresses,
  body.woocommerce-account:not(.logged-in) #customer_login,
  body.woocommerce-account:not(.logged-in) .u-columns#customer_login{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  body.woocommerce-account .woocommerce-Address-title{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:5px!important;
  }

  body.woocommerce-account .woocommerce-Address-title .edit{
    margin:0!important;
  }
}

/* =========================================================
   v4.9.6 — My Account full-section polish
   Dashboard, orders, addresses, downloads, account details,
   and logged-out login/register alignment.
   ========================================================= */

/* General account shell */
body.woocommerce-account .dm-shop-layout{
  width:min(calc(100% - 56px),1500px)!important;
}

body.woocommerce-account.logged-in .woocommerce{
  grid-template-columns:220px minmax(0,880px)!important;
  gap:30px!important;
  justify-content:center!important;
  align-items:start!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation{
  position:relative!important;
  top:auto!important;
}

body.woocommerce-account .woocommerce-MyAccount-content{
  padding:34px 36px!important;
  border-radius:18px!important;
}

/* Dashboard shortcut cards: prevent awkward wrapping */
body.woocommerce-account .dm-account-shortcuts{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}

body.woocommerce-account .dm-account-shortcut{
  min-height:132px!important;
  padding:16px!important;
  grid-template-columns:30px minmax(0,1fr) 14px!important;
  gap:10px!important;
}

body.woocommerce-account .dm-account-shortcut-copy strong{
  font-size:15px!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

body.woocommerce-account .dm-account-shortcut-copy span{
  font-size:11px!important;
  line-height:1.45!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Orders / Downloads / notices */
body.woocommerce-account .woocommerce-orders-table{
  width:100%!important;
}

body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-orders-table td{
  padding:12px 10px!important;
  vertical-align:middle!important;
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error{
  border-radius:12px!important;
  padding:14px 16px!important;
}

body.woocommerce-account .woocommerce-Button,
body.woocommerce-account .button{
  white-space:nowrap!important;
}

/* Address page: true 2-column cards, aligned edit links */
body.woocommerce-account .woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  margin-top:24px!important;
}

body.woocommerce-account .woocommerce-Address{
  width:auto!important;
  float:none!important;
  min-height:210px!important;
  padding:22px!important;
  border:1px solid rgba(25,20,18,.10)!important;
  border-radius:16px!important;
  background:#fffdfb!important;
  position:relative!important;
}

body.woocommerce-account .woocommerce-Address-title{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:14px!important;
}

body.woocommerce-account .woocommerce-Address-title h2{
  margin:0!important;
  font-size:24px!important;
  line-height:1.2!important;
}

body.woocommerce-account .woocommerce-Address-title .edit{
  position:static!important;
  float:none!important;
  margin:3px 0 0!important;
  white-space:nowrap!important;
  font-size:12px!important;
}

body.woocommerce-account .woocommerce-Address address{
  margin:0!important;
  line-height:1.6!important;
}

/* Account details */
body.woocommerce-account form.woocommerce-EditAccountForm{
  max-width:none!important;
}

body.woocommerce-account form.woocommerce-EditAccountForm fieldset{
  margin-top:26px!important;
  padding:20px!important;
  border-radius:14px!important;
}

body.woocommerce-account form.woocommerce-EditAccountForm .form-row{
  margin-bottom:14px!important;
}

/* Logged-out account page: put login/register side-by-side and centered */
body.woocommerce-account:not(.logged-in) .woocommerce{
  display:block!important;
  max-width:980px!important;
  margin:0 auto!important;
}

body.woocommerce-account:not(.logged-in) .woocommerce > h2,
body.woocommerce-account:not(.logged-in) .woocommerce-account-title{
  text-align:left!important;
}

body.woocommerce-account:not(.logged-in) .u-columns{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:28px!important;
  align-items:start!important;
}

body.woocommerce-account:not(.logged-in) .u-column1,
body.woocommerce-account:not(.logged-in) .u-column2{
  float:none!important;
  width:auto!important;
  margin:0!important;
}

body.woocommerce-account:not(.logged-in) form.login,
body.woocommerce-account:not(.logged-in) form.register{
  margin:0!important;
  min-height:100%!important;
  padding:24px!important;
  border-radius:16px!important;
}

body.woocommerce-account:not(.logged-in) form.login .form-row,
body.woocommerce-account:not(.logged-in) form.register .form-row{
  margin-bottom:14px!important;
}

@media(max-width:1000px){
  body.woocommerce-account.logged-in .woocommerce{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account:not(.logged-in) .u-columns{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-account .dm-account-shortcuts{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   v4.9.7 — Account alignment correction
   Fixes the address cards and logged-out login/register layout.
   ========================================================= */

@media(min-width:801px){
  /* ADDRESS ENDPOINT: force the two WooCommerce columns to sit on one line. */
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .col2-set.woocommerce-Addresses{
    display:flex!important;
    flex-direction:row!important;
    align-items:stretch!important;
    gap:18px!important;
    width:100%!important;
    margin:24px 0 0!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-1,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-2,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .woocommerce-Address{
    flex:1 1 0!important;
    float:none!important;
    width:0!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    position:relative!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address{
    min-height:0!important;
    padding:22px 22px 24px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title{
    display:block!important;
    margin:0 0 12px!important;
    position:relative!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2{
    margin:0 0 8px!important;
    font-size:22px!important;
    line-height:1.2!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit{
    display:inline-block!important;
    position:static!important;
    float:none!important;
    margin:0!important;
    font-size:11.5px!important;
    line-height:1.35!important;
    white-space:normal!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address{
    margin:0!important;
    line-height:1.55!important;
  }

  /* LOGGED OUT: use flex on the exact WooCommerce customer-login wrapper.
     This avoids legacy float/column CSS placing the two forms diagonally. */
  .woocommerce #customer_login,
  .woocommerce .u-columns#customer_login,
  .woocommerce .col2-set#customer_login{
    display:flex!important;
    flex-direction:row!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:28px!important;
    width:100%!important;
    max-width:900px!important;
    margin:0 auto!important;
  }

  .woocommerce #customer_login > .u-column1,
  .woocommerce #customer_login > .u-column2,
  .woocommerce #customer_login > .col-1,
  .woocommerce #customer_login > .col-2{
    flex:1 1 0!important;
    float:none!important;
    width:0!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    position:static!important;
    clear:none!important;
  }

  .woocommerce #customer_login h2{
    margin:0 0 12px!important;
  }

  .woocommerce #customer_login form.login,
  .woocommerce #customer_login form.register{
    width:100%!important;
    min-height:330px!important;
    margin:0!important;
    padding:24px!important;
    box-sizing:border-box!important;
  }
}

@media(max-width:800px){
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
  .woocommerce #customer_login,
  .woocommerce .u-columns#customer_login,
  .woocommerce .col2-set#customer_login{
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-1,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .col-2,
  .woocommerce #customer_login > .u-column1,
  .woocommerce #customer_login > .u-column2,
  .woocommerce #customer_login > .col-1,
  .woocommerce #customer_login > .col-2{
    width:100%!important;
    flex:0 0 auto!important;
  }
}

/* =========================================================
   v4.9.8 — Logged-out My Account final alignment
   Keep login and registration as two equal, level columns.
   ========================================================= */

@media(min-width:801px){
  body.woocommerce-account:not(.logged-in) .woocommerce{
    width:min(calc(100% - 48px),980px)!important;
    max-width:980px!important;
    margin:0 auto!important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set,
  body.woocommerce-account:not(.logged-in) .woocommerce #customer_login,
  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns#customer_login,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set#customer_login{
    display:flex!important;
    flex-flow:row nowrap!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:28px!important;
    width:100%!important;
    max-width:900px!important;
    margin:0 auto!important;
    padding:0!important;
    position:relative!important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns > .u-column1,
  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns > .u-column2,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set > .col-1,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set > .col-2,
  body.woocommerce-account:not(.logged-in) .woocommerce #customer_login > .u-column1,
  body.woocommerce-account:not(.logged-in) .woocommerce #customer_login > .u-column2,
  body.woocommerce-account:not(.logged-in) .woocommerce #customer_login > .col-1,
  body.woocommerce-account:not(.logged-in) .woocommerce #customer_login > .col-2{
    display:block!important;
    flex:1 1 0!important;
    float:none!important;
    clear:none!important;
    width:calc(50% - 14px)!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    position:static!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    transform:none!important;
    align-self:flex-start!important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce #customer_login h2,
  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns h2,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set h2{
    margin:0 0 14px!important;
    min-height:38px!important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce form.login,
  body.woocommerce-account:not(.logged-in) .woocommerce form.register{
    width:100%!important;
    min-height:342px!important;
    height:auto!important;
    margin:0!important;
    padding:24px!important;
    box-sizing:border-box!important;
    position:static!important;
    transform:none!important;
  }
}

@media(max-width:800px){
  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set,
  body.woocommerce-account:not(.logged-in) .woocommerce #customer_login{
    display:flex!important;
    flex-direction:column!important;
    gap:18px!important;
  }

  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns > .u-column1,
  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns > .u-column2,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set > .col-1,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set > .col-2{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    position:static!important;
    transform:none!important;
  }
}


/* =========================================================
   v4.9.9 — Woo account notice icon spacing fix
   Prevent the Woo notice icon from overlapping the first text
   on the Orders notice row.
   ========================================================= */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error{
  position:relative!important;
  padding:14px 18px 14px 44px!important;
}

body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-error::before{
  left:16px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin-top:0!important;
}

body.woocommerce-account .woocommerce-message .button,
body.woocommerce-account .woocommerce-info .button,
body.woocommerce-account .woocommerce-error .button,
body.woocommerce-account .woocommerce-message .woocommerce-Button,
body.woocommerce-account .woocommerce-info .woocommerce-Button,
body.woocommerce-account .woocommerce-error .woocommerce-Button{
  float:right!important;
  margin-left:14px!important;
}

/* =========================================================
   v4.9.10 — My Account endpoint consistency pass
   Final visual unification for Orders, Downloads and Account details.
   ========================================================= */

/* Give every logged-in account endpoint the same calm canvas. */
@media(min-width:1001px){
  body.woocommerce-account.logged-in .woocommerce{
    grid-template-columns:220px minmax(0,900px)!important;
    gap:32px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content{
    width:100%!important;
    max-width:900px!important;
    padding:34px 38px!important;
  }
}

/* Navigation: slightly more breathing room and clearer active state. */
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a{
  min-height:44px!important;
  display:flex!important;
  align-items:center!important;
  padding:10px 14px!important;
  line-height:1.25!important;
}

/* Notices: keep icon, text and action button on one clean row where space permits. */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error{
  min-height:54px!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  line-height:1.45!important;
}
body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-error::before{
  flex:0 0 auto!important;
}
body.woocommerce-account .woocommerce-message .button,
body.woocommerce-account .woocommerce-info .button,
body.woocommerce-account .woocommerce-error .button,
body.woocommerce-account .woocommerce-message .woocommerce-Button,
body.woocommerce-account .woocommerce-info .woocommerce-Button,
body.woocommerce-account .woocommerce-error .woocommerce-Button{
  margin-left:auto!important;
  flex:0 0 auto!important;
}

/* Orders: more polished table proportions and stable action column. */
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account table.shop_table{
  table-layout:auto!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  overflow:hidden!important;
  border-radius:14px!important;
}
body.woocommerce-account .woocommerce-orders-table th{
  font-size:11px!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-orders-table td{
  line-height:1.4!important;
}
body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions{
  width:1%!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions .button{
  margin:0!important;
}

/* Downloads: avoid a small lonely notice floating inside a large content card. */
body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info:first-child:last-child,
body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-message:first-child:last-child{
  margin:0!important;
}

/* Account details form: make fields and password area feel like one designed panel. */
body.woocommerce-account form.woocommerce-EditAccountForm{
  width:100%!important;
  max-width:820px!important;
  margin:0 auto!important;
}
body.woocommerce-account form.woocommerce-EditAccountForm .form-row-first,
body.woocommerce-account form.woocommerce-EditAccountForm .form-row-last{
  width:calc(50% - 8px)!important;
}
body.woocommerce-account form.woocommerce-EditAccountForm .form-row-first{
  float:left!important;
}
body.woocommerce-account form.woocommerce-EditAccountForm .form-row-last{
  float:right!important;
}
body.woocommerce-account form.woocommerce-EditAccountForm .form-row-wide{
  clear:both!important;
}
body.woocommerce-account form.woocommerce-EditAccountForm label{
  display:block!important;
  margin-bottom:7px!important;
  font-weight:700!important;
  line-height:1.3!important;
}
body.woocommerce-account form.woocommerce-EditAccountForm input.input-text{
  min-height:46px!important;
  padding:10px 13px!important;
  border-radius:10px!important;
}
body.woocommerce-account form.woocommerce-EditAccountForm fieldset{
  clear:both!important;
  margin:28px 0 22px!important;
  padding:22px!important;
  border:1px solid rgba(25,20,18,.10)!important;
  background:#fffdfb!important;
}
body.woocommerce-account form.woocommerce-EditAccountForm fieldset legend{
  padding:0 8px!important;
  font-size:22px!important;
  line-height:1.2!important;
}
body.woocommerce-account form.woocommerce-EditAccountForm button[type="submit"]{
  min-height:42px!important;
  padding-left:22px!important;
  padding-right:22px!important;
}

/* Mobile / tablet: keep forms and notices readable rather than squeezed. */
@media(max-width:800px){
  body.woocommerce-account .woocommerce-message,
  body.woocommerce-account .woocommerce-info,
  body.woocommerce-account .woocommerce-error{
    display:block!important;
    padding:16px 16px 16px 44px!important;
  }
  body.woocommerce-account .woocommerce-message .button,
  body.woocommerce-account .woocommerce-info .button,
  body.woocommerce-account .woocommerce-error .button,
  body.woocommerce-account .woocommerce-message .woocommerce-Button,
  body.woocommerce-account .woocommerce-info .woocommerce-Button,
  body.woocommerce-account .woocommerce-error .woocommerce-Button{
    display:inline-flex!important;
    float:none!important;
    margin:12px 0 0!important;
  }
  body.woocommerce-account form.woocommerce-EditAccountForm .form-row-first,
  body.woocommerce-account form.woocommerce-EditAccountForm .form-row-last{
    float:none!important;
    width:100%!important;
  }
}

/* =========================================================
   v4.9.11 — My Account dashboard breathing room
   Gives the dashboard content and shortcut cards enough width
   so labels such as “Kontooplysninger” do not feel cramped.
   ========================================================= */
@media (min-width:1001px){
  body.woocommerce-account.logged-in .woocommerce{
    grid-template-columns:220px minmax(0,940px)!important;
    gap:32px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:36px 40px!important;
  }

  body.woocommerce-account .dm-account-shortcuts{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:16px!important;
  }

  body.woocommerce-account .dm-account-shortcut{
    min-width:0!important;
    min-height:136px!important;
    padding:18px 16px!important;
    grid-template-columns:30px minmax(0,1fr) 16px!important;
    gap:11px!important;
  }

  body.woocommerce-account .dm-account-shortcut-copy strong{
    font-size:14px!important;
    line-height:1.18!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }

  body.woocommerce-account .dm-account-shortcut-copy span{
    font-size:11px!important;
    line-height:1.45!important;
  }
}

/* v4.9.12 — single-product desktop balance polish */
@media(min-width:801px){
  /* Keep the approved structure, but let the product presentation breathe a little more. */
  body.single-product .dm-shop-layout{
    width:min(calc(100% - 72px),1190px);
  }
  body.single-product .woocommerce div.product{
    grid-template-columns:minmax(0,490px) minmax(400px,1fr);
    column-gap:58px;
  }

  /* A slightly taller gallery balances the purchase panel and reduces the empty area beneath the photos. */
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image a{
    min-height:435px;
  }
  body.single-product .woocommerce div.product .woocommerce-product-gallery__image img{
    max-height:485px;
    padding:15px;
  }

  /* Keep six product thumbnails on one clean row whenever the gallery has room. */
  body.single-product .flex-control-thumbs{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:8px!important;
    margin-top:11px!important;
  }
  body.single-product .flex-control-thumbs li{
    min-width:0!important;
  }
  body.single-product .flex-control-thumbs img{
    padding:4px!important;
  }

  /* Improve the reading rhythm in the buy column without changing WooCommerce behaviour. */
  body.single-product .woocommerce div.product div.summary{
    padding-top:2px;
  }
  body.single-product .summary form.variations_form{
    margin-top:14px!important;
    padding-top:16px!important;
  }
  body.single-product .summary form.variations_form .woocommerce-variation-add-to-cart{
    margin-top:4px!important;
  }
  body.single-product .dm-product-trust{
    margin-top:14px!important;
  }

  /* Recommendation rows line up more cleanly with the main product content. */
  body.single-product .up-sells ul.products{
    max-width:820px!important;
  }
  body.single-product .related ul.products{
    max-width:100%!important;
  }
}

@media(min-width:801px) and (max-width:1100px){
  body.single-product .flex-control-thumbs{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}


/* v1.10 — safe add-on/totals spacing without revealing hidden plugin controls */
@media(min-width:801px){
  body.single-product .summary .single_variation_wrap,
  body.single-product .summary .single_variation,
  body.single-product .summary .woocommerce-variation-price,
  body.single-product .summary .woocommerce-variation-description,
  body.single-product .summary .woocommerce-variation-availability{
    width:100%!important;clear:both!important;float:none!important;position:static!important;
  }
  body.single-product .summary .woocommerce-variation-price,
  body.single-product .summary .woocommerce-variation-description,
  body.single-product .summary .woocommerce-variation-availability{margin:0 0 10px!important}

  body.single-product .summary .tm-extra-product-options,
  body.single-product .summary .tc-extra-product-options,
  body.single-product .summary .tc-extra-product-options-container,
  body.single-product .summary .tmcp-container,
  body.single-product .summary .tmcp-ul-wrap,
  body.single-product .summary .wc-pao-addon-container,
  body.single-product .summary .wc-pao-addons-container,
  body.single-product .summary .product-addon,
  body.single-product .summary .wapf-wrapper,
  body.single-product .summary .nyp{
    width:100%!important;max-width:100%!important;clear:both!important;float:none!important;position:static!important;
  }

  body.single-product .summary .tmcp-field-wrap,
  body.single-product .summary .cpf-section,
  body.single-product .summary .wc-pao-addon,
  body.single-product .summary .product-addon,
  body.single-product .summary .wapf-field-group{clear:both!important;margin-bottom:12px!important}

  body.single-product .summary .tm-epo-totals,
  body.single-product .summary .tm-final-totals,
  body.single-product .summary .tc-totals-form,
  body.single-product .summary .wc-pao-subtotal-line,
  body.single-product .summary .wapf-product-totals,
  body.single-product .summary .product-addon-totals{
    width:100%!important;max-width:100%!important;clear:both!important;float:none!important;position:static!important;margin:14px 0 16px!important;
  }

  body.single-product .summary .tm-epo-totals,
  body.single-product .summary .tm-final-totals,
  body.single-product .summary .tc-totals-form{
    padding:10px 0 0!important;border:0!important;border-top:1px solid var(--dm-line)!important;border-radius:0!important;background:transparent!important;
  }
}
@media(max-width:800px){
  body.single-product .summary .tm-epo-totals,
  body.single-product .summary .tm-final-totals,
  body.single-product .summary .tc-totals-form,
  body.single-product .summary .wc-pao-subtotal-line,
  body.single-product .summary .wapf-product-totals,
  body.single-product .summary .product-addon-totals{
    width:100%!important;clear:both!important;float:none!important;margin:12px 0 14px!important;
  }
}


/* =========================================================
   v4.9.15 — EPO totals cleanup on single-product page
   Keep accessory choices and the dynamic price summary in
   separate rows so they can never overlap each other.
   ========================================================= */
body.single-product .summary #tm-epo-totals,
body.single-product .summary .tm-epo-totals{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  clear:both!important;
  float:none!important;
  position:relative!important;
  margin:18px 0 16px!important;
  padding:12px 14px!important;
  border:1px solid var(--dm-line)!important;
  border-radius:12px!important;
  background:#fbfaf8!important;
  box-sizing:border-box!important;
}

body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals,
body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  column-gap:18px!important;
  row-gap:7px!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  clear:both!important;
  float:none!important;
  box-sizing:border-box!important;
}

body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals > dt,
body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals > dd,
body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals > dt,
body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals > dd{
  display:block!important;
  float:none!important;
  clear:none!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  line-height:1.35!important;
  box-sizing:border-box!important;
}

body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals > dt,
body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals > dt{
  grid-column:1!important;
  text-align:left!important;
  font-weight:500!important;
}

body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals > dd,
body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals > dd{
  grid-column:2!important;
  text-align:right!important;
  font-weight:700!important;
  white-space:nowrap!important;
}

/* Make the final total the strongest row without affecting plugin calculations. */
body.single-product .summary #tm-epo-totals dt.tm-final-totals,
body.single-product .summary #tm-epo-totals dd.tm-final-totals,
body.single-product .summary .tm-epo-totals dt.tm-final-totals,
body.single-product .summary .tm-epo-totals dd.tm-final-totals{
  padding-top:8px!important;
  margin-top:3px!important;
  border-top:1px solid var(--dm-line)!important;
}

/* Accessory fields themselves always finish before totals begin. */
body.single-product .summary .tm-extra-product-options .tmcp-field-wrap,
body.single-product .summary .tm-extra-product-options .cpf-section{
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  margin-bottom:12px!important;
}

/* Small screens: same separation, with a little tighter spacing. */
@media(max-width:800px){
  body.single-product .summary #tm-epo-totals,
  body.single-product .summary .tm-epo-totals{
    margin:14px 0!important;
    padding:10px 12px!important;
  }
  body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals,
  body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals{
    column-gap:12px!important;
  }
}


/* =========================================================
   v4.9.16 — hide empty EPO totals placeholder
   The totals block is invisible until it contains real text/value.
   ========================================================= */
body.single-product .summary #tm-epo-totals.dm-empty-totals,
body.single-product .summary .tm-epo-totals.dm-empty-totals{
  display:none!important;
}


/* =========================================================
   v4.9.17 — selected add-on prices
   Show the price of each selected EPO option independently
   of the variation/base-price totals block.
   ========================================================= */
body.single-product .summary .dm-option-price{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:8px;
  padding:2px 7px;
  border-radius:999px;
  background:#f8eef1;
  color:#9e1b43;
  font-size:11px;
  line-height:1.35;
  font-weight:700;
  white-space:nowrap;
  vertical-align:middle;
}

body.single-product .summary .dm-option-subtotal{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  width:100%;
  margin:12px 0 14px;
  padding:9px 12px;
  border:1px solid var(--dm-line);
  border-radius:10px;
  background:#fbfaf8;
  box-sizing:border-box;
  font-size:12px;
  line-height:1.35;
}

body.single-product .summary .dm-option-subtotal[hidden]{
  display:none!important;
}

body.single-product .summary .dm-option-subtotal-label{
  font-weight:600;
}

body.single-product .summary .dm-option-subtotal-value{
  color:#9e1b43;
  font-weight:800;
  white-space:nowrap;
}

@media(max-width:800px){
  body.single-product .summary .dm-option-price{
    margin-left:6px;
    font-size:10px;
  }
  body.single-product .summary .dm-option-subtotal{
    margin:10px 0 12px;
    padding:8px 10px;
  }
}


/* v4.9.18 — quantity-aware add-on badge */
body.single-product .summary .dm-option-price{
  max-width:100%;
  box-sizing:border-box;
}
@media(max-width:800px){
  body.single-product .summary .dm-option-price{
    white-space:normal;
  }
}


/* v4.9.21 stable option price display */
body.single-product .summary .dm-option-price{
  display:inline-block;
  margin-top:8px;
  white-space:nowrap;
}
body.single-product .summary .dm-option-subtotal{
  box-sizing:border-box;
}


/* v4.9.25 — cleaner selected add-ons subtotal */
body.single-product .summary .dm-option-subtotal{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  column-gap:18px;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:12px 0 14px;
  padding:10px 14px;
  box-sizing:border-box;
  overflow:hidden;
}

body.single-product .summary .dm-option-subtotal-label{
  min-width:0;
}

body.single-product .summary .dm-option-subtotal-value{
  justify-self:end;
  text-align:right;
  margin-left:12px;
  white-space:nowrap;
}

@media(max-width:800px){
  body.single-product .summary .dm-option-subtotal{
    column-gap:12px;
    padding:9px 12px;
  }
}


/* v4.9.26 — keep selected-addons total directly under the add-on section */
body.single-product .summary .dm-option-subtotal{
  clear:both;
  position:relative;
  z-index:1;
  width:100%;
  max-width:100%;
  margin:10px 0 14px;
}

body.single-product .summary .dm-option-subtotal-label,
body.single-product .summary .dm-option-subtotal-value{
  line-height:1.25;
}

body.single-product .summary .dm-option-subtotal-value{
  padding-left:16px;
}


/* v4.9.27 — subtotal is a clean full-width row before cart controls */
body.single-product .summary form.cart .dm-option-subtotal{
  display:flex !important;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin:12px 0 14px !important;
  padding:10px 14px !important;
  box-sizing:border-box !important;
  float:none !important;
  clear:both !important;
}

body.single-product .summary form.cart .dm-option-subtotal-label{
  flex:1 1 auto;
  min-width:0;
}

body.single-product .summary form.cart .dm-option-subtotal-value{
  flex:0 0 auto;
  margin:0 !important;
  padding:0 !important;
  text-align:right;
  white-space:nowrap;
  font-weight:700;
}

/* Keep the native option-price table from collapsing into a very narrow column. */
body.single-product .summary .dm-option-price-summary,
body.single-product .summary .tm-extra-product-options .tc-price-wrap,
body.single-product .summary .tm-extra-product-options .tmcp-field-wrap{
  min-width:0;
}

@media(max-width:800px){
  body.single-product .summary form.cart .dm-option-subtotal{
    gap:12px;
    padding:9px 12px !important;
  }
}


/* v4.9.28 — keep the custom add-on subtotal out of ThemeComplete option rows */
body.single-product .summary .dm-option-subtotal[hidden]{
  display:none !important;
}

body.single-product .summary .dm-option-subtotal:not([hidden]){
  display:flex !important;
  width:100% !important;
  max-width:100% !important;
  margin:12px 0 14px !important;
  padding:10px 14px !important;
  box-sizing:border-box !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  clear:both !important;
  float:none !important;
}

body.single-product .summary .dm-option-subtotal-label{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
}

body.single-product .summary .dm-option-subtotal-value{
  display:block !important;
  flex:0 0 auto !important;
  margin:0 !important;
  padding:0 !important;
  text-align:right !important;
  white-space:nowrap !important;
}

/* Prevent the custom subtotal from inheriting narrow option-row sizing. */
body.single-product .summary .tm-extra-product-options .dm-option-subtotal,
body.single-product .summary .tmcp-field-wrap .dm-option-subtotal,
body.single-product .summary li .dm-option-subtotal{
  position:static !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
}


/* v4.9.29 — subtotal belongs below the COMPLETE add-on area */
body.single-product .summary .tm-extra-product-options + .dm-option-subtotal,
body.single-product .summary .tm-extra-product-options-container + .dm-option-subtotal{
  margin-top:14px !important;
  margin-bottom:14px !important;
}

/* Never let the subtotal inherit list/field-row dimensions from ThemeComplete. */
body.single-product .summary .dm-option-subtotal{
  grid-column:1 / -1 !important;
  align-self:stretch !important;
  min-height:40px !important;
}


/* =========================================================
   v4.9.30 — native ThemeComplete totals full-width cleanup
   Keep Unit Price / Options Amount / Final Total out of the
   narrow add-on field column and readable on one row each.
   ========================================================= */
body.single-product .summary #tm-epo-totals,
body.single-product .summary .tm-epo-totals{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  flex:0 0 100% !important;
  align-self:stretch !important;
  clear:both !important;
  float:none !important;
  box-sizing:border-box !important;
  margin:0 0 14px !important;
}

body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals,
body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals{
  display:grid !important;
  grid-template-columns:minmax(120px,1fr) max-content !important;
  width:100% !important;
  max-width:100% !important;
  gap:7px 18px !important;
  align-items:center !important;
  box-sizing:border-box !important;
}

body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals > dt,
body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals > dt{
  grid-column:1 !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}

body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals > dd,
body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals > dd{
  grid-column:2 !important;
  width:auto !important;
  min-width:max-content !important;
  max-width:none !important;
  white-space:nowrap !important;
  text-align:right !important;
}

@media(max-width:800px){
  body.single-product .summary #tm-epo-totals .tm-extra-product-options-totals,
  body.single-product .summary .tm-epo-totals .tm-extra-product-options-totals{
    grid-template-columns:minmax(92px,1fr) max-content !important;
    gap:6px 12px !important;
  }
}


/* =========================================================
   v4.9.33 — clean full-width price box
   Same width and visual rhythm as "Valgte tilvalg".
   Native ThemeComplete totals remain active for calculations,
   but are visually replaced by this stable mirror.
   ========================================================= */

body.single-product .summary .dm-native-totals-mirrored{
  position:absolute !important;
  left:-99999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
}

body.single-product .summary .dm-native-price-box{
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0 0 14px;
  padding:10px 14px;
  box-sizing:border-box;
  border:1px solid var(--dm-line);
  border-radius:10px;
  background:#fbfaf8;
  overflow:hidden;
  clear:both;
}

body.single-product .summary .dm-native-price-box[hidden]{
  display:none !important;
}

body.single-product .summary .dm-native-price-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  width:100%;
  padding:6px 0;
  box-sizing:border-box;
  line-height:1.3;
}

body.single-product .summary .dm-native-price-row + .dm-native-price-row{
  border-top:1px solid rgba(30,20,20,.07);
}

body.single-product .summary .dm-native-price-row span{
  min-width:0;
  text-align:left;
  font-weight:500;
}

body.single-product .summary .dm-native-price-row strong{
  justify-self:end;
  text-align:right;
  white-space:nowrap;
  font-weight:700;
}

body.single-product .summary .dm-native-price-row.dm-native-final{
  font-weight:700;
}

@media(max-width:800px){
  body.single-product .summary .dm-native-price-box{
    padding:9px 12px;
  }

  body.single-product .summary .dm-native-price-row{
    gap:12px;
  }
}


/* =========================================================
   v4.9.34 — final alignment cleanup for price summary
   - Remove the small native ThemeComplete remnant completely
   - Force the mirrored price card onto its own full-width row
   - Match the exact width behavior of "Valgte tilvalg"
   ========================================================= */

body.single-product .summary .dm-native-totals-mirrored{
  display:none !important;
  position:static !important;
  width:0 !important;
  height:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  overflow:hidden !important;
}

body.single-product .summary .dm-native-price-box{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  flex:0 0 100% !important;
  align-self:stretch !important;
  grid-column:1 / -1 !important;
  clear:both !important;
  float:none !important;
  box-sizing:border-box !important;
  margin:0 0 14px !important;
  padding:10px 14px !important;
  border:1px solid var(--dm-line) !important;
  border-radius:10px !important;
  background:#fbfaf8 !important;
}

body.single-product .summary .dm-native-price-row{
  width:100% !important;
  grid-template-columns:minmax(0,1fr) max-content !important;
}

@media(max-width:800px){
  body.single-product .summary .dm-native-price-box{
    padding:9px 12px !important;
  }
}


/* =========================================================
   v4.9.36 — safe ThemeComplete totals handling
   Fixes duplicated product/footer sections seen in long screenshots.
   We no longer move or collapse ThemeComplete's live totals DOM node.
   ========================================================= */

/* Keep the native totals available to ThemeComplete, but invisible to the user. */
body.single-product .summary #tm-epo-totals.dm-native-totals-mirrored,
body.single-product .summary .tm-epo-totals.dm-native-totals-mirrored{
  position:absolute !important;
  left:-100000px !important;
  top:auto !important;
  width:1px !important;
  height:1px !important;
  min-width:1px !important;
  min-height:1px !important;
  max-width:1px !important;
  max-height:1px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  overflow:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  visibility:visible !important;
  display:block !important;
}

/* Our visible mirror stays full width and stable. */
body.single-product .summary .dm-native-price-box{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
  clear:both !important;
  float:none !important;
  margin:0 0 14px !important;
  padding:10px 14px !important;
  border:1px solid var(--dm-line) !important;
  border-radius:10px !important;
  background:#fbfaf8 !important;
  overflow:hidden !important;
}

body.single-product .summary .dm-native-price-row{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:16px !important;
  width:100% !important;
}

body.single-product .summary .dm-native-price-row strong{
  justify-self:end !important;
  white-space:nowrap !important;
}

/* Prevent accidental cloned recommendation/footer blocks from layout CSS. */
body.single-product .site-main > footer.site-footer ~ *,
body.single-product footer.site-footer ~ .related,
body.single-product footer.site-footer ~ .up-sells{
  display:none !important;
}

/* v4.9.37 — ret vandret scroll.
   Mega-menuens paneler er 980px brede og centreres ud fra et smalt menupunkt, saa de
   raekker ud over skaermkanten. De er visibility:hidden, ikke display:none, og tael­ler
   derfor stadig med i sidens bredde. "clip" afskaerer dem uden at lave en scroll-
   container, saa sticky-elementer stadig virker (det ville overflow:hidden bryde). */
html, body { overflow-x: clip; max-width: 100%; }

/* Bredde under koebsknappen. Kunden staar med spoergsmaalet netop der. */
.dm-product-width{margin:14px 0 0;font-size:14px;color:#4a423c}
.dm-product-width strong{font-weight:700}
.dm-product-width-note{color:#7b6f66;font-size:13px}
