:root {
  --ink: #10231d;
  --forest: #0d2b21;
  --forest-2: #174838;
  --moss: #4f7659;
  --sage: #9bb59c;
  --lime: #d9ee8d;
  --cream: #f5f2e8;
  --paper: #fffdf7;
  --sand: #e8e1d2;
  --gold: #bf9556;
  --muted: #66736d;
  --line: #d9dfd7;
  --danger: #9f3434;
  --radius: 20px;
  --shadow: 0 24px 70px rgba(11, 38, 29, .12);
  --pine-pattern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='100' viewBox='0 0 240 100'%3E%3Cg fill='%230d2b21' opacity='.22'%3E%3Cpath d='M28 4 4 38h13L0 62h22v38h12V62h22L39 38h13z'/%3E%3Cpath d='M108 20 90 46h10L80 70h22v30h12V70h22l-20-24h10z'/%3E%3Cpath d='M198 0 174 36h13l-22 28h26v36h14V64h26l-22-28h13z'/%3E%3C/g%3E%3C/svg%3E");
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: radial-gradient(circle at 10% 20%, rgba(155,181,156,.16), transparent 25%), var(--cream); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.55; }
button, input, select, textarea { font: inherit; }
button { color: inherit; }
a { color: inherit; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 999; left: 1rem; top: -4rem; padding: .75rem 1rem; background: white; border-radius: 8px; }
.skip-link:focus { top: 1rem; }

