@font-face{font-family:BuNotza;src:url("/assets/buNotza-2.0-Regular.woff2") format("woff2");font-display:swap}
:root{color-scheme:light;--paper:#f7f3e9;--ink:#193e34;--sub:#466155;--line:#d5d9cb;--card:#fcfaf4;--accent:#ecd5a1}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.65 Rubik,Arial,sans-serif}
a{color:inherit}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #8a6126;outline-offset:4px}
img,svg{display:block;max-width:100%}h1,h2,p{margin:0;text-wrap:pretty}h1,h2{text-wrap:balance}
.wrap{width:min(1120px,100% - 48px);margin-inline:auto}
.site-head{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:82px;border-bottom:1px solid var(--line)}
.site-brand{display:grid;align-content:center;min-height:44px}.site-brand img{width:140px;height:auto}
.menu{position:relative}.menu summary{list-style:none;width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;cursor:pointer}.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;z-index:2;inset-inline-end:0;top:54px;width:min(250px,calc(100vw - 48px));background:var(--card);border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:0 16px 44px #193e341a}
.menu nav a{display:flex;align-items:center;min-height:44px;padding:5px 12px;text-decoration:none}.menu nav a:hover,.menu nav a:focus-visible{background:#e8ece2;border-radius:9px}
.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(36px,7vw,106px);padding-block:clamp(44px,9vw,125px) clamp(32px,6vw,78px)}
.eyebrow{font-size:.82rem;font-weight:600;color:var(--sub);margin-block-end:14px}
h1{font:400 clamp(46px,7vw,93px)/.95 BuNotza,Rubik,Arial,sans-serif;letter-spacing:-.025em}.subtitle{display:block;font:500 clamp(23px,3vw,35px)/1.28 Rubik,Arial,sans-serif;margin-block-start:9px;letter-spacing:0}
.lead{margin-block:23px 10px;font-size:clamp(19px,2.4vw,24px);font-weight:600}.copy{max-width:35ch;color:var(--sub)}
.actions{display:flex;align-items:center;gap:4px 18px;flex-wrap:wrap;margin-block-start:25px}
.primary{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:9px 22px;border:1px solid var(--ink);border-radius:100px;background:var(--ink);color:#fffaf0;text-decoration:none;font:500 16px/1.4 Rubik,Arial,sans-serif;text-align:center}
.primary:hover{background:#2c5549}.secondary{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:.88rem;text-underline-offset:4px}
.art{position:relative;display:grid;place-items:center;min-height:clamp(270px,38vw,460px);isolation:isolate;overflow:hidden;padding:20px;border-radius:110px 26px 110px 26px;background:radial-gradient(ellipse at 51% 52%,#3f6554 0,#234c3e 49%,#14362f 83%);color:#fff5d8}
.art>svg{position:absolute;width:min(90%,390px);height:100%;inset:0;margin:auto;z-index:-1}.art-center{text-align:center}.art-number{font:400 clamp(78px,12vw,158px)/.8 BuNotza,Rubik,Arial,sans-serif;direction:ltr}.art-caption{font-size:.92rem;margin-block-start:15px}
.fields{display:flex;justify-content:space-between;gap:12px;list-style:none;padding:16px 0 18px;margin:0;border-block:1px solid var(--line);font-size:.9rem}.fields li{display:flex;align-items:center;gap:9px}.fields svg{width:26px;height:24px;flex:none}
.footer{display:flex;gap:10px 24px;justify-content:space-between;flex-wrap:wrap;align-items:center;color:var(--sub);font-size:.8rem;padding-block:18px}
.back{display:inline-flex;align-items:center;min-height:44px;font-size:.88rem;text-underline-offset:4px}.start{padding-block:22px 44px}.start-grid{display:grid;grid-template-columns:1.25fr .85fr;align-items:start;gap:clamp(26px,7vw,100px);padding-top:23px}.intro{margin-block:15px 20px;max-width:42ch;color:var(--sub)}.stages{list-style:none;padding:0;margin:0}.stages li{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.stages strong{min-width:58px}.stages span{color:var(--sub)}
.purchase{padding:clamp(21px,4vw,38px);background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 38px #193e3409}.purchase h2{font:400 clamp(30px,4vw,48px)/1.05 BuNotza,Rubik,Arial,sans-serif}.purchase .price{font-size:1.5rem;font-weight:600;margin-block:14px 4px}.purchase .copy{font-size:.92rem}.purchase .primary{margin-block:16px 8px;width:100%}.purchase .primary[disabled]{opacity:.66;cursor:default}.preview-note{font-size:.8rem;color:var(--sub)}.returning{margin-block-start:14px;padding-block-start:12px;border-top:1px solid var(--line)}.returning summary{min-height:44px;display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.93rem}.returning summary::before{content:"+"}.returning[open] summary::before{content:"−"}.returning p{font-size:.86rem;color:var(--sub)}
@media(max-width:710px){.wrap{width:calc(100% - 36px)}.site-head{min-height:67px}.site-brand img{width:115px}.hero,.start-grid{grid-template-columns:1fr}.hero{gap:25px;padding-block:26px 23px}.art{min-height:195px;border-radius:65px 18px 65px 18px;grid-row:2}.art-number{font-size:88px}.art-caption{margin-block-start:10px}.art>svg{width:60%}.eyebrow{margin-block-end:9px}.lead{margin-block:15px 5px}.actions{margin-block-start:16px}.fields{padding-block:10px;font-size:.79rem;gap:5px}.fields li{gap:5px}.fields svg{width:20px}.start{padding-block:8px 25px}.start-grid{padding-top:12px}.footer{padding-block:12px}}
.start .eyebrow{font:400 clamp(25px,4vw,37px)/1.12 BuNotza,Rubik,Arial,sans-serif}
.start h1{font:600 clamp(21px,2.4vw,32px)/1.25 Rubik,Arial,sans-serif;letter-spacing:0}
[hidden]{display:none!important}
.outline-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:9px 20px;border:1px solid #8eaa9c;border-radius:100px;background:transparent;color:var(--ink);text-decoration:none;font:500 16px/1.4 Rubik,Arial,sans-serif;text-align:center}
.outline-button:hover{background:#e8ece2}
.invite-actions{gap:9px}.invite-gift{margin-block:18px 10px;padding:12px 15px;border-inline-start:3px solid #8eaa9c;background:#e8ece2;border-radius:8px;font-weight:500}
.invite-card-note,.invite-status,.invite-payment{font-size:.88rem;color:var(--sub);margin-block-start:9px}
.invite-status:empty{display:none}
.purchase h2{margin-block-end:12px}
.invite-form{margin-block-start:16px}
.invite-form label{display:block;font-size:.9rem;font-weight:500;margin-block:10px 3px}
.invite-form input{display:block;width:100%;min-height:47px;padding:8px 12px;border:1px solid #8eaa9c;border-radius:9px;background:#fffdf8;color:var(--ink);font:inherit;direction:ltr}
.invite-form input:focus-visible{outline:2px solid #8a6126;outline-offset:2px}
.invite-form .outline-button{margin-block:12px 3px}
#voice-gift-checkout dl{display:grid;grid-template-columns:1fr auto;gap:8px 12px;margin-block:14px 4px}
#voice-gift-checkout dd{margin:0;text-align:end;white-space:nowrap}
@media(max-width:420px){.invite-actions>*{flex:1;min-width:135px;font-size:14px;padding-inline:10px}}
.voice-landing{grid-template-columns:1fr;justify-items:center;text-align:center}
.voice-landing .copy{margin-inline:auto}
.voice-landing .invite-actions,.voice-tools{display:flex;justify-content:center}
.voice-tools{gap:14px;align-items:center;margin-block-start:14px}
.voice-tools a{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:44px;min-height:44px;font-size:.85rem;text-decoration:none}
.voice-tools img{object-fit:contain}

.start-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:clamp(18px,4vw,44px)}
.start-grid .purchase{min-width:0}
.journey-overview .intro{max-width:none}
.registration-steps{margin-block:14px 18px;padding-inline-start:1.4em}
.registration-steps li+li{margin-block-start:6px}
.launch-price{border-top:1px solid var(--line);margin-block-start:18px;padding-block-start:14px}
.launch-price h3{margin:0 0 4px;font-size:1rem}
.launch-price .primary{margin-block-end:0}
@media(max-width:710px){.start-grid{grid-template-columns:1fr}}

@media (max-width: 710px) {
  .voice-landing, .start-grid { font-size: 16px; line-height: 1.5; }
  .voice-landing { padding-block: 20px 8px; }
  .voice-landing h1 { font-size: clamp(36px, 10vw, 54px); }
  .voice-landing .eyebrow { margin-block-end: 6px; }
  .voice-landing .subtitle { margin-block-start: 4px; }
  .voice-landing .lead { display: none; }
  .voice-landing .copy { max-width: 40ch; margin-block-start: 12px; }
  .voice-landing .actions { margin-block-start: 12px; }
  .voice-tools { margin-block-start: 4px; }
  .start-grid { gap: 10px; padding-block-start: 4px; }
  .start-grid .purchase { padding: 14px; border-radius: 16px; }
  .start-grid .eyebrow, .start-grid .purchase h2 { margin-block-end: 6px; }
  .start-grid .intro, .start-grid .registration-steps { margin-block: 8px; }
  .start-grid .invite-form { margin-block-start: 8px; }
  .start-grid .launch-price { margin-block-start: 12px; padding-block-start: 10px; }
  .start-grid .launch-price .primary { margin-block-start: 8px; }
}

.voice-tools .voice-draw { flex-direction: column; gap: 4px; text-align: center; }
.voice-draw img { flex: none; }

.voice-landing-page {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.voice-landing-page main {
  display: flex;
  flex: 1;
  flex-direction: column;
}
.voice-landing-page .voice-tools {
  flex: 1;
  flex-wrap: wrap;
  align-content: center;
  margin-block: 0;
  padding-block: 22px;
}
@media (max-width: 710px) {
  .voice-landing-page .voice-tools { padding-block-end: 62px; }
}
.voice-landing .copy { line-height: 1.7; }
.voice-landing .invite-actions { margin-block-start: 22px; }
.voice-landing #voice-start {
  flex: 0 1 auto;
  min-width: 0;
  min-height: 44px;
  padding: 7px 19px;
  font-size: .9rem;
}

.voice-card-spread { display: none; }

@media (min-width: 711px) {
  .voice-landing-page main {
    position: relative;
    isolation: isolate;
    justify-content: center;
    overflow: hidden;
    margin-block: 28px 0;
    border: 1px solid var(--line);
    border-radius: 28px;
    background: #fcfaf499;
  }
  .voice-landing {
    padding: clamp(38px, 5vw, 70px) 24px 0;
  }
  .voice-landing h1 { font-size: clamp(80px, 10vw, 134px); }
  .voice-landing .subtitle { font-size: clamp(32px, 4vw, 49px); }
  .voice-landing .copy {
    max-width: 42ch;
    margin-block-start: 16px;
    font-size: clamp(21px, 1.9vw, 26px);
  }
  .voice-landing #voice-start {
    min-height: 52px;
    padding-inline: 30px;
    font-size: 1rem;
  }
  .voice-landing-page .voice-tools {
    flex: none;
    padding-block: 24px 32px;
  }
  .voice-tools .voice-draw { font-size: 1rem; }
  .voice-draw img { width: 90px; height: 90px; }
}

@media (min-width: 1024px) {
  .voice-card-spread {
    display: block;
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    opacity: .43;
    mask-image: radial-gradient(ellipse 38% 54% at 50% 63%, #0002 36%, #0006 68%, #000 100%);
  }
  .voice-card-spread span {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: clamp(104px, 12%, 154px);
    aspect-ratio: 2 / 3;
    background: var(--card) center / contain no-repeat;
    border-radius: 7px;
    box-shadow: 0 6px 16px #193e342b;
    transform: translate(-50%, -50%) rotate(var(--angle));
  }
}

.voice-entry-page :is(.intro, .registration-steps li, #voice-join-offer > p) {
  text-wrap: pretty;
}
@media (max-width: 710px) {
  .voice-entry-page .start-grid { font-size: .94rem; }
  .voice-entry-page .registration-steps li { text-wrap: balance; }
}
.voice-entry-page #voice-return-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-block-start: 8px;
}
@media (min-width: 1024px) {
  .voice-entry-page .start-grid {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 34px;
    border: 1px solid var(--line);
    border-radius: 28px;
  }
  .voice-entry-page .start-grid .purchase { background: #fcfaf4ed; }
  .voice-entry-page .voice-card-spread { mask-image: none; }
}
