:root{
  --marsh:#4a6b52; --marsh-soft:#e3e9df; --oyster:#f8f5ef; --shell:#fffdf9;
  --mud:#4b3b2e; --mud-soft:#7a6a5c; --coral:#e07a5f; --coral-dark:#c9634a;
  --rule:#ddd5c7; --sand:#efe8db;
  --serif:"Cormorant Garamond", Georgia, serif; --sans:"Inter", system-ui, sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-variant-numeric:lining-nums;background:var(--oyster);color:var(--mud);font-family:var(--sans);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--marsh);text-decoration:none}
img,svg{display:block}
.wrap{max-width:1120px;margin:0 auto;padding:0 40px}
.narrow{max-width:760px;margin:0 auto}
.eyebrow{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--marsh)}
h1,h2,h3{font-family:var(--serif);font-weight:600;color:var(--mud);line-height:1.1}
h2{font-size:46px;letter-spacing:-.01em;margin-top:10px}
h3{font-size:27px}
p.lede{font-size:18px;color:var(--mud-soft);max-width:560px}
.rule{height:1px;background:var(--rule);border:0}

/* header */
header{padding:34px 0 0}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:14px;color:var(--mud)}
.brand svg{width:42px;height:42px;color:var(--marsh)}
.wordmark{font-family:var(--serif);font-size:30px;font-weight:600;letter-spacing:.01em;line-height:1}
.wordmark small{display:block;font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--mud-soft);margin-top:6px}
nav{display:flex;gap:30px;align-items:center;font-size:14px;font-weight:500}
nav a{color:var(--mud)}
nav a.btn-sm{color:#fff;background:var(--marsh);padding:9px 18px;border-radius:999px}
.dateline{display:flex;justify-content:space-between;margin-top:28px;padding:11px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mud-soft)}

/* hero */
.hero{padding:72px 0 0;text-align:center;position:relative;overflow:hidden}
.hero h1{font-size:70px;font-weight:600;letter-spacing:-.015em;max-width:980px;margin:16px auto 0}
.hero h1 em{font-style:italic;color:var(--marsh);font-weight:500}
.hero p.sub{font-size:19px;color:var(--mud-soft);max-width:600px;margin:22px auto 0}
.signup{display:flex;gap:12px;max-width:640px;margin:36px auto 0}
.signup input{flex:1;min-width:0;font:inherit;font-size:16px;padding:16px 20px;border:1px solid #cfc5b4;background:var(--shell);border-radius:6px;color:var(--mud)}
.signup input::placeholder{color:#a3968a}
.signup input.name{flex:.7}
.btn{font:inherit;font-weight:600;font-size:16px;background:var(--coral);color:#fff;border:0;border-radius:6px;padding:16px 28px;cursor:pointer;white-space:nowrap}
.fine{font-size:13.5px;color:var(--mud-soft);margin-top:16px}
.fine b{color:var(--mud);font-weight:600}
.hero-art{margin:44px auto 0;width:100%;max-width:1120px;color:var(--marsh)}

/* sections */
section{padding:110px 0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:52px}
.sec-head .more{font-size:14px;font-weight:600;white-space:nowrap;border-bottom:1px solid currentColor;padding-bottom:2px}
.divider{display:flex;align-items:center;gap:22px;color:var(--marsh);opacity:.85}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--rule)}
.divider svg{width:46px;height:26px}

/* events */
.events{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--mud)}
.event{padding:30px 28px 8px 0;border-right:1px solid var(--rule);margin-right:28px}
.event:last-child,.event:nth-child(3n){border-right:0;margin-right:0}
.event:nth-child(n+4){border-top:1px solid var(--rule)}
.event .meta a{color:inherit;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.date{font-family:var(--serif);font-size:54px;line-height:1;color:var(--marsh);font-weight:600}
.date span{display:block;white-space:nowrap;font-family:var(--sans);font-size:11.5px;letter-spacing:.2em;font-weight:600;text-transform:uppercase;color:var(--mud-soft);margin-bottom:8px}
.event h3{font-size:24px;margin-top:20px}
.event p{font-size:15px;color:var(--mud-soft);margin-top:10px}
.event .meta{font-size:13px;color:var(--mud);margin-top:14px;font-weight:500}

/* feature ad */
.feature-wrap{padding:0}
.feature{position:relative;max-width:820px;margin:0 auto;background:var(--shell);border:1px solid var(--rule);border-radius:4px;padding:40px 48px;display:grid;grid-template-columns:auto 1fr auto;gap:36px;align-items:center}
.feature .tag{position:absolute;top:-10px;left:40px;background:var(--oyster);padding:0 12px;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mud-soft)}
.feature .mark{width:84px;height:84px;border-radius:50%;background:var(--marsh-soft);display:grid;place-items:center;color:var(--marsh)}
.feature .mark svg{width:46px;height:46px}
.feature h3{font-size:30px}
.feature p{font-size:15.5px;color:var(--mud-soft);margin-top:6px;max-width:420px}
.feature .offer{text-align:center;border-left:1px solid var(--rule);padding-left:36px}
.feature .offer b{display:block;font-family:var(--serif);font-size:34px;color:var(--coral-dark);line-height:1;font-weight:600}
.feature .offer span{font-size:12.5px;color:var(--mud-soft);letter-spacing:.04em}
.feature .offer code{display:inline-block;margin-top:10px;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.14em;border:1px dashed var(--coral);color:var(--coral-dark);padding:4px 10px;border-radius:3px}

