:root {
  --ink:#192620; --forest:#203b32; --moss:#5e846b; --cream:#f5f0e6;
  --paper:#fffdf8; --sun:#d9934f; --line:#d6d9ca; --radius:1.1rem;
  --desktop-pastel-ink:#382b30; --desktop-pastel-muted:#705d64;
  --desktop-pastel-border:#fff8f6ba;
  --desktop-pastel-surface:radial-gradient(circle at 20% 15%,rgba(255,255,255,.34),transparent 34%),repeating-linear-gradient(118deg,rgba(126,68,84,.025) 0 1px,transparent 1px 5px),linear-gradient(135deg,rgba(250,229,232,.9),rgba(237,204,211,.84));
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#18283d; font:16px/1.6 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; letter-spacing:-.005em; }
h1,h2,h3,p { margin-top:0; }
h1,h2 { font-family:Georgia,"Times New Roman",serif; line-height:1.04; text-wrap:balance; }
h1 { font-size:clamp(2.85rem,6vw,5.7rem); letter-spacing:-.045em; }
h2 { font-size:clamp(2rem,3.5vw,3.45rem); letter-spacing:-.03em; }
h3 { font-size:1.15rem; line-height:1.25; letter-spacing:-.01em; }
a { color:inherit; }
img { display:block; width:100%; height:auto; }
.skip-link { position:absolute; left:1rem; top:-4rem; z-index:5; background:#fff; padding:.75rem; }
.skip-link:focus { top:1rem; }
:focus-visible { outline:3px solid #f1b06e; outline-offset:3px; }

.site-header { position:sticky; top:0; z-index:5; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem clamp(1.25rem,4vw,4.5rem); background:color-mix(in srgb,var(--paper) 94%,transparent); border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent); backdrop-filter:blur(10px); }
.brand { text-decoration:none; font:700 1.15rem/1 Georgia,serif; white-space:nowrap; }
.brand span { margin-left:.22em; color:var(--moss); }
nav { display:flex; gap:1.2rem; }
nav a { font-size:.9rem; text-decoration:none; }
nav a:hover,.text-link:hover { color:var(--moss); text-decoration:underline; text-underline-offset:.22em; }

.section { width:min(1180px,calc(100% - 2.5rem)); margin:0 auto; padding:clamp(4.5rem,10vw,8rem) 0; scroll-margin-top:6.5rem; }
.page-background { position:fixed; inset:var(--site-header-height,4.35rem) 0 0; z-index:0; margin:0; overflow:hidden; pointer-events:none; background:#18283d; }
.page-background-scroll,.page-background-static { position:absolute; inset:0; }
.page-background-scroll { display:none; }
.is-scroll-enhanced .page-background-scroll { display:block; }
.is-scroll-enhanced .page-background-static { display:none; }
.hero-journey { position:relative; min-height:calc(100svh - var(--site-header-height,4.35rem)); background:transparent; }
.hero-shell { position:relative; display:flex; align-items:center; width:100%; max-width:none; min-height:calc(100svh - var(--site-header-height,4.35rem)); padding:clamp(1.5rem,4vw,4rem) 0; isolation:isolate; background:transparent; }
.hero-shell::after { content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,#10231eed 0%,#10231ec9 26%,#10231e5e 53%,transparent 76%),linear-gradient(0deg,#10231e99 0%,transparent 42%); }
.hero-copy { position:relative; z-index:3; width:min(39rem,47vw); margin-left:max(1.25rem,calc((100% - 1180px)/2)); color:#fffdf8; text-shadow:0 2px 18px #08141080; }
.hero-copy h1 { max-width:11ch; margin-bottom:1.15rem; font-size:clamp(3.15rem,5vw,5.45rem); }
.eyebrow { color:var(--moss); font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.hero-copy .eyebrow { color:#d4e7b3; }
.lede { max-width:38rem; font-size:clamp(1.05rem,1.5vw,1.25rem); line-height:1.55; }
.hero-frame { position:absolute; inset:0; overflow:hidden; background:#18283d; isolation:isolate; }
.hero-frame::after { content:""; position:absolute; inset:0; z-index:2; pointer-events:none; box-shadow:inset 0 0 0 1px #ffffff1f; }
.hero-state { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 100%; opacity:0; will-change:opacity; }
.hero-state.is-loaded { opacity:var(--state-opacity,0); }
.hero-state[data-state="day"].is-loaded { --state-opacity:1; }
.hero-state-readout { position:absolute; z-index:3; right:max(1.25rem,calc((100% - 1180px)/2)); top:1.5rem; display:grid; justify-items:end; padding:.55rem .75rem; border:1px solid #ffffff42; border-radius:.8rem; color:white; background:#14231f99; backdrop-filter:blur(8px); text-shadow:0 1px 4px #000; }
.hero-state-readout span { font-size:.65rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.hero-state-readout strong { font:700 1.05rem/1.2 Georgia,serif; }
.hero-timeline { position:absolute; z-index:3; left:max(1.25rem,calc((100% - 1180px)/2)); right:max(1.25rem,calc((100% - 1180px)/2)); bottom:1.4rem; display:grid; grid-template-columns:repeat(4,1fr); gap:.5rem; color:#ffffffa8; font-size:.68rem; font-weight:800; letter-spacing:.06em; text-shadow:0 1px 5px #000; text-transform:uppercase; }
.hero-timeline::before { content:""; position:absolute; top:-.45rem; left:0; width:100%; height:2px; background:#d6d9ca; }
.hero-timeline::after { content:""; position:absolute; top:-.45rem; left:0; width:calc(var(--hero-progress,0) * 100%); height:2px; background:var(--sun); }
.hero-timeline span { transition:color .18s ease; }
.hero-timeline span:nth-child(n+3) { text-align:right; }
.hero-timeline span.is-active { color:#fff; }
.page-background-static { display:block; }
.page-background-static > img,.page-background-static noscript,.page-background-static noscript img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 100%; background:#18283d; }
.page-background figcaption { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
figcaption { padding-top:.6rem; color:#536158; font-size:.8rem; }
.hero-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin:1.65rem 0; }
.button { display:inline-block; border:1px solid var(--forest); border-radius:999px; padding:.72rem 1.1rem; background:var(--forest); color:white; font-weight:700; text-decoration:none; }
.button:hover,.button:focus { background:#10261e; }
.button-quiet { background:transparent; color:var(--forest); }
.hero-copy .button { border-color:#f6f0e5; background:#f6f0e5; color:#173129; text-shadow:none; }
.hero-copy .button:hover,.hero-copy .button:focus { background:#fff; }
.hero-copy .button-quiet { border-color:#ffffff8c; background:#10231e80; color:#fff; }
.button-small { padding:.55rem .85rem; font-size:.85rem; }
.fact-strip { display:flex; flex-wrap:wrap; gap:.5rem 1rem; padding:0; color:#45564b; font-size:.85rem; list-style:none; }
.hero-copy .fact-strip { color:#f4f4e5d9; }
.fact-strip li::before { content:"•"; color:var(--sun); margin-right:.35rem; }

main,.site-footer { position:relative; z-index:1; }
main > .section { margin-block:clamp(.75rem,2vw,1.5rem); padding-inline:clamp(1.25rem,3vw,2.5rem); color:#f5f8f6; background:transparent; border:0; box-shadow:none; backdrop-filter:none; text-shadow:0 2px 12px #07120fe6,0 1px 2px #07120f; }
main > .section .eyebrow { color:#c8dda9; }
main > .section h2 { max-width:18ch; }

.value-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:3rem; border-top:1px solid var(--line); }
.cards { display:grid; gap:1rem; }
.cards.three { grid-template-columns:repeat(3,1fr); }
.cards.two { grid-template-columns:repeat(2,1fr); }
.cards article,.doc-card { border:1px solid #ffffff2e; border-radius:var(--radius); padding:clamp(1.2rem,2.2vw,1.55rem); color:#f5f8f6; background:#142923; box-shadow:0 8px 20px #07120f38; backdrop-filter:none; text-shadow:none; }
.cards article p,.doc-card p { line-height:1.58; }
.media-split,.asset-library { display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,6vw,5rem); align-items:center; }
.media-split figure,.asset-library figure { margin:0; }
.media-split img,.asset-library img { border:1px solid #ffffff2b; border-radius:var(--radius); box-shadow:0 12px 32px #07120f4a; }
.included-media { display:grid; gap:.8rem; }
.included-media figure { position:relative; overflow:hidden; border-radius:var(--radius); }
.included-media img { display:block; width:100%; }
.included-media-primary img { aspect-ratio:5/3; object-fit:cover; }
.included-media-supporting { display:grid; grid-template-columns:1fr 1fr; gap:.8rem; }
.included-media-supporting img { aspect-ratio:5/3; object-fit:cover; }
.detail-systems-pair { display:grid; grid-template-columns:1fr 1fr; min-height:100%; }
.detail-systems-pair img { height:100%; border-radius:0; box-shadow:none; }
.included-technical-proof { grid-column:1/-1; }
.included-technical-proof img { aspect-ratio:5/3; object-position:center; }
.included-media figcaption { position:absolute; inset:auto .55rem .55rem; padding:.45rem .6rem; color:#fff; background:#0b1714d9; border:1px solid #ffffff38; border-radius:.55rem; font-size:.76rem; font-weight:750; line-height:1.25; text-shadow:none; }
.check-list { padding-left:1.2rem; }
.check-list li { margin:.45rem 0; }
.check-list li::marker { color:var(--moss); }
.text-link { display:inline-block; margin-top:1rem; color:var(--forest); font-weight:800; }
main > .plain-ready { background:transparent; }
.section-heading { max-width:50rem; margin-bottom:2rem; }
.section-heading > p:last-child { max-width:44rem; }
.comparison { display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; }
.comparison article { position:relative; overflow:hidden; color:#f5f8f6; background:#142923; border:1px solid #ffffff2e; border-radius:var(--radius); padding-bottom:1.2rem; box-shadow:0 10px 24px #07120f38; backdrop-filter:none; text-shadow:none; }
.comparison img { width:100%; aspect-ratio:5/6; object-fit:cover; }
.comparison h3,.comparison p { margin:.9rem 1.2rem 0; }
.comparison-label { position:absolute; z-index:1; top:1rem; left:1rem; padding:.35rem .65rem; background:var(--paper); border-radius:999px; font-weight:800; }
.comparison-label.accent { background:var(--sun); color:#251509; }
.callout { max-width:62rem; margin:1.5rem 0 0; padding:1rem 1.15rem; border-left:4px solid var(--sun); color:#f5f8f6; background:#142923; backdrop-filter:none; text-shadow:none; }
.video-proof .section-heading { margin-inline:auto; text-align:center; }
.video-proof .section-heading h2 { margin-inline:auto; }
.video-proof .section-heading > p:last-child { margin-inline:auto; }
.video-proof-card { max-width:980px; margin-inline:auto; overflow:hidden; color:#f5f8f6; background:#142923; border:1px solid #ffffff2e; border-radius:var(--radius); box-shadow:0 14px 36px #07120f59; text-shadow:none; }
.video-frame { position:relative; aspect-ratio:16/9; overflow:hidden; background:#0b1512; }
.video-frame.is-loading::after { content:"Loading player…"; position:absolute; inset:auto 1rem 1rem auto; z-index:2; padding:.4rem .65rem; color:#fff; background:#0b1714d9; border:1px solid #ffffff38; border-radius:.55rem; font-size:.78rem; font-weight:750; pointer-events:none; }
.video-poster { position:absolute; inset:0; width:100%; height:100%; margin:0; padding:0; overflow:hidden; border:0; background:#0b1512; color:#fff; cursor:pointer; font:inherit; }
.video-poster::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#09120fc7 0%,transparent 42%),linear-gradient(90deg,#09120f4f,transparent 45%); transition:background .18s ease; }
.video-poster:hover::after,.video-poster:focus-visible::after { background:linear-gradient(0deg,#09120fe0 0%,#09120f1f 58%),linear-gradient(90deg,#09120f66,transparent 48%); }
.video-poster img { width:100%; height:100%; object-fit:cover; }
.video-play { position:absolute; z-index:2; left:50%; top:50%; display:grid; place-items:center; width:clamp(4rem,8vw,5.5rem); aspect-ratio:1; border:2px solid #fff; border-radius:50%; background:#cb4c38e8; box-shadow:0 8px 25px #0007; transform:translate(-50%,-50%); transition:transform .18s ease,background .18s ease; }
.video-play span { width:0; height:0; margin-left:.32rem; border-top:.72rem solid transparent; border-bottom:.72rem solid transparent; border-left:1.05rem solid #fff; }
.video-poster:hover .video-play,.video-poster:focus-visible .video-play { background:#d75b45; transform:translate(-50%,-50%) scale(1.06); }
.video-poster-label { position:absolute; z-index:2; left:1.25rem; bottom:1.15rem; font-size:clamp(.9rem,2vw,1.05rem); font-weight:800; letter-spacing:.01em; }
.video-iframe { display:block; width:100%; height:100%; border:0; background:#0b1512; }
.video-proof-meta { padding:1rem 1.2rem 1.2rem; }
.video-proof-meta p { margin-bottom:.45rem; }
.video-proof-meta .text-link { color:#d8ead2; }
.video-status { min-height:1.5em; color:#cbd8d1; font-size:.88rem; }
.video-fallback { margin-top:.15rem; }
.video-noscript { max-width:980px; margin:1rem auto 0; padding:1rem 1.15rem; color:#f5f8f6; background:#142923; border-left:4px solid var(--sun); text-shadow:none; }
.video-noscript a { font-weight:800; }
main > .asset-library { background:transparent; color:#f8f5ed; }
.asset-library .eyebrow { color:#bdcf9c; }
.asset-library { grid-template-columns:.8fr 1.2fr; }
.asset-browser-screenshot img { display:block; width:100%; aspect-ratio:1440/537; object-fit:cover; object-position:top; }
.product-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.25rem; }
.proof-card { overflow:hidden; margin:0; color:#f5f8f6; background:#142923; border:1px solid #ffffff2e; border-radius:var(--radius); box-shadow:0 10px 24px #07120f38; text-shadow:none; }
.proof-card img { width:100%; aspect-ratio:5/3; object-fit:cover; background:#101c20; }
.proof-card.proof-contain img { object-fit:contain; }
.proof-card figcaption { display:grid; gap:.35rem; padding:1rem 1.2rem 1.2rem; }
.proof-card figcaption strong { font-size:1.1rem; }
.proof-card figcaption span { color:#d5dfda; line-height:1.5; }
main > .limits { background:transparent; }
.included-card { border-top:5px solid var(--moss)!important; }
.not-included-card { border-top:5px solid var(--sun)!important; }
.not-included-card ul { padding-left:1.2rem; }
.doc-card { display:block; text-decoration:none; transition:transform .2s ease,box-shadow .2s ease; }
.doc-card:hover { transform:translateY(-3px); box-shadow:0 9px 20px #203b3218; }
.marketplaces { text-align:center; }
.marketplaces .section-heading { margin-inline:auto; }
.marketplace-choice { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; max-width:850px; margin:auto; }
.marketplace-choice a { display:block; padding:1.1rem; color:#f5f8f6; background:#142923; border:1px solid #ffffff2e; border-radius:var(--radius); box-shadow:0 8px 20px #07120f38; backdrop-filter:none; font:800 1.05rem/1.2 inherit; text-decoration:none; text-shadow:none; cursor:pointer; }
.marketplace-choice a:hover,.marketplace-choice a:focus-visible { outline:3px solid #c7dd91; border-color:var(--moss); }
.marketplace-choice span { display:block; margin-top:.45rem; color:#cbd8d1; font-size:.8rem; font-weight:500; }
.route-status { width:fit-content; max-width:44rem; min-height:1.5em; margin:1.2rem auto 0; padding:.55rem .8rem; border-radius:.75rem; color:#e6eee9; background:#142923; backdrop-filter:none; font-size:.9rem; font-weight:600; text-shadow:none; }
.site-footer { display:flex; justify-content:space-between; gap:1rem; padding:2rem max(1.25rem,calc((100% - 1180px)/2)); background:#192a22; color:#e7eee6; font-size:.85rem; }
.site-footer a { white-space:nowrap; }
.content-page { color:var(--ink); background:var(--cream); }
.content-page .site-header { position:relative; }
.content-page main { min-height:calc(100svh - 6rem); }
.guide-page,.utility-page { max-width:820px; }
.guide-page h1,.utility-page h1 { max-width:13ch; font-size:clamp(3rem,8vw,5.5rem); }
.guide-page h2 { margin-top:2.75rem; font-size:clamp(1.7rem,4vw,2.5rem); }
.guide-page p,.guide-page li { max-width:70ch; }
.guide-page .cards { margin:2.5rem 0; }
.guide-page .doc-card { color:var(--ink); background:var(--paper); border-color:var(--line); box-shadow:0 10px 28px #203b3214; }
.content-page .text-link { color:var(--forest); }

@media (min-width:821px) {
  .cards article,.doc-card,.comparison article,.proof-card,.marketplace-choice a,.callout,.route-status,.video-proof-card { color:var(--desktop-pastel-ink); background:var(--desktop-pastel-surface); border-color:var(--desktop-pastel-border); box-shadow:0 9px 24px #2d18203d,inset 0 1px #ffffff80; backdrop-filter:blur(7px) saturate(.86); }
  .comparison article { box-shadow:0 10px 26px #2d182042,inset 0 1px #ffffff80; }
  .comparison-label { color:var(--desktop-pastel-ink); background:#fae7e9ed; border:1px solid #fff8f6b8; }
  .callout { border-left-color:#c98291; }
  .doc-card:hover { box-shadow:0 12px 28px #2d182052,inset 0 1px #ffffff80; }
  .marketplace-choice span { color:var(--desktop-pastel-muted); }
  .proof-card figcaption span { color:var(--desktop-pastel-muted); }
  .video-status { color:var(--desktop-pastel-muted); }
  .video-proof-meta .text-link { color:#734653; }
  .route-status { border:1px solid var(--desktop-pastel-border); }
  .text-link { color:#fae5e8; }
  .text-link:hover,.text-link:focus-visible { color:#fff5f6; }
}

@media (min-width:821px) and (max-width:1100px) {
  .value-grid { grid-template-columns:1fr; gap:1.5rem; }
  .hero-copy { width:min(36rem,58vw); }
  .hero-copy h1 { font-size:clamp(3.1rem,5.6vw,4.7rem); }
}

@media (max-width:820px) {
  .site-header { flex-wrap:wrap; }
  nav { order:3; width:100%; justify-content:space-between; gap:.5rem; overflow:auto; }
  nav a { white-space:nowrap; }
  .site-header .button-small { margin-left:auto; }
  .hero-shell { align-items:flex-end; min-height:calc(100svh - var(--site-header-height,9.15rem)); }
  .hero-shell::after { background:linear-gradient(0deg,#0d201ec4 0%,#0d201e8f 39%,#0d201e24 68%,transparent 100%); }
  .hero-state,.page-background-static > img,.page-background-static noscript img { object-position:50% 72%; }
  .hero-copy { width:auto; margin:0 1.15rem 2.65rem; }
  .hero-copy h1 { max-width:11ch; margin-bottom:.7rem; font-size:clamp(2.5rem,11vw,3.35rem); }
  .hero-copy .eyebrow { margin-bottom:.55rem; font-size:.65rem; }
  .hero-copy .lede { max-width:31rem; margin-bottom:.8rem; font-size:.94rem; line-height:1.42; }
  .hero-copy .hero-actions { gap:.5rem; margin:.9rem 0; }
  .hero-copy .button { padding:.64rem .85rem; font-size:.82rem; }
  .hero-copy .fact-strip { gap:.2rem .75rem; margin-bottom:0; font-size:.69rem; }
  .hero-state-readout,.hero-timeline { display:none; }
  main > .section { width:calc(100% - 1.25rem); margin-block:.7rem; padding:clamp(3.6rem,14vw,5.2rem) 1rem; color:#f5f8f6; background:transparent; border:0; box-shadow:none; backdrop-filter:none; text-shadow:0 2px 12px #050b09,0 1px 3px #050b09; }
  main > .plain-ready,main > .limits,main > .asset-library { background:transparent; }
  main > .section .eyebrow { color:#c4dcae; }
  .cards article,.doc-card,.comparison article,.proof-card,.marketplace-choice a,.video-proof-card { color:#f5f8f6; background:#142923; border-color:#ffffff52; box-shadow:none; backdrop-filter:none; text-shadow:none; }
  .marketplace-choice a { color:#f5f8f6; }
  .marketplace-choice span,.route-status { color:#d9e3de; }
  .comparison-label { color:#173129; background:#dfe7e3; }
  .comparison-label.accent { color:#251509; background:var(--sun); }
  .video-proof .section-heading { text-align:left; }
  .video-proof .section-heading h2,.video-proof .section-heading > p:last-child { margin-inline:0; }
  .video-proof-meta .text-link { color:#e7f1ec; }
  .callout,.route-status { color:#f5f8f6; background:transparent; border-color:#ffffff52; box-shadow:none; backdrop-filter:none; text-shadow:0 2px 10px #050b09,0 1px 2px #050b09; }
  .text-link { color:#e7f1ec; }
  .value-grid,.media-split,.asset-library { grid-template-columns:1fr; }
  .cards.three,.cards.two,.comparison,.product-grid,.marketplace-choice { grid-template-columns:1fr; }
  .site-footer { display:block; }
  .site-footer p { margin-bottom:1rem; }
  .content-page .site-header { flex-wrap:nowrap; }
  .content-page .guide-page,.content-page .utility-page { width:calc(100% - 2rem); padding:4rem 0; }
  .content-page .cards article,.content-page .doc-card { color:var(--ink); background:var(--paper); border-color:var(--line); text-shadow:none; }
}

@media (max-width:430px) {
  .included-media-supporting { grid-template-columns:1fr; }
  .included-technical-proof { grid-column:auto; }
  .site-header { gap:.65rem; padding:.8rem 1rem; }
  nav { gap:.8rem; }
  nav a { font-size:.8rem; }
  .site-header .button-small { padding:.52rem .72rem; font-size:.78rem; }
  .hero-copy { margin-inline:1rem; }
  .hero-copy h1 { font-size:clamp(2.35rem,10.6vw,3rem); }
}

@media (max-width:820px) and (max-height:640px) {
  .site-header nav,.site-header .button-small { display:none; }
  .hero-copy { margin-bottom:2.25rem; }
  .hero-copy h1 { max-width:12ch; margin-bottom:.45rem; font-size:clamp(2rem,10vw,2.45rem); line-height:.98; }
  .hero-copy .eyebrow { margin-bottom:.35rem; font-size:.58rem; }
  .hero-copy .lede { margin-bottom:.45rem; font-size:.78rem; line-height:1.35; }
  .hero-copy .hero-actions { display:grid; grid-template-columns:1fr 1fr; gap:.35rem; margin:.55rem 0 0; }
  .hero-copy .button { padding:.55rem .3rem; font-size:.68rem; text-align:center; white-space:nowrap; }
  .hero-copy .fact-strip { display:none; }
  .hero-timeline { font-size:.48rem; white-space:nowrap; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition:none!important; animation:none!important; }
  .page-background-scroll { display:none!important; }
  .page-background-static { display:block!important; }
}
/* Independent optional-purpose consent: compact, accessible and equal-choice controls. */
.consent-panel {
  position:fixed;
  z-index:1000;
  right:clamp(1rem, 3vw, 2rem);
  bottom:clamp(1rem, 3vw, 2rem);
  left:clamp(1rem, 3vw, 2rem);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  max-width:72rem;
  margin-inline:auto;
  padding:1rem;
  color:#fffaf0;
  background:#16211f;
  border:1px solid rgba(255,250,240,.35);
  border-radius:1rem;
  box-shadow:0 1rem 3rem rgba(0,0,0,.35);
}
.consent-panel[hidden], .consent-settings[hidden] { display:none; }
.consent-copy { max-width:48rem; }
.consent-copy strong { display:block; margin-bottom:.25rem; }
.consent-copy p { margin:0; font-size:.92rem; line-height:1.45; }
.consent-options {
  display:grid;
  grid-template-columns:repeat(3, minmax(8.5rem, 1fr));
  gap:.55rem;
  margin-top:.8rem;
}
.consent-options label {
  display:flex;
  align-items:center;
  gap:.55rem;
  min-height:3.25rem;
  padding:.55rem .65rem;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,250,240,.22);
  border-radius:.75rem;
}
.consent-options input { width:1.15rem; height:1.15rem; accent-color:#ffd36a; }
.consent-options span { display:grid; gap:.05rem; }
.consent-options b { font-size:.9rem; }
.consent-options small { color:rgba(255,250,240,.78); font-size:.75rem; }
.consent-actions { display:flex; flex-wrap:wrap; gap:.65rem; flex-shrink:0; }
.consent-button, .consent-settings {
  min-height:2.75rem;
  padding:.65rem .9rem;
  color:#fffaf0;
  background:#263b36;
  border:1px solid #fffaf0;
  border-radius:999px;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}
.consent-button:hover, .consent-settings:hover { background:#345149; }
.consent-button:focus-visible, .consent-settings:focus-visible { outline:3px solid #ffd36a; outline-offset:3px; }
.consent-settings {
  position:fixed;
  z-index:999;
  left:1rem;
  bottom:1rem;
  min-height:2.25rem;
  padding:.4rem .7rem;
  font-size:.78rem;
}
@media (max-width:700px) {
  .consent-panel { align-items:stretch; flex-direction:column; }
  .consent-options { grid-template-columns:1fr; }
  .consent-actions { display:grid; grid-template-columns:repeat(3, 1fr); }
  .consent-button { width:100%; }
}
@media (max-width:390px) {
  .consent-panel { max-height:calc(100vh - 1.5rem); overflow:auto; }
  .consent-actions { grid-template-columns:1fr; }
}
