/* Apuutiliv logo palette: forest green, leaf green and golden yellow. */
:root{
  --forest:#243f2f;
  --forest2:#385f3c;
  --ink:#1f3025;
  --muted:#718075;
  --cream:#f5f8f1;
  --paper:#fffefa;
  --lime:#77bf3f;
  --line:#e3eadf;
  --orange:#fbcc06;
  --shadow:0 16px 42px #243f2f15;
  --brand-green:#50b948;
  --brand-leaf:#77bf3f;
  --brand-gold:#fbcc06;
}

body{background-color:var(--paper);color:var(--ink)}
.announcement{background:#243f2f;color:#f4f8ee}
.pulse{background:#fbcc06;box-shadow:0 0 0 3px #fbcc0630}
.brand-mark,.cart-button,.primary-button,.dark-button,.category-button.active,
.checkout-button,.checkout-submit,.toast,.mobile-cartbar:not([hidden]),
.compact-pay-button,.contact-next{background-color:#243f2f}
.cart-button b{background:#fbcc06;color:#243f2f}
.desktop-nav a:hover,.footer-links a:hover,.promo-link:hover{color:#38a34a}
.brand-mark svg{fill:#77bf3f;stroke:#77bf3f}
.category-button:hover{color:#243f2f;background:#edf5e8}
.add-button{border-color:#d6e4d2;color:#243f2f}
.add-button:hover{background:#50b948;border-color:#50b948;color:#fff}
.wish:hover{color:#38a34a}
.benefit-icon,.delivery-icon,.modal-pin,.contact-icon{background:#eff6e9;color:#385f3c}
.delivery-banner,.catalog-note,.notice-card,.payment-note{background-color:#f0f6e9}
.banner-stamp{border-color:#77bf3f;color:#385f3c}
.promo-price,.product-badge{border-color:#dce8d6}
.search-box:focus-within,.payment-settings-form input:focus,.payment-settings-form select:focus,
#checkoutForm input:focus,#checkoutForm textarea:focus{outline-color:#77bf3f;border-color:#77bf3f}
.checkout-fields input:focus,.checkout-fields textarea:focus{outline-color:#77bf3f}
.header-account-actions a,.header-account-actions .account-profile,
.account-admin-link,.payment-setup-link{color:#315e39}
.header-account-actions .account-signup,.header-account-actions .account-login{color:#243f2f}
.header-account-actions .account-signup{background:#edf5e8;border-color:#dce9d5}
.account-tabs button.active{background:#e7f1df;color:#243f2f}
.account-card h1,.account-panel h1,.info-card h1,.checkout-page h1,.detail-copy h1,
.detail-price,.drawer-head h2,.summary-row.total{color:#243f2f}
.account-admin-link,.payment-setup-link,.info-card a,.checkout-page a:not(.brand),
.contact-map-link,.contact-secondary{color:#315e39}
.info-card section,.site-footer,.checkout-panel,.contact-tile{border-color:#e3eadf}
.contact-site{background:#f5f8f1;color:#243f2f}
.contact-page .info-card h1{color:#243f2f}
.contact-page .contact-dot{background:#50b948;box-shadow:0 0 0 4px #50b94820}
.contact-page .contact-icon{background:#edf5e8;border-color:#dce9d5;color:#385f3c}
.contact-page .contact-address{background:#f0f6e9!important}
.contact-page .info-card .contact-next{background:#243f2f}
.contact-page .contact-actions .primary-button{background:#77bf3f;color:#1e3526}
.contact-page .contact-actions .primary-button:hover{background:#8bcb57}
.contact-page .contact-secondary{color:#fff!important}
.contact-page .contact-related a:hover,.contact-page .contact-map-link:hover{color:#38a34a!important}
.contact-site a:focus-visible{outline-color:#fbcc06}
.account-card,.account-panel,.checkout-panel,.info-card{box-shadow:0 16px 42px #243f2f0d}
::selection{background:#dff0ca;color:#243f2f}

@media(prefers-reduced-motion:no-preference){
  .primary-button,.cart-button,.add-button,.header-account-actions a{transition:background-color .18s,color .18s,border-color .18s,transform .18s}
}

/* Authentic photographic hero of Sermitsiaq near Nuuk */
.hero-art.nuuk-scene{height:385px;border-radius:26px;background:#dce8e4;box-shadow:0 24px 55px #143b4525;overflow:hidden}
.hero-art .hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%}
@media(max-width:760px){.hero-art.nuuk-scene{height:290px}}
@media(max-width:375px){.hero-art.nuuk-scene{height:255px}}

/* 50% translucent logo-green gradient over the Sermitsiaq hero photo */
.hero-art.nuuk-scene{position:relative;isolation:isolate}
.hero-art.nuuk-scene::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,rgba(36,63,47,.5) 0%,rgba(56,163,74,.5) 100%);pointer-events:none}

/* Center the product add symbol and make its hover state clear. */
.add-button{display:inline-grid;place-items:center;padding:0;line-height:1;font-size:25px;font-weight:600;transition:background-color .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s}
.add-button:hover{background:#38a34a;border-color:#38a34a;color:#fff;transform:translateY(-2px);box-shadow:0 6px 14px #243f2f26}
.add-button:active{transform:translateY(0) scale(.96)}
.add-button:focus-visible{outline:3px solid #fbcc06;outline-offset:3px}
.add-button,.add-button:hover,.add-button:focus-visible{color:#fff!important}

/* A gentle increase for secondary text, without enlarging headings. */
.announcement{font-size:12px!important}
.eyebrow,.page-kicker,.promo-kicker{font-size:11px!important}
.hero-trust{font-size:11px!important}
.hero-trust b{font-size:11px!important}
.delivery-note b,.benefit-row b{font-size:12px!important}
.delivery-note small,.benefit-row small{font-size:11px!important;line-height:1.5}
.product-category,.related-card .product-category{font-size:10px!important}
.catalog-subtitle,.load-more-status,.catalog-note{font-size:13px!important;line-height:1.6}
.footer-company,.footer-links,.footer-copyright{font-size:12px!important;line-height:1.6}
#checkoutForm label span,.checkout-account small,.checkout-pickup-fields small,.payment-note p,.delivery-detail{font-size:12px!important;line-height:1.6}
.colorful-home .hero-hentbring-kicker{font-size:9px!important}
.colorful-home .hero-hentbring-copy small{font-size:10px!important;line-height:1.4}
.colorful-home .hero-hentbring-copy>span:not(.hero-hentbring-kicker){font-size:12px!important}
.journey-step{font-size:11px!important}
.journey-step b{font-size:10px!important}
@media(max-width:760px){
 .announcement{font-size:11px!important}
 .colorful-home .hero-hentbring-kicker{font-size:8px!important}
 .colorful-home .hero-hentbring-copy>span:not(.hero-hentbring-kicker){font-size:11px!important}
 .journey-step{font-size:10px!important}
 .journey-step b{font-size:9px!important}
}
@media(max-width:375px){
 .colorful-home .hero-hentbring-copy small{font-size:9px!important}
 .journey-step{font-size:9px!important}
}

/* Product images fit the card instead of growing past its clipping area. */
.product-image-link .product-visual{position:relative;display:block;min-height:0;height:100%;width:100%;transform:none!important;overflow:hidden}
.product-image-link .product-visual img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;min-height:0;padding:10px;object-fit:contain;object-position:center;box-sizing:border-box}
.add-button:not(:disabled){position:relative;font-size:0!important;display:grid;place-items:center;padding:0}
.add-button:not(:disabled):after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:14px;height:14px;background:linear-gradient(#fff,#fff) center/3px 100% no-repeat,linear-gradient(#fff,#fff) center/100% 3px no-repeat;pointer-events:none}
.cms-products-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.delivery-modal .modal-detail{gap:12px}
.delivery-modal .modal-detail span{max-width:70%;line-height:1.5}
.delivery-modal .modal-detail b{white-space:nowrap}
.delivery-modal .modal-service-note{font-size:12px;line-height:1.55;margin:12px 0 18px;color:#657b6d}

/* Visible language row inside the mobile menu. */
@media(max-width:760px){
 .mobile-menu-language .site-language-picker{display:flex;align-items:center;gap:8px;margin:0;padding:4px;border:0;background:transparent}
 .mobile-menu-language .language-options{position:static;display:flex;gap:8px;padding:0;opacity:1;visibility:visible;transform:none;border:0;box-shadow:none;background:transparent}
 .mobile-menu-language .site-language-picker button{display:grid;place-items:center;width:44px;height:44px;min-width:44px;padding:0;font-size:23px;border:1px solid #dbe7dd;border-radius:11px;background:#f5f8f2}
 .mobile-menu-language .language-current{border-color:#397d67;box-shadow:0 0 0 1px #397d67}
}

/* Soft colour in the menu and a matching category subview. */
.mobile-menu-panel{background:radial-gradient(ellipse at 95% 2%,rgba(77,181,164,.2),transparent 54%),radial-gradient(ellipse at 2% 94%,rgba(251,204,6,.14),transparent 52%),linear-gradient(145deg,#fffefa,#edf7ef)}
.mobile-menu-close{position:relative;display:grid;place-items:center;padding:0;font-size:0;flex:0 0 40px}
.mobile-menu-close:before,.mobile-menu-close:after{content:'';position:absolute;left:50%;top:50%;width:15px;height:2.5px;border-radius:2px;background:currentColor;transform:translate(-50%,-50%) rotate(45deg)}
.mobile-menu-close:after{transform:translate(-50%,-50%) rotate(-45deg)}
.mobile-menu-category-button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:54px;padding:0;border:0;border-bottom:1px solid #dce8dc;background:transparent;color:#203e2d;font:700 17px 'DM Sans',sans-serif;text-align:left;cursor:pointer}
.mobile-menu-category-button:after{content:'›';color:#78935c;font-size:24px}
.mobile-menu-back{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:#e5f0e3;color:#203e2d;cursor:pointer;margin-right:10px}
.mobile-menu-back[hidden],.mobile-menu-categories[hidden]{display:none!important}
.mobile-menu-back svg{width:22px;height:22px}
.mobile-menu-heading>span{margin-right:auto}
.show-categories .mobile-menu-links,.show-categories .mobile-menu-account,.show-categories .mobile-menu-language,.show-categories .mobile-menu-legal{display:none}
.mobile-menu-categories{padding:10px 0 0}
.mobile-menu-categories a{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:9px 0;text-decoration:none;border-bottom:1px solid #dbe8dc;color:#203e2d;line-height:1.4}
.mobile-menu-categories a:after{content:'↗';color:#78935c;margin-left:12px}
.mobile-menu-category-root{font-weight:800;font-size:17px;margin-top:10px}
.mobile-menu-subcategory{font-size:15px;padding-left:15px!important}
.mobile-menu-close:focus-visible,.mobile-menu-back:focus-visible,.mobile-menu-category-button:focus-visible{outline:3px solid #77bf3f;outline-offset:3px}

.payment-overview-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.payment-overview-heading h1{margin:0}
.payment-overview-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.payment-overview-summary article{display:grid;gap:8px;padding:18px;border:1px solid #dce8dc;border-radius:15px;background:linear-gradient(135deg,#f4f8e7,#e5f3ed)}.payment-overview-summary strong{font-size:22px;color:#203f30}.payment-overview-summary small{color:#657b6d}
.payment-overview-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.payment-overview-filters label{display:grid;gap:7px;font-size:14px;font-weight:700}.payment-overview-filters input,.payment-overview-filters select{width:100%;min-width:0;min-height:44px;padding:9px;border:1px solid #dce8dc;border-radius:10px;background:#fff;font:inherit}.payment-overview-search{grid-column:1/-1}
.payment-overview-table{overflow:auto;border:1px solid #dce8dc;border-radius:12px}.payment-overview-table table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.payment-overview-table th,.payment-overview-table td{padding:12px;border-bottom:1px solid #e6eee5;white-space:nowrap}.payment-overview-table th{background:#edf5ea}.payment-state{display:inline-block;padding:5px 9px;border-radius:20px;background:#f3f0e1;color:#725d22;font-size:12px}.payment-state.is-paid{background:#dcefdc;color:#275933}.payment-state.is-delivery{background:#e4eff5;color:#315868}.payment-overview-note{font-size:13px;color:#657b6d;line-height:1.6}
@media(max-width:600px){.payment-overview-summary{grid-template-columns:1fr}.payment-overview-filters{grid-template-columns:1fr}.payment-overview-search{grid-column:auto}}

/* Functional content must stay visible when rerendered or scrolled. */
.product-card{animation:none!important;opacity:1}
.add-button:disabled{font-size:12px!important;line-height:1.3;width:auto;min-width:40px;max-width:100%;padding:8px;white-space:normal;overflow-wrap:anywhere}
.primary-button,.checkout-button,.checkout-submit,.contact-next,.detail-buy{min-width:0;white-space:normal;line-height:1.35;overflow-wrap:anywhere}
.primary-button>span[aria-hidden],.promo-link>span[aria-hidden]{flex-shrink:0}
button:not(.add-button),a.primary-button{-webkit-text-fill-color:currentColor}
button:disabled{cursor:not-allowed}

.product-meta{flex-wrap:wrap;gap:8px}.product-meta .product-price{flex-shrink:0}.product-meta .card-quantity,.product-meta .add-button{flex-shrink:0;margin-left:auto}

/* Ensure account login remains readable after account CSS is loaded. */
.header-account-actions .account-login{background:transparent;color:#243f2f}
.header-account-actions .account-login:hover{background:transparent;color:#316044}
.header-account-actions a:focus-visible{outline:3px solid #f8ce58;outline-offset:3px}

/* Flat flags match Nuup Bussii; opacity denotes the selected language. */
.site-language-picker .site-language-flag{display:block;width:22px;height:15px;border-radius:2px;opacity:.5;transition:opacity .16s ease}.site-language-picker .language-current .site-language-flag{opacity:1}.mobile-menu-language .site-language-picker button,.mobile-menu-language .site-language-picker button:hover,.mobile-menu-language .site-language-picker button.language-current{background:transparent;border-color:transparent;box-shadow:none}.mobile-menu-language .site-language-picker{background:transparent;border:0}.site-language-picker button:focus-visible{outline:3px solid #397d67;outline-offset:2px}@media(prefers-reduced-motion:reduce){.site-language-picker .site-language-flag{transition:none}}

/* All language flags stay visible, matching the mobile language row. */
.site-language-picker{gap:6px;background:transparent;border:0;padding:0}
.site-language-picker .language-options{position:static;display:flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;box-shadow:none;opacity:1;visibility:visible;transform:none}
.site-language-picker .language-current,.site-language-picker .language-options button{width:34px;height:34px;background:transparent;border:0;box-shadow:none;animation:none}
.site-language-picker .language-current:hover,.site-language-picker .language-options button:hover{background:transparent;animation:none;transform:none}
.site-language-picker .site-language-flag{width:26px;height:18px}

/* Keep the three compact flags on one row in every header placement. */
.site-header>.header-account-group>.site-language-picker,.desktop-nav>.site-language-picker,.mobile-menu-language .site-language-picker{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:4px;white-space:nowrap}
.site-language-picker .language-options{flex-direction:row;flex-wrap:nowrap;gap:4px}
.site-language-picker .language-current,.site-language-picker .language-options button{width:32px;height:32px;flex:0 0 32px}
.site-language-picker .site-language-flag{width:22px;height:15px}