.site-header { height: 78px; padding: 0 clamp(1.2rem, 5vw, 5rem); display: flex; align-items: center; justify-content: space-between; background: rgba(237,240,226,.95); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(16,35,29,.14); box-shadow: 0 8px 30px rgba(13,43,33,.05); position: sticky; top: 0; z-index: 50; }
.brand { display: flex; align-items: center; gap: .65rem; font-family: Georgia, serif; text-decoration: none; font-size: 1.25rem; font-weight: 700; letter-spacing: -.02em; }
.brand small { font-family: Inter, sans-serif; font-size: .55em; color: var(--moss); }
.brand-mark { width: 36px; height: 36px; display: grid; place-items: center; color: var(--lime); background: var(--forest); border-radius: 50% 50% 45% 45%; }
.brand-mark svg { width: 22px; fill: currentColor; }
.brand-mark.small { width: 32px; height: 32px; }
nav { display: flex; align-items: center; gap: .35rem; }
.nav-link, .footer-links button { border: 0; background: none; cursor: pointer; }
.nav-link { padding: .7rem .9rem; color: #43544d; border-radius: 999px; font-size: .92rem; }
.nav-link:hover, .nav-link.active { background: rgba(79,118,89,.12); color: var(--forest); }
.account-nav { border: 1px solid rgba(13,43,33,.2); }
.account-nav span { margin-right: .25rem; color: var(--moss); font-size: .7rem; }
.menu-button { display: none; width: 42px; height: 42px; border: 1px solid var(--line); background: transparent; border-radius: 50%; padding: 11px; }
.menu-button span { display: block; height: 2px; margin: 4px 0; background: var(--ink); }

.view { display: none; }
.view.active { display: block; animation: reveal .3s ease; }
@keyframes reveal { from { opacity: 0; transform: translateY(5px); } }
.hero { min-height: 620px; padding: clamp(4rem, 7vw, 7.5rem) clamp(1.2rem, 7vw, 7rem); display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr); align-items: center; gap: clamp(2rem, 7vw, 7rem); position: relative; background: radial-gradient(circle at 78% 22%, rgba(217,238,141,.42), transparent 27%), radial-gradient(circle at 12% 70%, rgba(79,118,89,.14), transparent 35%), linear-gradient(115deg, #f7f3e8 0%, #e4ead8 56%, #cbd9b7 100%); overflow: hidden; }
.hero::after { content: ""; position: absolute; inset: auto 0 0; height: 105px; background-image: var(--pine-pattern); background-repeat: repeat-x; background-position: bottom; background-size: 252px 105px; opacity: .22; pointer-events: none; }
.hero-copy { max-width: 710px; position: relative; z-index: 2; }
.eyebrow { margin: 0 0 1.1rem; display: flex; gap: .55rem; align-items: center; color: var(--moss); font-size: .75rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow span { width: 26px; height: 1px; background: currentColor; }
.eyebrow.light { color: var(--lime); }
h1, h2, h3 { margin-top: 0; line-height: 1.05; }
h1, h2 { font-family: Georgia, "Times New Roman", serif; letter-spacing: -.045em; font-weight: 500; }
.hero h1 { font-size: clamp(3.4rem, 7.2vw, 7.2rem); margin-bottom: 1.35rem; color: var(--forest); }
.hero h1 em { font-weight: 400; color: var(--moss); }
.hero-intro { max-width: 570px; margin: 0 0 2rem; font-size: clamp(1rem, 1.4vw, 1.18rem); color: #43544d; }
.search-box { max-width: 680px; display: grid; grid-template-columns: 25px 1fr auto; align-items: center; gap: .8rem; padding: .65rem .65rem .65rem 1.15rem; border-radius: 18px; background: var(--paper); box-shadow: 0 18px 45px rgba(13,43,33,.13); border: 1px solid rgba(13,43,33,.06); }
.search-box svg { width: 23px; fill: none; stroke: var(--moss); stroke-width: 1.8; stroke-linecap: round; }
.search-box input { min-width: 0; border: 0; outline: 0; color: var(--ink); background: transparent; }
.search-box button, .button.primary { background: var(--forest); color: white; }
.search-box button { padding: .85rem 1.4rem; border: 0; border-radius: 12px; font-weight: 700; cursor: pointer; }
.search-box:focus-within { outline: 3px solid rgba(79,118,89,.25); }
.trust-row { display: flex; flex-wrap: wrap; gap: 1.3rem; margin-top: 1.5rem; color: #617169; font-size: .82rem; }
.trust-row b { display: inline-grid; place-items: center; width: 18px; height: 18px; margin-right: .25rem; border-radius: 50%; color: var(--forest); background: var(--lime); }
.hero-art { min-height: 470px; position: relative; z-index: 1; isolation: isolate; overflow: hidden; border-radius: 45% 45% 18px 18px / 18% 18% 18px 18px; background: radial-gradient(ellipse at 50% 90%, rgba(182,207,174,.42), transparent 57%); }
.hero-art::before { content: ""; position: absolute; z-index: -2; inset: auto -5% 2%; height: 155px; background-image: var(--pine-pattern); background-repeat: repeat-x; background-position: bottom; background-size: 190px 95px; opacity: .24; filter: blur(1.5px); mask-image: linear-gradient(to top, #000 10%, transparent 100%); }
.hero-art::after { content: ""; position: absolute; z-index: -1; inset: auto 0 0; height: 105px; background: radial-gradient(ellipse at 45% 105%, #59775a 0%, #8da889 43%, transparent 74%); opacity: .48; }
.sun { position: absolute; width: 235px; height: 235px; top: 7%; right: 13%; border-radius: 50%; background: rgba(245,225,160,.66); box-shadow: 0 0 0 24px rgba(245,225,160,.12), 0 0 100px 55px rgba(245,225,160,.23); }
.tree { position: absolute; bottom: 48px; width: 17px; height: 65%; border-radius: 12px 12px 8px 8px; background: #375544; transform-origin: bottom; filter: drop-shadow(9px 17px 10px rgba(17,54,37,.2)); }
.tree::before, .tree::after { content: ""; position: absolute; left: 50%; width: 190px; transform: translateX(-50%); clip-path: polygon(50% 0, 67% 31%, 61% 31%, 78% 57%, 69% 57%, 100% 100%, 0 100%, 31% 57%, 22% 57%, 39% 31%, 33% 31%); background: linear-gradient(115deg, #103d2d 12%, #1f503a 58%, #31704b 100%); }
.tree::before { height: 195px; top: -45px; }
.tree::after { height: 170px; top: 54px; background: linear-gradient(115deg, #174531, #2d6447 62%, #477755); }
.tree-a { left: 18%; height: 55%; transform: scale(.88); }
.tree-b { left: 54%; height: 71%; }
.tree-c { right: 11%; height: 49%; transform: scale(.75); }
.tree-d, .tree-e, .tree-f { z-index: -1; opacity: .43; filter: blur(.9px); }
.tree-d { left: 4%; height: 43%; transform: scale(.57); }
.tree-e { left: 39%; height: 48%; transform: scale(.62); }
.tree-f { right: -4%; height: 51%; transform: scale(.59); }
.path { position: absolute; bottom: -102px; left: 37%; width: 155px; height: 215px; background: linear-gradient(180deg, rgba(234,221,178,.08), rgba(227,206,151,.58)); transform: perspective(300px) rotateX(57deg); border-radius: 55% 55% 0 0; z-index: -1; }

.coupon-section, .pricing-section { padding: clamp(4rem, 7vw, 7rem) clamp(1.2rem, 7vw, 7rem); }
.coupon-section { position: relative; background: linear-gradient(180deg, rgba(255,253,247,.72), rgba(232,238,220,.82)); overflow: hidden; }
.coupon-section::before { content: ""; position: absolute; inset: 0 0 auto; height: 105px; background-image: var(--pine-pattern); background-repeat: repeat-x; background-size: 252px 105px; opacity: .055; transform: scaleY(-1); pointer-events: none; }
.coupon-section > * { position: relative; z-index: 1; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 2rem; }
.section-heading h2, .creator-teaser h2, .registration-section h2 { font-size: clamp(2.4rem, 4.5vw, 4.3rem); margin-bottom: .5rem; color: var(--forest); }
.section-heading p { margin: 0; color: var(--muted); }
.sort-control { display: flex; align-items: center; gap: .6rem; font-size: .82rem; color: var(--muted); }
select, input { border: 1px solid #cfd8d0; border-radius: 11px; background: var(--paper); }
.sort-control select { padding: .65rem 2rem .65rem .75rem; color: var(--ink); }
.category-list { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: 2rem; }
.category-chip { padding: .7rem 1rem; border: 1px solid #ccd6cd; border-radius: 999px; background: transparent; cursor: pointer; color: #4a5a53; }
.category-chip:hover, .category-chip.active { color: white; border-color: var(--forest); background: var(--forest); }
.category-chip small { opacity: .7; margin-left: .25rem; }
.coupon-groups { display: grid; gap: 3.2rem; }
.coupon-group { min-width: 0; padding: clamp(1rem, 2vw, 1.5rem); border: 1px solid rgba(79,118,89,.16); border-radius: 26px; background: linear-gradient(145deg, rgba(255,253,247,.88), rgba(230,236,218,.82)); box-shadow: 0 12px 35px rgba(13,43,33,.055); }
.coupon-group:nth-child(even) { background: linear-gradient(145deg, rgba(239,243,228,.9), rgba(255,253,247,.9)); }
.coupon-group-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding-bottom: .8rem; margin-bottom: 1rem; border-bottom: 1px solid #cfd8d0; }
.coupon-group-heading h3 { margin: 0; display: flex; align-items: center; gap: .6rem; color: var(--forest); font: 500 1.75rem/1.1 Georgia,serif; letter-spacing: -.025em; }
.coupon-group-heading h3::before { content: ""; width: 20px; height: 24px; flex: 0 0 auto; background: linear-gradient(var(--forest), var(--moss)); clip-path: polygon(50% 0, 72% 30%, 62% 30%, 86% 60%, 72% 60%, 100% 88%, 58% 88%, 58% 100%, 42% 100%, 42% 88%, 0 88%, 28% 60%, 14% 60%, 38% 30%, 28% 30%); }
.coupon-group-heading span { color: var(--muted); font-size: .75rem; }
.coupon-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.1rem; }
.coupon-card { display: flex; flex-direction: column; min-height: 455px; padding: 0; overflow: hidden; border: 1px solid #dfe3dc; border-radius: var(--radius); background: rgba(255,253,247,.9); box-shadow: 0 6px 20px rgba(13,43,33,.035); transition: .2s ease; }
.coupon-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); border-color: #c3d0c4; }
.shop-visual { height: 148px; padding: 1rem; display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; isolation: isolate; color: var(--forest); text-decoration: none; background-image: radial-gradient(circle at 18% 20%, rgba(255,255,255,.9), transparent 30%), var(--pine-pattern), linear-gradient(135deg, var(--shop-color), #f8f5eb); background-repeat: no-repeat, repeat-x, no-repeat; background-position: center, bottom, center; background-size: auto, 205px 86px, auto; }
.shop-visual::before, .shop-visual::after { content: ""; position: absolute; border: 1px solid rgba(13,43,33,.13); border-radius: 50%; z-index: -1; }
.shop-visual::before { width: 170px; height: 170px; right: -35px; top: -65px; }
.shop-visual::after { width: 110px; height: 110px; left: -34px; bottom: -58px; }
.visual-initials { position: absolute; left: 1rem; bottom: -.25rem; font: 700 3.8rem/1 Georgia,serif; color: rgba(13,43,33,.1); letter-spacing: -.08em; }
.shop-visit { position: absolute; right: .85rem; top: .85rem; padding: .38rem .55rem; border-radius: 999px; color: white; background: rgba(13,43,33,.88); font-size: .68rem; font-weight: 800; }
.shop-visit b { margin-left: .2rem; color: var(--lime); }
.copy-hint { position: absolute; right: .9rem; bottom: .75rem; color: rgba(13,43,33,.66); font-size: .62rem; font-weight: 700; }
.shop-visual:hover .shop-visit { background: var(--moss); }
.shop-visual:focus-visible { outline: 4px solid var(--lime); outline-offset: -4px; }
.coupon-content { padding: 1.25rem; display: flex; flex: 1; flex-direction: column; }
.card-top { display: flex; align-items: center; justify-content: space-between; gap: .8rem; }
.shop-logo { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 16px; background: var(--logo-bg, #e7ebdf); color: var(--logo-ink, var(--forest)); font-weight: 900; letter-spacing: -.04em; font-size: 1.15rem; }
.verified { font-size: .73rem; color: var(--moss); font-weight: 700; }
.coupon-card h3 { margin: 1rem 0 .35rem; font-size: 1.22rem; }
.offer { margin: 0; color: var(--moss); font-size: 1.15rem; font-weight: 800; }
.conditions { min-height: 46px; margin: .55rem 0 1.1rem; font-size: .82rem; color: var(--muted); }
.code-box { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: stretch; min-height: 46px; margin-top: auto; border: 1px dashed #9daf9f; border-radius: 12px; overflow: hidden; background: #f4f7ed; }
.code-box code { grid-column: 1; grid-row: 1; display: flex; align-items: center; min-width: 0; padding: .8rem .9rem; opacity: 0; font: 800 .86rem/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .05em; overflow: hidden; text-overflow: ellipsis; transition: opacity .2s ease .35s; }
.code-box button { grid-column: 2; grid-row: 1; min-width: 90px; padding: 0 .9rem; position: relative; z-index: 4; border: 0; border-left: 1px dashed #9daf9f; background: var(--lime); cursor: pointer; font-weight: 800; font-size: .78rem; }
.code-box button:hover { background: #cbe67a; }
.code-box button.copied { color: white; background: var(--moss); }
.code-curtain { grid-column: 1; grid-row: 1; min-width: 0; display: grid; place-items: center; position: relative; z-index: 2; overflow: hidden; color: white; font-size: .69rem; font-weight: 800; letter-spacing: .035em; }
.code-curtain::before, .code-curtain::after { content: ""; position: absolute; inset-block: 0; width: 51%; background: repeating-linear-gradient(90deg, #173e30 0 12px, #1e4a3a 12px 24px); box-shadow: inset 0 0 12px rgba(0,0,0,.2); transition: transform .55s cubic-bezier(.65,0,.35,1); }
.code-curtain::before { left: 0; border-right: 1px solid rgba(217,238,141,.3); }
.code-curtain::after { right: 0; border-left: 1px solid rgba(217,238,141,.3); }
.code-curtain span { position: relative; z-index: 3; padding: .22rem .48rem; border-radius: 999px; color: var(--lime); background: rgba(7,29,21,.7); transition: opacity .18s ease .12s; }
.code-box.revealed code { opacity: 1; }
.code-box.revealed .code-curtain { pointer-events: none; }
.code-box.revealed .code-curtain::before { transform: translateX(-102%); }
.code-box.revealed .code-curtain::after { transform: translateX(102%); }
.code-box.revealed .code-curtain span { opacity: 0; }
.card-actions { display: flex; justify-content: space-between; align-items: center; margin-top: .85rem; }
.details-button { border: 0; padding: .25rem 0; background: none; color: var(--moss); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; font-size: .78rem; }
.category-label { font-size: .7rem; color: #7a8881; }
.empty-state { padding: 4rem 1rem; text-align: center; border: 1px dashed #bfcbbf; border-radius: var(--radius); }
.empty-state > span { font-size: 3rem; }
.empty-state h3 { margin: .4rem 0; }
.empty-state p { color: var(--muted); }

.creator-teaser { margin: 0 clamp(1.2rem, 5vw, 5rem) 4rem; padding: clamp(2rem, 5vw, 4.5rem); min-height: 300px; display: flex; align-items: end; justify-content: space-between; gap: 2rem; color: white; background: radial-gradient(circle at 90% 10%, rgba(217,238,141,.14), transparent 30%), var(--forest); border-radius: 28px; overflow: hidden; position: relative; }
.creator-teaser::after { content: ""; width: 310px; height: 310px; position: absolute; right: 8%; top: -60%; border: 1px solid rgba(217,238,141,.2); border-radius: 50%; box-shadow: 0 0 0 40px rgba(217,238,141,.03),0 0 0 80px rgba(217,238,141,.025); }
.creator-teaser h2 { color: white; }
.creator-teaser p:not(.eyebrow) { max-width: 540px; margin: 0; color: #c6d5cc; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: .75rem; padding: .88rem 1.15rem; border: 1px solid transparent; border-radius: 12px; font-weight: 800; cursor: pointer; text-decoration: none; }
.button.light { position: relative; z-index: 2; color: var(--forest); background: var(--lime); white-space: nowrap; }
.button.secondary { background: transparent; color: var(--forest); border-color: var(--forest); }
.button.full { width: 100%; }

.page-hero { min-height: 430px; padding: clamp(4rem, 7vw, 7rem) clamp(1.2rem, 7vw, 7rem); color: white; background: radial-gradient(circle at 80% 40%, rgba(217,238,141,.13), transparent 25%), var(--forest); }
.page-hero.compact { min-height: 320px; }
.page-hero h1 { max-width: 900px; margin-bottom: 1rem; font-size: clamp(3.1rem, 7vw, 6.8rem); }
.page-hero p:not(.eyebrow) { max-width: 650px; color: #cbd9d0; font-size: 1.05rem; }
.content-panel { width: min(1100px, calc(100% - 2.4rem)); margin: -70px auto 5rem; padding: clamp(1.4rem, 4vw, 3rem); position: relative; border: 1px solid #d8dfd6; border-radius: 24px; background: var(--paper); box-shadow: var(--shadow); }
.inline-search input { width: 100%; padding: 1rem; margin-bottom: 1.5rem; }
.glossary-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
.glossary-item { padding: 1.2rem; border: 1px solid var(--line); border-radius: 15px; }
.glossary-item h3 { margin-bottom: .45rem; color: var(--forest); }
.glossary-item p { margin: 0; color: var(--muted); }

.creator-hero { display: flex; justify-content: space-between; align-items: end; }
.creator-stat { width: 180px; height: 180px; display: flex; justify-content: center; align-items: center; gap: .7rem; flex: 0 0 auto; border: 1px solid rgba(217,238,141,.35); border-radius: 50%; color: var(--lime); }
.creator-stat strong { font: 4.2rem/1 Georgia,serif; }
.creator-stat span { color: #cbd9d0; font-size: .8rem; }
.section-heading.centered { justify-content: center; text-align: center; }
.section-heading.centered .eyebrow { justify-content: center; }
.pricing-section { position: relative; background: radial-gradient(circle at 85% 15%, rgba(155,181,156,.2), transparent 25%), linear-gradient(180deg, var(--cream), #e7ecdc); overflow: hidden; }
.pricing-section::before { content: ""; position: absolute; inset: auto 0 0; height: 100px; background-image: var(--pine-pattern); background-repeat: repeat-x; background-size: 240px 100px; opacity: .07; pointer-events: none; }
.pricing-section > * { position: relative; z-index: 1; }
.billing-switch { width: fit-content; margin: -1rem auto 2.5rem; padding: .3rem; display: flex; gap: .25rem; border: 1px solid #d4ddd3; border-radius: 999px; background: #e9ede4; }
.billing-switch button { padding: .65rem 1rem; border: 0; border-radius: 999px; color: var(--muted); background: transparent; cursor: pointer; font-size: .8rem; font-weight: 800; }
.billing-switch button.active { color: white; background: var(--forest); box-shadow: 0 5px 14px rgba(13,43,33,.16); }
.billing-switch span { margin-left: .35rem; padding: .18rem .38rem; border-radius: 999px; color: var(--forest); background: var(--lime); font-size: .62rem; }
.pricing-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; }
.price-card { padding: 1.5rem; display: flex; flex-direction: column; border: 1px solid #d5ddd5; border-radius: 20px; background: var(--paper); position: relative; }
.price-card.featured { color: white; background-image: radial-gradient(circle at 90% 10%, rgba(217,238,141,.14), transparent 30%), var(--pine-pattern), linear-gradient(var(--forest), #0a241a); background-repeat: no-repeat, repeat-x, no-repeat; background-position: center, bottom, center; background-size: auto, 220px 92px, auto; transform: translateY(-8px); border-color: var(--forest); box-shadow: var(--shadow); }
.plan-badge { position: absolute; right: 1rem; top: 1rem; padding: .3rem .55rem; border-radius: 999px; background: var(--lime); color: var(--forest); font-size: .65rem; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.price-card h3 { margin-bottom: .25rem; font-size: 1.45rem; }
.price-card > p { min-height: 48px; margin-top: .4rem; color: var(--muted); font-size: .87rem; }
.price-card.featured > p { color: #c7d4cc; }
.price { margin: .7rem 0 1.25rem; font: 3rem/1 Georgia,serif; }
.price small { font: .78rem Inter,sans-serif; color: var(--muted); }
.price-card.featured .price small { color: #c7d4cc; }
.billing-note { min-height: 21px; margin: -.8rem 0 1rem; color: var(--moss); font-size: .72rem; font-weight: 800; }
.price-card.featured .billing-note { color: var(--lime); }
.price-card ul { padding: 0; margin: 0 0 1.4rem; list-style: none; }
.price-card li { margin: .55rem 0; font-size: .86rem; }
.price-card li::before { content: "✓"; margin-right: .55rem; color: var(--moss); font-weight: 900; }
.price-card.featured li::before { color: var(--lime); }
.select-plan { margin-top: auto; }
.price-card.featured .select-plan { color: var(--forest); background: var(--lime); }
.highlight-options { display: grid; grid-template-columns: 1fr 1.4fr; align-items: center; gap: 3rem; margin-top: 3rem; padding: 2rem; border-radius: 20px; background: #e8ecdf; }
.highlight-options h3 { margin: 0 0 .4rem; font: 2rem/1.1 Georgia,serif; }
.highlight-options p { margin: 0; color: var(--muted); }
.highlight-list { display: grid; gap: .6rem; }
.highlight-card { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 1rem; border-radius: 12px; background: var(--paper); }
.highlight-card strong { font-size: .87rem; }
.highlight-card span { color: var(--moss); font-weight: 800; white-space: nowrap; }

.registration-section { padding: clamp(4rem, 7vw, 7rem) clamp(1.2rem, 7vw, 7rem); display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2rem, 7vw, 7rem); color: white; background: var(--forest); }
.registration-section h2 { color: white; }
.registration-copy > p:not(.eyebrow) { color: #bccdc3; }
.selection-summary { margin-top: 2rem; padding: 1rem; border: 1px solid rgba(217,238,141,.2); border-radius: 14px; color: #d9e2dc; }
.selection-summary strong { color: var(--lime); }
.registration-form { padding: clamp(1.2rem, 3vw, 2rem); color: var(--ink); border-radius: 22px; background: var(--paper); }
.registration-form label:not(.check-line) { display: grid; gap: .35rem; margin-bottom: .85rem; font-size: .8rem; font-weight: 700; }
.registration-form label span { font-weight: 400; color: var(--muted); }
.registration-form input, .registration-form select { width: 100%; padding: .8rem; }
.registration-form input:focus, .registration-form select:focus, .inline-search input:focus { outline: 3px solid rgba(79,118,89,.22); border-color: var(--moss); }
.registration-form input.invalid, .registration-form select.invalid { border-color: var(--danger); }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
fieldset { margin: 1rem 0; padding: 0; border: 0; }
legend { margin-bottom: .6rem; font-size: .8rem; font-weight: 700; }
.radio-row { display: grid; grid-template-columns: repeat(3,1fr); gap: .5rem; }
.radio-card { display: block; padding: .75rem; border: 1px solid var(--line); border-radius: 10px; cursor: pointer; text-align: center; font-size: .8rem; }
.radio-card:has(input:checked) { border-color: var(--moss); background: #edf2e4; }
.radio-card input { width: auto; margin-right: .3rem; }
.check-stack { display: grid; gap: .45rem; margin-bottom: 1rem; }
.check-line { display: flex; align-items: flex-start; gap: .65rem; font-size: .78rem; cursor: pointer; }
.check-line input { width: auto; margin-top: .2rem; }
.required-check { margin: 1rem 0; }
.text-button { display: inline; padding: 0; border: 0; background: none; color: var(--moss); text-decoration: underline; cursor: pointer; }
.form-note { margin: .6rem 0 0; text-align: center; color: var(--muted); font-size: .72rem; }

.account-hero { min-height: 420px; display: flex; align-items: center; justify-content: space-between; gap: 3rem; overflow: hidden; position: relative; background-image: radial-gradient(circle at 82% 22%, rgba(217,238,141,.2), transparent 25%), var(--pine-pattern), linear-gradient(135deg, #09271d, #174838); background-repeat: no-repeat, repeat-x, no-repeat; background-position: center, bottom, center; background-size: auto, 280px 117px, auto; }
.account-hero::after { content: ""; width: 390px; height: 390px; position: absolute; right: 8%; top: -170px; border: 1px solid rgba(217,238,141,.15); border-radius: 50%; box-shadow: 0 0 0 55px rgba(217,238,141,.025), 0 0 0 110px rgba(217,238,141,.018); }
.account-hero > div:first-child { position: relative; z-index: 2; }
.account-hero h1 em { color: var(--lime); font-weight: 400; }
.account-hero-trees { min-width: 300px; min-height: 210px; display: flex; align-items: end; justify-content: center; gap: 8px; position: relative; z-index: 2; }
.account-hero-trees i { width: 46px; height: 150px; display: block; background: linear-gradient(#d9ee8d, #77996e); clip-path: polygon(50% 0, 69% 25%, 59% 25%, 80% 52%, 68% 52%, 100% 87%, 57% 87%, 57% 100%, 43% 100%, 43% 87%, 0 87%, 32% 52%, 20% 52%, 41% 25%, 31% 25%); opacity: .9; }
.account-hero-trees i:nth-child(2), .account-hero-trees i:nth-child(4) { height: 105px; opacity: .55; }
.account-hero-trees i:nth-child(3) { width: 62px; height: 195px; }
.account-hero-trees i:nth-child(5) { height: 126px; opacity: .68; }
.account-shell { width: min(1180px, calc(100% - 2.4rem)); min-height: 520px; margin: -58px auto 6rem; position: relative; z-index: 3; }
.account-loading { width: fit-content; margin: 0 auto 1rem; padding: .5rem .9rem; color: var(--forest); background: var(--lime); border-radius: 999px; font-size: .75rem; font-weight: 800; box-shadow: var(--shadow); }
.auth-layout { display: grid; grid-template-columns: .9fr 1.1fr; border: 1px solid #d5ddd5; border-radius: 26px; overflow: hidden; background: var(--paper); box-shadow: var(--shadow); }
.auth-promise { min-height: 560px; padding: clamp(2rem, 5vw, 4rem); color: white; background-image: radial-gradient(circle at 20% 10%, rgba(217,238,141,.14), transparent 25%), var(--pine-pattern), linear-gradient(150deg, #174838, #0b281e); background-repeat: no-repeat, repeat-x, no-repeat; background-position: center, bottom, center; background-size: auto, 250px 104px, auto; }
.auth-promise h2 { max-width: 430px; font-size: clamp(2.6rem, 5vw, 4.4rem); color: white; }
.auth-promise ul { padding: 0; margin: 2rem 0 0; list-style: none; }
.auth-promise li { margin: .8rem 0; padding: .75rem 0 .75rem 2.2rem; position: relative; border-bottom: 1px solid rgba(255,255,255,.09); color: #cad9d0; }
.auth-promise li::before { content: "▲"; position: absolute; left: .25rem; color: var(--lime); font-size: .8rem; }
.auth-promise b { color: white; }
.auth-card { padding: clamp(1.3rem, 4vw, 3.5rem); background: linear-gradient(145deg, #fffdf7, #eef2e7); }
.auth-tabs { margin-bottom: 2rem; padding: .3rem; display: grid; grid-template-columns: 1fr 1fr; border-radius: 999px; background: #e3e9df; }
.auth-tabs button { padding: .7rem; border: 0; border-radius: 999px; background: transparent; color: var(--muted); cursor: pointer; font-weight: 800; }
.auth-tabs button.active { color: white; background: var(--forest); box-shadow: 0 5px 15px rgba(13,43,33,.16); }
.account-form h2 { margin-bottom: .35rem; font-size: 2.2rem; color: var(--forest); }
.account-form > p:not(.form-message) { margin-top: 0; color: var(--muted); }
.account-form label:not(.check-line) { display: grid; gap: .38rem; margin-bottom: .9rem; color: #314039; font-size: .8rem; font-weight: 800; }
.account-form label > span { color: var(--muted); font-weight: 400; }
.account-form input, .account-form select, .account-form textarea { width: 100%; padding: .82rem .9rem; border: 1px solid #cbd5cc; border-radius: 11px; color: var(--ink); background: white; resize: vertical; }
.account-form .check-line { width: 100%; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: .7rem; }
.account-form .check-line input { width: 1rem; height: 1rem; margin: .15rem 0 0; padding: 0; }
.account-form .check-line span { min-width: 0; line-height: 1.45; }
.account-form input:focus, .account-form select:focus, .account-form textarea:focus { outline: 3px solid rgba(79,118,89,.2); border-color: var(--moss); }
.account-form input.invalid, .account-form select.invalid, .account-form textarea.invalid { border-color: var(--danger); }
.account-form .button { margin-top: .35rem; }
.form-message { min-height: 22px; margin: .5rem 0; font-size: .78rem; font-weight: 700; }
.form-message.error { color: var(--danger); }
.form-message.success { color: var(--moss); }
.button.forest { color: var(--lime); background: var(--forest); }
button:disabled, input:disabled, select:disabled, textarea:disabled { cursor: not-allowed; opacity: .58; }

.profile-panel { display: grid; gap: 1.2rem; }
.profile-head { padding: 1.4rem 1.6rem; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 1rem; border: 1px solid #d5ddd5; border-radius: 22px; background: var(--paper); box-shadow: var(--shadow); }
.profile-head .eyebrow { margin-bottom: .35rem; }
.profile-head h2 { margin: 0; font-size: 2.2rem; color: var(--forest); }
.profile-head p:last-child { margin: .3rem 0 0; color: var(--muted); font-size: .8rem; }
.profile-avatar { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 18px; color: var(--forest); background: var(--lime); font-size: 1.5rem; box-shadow: inset 0 -6px 16px rgba(79,118,89,.18); }
.profile-forest { min-height: 270px; padding: clamp(1.5rem, 4vw, 3rem); display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 2rem; overflow: hidden; position: relative; border-radius: 24px; color: white; background: radial-gradient(circle at 80% 15%, rgba(217,238,141,.13), transparent 25%), linear-gradient(130deg, #0c2c21, #1d523e); box-shadow: 0 18px 50px rgba(13,43,33,.16); }
.profile-forest h3 { margin: 0 0 .6rem; font: 500 clamp(2rem, 4vw, 3.6rem)/1.05 Georgia,serif; }
.profile-forest h3 strong { color: var(--lime); }
.profile-forest p:not(.eyebrow) { max-width: 520px; margin: 0; color: #c5d5cb; }
.tree-grove { min-height: 190px; display: flex; flex-wrap: wrap-reverse; align-content: flex-start; align-items: end; justify-content: center; gap: 4px; position: relative; padding: 1rem 1rem 0; border-bottom: 3px solid rgba(217,238,141,.28); }
.tree-grove::after { content: ""; position: absolute; left: 2%; right: 2%; bottom: -10px; height: 18px; border-radius: 50%; background: rgba(217,238,141,.08); }
.profile-tree { width: 31px; height: 76px; display: block; flex: 0 0 auto; position: relative; z-index: 1; background: linear-gradient(#d9ee8d, #73a071); clip-path: polygon(50% 0, 72% 29%, 62% 29%, 84% 57%, 70% 57%, 100% 88%, 57% 88%, 57% 100%, 43% 100%, 43% 88%, 0 88%, 30% 57%, 16% 57%, 38% 29%, 28% 29%); filter: drop-shadow(0 8px 5px rgba(0,0,0,.18)); animation: treeGrow .45s ease both; animation-delay: calc(var(--tree-index) * 35ms); }
.profile-tree:nth-child(3n) { height: 102px; width: 38px; }
.profile-tree:nth-child(4n) { height: 62px; opacity: .74; }
@keyframes treeGrow { from { transform: translateY(18px) scale(.4); opacity: 0; } }
.profile-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; }
.profile-card { min-width: 0; padding: clamp(1.25rem, 3vw, 2rem); border: 1px solid #d6ded5; border-radius: 22px; background: var(--paper); box-shadow: 0 10px 30px rgba(13,43,33,.055); }
.profile-card h3 { margin: .7rem 0 .45rem; color: var(--forest); font: 500 2rem/1.1 Georgia,serif; }
.profile-card > p { color: var(--muted); }
.card-kicker { color: var(--moss); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.card-kicker span { display: inline-grid; width: 22px; height: 22px; margin-right: .3rem; place-items: center; border-radius: 50%; color: var(--forest); background: var(--lime); }
.compact-form { margin-top: 1.2rem; }
.creator-upgrade-card { background: linear-gradient(145deg, #eef2e2, #fffdf7); }
.creator-plans-link { margin-top: 1rem; }
.lower-grid { align-items: start; }
.profile-list { display: grid; gap: .55rem; margin-top: 1rem; }
.profile-list-item { padding: .8rem; display: flex; align-items: center; justify-content: space-between; gap: .8rem; border-radius: 12px; background: #eef2e9; }
.profile-list-item > div { min-width: 0; display: grid; }
.profile-list-item strong { overflow: hidden; color: var(--forest); font-size: .82rem; text-overflow: ellipsis; }
.profile-list-item div span { overflow: hidden; color: var(--muted); font-size: .7rem; text-overflow: ellipsis; }
.profile-empty { padding: 1.4rem; color: var(--muted); border: 1px dashed #c5d0c5; border-radius: 12px; text-align: center; font-size: .8rem; }
.status-pill { display: inline-block; padding: .28rem .55rem; border-radius: 999px; color: #735e27; background: #f4e8bc; font-size: .66rem; font-weight: 900; white-space: nowrap; }
.status-approved { color: #1d583b; background: #d9edcf; }
.status-rejected { color: #873b3b; background: #f1d8d3; }
.tree-reward { color: var(--forest); font-size: .7rem; font-weight: 900; white-space: nowrap; }

.legal-content { color: #314039; font-size: .9375rem; line-height: 1.65; overflow-wrap: anywhere; }
.legal-content h2 { margin-top: 1.5rem; font-size: 1.25rem; line-height: 1.4; color: var(--forest); }
.legal-content h2:first-child { margin-top: 0; }
.legal-content .placeholder { display: inline-block; padding: .1rem .35rem; border-radius: 4px; background: #fff0c7; color: #7a561a; font-weight: 700; }
.legal-warning { padding: 1rem; margin-bottom: 2rem; border-left: 4px solid #c19042; background: #fff5dc; }
.legal-content ul { padding-left: 1.2rem; }
.privacy-scope { padding: 1rem 1.2rem; border: 1px solid #c5d0c5; border-radius: 12px; background: #eef3e8; }
.privacy-scope strong { color: var(--forest); }
.privacy-scope p { margin-bottom: 0; }
.privacy-table-wrap { max-width: 100%; margin: 1.5rem 0; overflow-x: auto; border: 1px solid #c5d0c5; border-radius: 12px; }
.privacy-table-wrap:focus-visible { outline: 2px solid var(--forest); outline-offset: 3px; }
.privacy-table { width: 100%; border-collapse: collapse; line-height: 1.6; font-size: .95rem; }
.privacy-table caption { padding: .9rem 1rem; color: var(--forest); background: #eef3e8; font-weight: 800; text-align: left; }
.privacy-table th, .privacy-table td { padding: .9rem 1rem; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.privacy-table thead { background: #e2eadb; color: var(--forest); }
.privacy-table tbody tr + tr { border-top: 1px solid #d6dfd2; }
.privacy-table tbody th { width: 34%; min-width: 125px; font-weight: 700; color: var(--forest); }
.privacy-table tbody tr:nth-child(even) { background: #f4f6ef; }
.privacy-steps { padding-left: 1.4rem; }
.privacy-steps li { margin: .9rem 0; padding-left: .3rem; }
.privacy-review { border-radius: 0 12px 12px 0; }
.privacy-review li { margin: .7rem 0; }

.site-footer { padding: 3rem clamp(1.2rem, 5vw, 5rem); display: grid; grid-template-columns: 1fr; gap: 2rem; color: white; background: #081e17; }
.footer-brand { display: flex; align-items: center; gap: .7rem; }
.footer-brand p { margin: 0; color: #91a69a; font-size: .78rem; }
.footer-links { display: flex; flex-wrap: nowrap; justify-content: flex-start; align-items: center; gap: .45rem 1rem; }
.footer-links button, .footer-links a { padding: 0; color: #c0d0c6; font-size: .78rem; text-decoration: none; }
.footer-links a:hover, .footer-links a:focus-visible { color: white; text-decoration: underline; }
.footer-links span { padding: .1rem .3rem; margin-left: .2rem; border-radius: 4px; color: var(--lime); background: rgba(217,238,141,.1); font-size: .6rem; text-transform: uppercase; }
.footer-note { grid-column: 1/-1; padding-top: 1.3rem; border-top: 1px solid rgba(255,255,255,.08); color: #91a69a; font-size: .8rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; }
.footer-note button { border: 0; background: none; padding: .25rem 0; color: #dcebc8; font: inherit; font-weight: 700; text-decoration: underline; cursor: pointer; }
.footer-note button:hover, .footer-note button:focus-visible { color: white; }

.modal { width: min(560px, calc(100% - 2rem)); padding: 2rem; border: 0; border-radius: 22px; color: var(--ink); background: var(--paper); box-shadow: 0 35px 100px rgba(0,0,0,.32); }
.modal::backdrop { background: rgba(5,22,16,.7); backdrop-filter: blur(3px); }
.modal-close { position: absolute; right: 1rem; top: 1rem; width: 34px; height: 34px; border: 0; border-radius: 50%; background: #ebeee8; cursor: pointer; font-size: 1.3rem; }
.modal-shop { display: flex; gap: 1rem; align-items: center; margin-bottom: 1.3rem; }
.modal h2 { margin-bottom: .3rem; font-size: 2.1rem; color: var(--forest); }
.modal-data { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; margin: 1rem 0; }
.modal-data div { padding: .8rem; border-radius: 10px; background: #edf1e8; }
.modal-data small { display: block; color: var(--muted); }
.modal-note { font-size: .78rem; color: var(--muted); }
.success-modal { text-align: center; }
.success-icon { width: 58px; height: 58px; display: grid; place-items: center; margin: 0 auto 1rem; border-radius: 50%; color: var(--forest); background: var(--lime); font-size: 1.7rem; font-weight: 900; }
.centered-label { justify-content: center; }
.saved-summary { padding: 1rem; margin: 1rem 0; border-radius: 12px; text-align: left; background: #edf1e8; font-size: .82rem; }
.toast { position: fixed; left: 50%; bottom: 1.5rem; z-index: 100; padding: .8rem 1rem; color: white; background: var(--forest); border-radius: 999px; box-shadow: var(--shadow); opacity: 0; transform: translate(-50%, 20px); pointer-events: none; transition: .25s ease; }
.toast.show { opacity: 1; transform: translate(-50%,0); }

@media (max-width: 980px) {
  .footer-links { flex-wrap: wrap; }
  .hero { grid-template-columns: 1fr; min-height: auto; }
  .hero-art { display: none; }
  .coupon-grid { grid-template-columns: repeat(2,1fr); }
  .registration-section { grid-template-columns: 1fr; }
  .auth-layout, .profile-forest { grid-template-columns: 1fr; }
  .account-hero-trees { display: none; }
}
@media (max-width: 760px) {
  .site-header nav { display: none; position: absolute; top: 78px; left: 0; right: 0; padding: 1rem; flex-direction: column; align-items: stretch; background: var(--cream); border-bottom: 1px solid var(--line); }
  .site-header nav.open { display: flex; }
  .menu-button { display: block; }
  .nav-link { text-align: left; }
  .hero { padding-top: 4rem; }
  .hero h1 { font-size: clamp(3rem, 15vw, 4.8rem); }
  .search-box { grid-template-columns: 22px 1fr; }
  .search-box button { grid-column: 1/-1; }
  .section-heading { align-items: flex-start; flex-direction: column; }
  .coupon-grid, .pricing-grid, .glossary-list { grid-template-columns: 1fr; }
  .creator-teaser, .creator-hero { align-items: flex-start; flex-direction: column; }
  .creator-teaser { margin-left: .8rem; margin-right: .8rem; border-radius: 20px; }
  .creator-stat { width: 130px; height: 130px; }
  .highlight-options { grid-template-columns: 1fr; gap: 1.5rem; }
  .form-row, .radio-row { grid-template-columns: 1fr; }
  .account-shell { width: min(100% - 1.2rem, 1180px); margin-top: -34px; }
  .auth-layout, .profile-grid { grid-template-columns: 1fr; }
  .auth-promise { min-height: auto; }
  .profile-head { grid-template-columns: auto 1fr; }
  .profile-head .button { grid-column: 1/-1; }
  .profile-forest { padding-bottom: 2rem; }
  .tree-grove { min-height: 150px; }
  .site-footer { grid-template-columns: 1fr; }
  .footer-links { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; animation: none !important; transition: none !important; } }

.reward-rules { margin: 1.5rem 0; }
.reward-rules ul { padding-left: 1.3rem; line-height: 1.7; }
.reward-rules p { color: var(--moss); }

/* Extend the existing forest palette and retro typography across the working areas. */
.hero { min-height: 340px; padding-block: 2.5rem; gap: 2rem; grid-template-columns: 1.35fr .65fr; }
.hero h1 { font-size: clamp(2.8rem,5vw,4.8rem); margin-bottom: 1rem; }
.hero h1 br { display: none; }
.hero-intro { margin-bottom: 1.3rem; }
.hero-art { min-height: 280px; height: 280px; }
.hero-art .tree { transform: scale(.7); transform-origin: bottom; }
.hero::after { height: 55px; }
.coupon-section { padding-top: 2.5rem; }
.section-heading h2 { font-size: clamp(2rem,3.5vw,3rem); }
.catalog-note, .form-help { font-size: .875rem; color: #54645c; }
.category-list { flex-wrap: wrap; }
.nav-link { font-size: .875rem; }
.conditions,.verified,.details-button,.category-label,.price-card li,.price-card>p,.price small,.billing-note,.billing-switch button,.profile-list-item strong,.profile-list-item div span,.profile-empty,.status-pill,.tree-reward,.account-form label,.form-message,.card-kicker,.footer-links button,.footer-links a,.modal-note { font-size: .875rem; }
.account-form input,.account-form select,.account-form textarea { min-width: 0; width: 100%; padding: .8rem; border: 1px solid #bac9b9; background: #fffdf7; border-radius: 9px; font-size: 1rem; color: var(--ink); }
.account-form textarea { resize: vertical; }
.account-form textarea:focus { outline: 3px solid rgba(79,118,89,.22); }
.account-form input[type=checkbox] { width: 20px; height: 20px; accent-color: var(--forest); flex: 0 0 auto; }
.account-form input.invalid,.account-form textarea.invalid,.account-form select.invalid { border-color: var(--danger); }
.account-form label { min-width: 0; }
.account-form .check-line { display: flex; align-items: flex-start; gap: .6rem; }
:focus-visible { outline: 3px solid #bf9556; outline-offset: 3px; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .6; }
.creator-account-card,.admin-panel { margin-top: 1.5rem; }
.creator-registration { margin-top: 2rem; }
.creator-process { margin-top: 1.75rem; padding: 1.5rem; border: 1px solid var(--line); border-radius: 16px; background: #eef2e2; }
.creator-process h3 { font-size: 1.35rem; }
.creator-process ol { padding-left: 1.4rem; line-height: 1.7; }
.creator-process li { margin: .6rem 0; }
.creator-process p { line-height: 1.7; margin-bottom: 0; }
.admin-creator-form { margin-top: 1.25rem; }
.admin-creator-form input[type="datetime-local"] { min-width: 0; max-width: 100%; }
.creator-registration .selection-summary { color: var(--forest); border-color: var(--line); background: #eef2e2; }
.creator-registration h2,.contact-layout h2 { font-size: 2rem; }
.plan-art { height: 112px; display: flex; align-items: end; justify-content: center; gap: 5px; margin: .5rem 0 1.5rem; border-bottom: 2px solid rgba(79,118,89,.22); background: radial-gradient(ellipse at bottom,#cbd9b733,transparent 75%); }
.plan-art .profile-tree { animation: none; }
.plan-art.starter .profile-tree { width: 34px; height: 65px; }
.plan-art.pro .profile-tree { height: 95px; width: 41px; }
.plan-art.forest .profile-tree { height: 108px; width: 40px; }
.price-card.featured { transform: none; }
.price-card li { line-height: 1.5; }
.plan-badge { position: static; align-self: flex-start; margin-bottom: .8rem; font-size: .75rem; }
.price-card .select-plan[aria-pressed=true] { outline: 3px solid var(--gold); outline-offset: 3px; }
.creator-profile-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.creator-profile { min-width: 0; padding: 1.5rem; border: 1px solid var(--line); border-radius: 16px; background: #f0f3e6; }
.creator-profile.featured { border: 2px solid var(--gold); background: #e6edda; }
.creator-profile h3 { margin-top: 1rem; font-size: 1.3rem; overflow-wrap: anywhere; }
.creator-profile p { overflow-wrap: anywhere; }
.creator-profile a { display: block; overflow-wrap: anywhere; margin-top: .7rem; color: var(--forest); text-underline-offset: 3px; }
.contact-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 3rem; }
.contact-layout a { overflow-wrap: anywhere; }
.honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.admin-group { margin-top: 2rem; }
.admin-group h3 { font: 1.7rem Georgia,serif; }
.admin-item { padding: 1rem; margin: .7rem 0; border: 1px solid var(--line); background: #eef2e9; border-radius: 12px; overflow-wrap: anywhere; }
.admin-item h4 { margin: 0 0 .3rem; font-size: 1rem; }
.admin-item p { margin: .5rem 0; white-space: pre-line; }
.admin-actions,.confirm-actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1rem; }
.admin-actions button { padding: .5rem .8rem; }
.admin-item .status-pill { margin-left: .5rem; }
#creatorWorkspace { margin-top: 1.5rem; }
#creatorWorkspace .account-form { max-width: 760px; }
#creatorCodeList { margin: 1.5rem 0; }
.profile-list-item { flex-wrap: wrap; }
.profile-list-item > div { flex: 1; min-width: 120px; }
.profile-list-item strong,.profile-list-item div span { overflow-wrap: anywhere; white-space: normal; }
.code-box code { font-size: .875rem; }
.code-curtain { font-size: .875rem; }
.code-curtain span { font-size: .75rem; }
.toast { max-width: calc(100% - 2rem); width: max-content; text-align: center; border-radius: 12px; }
.inner-page { min-height: 65vh; }
.footer-links { flex-wrap: wrap; }
@media(max-width:980px) { .hero { grid-template-columns: 1fr; } .creator-profile-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
 .hero { padding: 1.8rem 1.2rem 2.2rem; } .hero h1 { font-size: clamp(2.4rem,10vw,3.3rem); } .hero h1 br { display: block; }
 .trust-row { gap: .7rem; font-size: .875rem; } .coupon-section { padding-top: 2rem; } .pricing-section { padding-top: 2rem; }
 .creator-profile-grid,.contact-layout { grid-template-columns: 1fr; } .contact-layout { gap: 1.5rem; }
 .content-panel { width: calc(100% - 1.2rem); padding: 1.3rem; } .page-hero h1 { font-size: clamp(2.2rem,10vw,3.5rem); }
 .page-hero { padding: 2.5rem 1.2rem 4rem; } .profile-forest h3 { font-size: 1.6rem; }
 .billing-switch { margin-top: 0; } .price-card { padding: 1.25rem; } .creator-registration { margin-top: 1rem; }
 .profile-head h2 { font-size: 1.8rem; overflow-wrap: anywhere; } .profile-head p { overflow-wrap: anywhere; }
 .section-heading { gap: .8rem; } .sort-control { flex-wrap: wrap; } .site-header { padding-inline: 1rem; }
 .code-box button { min-width: 86px; padding-inline: .5rem; } .card-actions { gap: .5rem; flex-wrap: wrap; }
 .modal { padding: 2.5rem 1.2rem 1.2rem; } .modal-data { grid-template-columns: 1fr; }
}

.retention-list dt { margin-top: 1.2rem; font-size: 1rem; font-weight: 800; color: var(--forest); }
.retention-list dd { margin: .4rem 0 1rem; line-height: 1.75; overflow-wrap: anywhere; }

#contractActionView { padding: clamp(1.2rem, 5vw, 3rem); max-width: 960px; margin: 0 auto; }
#contractActionView .section-heading { display: block; }
#contractActionView textarea { width: 100%; box-sizing: border-box; }
#contractActionReceipt { margin-top: 1.5rem; }
.footer-links a { color: inherit; font-size: inherit; text-underline-offset: 3px; }

.legal-action-row { margin-top: 1.5rem; }
.legal-action-link { display: inline-block; padding: .65rem .9rem; border: 2px solid currentColor; border-radius: 6px; font-size: .9375rem; font-weight: 700; line-height: 1.5; text-decoration: none; }
.legal-action-link:focus-visible { outline: 2px solid var(--forest); outline-offset: 3px; }
.legal-version { color: var(--muted); font-size: .9rem; }
.withdrawal-form { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; padding: 1.2rem; border: 1px solid var(--line); border-radius: 12px; background: var(--cream); }
.withdrawal-notice { padding-bottom: 1rem; border-bottom: 1px solid var(--line); }
.legal-review h2 { margin-top: 0; font-size: 1.2rem; }
.release-footer-preview { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1rem 0; }
.release-review > details { margin-top: 1.25rem; }
.footer-links .footer-contract-link { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem .75rem; border: 1px solid #c0d0c6; border-radius: 6px; color: #fffdf7; font-size: .875rem; font-weight: 600; line-height: 1.5; }
.footer-links .footer-contract-link:focus-visible { outline: 2px solid var(--lime); outline-offset: 3px; }
.recovery-pin-panel > summary { cursor: pointer; font-weight: 600; }
.recovery-pin-panel[open] > summary { margin-bottom: 1rem; }
.mail-dns-value { width: 100%; min-height: 3.2rem; resize: vertical; overflow-wrap: anywhere; font: .8rem/1.5 ui-monospace,monospace; }

.admin-toolbar { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .8rem; margin: 1.2rem 0; }
.admin-toolbar label { display: flex; flex-direction: column; gap: .35rem; font-size: .875rem; }
.admin-toolbar input,.admin-toolbar select { width: 100%; min-width: 0; padding: .65rem; border: 1px solid #b5c2b4; border-radius: 8px; background: white; font: inherit; }
.admin-meta { font-size: .875rem; color: var(--muted); }
.admin-item details { margin: .75rem 0; }
.admin-item summary { cursor: pointer; font-weight: 600; }
.admin-receipt { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; }
.admin-delete { border-color: #a85348; color: #84392f; }
.admin-empty { color: var(--muted); }
@media (max-width:760px) { .admin-toolbar { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:420px) { .admin-toolbar { grid-template-columns: 1fr; } }

.pin-form {padding:12px 0;border-bottom:1px solid #d6ddcf}.pin-form label{flex:1}.pin-form input[type=number]{width:90px;margin-left:12px}#rejectionNote{display:block;width:100%;box-sizing:border-box;margin-top:8px}

.legal-content h3 { font-size:1.0625rem;line-height:1.45 }.legal-content p {margin-block:.75em}

.footer-links a[href="#withdrawal-action"],.footer-links a[href="#cancellation"]{background:#f3edcf;color:#153d2c;border:2px solid #153d2c;padding:.65rem .9rem;border-radius:6px;font-size:.9375rem;font-weight:700;display:inline-block}.legal-action-link:focus-visible{outline:3px solid #b77b18;outline-offset:3px}

.traffic-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.traffic-metrics>div{padding:14px;border:1px solid #b9c8b7;border-radius:10px;background:#edf3e8}.traffic-metrics span,.traffic-metrics strong{display:block}.traffic-metrics strong{font-size:1.7rem;color:#153d2c}.package-expiry{display:inline-block;padding:4px 8px;border-radius:6px;font-size:.8125rem;line-height:1.4;font-weight:600;vertical-align:middle;white-space:normal}.package-expiry.active{background:#e1eddf;color:#234a2b}.package-expiry.soon{background:#fff0c4;color:#694600}.package-expiry.expired{background:#f5dfdb;color:#7d2e26}.package-expiry.inactive{background:#eee;color:#424242}

/* Hilfe und gegliederte Fußzeile */
.faq-list{max-width:900px;margin:2rem auto 4rem}.faq-list details{border-bottom:1px solid #c8d1bf;padding:1.2rem 0}.faq-list summary{cursor:pointer;font-weight:700;font-size:1.05rem;line-height:1.5;padding:.3rem .2rem}.faq-list details>div{padding:.3rem 1.5rem .3rem .2rem;line-height:1.75}.faq-list summary:focus-visible{outline:3px solid #92702e;outline-offset:4px}.faq-list a{color:#215438;text-underline-offset:3px}
.site-footer{border-radius:2rem 2rem 0 0}.footer-brand strong{font-size:1.4rem}.footer-columns{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:2.5rem}.footer-columns .footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;min-width:0}.footer-links h2{font-size:1rem;color:#f3edcf;border-bottom:1px solid #547062;padding-bottom:.8rem;margin:0 0 .4rem;width:100%}.footer-columns .footer-links a{font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}.footer-links p,.footer-shopping-note{color:#b9c9be;font-size:.875rem;line-height:1.7;margin:0}.footer-actions{display:flex;flex-wrap:wrap;gap:.8rem}.footer-actions a{display:inline-flex;align-items:center;min-height:44px;padding:.65rem .9rem;background:#f3edcf;color:#153d2c;border:2px solid #f3edcf;border-radius:6px;font-size:.9375rem;font-weight:700;text-decoration:none}.footer-actions a:focus-visible{outline:3px solid var(--lime);outline-offset:4px}.footer-shopping-note a{color:#d9ee8d;text-underline-offset:3px}
@media(max-width:700px){.footer-columns{grid-template-columns:1fr;gap:2rem}.site-footer{padding:2.5rem 1.25rem}.faq-list{margin:1.5rem auto 3rem}.footer-actions{flex-direction:column;align-items:flex-start}}

.site-footer .footer-actions{flex-direction:row;flex-wrap:wrap}.site-footer .footer-actions a{background:#f3edcf;color:#153d2c;font-size:.9375rem;}

.ad-disclosure{font-size:.8rem;font-weight:600;color:#36513c;line-height:1.45;margin:.7rem 0}.modal .ad-disclosure{padding:.7rem;background:#edf2df;border-radius:6px}.admin-group form[data-suspend-user]{border-bottom:1px solid #b9c8b7;padding:1rem 0}#reportView .content-panel{max-width:850px;margin:2rem auto}#reportReceipt{margin-top:2rem}#reportReceiptText{white-space:pre-wrap;overflow-wrap:anywhere}#reportForm label{line-height:1.5}

/* Two-column forest imprint, inspired by the supplied reference. */
.legal-content:has(.imprint-forest){max-width:1200px;background:#f8f8ef;border:1px solid #d7dfcd;padding:clamp(24px,4vw,64px);border-radius:18px;box-shadow:0 12px 36px #183e2510}
.imprint-forest{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2.1fr);gap:clamp(32px,5vw,76px)}
.imprint-provider{padding-right:clamp(20px,3vw,40px);border-right:1px solid #d5dfcc}
.legal-content .imprint-kicker{font-size:.75rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#637950;margin:0 0 20px}
.legal-content .imprint-forest h2{font-size:1.65rem;margin:0 0 28px;color:#183e2b}
.legal-content .imprint-provider h2:not(:first-of-type){font-size:1rem;margin:32px 0 10px;padding-top:24px;border-top:1px solid #d5dfcc}
.legal-content .imprint-notices h3{font-size:1.08rem;color:#244b33;margin:32px 0 12px}
.legal-content .imprint-notices h3:first-of-type{margin-top:0}
.imprint-forest p{line-height:1.8}.imprint-forest a{color:#2b623e;text-underline-offset:3px}
.imprint-invite{margin-top:48px;padding:28px;background:#e7ecd8;border:1px solid #c4d2b6;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.legal-content .imprint-invite h2{font-size:1.35rem;margin:0 0 8px}.imprint-invite p{margin:0}.imprint-invite .button{flex-shrink:0}
@media(max-width:760px){.imprint-forest{grid-template-columns:1fr;gap:32px}.imprint-provider{border-right:0;border-bottom:1px solid #d5dfcc;padding:0 0 24px}.imprint-invite{align-items:flex-start;flex-direction:column}.legal-content:has(.imprint-forest){padding:24px 20px}}

.footer-disclosures{grid-column:1/-1;border-top:1px solid #ffffff30;margin-top:20px;padding-top:16px;width:100%}.site-footer .footer-disclosures .catalog-note{font-size:.75rem;line-height:1.65;color:#e0e7d9;margin:0 0 8px}.footer-disclosures a{color:inherit;text-decoration:underline;text-underline-offset:3px}

/* Compact operator account directory */
.users-search{display:flex;align-items:end;gap:12px;margin:14px 0}.users-search label{display:grid;gap:5px;flex:1;font-size:.85rem}.users-search input{width:100%;padding:10px;border:1px solid #cad4cb;border-radius:8px;background:#fff}.users-count{font-size:.82rem;color:#52695b}.compact-user{border-bottom:1px solid #dbe2d9}.compact-user summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 4px;cursor:pointer}.compact-user summary>span:first-child{min-width:0}.compact-user strong{font-size:.9rem;overflow-wrap:anywhere}.compact-user small{display:block;font-size:.75rem;color:#52695b}.compact-user[open]{background:#f4f7ef}.compact-user .compact-form{padding:12px;margin:0}.users-pagination{display:flex;justify-content:space-between;gap:12px;margin-top:12px}.users-audit{margin-top:18px}.users-pagination button:disabled{opacity:.45;cursor:default}@media(max-width:520px){.users-search{align-items:stretch;flex-direction:column}.compact-user summary{padding:9px 2px}}

.admin-fold>summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;padding:4px 0}.admin-fold>summary::before{content:'▸';font-size:1rem}.admin-fold[open]>summary::before{content:'▾'}.admin-fold>summary .status-pill{margin-left:auto}.admin-fold-body{padding-top:12px}.user-grid-heading,.compact-user summary{display:grid;grid-template-columns:minmax(0,1fr) 110px 80px;gap:12px;align-items:center}.user-grid-heading{font-size:.75rem;color:#52695b;padding:8px 4px;border-bottom:2px solid #dbe2d9}.user-grid-count{font-size:.8rem;font-weight:700}.user-published{padding:8px 12px}.user-published h4{font-size:.85rem;margin:4px 0 10px}.user-code-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}.user-code-grid article{padding:10px;border:1px solid #dbe2d9;background:#fff;border-radius:8px;min-width:0}.user-code-grid strong,.user-code-grid code,.user-code-grid small{display:block;overflow-wrap:anywhere}.user-code-grid code{font-size:.8rem;margin:5px 0}.user-code-grid small{font-size:.75rem}@media(max-width:520px){.user-grid-heading,.compact-user summary{grid-template-columns:minmax(0,1fr) 65px 62px;gap:6px}.user-grid-heading{font-size:.65rem}.user-grid-count{font-size:.75rem}.compact-user .status-pill{font-size:.65rem}}

.partner-offers{display:grid;gap:24px;margin:24px 0}.partner-offer{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1fr);border:1px solid #d3dfcf;border-radius:18px;overflow:hidden;background:#fff}.partner-offer-art{background:linear-gradient(140deg,#dce8cf,#f2e8cc);display:flex;align-items:center;justify-content:center;min-height:270px;position:relative;color:#244a36}.partner-offer-art>span{font-family:Georgia,serif;font-size:4rem;line-height:1;text-align:center}.partner-offer-art small{display:block;font-family:inherit;font-size:1.6rem;letter-spacing:.2em}.partner-offer-art i{position:absolute;top:18px;right:18px;background:#244a36;color:#fff;border-radius:30px;padding:7px 14px;font-style:normal;font-size:.75rem}.partner-offer-copy{padding:28px}.partner-offer-copy h2{font-size:1.5rem;margin:10px 0}.partner-disclosure{font-size:.85rem;color:#52695b}.partner-offer-copy .button{margin-top:14px}@media(max-width:600px){.partner-offer{grid-template-columns:1fr}.partner-offer-art{min-height:170px}.partner-offer-copy{padding:20px}}

.partner-offer-art>span{font-size:clamp(2rem,4vw,3.4rem);overflow-wrap:anywhere;padding:12px}

.partner-offer-art small{font-size:clamp(.7rem,1.6vw,1.35rem);letter-spacing:.08em}

/* Individuelle, selbst gestaltete Markenillustrationen */
.brand-illustration{--brand-hue:145;display:inline-grid;place-items:center;flex-shrink:0;width:58px;height:58px;border-radius:18px;background:hsl(var(--brand-hue) 38% 94%);color:hsl(var(--brand-hue) 38% 26%);box-shadow:inset 0 0 0 1px hsl(var(--brand-hue) 32% 85%)}
.brand-illustration svg{width:48px;height:48px}.brand-orbit{stroke:currentColor;stroke-opacity:.13;stroke-dasharray:2 5}
.partner-disclosure{display:flex;align-items:center;gap:14px;padding:18px 22px;border:1px solid #d6e1d1;border-radius:16px;background:#f3f6ee;line-height:1.7;color:#405a49}.partner-disclosure strong{color:#214b36;font-size:.92rem}.partner-disclosure-mark{display:grid;place-items:center;flex-shrink:0;width:38px;height:38px;border-radius:50%;background:#e1ead7;color:#244a36;font-size:1.4rem}
.partner-offer{box-shadow:0 6px 24px #163c2608;transition:box-shadow .2s,border-color .2s}.partner-offer:hover{border-color:#a9bea1;box-shadow:0 10px 28px #163c2610}
.partner-offer-art{flex-direction:column;gap:18px;padding:28px 20px;background:radial-gradient(ellipse at 20% 10%,#fff9,transparent 65%),linear-gradient(145deg,#edf2e5,#e6eddb)}
.partner-offer-art .brand-illustration-large{width:112px;height:112px;border-radius:32px;transform:rotate(-5deg);box-shadow:0 12px 30px #244a3610,inset 0 0 0 1px hsl(var(--brand-hue) 32% 85%)}
.brand-illustration-large svg{width:88px;height:88px}.partner-offer-art>.partner-brand-name{font-size:clamp(1.5rem,3vw,2.4rem);padding:0;line-height:1.2}.partner-offer-art .partner-brand-name small{font-family:inherit;font-size:.62rem;letter-spacing:.18em;margin-top:12px;opacity:.65}.partner-offer-copy h2{letter-spacing:-.025em}.partner-offer-copy .offer{font-size:1.3rem;font-weight:800;line-height:1.35}
@media(max-width:600px){.partner-offer-art{min-height:220px;padding:24px}.partner-disclosure{align-items:flex-start;padding:16px}.partner-offer-art .brand-illustration-large{width:88px;height:88px}.brand-illustration-large svg{width:72px;height:72px}}
@media(prefers-reduced-motion:reduce){.partner-offer{transition:none}}

.reward-challenges,.reward-boxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:16px 0}.reward-challenges article,.reward-boxes article{padding:18px;border:1px solid #ccd8c5;border-radius:14px;background:#f6f8ed;color:#203d2a}.reward-boxes strong,.reward-boxes span{display:block}.reward-boxes span{font-size:2rem}.reward-boxes button{padding:10px;border:0;border-radius:8px;background:#dfe6d6;color:#41523e;opacity:1}.reward-challenges progress{width:100%;accent-color:#386a38}.user-grid-count small{display:block;font-size:.8rem;white-space:normal}#rewardClub h4{margin-top:22px}

/* Prämienclub: forest greens, warm paper and visible monthly milestones. */
.club-kicker{margin:0 0 12px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:#45634a}.club-home{margin:0 auto 48px;max-width:1200px;padding:30px;display:grid;grid-template-columns:1.1fr 1fr;gap:34px;background:#e9eddc;border:1px solid #ccd5b9;border-radius:24px;position:relative;overflow:hidden}.club-home-copy{padding:8px 12px}.club-home h2{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.1;margin:12px 0 16px}.club-home h2 em{color:#427044;font-style:normal}.club-home-copy>p:not(.club-kicker){max-width:460px;line-height:1.65}.club-home-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}.club-home-actions>span{font-size:.75rem;color:#52604e}.club-home-personal{font-weight:700;font-size:.85rem}.club-home-mission{background:#133e2f;color:#f6f6e9;border-radius:17px;padding:25px 28px;box-shadow:0 12px 28px #193e2512}.club-home-mission-top{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:.68rem;font-weight:800;letter-spacing:.08em}.club-home-mission-top>b{font-size:1.8rem;color:#e3c781;white-space:nowrap}.club-home-mission-top>b>span{font-size:.65rem;letter-spacing:0}.club-home-mission h3{font-size:1.5rem;line-height:1.25;margin:16px 0 22px}.club-home-steps{display:grid;grid-template-columns:1fr 1fr;gap:12px}.club-home-steps>span{padding:12px;border:1px solid #ffffff30;border-radius:10px;font-size:.75rem}.club-home-steps b{font-size:1.3rem;margin-right:4px}.club-home-steps strong{display:block;color:#e3c781;margin-top:6px}.club-home-mission>p{font-size:.8rem;color:#d1decb;margin:14px 0 10px}.club-home-mission>small{display:block;font-size:.68rem;color:#c5d4bc;line-height:1.5}.club-dashboard{padding:30px!important}.club-dashboard-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.club-dashboard-top h3{margin:0;font-size:clamp(1.7rem,3vw,2.2rem)}.club-dashboard-top>div>p:last-child{margin:10px 0 18px;color:#61705e}.club-free-badge,.club-coming{white-space:nowrap;font-size:.72rem;font-weight:700;padding:8px 12px;border-radius:30px;background:#e8eddf;color:#355c40}.club-streak{padding:14px 18px;border:1px solid #dbe1d3;background:#f4f5ed;border-radius:10px;font-size:.85rem;color:#45604a;margin:4px 0 26px}.club-month{padding:26px;background:#153f30;color:#f6f7ec;border-radius:18px}.club-month .club-kicker{color:#d4c386}.club-month-heading{display:flex;justify-content:space-between;gap:20px}.club-month h4{font-size:clamp(1.4rem,2.2vw,1.85rem);line-height:1.2;margin:0 0 12px;color:#fffdf0}.club-month-heading p:last-child{font-size:.9rem;color:#d3dfcd;margin:0 0 22px}.club-month-bounty{border:1px solid #b5bd7e66;background:#ffffff0b;border-radius:13px;padding:14px;text-align:center;min-width:122px;align-self:flex-start}.club-month-bounty strong{font-size:2.4rem;color:#edd18a;display:block;line-height:1}.club-month-bounty span{display:block;font-size:.65rem;margin-top:8px;color:#e4e5ca}.club-mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.club-mission{padding:22px;background:#faf9ee;border-radius:13px;color:#254333;border:2px solid transparent}.club-mission.is-complete{border-color:#c7b869;background:#f1f3df}.club-mission-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.club-mission-top>span{font-size:.63rem;letter-spacing:.08em;font-weight:800;color:#647155}.club-mission-top>b{padding:6px 9px;border-radius:8px;background:#e8edd8;font-size:.9rem;white-space:nowrap}.club-mission h5{font-size:1.3rem;margin:20px 0 8px;line-height:1.25;font-family:Georgia,serif}.club-mission>p{font-size:.85rem;line-height:1.6;color:#5d6b56;margin:0 0 22px}.club-mission-progress{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.club-mission-progress>strong{font-size:1.6rem;line-height:1}.club-mission-progress>strong>span{font-size:.8rem;font-weight:400;color:#68735e}.club-mission-state{font-size:.72rem;font-weight:700;color:#436345}.club-mission progress,.club-box progress{display:block;width:100%;height:9px;border:0;border-radius:20px;overflow:hidden;accent-color:#537c43;margin:14px 0}.club-mission progress::-webkit-progress-bar,.club-box progress::-webkit-progress-bar{background:#e0e5d2;border-radius:20px}.club-mission progress::-webkit-progress-value,.club-box progress::-webkit-progress-value{background:#648149;border-radius:20px}.club-mission>small{font-size:.7rem;line-height:1.5;color:#67735c;display:block}.club-month-foot{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:.74rem;color:#d4dfc9;margin-top:20px}.club-month-foot>span:last-child{font-size:.68rem}.club-join{margin:22px 0;padding:24px;border:1px solid #dacb96;background:#fbf6e5;border-radius:14px}.club-join h4{font-size:1.4rem;margin:0 0 8px}.club-join p{margin:0;font-size:.88rem}.club-join .check-line{margin:12px 0;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;font-size:.82rem}.club-join input[type=checkbox]{width:auto}.club-join [data-reward-message]:empty{display:none}.club-treasures{margin-top:30px}.club-treasures-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.club-treasures h4{font-size:1.5rem;margin:0}.club-treasures>.club-treasures-heading+p{font-size:.88rem;color:#64705d}.club-coming{background:#f2ebd7;color:#796736}.club-box{position:relative;overflow:hidden;background:#f0f2e5!important;text-align:center;padding:22px!important}.club-box-number{position:absolute;top:12px;left:14px;color:#8b987a;font-size:.7rem!important}.club-box-art{font-size:3rem!important;color:#7d9360;line-height:1;margin:8px 0 18px}.club-box>b{display:block;font-size:1.55rem;color:#31543d;margin:12px 0}.club-box>b>small{display:block;font-size:.7rem;font-weight:400}.club-box p{font-size:.75rem;color:#67725b}.club-box button{width:100%;font-size:.7rem;background:#e0e5d4!important;color:#647255!important}.club-treasures>small{font-size:.72rem;color:#68755e;display:block}.club-how,.club-transactions{border-top:1px solid #dde2d3;margin-top:24px;padding-top:18px}.club-how summary,.club-transactions summary{cursor:pointer;font-weight:700;color:#355b40;font-size:.9rem}.club-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:15px}.club-how p{font-size:.8rem;line-height:1.65;color:#63715c}.club-how-grid strong{display:block;color:#35553e;margin-bottom:8px}.club-transaction{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #e3e7db;font-size:.85rem}.club-transaction small{display:block;color:#6b775f;margin-top:4px}.club-transaction>strong{white-space:nowrap;color:#38623e}
@media(max-width:760px){.club-home{grid-template-columns:1fr;margin:0 18px 30px;padding:20px;gap:20px}.club-home-copy{padding:2px}.club-home-mission{padding:20px}.club-dashboard{padding:18px!important}.club-dashboard-top{display:block}.club-free-badge{display:inline-block;margin-bottom:16px}.club-month{padding:18px}.club-month-heading{gap:12px}.club-month-bounty{min-width:80px;padding:12px 8px}.club-month-bounty strong{font-size:1.9rem}.club-month-bounty span{font-size:.58rem}.club-mission-grid{grid-template-columns:1fr}.club-mission{padding:18px}.club-how-grid{grid-template-columns:1fr;gap:0}.club-treasures-heading{align-items:flex-start}.club-treasures-heading h4{font-size:1.3rem}.club-coming{font-size:.6rem;padding:7px 9px}.club-join{padding:18px}.club-home-actions .button{width:100%;justify-content:center}.club-home-actions>span{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.club-dashboard *,.club-home *{scroll-behavior:auto}}

.club-dashboard{scroll-margin-top:96px}

#clubView .club-home{margin-top:32px} .club-landing-explain{margin-bottom:40px}.club-landing-explain>p{color:#62705c;font-size:.88rem;line-height:1.7}.club-nav{font-weight:600}

@media(min-width:761px) and (max-width:1100px){.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;padding:1rem;flex-direction:column;align-items:stretch;background:var(--cream);border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.menu-button{display:block}.nav-link{text-align:left}}

.brand-blurb{margin:10px 0 2px;color:#586854;font-size:.84rem;line-height:1.6;min-height:4.8em}.brand-portrait{background:#f1f4e8;border:1px solid #dee5d1;border-radius:12px;padding:16px 18px;margin:18px 0}.brand-portrait-label{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#64774f;margin:0 0 8px}.brand-portrait>p:not(.brand-portrait-label){font-size:.93rem;line-height:1.65;margin:0 0 10px;color:#334f38}.brand-portrait>a{font-size:.75rem;color:#496c3a;text-underline-offset:3px}.brand-blurb+.conditions{margin-top:.65rem}@media(max-width:760px){.brand-blurb{min-height:0}}

.coupon-highlight{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.5rem clamp(1rem,5vw,5rem);border-bottom:1px solid var(--line);background:#eaf0e5;color:var(--forest);font-size:.8rem;min-height:44px}
.highlight-label{color:var(--muted);font-size:.7rem;white-space:nowrap}
.highlight-offer{display:flex;align-items:center;justify-content:center;gap:.75rem;border:0;background:transparent;cursor:pointer;padding:.15rem .3rem;min-width:0;flex-wrap:wrap;line-height:1.4}
.highlight-offer strong{font-weight:650}.highlight-offer code{font-size:.75rem;background:rgba(13,43,33,.06);padding:.15rem .45rem;border-radius:4px;overflow-wrap:anywhere}
.highlight-offer:hover strong{text-decoration:underline}.highlight-arrow{color:var(--moss)}
.highlight-pause{background:transparent;border:1px solid var(--line);border-radius:5px;padding:.2rem .45rem;font-size:.7rem;color:var(--muted);cursor:pointer;flex-shrink:0}
.highlight-offer:focus-visible,.highlight-pause:focus-visible{outline:2px solid var(--moss);outline-offset:3px}
@media(max-width:600px){.coupon-highlight{gap:.5rem;flex-wrap:wrap;padding:.45rem .8rem}.highlight-label{font-size:.65rem}.highlight-offer{gap:.4rem;font-size:.75rem;flex:1 1 65%}.highlight-pause{font-size:.65rem}}

.coupon-highlight{flex-wrap:nowrap}
.highlight-track{overflow:hidden;position:relative;flex:1;min-width:0;height:30px;max-width:850px}
.highlight-track .highlight-offer{position:absolute;top:0;left:0;width:max-content;max-width:none;flex-wrap:nowrap;white-space:nowrap;height:30px;animation:none}
.highlight-track .highlight-offer.is-running{animation:wald-tip-scroll 16s linear forwards}
@keyframes wald-tip-scroll{from{left:100%;transform:translateX(0)}to{left:0;transform:translateX(-100%)}}
.coupon-highlight:hover .highlight-offer,.coupon-highlight:focus-within .highlight-offer,.coupon-highlight.is-paused .highlight-offer,.coupon-highlight.is-inactive .highlight-offer{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.highlight-track .highlight-offer.is-running{animation:none;position:static;transform:none;white-space:normal;height:auto}.highlight-track{height:auto;min-height:30px}.highlight-track .highlight-offer{flex-wrap:wrap;width:auto}}
@media(max-width:600px){.coupon-highlight{gap:.4rem}.highlight-track{height:32px}.highlight-track .highlight-offer{font-size:.72rem;height:32px}.highlight-label{font-size:.65rem}}

.highlight-label small{font-size:.65rem;font-weight:400;color:var(--muted)}
.standalone-legal{max-width:1100px;margin:2rem auto;padding:1.5rem;background:var(--paper);border-radius:var(--radius)}
.standalone-nav{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem clamp(1rem,5vw,5rem);border-bottom:1px solid var(--line)}
.standalone-legal h1{font-size:clamp(2rem,5vw,3.5rem)}