/* recipe */
.recipe{background:var(--sand)}
.recipe-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.plate{aspect-ratio:1/1;max-width:440px;width:100%;border-radius:50%;background:var(--shell);border:1px solid var(--rule);display:grid;place-items:center;color:var(--mud);margin:0 auto}
.plate svg{width:70%;height:70%}
.recipe .facts{display:flex;gap:34px;margin:30px 0;padding:18px 0;border-top:1px solid #d4c9b6;border-bottom:1px solid #d4c9b6}
.facts div{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mud-soft)}
.facts b{display:block;font-family:var(--serif);font-size:26px;letter-spacing:0;text-transform:none;color:var(--mud);font-weight:600}
.recipe blockquote{font-family:var(--serif);font-style:italic;font-size:22px;line-height:1.45;color:var(--mud);margin-top:24px}
.link-arrow{display:inline-block;margin-top:28px;font-weight:600;font-size:15px;border-bottom:1px solid currentColor;padding-bottom:2px}

/* 10 questions */
.q-grid{display:grid;grid-template-columns:320px 1fr;gap:80px;align-items:start}
.portrait{text-align:center}
.portrait .ring{width:240px;height:240px;margin:0 auto;border-radius:50%;border:1px solid var(--marsh);padding:12px}
.portrait .ring div{width:100%;height:100%;border-radius:50%;background:var(--marsh-soft);display:grid;place-items:center;color:var(--marsh)}
.portrait .ring svg{width:56%;height:56%}
.portrait h3{margin-top:26px;font-size:30px}
.portrait p{font-size:14px;color:var(--mud-soft);margin-top:4px}
.qa{border-top:1px solid var(--rule)}
.qa > div{padding:26px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:56px 1fr;gap:12px}
.qa .n{font-family:var(--serif);font-size:30px;color:var(--coral);line-height:1;font-weight:600}
.qa h4{font-family:var(--serif);font-size:24px;font-weight:600;line-height:1.25}
.qa p{margin-top:8px;color:var(--mud-soft);font-size:16px}

