:root { --ink:#2b1710; --ink-soft:#6d554a; --ember:#b8481c; --ember-dark:#8d2d0f; --cream:#fff8ec; --paper:#fffdf9; --line:#eadfce; --forest:#263f33; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid #e85b25; outline-offset:3px; }
img { display:block; max-width:100%; height:auto; }
.shell { width:min(1180px,calc(100% - 44px)); margin-inline:auto; }
.topline { background:var(--ink); color:#fff9ef; font-size:13px; }
.topline-inner { min-height:38px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.topline p { margin:0; }
.topline-inner div { display:flex; gap:12px; align-items:center; }
.topline a:hover { color:#ffd9b9; }
.site-header { position:sticky; top:0; z-index:20; background:rgba(255,253,249,.95); backdrop-filter:blur(14px); border-bottom:1px solid rgba(43,23,16,.08); }
.nav-wrap { min-height:86px; display:flex; align-items:center; gap:36px; }
.brand { width:180px; flex:0 0 auto; }
.brand img { width:100%; height:auto; mix-blend-mode:multiply; }
nav { display:flex; gap:28px; margin-left:auto; }
nav a { font-size:14px; font-weight:700; color:#4d372d; }
nav a:hover { color:var(--ember); }
.mobile-menu { display:none; position:relative; margin-left:auto; }
.mobile-menu summary { cursor:pointer; list-style:none; color:var(--ink); font-size:13px; font-weight:800; padding:10px; }
.mobile-menu summary::-webkit-details-marker { display:none; }
.mobile-menu>div { position:absolute; z-index:30; right:0; top:48px; width:230px; display:grid; padding:12px; border:1px solid var(--line); border-radius:12px; background:#fff; box-shadow:0 20px 50px rgba(43,23,16,.16); }
.mobile-menu a { padding:11px 10px; border-bottom:1px solid var(--line); font-size:13px; font-weight:700; }.mobile-menu a:last-child { border:0; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:0 24px; border-radius:10px; background:var(--ember); color:white; font-size:15px; font-weight:800; box-shadow:0 12px 24px rgba(185,61,21,.19); transition:transform .2s ease,background .2s ease; }
.button:hover { background:var(--ember-dark); transform:translateY(-2px); }
.button-small { min-height:44px; padding-inline:18px; white-space:nowrap; }
.button-ghost { background:transparent; color:var(--ink); box-shadow:inset 0 0 0 1px #cdbfaf; }
.button-ghost:hover { background:#fff; color:var(--ink); }
.hero { background:radial-gradient(circle at 85% 10%,#ffe0b7 0,rgba(255,224,183,0) 32%),linear-gradient(130deg,#fffaf1 0%,#fbf0df 100%); overflow:hidden; }
.hero-grid { min-height:620px; display:grid; grid-template-columns:1.02fr .98fr; align-items:center; gap:72px; padding-block:58px; }
.eyebrow { margin:0 0 16px; color:var(--ember-dark); font-size:12px; font-weight:900; letter-spacing:.17em; text-transform:uppercase; }
h1,h2 { font-family:Georgia,'Times New Roman',serif; letter-spacing:-.035em; }
h1 { max-width:680px; margin:0; font-size:clamp(52px,5.7vw,82px); line-height:.98; font-weight:500; }
.hero-lead { max-width:620px; margin:28px 0 0; color:var(--ink-soft); font-size:19px; line-height:1.7; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.trust-list { display:flex; flex-wrap:wrap; gap:24px; margin:28px 0 0; padding:0; list-style:none; color:#553e34; font-size:13px; font-weight:700; }
.trust-list li::before { content:'✓'; color:var(--ember); margin-right:7px; }
.hero-media { position:relative; padding:20px 22px 26px 0; }
.video-frame { position:relative; overflow:hidden; min-height:490px; border-radius:150px 14px 150px 14px; background:#24130d url('./assets/firewood-poster.jpg') center/cover no-repeat; box-shadow:0 40px 70px rgba(62,31,18,.25); }
.video-frame video { position:absolute; width:100%; height:100%; object-fit:cover; filter:saturate(1.08) contrast(1.05); }
.video-frame::after { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg,rgba(20,9,4,.08) 25%,rgba(20,9,4,.84) 100%); }
.video-caption { position:absolute; z-index:2; left:30px; bottom:28px; max-width:calc(100% - 60px); padding:13px 16px; border-radius:10px; background:rgba(31,15,8,.67); color:white; box-shadow:0 8px 28px rgba(0,0,0,.2); backdrop-filter:blur(5px); text-shadow:0 2px 5px rgba(0,0,0,.75); }
.video-caption span { display:block; font:500 28px/1 Georgia,serif; }
.video-caption small { display:block; margin-top:9px; color:#fff0e1; font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.12em; }
.video-play { position:absolute; z-index:4; top:50%; left:50%; min-height:48px; padding:0 18px; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.7); border-radius:99px; background:rgba(37,18,10,.82); color:#fff; font:800 13px Arial,sans-serif; cursor:pointer; box-shadow:0 10px 30px rgba(0,0,0,.3); backdrop-filter:blur(6px); }
.video-play:hover,.video-play:focus-visible { background:#fff; color:var(--ink); outline:3px solid rgba(255,255,255,.35); }
.video-play span { margin-right:7px; color:#ffb078; }
.price-peek { position:absolute; z-index:3; right:0; top:52px; width:138px; height:138px; display:grid; place-content:center; text-align:center; border-radius:50%; background:var(--forest); color:white; box-shadow:0 18px 35px rgba(20,43,30,.25); }
.price-peek span { font-size:12px; }.price-peek strong { display:block; margin-top:3px; font:500 34px Georgia,serif; }
.intro-strip { background:var(--ink); color:#fff; }
.intro-grid { display:grid; grid-template-columns:repeat(3,1fr); }
.intro-grid>div { display:flex; flex-direction:column; gap:8px; min-height:114px; justify-content:center; padding:20px 38px; border-right:1px solid rgba(255,255,255,.14); }
.intro-grid>div:first-child { padding-left:0; }.intro-grid>div:last-child { border-right:0; }
.intro-grid strong { font-family:Georgia,serif; font-size:19px; font-weight:500; }.intro-grid span { color:#d7c8bd; font-size:13px; }
.section { padding-block:88px; }
.section-heading { display:grid; grid-template-columns:1fr .85fr; align-items:end; gap:70px; margin-bottom:38px; }
h2 { margin:0; font-size:clamp(40px,4.3vw,60px); line-height:1.06; font-weight:500; }
.section-heading>p { margin:0 0 7px; color:var(--ink-soft); font-size:17px; line-height:1.7; }
.products-section { background:#fffdf9; }
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.product-card { position:relative; overflow:hidden; border:1px solid var(--line); border-radius:18px; background:white; transition:transform .2s ease,box-shadow .2s ease; }
.product-card:hover { transform:translateY(-4px); box-shadow:0 18px 40px rgba(63,39,26,.09); }
.product-card.featured { border-color:#e69b67; }
.popular { position:absolute; z-index:2; top:14px; left:14px; padding:7px 10px; border-radius:99px; background:var(--ember); color:white; font-size:10px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.product-image { height:235px; overflow:hidden; background:#ede4d7; }
.product-image img { width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.product-card:hover .product-image img { transform:scale(1.025); }
.product-content { padding:24px; }
.product-detail { margin:0 0 8px; color:var(--ember-dark)!important; font-size:11px!important; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.product-content h3 { margin:0; font:500 24px/1.15 Georgia,serif; }
.product-content h3 a:hover { color:var(--ember-dark); }
.product-content>p { min-height:48px; margin:12px 0 20px; color:var(--ink-soft); font-size:14px; line-height:1.6; }
.product-bottom { display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); padding-top:18px; }
.product-bottom strong { font:500 30px Georgia,serif; }.product-bottom a { color:var(--ember-dark); font-size:13px; font-weight:800; }
.section-link { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 14px; margin:32px 0 0; text-align:center; }
.delivery-section { background:var(--cream); }
.delivery-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:78px; align-items:center; }
.map-card { overflow:hidden; border:10px solid white; border-radius:20px; background:white; box-shadow:0 24px 60px rgba(66,41,28,.14); }
.map-card img { width:100%; aspect-ratio:1.05; object-fit:cover; }
.delivery-photo img { aspect-ratio:4/3; }
.map-key { display:flex; flex-wrap:wrap; gap:15px; padding:18px 14px 12px; color:var(--ink-soft); font-size:10px; font-weight:700; }
.map-key span { display:flex; align-items:center; gap:5px; }.dot { width:9px; height:9px; border-radius:50%; display:inline-block; }
.free { background:#ef8a45; }.ten { background:#e34e4f; }.fifteen { background:#68c8eb; }
.delivery-copy>p:not(.eyebrow):not(.small-note) { margin:24px 0; color:var(--ink-soft); font-size:17px; line-height:1.75; }
.town-list { display:flex; flex-wrap:wrap; gap:9px; }.town-list span { padding:8px 12px; border-radius:99px; background:white; border:1px solid #e4d3bf; color:#51392e; font-size:12px; font-weight:700; }
.small-note { margin:20px 0 10px; color:var(--ink-soft); font-size:13px; }.text-link { color:var(--ember-dark); font-size:14px; font-weight:900; }
.story-section { background:white; }.story-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:90px; align-items:center; }
.story-copy>p:not(.eyebrow) { max-width:620px; color:var(--ink-soft); font-size:16px; line-height:1.8; }.story-copy .text-link { display:inline-block; margin-top:10px; }
.values-card { border-radius:20px; background:var(--forest); color:white; padding:42px; box-shadow:24px 24px 0 #e9ddcb; }
.values-card>p { margin:0 0 28px; color:#f5cda7; font-size:11px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.values-card ul { margin:0; padding:0; list-style:none; }.values-card li { display:flex; align-items:center; gap:20px; padding:22px 0; border-top:1px solid rgba(255,255,255,.14); }
.value-icon { width:48px; height:48px; flex:0 0 48px; display:grid; place-items:center; border-radius:50%; background:rgba(243,160,95,.13); color:#f3a05f; }
.value-icon svg { width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.values-card strong { display:block; font:500 21px Georgia,serif; }.values-card small { display:block; margin-top:6px; color:#c8d6cd; line-height:1.5; }
.order-section { background:var(--paper); padding-top:0; }
.order-card { display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:70px; padding:62px; border-radius:24px; background:linear-gradient(120deg,#e45720,#bb3b14); color:white; box-shadow:0 24px 60px rgba(185,61,21,.22); }
.eyebrow-light { color:#ffdfbe; }.order-card p:not(.eyebrow) { max-width:660px; margin:20px 0 0; color:#ffe6d5; line-height:1.7; }
.order-actions { display:grid; gap:10px; }.button-light { background:white; color:var(--ember-dark); box-shadow:none; }.button-light:hover { background:#fff5e9; color:var(--ember-dark); }
.button-outline-light { background:transparent; box-shadow:inset 0 0 0 1px rgba(255,255,255,.65); }.button-outline-light:hover { background:rgba(255,255,255,.1); }
.order-actions span { margin-top:6px; text-align:center; color:#ffdbc5; font-size:11px; }
.faq-section { background:#fff; }.faq-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:90px; }.faq-grid>div:first-child>p:last-child { color:var(--ink-soft); line-height:1.6; }
.faq-list { border-top:1px solid var(--line); }.faq-list details { border-bottom:1px solid var(--line); padding:22px 0; }
.faq-list summary { cursor:pointer; list-style:none; padding-right:34px; font:500 20px Georgia,serif; position:relative; }.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+'; position:absolute; right:4px; top:-3px; color:var(--ember); font:500 28px Arial; }.faq-list details[open] summary::after { content:'–'; }
.faq-list details p { margin:14px 34px 0 0; color:var(--ink-soft); line-height:1.7; font-size:14px; }
footer { background:var(--ink); color:white; padding:52px 0 22px; }
.footer-grid { display:grid; grid-template-columns:1.3fr .7fr 1fr; gap:70px; }.footer-brand img { width:170px; height:auto; border-radius:5px; }
.footer-brand p { max-width:360px; color:#cbbcb2; font-size:14px; line-height:1.7; }
.footer-grid>div:not(.footer-brand) { display:flex; flex-direction:column; gap:12px; font-size:13px; }.footer-grid strong { margin-bottom:5px; color:#f3ad79; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.footer-grid a { color:#e2d8d1; }.footer-grid a:hover { color:white; }.socials { display:flex; gap:12px; margin-top:4px; }
.gingerweb-credit { width:120px; margin:30px auto 0; display:block; opacity:.9; transition:opacity .2s ease; }
.gingerweb-credit:hover { opacity:1; }.gingerweb-credit img { width:120px; height:26px; object-fit:contain; }
.footer-bottom { display:flex; justify-content:space-between; margin-top:34px; padding-top:18px; border-top:1px solid rgba(255,255,255,.12); color:#97867c; font-size:11px; }
.footer-cookie-link { margin:0; padding:0; border:0; background:transparent; color:inherit; font:inherit; cursor:pointer; }.footer-cookie-link:hover { color:white; }

.cookie-banner[hidden],.cookie-settings[hidden],.cookie-settings-trigger[hidden] { display:none!important; }
.cookie-banner { position:fixed; z-index:1000; right:0; bottom:0; left:0; padding:16px; background:rgba(43,23,16,.25); backdrop-filter:blur(7px); }
.cookie-banner-inner { width:min(1180px,100%); margin:auto; display:grid; grid-template-columns:1fr auto; gap:24px 40px; padding:28px; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 24px 70px rgba(43,23,16,.28); }
.cookie-copy h2 { margin:0; font-size:32px; }.cookie-copy h2:focus { outline:none; }.cookie-copy>p:not(.eyebrow) { max-width:760px; margin:12px 0; color:var(--ink-soft); font-size:14px; line-height:1.65; }.cookie-copy>a { color:var(--ember-dark); font-size:13px; font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.cookie-actions { min-width:340px; display:grid; grid-template-columns:1fr 1fr; align-content:center; gap:10px; }.cookie-button { min-height:46px; padding:0 18px; border:2px solid transparent; border-radius:9px; font:800 13px Arial,sans-serif; cursor:pointer; }.cookie-accept { background:var(--ember); color:white; }.cookie-reject { background:var(--forest); color:white; }.cookie-manage { grid-column:1/-1; border-color:#bfae9e; background:white; color:var(--ink); }.cookie-button:hover { filter:brightness(.94); }
.cookie-settings { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr) auto; gap:10px; padding-top:20px; border-top:1px solid var(--line); }.cookie-choice { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px; border:1px solid var(--line); border-radius:10px; background:var(--paper); }.cookie-choice strong,.cookie-choice small { display:block; }.cookie-choice strong { font-size:13px; }.cookie-choice small { margin-top:5px; color:var(--ink-soft); font-size:11px; line-height:1.4; }.cookie-choice>span { flex:0 0 auto; color:var(--forest); font-size:10px; font-weight:900; text-transform:uppercase; }.cookie-choice input { width:22px; height:22px; flex:0 0 auto; accent-color:var(--ember); }.cookie-save { align-self:stretch; background:var(--ember); color:white; }
.cookie-settings-trigger { position:fixed; z-index:900; left:14px; bottom:14px; min-height:38px; padding:0 14px; border:1px solid #dbcdbd; border-radius:99px; background:white; color:var(--ink); font-size:11px; font-weight:800; cursor:pointer; box-shadow:0 8px 24px rgba(43,23,16,.16); }

.breadcrumbs { padding-block:16px; color:#8a7367; font-size:11px; }.breadcrumbs a:hover { color:var(--ember-dark); }
.subhero { overflow:hidden; background:radial-gradient(circle at 88% 0,#ffdfb5 0,rgba(255,223,181,0) 31%),linear-gradient(130deg,#fffaf1,#f9ead7); }
.subhero-inner { min-height:360px; display:grid; align-items:center; padding-block:58px; }.subhero h1 { max-width:850px; font-size:clamp(50px,6.5vw,78px); }.subhero .hero-lead { max-width:760px; }
.cream-section { background:var(--cream); }.forest-section { background:var(--forest); color:#fff; }
.prose-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; align-items:start; }
.prose { color:var(--ink-soft); font-size:16px; line-height:1.8; }.prose> :first-child { margin-top:0; }.prose h2,.prose h3 { color:var(--ink); }
.prose h2 { margin:42px 0 15px; font-size:38px; }.prose h3 { margin:28px 0 8px; font:500 24px/1.25 Georgia,serif; }
.prose ul,.prose ol { padding-left:22px; }.prose li { margin:9px 0; }.prose a { text-decoration:underline; text-underline-offset:3px; }
.inline-cookie-link { margin:0; padding:0; border:0; background:transparent; color:var(--ember-dark); font:900 14px Arial,sans-serif; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.table-wrap { max-width:100%; overflow-x:auto; margin:22px 0; border:1px solid var(--line); border-radius:12px; background:#fff; }
.prose table { width:100%; min-width:680px; border-collapse:collapse; color:var(--ink-soft); font-size:13px; line-height:1.55; }
.prose th,.prose td { padding:14px 16px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }.prose th { background:var(--cream); color:var(--ink); font-size:12px; }.prose tr:last-child td { border-bottom:0; }.prose code { color:var(--ink); font-size:12px; }
.narrow { max-width:790px; }.narrow>h2:first-child { margin-top:0; }
.feature-split { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:center; }.feature-split.reverse { grid-template-columns:1.1fr .9fr; }
.feature-image { min-height:480px; overflow:hidden; display:grid; place-items:center; padding:0; border-radius:22px; background:#eadfce; box-shadow:0 22px 50px rgba(63,39,26,.1); }
.feature-image img { width:100%; height:480px; object-fit:cover; }
.price-callout { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:30px; padding:22px; border-radius:12px; background:var(--forest); color:#fff; }
.price-callout span { font-size:13px; }.price-callout strong { font:500 34px Georgia,serif; }
.light .prose,.forest-section .prose { color:#d5e0d9; }.light h2,.forest-section h2,.forest-section h3 { color:#fff; }
.steps-list { display:grid; gap:12px; }.steps-list>div { padding:22px 24px; border:1px solid var(--line); border-radius:12px; background:#fff; }.steps-list strong { font:500 22px Georgia,serif; }.steps-list p { margin:7px 0 0; color:var(--ink-soft); }
.values-wide { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }.values-wide article { padding:30px; border:1px solid rgba(255,255,255,.14); border-radius:16px; }.values-wide h3 { margin:18px 0 10px; font:500 25px Georgia,serif; }.values-wide p { color:#c8d6cd; line-height:1.6; }
.booking-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:35px; align-items:start; }.order-form-wrap { border:1px solid var(--line); border-radius:20px; padding:36px; background:#fff; box-shadow:0 20px 50px rgba(63,39,26,.08); }
.preview-note { margin:0 0 22px; padding:12px 14px; border-radius:8px; background:#fff4e7; color:#7b4829; font-size:12px; line-height:1.5; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.field { display:grid; gap:7px; }.field.full { grid-column:1/-1; }.field label { font-size:12px; font-weight:800; color:#523b30; }
.field input,.field select,.field textarea { width:100%; border:1px solid #d8c9b8; border-radius:9px; background:#fffdfa; color:var(--ink); padding:13px 14px; font:inherit; }.field textarea { min-height:115px; resize:vertical; }
.field input:focus,.field select:focus,.field textarea:focus { outline:3px solid rgba(232,91,37,.18); border-color:var(--ember); }
.field-check { grid-column:1/-1; display:flex; gap:10px; align-items:flex-start; color:var(--ink-soft); font-size:12px; line-height:1.5; }.field-check input { margin-top:3px; }
.form-submit { grid-column:1/-1; border:0; cursor:pointer; }.form-note { grid-column:1/-1; margin:0; color:var(--ink-soft); font-size:11px; line-height:1.5; }
.contact-panel { padding:36px; border-radius:20px; background:var(--forest); color:#fff; }.contact-panel h2 { font-size:40px; }.contact-panel>a { display:block; margin:24px 0 6px; color:#f7b27e; font:500 30px Georgia,serif; }.contact-panel p { color:#d0ddd4; line-height:1.6; }.contact-panel hr { margin:30px 0; border:0; border-top:1px solid rgba(255,255,255,.16); }.contact-panel h3 { font:500 23px Georgia,serif; }.contact-panel li { margin:12px 0; color:#d0ddd4; line-height:1.5; }
.guide-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:18px; }.guide-grid article { min-height:330px; padding:32px; border:1px solid var(--line); border-radius:18px; background:#fff; }.guide-grid span { color:var(--ember-dark); font-size:10px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }.guide-grid h2 { margin:24px 0 16px; font-size:34px; }.guide-grid p { color:var(--ink-soft); line-height:1.7; }
.article { background:#fff; }.article .prose { font-size:17px; }.article-links { display:flex; flex-wrap:wrap; gap:12px; margin-top:36px; }.article-links a { padding:12px 16px; border-radius:8px; background:var(--cream); color:var(--ember-dark); font-size:13px; font-weight:800; text-decoration:none; }

@media (max-width:960px) {
  nav { display:none; }.mobile-menu { display:block; }.nav-wrap { min-height:76px; }.brand { width:152px; }.nav-wrap .button { margin-left:0; }
  .hero-grid { min-height:auto; grid-template-columns:1fr; gap:46px; padding-block:52px; }.hero-copy { text-align:center; }.hero-lead { margin-inline:auto; }.hero-actions,.trust-list { justify-content:center; }
  .hero-media { width:min(600px,100%); margin-inline:auto; }.video-frame { min-height:460px; }
  .section { padding-block:68px; }.section-heading,.delivery-grid,.story-grid,.faq-grid,.prose-grid,.feature-split,.feature-split.reverse,.booking-grid { grid-template-columns:1fr; gap:42px; }.product-grid { grid-template-columns:repeat(2,1fr); }.order-card { grid-template-columns:1fr; gap:34px; }.guide-grid { grid-template-columns:1fr; }.values-wide { grid-template-columns:1fr; }
  .cookie-banner-inner { grid-template-columns:1fr; }.cookie-actions { min-width:0; }.cookie-settings { grid-template-columns:1fr 1fr; }.cookie-save { min-height:78px; }
}
@media (max-width:680px) {
  .shell { width:min(100% - 28px,1180px); }.topline { display:none; }.nav-wrap { min-height:70px; gap:6px; }.brand { width:120px; }.button-small { min-height:40px; padding-inline:11px; font-size:11px; }.mobile-menu summary { padding:8px 5px; font-size:12px; }
  .hero-grid { padding-block:36px 42px; }h1 { font-size:46px; }.hero-lead { font-size:16px; }.hero-actions { display:grid; }.hero-actions .button { width:100%; }.trust-list { gap:10px 18px; }
  .hero-media { padding-right:8px; }.video-frame { min-height:360px; border-radius:100px 12px 100px 12px; }.video-caption { left:25px; bottom:26px; }
  .price-peek { width:104px; height:104px; top:34px; }.price-peek strong { font-size:27px; }
  .intro-grid { grid-template-columns:1fr; padding-block:10px; }.intro-grid>div { min-height:86px; padding:18px 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.13); }.intro-grid>div:last-child { border-bottom:0; }
  .section { padding-block:54px; }.section-heading { gap:22px; margin-bottom:26px; }h2 { font-size:40px; }.product-grid { grid-template-columns:1fr; }.product-image { height:200px; }
  .delivery-grid,.story-grid { gap:50px; }.values-card { padding:30px 24px; box-shadow:12px 12px 0 #e9ddcb; }.order-section { padding-top:0; }.order-card { width:calc(100% - 18px); padding:38px 22px; }
  .subhero-inner { min-height:300px; padding-block:42px; }.subhero h1 { font-size:46px; }.feature-image { min-height:340px; }.feature-image img { height:340px; }.form-grid { grid-template-columns:1fr; }.field.full,.field-check,.form-submit,.form-note { grid-column:1; }.order-form-wrap,.contact-panel { padding:25px 18px; }
  .footer-grid { grid-template-columns:1fr; gap:36px; }.footer-bottom { display:grid; gap:8px; }
  .cookie-banner { padding:8px; }.cookie-banner-inner { max-height:calc(100vh - 16px); overflow:auto; gap:20px; padding:22px 18px; border-radius:13px; }.cookie-copy h2 { font-size:28px; }.cookie-actions,.cookie-settings { grid-template-columns:1fr; }.cookie-manage { grid-column:1; }.cookie-save { min-height:48px; }.cookie-choice { min-height:70px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }* { transition-duration:.01ms!important; } }

.notice { margin-bottom:20px; padding:14px 16px; border-radius:9px; font-size:14px; line-height:1.5; }
.notice-success { background:#e6f3ea; color:#1f5a36; border:1px solid #b8dcc3; }
.notice-error { background:#fff0ec; color:#8e2f15; border:1px solid #efc0b1; }
.hp-field { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
