  :root{
    --forest:#173a2c;--forest-deep:#102a20;--ivory:#f4efe3;--ivory-soft:#faf6ec;
    --gold:#b8924a;--gold-soft:#cbb079;--ink:#17251e;--ink-soft:#41504a;
    --line:#d9cfb8;--line-on-dark:rgba(203,176,121,.28);
    box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);
  }
  *,*::before,*::after{box-sizing:inherit;margin:0;padding:0}
  html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px}
  body{font-family:'DM Sans',system-ui,sans-serif;font-weight:300;color:var(--ink);background:var(--ivory);line-height:1.6;-webkit-font-smoothing:antialiased}
  h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;font-weight:500;line-height:1.1;letter-spacing:.005em}
  p{max-width:62ch}
  .wrap{max-width:1060px;margin:0 auto;padding:0 26px}
  a{color:inherit}

  /* nav */
  nav{position:sticky;top:0;z-index:20;background:rgba(23,58,44,.96);backdrop-filter:blur(6px);color:var(--ivory);border-bottom:1px solid var(--line-on-dark)}
  .navin{max-width:1060px;margin:0 auto;padding:14px 26px;display:flex;align-items:center;justify-content:space-between}
  .brand{font-family:'Fraunces',serif;font-size:24px;font-weight:600;letter-spacing:.02em;color:var(--ivory);text-decoration:none}
  .brand span{color:var(--gold-soft)}
  .navlinks{display:flex;gap:22px;font-size:14.5px}
  .navlinks a{color:#cfd8cf;text-decoration:none;transition:color .15s}
  .navlinks a:hover,.navlinks a.active{color:var(--gold-soft)}


  section{padding:70px 0}
  .eyebrow{font-family:'Fraunces',serif;font-style:italic;font-size:22px;color:var(--gold);margin-bottom:12px}
  h2{font-size:clamp(25px,4.2vw,36px);margin-bottom:12px;max-width:18ch}
  .section-note{color:var(--ink-soft);max-width:60ch;font-size:16.5px}
  .pill{display:inline-block;font-size:12.5px;letter-spacing:.04em;border:1px solid var(--line-on-dark);border-radius:999px;padding:7px 15px;background:rgba(255,255,255,.03)}
  .pill .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold-soft);margin-right:8px;vertical-align:middle}
  .cta{display:inline-block;font-family:'DM Sans',sans-serif;font-size:16px;letter-spacing:.02em;background:var(--gold);color:#20140a;padding:15px 32px;border-radius:2px;text-decoration:none;border:none;cursor:pointer;transition:background .2s}
  .cta:hover{background:var(--gold-soft)}
  .cta:focus-visible{outline:2px solid var(--ivory);outline-offset:3px}
  .hero-jump{display:inline-flex;align-items:center;gap:6px;margin-top:22px;font-size:14.5px;letter-spacing:.02em;color:var(--gold-soft);text-decoration:none;border-bottom:1px solid var(--line-on-dark);padding-bottom:2px;transition:border-color .15s,color .15s}
  .hero-note{margin-top:14px;max-width:56ch;font-size:15px;line-height:1.5;color:var(--gold-soft)}
  .hero-note + .hero-jump{margin-top:16px}
  .hero-jump:hover{color:var(--ivory);border-color:var(--gold-soft)}

  /* HOME */
  .home-hero{background:radial-gradient(120% 90% at 82% 6%, #1f4a38 0%, var(--forest) 46%, var(--forest-deep) 100%);color:var(--ivory);padding:74px 0 80px}
  .home-hero .pill{color:var(--ivory);margin-bottom:26px}
  .home-hero h1{font-size:clamp(36px,7.2vw,64px);color:var(--ivory);max-width:15ch;margin-bottom:22px}
  .home-hero h1 em{font-style:italic;color:var(--gold-soft)}
  .home-hero .lede{font-size:clamp(17px,2.4vw,20px);color:#dfe6df;max-width:52ch}
  .home-hero--bg{position:relative;overflow:hidden}
  .home-hero--bg .hero-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.46;filter:saturate(1.1) brightness(1.02);-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,.07) 0%,rgba(0,0,0,.26) 55%,#000 94%);mask-image:linear-gradient(90deg,rgba(0,0,0,.07) 0%,rgba(0,0,0,.26) 55%,#000 94%)}
  .home-hero--bg .wrap{position:relative;z-index:2}
  .home-hero--bg .door{box-shadow:0 12px 32px rgba(8,20,15,.3)}
  .doors{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}
  .door{display:block;background:var(--ivory-soft);border:1px solid rgba(203,176,121,.6);padding:30px 30px 26px;text-decoration:none;color:var(--ink);transition:border-color .2s,transform .2s}
  .door:hover{border-color:var(--gold);transform:translateY(-2px)}
  .door .k{font-size:13px;letter-spacing:.05em;color:#8a6a2e;margin-bottom:10px}
  .door h3{font-size:28px;color:var(--forest);margin-bottom:10px}
  .door p{font-size:15.5px;color:var(--ink-soft);max-width:none}
  .door .go{margin-top:20px;display:inline-flex;align-items:center;gap:9px;font-size:17px;font-weight:500;letter-spacing:.01em;color:var(--forest);transition:color .2s}
  .door .go svg{width:20px;height:20px;flex:none;transition:transform .2s}
  .door:hover .go{color:#8a6a2e}
  .door:hover .go svg{transform:translateX(5px)}
  .door:focus-visible{outline:2px solid var(--gold-soft);outline-offset:3px}
  .door h3:has(.soon){display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px}
  .door .soon,.guide-card .soon{font-family:'DM Sans',system-ui,sans-serif;font-size:13.5px;font-weight:400;letter-spacing:.03em;line-height:1.2;color:#20140a;background:var(--gold-soft);border-radius:999px;padding:5px 12px;display:inline-block;margin-left:8px;vertical-align:middle}
  .door h3:has(.soon) .soon{margin-left:0}

  /* PROVIDERS */
  .p-hero{background:radial-gradient(120% 90% at 82% 8%, #1f4a38 0%, var(--forest) 46%, var(--forest-deep) 100%);color:var(--ivory);padding:64px 0 60px}
  .p-hero .pill{color:var(--ivory);margin-bottom:22px}
  .p-hero h1{font-size:clamp(30px,5vw,48px);color:var(--ivory);max-width:18ch;margin-bottom:18px}
  .p-hero h1 em{font-style:italic;color:var(--gold-soft)}
  .p-hero .lede{font-size:clamp(16px,2.2vw,19px);color:#dfe6df;max-width:56ch}
  .p-hero .lede strong{color:var(--ivory);font-weight:400}
  .cols{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:8px}
  .col h3{font-size:25px;margin-bottom:6px}
  .col .h-note{font-family:'Fraunces',serif;font-style:italic;font-size:17px;color:var(--gold);margin-bottom:16px}
  .col ul{list-style:none}
  .col li{font-size:15px;color:var(--ink);padding:9px 0 9px 24px;position:relative;border-top:1px solid var(--line);line-height:1.5}
  .col li:first-child{border-top:none}
  .col li::before{content:"";position:absolute;left:0;top:16px;width:8px;height:8px;border-radius:50%;background:var(--gold)}
  .col.next li::before{background:none;border:1px solid var(--gold)}
  .col li b{font-weight:500}.col li span{color:var(--ink-soft)}
  .beta-strip{background:var(--forest);color:var(--ivory)}
  .beta-strip h3{font-size:24px;color:var(--ivory);margin-bottom:8px}
  .beta-strip h3 em{font-style:italic;color:var(--gold-soft)}
  .beta-strip p{color:#d3ddd3;font-size:15px}
  .rowlist{display:grid;gap:12px;margin-top:18px}
  .rowlist div{font-size:14.5px;color:#e7ede7;position:relative;padding-left:18px}
  .rowlist div::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--gold-soft)}
  /* guides carousel (providers page) */
  .gcar-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
  .gcar-head h2{margin-bottom:6px}
  .gcar-all{font-size:15px;color:var(--forest);text-decoration:none;border-bottom:1px solid var(--gold);white-space:nowrap}
  .gcar-nav{display:flex;gap:8px}
  .gcar-nav[hidden]{display:none}
  .gcar-btn{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--ivory-soft);color:var(--forest);font-size:18px;line-height:1;cursor:pointer;transition:border-color .15s,opacity .15s}
  .gcar-btn:hover{border-color:var(--gold)}
  .gcar-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .gcar-btn:disabled{opacity:.35;cursor:default;border-color:var(--line)}
  .gcar-track{list-style:none;display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:6px 2px 16px;margin-top:22px;scrollbar-width:none}
  .gcar-track::-webkit-scrollbar{display:none}
  .gcar-track > li{flex:0 0 min(340px,82%);scroll-snap-align:start;display:flex}
  .gcar-track .guide-card{display:flex;flex-direction:column;width:100%}
  .gcar-track .guide-card h3{font-size:clamp(21px,2.6vw,24px)}
  .gcar-track .guide-card p{font-size:15px}
  .gcar-track .guide-card .go{margin-top:auto;padding-top:14px;align-self:flex-start;border-bottom:none}
  .gcar-hint{display:none;font-size:13.5px;color:var(--ink-soft);margin-top:4px}
  @media (max-width:720px){.gcar-nav{display:none}.gcar-hint{display:block}}
  /* forms */
  .formwrap{background:var(--forest-deep);color:var(--ivory)}
  form{margin-top:34px;max-width:600px;display:grid;gap:20px}
  .field{display:grid;gap:8px}
  form label{font-size:14.5px;letter-spacing:.03em;color:var(--gold-soft)}
  form label .opt{color:#8fa197;font-style:italic;letter-spacing:0}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  input,textarea{font-family:'DM Sans',sans-serif;font-size:16px;font-weight:300;color:var(--ivory);background:rgba(255,255,255,.04);border:1px solid var(--line-on-dark);border-radius:2px;padding:14px 15px;width:100%}
  textarea{resize:vertical;min-height:76px}
  input:focus,textarea:focus{outline:none;border-color:var(--gold-soft);background:rgba(255,255,255,.07)}
  .submit{font-family:'DM Sans',sans-serif;font-size:16px;letter-spacing:.02em;background:var(--gold);color:#20140a;border:none;border-radius:2px;padding:16px 20px;cursor:pointer;transition:background .2s}
  .submit:hover{background:var(--gold-soft)}
  .reassure{font-size:14px;color:#a9b6ac;margin-top:-4px}
  .confirm{display:none;border:1px solid var(--line-on-dark);border-left:3px solid var(--gold);background:rgba(184,146,74,.08);padding:24px 26px;max-width:600px;margin-top:8px}
  .confirm.show{display:block}
  .confirm h3{font-size:24px;color:var(--ivory);margin-bottom:6px}
  .confirm p{color:#c9d2c9;font-size:15px}
  .form-error{font-size:15px;color:#f0b8a8;border-left:3px solid #d98b76;padding:2px 0 2px 12px}
  .submit:disabled,.cta:disabled{opacity:.6;cursor:wait}
  /* honeypot: off-screen, out of layout, invisible to people and assistive tech */
  .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
  /* the not-found page (404.html, which Netlify serves for any address that does not exist) */
  .nf-hero{padding:88px 0 120px;min-height:66vh}
  .nf-hero h1{max-width:none}
  .nf-hero .hero-note[hidden]{display:none}
  /* For professionals as a product page: a hero with an example page, benefit tiles, a comparison, steps, what's coming */
  .pp-hero .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center}
  .pp-hero{overflow-x:clip}
  .pp-hero .lede{max-width:46ch}
  .pp-hero ~ section h2{max-width:28ch}
  .pp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:24px}
  .pp-actions .hero-jump{margin-top:0}
  .pp-free{margin-top:18px;font-family:'Fraunces',serif;font-style:italic;font-size:22px;line-height:1.1;color:var(--gold-soft)}
  /* previews of the product, framed and shadowed like a screenshot laid over the page */
  .pp-shot{width:100%;max-width:400px}
  .pp-shot figcaption{margin-top:18px;font-size:13.5px;text-align:center}
  .pp-shot-hero{justify-self:end;align-self:end;max-width:460px;margin-bottom:-170px;position:relative;z-index:2}
  .pp-shot-hero .pp-snip{zoom:1.12;box-shadow:0 0 0 1px rgba(203,176,121,.85),0 0 90px rgba(226,205,160,.3),0 40px 80px rgba(0,0,0,.7),0 14px 28px rgba(0,0,0,.5)}
  .pp-shot-hero::before{content:"";position:absolute;inset:-16% -5% -10% -22%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,rgba(244,239,227,.3),rgba(244,239,227,.1) 62%,rgba(244,239,227,0))}
  .pp-shot-hero figcaption{color:var(--ink-soft)}
  .pp-shot-page{justify-self:end}
  .pp-shot-page figcaption{color:var(--ink-soft)}
  .pp-snip{--tilt:0deg;overflow:hidden;border-radius:10px;background:var(--ivory-soft);color:var(--ink);box-shadow:0 2px 0 rgba(255,255,255,.5) inset,0 26px 60px rgba(8,20,15,.45),0 4px 12px rgba(8,20,15,.25);transform:rotate(var(--tilt))}
  .pp-shot-page .pp-snip{box-shadow:0 26px 60px rgba(23,37,30,.22),0 4px 12px rgba(23,37,30,.12);border:1px solid var(--line)}
  .pp-snip-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#e9e2d0;border-bottom:1px solid var(--line)}
  .pp-snip-bar i{width:9px;height:9px;border-radius:50%;background:#cdbf9f}
  .pp-snip-bar span{margin-left:8px;font-size:12.5px;letter-spacing:.02em;color:var(--ink-soft)}
  .pp-snip-bar .pp-switch{display:inline-flex;align-items:center;gap:6px;margin-left:auto;font-size:12px;color:var(--forest)}
  .pp-snip-bar .pp-switch i{position:relative;width:26px;height:14px;border-radius:999px;background:var(--forest)}
  .pp-snip-bar .pp-switch i::after{content:"";position:absolute;top:2px;right:2px;width:10px;height:10px;border-radius:50%;background:var(--ivory)}
  .pp-snip-bar .pp-word{display:inline-grid;margin-left:0}
  /* The one switch in the bar follows the day showing (data-at on the card). On a day with nothing to fill it is
     greyed: still on as a setting, with no work to do. */
  .pp-day[data-at="1"] .pp-switch{color:var(--ink-soft);opacity:.8}
  .pp-day[data-at="1"] .pp-switch i{background:#b3aa93}
  .pp-day[data-at="1"] .pp-word .pp-on{opacity:0}
  .pp-day[data-at="1"] .pp-word .pp-idle{opacity:1}
  .pp-word b{grid-area:1 / 1;font-weight:400;opacity:0}
  .pp-word .pp-on{opacity:1}
  .pp-word .pp-off{color:var(--ink-soft)}
  .pp-slots{list-style:none;padding:6px 18px 0}
  .pp-slots li{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}
  .pp-slots time{font-size:13px;color:var(--ink-soft);font-variant-numeric:tabular-nums}
  .pp-slot b{display:block;font-weight:400;font-size:15.5px;color:var(--ink)}
  .pp-slot span{font-size:13px;color:var(--ink-soft)}
  .pp-slots em{font-style:normal;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}
  .pp-tag{display:grid;justify-items:end;gap:4px}
  .pp-tag small{font-size:11.5px;line-height:1.2;color:var(--ink-soft)}
  .pp-swap .pp-slot,.pp-swap .pp-tag{grid-row:1}
  .pp-swap .pp-slot{grid-column:2}
  .pp-swap .pp-tag{grid-column:3}
  .pp-open{padding:6px 10px;margin:-6px 0 -6px -10px;border:1px dashed var(--gold);border-radius:3px;background:rgba(184,146,74,.08);opacity:0}
  .pp-tag.pp-fill em{padding:3px 9px;border-radius:999px;background:var(--forest);color:var(--ivory)}
  .pp-tag.pp-promo{opacity:0}
  .pp-tag.pp-promo em{padding:3px 9px;border:1px solid var(--gold);border-radius:999px;color:#8a6a2e}
  .pp-told{margin:0;padding:13px 18px 16px;font-size:13.5px;color:#8a6a2e;max-width:none}
  .pp-soon.pp-soon-dark{margin:0 6px 0 0}
  .pp-soon.pp-soon-in{margin:0 0 0 4px;vertical-align:middle;white-space:nowrap}
  /* Thursday plays through once each time it comes round: an empty slot, the switch going on, the slot promoted, then filled. Without the script, or with less motion asked for,
     it just shows the filled day. */
  .reveal-on .pp-day:not(.is-run) .pp-thu .pp-open{opacity:1}
  .reveal-on .pp-day:not(.is-run) .pp-thu .pp-fill,.reveal-on .pp-day:not(.is-run) .pp-thu .pp-told,.reveal-on .pp-day[data-at="0"]:not(.is-run) .pp-on{opacity:0}
  .reveal-on .pp-day[data-at="0"]:not(.is-run) .pp-off{opacity:1}
  .reveal-on .pp-day[data-at="0"]:not(.is-run) .pp-switch i{background:#b3aa93}
  .reveal-on .pp-day[data-at="0"]:not(.is-run) .pp-switch i::after{transform:translateX(-12px)}
  .reveal-on .pp-day.is-run .pp-thu .pp-open{animation:ppOpen 6s both}
  .reveal-on .pp-day.is-run .pp-thu .pp-fill{animation:ppFill 6s both}
  .reveal-on .pp-day.is-run .pp-thu .pp-promo{animation:ppPromo 6s both}
  .reveal-on .pp-day.is-run .pp-thu .pp-told{animation:ppTold 6s both}
  .reveal-on .pp-day[data-at="0"].is-run .pp-switch i{animation:ppTrack 6s both}
  .reveal-on .pp-day[data-at="0"].is-run .pp-switch i::after{animation:ppKnob 6s both}
  .reveal-on .pp-day[data-at="0"].is-run .pp-on{animation:ppOn 6s both}
  .reveal-on .pp-day[data-at="0"].is-run .pp-off{animation:ppOff 6s both}
  .pp-day.is-paused *,.pp-day.is-paused *::after{animation-play-state:paused!important}
  @keyframes ppOpen{0%,48%{opacity:1}53%,100%{opacity:0}}
  @keyframes ppFill{0%,53%{opacity:0;transform:translateY(6px)}60%,100%{opacity:1;transform:none}}
  @keyframes ppTold{0%,24%{opacity:0}31%,100%{opacity:1}}
  @keyframes ppPromo{0%,24%{opacity:0}29%,48%{opacity:1}53%,100%{opacity:0}}
  /* the switch: off for the first second, then on */
  @keyframes ppTrack{0%,14%{background:#b3aa93}19%,100%{background:var(--forest)}}
  @keyframes ppKnob{0%,14%{transform:translateX(-12px)}19%,100%{transform:none}}
  @keyframes ppOn{0%,14%{opacity:0}19%,100%{opacity:1}}
  @keyframes ppOff{0%,14%{opacity:1}19%,100%{opacity:0}}
  /* two cards side by side in a strip that swipes: Thursday, then Friday */
  .pp-deck{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain}
  .pp-deck::-webkit-scrollbar{display:none}
  .pp-page{flex:0 0 100%;min-width:0;display:flex;flex-direction:column;scroll-snap-align:start}
  .pp-page .pp-slots{flex:1;display:flex;flex-direction:column}
  .pp-slots li.pp-rest{flex:1;align-items:start;margin:0 -18px;padding:14px 18px;border-bottom:none;background:repeating-linear-gradient(135deg,rgba(23,58,44,.08) 0 9px,rgba(23,58,44,0) 9px 18px)}
  /* Saturday: a new request, and the three ways to answer it */
  .pp-slots li.pp-ask{row-gap:12px;margin:0 -18px;padding:14px 18px;background:rgba(184,146,74,.12);box-shadow:inset 3px 0 0 var(--gold)}
  .pp-tag.pp-new em{padding:3px 9px;border-radius:999px;background:var(--gold);color:#20140a}
  .pp-answers{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px}
  .pp-answers span{padding:7px 12px;border:1px solid rgba(23,58,44,.35);border-radius:2px;font-size:13px;color:var(--forest);background:#fff}
  .pp-answers .pp-yes{border-color:var(--forest);background:var(--forest);color:var(--ivory)}
  /* which day is showing, and how to get to the others: tabs in the card's top bar, arrows on its edges */
  .pp-days{display:inline-flex;margin-left:6px;padding:2px;border:1px solid rgba(23,58,44,.22);border-radius:999px;background:rgba(255,255,255,.55)}
  .pp-days button{font-family:'DM Sans',sans-serif;font-size:12.5px;letter-spacing:.02em;color:var(--ink-soft);background:none;border:none;border-radius:999px;padding:4px 11px;cursor:pointer;transition:background .2s,color .2s}
  .pp-days button.on{background:var(--gold);color:#20140a}
  .pp-days button:focus-visible{outline:2px solid var(--forest);outline-offset:1px}
  .pp-arrow:focus-visible{outline:2px solid var(--ivory);outline-offset:2px}
  .pp-arrow{position:absolute;top:50%;z-index:3;display:grid;place-items:center;width:42px;height:42px;padding:0;border:none;border-radius:50%;background:var(--gold);color:#20140a;font-size:19px;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.45);transition:background .2s,transform .2s}
  .pp-arrow:hover{background:var(--gold-soft);transform:scale(1.06)}
  .pp-arrow[hidden]{display:none}
  .pp-arrow-next{right:-30px}
  .pp-arrow-prev{left:-30px}
  .pp-swipe{display:none}
  @media (hover:none){.pp-swipe{display:inline}}
  @media (max-width:880px){.pp-arrow-next{right:-26px}.pp-arrow-prev{left:-26px}}
  /* on phones there is a swipe, and no room: the arrows and the three window dots go */
  @media (max-width:480px){.pp-arrow{display:none}.pp-day .pp-snip-bar > i{display:none}.pp-days{margin-left:0}}
  .pp-pause{margin-left:8px;padding:0;border:none;background:none;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;opacity:.85}
  .pp-pause[hidden]{display:none}
  /* blocks ease in as they scroll into view */
  .reveal-on [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
  .reveal-on [data-reveal].is-in{opacity:1;transform:none}
  .reveal-on .pp-snip[data-reveal]{transform:translateY(28px) rotate(var(--tilt));transition-duration:.8s}
  .reveal-on .pp-snip[data-reveal].is-in{transform:rotate(var(--tilt))}
  .reveal-on [data-reveal]:nth-child(2){transition-delay:.08s}
  .reveal-on [data-reveal]:nth-child(3){transition-delay:.16s}
  .reveal-on [data-reveal]:nth-child(4){transition-delay:.24s}
  .reveal-on [data-reveal]:nth-child(5){transition-delay:.32s}
  .reveal-on [data-reveal]:nth-child(6){transition-delay:.4s}
  .pp-first{padding-top:96px}
  .pp-plain{background:var(--ivory)}
  .pp-card{padding:20px 22px 20px}
  .pp-card-head{display:flex;gap:14px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}
  .pp-avatar{flex:none;display:block;width:58px;height:58px;border-radius:50%;object-fit:cover;background:var(--forest);border:1px solid rgba(203,176,121,.7)}
  .pp-card-head b{display:block;font-family:'Fraunces',serif;font-size:26px;font-weight:600;line-height:1.1;color:var(--forest)}
  .pp-card-head div span{font-size:13.5px;color:var(--ink-soft)}
  .pp-card-head .pp-rating{display:block;margin:4px 0 1px;color:var(--ink)}
  .pp-rating i{margin-right:3px;font-style:normal;color:var(--gold)}
  .pp-card ul{list-style:none}
  .pp-card li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:baseline;padding:11px 0;border-bottom:1px solid var(--line);font-size:15px}
  .pp-card li span{font-size:13px;color:var(--ink-soft)}
  .pp-card li em{font-family:'Fraunces',serif;font-variant-numeric:lining-nums;font-style:normal;font-size:20px;font-weight:600;color:var(--forest)}
  .pp-card-btn{display:block;margin-top:16px;padding:11px;border-radius:2px;background:var(--gold);color:#20140a;font-size:15px;text-align:center}
  .pp-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 44px;margin-top:34px}
  .pp-tile .ti{display:block;width:34px;height:34px;margin-bottom:10px}
  .pp-tile h3{font-size:23px;margin-bottom:6px}
  .pp-tile p{font-size:15.5px;color:var(--ink-soft)}
  .pp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .pp-vs{width:100%;max-width:860px;margin-top:26px;border-collapse:collapse}
  .pp-vs th,.pp-vs td{padding:15px 18px;border-bottom:1px solid var(--line);font-size:16px;text-align:left;vertical-align:top}
  .pp-vs thead th{font-size:12.5px;font-weight:400;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft)}
  .pp-vs tbody th{width:24%;font-weight:500;color:var(--ink)}
  .pp-vs td:nth-child(2){color:var(--ink-soft)}
  .pp-vs td:nth-child(3),.pp-vs thead th:nth-child(3){background:#fff;border-left:2px solid var(--gold)}
  .pp-vs td:nth-child(3){color:var(--forest);font-weight:400}
  .pp-vs thead th:nth-child(3){color:#8a6a2e}
  /* a cross against the other apps, a tick against Natty */
  .pp-vs td{position:relative;padding-left:46px}
  .pp-vs td::before{content:"";position:absolute;left:18px;top:19px;width:16px;height:16px;background:center / contain no-repeat}
  .pp-vs td:nth-child(2)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 4l8 8M12 4l-8 8' stroke='%23c0453a' stroke-width='2.2' stroke-linecap='round' fill='none'/%3E%3C/svg%3E")}
  .pp-vs td:nth-child(3)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.6l3.4 3.4L13 4.6' stroke='%23173a2c' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E")}
  .pp-how{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:60px;align-items:center}
  .pp-steps{display:grid;gap:0;margin-top:26px;list-style:none;counter-reset:step}
  /* "or" on the line between steps 1 and 2: registering first is optional */
  .pp-or{position:absolute;top:-12px;left:50%;transform:translateX(-50%);padding:3px 13px;border-radius:999px;background:var(--gold);font-size:11.5px;line-height:1.5;letter-spacing:.09em;text-transform:uppercase;color:#20140a}
  .pp-steps li{position:relative;counter-increment:step;display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:14px;padding:18px 0;border-top:1px solid var(--line)}
  .pp-steps li:has(.pp-or){padding-top:26px}
  .pp-steps li::before{content:counter(step);grid-row:1 / span 2;font-family:'Fraunces',serif;font-variant-numeric:lining-nums;font-size:40px;font-weight:600;line-height:1;color:var(--gold)}
  .pp-steps h3{grid-column:2;font-size:23px;margin-bottom:4px}
  .pp-steps p{grid-column:2;font-size:15.5px;color:var(--ink-soft)}
  .pp-note{margin-top:24px;font-size:14.5px;color:var(--ink-soft)}
  .pp-steps h3 a{color:var(--forest);text-decoration:none;border-bottom:1px solid var(--gold);transition:color .15s}
  .pp-steps h3 a:hover{color:#8a6a2e}
  .pp-next{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
  .pp-next-card{padding:20px 22px 22px;border:1px solid var(--line);border-top:3px solid var(--gold);background:#fff}
  .pp-next-card h3{font-size:23px;margin-bottom:6px}
  .pp-next-card p{font-size:15px;color:var(--ink-soft)}
  .pp-soon{display:inline-block;margin-bottom:10px;padding:2px 10px;border:1px solid rgba(184,146,74,.6);border-radius:999px;font-size:11.5px;letter-spacing:.07em;text-transform:uppercase;color:#8a6a2e}
  .pp-more{margin-top:14px}
  .pp-more summary{cursor:pointer;font-size:15px;color:var(--forest);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}
  .pp-list{list-style:none;margin-top:12px}
  .pp-list li{position:relative;padding:9px 0 9px 20px;border-top:1px solid var(--line);font-size:14.5px;line-height:1.5;color:var(--ink)}
  .pp-list li::before{content:"";position:absolute;left:0;top:16px;width:7px;height:7px;border:1px solid var(--gold);border-radius:50%}
  .pp-list b{font-weight:500}
  .pp-list span{color:var(--ink-soft)}
  @media (max-width:880px){
    .pp-hero .wrap{grid-template-columns:minmax(0,1fr);gap:36px}
    .pp-shot-hero,.pp-shot-page{justify-self:start}
    .pp-shot-hero{max-width:400px;margin-bottom:0}
    .pp-shot-hero .pp-snip{zoom:1}
    .pp-shot-hero figcaption{color:#cfd8cf}
    .pp-shot-hero .pp-soon{color:var(--gold-soft);border-color:rgba(203,176,121,.7)}
    .pp-first{padding-top:70px}
    .pp-how{grid-template-columns:minmax(0,1fr);gap:40px}
    .pp-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 34px}
    .pp-next{grid-template-columns:minmax(0,1fr)}
  }
  @media (max-width:560px){
    .pp-tiles{grid-template-columns:minmax(0,1fr)}
    .pp-vs thead th:first-child{display:none}
    .pp-vs tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
    .pp-vs th,.pp-vs td{padding:12px 12px;font-size:15px}
    .pp-vs td{padding-left:34px}
    .pp-vs td::before{left:11px;top:16px;width:14px;height:14px}
    .pp-vs tbody th{grid-column:1 / -1;width:auto;padding-bottom:2px;border-bottom:none}
  }
  /* a professional's public page (/pros/<name>/), written by Natty/profiles/build-profile.js from their profile form */
  .pro-hero{padding:54px 0 50px}
  .pro-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:30px;align-items:center}
  .pro-photo{display:block;width:148px;height:148px;border-radius:50%;object-fit:cover;border:2px solid var(--gold-soft)}
  .pro-photo-none{background:rgba(255,255,255,.06)}
  .pro-hero h1{font-size:clamp(30px,5vw,46px);max-width:none;margin-bottom:10px}
  .pro-hero .pill{margin-bottom:14px}
  .pro-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
  .pro-badges .pill{margin-bottom:0}
  .pro-cats{font-size:17px;color:var(--gold-soft);max-width:60ch}
  .pro-where{font-size:15.5px;color:#cfd8cf;margin-top:6px}
  .pro-hero .cta{margin-top:22px}
  .pro-side{display:grid;gap:20px}
  .pro-logo{display:block;width:150px;max-height:110px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:3px;padding:10px}
  .pro-about{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:44px;align-items:start}
  .pro-about h2,.pro-band h2{max-width:none}
  .pro-about p{color:var(--ink-soft);font-size:17px;white-space:pre-line}
  .pro-facts{list-style:none;border-top:1px solid var(--line)}
  .pro-facts li{padding:12px 0;border-bottom:1px solid var(--line);font-size:15.5px;color:var(--ink-soft)}
  .pro-facts b{font-weight:500;color:var(--ink)}
  .pro-facts a,.pro-join a{color:var(--forest);text-decoration-color:var(--gold);text-underline-offset:3px}
  .pro-band{background:var(--ivory-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .pro-svc{list-style:none;max-width:760px;margin-top:22px;border-top:1px solid var(--line)}
  .pro-svc li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:4px 22px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--line)}
  .pro-svc b{font-weight:400;font-size:18px;color:var(--ink)}
  .pro-mins{font-size:14.5px;color:var(--ink-soft)}
  .pro-price{font-family:'Fraunces',serif;font-variant-numeric:lining-nums;font-size:24px;font-weight:600;color:var(--forest);min-width:76px;text-align:right}
  .pro-note{grid-column:1 / -1;font-size:14.5px;color:var(--ink-soft)}
  .pro-foot{margin-top:16px;font-size:14.5px;color:var(--ink-soft)}
  .pro-policy{max-width:760px;margin-top:18px;font-size:15px;color:var(--ink-soft)}
  .pro-policy summary{cursor:pointer;color:var(--forest)}
  .pro-policy div{white-space:pre-line;margin-top:10px}
  .pro-policy h3{font-size:22px;color:var(--forest);margin:14px 0 6px}
  .pro-policy h4{font-family:'DM Sans',sans-serif;font-size:15.5px;font-weight:500;color:var(--ink);margin:16px 0 4px}
  .pro-policy p{max-width:64ch;margin:0 0 10px}
  .pro-policy .pro-pol-covers{font-style:italic}
  .pro-work{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-top:24px}
  .pro-work a{display:block;aspect-ratio:4 / 5;overflow:hidden;border:1px solid var(--line);background:var(--ivory-soft)}
  .pro-work img{display:block;width:100%;height:100%;object-fit:cover}
  .pro-where-list{max-width:760px;margin-top:20px;border-top:1px solid var(--line)}
  .pro-where-list div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:4px 20px;padding:13px 0;border-bottom:1px solid var(--line)}
  .pro-where-list dt{font-size:14.5px;letter-spacing:.02em;color:var(--ink-soft)}
  .pro-where-list dd{font-size:16.5px;color:var(--ink)}
  .pro-request select{font-family:'DM Sans',sans-serif;font-size:16px;font-weight:300;color:var(--ivory);background:#17332a;border:1px solid var(--line-on-dark);border-radius:2px;padding:14px 15px;width:100%}
  .pro-request select:focus{outline:none;border-color:var(--gold-soft)}
  .pro-join{max-width:none;padding:30px 26px;text-align:center;font-size:16px;color:var(--ink-soft)}
  @media (max-width:720px){
    .pro-head{grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start}
    .pro-photo{width:88px;height:88px}
    .pro-logo{width:120px}
    .pro-about{grid-template-columns:minmax(0,1fr);gap:26px}
    .pro-where-list div{grid-template-columns:minmax(0,1fr)}
  }
  /* reviews from a professional's own clients: how they show on the page, and the form at /pros/<name>/review/ */
  .pro-reviews{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin-top:24px}
  .pro-reviews li{padding:20px 22px;border:1px solid var(--line);background:#fff}
  .pro-stars{font-size:18px;letter-spacing:2px;color:var(--gold)}
  .pro-stars span{color:var(--line)}
  .pro-reviews p{max-width:none;margin:10px 0 12px;font-size:16px;color:var(--ink)}
  .pro-by{font-size:13.5px;color:var(--ink-soft)}
  .pf select{font-family:'DM Sans',sans-serif;font-size:16px;font-weight:300;color:var(--ink);background:var(--ivory-soft);border:1px solid rgba(203,176,121,.7);border-radius:2px;padding:14px 15px;width:100%}
  .pf select:focus{outline:none;border-color:var(--gold);background:#fff;box-shadow:0 0 0 2px rgba(203,176,121,.4)}
  .rv-stars{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:4px}
  .rv .rv-stars input{position:absolute;width:1px;height:1px;margin:0;padding:0;border:0;opacity:0}
  .rv-stars label{font-size:38px;line-height:1;letter-spacing:0;color:#55655d;cursor:pointer;transition:color .12s}
  .rv-stars input:checked ~ label,.rv-stars label:hover,.rv-stars label:hover ~ label{color:var(--gold)}
  .rv-stars input:focus-visible + label{outline:2px solid var(--ivory);outline-offset:3px}
  /* profile set-up form (/providers/profile-form/): the site form on its dark ground, in headed groups */
  .pf-hero{padding:52px 0 26px}
  .pf-hero h1{max-width:none}
  .pf{padding-top:6px}
  .pf form{max-width:720px;gap:0;margin-top:0}
  .pf [hidden]{display:none!important}
  .pf-group{display:grid;gap:18px;padding:30px 0;border-bottom:1px solid var(--line-on-dark);min-width:0}
  .pf-group:last-of-type{border-bottom:none;padding-bottom:22px}
  .pf-group h2{font-size:clamp(26px,4vw,32px);color:var(--ivory);margin:0;max-width:none}
  .pf-hint{font-size:14px;color:#a9b6ac;max-width:none;margin-top:-8px}
  .pf-hint a,.pf-import a{color:var(--gold-soft)}
  .pf-hint.pf-public{font-size:14.5px;color:var(--gold-soft)}
  .pf .field .pf-hint{margin-top:0}
  .pf-set{border:none;min-width:0;display:grid;gap:10px}
  .pf-set legend{font-size:14.5px;letter-spacing:.03em;color:var(--gold-soft);padding:0;margin-bottom:10px}
  .pf-set legend .opt{color:#8fa197;font-style:italic;letter-spacing:0}
  .pf .req{color:#f0b8a8;font-style:normal;letter-spacing:0}
  .pf-key{font-size:14px;color:#a9b6ac;max-width:none;padding-top:6px}
  .pf-label{font-size:14.5px;letter-spacing:.03em;color:var(--gold-soft);margin-bottom:-8px}
  .pf-set .pf-hint{margin-top:-6px}
  .pf-chipgroup{display:grid;gap:7px}
  .pf-sub{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#8fa197}
  .pf-preview span{font-size:14.5px;color:#20140a;background:var(--gold-soft);border-radius:999px;padding:6px 14px}
  .pf-preview:empty{display:none}
  /* entry boxes in the site's cream, so they stand out from the dark ground */
  .pf input:not([type=checkbox]),.pf textarea{color:var(--ink);background:var(--ivory-soft);border-color:rgba(203,176,121,.7)}
  .pf input:not([type=checkbox]):focus,.pf textarea:focus{background:#fff;border-color:var(--gold);box-shadow:0 0 0 2px rgba(203,176,121,.4)}
  .pf input::placeholder,.pf textarea::placeholder{color:#7d8a83;opacity:1}
  /* something required that's still empty when they press Send */
  .pf input.pf-bad,.pf textarea.pf-bad{border-color:#c9503c;background:#fbe4dd;box-shadow:0 0 0 2px rgba(226,121,106,.55)}
  .pf fieldset.pf-bad{outline:1px solid #e2796a;outline-offset:10px;background:rgba(226,121,106,.07);box-shadow:0 0 0 10px rgba(226,121,106,.07)}
  .pf-check.pf-bad span{color:#f0b8a8}
  .pf-check.pf-bad input{outline:2px solid #e2796a;outline-offset:2px}
  .pf-chips{display:flex;flex-wrap:wrap;gap:8px}
  .pf-chip{position:relative;display:inline-flex;cursor:pointer}
  .pf-chip input{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer}
  .pf-chip span{font-size:14.5px;letter-spacing:0;color:#dfe6df;border:1px solid var(--line-on-dark);border-radius:999px;padding:8px 15px;transition:background .15s,color .15s,border-color .15s}
  .pf-chip:hover span{border-color:var(--gold-soft)}
  .pf-chip input:checked + span{background:var(--gold);border-color:var(--gold);color:#20140a;font-weight:400}
  .pf-chip input:focus-visible + span{outline:2px solid var(--ivory);outline-offset:2px}
  .pf-check{display:flex;align-items:flex-start;gap:11px;cursor:pointer}
  .pf-check input{flex:none;width:19px;height:19px;margin:3px 0 0;padding:0;accent-color:var(--gold)}
  .pf-check span{font-size:15.5px;letter-spacing:0;color:#dfe6df;line-height:1.5}
  .pf-services{display:grid;gap:10px}
  .pf-svc{display:grid;grid-template-columns:minmax(0,1fr) 112px 132px 46px;gap:8px;padding:10px;border:1px solid var(--line-on-dark);background:rgba(255,255,255,.02)}
  .pf-svc input{padding:11px 12px}
  .pf-svc-note{grid-column:1 / -1}
  .pf-x{font:inherit;font-size:20px;line-height:1;color:#cfd8cf;background:none;border:1px solid var(--line-on-dark);border-radius:2px;cursor:pointer}
  .pf-x:hover{color:var(--ivory);border-color:var(--gold-soft)}
  .pf-btn{justify-self:start;font:inherit;font-size:14.5px;letter-spacing:.02em;color:var(--gold-soft);background:none;border:1px solid var(--gold-soft);border-radius:2px;padding:10px 16px;cursor:pointer;transition:background .15s,color .15s}
  .pf-btn:hover{background:var(--gold-soft);color:#20140a}
  .pf-x:focus-visible,.pf-btn:focus-visible{outline:2px solid var(--ivory);outline-offset:2px}
  .pf-import{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 14px;border:1px solid var(--line-on-dark);border-left:3px solid var(--gold);background:rgba(184,146,74,.08);font-size:15px;color:#dfe6df}
  .pf-filled{display:grid;gap:12px;padding:14px 16px;border:1px solid var(--line-on-dark);border-left:3px solid var(--gold);background:rgba(184,146,74,.08)}
  .pf-filled-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;font-size:15px;color:#dfe6df}
  .pf-filled-head b{font-weight:400;color:var(--ivory)}
  .pf-filled-body{max-height:220px;overflow:auto;padding:12px 14px;border:1px solid var(--line-on-dark);background:rgba(16,42,32,.5);font-size:14.5px;line-height:1.55;color:#cfd8cf;white-space:pre-wrap}
  .pf-filled-body:focus-visible{outline:2px solid var(--gold-soft);outline-offset:2px}
  .pf-filled-body h3{font-size:21px;color:var(--ivory);margin:0 0 8px}
  .pf-filled-body h4{font-family:'DM Sans',sans-serif;font-size:14.5px;font-weight:500;letter-spacing:.01em;color:var(--ivory);margin:14px 0 3px}
  .pf-filled-body p{max-width:none;margin:0 0 8px}
  .pf-filled-body .pf-pol-name{font-weight:500;color:var(--gold-soft);margin-bottom:2px}
  .pf-filled-body .pf-pol-covers{font-style:italic}
  .pf-filled .pf-hint{margin-top:0}
  .pf-offer{font-size:14px;color:#dfe6df;max-width:none}
  .pf-thumb.pf-logo{width:150px;height:76px}
  .pf-thumb.pf-logo img{object-fit:contain;background:#fff;padding:6px}
  .pf-import-btns{display:flex;flex-wrap:wrap;gap:8px}
  .pf-photo-block{display:grid;gap:18px}
  .pf-nojs{display:grid;gap:14px}
  .pf input[type=file]{font-size:14.5px;padding:11px 12px;color:var(--ink-soft)}
  .pf input[type=file]::file-selector-button{font:inherit;font-size:14px;color:var(--ivory);background:var(--forest);border:none;border-radius:2px;padding:7px 12px;margin-right:12px;cursor:pointer}
  .pf-thumbs{display:flex;flex-wrap:wrap;gap:10px}
  .pf-thumbs:empty{display:none}
  .pf-thumb{position:relative;width:92px;height:92px}
  .pf-thumb img{display:block;width:100%;height:100%;object-fit:cover;border:1px solid var(--line-on-dark);border-radius:2px}
  .pf-thumb .pf-x{position:absolute;top:4px;right:4px;width:26px;height:26px;font-size:17px;color:var(--ivory);background:rgba(16,42,32,.86);border-color:rgba(244,239,227,.5)}
  .pf-review{display:grid;gap:12px;margin-top:8px;padding:20px 22px;border:1px solid var(--line-on-dark);border-left:3px solid var(--gold);background:rgba(184,146,74,.08)}
  .pf-review:focus{outline:none}
  .pf-review h3{font-size:24px;color:var(--ivory)}
  .pf-review ul{list-style:none;display:grid}
  .pf-review li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;border-top:1px solid var(--line-on-dark);font-size:15.5px;color:#dfe6df}
  .pf-review .pf-hint{margin-top:0}
  .pf-link{flex:none;font:inherit;font-size:14.5px;color:var(--gold-soft);background:none;border:none;padding:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
  .pf-link:hover{color:var(--ivory)}
  .pf-link:focus-visible{outline:2px solid var(--ivory);outline-offset:2px}
  .pf .submit{margin-top:8px}
  .pf .form-error,.pf .reassure{margin-top:16px}
  .pf-group .form-error{margin-top:0}
  @media (max-width:560px){
    .pf-svc{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 46px}
    .pf-svc-name{grid-column:1 / -1}
  }

  /* CLIENTS coming soon */
  .c-hero{background:radial-gradient(120% 90% at 82% 8%, #1f4a38 0%, var(--forest) 46%, var(--forest-deep) 100%);color:var(--ivory);padding:70px 0 64px}
  .c-hero .pill{color:var(--ivory);margin-bottom:22px}
  .c-hero h1{font-size:clamp(33px,6vw,54px);color:var(--ivory);max-width:16ch;margin-bottom:20px}
  .c-hero h1 em{font-style:italic;color:var(--gold-soft)}
  .c-hero .lede{font-size:clamp(16px,2.3vw,19px);color:#dfe6df;max-width:54ch}
  .teasers{display:grid;grid-template-columns:1fr 1fr;gap:26px 44px;margin-top:44px}
  .teaser .ti{width:34px;height:34px;display:block;margin-bottom:10px}
  .teaser h4{font-size:22px;margin-bottom:6px}
  .teaser p{font-size:15.5px;color:var(--ink-soft)}
  .wl{background:var(--forest);color:var(--ivory)}
  .wl h2{color:var(--ivory)}
  .wl .section-note{color:#c9d2c9}
  .wlform{display:flex;flex-wrap:wrap;gap:12px;max-width:560px;margin-top:26px}
  .wlform input{flex:1 1 260px;color:var(--ivory)}
  .wl .confirm{background:rgba(184,146,74,.1)}

  /* provider page: "What you get" in two columns, and the roadmap */
  /* provider roadmap */
  .col.two{grid-column:1 / -1}
  .col.two ul{display:grid;grid-template-columns:1fr 1fr;column-gap:54px;align-items:start}
  .col.two li:nth-child(2){border-top:none}
  .headed{background:var(--ivory-soft)}
  .headed .section-note{margin-bottom:36px}
  .headed .col h3{margin-bottom:0;padding-bottom:12px;border-bottom:1px solid var(--line)}
  /* roadmap: line the bullets up across each pair of columns (subgrid rows).
     Pair one = 1 heading + up to 5 bullets, pair two = 1 heading + 3 bullets */
  @media (min-width:721px){
    @supports (grid-template-rows:subgrid){
      .headed .cols{row-gap:0}
      .headed .col{display:grid;grid-template-rows:subgrid}
      .headed .col ul{display:grid;grid-template-rows:subgrid}
      .headed .col:nth-child(-n+2){grid-row:1 / span 6}
      .headed .col:nth-child(-n+2) ul{grid-row:2 / span 5}
      .headed .col:nth-child(n+3){grid-row:7 / span 4}
      .headed .col:nth-child(n+3) ul{grid-row:2 / span 3}
      .headed .col:nth-child(n+3) h3{margin-top:50px}
    }
  }
  @media (max-width:720px){
    .col.two ul{grid-template-columns:1fr}
    .col.two li:nth-child(2){border-top:1px solid var(--line)}
  }

  /* clients page: services list */
  .services{background:var(--ivory-soft)}
  .services .section-note{margin-bottom:28px}
  .svclist{list-style:none;display:grid;grid-template-columns:1fr 1fr;column-gap:54px}
  .svclist li{padding:16px 0 15px;border-top:1px solid var(--line)}
  .svclist b{display:block;font-family:'Fraunces',serif;font-weight:500;font-size:22px;line-height:1.2;color:var(--forest);margin-bottom:3px}
  .svclist span{font-size:15px;color:var(--ink-soft);line-height:1.5}
  .svc-foot{margin-top:22px;font-family:'Fraunces',serif;font-style:italic;font-size:18px;color:var(--gold)}
  @media (max-width:720px){.svclist{grid-template-columns:1fr}}

  /* long-form text (privacy policy) */
  .prose{max-width:720px}
  .prose h2{font-size:clamp(24px,4vw,30px);margin:38px 0 10px;max-width:none}
  .prose h2:first-of-type{margin-top:0}
  .prose h2 ~ h2{clear:both}
  .portrait{float:right;width:250px;margin:6px 0 20px 36px;padding:12px 12px 14px;background:var(--ivory-soft);border:1px solid var(--line);border-radius:2px}
  .portrait img{display:block;width:100%;height:auto;border-radius:1px}
  .portrait figcaption{margin-top:12px;padding-top:10px;border-top:1px solid var(--line);font-size:13.5px;letter-spacing:.03em;color:var(--ink-soft);text-align:center}
  .portrait figcaption b{font-family:'Fraunces',serif;font-weight:500;font-size:19px;letter-spacing:0;color:var(--forest);display:block;line-height:1.2}
  @media (max-width:720px){.portrait{float:none;width:min(190px,56%);margin:0 auto 24px;padding:10px 10px 12px}.portrait figcaption{margin-top:10px;padding-top:8px}.portrait figcaption b{font-size:17px}}
  .prose p{margin:0 0 14px;max-width:none;color:var(--ink-soft);font-size:16.5px}
  .prose ul{margin:0 0 14px 1.2em;color:var(--ink-soft);font-size:16.5px}
  .prose li{margin-bottom:6px}
  .prose strong{font-weight:500;color:var(--ink)}
  .prose a{color:var(--forest);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}
  .reassure a{color:var(--gold-soft)}

  /* guides: long-form articles and the guides index */
  .crumbs{font-size:14px;letter-spacing:.02em;color:#cfd8cf;margin-bottom:18px}
  .crumbs a{color:var(--gold-soft);text-decoration:none}
  .crumbs a:hover{color:var(--ivory)}
  .guide-meta{display:flex;flex-wrap:wrap;gap:4px 0;margin-top:18px;font-size:14.5px;color:#cfd8cf;max-width:none}
  .guide-meta span{white-space:nowrap}
  .guide-meta span + span::before{content:"·";margin:0 10px;color:var(--gold-soft)}
  .guide-meta a{color:var(--gold-soft)}
  .prose h3{font-size:clamp(20px,3vw,23px);margin:26px 0 8px;color:var(--forest);line-height:1.2}
  .prose ol{margin:0 0 14px 1.3em;color:var(--ink-soft);font-size:16.5px}
  .prose .aside{font-size:14.5px;font-style:italic}
  .toc{margin:26px 0 34px;padding:18px 22px 14px;background:var(--ivory-soft);border:1px solid var(--line)}
  .toc b{display:block;font-family:'Fraunces',serif;font-weight:500;font-size:20px;color:var(--forest);margin-bottom:6px}
  .prose .toc ol{margin:0 0 0 1.2em;font-size:15.5px;columns:2;column-gap:40px}
  .prose .toc li{margin-bottom:4px;break-inside:avoid}
  .prose .toc a{text-decoration:none;border-bottom:1px solid var(--line)}
  .prose .toc a:hover{border-color:var(--gold)}
  .fit{margin:20px 0 8px;padding:14px 18px;border-left:3px solid var(--gold);background:var(--ivory-soft);font-size:16px;color:var(--ink-soft)}
  .fit b{font-weight:500;color:var(--forest)}
  .suits{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 18px}
  .suits div,.suits a{border:1px solid var(--line);background:var(--ivory-soft);padding:16px 18px}
  .suits a{display:flex;flex-direction:column;color:inherit;text-decoration:none;transition:border-color .15s}
  .suits a:hover{border-color:var(--gold)}
  .suits a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .suits a:last-child:nth-child(odd){grid-column:1 / -1}
  .suits-more{margin-top:auto;padding-top:10px;font-size:14px;color:var(--forest);text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px}
  .prose .back-to-calc{margin-top:14px;font-size:14.5px}
  .suits b{display:block;font-family:'Fraunces',serif;font-weight:500;font-size:21px;line-height:1.2;color:var(--forest);margin-bottom:4px}
  .prose .suits p{font-size:15px;margin:0}
  .policy-template{max-width:760px;margin:6px 0 30px;border:1px solid var(--line);border-top:3px solid var(--gold);background:#fff}
  .policy-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 18px;background:var(--ivory-soft);border-bottom:1px solid var(--line)}
  .policy-head b{font-weight:500;color:var(--forest);font-size:15px}
  .policy-copy{font:inherit;font-size:14px;color:var(--ivory);background:var(--forest);border:none;border-radius:2px;padding:8px 14px;cursor:pointer}
  .policy-copy:hover{background:var(--forest-deep)}
  .policy-copy:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .policy-body{padding:18px 22px 20px;font-size:15.5px;line-height:1.6;color:var(--ink)}
  .policy-body h3{font-size:24px;color:var(--forest);margin-bottom:8px}
  .policy-body h4{font-family:'DM Sans',sans-serif;font-size:15.5px;font-weight:500;color:var(--forest);margin:16px 0 4px}
  .policy-body p{max-width:64ch}
  .policy-message{margin-bottom:16px}
  .pb{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:22px;align-items:start;margin:6px 0 30px}
  .pb *,.pb *::before,.pb *::after{box-sizing:border-box}
  .pb [hidden]{display:none!important}
  .pb-group{border:1px solid var(--line);background:var(--ivory-soft);padding:12px 16px 16px;margin:0 0 12px}
  .pb-group-title{font-family:'Fraunces',serif;font-size:22px;font-weight:500;line-height:1.2;color:var(--forest);padding-bottom:9px;margin-bottom:2px;border-bottom:1px solid var(--line);max-width:none}
  .pb-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
  .pb-field{display:grid;gap:4px;margin-top:10px;align-content:end}
  .pb-field label,.pb-label{font-size:13.5px;color:var(--ink);line-height:1.3}
  .pb-form input[type=text],.pb-form input[type=number],.pb-form select{font:inherit;font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:8px 10px;width:100%;min-width:0}
  .pb-form input:focus,.pb-form select:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
  .pb-choices{display:flex;flex-wrap:wrap;gap:4px 16px}
  .pb-choice{display:inline-flex;align-items:center;gap:7px;margin-top:4px;font-size:14.5px;color:var(--ink);cursor:pointer}
  .pb-toggle{display:flex;margin-top:12px;font-weight:400}
  .pb-form .pb-choice input{width:16px;height:16px;padding:0;margin:0;border:none;background:none;accent-color:var(--forest);flex:none}
  .pb-note{font-size:13px;color:var(--ink-soft);max-width:none}
  .pb-note-top{margin:0 0 10px}
  .pb-output{margin:0;position:sticky;top:84px;max-height:calc(100vh - 100px);overflow:auto}
  .pb-output .policy-head{position:sticky;top:0;z-index:2}
  .pb-actions{display:flex;flex-wrap:wrap;gap:6px}
  .pb-btn{font:inherit;font-size:13.5px;color:var(--ivory);background:var(--forest);border:none;border-radius:2px;padding:7px 12px;cursor:pointer}
  .pb-btn:hover{background:var(--forest-deep)}
  .pb-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .mb-list .policy-message:last-child{margin-bottom:0}
  .pb-msgs{margin-top:4px}
  .hero-jumps{display:flex;flex-wrap:wrap;gap:0 22px}
  .pb-error{flex-basis:100%;margin:0;padding:8px 10px;font-size:13.5px;color:#8c3b2e;background:#fbeee9;border-left:3px solid #8c3b2e;max-width:none}
  .policy-body mark.is-flash{outline:2px solid #8c3b2e;outline-offset:1px}
  .pb-form input.pb-file{font-size:13.5px;padding:6px 8px;background:#fff;color:var(--ink)}
  .pb-logo-row{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink-soft)}
  .pb-link-btn{font:inherit;font-size:13px;color:var(--forest);background:none;border:none;padding:0;text-decoration:underline;cursor:pointer}
  .policy-body .pb-logo{display:block;max-width:220px;max-height:66px;width:auto;height:auto;margin:0 0 14px}
  .pb-why{font-size:12.5px;line-height:1.45;color:var(--ink-soft);margin:6px 0 0;max-width:none}
  .pb-why a{color:var(--forest);white-space:nowrap}
  .pb-why-top{margin:10px 0 2px}
  .pb-mobile-note{display:none}
  .pb-gaps{flex-basis:100%;font-size:13px;color:var(--ink-soft);margin:0;max-width:none}
  .policy-body mark{background:#f6e7c3;color:var(--ink);padding:0 2px;border-radius:2px}
  .policy-body mark.pb-booking,.pb-legend mark.pb-booking{background:#dcebf5;color:#1d4460}
  .mb-inline{margin:0;padding:10px 20px 12px;border-bottom:1px dashed var(--line);background:#fff}
  .mb-inline input{font:inherit;font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:8px 10px;width:100%;min-width:0}
  .mb-inline input:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
  .pb-toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,12px);z-index:50;max-width:min(92vw,520px);padding:12px 16px;background:var(--forest);color:var(--ivory);font-size:14.5px;line-height:1.45;border-left:3px solid var(--gold);box-shadow:0 6px 18px rgba(16,42,32,.25);opacity:0;transition:opacity .2s,transform .2s}
  .pb-toast.is-on{opacity:1;transform:translate(-50%,0)}
  .pb-form input[type=date],.pb-form input[type=time]{font:inherit;font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:7px 10px;width:100%;min-width:0}
  .pb-collapse > summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
  .pb-collapse > summary::-webkit-details-marker{display:none}
  .pb-collapse > summary::after{content:"";width:8px;height:8px;border-right:1.5px solid var(--forest);border-bottom:1.5px solid var(--forest);transform:rotate(45deg);margin:0 4px 4px 0;transition:transform .15s}
  .pb-collapse:not([open]) > summary{border-bottom:none;padding-bottom:0;margin-bottom:0}
  .pb-collapse:not([open]) > summary::after{transform:rotate(-45deg);margin-bottom:0}
  .pb-collapse:not([open]){padding-bottom:12px}
  .policy-body .pb-bizname{font-family:'Fraunces',serif;font-size:28px;font-weight:600;line-height:1.15;color:var(--ink);margin:0 0 2px;max-width:none}
  .policy-body .pb-covers{margin:0 0 14px;font-size:17px;font-weight:500;color:var(--ink);max-width:none}
  .pb-legend{font-size:13px;color:var(--ink-soft);margin:0 0 10px;max-width:none}
  .pb-legend mark{background:#f6e7c3;color:var(--ink);padding:0 3px;border-radius:2px}
  @media (max-width:880px){.pb-mobile-note{display:block;margin:0;padding:10px 22px 0;font-size:13.5px;color:var(--ink-soft);max-width:none}.pb-mobile-note a{color:var(--forest);white-space:nowrap}.pb{grid-template-columns:1fr}.pb-output{position:static;max-height:none;overflow:visible}.pb-output .policy-head{top:67px}}
  @media (max-width:420px){.pb-row{grid-template-columns:1fr}}
  .policy-message .policy-body{padding:14px 20px 8px}
  .policy-message .policy-body p{margin-bottom:8px}
  .author{margin:40px 0 0;padding:22px 24px 10px;border:1px solid var(--line);border-top:3px solid var(--gold);background:var(--ivory-soft)}
  .author b{display:block;font-family:'Fraunces',serif;font-weight:500;font-size:21px;color:var(--forest);margin-bottom:6px}
  .prose .author p{font-size:15.5px}
  .prose .sources{font-size:14.5px}
  .prose .sources li{margin-bottom:8px}
  .prose .sources a{overflow-wrap:anywhere}
  .guide-list{list-style:none;display:grid;gap:18px;max-width:760px}
  .guide-card{display:block;border:1px solid var(--line);background:var(--ivory-soft);padding:24px 26px 22px;text-decoration:none;color:var(--ink);transition:border-color .2s,transform .2s}
  .guide-card:hover{border-color:var(--gold);transform:translateY(-2px)}
  .guide-card:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
  .guide-card.has-tools{position:relative}
  .guide-card.has-tools:focus-within{border-color:var(--gold)}
  .guide-card h3 a{color:inherit;text-decoration:none}
  .guide-card h3 a::after{content:"";position:absolute;inset:0}
  .guide-card h3 a:focus-visible{outline:none}
  .guide-card.has-tools:has(h3 a:focus-visible){outline:2px solid var(--gold);outline-offset:3px}
  .guide-tools{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
  .guide-tools a{font-size:14px;color:var(--forest);background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 12px;text-decoration:none;transition:border-color .15s}
  .guide-tools a:hover{border-color:var(--gold)}
  .guide-tools a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .guide-card .k{font-size:13px;letter-spacing:.05em;color:var(--gold);margin-bottom:8px}
  .guide-card h2,.guide-card h3{font-size:clamp(24px,3.4vw,30px);max-width:none;margin-bottom:8px;color:var(--forest)}
  .guide-group{font-size:clamp(26px,3.6vw,34px);color:var(--forest);margin:0 0 16px}
  .guide-list + .guide-group{margin-top:52px}
  .guide-card.is-soon{background:transparent;border-style:dashed}
  .guide-card.is-soon:hover{border-color:var(--line);transform:none}
  .guide-card.is-soon .k{color:var(--ink-soft);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px}
  .guide-card .soon{margin-left:0;white-space:nowrap}
  @media (max-width:480px){
    .guide-card.is-soon .k{display:block}
    .guide-card .soon{display:block;width:max-content;margin-top:7px}
  }
  .guide-card.is-soon h3{font-size:clamp(21px,2.8vw,24px)}
  .guide-card p{font-size:15.5px;color:var(--ink-soft);max-width:60ch}
  .guide-card .go{display:inline-block;margin-top:12px;font-size:15px;color:var(--forest);border-bottom:1px solid var(--gold)}
  /* guides: pay calculator */
  .pc{margin:6px 0 46px}
  .pc *,.pc *::before,.pc *::after{box-sizing:border-box}
  .pc [hidden]{display:none!important}
  .pc-top{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}
  .pc-field{display:grid;gap:5px;min-width:0;align-content:end}
  .pc-field label,.pc-sub{font-size:13.5px;letter-spacing:.01em;color:var(--ink);font-weight:400;line-height:1.3}
  .pc-sub{font-weight:500;color:var(--forest)}
  .pc input[type=number],.pc select{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:400;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:8px 10px;width:100%;min-width:0;font-variant-numeric:tabular-nums}
  .pc input[type=number]:focus,.pc select:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold);background:#fff}
  .pc input:disabled,.pc select:disabled{background:var(--ivory);color:var(--ink-soft);cursor:not-allowed}
  .pc input::placeholder{color:#9aa39d;font-size:13.5px}
  .pc input[type=checkbox],.pc input[type=radio]{width:auto;padding:0;margin:3px 9px 0 0;accent-color:var(--forest);flex:none}
  .pc-hint{font-size:13px;color:var(--ink-soft);margin-top:8px;max-width:none;line-height:1.45}
  .pc-hint a{color:var(--forest)}
  .pc-msg{margin-top:12px;padding:10px 14px;border-left:3px solid var(--gold);background:var(--ivory-soft);font-size:14px;color:var(--ink);max-width:none}
  /* the options to compare, ticked like a shop's product comparison */
  .pc-compare{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:14px 0 0;padding:0;border:none}
  .pc-compare legend{float:left;margin-right:4px;padding:0;font-size:13.5px;color:var(--ink)}
  .pc-compare label{display:inline-flex}
  .pc .pc-compare input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
  .pc-compare span{display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 9px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:13.5px;color:var(--ink-soft);cursor:pointer}
  .pc-compare span::before{content:'';flex:none;width:15px;height:15px;border:1.5px solid var(--line);border-radius:3px;background:#fff}
  .pc-compare input:checked + span{border-color:var(--forest);color:var(--forest)}
  .pc-compare input:checked + span::before{border-color:var(--forest);background:var(--forest) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2 5 8.5l4.5-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}
  .pc-compare input:focus-visible + span{outline:2px solid var(--gold);outline-offset:2px}
  .pc .pc-card[hidden],.pc-tab[hidden]{display:none}
  .pc-summary{position:sticky;top:var(--pc-top,67px);z-index:6;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:8px;margin:14px 0 16px;padding:8px 0;background:var(--ivory);transition:padding-bottom .15s ease,margin-bottom .15s ease,box-shadow .15s ease,background-color .15s ease}
  .pc-summary.is-stuck{padding:8px 10px 20px;margin:14px -10px 4px;background:var(--line);box-shadow:0 1px 0 var(--gold-soft)}
  .pc-tile{display:flex;flex-direction:column;gap:1px;text-align:left;font:inherit;color:inherit;background:#fff;border:1px solid var(--line);border-top:3px solid var(--line);padding:8px 11px 9px;cursor:pointer;min-width:0}
  button.pc-tile:hover{border-color:var(--gold-soft);border-top-color:var(--gold-soft)}
  .pc-tile:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .pc-tile.is-bench,button.pc-tile.is-bench:hover{border-top-color:var(--gold)}
  div.pc-tile{cursor:default}
  .pc-tile-name{font-size:12.5px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .pc-tile-name em{font-style:normal;font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;background:var(--forest);color:var(--ivory);padding:1px 6px;border-radius:999px;margin-left:4px;vertical-align:1px}
  .pc-tile-val{font-family:'Fraunces',serif;font-size:24px;font-weight:600;line-height:1.1;color:var(--forest);font-variant-numeric:tabular-nums}
  .pc-tile-sub{font-size:12px;color:var(--ink-soft);line-height:1.3}
  .pc-short{display:none}
  .pc-tabs{display:none}
  .pc-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
  .pc-card{border:1px solid var(--line);background:var(--ivory-soft);padding:14px 16px 16px;min-width:0;scroll-margin-top:160px}
  .pc-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}
  .pc-card-title{display:flex;align-items:center;gap:9px;font-size:23px;color:var(--forest)}
  .pc-ico{width:26px;height:26px;flex:none}
  .pc-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin-top:12px}
  .pc-seg{border:none;padding:0;margin-top:12px}
  .pc-seg legend{float:left;margin:7px 10px 0 0;font-size:13.5px;color:var(--ink)}
  .pc-seg label{display:inline-block;margin-right:-1px}
  .pc .pc-seg input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
  .pc-seg span{display:inline-block;padding:6px 12px;border:1px solid var(--line);background:#fff;font-size:13.5px;color:var(--ink);cursor:pointer}
  .pc-seg input:checked + span{background:var(--forest);border-color:var(--forest);color:var(--ivory)}
  .pc-seg input:focus-visible + span{outline:2px solid var(--gold);outline-offset:2px}
  .pc-est{font-size:13px;color:var(--ink-soft);margin-top:8px;max-width:none;line-height:1.45}
  .pc-car{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}
  .pc-car > summary{font-weight:500}
  .pc-car-sum{font-weight:400;color:var(--ink-soft)}
  .pc-more-row{position:relative;margin-top:12px;border-top:1px dashed var(--line);padding-top:9px}
  .pc-more summary{cursor:pointer;font-size:13.5px;color:var(--forest)}
  .pc-reset{position:absolute;top:9px;right:0;padding:0;font:inherit;font-size:13px;color:var(--forest);background:none;border:none;cursor:pointer;text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px}
  .pc-reset:hover{text-decoration-color:var(--forest)}
  .pc-reset:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .pc-reset:disabled{cursor:not-allowed}
  .pc-radios{display:grid;gap:7px;margin-top:12px}
  .pc-radios label,.pc-check{display:flex;align-items:flex-start;font-size:14px;color:var(--ink);line-height:1.4;cursor:pointer}
  .pc-check{margin-top:9px}
  .pc-check .pc-hint{display:inline;margin:0}
  .pc-foot{margin-top:14px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--gold);padding:10px 12px 11px;display:grid;gap:2px}
  .pc-foot-label{font-size:12px;letter-spacing:.04em;color:var(--ink-soft)}
  .pc-foot-main{font-family:'Fraunces',serif;font-size:26px;font-weight:600;line-height:1.15;color:var(--forest);font-variant-numeric:tabular-nums}
  .pc-foot-main small{font-family:'DM Sans',sans-serif;font-size:13px;font-weight:300;color:var(--ink-soft)}
  .pc-foot-more{margin-top:6px}
  .pc-foot-more summary{cursor:pointer;width:max-content;font-size:12.5px;color:var(--ink-soft)}
  .pc-foot-more summary:hover,.pc-foot-more[open] summary{color:var(--forest)}
  .pc-foot-calc{display:grid;gap:2px;max-width:300px;margin:6px 0 2px;font-size:12.5px;line-height:1.4;color:var(--ink-soft);font-variant-numeric:tabular-nums}
  .pc-foot-calc div{display:flex;justify-content:space-between;gap:14px}
  .pc-foot-calc dd{margin:0}
  .pc-foot-calc .pc-foot-total{margin-top:2px;padding-top:3px;border-top:1px solid var(--line);color:var(--ink)}
  .pc-foot-diff{font-size:13.5px;font-variant-numeric:tabular-nums}
  .pc-foot-diff.is-up{color:#2f6b4a}
  .pc-foot-diff.is-down{color:#8c3b2e}
  .pc-foot-sub{font-size:13px;color:var(--ink-soft);line-height:1.4}
  .pc-detail{margin-top:18px;border:1px solid var(--line);background:#fff;padding:18px 20px 14px}
  .pc-detail h3{font-size:22px;color:var(--forest);margin-bottom:4px}
  .pc-table-note,.pc-slides,.pc-dots{display:none}
  .pc-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:6px}
  .pc-table{width:100%;min-width:520px;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
  .pc-table th,.pc-table td{padding:7px 8px;text-align:right;border-top:1px solid var(--line);white-space:nowrap}
  .pc-table thead th{font-weight:500;color:var(--forest);border-top:none;white-space:normal;vertical-align:bottom;line-height:1.25}
  .pc-table tbody th{text-align:left;font-weight:400;color:var(--ink-soft);white-space:normal;line-height:1.3}
  .pc-table .pc-total th,.pc-table .pc-total td{color:var(--ink);border-top:2px solid var(--gold-soft)}
  .pc-table strong{font-weight:500}
  .pc-na{color:#b8b09b}
  .pc-notes{margin:12px 0 0 1.1em;font-size:13px;line-height:1.45;color:var(--ink-soft);display:grid;gap:6px}
  .pc-how{margin-top:12px;border-top:1px solid var(--line);padding-top:9px;font-size:13px;line-height:1.45;color:var(--ink-soft)}
  .pc-how summary{cursor:pointer;color:var(--forest);font-size:14px}
  .pc-how ul{margin:8px 0 4px 1.1em;display:grid;gap:6px}
  .pc-how strong{font-weight:500;color:var(--ink)}
  .pc-noscript{padding:14px 18px;border:1px solid var(--line);background:var(--ivory-soft);color:var(--ink-soft);margin-bottom:12px}
  @media (max-width:720px){
    .pc-top{grid-template-columns:1fr;gap:10px}
    .pc-summary{gap:5px;padding:6px 0}
    .pc-summary.is-stuck{padding:6px 8px 14px;margin:14px -8px 8px}
    .pc-tile{padding:6px 7px 7px}
    .pc-tile-name{font-size:11px}
    .pc-tile-name em{display:none}
    .pc-long{display:none}
    .pc-short{display:inline}
    .pc-tile-val{font-size:18px}
    .pc-tile-sub{font-size:11px}
    .pc-tabs{display:flex;margin:0 0 10px;border:1px solid var(--line);background:#fff}
    .pc-tab{flex:1;font:inherit;font-size:13.5px;padding:9px 4px;background:none;border:none;border-right:1px solid var(--line);color:var(--ink);cursor:pointer}
    .pc-tab:last-child{border-right:none}
    .pc-tab[aria-selected="true"]{background:var(--forest);color:var(--ivory)}
    .pc-cards{grid-template-columns:1fr}
    .pc-card{display:none;padding:12px 13px 14px}
    .pc-card.is-active{display:block}
    .pc-table{min-width:0}
    .pc-tablewrap{display:none}
    .pc-slides{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:6px -14px 0;padding:0 14px}
    .pc-slides::-webkit-scrollbar{display:none}
    .pc-slide{flex:0 0 86%;scroll-snap-align:center;border:1px solid var(--line);background:var(--ivory-soft);padding:10px 12px 8px}
    .pc-slide-name{font-family:'Fraunces',serif;font-size:20px;font-weight:600;color:var(--forest);margin-bottom:2px}
    .pc-slide .pc-table th,.pc-slide .pc-table td{padding:6px 4px}
    .pc-slide .pc-table tr:first-child th,.pc-slide .pc-table tr:first-child td{border-top:none}
    .pc-dots{display:flex;justify-content:center;gap:7px;margin-top:10px}
    .pc-dots span{width:7px;height:7px;border-radius:50%;background:var(--line)}
    .pc-dots span.is-on{background:var(--forest)}
    .pc-table-note{display:block}
    .pc-detail{padding:14px 14px 12px}
  }
  /* guides: no-show calculator (builds on the pay calculator's .pc styles) */
  .ns-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
  .ns-inputs{display:grid;gap:14px;align-content:start;min-width:0}
  .ns-group{border:1px solid var(--line);background:var(--ivory-soft);padding:14px 16px 16px;min-width:0}
  .ns-group-title{font-size:23px;color:var(--forest);padding-bottom:10px;border-bottom:1px solid var(--line)}
  .ns-reset-row{margin-top:12px;padding-top:9px;border-top:1px dashed var(--line);text-align:right}
  .ns-reset-row .pc-reset{position:static}
  .ns-result{display:flex;flex-direction:column;min-width:0;padding:24px 26px 22px;background:var(--forest);color:var(--ivory);border-top:3px solid var(--gold)}
  .ns-result p{max-width:none}
  .ns-result-k{font-size:14px;letter-spacing:.05em;color:var(--gold-soft)}
  .ns-result-save{margin:4px 0 8px;font-family:'Fraunces',serif;font-size:clamp(56px,8vw,76px);font-weight:600;line-height:1;color:var(--gold-soft);font-variant-numeric:tabular-nums}
  .ns-result-save small{margin-left:8px;font-family:'DM Sans',sans-serif;font-size:16px;font-weight:300;letter-spacing:.02em;color:var(--ivory)}
  .ns-result-range{font-size:14.5px;line-height:1.5;color:#cfd8cf}
  .ns-result-total{margin-top:20px}
  .ns-result-total p:first-child{padding-top:14px;border-top:1px solid var(--line-on-dark);font-size:15px;line-height:1.5;color:var(--ivory)}
  .ns-result-total b{font-family:'Fraunces',serif;font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}
  .ns-bar{height:10px;margin-top:10px;border-radius:999px;background:rgba(244,239,227,.16);overflow:hidden}
  .ns-bar span{display:block;height:100%;border-radius:999px;background:var(--gold);transition:width .2s ease}
  .ns-bar-note{margin-top:6px;font-size:12.5px;color:#aebcb2}
  .ns-cta{align-self:flex-start;margin-top:20px;padding:12px 22px;font-size:15px}
  /* price calculator (/guides/what-to-charge/), built on .pc and .ns; one step showing at a time */
  .pr-layout{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:14px;align-items:start}
  .pr-flow{min-width:0}
  /* Your work is a form, so undo the site-wide form layout; labels sit at the top and boxes line up along the bottom */
  .pr-form{display:block;max-width:none;margin-top:0}
  .pr-form .pc-field{grid-template-rows:1fr auto;align-content:stretch}
  .pr-form .pc-field > label{align-self:start}
  .pr-change-prof{display:block;margin-top:8px;font-size:13.5px}
  .pc #pr-target::placeholder{font-size:15px;color:#8f9993}
  .pr-apply{font-size:13px}
  .pr-change-prof[hidden]{display:none}
  @media (max-width:1000px){
    .pr-layout{grid-template-columns:minmax(0,1fr);gap:18px}
  }
  /* the progress row, with each step's name under its circle, at the top of the step that's showing */
  .pr-step-head{display:flex;flex-direction:column-reverse;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}
  .pr-step-head .ns-group-title{padding-bottom:0;border-bottom:0}
  .pr-steps{display:flex;margin:0;padding:0;list-style:none}
  .pr-steps li{position:relative;flex:1 1 0;min-width:0;display:flex;justify-content:center}
  .pr-steps li + li::before{content:'';position:absolute;top:12px;left:calc(-50% + 13px);width:calc(100% - 26px);height:2px;background:var(--line)}
  .pr-steps li.is-linked + li::before{background:var(--forest)}
  .pr-steps button{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;padding:0;font:inherit;color:var(--ink-soft);background:none;border:none;cursor:pointer}
  .pr-steps button:disabled{cursor:default;color:#8f9993}
  .pr-steps button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
  .pr-step-n{display:grid;place-items:center;width:26px;height:26px;border:1.5px solid var(--line);border-radius:50%;background:#fff;font-size:12.5px;font-weight:500;line-height:1;font-variant-numeric:tabular-nums}
  .pr-step-t{font-size:12px;line-height:1.2;white-space:nowrap}
  .pr-steps button:not(:disabled):hover .pr-step-n{border-color:var(--gold)}
  .pr-steps .is-done .pr-step-n{background:var(--forest);border-color:var(--forest);color:var(--ivory)}
  .pr-steps .is-on .pr-step-t{font-weight:500;color:var(--forest)}
  .pr-steps .is-on .pr-step-n{background:var(--gold);border-color:var(--gold);color:#20140a}
  /* the prices step's preview, in the green and gold of a result */
  .pr-prices.is-preview{background:var(--forest);border-color:var(--forest);border-top:3px solid var(--gold);color:var(--ivory)}
  .pr-prices.is-preview .pr-step-head{border-bottom-color:var(--line-on-dark)}
  .pr-prices.is-preview .ns-group-title{color:var(--ivory)}
  .pr-prices.is-preview .pr-step-n{background:transparent;border-color:var(--line-on-dark);color:#cfd8cf}
  .pr-prices.is-preview .is-done .pr-step-n{background:rgba(244,239,227,.12);border-color:var(--gold-soft);color:var(--ivory)}
  .pr-prices.is-preview .is-on .pr-step-n{background:var(--gold);border-color:var(--gold);color:#20140a}
  .pr-prices.is-preview .pr-steps li + li::before{background:var(--gold-soft)}
  .pr-prices.is-preview .pr-steps button{color:#cfd8cf}
  .pr-prices.is-preview .is-on .pr-step-t{color:var(--gold-soft)}
  .pr-prices.is-preview .pr-lead{color:#cfd8cf}
  .pr-usefor[hidden]{display:none}
  .pr-prices.is-preview .pc-seg legend{color:var(--ivory)}
  .pr-prices.is-preview .pc-seg span{background:transparent;border-color:var(--line-on-dark);color:var(--ivory)}
  .pr-prices.is-preview .pc-seg input:checked + span{background:var(--gold);border-color:var(--gold);color:#20140a}
  .pr-list{display:grid;margin:10px 0 0;padding:0;list-style:none}
  .pr-list[hidden]{display:none}
  .pr-list li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:8px 0;border-bottom:1px solid var(--line-on-dark);font-size:15.5px;line-height:1.3;color:var(--ivory)}
  .pr-list li:last-child{border-bottom:0}
  .pr-list span{min-width:0;overflow-wrap:anywhere}
  .pr-list small{display:block;margin-top:2px;font-size:12px;color:var(--gold-soft)}
  .pr-list b{flex:none;font-family:'Fraunces',serif;font-size:32px;font-weight:600;line-height:1;color:var(--gold-soft);font-variant-numeric:lining-nums tabular-nums}
  .pr-list em{flex:none;font-style:normal;font-size:13px;color:#cfd8cf}
  .pr-typ-note{margin-top:10px;max-width:none;padding-top:12px;border-top:1px solid var(--line-on-dark);font-size:15px;line-height:1.5;color:var(--ivory)}
  .pr-typ-note[hidden]{display:none}
  .pr-typ-note .pr-below{font-weight:500;color:#9edbaa}
  .pr-typ-note .pr-above{font-weight:500;color:#f4a493}
  .pr-edit-btn{margin-top:12px;padding:9px 18px;font:inherit;font-size:14.5px;color:var(--ivory);background:transparent;border:1px solid var(--gold);border-radius:2px;cursor:pointer}
  .pr-edit-btn:hover{background:rgba(184,146,74,.18)}
  .pr-edit-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .pr-edit-btn[hidden]{display:none}
  .pr-preview-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:12px}
  .pr-preview-actions .pr-edit-btn{margin-top:0}
  .pr-to-list{font-size:14.5px;color:var(--gold-soft);text-decoration:underline;text-decoration-color:var(--line-on-dark);text-underline-offset:3px}
  .pr-to-list:hover{color:var(--ivory)}
  .pr-to-list[hidden]{display:none}
  .pr-prices.is-preview .pr-lead b{color:var(--gold-soft)}
  .pr-prices.is-preview .pr-money summary{color:#cfd8cf;text-decoration-color:var(--line-on-dark)}
  .pr-prices.is-preview .pr-money summary:hover,.pr-prices.is-preview .pr-money[open] summary{color:var(--ivory)}
  .pr-prices.is-preview .pc-foot-calc{color:#cfd8cf}
  .pr-prices.is-preview .pc-foot-calc .pc-foot-total{color:var(--ivory);border-top-color:var(--line-on-dark)}
  .pr-prices.is-preview .pc-notes{color:#aebcb2}
  .pr-prices.is-preview .pr-nav{border-top-color:var(--line-on-dark)}
  .pr-prices.is-preview .pr-back{color:var(--ivory)}
  .pr-prices.is-preview .pr-back:hover{text-decoration-color:var(--ivory)}
  .pr-panel[hidden]{display:none}
  .pr-panel .ns-group-title:focus{outline:none}
  .pr-seg{margin-top:14px}
  .pr-seg + .pc-hint{margin-top:6px}
  .pr-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 20px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
  .pr-nav .cta{padding:11px 22px;font-size:15px}
  .pr-back,.pr-skip{padding:10px 0;font:inherit;font-size:14.5px;color:var(--forest);background:none;border:none;cursor:pointer;text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px}
  .pr-back{margin-right:auto}
  .pr-back:hover,.pr-skip:hover{text-decoration-color:var(--forest)}
  .pr-back:focus-visible,.pr-skip:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .pr-rows{margin-top:12px}
  .pr-head,.pr-row{display:grid;gap:6px 12px;align-items:center}
  .pr-head{padding-bottom:6px;border-bottom:1px solid var(--line);font-size:12.5px;line-height:1.25;color:var(--ink-soft);align-items:end}
  .pr-row{padding:9px 0;border-bottom:1px dashed var(--line)}
  .pr-rows[data-rows="1"] .pr-head,.pr-rows[data-rows="1"] .pr-row{grid-template-columns:minmax(0,1fr) 96px 32px}
  .pr-rows[data-rows="2"] .pr-head,.pr-rows[data-rows="2"] .pr-row{grid-template-columns:minmax(0,1fr) 170px}
  .pr-rows[data-rows="3"] .pr-head,.pr-rows[data-rows="3"] .pr-row{grid-template-columns:minmax(0,1fr) 150px}
  .pr-rows[data-rows="4"] .pr-row{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);padding:12px 0}
  .pr-rows[data-rows="5"] .pr-head,.pr-rows[data-rows="5"] .pr-row{grid-template-columns:minmax(0,1fr) 136px 140px;align-items:start}
  .pr-rows[data-rows="5"] .pr-row-name{padding-top:9px}
  .pr-row-name{min-width:0;font-size:15px;line-height:1.35;color:var(--ink);overflow-wrap:anywhere}
  .pr-cell{display:flex;flex-direction:column;gap:3px;min-width:0}
  .pr-cell-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .pr-mini{display:none;font-size:12px;color:var(--ink-soft)}
  .pr input[type=text]{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:400;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:8px 10px;width:100%;min-width:0}
  .pr input[type=text]:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
  .pr-unit{display:flex;align-items:center;gap:8px;min-width:0;font-size:14px;color:var(--ink-soft)}
  .pr-unit input{flex:1}
  .pr-price-wrap{display:flex;align-items:center;gap:6px}
  .pr .pr-price-wrap input{font-size:18px;font-weight:500;color:var(--forest)}
  .pr .pr-price-wrap input.is-fixed{border-color:var(--gold);background:#fffaf0}
  .pr-unfix{flex:none;width:28px;height:28px;padding:0;font:inherit;font-size:15px;line-height:1;color:var(--forest);background:#fff;border:1px solid var(--line);border-radius:2px;cursor:pointer}
  .pr-unfix:hover{border-color:var(--gold)}
  .pr-unfix:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
  .pr-price-note{font-size:12.5px;line-height:1.3;color:var(--ink-soft)}
  .pr-price-note.is-under{color:#2f6b4a}
  .pr-price-note.is-over,.pr-price-note.is-warn{color:#8c3b2e}
  .pr-c-typ{padding-top:9px;font-size:14.5px;color:var(--ink);font-variant-numeric:tabular-nums}
  .pr-c-typ small{display:block;font-size:12px;color:var(--ink-soft)}
  .pr-share-bar{margin-top:12px;padding:10px 12px 9px;background:#fff;border:1px solid var(--line)}
  .pr-share-track{height:8px;border-radius:999px;background:var(--ivory);overflow:hidden}
  .pr-share-track span{display:block;width:0;height:100%;border-radius:999px;background:var(--gold);transition:width .15s ease}
  .pr-share-bar p{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:6px;max-width:none;font-size:13px;line-height:1.45;color:var(--ink-soft);white-space:nowrap}
  .pr-share-bar .bp-link{font-size:13px}
  .pr-share-bar.is-full .pr-share-track span{background:#3f8a5c}
  .pr-share-bar.is-full #pr-share-text{font-weight:500;color:#2f6b4a}
  .pr-share{display:flex;align-items:center;gap:12px;min-width:0}
  .pr-share-num{flex:none;display:flex;align-items:center;gap:4px;font-size:14px;color:var(--ink-soft)}
  .pc .pr-share-num input{width:64px;padding:6px 8px;text-align:right}
  .pr-share-msg{grid-column:1 / -1;max-width:none;padding:6px 10px;font-size:13px;line-height:1.4;color:#8c3b2e;background:#fbf1ec;border-left:2px solid #8c3b2e}
  .pr-share-msg[hidden]{display:none}
  .pr .pr-slider{--thumb:22px;flex:1;min-width:0;height:8px;margin:0;padding:0;border:1px solid var(--line);border-radius:999px;outline:none;-webkit-appearance:none;appearance:none;background:linear-gradient(to right,var(--gold) 0 calc(var(--thumb) / 2 + (100% - var(--thumb)) * var(--v,0) / 100),#fff 0 calc(var(--thumb) / 2 + (100% - var(--thumb)) * var(--max,100) / 100),#e6dfcf 0 100%)}
  .pr-slider::-webkit-slider-thumb{box-sizing:border-box;width:var(--thumb);height:var(--thumb);border:2px solid #fff;border-radius:50%;background:var(--forest);box-shadow:0 0 0 1px var(--forest);cursor:pointer;-webkit-appearance:none;appearance:none}
  .pr-slider::-moz-range-thumb{box-sizing:border-box;width:var(--thumb);height:var(--thumb);border:2px solid #fff;border-radius:50%;background:var(--forest);box-shadow:0 0 0 1px var(--forest);cursor:pointer}
  .pr-slider::-moz-range-track{background:transparent}
  .pr-slider:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
  .pr-remove{width:32px;height:38px;padding:0;font:inherit;font-size:20px;line-height:1;color:var(--ink-soft);background:none;border:1px solid transparent;cursor:pointer}
  .pr-remove:hover{color:#8c3b2e;border-color:var(--line)}
  .pr-remove:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
  .pr-menu-foot{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;margin-top:12px;font-size:14px}
  .pr-menu-foot:empty{display:none}
  .pr-lead{margin-top:10px;max-width:none;font-size:15px;line-height:1.5;color:var(--ink)}
  .pr-summary{margin-top:14px}
  .pr-summary:empty{display:none}
  .pr-lead b{font-weight:500;color:var(--forest)}
  .pr-lead a,.pr-typ-note a,.pr .pc-notes a{color:inherit;text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px}
  .pr-prices.is-preview .pr-typ-note a,.pr-prices.is-preview .pc-notes a{color:var(--gold-soft);text-decoration-color:var(--line-on-dark)}
  .pr-money{margin-top:12px}
  .pr-money summary{cursor:pointer;width:max-content;font-size:14px;color:var(--forest);text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px}
  .pr-money summary:hover{text-decoration-color:var(--forest)}
  .pr-money .pc-foot-calc{max-width:340px;margin-top:8px;font-size:13.5px}
  .pr .pc-notes{margin-top:14px}
  @media (max-width:720px){
    .pr-seg legend{float:none;display:block;margin:0 0 6px}
    .pr-step-t{font-size:11px}
    .pr-rows[data-rows="1"] .pr-head,.pr-rows[data-rows="1"] .pr-row{grid-template-columns:minmax(0,1fr) 76px 32px}
    .pr-rows[data-rows="2"] .pr-head,.pr-rows[data-rows="2"] .pr-row{grid-template-columns:minmax(0,1fr) 140px}
    .pr-rows[data-rows="3"] .pr-head,.pr-rows[data-rows="3"] .pr-row{grid-template-columns:minmax(0,1fr) 120px}
    .pr-rows[data-rows="4"] .pr-row{grid-template-columns:minmax(0,1fr);gap:8px}
    .pr-rows[data-rows="5"] .pr-head{display:none}
    .pr-rows[data-rows="5"] .pr-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 12px;padding:12px 0}
    .pr-rows[data-rows="5"] .pr-row-name{grid-column:1 / -1;padding-top:0;font-weight:500}
    .pr-rows[data-rows="5"] .pr-mini{display:block}
    .pr-rows[data-rows="5"] .pr-c-typ{padding-top:0}
  }
  /* price list template (/guides/price-list-template/), built on .pc and .ns */
  .pl-topbar{margin-bottom:12px}
  .pl-import{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:12px;padding:12px 14px;background:#fffaf0;border:1px solid var(--gold-soft);border-left:3px solid var(--gold)}
  .pl-import[hidden]{display:none}
  .pl-import p{flex:1 1 260px;max-width:none;margin:0;font-size:14.5px;color:var(--ink)}
  .pl-import .cta{padding:9px 18px;font-size:14.5px}
  .pl-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
  .pl-form{display:grid;gap:14px;min-width:0}
  .pl-view{position:sticky;top:86px;min-width:0}
  .pl input[type=text]{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:400;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:8px 10px;width:100%;min-width:0}
  .pl input[type=text]:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
  .pl .pc-pair{margin-top:12px}
  .pl .pc-seg{margin-top:12px}
  .pl-logo-field{margin-top:12px}
  .pl-font{max-width:360px;margin-top:12px}
  .pl-colours{display:grid;gap:7px;margin-top:12px}
  .pl-colours-k{max-width:none;font-size:13.5px;color:var(--ink)}
  .pl-palettes{display:flex;flex-wrap:wrap;gap:6px}
  .pl-palette{display:inline-flex;align-items:center;gap:7px;padding:5px 10px 5px 6px;font:inherit;font-size:13px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:999px;cursor:pointer}
  .pl-palette:hover{border-color:var(--gold-soft)}
  .pl-palette[aria-pressed="true"]{border-color:var(--forest);box-shadow:inset 0 0 0 1px var(--forest)}
  .pl-palette:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .pl-palette.is-logo{border-style:dashed}
  .pl-swatch{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid rgba(23,37,30,.18);border-radius:999px}
  .pl-swatch i{display:block;width:10px;height:10px;border-radius:50%}
  .pl-colour{display:flex;align-items:center;gap:10px}
  .pl-colour label{flex:1;font-size:14px;color:var(--ink)}
  .pl input[type=color]{flex:none;width:42px;height:34px;padding:2px;border:1px solid var(--line);border-radius:2px;background:#fff;cursor:pointer}
  .pl input[type=color]:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
  .pl .pl-colour input[type=text]{flex:none;width:100px;font-variant-numeric:tabular-nums}
  .pl-colours .pc-hint{margin-top:2px}
  .pl-contrast{color:#8c3b2e}
  .pl-contrast[hidden]{display:none}
  .pl input.pb-file{font-size:13.5px;padding:6px 8px;background:#fff;color:var(--ink)}
  .pl .pb-logo-row[hidden]{display:none}
  .pl-opt{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:300;color:var(--ink-soft)}
  .pl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .pl-starter{max-width:280px;margin-top:10px}
  .pl-section{margin-top:14px;padding:10px 12px 12px;background:#fff;border:1px solid var(--line)}
  .pl-sec-head{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line)}
  .pl .pl-sec-head input{font-weight:500;color:var(--forest)}
  .pl-tools{display:flex;flex:none;gap:2px}
  .pl-tools button{width:30px;height:34px;padding:0;font:inherit;font-size:16px;line-height:1;color:var(--ink-soft);background:none;border:1px solid transparent;border-radius:2px;cursor:pointer}
  .pl-tools button:hover:not(:disabled){border-color:var(--line);color:var(--forest)}
  .pl-tools button:disabled{opacity:.3;cursor:default}
  .pl-tools button:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
  .pl-item{display:grid;gap:7px;padding:10px 0;border-bottom:1px dashed var(--line)}
  .pl-item-top{display:flex;align-items:center;gap:8px}
  .pl-item-top > input{flex:1}
  .pl-unit{display:inline-flex;align-items:center;gap:5px;font-size:13.5px;color:var(--ink-soft);white-space:nowrap}
  .pl .pl-unit input{width:78px}
  .pl-item-price{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
  .pl .pl-item-price .pc-seg{margin:0}
  .pl .pl-seg span{padding:5px 10px;font-size:13px}
  .pl .pl-len input{width:66px}
  .pl input.pl-desc{font-size:14px}
  .pl-addons{display:grid;gap:6px;padding-left:14px}
  .pl-addon{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--ink-soft)}
  .pl-addon > input{flex:1}
  .pl-addon button{flex:none;width:28px;height:32px;padding:0;font:inherit;font-size:16px;color:var(--ink-soft);background:none;border:1px solid transparent;cursor:pointer}
  .pl-addon button:hover{border-color:var(--line);color:#8c3b2e}
  .pl .pl-small{justify-self:start;font-size:13.5px}
  .pl-section > .bp-link{margin-top:10px;font-size:14px}
  .pl-add-section{margin-top:12px;font-size:14.5px}
  /* Notes stacks single fields, which have no spacing of their own (the paired ones get it from .pc-pair's gap) */
  .pl-notes > .pc-field,.pl .ns-group > .pc-check{margin-top:12px}
  .pl-notes .pc-field + .pc-hint{margin-top:5px}
  .pl-surcharge{padding:8px 10px;color:#8c3b2e;background:#fbf1ec;border-left:2px solid #8c3b2e}
  .pl-surcharge[hidden]{display:none}
  /* the pinned preview scrolls on its own once its pages are taller than the screen */
  .pl-preview{display:grid;gap:10px;justify-items:center;margin-top:12px;max-height:calc(100vh - 305px);overflow-y:auto;overscroll-behavior:contain;padding:2px 4px 6px}
  .pl-page{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100vh - 315px);box-shadow:0 1px 2px rgba(23,37,30,.12),0 6px 20px rgba(23,37,30,.10);border:1px solid var(--line)}
  .pl-pages{min-height:1.2em;text-align:center}
  .pl-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:10px}
  .pl-actions > span{display:inline-flex;flex-wrap:wrap;gap:8px 10px}
  .pl-actions > span[hidden]{display:none}
  .pl-actions .cta{padding:10px 20px;font-size:15px}
  .pl-btn{padding:9px 16px;font:inherit;font-size:14.5px;color:var(--forest);background:#fff;border:1px solid var(--forest);border-radius:2px;cursor:pointer}
  .pl-btn:hover{background:var(--forest);color:var(--ivory)}
  .pl-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .pl-btn[hidden]{display:none}
  .pl-plain{margin-top:10px;padding:10px 12px;max-height:240px;overflow:auto;font-size:13px;white-space:pre-wrap;background:#fff;border:1px solid var(--line)}
  .pl-plain[hidden]{display:none}
  .pl-credit{margin-top:10px}
  .pl-printout{display:none}
  @media print{
    body.pl-printing > *:not(.pl-printout){display:none !important}
    body.pl-printing .pl-printout{display:block !important}
    body.pl-printing .pl-printout img{display:block;width:210mm;height:297mm;break-after:page;page-break-after:always}
  }
  @media (max-width:900px){
    .pl-layout{grid-template-columns:minmax(0,1fr)}
    .pl-view{position:static}
    .pl-page{max-height:none}
    .pl-preview{max-height:none;overflow:visible}
  }
  @media (max-width:720px){
    .pl-section{padding:8px 9px 10px}
    .pl .pl-unit input{width:70px}
    .pl .pc-pair{grid-template-columns:minmax(0,1fr)}
    .pl-item-top{flex-wrap:wrap}
    .pl-item-top > input{flex:1 1 100%}
    .pl-item-top .pl-tools{margin-left:auto}
  }
  /* guides: visit notes for hair and beauty at home (builds on the .pc and .ns styles) */
  .hv-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
  .hv-form{display:grid;gap:14px;min-width:0}
  .hv-out{position:sticky;top:86px;min-width:0}
  /* the pinned notes scroll on their own once they're taller than the screen */
  .hv-out-box{max-height:calc(100vh - 106px);overflow-y:auto;overscroll-behavior:contain}
  .hv input[type=text]{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:400;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:8px 10px;width:100%;min-width:0}
  .hv input[type=text]:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold);background:#fff}
  .hv .ns-group > .pc-field,.hv .ns-group > .pc-check{margin-top:12px}
  .hv .ns-group-title + .pc-hint{margin-top:10px}
  .hv-chips{display:block;margin-top:14px}
  .hv-chips legend{float:none;display:block;margin:0 0 7px}
  .hv-chips .hv-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .hv-chips:has(.hv-sr){margin-top:10px}
  .hv-chip-row{display:flex;flex-wrap:wrap;gap:6px 8px}
  .hv-note{margin:10px 0 0;padding:14px 16px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);font-family:'DM Sans',sans-serif;font-size:14.5px;font-weight:300;line-height:1.5;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}
  .hv-note:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .hv-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:10px}
  .hv-actions .cta{padding:10px 20px;font-size:15px}
  .hv-sub{margin-top:18px;padding-top:12px;border-top:1px solid var(--line);font-size:21px;color:var(--forest)}
  .hv-list{list-style:none;margin:2px 0 0;padding:0}
  .hv-list .pc-check{margin-top:8px}
  .hv-list input:checked + span{color:var(--ink-soft);text-decoration:line-through;text-decoration-color:var(--gold-soft)}
  .hv-why{margin-left:3px;font-size:12.5px;color:var(--forest);white-space:nowrap;text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px}
  .hv-list input:checked + span .hv-why{display:none}
  .hv-jump{display:none;margin:0 0 12px;font-size:14px}
  .hv-jump a{color:var(--forest);text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px}
  .hv-printout{display:none}
  @media print{
    body.hv-printing > *:not(.hv-printout){display:none !important}
    body.hv-printing{background:#fff}
    body.hv-printing .hv-printout{display:block !important;max-width:170mm;margin:0 auto;color:#000;font-size:11.5pt;line-height:1.45}
    .hv-printout h1{font-size:22pt;max-width:none;margin:0 0 6mm}
    .hv-printout h2{font-size:15pt;max-width:none;margin:7mm 0 2mm;break-after:avoid}
    .hv-printout pre{font-family:'DM Sans',sans-serif;font-size:11pt;white-space:pre-wrap;margin:0;padding:4mm 5mm;border:1px solid #999}
    .hv-printout ul{list-style:none;margin:0;padding:0}
    .hv-printout li{position:relative;padding:1.2mm 0 1.2mm 8mm;break-inside:avoid}
    .hv-printout li::before{content:'';position:absolute;left:0;top:2mm;width:4mm;height:4mm;border:1px solid #000}
    .hv-print-foot{margin-top:9mm;font-size:9pt;color:#555}
  }
  @media (max-width:900px){
    .hv-layout{grid-template-columns:minmax(0,1fr)}
    .hv-out{position:static}
    .hv-out-box{max-height:none;overflow:visible}
    .hv-jump{display:block}
  }
  @media (max-width:720px){
    .hv .pc-pair{grid-template-columns:minmax(0,1fr)}
  }
  /* guides: bridal morning planner (builds on the pay calculator's .pc styles) */
  .bp-topbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:12px;padding:9px 12px;background:var(--ivory-soft);border:1px solid var(--line)}
  .bp-topbar .pc-hint{margin:0;flex:1 1 260px}
  .bp-start-over{flex:none;font:inherit;font-size:14px;color:var(--forest);background:#fff;border:1px solid var(--forest);border-radius:2px;padding:7px 14px;cursor:pointer}
  .bp-start-over:hover{background:var(--forest);color:var(--ivory)}
  .bp-start-over:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .bp-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto 1fr auto auto;grid-template-areas:"day who" "artists who" "result result" "sched sched";gap:14px;align-items:start}
  .bp-day{grid-area:day}
  .bp-who-group{grid-area:who}
  .bp-artists{grid-area:artists}
  .bp-layout>.bp-result{grid-area:result;margin-top:0}
  .bp-layout>.bp-schedule{grid-area:sched;margin-top:0}
  .bp-auto-note{margin:10px 0 2px}
  .bp-link{padding:0;font:inherit;color:var(--forest);background:none;border:none;text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px;cursor:pointer;text-align:left}
  .bp-link:hover{text-decoration-color:var(--forest)}
  .bp-link-dark{color:var(--ivory);text-decoration-color:var(--gold-soft)}
  .bp-link-dark:hover{text-decoration-color:var(--ivory)}
  .bp-group{border:1px solid var(--line);background:var(--ivory-soft);padding:14px 16px 16px;min-width:0}
  .bp-group-title{font-size:23px;color:var(--forest);padding-bottom:10px;border-bottom:1px solid var(--line)}
  .bp-span{grid-column:1/-1}
  .bp-people{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
  .bp-person{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr) 34px;gap:6px;align-items:center;padding:4px 0 9px;border-bottom:1px dashed var(--line);background:var(--ivory-soft)}
  .bp-person .bp-name{grid-column:1 / 3;grid-row:1}
  .bp-person .bp-remove{grid-column:3;grid-row:1 / 3}
  .bp-person .bp-role{grid-column:1;grid-row:2}
  .bp-person .bp-svc{grid-column:2;grid-row:2}
  .bp .bp-person input[type=text],.bp .bp-person select{height:40px}
  .bp-grip{display:flex;align-items:center;justify-content:center;align-self:stretch;width:26px;padding:0;border:none;border-radius:2px;background:none;cursor:grab;touch-action:none}
  .bp-grip span{width:10px;height:17px;background-image:radial-gradient(circle,#8f9892 1.6px,transparent 1.9px);background-size:5px 5.6px}
  .bp-grip:hover span{background-image:radial-gradient(circle,var(--forest) 1.6px,transparent 1.9px)}
  .bp-grip:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
  .bp-share{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
  .bp-text-btn{padding:0;font:inherit;font-size:14px;color:var(--forest);background:none;border:none;text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px;cursor:pointer}
  .bp-text-btn:hover{text-decoration-color:var(--forest)}
  .bp-text-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .bp-share button:disabled{opacity:.5;cursor:not-allowed}
  .bp .bp-person input[type=text],.bp input[type=time]{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:400;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:2px;padding:8px 10px;width:100%;min-width:0;font-variant-numeric:tabular-nums}
  .bp .bp-person input[type=text]:focus,.bp input[type=time]:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
  .bp input[type=time]:disabled{background:var(--ivory);color:var(--ink-soft);opacity:.6;cursor:not-allowed}
  .bp input[aria-invalid=true]{border-color:#9b2c2c;box-shadow:inset 0 0 0 1px #9b2c2c}
  .bp-opt{display:flex;align-items:center;cursor:pointer}
  .pc .bp-opt input[type=checkbox]{margin:0 7px 0 0}
  .bp-error{margin-top:12px;padding:8px 11px;border-left:3px solid #9b2c2c;background:#f8ebe7;color:#6e1f1f;font-size:13.5px;line-height:1.45}
  .bp-remove{width:34px;height:36px;padding:0;font:inherit;font-size:20px;line-height:1;color:var(--ink-soft);background:none;border:1px solid transparent;border-radius:2px;cursor:pointer}
  .bp-remove:hover{color:#8c3b2e;border-color:var(--line)}
  .bp-remove:focus-visible,.bp-add:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .bp-add{margin-top:10px;padding:7px 12px;font:inherit;font-size:14px;color:var(--forest);background:#fff;border:1px dashed var(--gold-soft);border-radius:2px;cursor:pointer}
  .bp-add:hover{border-style:solid}
  .bp-add:disabled{opacity:.5;cursor:not-allowed}
  .bp-result{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 32px;align-items:center;margin-top:14px;padding:22px 26px 20px;background:var(--forest);color:var(--ivory);border-top:3px solid var(--gold)}
  .bp-result p,.bp-result ul{max-width:none}
  .bp-k{grid-column:1;font-size:14px;letter-spacing:.05em;color:var(--gold-soft)}
  .bp-big{grid-column:1;font-family:'Fraunces',serif;font-size:clamp(52px,8vw,72px);font-weight:600;line-height:1;color:var(--gold-soft);font-variant-numeric:tabular-nums}
  .bp-with{grid-column:1;margin-top:4px;font-size:14px;color:#cfd8cf}
  .bp-facts{grid-column:2;grid-row:1 / span 3;display:grid;gap:4px;margin:0;padding:0 0 0 24px;list-style:none;border-left:1px solid var(--line-on-dark);font-size:15px;color:#cfd8cf}
  .bp-facts b{display:inline-block;min-width:74px;font-weight:500;color:var(--ivory);font-variant-numeric:tabular-nums}
  .bp-note{grid-column:1 / -1;margin-top:12px;padding-top:12px;border-top:1px solid var(--line-on-dark);font-size:14.5px;line-height:1.5;color:var(--gold-soft)}
  .bp-schedule{margin-top:14px;padding:16px 20px 14px;border:1px solid var(--line);background:#fff}
  .bp-schedule-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}
  .bp-schedule-head h3{font-size:22px;color:var(--forest)}
  .bp-event{display:flex;gap:12px;align-items:baseline;padding:8px 0;border-top:1px solid var(--line);font-size:14.5px;color:var(--ink-soft)}
  .bp-event .bp-t{flex:none;min-width:74px;font-weight:500;color:var(--forest);font-variant-numeric:tabular-nums}
  .bp-event .bp-l{min-width:0}
  .bp .bp-event input.bp-edit{width:auto;min-width:0;margin:-3px 0;padding:2px 5px;font:inherit;font-size:14.5px;font-weight:500;color:var(--forest);background:var(--ivory-soft);border:1px dashed var(--gold);border-radius:3px;cursor:pointer}
  .bp .bp-event input.bp-edit:hover{border-style:solid}
  .bp-x{margin-left:auto;padding:0 4px;font:inherit;font-size:18px;line-height:1;color:var(--ink-soft);background:none;border:none;cursor:pointer}
  .bp-x:hover{color:var(--forest)}
  .bp-x:focus-visible,.bp-add-ev:focus-visible,.bp-link:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .bp-event.is-spare .bp-l{font-style:italic}
  .bp-spare-bar,.bp-key.is-spare{flex:none;align-self:center;height:10px;border-radius:999px;border:1px solid var(--gold-soft);background:repeating-linear-gradient(45deg,var(--gold-soft) 0 3px,transparent 3px 7px)}
  .bp-adds{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0 2px;border-top:1px solid var(--line)}
  .bp-add-ev{padding:5px 10px;font:inherit;font-size:13.5px;color:var(--forest);background:#fff;border:1px dashed var(--gold-soft);border-radius:2px;cursor:pointer}
  .bp-add-ev:hover{border-style:solid}
  .bp-edit-hint{margin:0 0 8px}
  .bp-event.is-artist{padding-left:8px;padding-right:4px;background:var(--ivory-soft)}
  .bp-event.is-block,.bp-event.is-spare{flex-wrap:wrap;row-gap:4px}
  .bp-event.is-spare .bp-l,.bp-mins-wrap{white-space:nowrap}
  .bp-mins-wrap{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--ink-soft)}
  .is-block .bp-mins-wrap{margin-left:auto}
  .bp .bp-event input.bp-mins{width:4.6em;min-width:0;padding:2px 5px;font:inherit;font-size:14px;font-weight:500;color:var(--forest);background:var(--ivory-soft);border:1px dashed var(--gold);border-radius:3px}
  .bp .bp-event input.bp-mins:focus{outline:2px solid var(--gold);outline-offset:1px;border-style:solid;background:#fff}
  .bp .bp-event input.bp-bname{width:15em;max-width:100%;min-width:0;padding:0 2px;font:inherit;color:var(--ink);background:transparent;border:none;border-bottom:1px dashed var(--gold);border-radius:0}
  .bp .bp-event input.bp-bname::placeholder{color:var(--ink-soft);opacity:1}
  .bp .bp-event input.bp-bname:focus{outline:2px solid var(--gold);outline-offset:1px;background:#fff}
  .bp .bp-event input[aria-invalid=true]{border-color:#9b2c2c;border-style:solid;box-shadow:inset 0 0 0 1px #9b2c2c}
  .bp-way{padding:1px 8px;font:inherit;font-size:12px;color:var(--forest);background:none;border:1px solid var(--line);border-radius:999px;cursor:pointer}
  .bp-way:hover{border-color:var(--gold-soft)}
  .bp-way:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .bp-inline-error{margin:2px 0 8px}
  .bp-back-row{margin:0 0 8px}
  .bp-back-row .bp-link{font-size:14px}
  .bp-event.is-last{font-weight:500;color:var(--ink)}
  .bp-row{display:grid;grid-template-columns:26px minmax(0,1fr) minmax(0,1.4fr);gap:6px 12px;align-items:center;padding:9px 0;border-top:1px solid var(--line);background:#fff}
  .bp-row .bp-grip{height:34px}
  .bp-row.is-dragging{position:relative;z-index:2;user-select:none;box-shadow:0 8px 22px rgba(16,42,32,.18);outline:1px solid var(--gold-soft)}
  .bp-row.is-dragging .bp-grip{cursor:grabbing}
  .bp-swap{justify-self:start;margin-top:4px;padding:1px 8px;font:inherit;font-size:12.5px;color:var(--forest);background:var(--ivory-soft);border:1px solid var(--line);border-radius:999px;cursor:pointer}
  .bp-swap:hover{border-color:var(--gold-soft)}
  .bp-swap:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
  .bp-track[data-swap]{cursor:pointer}
  .bp-who{display:grid;gap:1px;min-width:0}
  .bp-who b{font-size:15px;font-weight:500;color:var(--ink)}
  .bp-tiara{display:inline-block;width:19px;height:13px;margin-left:6px;color:var(--gold);vertical-align:-1px}
  .bp-star{width:14px;height:14px;vertical-align:-2px}
  .bp-who span{font-size:13px;color:var(--ink-soft);font-variant-numeric:tabular-nums}
  .bp-track{position:relative;height:14px;border-radius:999px;background:var(--ivory)}
  .bp-bar{position:absolute;top:0;bottom:0;display:block;overflow:hidden;padding:0 4px;border-radius:999px;font-size:10px;font-weight:500;line-height:14px;text-align:center;white-space:nowrap;text-overflow:ellipsis;color:var(--ink)}
  .bp-chip{display:inline-block;margin-right:6px;padding:0 7px;border-radius:999px;font-size:11px;font-weight:500;font-style:normal;line-height:17px;vertical-align:1px;background:var(--gold);color:var(--ink)}
  .bp-chip.is-hair.is-a2{background:#dcbd7e}
  .bp-chip.is-hair.is-a3{background:#8a6828;color:var(--ivory)}
  .bp-chip.is-makeup{background:var(--forest);color:var(--ivory)}
  .bp-chip.is-makeup.is-a2{background:#4b8065}
  .bp-chip.is-makeup.is-a3{background:#8fb39e;color:var(--ink)}
  .bp .bp-event input.bp-aname{width:auto;min-width:0;max-width:100%;margin:0 1px 0 0;padding:0 2px;font:inherit;color:var(--ink);background:transparent;border:none;border-bottom:1px dashed var(--gold);border-radius:0}
  .bp .bp-event input.bp-aname::placeholder{color:var(--ink-soft);opacity:1}
  .bp .bp-event input.bp-aname:focus{outline:2px solid var(--gold);outline-offset:1px;background:#fff}
  .bp-bar.is-hair,.bp-key.is-hair{background:var(--gold)}
  .bp-bar.is-makeup,.bp-key.is-makeup{background:var(--forest)}
  .bp-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:10px;font-size:12.5px;color:var(--ink-soft)}
  .bp-key{display:inline-block;width:14px;height:8px;margin-left:8px;border-radius:999px}
  .bp-key-item{display:inline-flex;align-items:center;gap:6px}
  .bp-key-item .bp-key{margin-left:0}
  .bp-bar.is-hair.is-a2,.bp-key.is-hair.is-a2{background:#dcbd7e}
  .bp-bar.is-hair.is-a3,.bp-key.is-hair.is-a3{background:#8a6828;color:var(--ivory)}
  .bp-bar.is-makeup{color:var(--ivory)}
  .bp-bar.is-makeup.is-a2,.bp-key.is-makeup.is-a2{background:#4b8065}
  .bp-bar.is-makeup.is-a3,.bp-key.is-makeup.is-a3{background:#8fb39e;color:var(--ink)}
  .bp-order-note{margin:0 0 10px;padding:8px 11px;border-left:3px solid var(--gold-soft);background:var(--ivory-soft);font-size:13.5px;line-height:1.5;color:var(--ink-soft)}
  .bp-warn{margin-top:12px;padding:8px 11px;border-left:3px solid #b07a1f;background:#fbf3e2;color:#5c3f0c;font-size:13.5px;line-height:1.45}
  .bp-plain{margin-top:10px;padding:10px 12px;border:1px solid var(--line);background:var(--ivory-soft);font-size:13px;white-space:pre-wrap}
  @media (max-width:720px){

    .bp-layout{grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:"day" "who" "result" "sched" "artists";gap:10px}
    .bp-group{padding:12px 13px 14px}
    .bp-result{grid-template-columns:1fr;padding:20px 18px 18px}
    .bp-facts{grid-column:1;grid-row:auto;margin-top:10px;padding:12px 0 0;border-left:none;border-top:1px solid var(--line-on-dark)}
    .bp-schedule{padding:14px 14px 12px}
    .bp-row{grid-template-columns:26px minmax(0,1fr)}
    .bp-row .bp-grip{grid-row:1 / span 2}
    .bp-row .bp-track{grid-column:2}
  }
  @media (max-width:720px){
    .ns-layout{grid-template-columns:1fr;gap:10px}
    .ns-inputs{gap:10px}
    .ns-group{padding:12px 13px 14px}
    .ns-result{padding:20px 18px 18px}
  }
  @media (max-width:520px){
    .guide-meta{flex-direction:column;gap:2px}
    .guide-meta span + span::before{content:none}
  }
  @media (max-width:720px){
    .prose .toc ol{columns:1}
    .suits{grid-template-columns:1fr}
  }

  footer{background:var(--forest-deep);color:#9faea4;padding:36px 0 50px;border-top:1px solid var(--line-on-dark)}
  .foot{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;font-size:14px}
  .foot a{color:var(--gold-soft);text-decoration:none}
  .foot .copy{white-space:nowrap}
  @media (max-width:520px){.foot .sep{display:none}.foot .copy{display:block}}

  @media (max-width:720px){
    .home-hero--bg .hero-bg-img{opacity:.62;filter:saturate(1.25) sepia(.38) brightness(1.05);object-position:65% 40%;-webkit-mask-image:linear-gradient(100deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.45) 38%,#000 92%);mask-image:linear-gradient(100deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.45) 38%,#000 92%)}
    .home-hero--bg::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(16,42,32,.55) 0%,rgba(16,42,32,.2) 42%,rgba(16,42,32,0) 68%)}
    .doors,.cols,.asks,.teasers{grid-template-columns:1fr;gap:20px}
    .cols,.teasers{gap:32px}
    .row2{grid-template-columns:1fr}
    section{padding:52px 0}
    .navlinks{gap:16px;font-size:14px}
  }
  .navlinks a{white-space:nowrap}
  /* the top bar on phones: the name and the three links have to share one line without touching */
  .navin{gap:14px}
  .brand{flex:none}
  @media (max-width:480px){
    .navin{padding:14px 18px}
    .brand{font-size:22px}
    .navlinks{gap:13px;font-size:13.5px}
  }
  @media (max-width:340px){
    .navin{padding:14px 14px;gap:10px}
    .brand{font-size:20px}
    .navlinks{gap:10px;font-size:12.5px}
  }
  @media (prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}
