/* Image-led brand pages, manual banner controls and native app screenshots. */
.hero-carousel{position:relative;max-width:1440px;margin:24px auto 48px;background:#f7f5f0;isolation:isolate;touch-action:pan-y}
.hero-frame{display:grid;grid-template-columns:42% 58%;min-height:520px}
.hero-copy{align-self:center;padding:56px 72px;min-width:0}
.hero-copy h1,.hero-copy h2{font-size:clamp(38px,4.2vw,62px);line-height:1.18;letter-spacing:-1.2px;font-weight:600}
.hero-copy p{font-size:18px;line-height:1.7;margin-top:18px}.hero-copy .button{margin-top:28px}
.hero-media{min-width:0;overflow:hidden;display:flex;align-items:center;justify-content:center}
.hero-media>.hero-image{width:100%;height:520px;object-fit:cover;object-position:58% center}
.hero-product-pair{display:flex;align-items:center;justify-content:center;gap:0;width:100%;padding:24px 8px}
.hero-product-pair img{width:50%;height:auto;object-fit:contain;min-width:0}
.carousel-arrow{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1px solid #d6d0c8;border-radius:50%;background:#fffffff0;color:#252321;font:inherit;font-size:28px;line-height:1;cursor:pointer;flex:none;box-shadow:0 2px 6px #00000008}
.carousel-arrow:hover{background:#fff;border-color:#bc2d30;color:#bc2d30}.carousel-arrow:disabled{opacity:.35;cursor:default}
.hero-carousel>.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2}
.hero-carousel>[data-previous]{left:12px}.hero-carousel>[data-next]{right:12px}
.carousel-dots{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:2px;padding:0 8px;border-radius:24px;background:#ffffffe6;z-index:2}
.carousel-dots button{width:32px;height:32px;padding:0;border:0;background:transparent;position:relative;cursor:pointer}
.carousel-dots button:after{content:"";position:absolute;inset:12px;border-radius:50%;background:#c7bfb4}
.carousel-dots button[aria-pressed=true]:after{background:#bc2d30}
.app-showcase{max-width:1280px;margin:0 auto;padding:52px 40px 64px;min-width:0}
.showcase-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
.showcase-header h2{font-size:34px;line-height:1.4}.showcase-header>a{font-size:15px;text-decoration:underline;text-underline-offset:5px;min-height:44px;display:inline-flex;align-items:center}
.gallery-controls{display:flex;align-items:center;gap:12px}.gallery-position{font-size:14px;color:#625d57;min-width:40px;text-align:center}
.app-gallery{position:relative;min-width:0}.app-gallery-rail{display:flex;gap:26px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#c6b8ab transparent;padding:2px 2px 20px;scroll-behavior:smooth;touch-action:pan-x pan-y}
.app-gallery-rail figure{flex:0 0 250px;width:250px;margin:0;scroll-snap-align:start;min-width:0}
.app-screen{border:6px solid #292725;border-radius:27px;overflow:hidden;background:#faf4ef;box-shadow:0 8px 24px #4433220c}
.app-screen img{display:block;width:100%;height:auto;aspect-ratio:1080/2340;object-fit:contain;background:#faf4ef}
.app-gallery-rail figcaption{margin-top:15px;text-align:center;font-size:16px;font-weight:500}
.app-showcase.page-gallery{padding-top:16px}.page-download .page-heading{padding-bottom:28px}
.app-gallery .gallery-controls{justify-content:flex-end;margin-bottom:22px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.section{padding-block:48px}.page-heading{padding-top:42px;padding-bottom:24px}.menu-section{padding-top:12px!important}.product-card h3,html[lang=en] .product-card h3{min-height:0;margin-bottom:6px}.product-card .menu-en{font-size:14px}
.atmosphere{margin-bottom:44px}.atmosphere-photo{height:340px!important}.bulk-banner{padding-bottom:48px;gap:48px}.bulk-copy .eyebrow{display:none}
.feature-split{padding-top:12px;padding-bottom:20px;margin-bottom:36px;align-items:center}.feature-split>img{height:380px;object-fit:cover}.feature-split .section-heading p{margin-top:0;font-size:19px}.feature-split .button{margin-top:22px}
.page-partner .feature-split{grid-template-columns:1fr;gap:22px}.page-partner .feature-split>img{width:100%;height:430px}.page-partner .feature-split>div{display:flex;align-items:center;justify-content:space-between;gap:24px}.page-partner .feature-split .button{margin-top:0;flex:none}
.rewards-conditions{padding-top:24px}.rewards-conditions>p{font-size:14px}.contact-channels{padding-top:12px}.copy-contact{font-size:14px}.form-help{margin-block:10px 18px}.event-details{padding-block:32px}
@media(min-width:701px) and (max-width:1100px){.hero-frame{min-height:440px;grid-template-columns:43% 57%}.hero-copy{padding:40px 58px}.hero-copy h1,.hero-copy h2{font-size:40px}.hero-media>.hero-image{height:440px}.hero-product-pair{padding:12px 0}.hero-copy p{font-size:16px}.app-showcase{padding-inline:28px}.app-gallery-rail figure{flex-basis:230px;width:230px}.feature-split>img{height:330px}}
@media(max-width:700px){.hero-carousel{margin-top:0;margin-bottom:28px}.hero-frame{grid-template-columns:1fr;grid-template-rows:250px minmax(232px,auto);min-height:482px}.hero-media{grid-row:1;height:250px}.hero-media>.hero-image{height:250px;object-position:58% center}.hero-copy{grid-row:2;padding:25px 24px 52px;align-self:center}.hero-copy h1,.hero-copy h2{font-size:34px;line-height:1.2;letter-spacing:-.6px}.hero-copy p{font-size:16px;margin-top:12px}.hero-copy .button{margin-top:20px}.hero-carousel>.carousel-arrow{top:125px;width:44px;height:44px;font-size:26px}.hero-carousel>[data-previous]{left:10px}.hero-carousel>[data-next]{right:10px}.hero-product-pair{height:250px;padding:5px 30px}.hero-product-pair img{width:50%;max-height:240px;object-fit:contain}.carousel-dots{bottom:10px}.app-showcase{padding:32px 20px 40px}.showcase-header{gap:16px;margin-bottom:22px}.showcase-header h2{font-size:27px}.showcase-header>a{font-size:14px;white-space:nowrap}.app-gallery-rail{gap:18px;padding-bottom:18px}.app-gallery-rail figure{flex-basis:235px;width:235px}.app-screen{border-width:5px;border-radius:24px}.app-gallery-rail figcaption{margin-top:12px;font-size:15px}.gallery-controls{gap:10px}.gallery-controls .carousel-arrow{width:44px;height:44px;font-size:25px}.app-gallery .gallery-controls{margin-bottom:18px}.page-download .page-heading{padding-bottom:18px}.app-showcase.page-gallery{padding-top:0}.section{padding-block:34px}.page-heading{padding-top:28px;padding-bottom:20px}.menu-section{padding-top:4px!important}.atmosphere{margin-bottom:32px}.atmosphere-photo{height:230px!important}.bulk-banner{padding-bottom:36px;gap:20px}.feature-split{padding-top:4px;margin-bottom:28px;gap:20px}.feature-split>img{height:270px}.feature-split .section-heading p{font-size:17px}.feature-split .button{margin-top:16px}.event-details{padding-block:24px}}
@media(max-width:360px){.hero-copy h1,.hero-copy h2{font-size:31px}.hero-frame{grid-template-rows:230px minmax(232px,auto);min-height:462px}.hero-media,.hero-media>.hero-image,.hero-product-pair{height:230px}.hero-carousel>.carousel-arrow{top:115px}.hero-product-pair{padding-inline:24px}.app-gallery-rail figure{flex-basis:220px;width:220px}}
@media(max-width:700px){.page-partner .feature-split>img{height:270px}.page-partner .feature-split>div{display:block}.page-partner .feature-split .button{margin-top:18px}}
@media(prefers-reduced-motion:reduce){.app-gallery-rail{scroll-behavior:auto}}
