/* Nuuk: fjord teal, aurora mint, colourful houses and a warm arctic sun. */
.colorful-home{background:radial-gradient(ellipse at 85% 8%,#dff5ec 0,transparent 36%),radial-gradient(ellipse at 8% 20%,#fff0dc 0,transparent 30%),#fffefa}
.colorful-home .announcement{background:linear-gradient(110deg,#243f2f,#146c70 58%,#365f3b)}
.colorful-home .hero{gap:4%;grid-template-columns:.92fr 1.08fr;padding-top:52px;padding-bottom:52px}
.colorful-home .hero h1{color:#164a49}
.colorful-home .hero h1 em{color:#247975}
.colorful-home .hero-copy:before{content:"";position:absolute;width:130px;height:130px;left:-45px;top:-25px;background:radial-gradient(circle,#ffce7040,transparent 70%);z-index:-1}
.colorful-home .primary-button,.colorful-home .cart-button{background:linear-gradient(120deg,#244d35,#16716b);box-shadow:0 6px 18px #1b696524}
.colorful-home .primary-button span{color:#ffdb73}
.colorful-home .hero-art.delivery-scene{height:440px;border-radius:28px;background:#73b9b0;box-shadow:0 25px 60px #174e4c26}
.colorful-home .hero-art.delivery-scene:after{background:linear-gradient(180deg,#123e4510 55%,#123e4570);z-index:1}
.colorful-home .delivery-scene .hero-photo{object-position:center 44%;animation:nuuk-art-drift 18s ease-in-out infinite alternate}
.colorful-home .hero-hentbring{left:18px;right:18px;bottom:18px;background:#fffefaF5;border-color:#fff8;border-radius:18px;padding:17px;box-shadow:0 8px 26px #113f432e}
.colorful-home .hero-hentbring-copy strong{font-size:25px;color:#174e4c;letter-spacing:-.7px}
.colorful-home .hero-hentbring-kicker{color:#926127;font-size:8px}
.colorful-home .hero-hentbring-button{background:linear-gradient(125deg,#ffdb75,#f7b948);color:#2f3928;box-shadow:0 5px 12px #d4912628;font-size:12px;min-height:46px}
.colorful-home .hero-hentbring-button span{color:#2f3928}
.colorful-home .hero-hentbring-button:hover{background:#ffe29a}
.delivery-journey{position:absolute;z-index:2;top:17px;left:17px;right:17px;padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fffefaeF;border:1px solid #fff9;border-radius:50px;color:#174e4c;box-shadow:0 6px 20px #164c4920}
.journey-step{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:10px;font-weight:700}
.journey-step b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#def1eb;color:#215c56;font-size:9px;animation:nuuk-order-step 9s ease-in-out infinite}
.journey-step:nth-of-type(2) b{animation-delay:3s}
.journey-step:nth-of-type(3) b{animation-delay:6s}
.delivery-journey i{height:2px;flex:1;max-width:34px;background:linear-gradient(90deg,#63bba5,#f4c763);position:relative}
.delivery-journey i:after{content:"";width:5px;height:5px;border-radius:50%;position:absolute;top:-1.5px;left:0;background:#168577;animation:nuuk-route 3s ease-in-out infinite}
.delivery-journey i:nth-of-type(2):after{animation-delay:1.5s}
.colorful-home .benefit-row{border:1px solid #e5eada;border-radius:20px;background:linear-gradient(105deg,#e9f5ed,#fff4dc 50%,#e8f4f5);box-shadow:0 8px 24px #22595008}
.colorful-home .benefit-row>div:nth-child(1) .benefit-icon{background:#ffdc93;color:#735321}
.colorful-home .benefit-row>div:nth-child(2) .benefit-icon{background:#b9e2da;color:#215b59}
.colorful-home .benefit-row>div:nth-child(3) .benefit-icon{background:#ffd6c8;color:#8f4e3f}
.colorful-home .category-button.active{background:linear-gradient(120deg,#285b3c,#217976)}
.colorful-home .product-image{background:linear-gradient(140deg,#eef6ec,#e5f3ed)}
.colorful-home .product-card:nth-child(3n+2) .product-image{background:linear-gradient(140deg,#fff4e1,#f9ecd9)}
.colorful-home .product-card:nth-child(3n) .product-image{background:linear-gradient(140deg,#eaf5f7,#e2eef1)}
.colorful-home .home-promo-banner{background:linear-gradient(120deg,#154d49,#267d75 60%,#68ae95);border-color:#87bfb5;color:#fffefa}
.colorful-home .promo-banner-copy h2,.colorful-home .promo-banner-copy p,.colorful-home .promo-kicker{color:#fffefa}
.colorful-home .promo-banner-copy h2 em{color:#ffdb83}
.colorful-home .promo-link{background:#ffda79;color:#264635}
.colorful-home .promo-link span{color:#264635}
.colorful-home .promo-sun{background:linear-gradient(145deg,#ffe99b,#f7b94f)}
@keyframes nuuk-order-step{0%,30%{background:#ffdb78;box-shadow:0 0 0 4px #ffdb7833;transform:scale(1.06)}36%,100%{background:#def1eb;box-shadow:0 0 0 0 transparent;transform:scale(1)}}
@keyframes nuuk-route{0%{transform:translateX(0);opacity:0}20%{opacity:1}80%{opacity:1}100%{transform:translateX(28px);opacity:0}}
@keyframes nuuk-art-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
@media(max-width:760px){
 .colorful-home .hero{grid-template-columns:1fr;padding-top:32px;padding-bottom:30px;gap:27px}
 .colorful-home .hero-art.delivery-scene{height:355px;border-radius:22px;background:linear-gradient(150deg,#a2d9c8,#1d6268)}
 .colorful-home .delivery-scene .hero-photo{position:absolute;top:49px;height:auto;width:100%;object-fit:contain;animation:none}
 .colorful-home .hero-hentbring{left:12px;right:12px;bottom:12px;padding:13px;gap:10px}
 .colorful-home .hero-hentbring-copy strong{font-size:22px}
 .colorful-home .hero-hentbring-copy>span:not(.hero-hentbring-kicker){font-size:10px}
 .colorful-home .hero-hentbring-copy small{font-size:9px}
 .delivery-journey{top:12px;left:12px;right:12px;padding:9px 10px;gap:5px}
 .journey-step{font-size:9px;gap:4px}
 .journey-step b{width:23px;height:23px;font-size:8px}
 .colorful-home .benefit-row{margin-left:5%;margin-right:5%;padding:18px 12px}
}
@media(max-width:375px){.colorful-home .hero-art.delivery-scene{height:335px}.journey-step{font-size:8px}.delivery-journey i{max-width:14px}.colorful-home .hero-hentbring-copy strong{font-size:19px}.colorful-home .hero-hentbring-copy small{font-size:8px}}
@media(prefers-reduced-motion:reduce){.colorful-home *, .colorful-home *:before,.colorful-home *:after{animation:none!important;transition:none!important}.colorful-home .delivery-scene .hero-photo{transform:none!important}}

/* Online ordering in Nuuk, with a readable delivery badge. */
.online-order-art{height:auto;aspect-ratio:600/320;align-self:center;background:#cae8df}
.online-order-scene{display:block;width:100%;height:100%}
.online-order-art .promo-price{right:4%;bottom:7%;width:auto;height:auto;min-width:100px;padding:16px 17px;border-radius:22px;transform:none;animation:none;display:flex;flex-direction:column;gap:3px;box-sizing:border-box;border:2px solid #d5e9d7}
.online-order-art .promo-price strong{font:800 30px/1.05 Manrope,sans-serif;white-space:nowrap;letter-spacing:-1px}
.online-order-art .promo-price small{font:800 11px/1.2 "DM Sans",sans-serif;letter-spacing:2px;align-self:stretch;color:#52746b}
.promo-link{text-decoration:none}
.order-phone{animation:order-phone-float 7s ease-in-out infinite;transform-origin:234px 160px}
.order-route{animation:order-route-travel 12s linear infinite}
.order-confirmation{animation:order-confirm-pulse 4s ease-in-out infinite;transform-origin:290px 52px}
@keyframes order-phone-float{50%{translate:0 -5px}}
@keyframes order-route-travel{to{stroke-dashoffset:-102}}
@keyframes order-confirm-pulse{50%{scale:1.08}}
@media(max-width:760px){.online-order-art{height:auto;min-height:0}.online-order-art .promo-price{min-width:82px;padding:11px 12px;border-radius:17px}.online-order-art .promo-price strong{font-size:25px}.online-order-art .promo-price small{font-size:9px;letter-spacing:1.8px}}
@media(prefers-reduced-motion:reduce){.order-phone,.order-route,.order-confirmation{animation:none}}

/* Match each actual hero image to its selected journey step. */
.journey-step{border:0;padding:0;background:transparent;color:inherit;font-family:inherit;cursor:pointer;min-height:30px}
.journey-step b{animation:none}
.journey-step.is-active b{background:#ffdb78;box-shadow:0 0 0 4px #ffdb7833}
.journey-step:focus-visible{outline:2px solid #23786c;outline-offset:4px;border-radius:8px}
.colorful-home .delivery-scene .hero-photo{animation:none;transform:none!important}
.delivery-journey i:after{animation:none;left:0}
@media(max-width:760px){.journey-step{min-height:30px}.colorful-home .delivery-scene .hero-photo{top:57px}.colorful-home .hero-art.delivery-scene{height:clamp(340px,85vw,390px)}}

@media(max-width:760px){.colorful-home .hero-art.delivery-scene{height:auto;min-height:0;padding-top:58px}.colorful-home .delivery-scene .hero-photo{position:relative;top:auto;height:auto;width:100%;display:block;object-fit:contain}.colorful-home .hero-hentbring{position:relative;inset:auto;margin:12px}.colorful-home .hero-art.delivery-scene:after{pointer-events:none;background:none}}

.hero-photo-link{display:block;width:100%;height:100%;border-radius:inherit;overflow:hidden}.hero-photo-link:focus-visible{outline:3px solid #fff;outline-offset:-5px}

/* Animate only the current step and pause work outside the visible scene. */
.journey-step.is-active b{animation:journey-active-pulse 2.4s ease-in-out infinite;animation-play-state:paused}
.delivery-journey i:after{animation:none}
.delivery-scene[data-current-step="0"] .delivery-journey i:nth-of-type(1):after,
.delivery-scene[data-current-step="1"] .delivery-journey i:nth-of-type(2):after{animation:nuuk-route 3s ease-in-out infinite;animation-delay:0s;animation-play-state:paused}
.delivery-scene.is-journey-running .journey-step.is-active b,.delivery-scene.is-journey-running .delivery-journey i:after{animation-play-state:running}
@keyframes journey-active-pulse{50%{transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.journey-step.is-active b,.delivery-journey i:after{animation:none!important}}

/* Keep both ordering customers visible on narrow desktop layouts. */
@media(min-width:761px){.colorful-home .hero-art.delivery-scene{height:auto;min-height:0;padding-top:58px;align-self:center}.delivery-scene .hero-photo-link{height:auto}.colorful-home .delivery-scene .hero-photo{position:relative;inset:auto;height:auto;width:100%;display:block;object-fit:contain}.colorful-home .hero-hentbring{position:relative;inset:auto;margin:12px}.colorful-home .hero-art.delivery-scene:after{pointer-events:none;background:none}}

.hero-service-link{color:inherit;text-decoration:none}.hero-service-link:hover{text-decoration:underline}.hero-service-link:focus-visible{outline:2px solid #23786c;outline-offset:4px;border-radius:4px}

/* Full-bleed scene, with controls layered over the photograph. */
.colorful-home .hero-art.delivery-scene{height:440px;min-height:0;padding-top:0;overflow:hidden}
.delivery-scene .hero-photo-link{position:absolute;inset:0;height:100%;border-radius:inherit}
.colorful-home .delivery-scene .hero-photo{position:absolute;inset:0;top:0;width:100%;height:100%;object-fit:cover;border-radius:0}
.colorful-home .hero-hentbring{position:absolute;left:18px;right:18px;bottom:18px;margin:0}
@media(max-width:760px){.colorful-home .hero-art.delivery-scene{height:clamp(380px,110vw,500px)}.colorful-home .hero-hentbring{left:12px;right:12px;bottom:12px}}
/* Portrait illustrations keep both sides of the handoff in view. */
.colorful-home .hero-art.delivery-scene{width:100%;max-width:480px;height:auto;aspect-ratio:2/3;justify-self:center}
.colorful-home .delivery-scene .hero-photo{object-position:center;transition:filter .5s;will-change:auto}
.delivery-journey{gap:6px;padding:10px 12px}
.journey-step span{font-size:clamp(9px,1.15vw,12px);white-space:nowrap}
.delivery-journey i{min-width:8px}
.delivery-scene.is-journey-running .journey-step.is-active b{animation:story-hop 1.8s ease-in-out infinite}
.delivery-scene[data-current-step="0"] .delivery-journey i:nth-of-type(1):after,.delivery-scene[data-current-step="1"] .delivery-journey i:nth-of-type(2):after{animation-duration:4.5s}
.colorful-home .delivery-scene .hero-photo.story-enter{animation:story-reveal .65s cubic-bezier(.2,.7,.2,1) both}
@keyframes story-reveal{from{opacity:.35;filter:saturate(.6);clip-path:inset(0 0 8% 0 round 28px)}to{opacity:1;filter:saturate(1);clip-path:inset(0 round 28px)}}
@keyframes story-hop{0%,65%,100%{translate:0 0;scale:1}25%{translate:0 -3px;scale:1.08}40%{translate:0 1px;scale:1.02}}
@media(max-width:760px){.journey-step span{font-size:10px}.delivery-journey{left:12px;right:12px;top:12px;padding:10px}.colorful-home .hero-hentbring{padding:13px}.colorful-home .hero-hentbring-copy strong{font-size:23px}}
@media(max-width:360px){.journey-step span{font-size:9px}.delivery-journey{gap:4px;padding:8px}.journey-step{gap:4px}}
@media(prefers-reduced-motion:reduce){.colorful-home .delivery-scene .hero-photo.story-enter,.delivery-scene.is-journey-running .journey-step.is-active b{animation:none!important}}
@media(max-width:480px){.journey-step{flex-direction:column;gap:5px;flex:0 1 auto;min-width:0}.journey-step b{width:25px;height:25px}.delivery-journey{padding:9px 12px}.delivery-journey i{align-self:center;flex:1;max-width:20px}.journey-step span{font-size:10px}}

.restaurant-featured-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.restaurant-featured-grid .product-name{display:block}@media(max-width:767px){.restaurant-featured-grid{grid-template-columns:repeat(5,190px);overflow-x:auto;padding-bottom:16px}}

/* Restaurant partner invitation, with readable delivery options and local artwork. */
.partner-promo-banner{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;padding:34px 38px;content-visibility:visible}
.partner-banner-copy{min-width:0}.partner-banner-copy h2{font-size:clamp(30px,3.8vw,46px)}
.partner-banner-copy p+p{margin-top:1.7em}
.partner-delivery-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 12px}
.partner-delivery-options>div{padding:14px;border:1px solid #ffffff35;background:#ffffff0e;border-radius:13px}
.partner-delivery-options strong{display:block;color:#ffe198;font-size:14px;margin-bottom:6px}
.partner-delivery-options span{display:block;color:#fffefa;font-size:12px;line-height:1.6}
.partner-banner-copy .partner-fee-note{font-size:11px;line-height:1.6;color:#dfefe7}
.partner-banner-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:18px}
.partner-banner-actions .promo-link{margin:0;min-height:44px;font-size:13px;box-sizing:border-box}
.partner-join-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#fffefa;font-size:13px;font-weight:700;text-decoration:none}
.partner-banner-art{height:100%;min-height:350px;background:#255e51;align-self:stretch;aspect-ratio:auto}
.partner-banner-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 45%}
.partner-banner-actions a:focus-visible{outline:3px solid #ffe198;outline-offset:4px}
@media(max-width:760px){.partner-promo-banner{grid-template-columns:minmax(0,1fr);padding:24px 21px;gap:24px}.partner-delivery-options{grid-template-columns:minmax(0,1fr)}.partner-banner-art{height:auto;min-height:0;aspect-ratio:3/2}.partner-banner-art img{height:100%}.partner-banner-copy p{font-size:13px}}

#restaurantFeatured .add-button:disabled{width:auto;min-width:44px;padding:0 9px;color:#496159!important;background:#e9efe9;opacity:1;font-size:11px}

/* Connect the numbered circles, with movement timed to the selected scene. */
.colorful-home .delivery-journey{--journey-pad:12px;--journey-dot:27px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:10px var(--journey-pad);border-radius:22px}
.delivery-journey .journey-step{position:relative;z-index:1;flex-direction:column;gap:6px;min-width:0;white-space:normal}
.delivery-journey .journey-step b{width:var(--journey-dot);height:var(--journey-dot);flex:none}
.delivery-journey .journey-step span{white-space:normal;text-align:center;line-height:1.3}
.colorful-home .delivery-journey i{position:absolute;top:calc(10px + var(--journey-dot)/2 - 1px);left:calc(var(--journey-pad) + (100% - 2*var(--journey-pad))/6);width:calc((100% - 2*var(--journey-pad))/3);height:2px;min-width:0;max-width:none;background:linear-gradient(90deg,#63bba550,#f4c76380);pointer-events:none}
.colorful-home .delivery-journey i:nth-of-type(2){left:50%}
.colorful-home .delivery-journey i:after{left:0;top:-2px;width:6px;height:6px;transform:translateX(-50%);opacity:0;animation:none}
.colorful-home .delivery-scene[data-current-step="0"] .delivery-journey i:nth-of-type(1):after,
.colorful-home .delivery-scene[data-current-step="1"] .delivery-journey i:nth-of-type(2):after{animation:nuuk-route 4.5s linear 1 both;animation-play-state:paused}
.colorful-home .delivery-scene.is-journey-running .delivery-journey i:after{animation-play-state:running}
@keyframes nuuk-route{0%{left:0;transform:translateX(-50%);opacity:0}8%{opacity:1}92%{opacity:1}100%{left:100%;transform:translateX(-50%);opacity:0}}
.colorful-home .hero-art.delivery-scene,.colorful-home .home-promo-banner,.colorful-home .delivery-banner{box-shadow:0 8px 20px #153f3614,0 24px 52px #153f3626}
@media(max-width:760px){.colorful-home .hero-art.delivery-scene,.colorful-home .home-promo-banner,.colorful-home .delivery-banner{box-shadow:0 6px 14px #153f3614,0 16px 32px #153f3626}}
@media(prefers-reduced-motion:reduce){.colorful-home .delivery-scene .delivery-journey i:after{animation:none!important;opacity:0}}
