@import "https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Instrument+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";
:root{--blue-900:#0a1f4d;--blue-800:#0d2e6e;--blue-700:#0a4fb8;--blue-peak:#0956c9;--blue:#066cf4;--gold-300:#ebdcb8;--gold-lift:#e0c88f;--gold:#c6a969;--ink:#162033;--mute:#dce7fb;--mute-2:#b9cff5;--edge:#ffffff29;--electric:#1c6fe0;--electric-soft:#1c6fe08c;--serif:"Instrument Serif",Georgia,serif;--sans:"Instrument Sans",system-ui,-apple-system,sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;--ease:cubic-bezier(.23,1,.32,1)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(ellipse 70% 38% at 12% -2%, #03091a99, transparent 62%), radial-gradient(ellipse 64% 42% at 92% 18%, #145ac847, transparent 66%), radial-gradient(ellipse 62% 34% at 8% 98%, #03091a8c, transparent 62%), radial-gradient(ellipse 55% 22% at 18% 5%, #ebdcb80f, transparent 60%), radial-gradient(ellipse 60% 26% at 82% 90%, #ffffff08, transparent 60%), linear-gradient(180deg, var(--blue-900) 0%, var(--blue-800) 28%, var(--blue-peak) 52%, var(--blue-800) 78%, var(--blue-900) 100%);color:#e7eefb;font-family:var(--sans);-webkit-font-smoothing:antialiased;background-attachment:fixed;min-height:100vh;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}h1,h2{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-weight:400}h1 i,h2 i{color:var(--gold-300);font-style:italic}nav{z-index:60;padding:0 1rem;position:fixed;top:1rem;left:0;right:0}.nvin{-webkit-backdrop-filter:blur(20px);background:#08132e8c;border-radius:100px;align-items:center;gap:1rem;max-width:34rem;margin:0 auto;padding:.625rem .625rem .625rem 1.5rem;display:flex;box-shadow:inset 0 0 0 1px #ffffff24,inset 0 1px #ffffff14,0 16px 40px -18px #02061499}.brand{font-family:var(--serif);white-space:nowrap;color:#fff;letter-spacing:-.01em;font-size:1.5rem}.brand i{color:var(--gold-300);font-style:italic}.nvin .btn{white-space:nowrap;flex:none;gap:.375rem;width:auto;margin-left:auto;padding:.625rem 1.125rem;font-size:.8125rem}@media (max-width:420px){.nvin{gap:.5rem;padding:.5rem .5rem .5rem 1.125rem}.brand{font-size:1.125rem}.btn-sm{padding:.5625rem .875rem;font-size:.75rem}}.wrap{max-width:34rem;margin:0 auto;padding:7rem 1.5rem 3rem;position:relative}.h1{z-index:1;font-family:var(--serif);letter-spacing:-.008em;text-align:center;color:#fff;margin:0 0 1.125rem;font-size:clamp(1.75rem,6vw,2.5rem);font-weight:400;line-height:1.15;position:relative}.h1 i{color:var(--gold-300);font-style:italic}.lede{z-index:1;font-family:var(--serif);color:var(--mute);text-align:center;max-width:28rem;margin:0 auto 2rem;font-size:1rem;font-style:italic;line-height:1.5;position:relative}.card{z-index:1;transition:background 1.1s var(--ease), box-shadow 1.1s var(--ease);background:linear-gradient(160deg,#ffffff47 0%,#ffffff0d 40%,#c6a96966 100%);border-radius:20px;margin-bottom:1.5rem;padding:1px;position:relative;box-shadow:0 0 #1c6fe000}.card.in-view{background:linear-gradient(160deg, #4696e68c 0%, #1c6fe02e 45%, var(--electric) 100%);box-shadow:0 0 46px 4px #1c6fe061,0 0 0 1px #1c6fe080}@media (prefers-reduced-motion:reduce){.card{transition:none}}.card>.in{-webkit-backdrop-filter:blur(22px)saturate(1.5);background:linear-gradient(135deg,#96c3ff29 0%,#96c3ff04 32%,#96c3ff1a 58%,#96c3ff05 100%),#4696e609;border-radius:19px;padding:1.75rem 1.5rem;box-shadow:inset 0 1px #ffffff52,inset 0 -1px #0000001f}.field{margin-bottom:1.125rem}.field label{color:#fff;margin-bottom:.4375rem;font-size:.8125rem;font-weight:600;display:block}.field .opt{color:var(--mute-2);font-size:.75rem;font-weight:400}.field input,.field select,.field textarea{width:100%;font-family:var(--sans);color:#fff;box-shadow:inset 0 0 0 1px var(--edge);transition:box-shadow .3s var(--ease), background .3s var(--ease);background:#ffffff12;border:0;border-radius:12px;padding:.8125rem .9375rem;font-size:1rem}.field textarea{resize:vertical;min-height:5rem}.field input::placeholder,.field textarea::placeholder{color:#e7eefb66}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:inset 0 0 0 2px var(--electric), 0 0 20px 2px var(--electric-soft);background:#1c6fe014;outline:none}.field input:valid:not(:placeholder-shown):not(:focus),.field select:valid:not(:focus),.field textarea:not(:placeholder-shown):not(:focus){box-shadow:inset 0 0 0 1.5px #1c6fe0a6,0 0 10px 1px #1c6fe038}.field select option{background:var(--blue-900);color:#fff}.consent{box-shadow:inset 0 0 0 1px var(--edge);color:var(--mute);transition:box-shadow .3s var(--ease), background .3s var(--ease);background:#ffffff0f;border-radius:12px;align-items:flex-start;gap:.75rem;margin:1.25rem 0 1.5rem;padding:1rem;font-size:.8125rem;line-height:1.5;display:flex}.consent:has(input:checked){background:#1c6fe01a;box-shadow:inset 0 0 0 1.5px #1c6fe0a6,0 0 14px 2px #1c6fe040}.consent input{width:1.0625rem;height:1.0625rem;accent-color:var(--electric);flex:none;margin-top:.1875rem}.btn{width:100%;font-family:var(--sans);cursor:pointer;color:#fff;transition:box-shadow .16s, filter .16s, transform .16s var(--ease), opacity .16s;background:linear-gradient(#fff3 0%,#ffffff0d 48%,#fff0 52%),linear-gradient(#4577d8 0%,#2d61c6 55%,#214fae 100%);border:0;border-radius:22px;justify-content:center;align-items:center;gap:.5rem;padding:1rem 1.5rem;font-size:1rem;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #ffffff73,inset 0 -3px 8px #05195f73,0 0 0 1px #6496eb8c,0 10px 24px -8px #0a2882bf,0 0 20px #3269e166}.btn:disabled{opacity:.6;cursor:default}.btn:not(:disabled):hover{filter:brightness(1.04);box-shadow:inset 0 1px #ffffff8c,inset 0 -3px 8px #05195f73,0 0 0 1px #82aff5bf,0 12px 28px -8px #0a2882d9,0 0 30px #3c73e68c}.err{color:#ffd9d4;background:#c0392b29;border-radius:10px;margin-bottom:1.25rem;padding:.75rem .9375rem;font-size:.8125rem;box-shadow:inset 0 0 0 1px #c0392b80}.rk{text-align:center;background:#c6a96924;border-radius:12px;margin:0 0 1.5rem;padding:.75rem .9375rem;box-shadow:inset 0 0 0 1px #c6a96966}.rk b{color:#fff;font-size:.75rem;font-weight:600;line-height:1.45;display:block}.fin{border-top:1px solid var(--edge);text-align:center;margin-top:1rem;padding-top:1.25rem}.fin p{color:var(--mute-2);margin:0 0 .5rem;font-size:.6875rem;line-height:1.55}.done{text-align:center;padding:2rem 0}.done .tick{width:3.5rem;height:3.5rem;color:var(--gold-300);background:#c6a96929;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.25rem;font-size:1.5rem;display:flex;box-shadow:inset 0 0 0 1px #c6a96980}.types{z-index:1;grid-template-columns:1fr 1fr;gap:.75rem;margin:0 0 1.5rem;display:grid;position:relative}@media (max-width:480px){.types{grid-template-columns:1fr}}.type{text-align:left;cursor:pointer;color:#fff;font-family:var(--sans);box-shadow:inset 0 0 0 1px var(--edge);transition:box-shadow .3s var(--ease), background .3s var(--ease);background:#ffffff0f;border:0;border-radius:16px;padding:1rem 1.125rem}.type .tl{font-family:var(--serif);margin-bottom:.25rem;font-size:1.25rem;display:block}.type .tb{color:var(--mute-2);font-size:.8125rem;line-height:1.45;display:block}.type:hover{background:#ffffff17}.type.on{box-shadow:inset 0 0 0 1.5px var(--electric), 0 0 18px 2px #1c6fe04d;background:#1c6fe024}.days,.slots{flex-wrap:wrap;gap:.5rem;display:flex}.chip{cursor:pointer;font-family:var(--sans);color:#fff;box-shadow:inset 0 0 0 1px var(--edge);transition:box-shadow .2s var(--ease), background .2s var(--ease);background:#ffffff12;border:0;border-radius:100px;padding:.5rem .875rem;font-size:.875rem;font-weight:600}.chip:hover{background:#ffffff1f}.chip.on{background:linear-gradient(180deg,var(--gold-300),var(--gold-lift) 45%,var(--gold));color:var(--ink);box-shadow:none}.muted{color:var(--mute-2);margin:0;font-size:.875rem}.picked{font-family:var(--serif);color:var(--gold-300);border-top:1px solid var(--edge);margin:0 0 1.125rem;padding-top:1rem;font-size:1.0625rem;font-style:italic}.wrap-wide{max-width:44rem}.cal{grid-template-columns:minmax(0,17rem) minmax(0,1fr);gap:1.5rem;display:grid}@media (max-width:640px){.cal{grid-template-columns:1fr}}.cal-month{box-shadow:inset 0 0 0 1px var(--edge);background:#ffffff0d;border-radius:16px;align-self:start;padding:1rem}.cal-head{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.cal-title{font-family:var(--serif);color:#fff;font-size:1.125rem}.cal-nav button{color:var(--gold-300);cursor:pointer;background:0 0;border:0;padding:0 .375rem;font-size:1.375rem;line-height:1}.cal-nav button:disabled{color:#fff3;cursor:default}.cal-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:.25rem;display:grid}.cal-wd{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute-2);padding:.25rem 0 .5rem;font-size:.625rem}.cal-day{aspect-ratio:1;color:#ffffff40;font-family:var(--sans);cursor:default;transition:background .2s var(--ease), box-shadow .2s var(--ease);background:0 0;border:0;border-radius:50%;padding:0;font-size:.875rem}.cal-day.out{visibility:hidden}.cal-day.open{color:#fff;cursor:pointer;background:#1c6fe024;box-shadow:inset 0 0 0 1px #1c6fe059}.cal-day.open:hover{background:#1c6fe047}.cal-day.on{background:linear-gradient(180deg,var(--gold-300),var(--gold-lift) 45%,var(--gold));color:var(--ink);font-weight:700;box-shadow:0 0 16px 2px #c6a96959}.cal-times{min-width:0}.cal-daylabel{font-family:var(--serif);color:#fff;margin:.25rem 0 1rem;font-size:1.25rem}.period{margin-bottom:1.125rem}.period-h{align-items:center;gap:.625rem;margin-bottom:.625rem;display:flex}.period-h b{color:#fff;font-size:.875rem;font-weight:600;display:block}.period-h small{color:var(--mute-2);font-size:.6875rem;display:block}.period-ico{width:1.75rem;height:1.75rem;box-shadow:inset 0 0 0 1px var(--edge);border-radius:50%;flex:none;position:relative}.period-ico:after{content:"";border-radius:50%;margin:auto;position:absolute;inset:0}.period-ico.morning{background:#ebdcb81f}.period-ico.morning:after{background:var(--gold-300);width:.5rem;height:.5rem;box-shadow:0 0 8px 2px #ebdcb880}.period-ico.afternoon{background:#c6a9692e}.period-ico.afternoon:after{background:var(--gold);width:.75rem;height:.75rem}.period-ico.evening{background:#1c6fe02e}.period-ico.evening:after{width:.5rem;height:.5rem;box-shadow:inset -3px -2px 0 0 var(--mute);background:0 0}.cal-times .slots{grid-template-columns:repeat(auto-fill,minmax(4.75rem,1fr));gap:.5rem;display:grid}.cal-times .chip{text-align:center;font-variant-numeric:tabular-nums;padding:.5625rem .25rem}.cal-bar{border-top:1px solid var(--edge);grid-column:1/-1;justify-content:space-between;align-items:center;gap:1rem;margin-top:.5rem;padding-top:1rem;display:flex}.cal-picked{font-family:var(--serif);color:var(--gold-300);font-size:1.0625rem;font-style:italic}.cal-bar .btn{width:auto;padding:.75rem 1.25rem;font-size:.875rem}.cal-bar .btn:disabled{opacity:.45}.linkish{color:var(--mute-2);font-family:var(--sans);cursor:pointer;background:0 0;border:0;margin-left:.75rem;font-size:.8125rem;font-style:normal;text-decoration:underline}.partner{font-family:var(--sans);color:var(--mute-2);white-space:nowrap;margin-left:auto;font-size:.8125rem}@media (max-width:420px){.partner{font-size:.6875rem}}.calc-grid{grid-template-columns:1fr 1fr;gap:0 1rem;display:grid}.calc-grid .field:nth-child(3){grid-column:1/-1}@media (max-width:480px){.calc-grid{grid-template-columns:1fr}}.toggles{flex-wrap:wrap;gap:.5rem;margin-bottom:1.125rem;display:flex}.toggle{cursor:pointer;color:#fff;box-shadow:inset 0 0 0 1px var(--edge);transition:box-shadow .2s var(--ease), background .2s var(--ease);background:#ffffff0f;border-radius:100px;align-items:center;gap:.5rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:600;display:inline-flex}.toggle input{width:.9375rem;height:.9375rem;accent-color:var(--electric);margin:0}.toggle:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--electric);background:#1c6fe024}.toggle:has(input:disabled){opacity:.45;cursor:default}.results{border-top:1px solid var(--edge);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;padding-top:1.125rem;display:grid}.result{background:#1c6fe017;border-radius:14px;padding:.875rem 1rem;box-shadow:inset 0 0 0 1px #1c6fe04d}.rlabel{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute-2);margin-bottom:.375rem;font-size:.625rem;display:block}.rvalue{font-family:var(--serif);color:#fff;font-variant-numeric:tabular-nums;font-size:1.75rem;line-height:1.1;display:block}.rnote{color:var(--mute-2);margin-top:.375rem;font-size:.6875rem;line-height:1.4;display:block}.rnote.warn{color:var(--gold-300)}.calc-foot{color:var(--mute-2);grid-column:1/-1;margin:.25rem 0 0;font-size:.75rem;line-height:1.55}.disclosure{color:#f2e9d4;background:#c6a96921;border-radius:12px;margin:0 0 1rem;padding:.8125rem .9375rem;font-size:.75rem;line-height:1.55;box-shadow:inset 0 0 0 1px #c6a96966}.pill{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--gold-300);border-radius:100px;margin-bottom:1.25rem;padding:.375rem .75rem;font-size:.6875rem;font-weight:600;display:inline-block;box-shadow:inset 0 0 0 1px #c6a96973}.steps{counter-reset:s;gap:.75rem;margin:0 0 1.5rem;padding:0;list-style:none;display:grid}.steps li{counter-increment:s;box-shadow:inset 0 0 0 1px var(--edge);background:#ffffff0e;border-radius:14px;padding:1rem 1.125rem 1rem 3.25rem;font-size:.9375rem;line-height:1.55;position:relative}.steps li:before{content:counter(s);width:1.5rem;height:1.5rem;font-family:var(--mono);background:linear-gradient(180deg,var(--gold-300),var(--gold));color:var(--ink);border-radius:50%;place-items:center;font-size:.75rem;font-weight:700;display:grid;position:absolute;top:1rem;left:1rem}.steps li b{color:#fff}.kit-head{color:#fff;justify-content:space-between;align-items:baseline;gap:.75rem;margin:.25rem 0 .5rem;font-size:.8125rem;font-weight:600;display:flex}.kit-head span{color:var(--mute-2);font-size:.6875rem;font-weight:400}.kit-lines{gap:.375rem;margin:0 0 .25rem;display:grid}.kit-line{background:#1c6fe017;border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:.75rem;padding:.5625rem .75rem;display:grid;box-shadow:inset 0 0 0 1px #ffffff14}.kit-line .kl{color:#fff;font-size:.8125rem;line-height:1.3}.kit-line .kn{color:var(--mute-2);margin-top:.125rem;font-size:.6875rem;display:block}.kit-line .kv{font-family:var(--mono);color:#fff;padding:.375rem .5rem;font-size:.8125rem}.kit-line input{text-align:right;width:6.75rem;font-family:var(--mono);color:#fff;box-shadow:inset 0 0 0 1px var(--edge);background:#ffffff14;border:0;border-radius:8px;outline:none;padding:.375rem .5rem;font-size:.8125rem}.kit-line input:focus{box-shadow:inset 0 0 0 1.5px var(--electric)}.kit-total{border-top:1px solid var(--edge);color:var(--mute);justify-content:space-between;align-items:baseline;gap:1rem;margin-top:.5rem;padding:.75rem .75rem .25rem;font-size:.8125rem;display:flex}.kit-total b{font-family:var(--serif);color:#fff;font-size:1.5rem;font-weight:400;line-height:1.1}.kit-static{box-shadow:inset 0 0 0 1px var(--edge);font-family:var(--mono);color:#fff;background:#ffffff0f;border-radius:12px;padding:.75rem .875rem;font-size:.875rem}.kit-partners{gap:.5rem;display:grid}.kit-partners a{background:#1c6fe017;border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1rem;transition:background .2s;display:flex;box-shadow:inset 0 0 0 1px #ffffff14}.kit-partners a:hover{background:#1c6fe02e}.kit-partners .kp-name{font-family:var(--serif);color:#fff;font-size:1.0625rem}.kit-partners .rlabel{margin:0}