/* birthdays */
.bday{background:var(--marsh);color:#f4f1e8}
.bday h2,.bday h3{color:#fff}
.bday .eyebrow{color:#cfe0c9}
.bday-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:start}
.sponsor{font-size:14px;color:#dbe6d6;margin-top:16px}
.sponsor b{color:#fff;font-weight:600}
.names{columns:2;column-gap:40px;margin-top:36px;font-family:var(--serif);font-size:23px;line-height:1.9;color:#fff}
.names li{list-style:none;break-inside:avoid}
.names{line-height:1.3}
.names li{margin-bottom:16px}
.names li span{display:block;white-space:nowrap;font-family:var(--sans);font-size:12px;color:#cfe0c9;letter-spacing:.08em;margin-top:3px}
.cookie{margin-top:36px;padding:20px 24px;border:1px dashed rgba(255,255,255,.5);border-radius:4px;font-size:15px;color:#f4f1e8;display:flex;gap:16px;align-items:center}
.cookie svg{flex:none;width:34px;height:34px;color:#f3c7b8}
.bday-form{background:var(--oyster);color:var(--mud);border-radius:4px;padding:42px 40px}
.bday-form h3{color:var(--mud);font-size:32px}
.bday-form p{font-size:15.5px;color:var(--mud-soft);margin-top:10px}
.bday-form label{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--mud-soft);margin:22px 0 8px}
.bday-form input,.bday-form select{width:100%;font:inherit;font-size:15.5px;padding:13px 16px;border:1px solid #cfc5b4;background:var(--shell);border-radius:6px;color:var(--mud);appearance:none}
.bday-form .row{display:grid;grid-template-columns:1.4fr 1fr;gap:12px}
.bday-form .btn{width:100%;margin-top:26px}
.bday-form .fine{font-size:12.5px;margin-top:12px;text-align:center}

/* maker + now open */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.maker-card .art{height:260px;background:var(--sand);border-radius:4px;display:grid;place-items:center;color:var(--mud)}
.maker-card .art svg{height:68%}
.maker-card h3{margin-top:28px;font-size:34px}
.maker-card .who{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--marsh);font-weight:600;margin-top:8px}
.maker-card p{margin-top:14px;color:var(--mud-soft)}
.open-list li{list-style:none;padding:24px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:1fr auto;gap:8px 20px}
.open-list li:first-child{border-top:1px solid var(--mud)}
.open-list h4{font-family:var(--serif);font-size:25px;font-weight:600;line-height:1.25}
.open-list .hood{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mud-soft);align-self:center;font-weight:600}
.open-list p{grid-column:1/-1;font-size:15px;color:var(--mud-soft)}
.pill{display:inline-block;font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-dark);background:#fbe6df;border-radius:999px;padding:3px 9px;margin-left:10px;vertical-align:4px}

/* directory */
.directory{background:var(--shell);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.dir-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:900px;margin:0 auto}
.mini{border:1px solid var(--rule);border-radius:4px;padding:22px 24px;display:grid;grid-template-columns:44px 1fr;gap:18px;align-items:start;background:var(--oyster)}
.mini .ic{width:44px;height:44px;border-radius:50%;border:1px solid var(--marsh);display:grid;place-items:center;color:var(--marsh);font-family:var(--serif);font-size:21px;font-weight:600}
.mini .cat{font-size:10.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--marsh)}
.mini h4{font-family:var(--serif);font-size:22px;font-weight:600;line-height:1.2;margin-top:2px}
.mini p{font-size:14px;color:var(--mud-soft);margin-top:4px;line-height:1.5}
.mini a{display:inline-block;font-size:13.5px;font-weight:600;margin-top:8px}
.dir-note{text-align:center;font-size:13.5px;color:var(--mud-soft);margin-top:34px}
.center-head{text-align:center;margin-bottom:52px}
.center-head p.lede{margin:16px auto 0;max-width:640px}

/* advertise */
.adv{padding:110px 0}
.adv-box{border:1px solid var(--mud);border-radius:4px;padding:60px;display:grid;grid-template-columns:1fr 1.5fr;gap:48px;align-items:center}
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.price{padding:0 22px;border-left:1px solid var(--rule)}
.price b{display:block;font-family:var(--serif);font-size:52px;line-height:1;color:var(--marsh);font-weight:600}
.price h4{font-size:15px;font-weight:600;margin-top:14px}
.price p{font-size:13.5px;color:var(--mud-soft);margin-top:6px;line-height:1.55}
.adv-box .btn{margin-top:28px;display:inline-block}

/* footer */
footer{background:var(--mud);color:#e9e1d4;padding:80px 0 40px;position:relative}
footer .grass{position:absolute;top:-1px;left:0;width:100%;height:auto;color:var(--oyster)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}
footer .wordmark{color:#fff}
footer .wordmark small{color:#c4b7a6}
footer p{font-size:14.5px;color:#cbbfae;margin-top:18px;max-width:340px}
footer h5{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:#c4b7a6;font-weight:600}
footer ul{list-style:none;margin-top:16px}
footer li{font-size:14.5px;line-height:2.1}
footer li a{color:#f1ebe1}
.foot-bottom{margin-top:64px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;gap:20px;font-size:12.5px;color:#b5a895}
.mock-note{font-style:italic}


/* v2 feature cards */
.feature .tag,.fcard .tag{white-space:nowrap}
.feature-wrap.pt{padding-top:110px}.feature-wrap.pb{padding-bottom:110px}
.fpair{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:1000px;margin:0 auto}
.fcard{position:relative;background:var(--shell);border:1px solid var(--rule);border-radius:4px;padding:38px 36px 30px;display:flex;flex-direction:column}
.fcard .tag{position:absolute;top:-10px;left:30px;background:var(--oyster);padding:0 12px;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--mud-soft)}
.ftop{display:flex;align-items:center;gap:18px}
.fcard .mark{flex:none;width:56px;height:56px;border-radius:50%;background:var(--marsh-soft);display:grid;place-items:center;color:var(--marsh)}
.fcard .mark svg{width:30px;height:30px}
.fcard h3{font-size:27px}
.fcard p{font-size:15px;color:var(--mud-soft);margin-top:16px;flex:1}
.foffer{margin-top:20px;padding-top:16px;border-top:1px dashed var(--rule);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.foffer b{font-family:var(--serif);font-size:24px;color:var(--coral-dark);font-weight:600;line-height:1}
.foffer span{font-size:13px;color:var(--mud-soft)}
.foffer code{margin-left:auto;font-family:var(--sans);font-size:11.5px;font-weight:600;letter-spacing:.14em;border:1px dashed var(--coral);color:var(--coral-dark);padding:3px 9px;border-radius:3px}
.inline-ad{margin-top:64px;text-align:left}
.dir-group{max-width:1040px;margin:0 auto 52px}
.dir-group:last-of-type{margin-bottom:0}
.dir-h{font-size:24px;font-weight:600;display:flex;align-items:center;gap:20px;margin-bottom:22px}
.dir-h::after{content:"";flex:1;height:1px;background:var(--rule)}
.directory .dir-grid{grid-template-columns:repeat(3,1fr);max-width:none;gap:18px}
.directory .mini{padding:20px 20px;gap:14px;grid-template-columns:40px 1fr}
.directory .mini .ic{width:40px;height:40px;font-size:19px}
.directory .mini h4{font-size:21px}

.mob-only{display:none}
/* mobile */
@media (max-width:820px){
  .desk-only{display:none}.mob-only{display:block}

  .feature-wrap.pt{padding-top:72px}.feature-wrap.pb{padding-bottom:72px}
  .fpair{grid-template-columns:1fr;gap:44px}
  .fcard{padding:34px 24px 26px}
  .fcard .tag{left:20px;font-size:10px;letter-spacing:.18em}
  .feature .tag{font-size:10px;letter-spacing:.18em}
  .fcard h3{font-size:24px}
  .foffer code{margin-left:0}
  .inline-ad{margin-top:48px}
  .directory .dir-grid{grid-template-columns:1fr 1fr;gap:12px}
  .directory .mini{grid-template-columns:1fr;padding:18px 16px;gap:10px}
  .directory .mini .ic{width:34px;height:34px;font-size:17px}
  .directory .mini h4{font-size:19px}
  .dir-h{font-size:21px}
  .dir-group{margin-bottom:40px}
  br.d{display:none}
  body{font-size:16px}
  .wrap{padding:0 22px}
  nav a:not(.btn-sm){display:none}
  .wordmark{font-size:20px;white-space:nowrap}
  .brand svg{width:30px!important;height:30px!important}
  .wordmark small{font-size:9px;letter-spacing:.2em}
  .brand{gap:10px}
  nav a.btn-sm{padding:8px 14px;font-size:13px}
  .hero-art{width:210%;max-width:none;margin-left:-8%}
  .event .date span{font-size:10px;letter-spacing:.14em}
  .open-list li{grid-template-columns:1fr}
  .open-list .hood{grid-row:2}
  .brand svg{width:34px;height:34px}
  .dateline span:nth-child(2){display:none}
  .dateline{font-size:10.5px;letter-spacing:.12em}
  .hero{padding-top:60px}
  .hero h1{font-size:46px}
  .hero p.sub{font-size:17px}
  .signup{flex-direction:column}
  .signup input.name{flex:1}
  .hero-art{margin-top:48px}
  section,.adv{padding:72px 0}
  h2{font-size:36px}
  .sec-head{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:36px}
  .events{grid-template-columns:1fr}
  .event{border-right:0;margin-right:0;padding:26px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:72px 1fr;column-gap:18px}
  .event:nth-child(n+4){border-top:0}
  .event .date{grid-row:1/4;font-size:44px}
  .event h3{margin-top:0;font-size:23px}
  .feature{grid-template-columns:1fr;padding:38px 26px 30px;gap:20px;text-align:left}
  .feature .tag{left:22px}
  .feature .mark{width:64px;height:64px}
  .feature .mark svg{width:36px;height:36px}
  .feature .offer{border-left:0;border-top:1px solid var(--rule);padding:20px 0 0;text-align:left}
  .recipe-grid,.q-grid,.bday-grid,.two-col,.adv-box,.foot-grid{grid-template-columns:1fr;gap:44px}
  .plate{max-width:260px}
  .recipe .facts{gap:22px}
  .facts b{font-size:22px}
  .portrait .ring{width:190px;height:190px}
  .qa > div{grid-template-columns:44px 1fr}
  .names{column-gap:20px;font-size:20px}
  .bday-form{padding:32px 24px}
  .dir-grid{grid-template-columns:1fr 1fr;gap:12px}
  .mini{grid-template-columns:1fr;padding:18px 16px;gap:12px}
  .mini .ic{width:36px;height:36px;font-size:18px}
  .mini h4{font-size:19px}
  .mini p{font-size:13px}
  .mini a{font-size:12.5px;word-break:break-word}
  .adv-box{padding:36px 24px}
  .prices{grid-template-columns:1fr;gap:24px}
  .price{border-left:0;border-top:1px solid var(--rule);padding:22px 0 0}
  .foot-bottom{flex-direction:column}
}

/* ===== v3: personality pass ===== */
:root{--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .3 0 0 0 0 .23 0 0 0 0 .18 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--peach:#f8e1d5;--peach-deep:#f2c9b6;--butter:#f6edd6;--seaglass:#dfeae6;--rr1:#f0c3bd;--rr2:#f3d99a;--rr3:#bfd8c3;--rr4:#bcd3df;--rr5:#f2c7a3;--rr6:#d9c8de}
body{background-color:var(--oyster);background-image:var(--grain);overflow-x:clip}
.rainbow{height:8px;display:flex}
.rainbow i{flex:1}
.rainbow i:nth-child(6n+1){background:var(--rr1)}.rainbow i:nth-child(6n+2){background:var(--rr2)}.rainbow i:nth-child(6n+3){background:var(--rr3)}.rainbow i:nth-child(6n+4){background:var(--rr4)}.rainbow i:nth-child(6n+5){background:var(--rr5)}.rainbow i:nth-child(6n){background:var(--rr6)}
h2{font-size:60px;font-weight:600;letter-spacing:-.018em;line-height:1.02}
h2 em,h3 em{font-style:italic;font-weight:500;color:var(--marsh)}
.secno{display:flex;align-items:center;gap:14px}
.secno .no{font-family:var(--serif);font-style:italic;font-weight:500;font-size:22px;letter-spacing:0;text-transform:none;color:var(--coral-dark)}
.secno .no::after{content:"";display:inline-block;width:28px;height:1px;background:currentColor;vertical-align:middle;margin-left:14px;opacity:.6}
.center-head .secno{justify-content:center}
/* hero */
.hero h1{font-size:82px;line-height:1.0;letter-spacing:-.022em}
.hero h1 em{color:var(--coral-dark)}
.hero-photos{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:28px;align-items:end;max-width:1040px;margin:58px auto -150px;padding:0 40px}
.arch{position:relative;padding:9px;border:1px solid rgba(75,59,46,.35);border-radius:999px 999px 10px 10px;background:var(--shell)}
.arch img{width:100%;height:100%;object-fit:cover;border-radius:999px 999px 4px 4px;filter:saturate(.78) sepia(.16) contrast(.96) brightness(1.02)}
.hero-photos .arch:nth-child(1),.hero-photos .arch:nth-child(3){height:340px}
.hero-photos .arch:nth-child(2){height:440px}
.cap{position:absolute;left:0;right:0;bottom:-30px;text-align:center;font-family:var(--serif);font-style:italic;font-size:15px;color:#e9efe5}
.seal{position:absolute;width:132px;height:132px;right:calc(33% - 70px);top:-34px;transform:rotate(-10deg);z-index:3;filter:drop-shadow(0 6px 14px rgba(75,59,46,.18))}
.hero{overflow:visible;padding-top:56px}
.hero h1{font-size:76px;max-width:1120px}
.adv h2{font-size:50px}
/* events band */
#events{background-color:var(--marsh);background-image:var(--grain),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='70' fill='none' stroke='%23ffffff' stroke-opacity='.10' stroke-width='1.3' stroke-linecap='round'%3E%3Cpath d='M10 70c0-20-4-36-12-50M18 70c0-24 3-40 10-56M26 70c0-14-2-26-8-34M60 70c0-18 3-30 10-42M68 70c0-12 0-22-4-30M110 70c0-22-3-38-10-52M118 70c0-26 4-42 12-58M126 70c0-12-1-20-5-26M160 70c0-16 3-28 9-38M168 70c0-10 0-18-3-24'/%3E%3C/svg%3E");background-repeat:repeat,repeat-x;background-position:0 0,0 100%;color:#eef2ea;padding-top:250px}
#events h2{color:#fff}#events h2 em{color:#f6b9a5}
#events .eyebrow{color:#cfe0c9}#events .secno .no{color:#f6b9a5}
#events .more{color:#fff}
#events .events{border-top:1px solid rgba(255,255,255,.55)}
#events .event{border-right-color:rgba(255,255,255,.18)}
#events .date{color:#f6b9a5;font-style:italic;font-weight:500;font-size:68px}
#events .date span{color:#cfe0c9;font-style:normal}
#events .event h3{color:#fff;font-size:26px}
#events .event p{color:#d4dfcf}
#events .event .meta{color:#fbe2d8}
/* divider */
.hd{display:flex;align-items:center;gap:18px;color:var(--marsh);max-width:620px;margin:0 auto}
.hd svg.line{flex:1;height:14px}
.hd svg.shell{width:46px;height:40px;flex:none;color:var(--coral-dark)}
/* recipe */
.recipe{background-color:var(--marsh-soft);background-image:var(--grain)}
.recipe .arch{height:540px;max-width:440px;margin:0 auto;background:#f4f6f1}
.recipe .facts{border-color:#c5d1c0}
.dropcap::first-letter{float:left;font-family:var(--serif);font-weight:600;font-size:84px;line-height:.78;color:var(--coral-dark);padding:8px 12px 0 0}
.recipe p.lede{color:var(--mud);max-width:none}
.recipe blockquote{font-size:26px;border-left:2px solid var(--coral);padding-left:22px}
.photo-tag{position:absolute;left:50%;bottom:-16px;transform:translateX(-50%) rotate(-3deg);background:var(--coral);color:#fff;font-family:var(--serif);font-style:italic;font-size:18px;padding:6px 18px;border-radius:3px;white-space:nowrap;box-shadow:0 4px 10px rgba(75,59,46,.15)}
/* questions */
.portrait .parch{position:relative;width:260px;height:340px;margin:24px auto 0}
.portrait .parch .arch{height:100%}
.portrait .inset{position:absolute;right:-26px;bottom:-18px;width:108px;height:108px;border-radius:50%;border:6px solid var(--oyster);overflow:hidden;box-shadow:0 4px 12px rgba(75,59,46,.15)}
.portrait .inset img{width:100%;height:100%;object-fit:cover;filter:saturate(.78) sepia(.16)}
.pull{position:relative;font-size:50px;line-height:1.08;font-style:italic;font-weight:500;color:var(--mud);padding-top:56px}
.pull::before{content:"\201C";position:absolute;top:-18px;left:-6px;font-family:var(--serif);font-size:150px;line-height:1;color:var(--coral);font-style:normal}
.pull-by{display:block;margin-top:18px;font-family:var(--sans);font-style:normal;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--marsh)}
.qa .n{font-style:italic;font-size:36px}
/* birthdays: peach band */
.bday{background-color:var(--peach);background-image:var(--grain);color:var(--mud);position:relative}
.bday h2{color:var(--mud)}.bday h2 em{color:var(--coral-dark)}
.bday .eyebrow{color:var(--coral-dark)}
.sponsor{color:var(--mud-soft)}.sponsor b{color:var(--mud)}
.names{color:var(--mud)}
.names li span{color:var(--coral-dark)}
.cookie{border:1px dashed var(--coral);color:var(--mud);background:rgba(255,253,249,.55)}
.cookie svg{color:var(--coral-dark)}
.bday-form{background:var(--shell);box-shadow:0 18px 40px -22px rgba(75,59,46,.35);border-top:6px solid var(--coral)}
.scallop{display:block;width:100%;height:18px;color:var(--peach)}
/* feature cards: tinted + illustrated */
.fcard,.feature{border:0;border-radius:14px;box-shadow:0 1px 0 rgba(75,59,46,.06)}
.fcard .tag,.feature .tag{background:var(--mud);color:#f6efe4;border-radius:999px;padding:4px 12px;top:-12px;font-size:10.5px}
.t-green{background:#e4ece0}.t-peach{background:#fae5db}.t-butter{background:#f6edd3}.t-sea{background:#dde9e5}
.fcard .mark,.feature .mark{background:var(--marsh);color:#fbf6ee;box-shadow:inset 0 0 0 3px rgba(255,255,255,.18),0 0 0 4px rgba(255,255,255,.6)}
.t-peach .mark{background:var(--coral-dark)}.t-butter .mark{background:#a9812f}.t-sea .mark{background:#3f7a74}
.fcard h3{font-size:29px}
.foffer{border-top:1px dashed rgba(75,59,46,.25)}
.foffer code,.feature .offer code{background:var(--shell)}
.feature .offer{border-left:1px dashed rgba(75,59,46,.25)}
.fcard::after,.feature::after{content:"";position:absolute;right:16px;top:16px;width:46px;height:46px;opacity:.16;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%234b3b2e' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M32 60C31 48 31.5 36 32 26M32 26C26 18 17 16 8 19M32 26C27 15 21 9 13 8M32 26C31 15 32 9 34 4M32 26C37 15 44 10 52 9M32 26C38 18 47 16 56 20M32 26C24 23 16 26 10 31M32 26C40 23 48 26 54 32'/%3E%3C/svg%3E")}
/* maker + now open */
.maker-card .arch{height:420px;margin-top:22px}
.maker-card h3{font-size:40px}
.open-list h4::before{content:"";display:inline-block;width:13px;height:19px;border-radius:7px 7px 1px 1px;margin-right:12px;vertical-align:-1px;background:var(--rr1)}
.open-list li:nth-child(2) h4::before{background:var(--rr2)}.open-list li:nth-child(3) h4::before{background:var(--rr3)}.open-list li:nth-child(4) h4::before{background:var(--rr4)}
/* directory: sandy band */
.directory{background-color:var(--sand);background-image:var(--grain);border:0}
.directory .mini{background:var(--shell);border:0;border-radius:10px;box-shadow:0 1px 0 rgba(75,59,46,.08)}
.directory .mini .ic{border:0;color:var(--mud);font-style:italic}
.dir-grid .mini:nth-child(6n+1) .ic{background:var(--rr1)}.dir-grid .mini:nth-child(6n+2) .ic{background:var(--rr2)}.dir-grid .mini:nth-child(6n+3) .ic{background:var(--rr3)}.dir-grid .mini:nth-child(6n+4) .ic{background:var(--rr4)}.dir-grid .mini:nth-child(6n+5) .ic{background:var(--rr5)}.dir-grid .mini:nth-child(6n) .ic{background:var(--rr6)}
.dir-h{font-style:italic;font-weight:500;font-size:28px}
.dir-h::after{background:#d4c7b2}
.mini .cat{color:var(--coral-dark)}
/* advertise */
.adv-box{position:relative;background:var(--shell);border:1px solid var(--mud);box-shadow:10px 10px 0 var(--marsh-soft)}
.price b{font-style:italic;font-weight:500;font-size:64px;color:var(--coral-dark)}
.adv .seal{right:-30px;top:-46px;width:118px;height:118px}
/* footer */
footer{background-color:#3f3127;background-image:var(--grain);padding-top:96px}
footer .grass{display:none}
footer .rainbow{position:absolute;top:0;left:0;right:0}
.foot-palm{position:absolute;right:4%;bottom:96px;width:260px;height:260px;color:#fff;opacity:.05}
footer .wordmark{font-size:36px}
@media (max-width:820px){
  h2{font-size:40px}
  .hero h1{font-size:50px}
  .hero-photos{grid-template-columns:1fr 1.3fr 1fr;gap:10px;padding:0 16px;margin:44px auto -80px}
  .hero-photos .arch{padding:5px}
  .hero-photos .arch:nth-child(1),.hero-photos .arch:nth-child(3){height:170px}
  .hero-photos .arch:nth-child(2){height:230px}
  .seal{width:84px;height:84px;top:-30px;right:12px}
  #events{padding-top:150px}
  #events .date{font-size:52px}
  .recipe .arch{height:400px;max-width:300px}
  .pull{font-size:36px;padding-top:44px}
  .pull::before{font-size:110px;top:-14px}
  .portrait .parch{width:220px;height:290px}
  .portrait .inset{width:88px;height:88px;right:-18px}
  .maker-card .arch{height:340px}
  .fcard::after,.feature::after{width:34px;height:34px}
  .adv .seal{right:2px;top:-50px;width:90px;height:90px}
  .adv-box{box-shadow:6px 6px 0 var(--marsh-soft)}
  .price b{font-size:52px}
  .hd{max-width:none}
  .dropcap::first-letter{font-size:70px}
  .secno .no::after{display:none}
  .secno{gap:10px}
  .adv h2{font-size:38px}
  .foot-palm{width:150px;height:150px;bottom:120px}
}

/* ===== Live site additions (Nov 4, 2026). Everything above is the approved v3 mockup CSS, unchanged. ===== */
.skip{position:absolute;left:-9999px;top:8px;background:var(--mud);color:#fff;padding:8px 14px;border-radius:6px;z-index:10}
.skip:focus{left:12px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--coral-dark);outline-offset:3px}
nav{gap:26px}
nav a[aria-current="page"]{color:var(--marsh);box-shadow:0 1px 0 currentColor}
.sample{display:inline-block;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mud);background:var(--butter);border:1px dashed rgba(75,59,46,.35);border-radius:999px;padding:2px 9px;margin-left:12px;vertical-align:2px;font-style:normal}
#events .sample{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.4)}
.peek{display:flex;align-items:center;justify-content:center;gap:12px;text-align:center;margin:0 auto 56px;max-width:720px;padding:12px 20px;border:1px dashed rgba(255,255,255,.45);border-radius:999px;font-size:14px;color:#eef2ea}
.peek svg{flex:none;width:30px;height:18px;color:#f6b9a5}
.ad-note{text-align:center;font-size:13.5px;color:var(--mud-soft);margin-top:26px}
.ad-note a{font-weight:600;border-bottom:1px solid currentColor}
.fcard .tag b,.feature .tag b{color:#f6b9a5;font-weight:600}
.form-msg{font-size:14px;color:var(--marsh);margin-top:12px;min-height:1px}
.form-msg:empty{display:none}
.bday .form-msg{text-align:center}
footer .legal{font-size:12.5px;color:#b5a895;margin-top:18px;max-width:none}
footer .legal a{color:#e9e1d4;border-bottom:1px solid rgba(255,255,255,.3)}
.foot-bottom a{color:#e9e1d4}

/* sub page hero */
.page-hero{text-align:center;padding:84px 0 40px}
.page-hero h1{font-size:72px;font-weight:600;letter-spacing:-.02em;line-height:1.02;max-width:960px;margin:16px auto 0}
.page-hero h1 em{font-style:italic;font-weight:500;color:var(--coral-dark)}
.page-hero p.sub{font-size:19px;color:var(--mud-soft);max-width:640px;margin:22px auto 0}
.page-hero .eyebrow.secno{justify-content:center}
.hero-cta{display:flex;gap:14px;justify-content:center;margin-top:34px;flex-wrap:wrap}
.btn-ghost{font:inherit;font-weight:600;font-size:16px;color:var(--mud);border:1px solid var(--mud);border-radius:6px;padding:15px 26px;background:transparent}
a.btn{display:inline-block}

/* honest status box */
.status{max-width:820px;margin:0 auto;display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:center;background:var(--shell);border-radius:14px;padding:30px 36px;box-shadow:0 18px 40px -26px rgba(75,59,46,.35);border-left:6px solid var(--marsh)}
.status svg{width:64px;height:64px;color:var(--marsh)}
.status h3{font-size:28px}
.status p{font-size:15.5px;color:var(--mud-soft);margin-top:6px}

/* rate card */
.rates{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.rate{position:relative;background:var(--shell);border-radius:14px;padding:44px 34px 34px;box-shadow:0 1px 0 rgba(75,59,46,.06);display:flex;flex-direction:column}
.rate .tag{position:absolute;top:-12px;left:30px;background:var(--mud);color:#f6efe4;border-radius:999px;padding:4px 12px;font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap}
.rate b.p{font-family:var(--serif);font-style:italic;font-weight:500;font-size:72px;line-height:1;color:var(--coral-dark)}
.rate b.p small{font-family:var(--sans);font-style:normal;font-size:13px;font-weight:500;color:var(--mud-soft);letter-spacing:.04em;margin-left:6px}
.rate h3{font-size:32px;margin-top:14px}
.rate p{font-size:15px;color:var(--mud-soft);margin-top:10px}
.rate ul{list-style:none;margin-top:18px;padding-top:16px;border-top:1px dashed rgba(75,59,46,.25);flex:1}
.rate li{font-size:14.5px;padding:6px 0 6px 26px;position:relative;line-height:1.5}
.rate li::before{content:"";position:absolute;left:2px;top:12px;width:12px;height:7px;border-left:2px solid var(--marsh);border-bottom:2px solid var(--marsh);transform:rotate(-45deg)}
.rate .count{margin-top:20px;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--marsh)}
.rate-foot{text-align:center;margin-top:40px;font-size:15px;color:var(--mud-soft)}

/* samples row */
.samples{display:grid;grid-template-columns:1.25fr 1fr;gap:40px;align-items:start;max-width:1040px;margin:0 auto}
.samples .label{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--mud-soft);margin-bottom:22px}
.samples .mini{background:var(--shell);border:0;border-radius:10px;box-shadow:0 1px 0 rgba(75,59,46,.08)}
.samples .mini .ic{border:0;background:var(--rr3);color:var(--mud);font-style:italic}
.samples .mini .cat{color:var(--coral-dark)}
.sponsor-sample{margin-top:34px;background:var(--peach);border-radius:10px;padding:24px 26px}
.sponsor-sample h4{font-family:var(--serif);font-size:24px;font-weight:600}
.sponsor-sample p{font-size:14.5px;color:var(--mud-soft);margin-top:4px}

/* inventory */
.inv{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.inv h3{font-size:30px}
.inv p.small{font-size:15px;color:var(--mud-soft);margin-top:8px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;list-style:none}
.chips li{font-size:13.5px;font-weight:500;background:var(--shell);border-radius:999px;padding:7px 14px 7px 12px;display:flex;align-items:center;gap:8px;box-shadow:0 1px 0 rgba(75,59,46,.08)}
.chips li i{width:9px;height:13px;border-radius:5px 5px 1px 1px;background:var(--rr1);flex:none}
.chips li:nth-child(6n+2) i{background:var(--rr2)}.chips li:nth-child(6n+3) i{background:var(--rr3)}.chips li:nth-child(6n+4) i{background:var(--rr4)}.chips li:nth-child(6n+5) i{background:var(--rr5)}.chips li:nth-child(6n) i{background:var(--rr6)}
.slots{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;max-width:420px}
.slots span{display:flex;justify-content:space-between;align-items:center;background:var(--shell);border:1px dashed rgba(75,59,46,.3);border-radius:8px;padding:8px 12px;font-size:12.5px;color:var(--mud-soft)}
.slots span b{font-family:var(--serif);font-style:italic;font-weight:500;font-size:17px;color:var(--mud)}
.slots span em{font-style:normal;font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--marsh)}

/* gets lists */
.gets{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.gets ol{list-style:none;margin-top:26px;border-top:1px solid var(--mud)}
.gets li{display:grid;grid-template-columns:48px 1fr;gap:10px;padding:20px 0;border-bottom:1px solid var(--rule)}
.gets li .n{font-family:var(--serif);font-style:italic;font-size:30px;color:var(--coral);line-height:1;font-weight:600}
.gets li h4{font-family:var(--serif);font-size:23px;font-weight:600;line-height:1.25}
.gets li p{font-size:15px;color:var(--mud-soft);margin-top:4px}

/* book */
.book-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start}
.steps{list-style:none;margin-top:30px}
.steps li{display:grid;grid-template-columns:52px 1fr;gap:14px;padding:16px 0}
.steps .n{width:44px;height:44px;border-radius:50%;background:var(--marsh);color:#fbf6ee;display:grid;place-items:center;font-family:var(--serif);font-style:italic;font-size:22px}
.steps h4{font-family:var(--serif);font-size:24px;font-weight:600;line-height:1.2}
.steps p{font-size:15px;color:var(--mud-soft);margin-top:4px}
.book-form textarea{width:100%;font:inherit;font-size:15.5px;padding:13px 16px;border:1px solid #cfc5b4;background:var(--shell);border-radius:6px;color:var(--mud);min-height:110px;resize:vertical}
.book-form .row{grid-template-columns:1fr 1fr}

/* faq */
.faq{max-width:820px;margin:0 auto;border-top:1px solid var(--mud)}
.faq details{border-bottom:1px solid var(--rule);padding:22px 0}
.faq summary{cursor:pointer;list-style:none;font-family:var(--serif);font-size:25px;font-weight:600;display:flex;justify-content:space-between;gap:20px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--sans);font-weight:400;font-size:26px;color:var(--coral-dark);flex:none}
.faq details[open] summary::after{content:"\2212"}
.faq details p{margin-top:10px;color:var(--mud-soft);font-size:16px;max-width:680px}

/* prose pages */
.prose{max-width:700px;margin:0 auto}
.prose h2{font-size:42px;margin-top:56px}
.prose h2:first-child{margin-top:0}
.prose p{margin-top:18px;font-size:18px;color:var(--mud)}
.prose ul{margin:18px 0 0 22px}
.prose li{margin-top:8px;font-size:17px}
.prose a{border-bottom:1px solid currentColor}
.prose .sig{font-family:var(--serif);font-style:italic;font-size:30px;color:var(--marsh);margin-top:28px}
.about-photo{max-width:380px;height:460px;margin:0 auto}
.about-grid{display:grid;grid-template-columns:380px 1fr;gap:80px;align-items:start}

@media (max-width:820px){
  .page-hero{padding:60px 0 24px}
  .page-hero h1{font-size:46px}
  .page-hero p.sub{font-size:17px}
  .peek{border-radius:14px;font-size:13px;margin-bottom:40px}
  .status{grid-template-columns:1fr;padding:26px 22px;gap:14px}
  .status svg{width:48px;height:48px}
  .rates,.samples,.inv,.gets,.book-grid,.about-grid{grid-template-columns:1fr;gap:44px}
  .rate{padding:40px 24px 28px}
  .rate b.p{font-size:60px}
  .slots{max-width:none}
  .faq summary{font-size:21px}
  .prose h2{font-size:34px}
  .prose p{font-size:17px}
  .about-photo{max-width:280px;height:340px}
  .sample{margin-left:8px}
  nav a.keep{display:inline;font-size:13px}
  nav{gap:14px}
}
@media (max-width:420px){
  .wordmark{font-size:18px}
  .wordmark small{display:none}
  nav a.keep{display:none}
}
@media (max-width:820px){ .fcard .tag .ff,.feature .tag .ff{display:none} .fcard .tag,.feature .tag{max-width:calc(100% - 40px);overflow:hidden;text-overflow:ellipsis} }

/* Presented by (title sponsor) band */
.presented{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:26px;max-width:1040px;margin:0 auto 64px;background:var(--shell);color:var(--mud);border-radius:14px;padding:22px 30px;box-shadow:0 18px 40px -26px rgba(0,0,0,.45);border-top:4px solid var(--coral)}
.pb-label{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--coral-dark);white-space:nowrap;padding-right:26px;border-right:1px solid var(--rule)}
.pb-logo{width:62px;height:62px;border-radius:50%;border:1.5px dashed var(--mud-soft);display:flex;align-items:center;justify-content:center;text-align:center;font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mud-soft);line-height:1.3}
.pb-body h3{font-size:26px;line-height:1.15;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pb-body p{font-size:14.5px;color:var(--mud-soft);margin-top:4px}
.pb-sample{font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--rule);border-radius:999px;padding:3px 9px;color:var(--mud-soft)}
.pb-link{font-size:13.5px;font-weight:600;color:var(--coral-dark);border-bottom:1.5px solid currentColor;padding-bottom:2px;white-space:nowrap}
.pb-sample-wrap{max-width:1040px;margin:0 auto 56px}
.pb-sample-wrap .presented{margin:0;grid-template-columns:auto auto 1fr;box-shadow:0 1px 0 rgba(75,59,46,.06),0 18px 40px -30px rgba(75,59,46,.4)}
.rate-top{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;margin:0 0 40px;border:1.5px solid var(--coral);padding:48px 44px 40px}
.rate-top ul{margin-top:0;padding-top:0;border-top:0;padding-left:34px;border-left:1px dashed rgba(75,59,46,.25)}
.rate-top .tag{background:var(--coral-dark)}
.prices.p4{grid-template-columns:repeat(2,1fr);row-gap:30px}
.prices.p4 .price:nth-child(odd){border-left:0}
.prices.p4 .price:nth-child(even){border-left:1px solid var(--rule)}
.prices.p4 .price:nth-child(n+3){border-top:1px solid var(--rule);padding-top:26px}
.prices.p4 .price b{font-size:56px}
@media (max-width:820px){
  .presented{grid-template-columns:auto 1fr;gap:14px 18px;padding:20px 20px 22px;margin-bottom:48px}
  .pb-label{grid-column:1/-1;border-right:0;padding:0 0 10px;border-bottom:1px solid var(--rule);font-size:20px}
  .pb-sample-wrap .presented{grid-template-columns:auto 1fr}
  .pb-logo{width:54px;height:54px}
  .pb-body h3{font-size:22px}
  .pb-link{grid-column:1/-1;justify-self:start}
  .rate-top{grid-template-columns:1fr;gap:22px;padding:44px 26px 30px}
  .rate-top ul{padding-left:0;border-left:0;padding-top:16px;border-top:1px dashed rgba(75,59,46,.25)}
  .prices.p4{grid-template-columns:1fr}
  .prices.p4 .price,.prices.p4 .price:nth-child(n){padding:22px 0 0;border-left:0;border-top:1px solid var(--rule)}
}
