@font-face{font-family:__Fraunces_d3f1c8;font-style:italic;font-weight:100 900;font-display:swap;src:url(/_next/static/media/6abc91adc2ea99a6-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Fraunces_d3f1c8;font-style:italic;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d08bfa01b04d053-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fraunces_d3f1c8;font-style:italic;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e0f4b1ebfdbd83f9-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fraunces_d3f1c8;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e8c7e585bb5e69ba-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Fraunces_d3f1c8;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/d02d66744511ad29-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fraunces_d3f1c8;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/26dc4a78f0c7af7f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fraunces_Fallback_d3f1c8;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_d3f1c8{font-family:__Fraunces_d3f1c8,__Fraunces_Fallback_d3f1c8}.__variable_d3f1c8{--font-serif:"__Fraunces_d3f1c8","__Fraunces_Fallback_d3f1c8"}@font-face{font-family:__Nunito_7776a5;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Nunito_7776a5;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Nunito_7776a5;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Nunito_7776a5;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Nunito_7776a5;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Nunito_Fallback_7776a5;src:local("Arial");ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.00%;size-adjust:101.39%}.__className_7776a5{font-family:__Nunito_7776a5,__Nunito_Fallback_7776a5;font-style:normal}.__variable_7776a5{--font-sans:"__Nunito_7776a5","__Nunito_Fallback_7776a5"}:root{--cream:#f7f0e4;--paper:#fffbf4;--ink:#2a211b;--muted:#5e5248;--espresso:#1e1814;--espresso-line:#4a3c30;--on-dark:#f3ebdd;--on-dark-muted:#d4c8b4;--gold:#c9a45c;--gold-soft:#e9d3a3;--gold-text:#7a5c26;--peach:#f3dcc6;--butter:#f6e9c8;--line:#e6dccb;--line-strong:#cdbfa8;--tint:#efe4cf;--radius-lg:32px;--radius:22px;--radius-sm:14px;--shadow:0 14px 34px rgba(42,33,27,.1);--shadow-lift:0 22px 48px rgba(42,33,27,.16);--pad-x:clamp(16px,5vw,72px);--serif:var(--font-serif),Georgia,serif;--sans:var(--font-sans),"Avenir Next","Segoe UI",sans-serif}html{zoom:.95}@media (min-width:900px){html{zoom:.9}}html:has(.full-size){zoom:1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.65;overflow-x:hidden}@media (min-width:900px){body{font-size:19px}}a{color:var(--ink)}a:hover{color:var(--gold-text)}:focus-visible{outline:3px solid var(--gold-text);outline-offset:3px}button,input,select,textarea{font:inherit;color:inherit}img{max-width:100%;display:block}h1,h2,h3{font-family:var(--serif);font-weight:500;margin:0;line-height:1.1;font-variation-settings:"SOFT" 100}p{margin:0}.wrap{max-width:1240px;margin:0 auto;padding-left:var(--pad-x);padding-right:var(--pad-x)}.section{padding-top:clamp(64px,8vw,120px);padding-bottom:clamp(64px,8vw,120px)}.dark{background:var(--espresso)}.dark,.dark a{color:var(--on-dark)}.paper-band{background:var(--paper)}.peach-band{background:var(--peach)}.stack{flex-direction:column}.row,.stack{display:flex}.row{flex-wrap:wrap}.center{align-items:center;text-align:center}.muted{color:var(--muted)}.dark .muted{color:var(--on-dark-muted)}.kicker{display:inline-flex;align-self:flex-start;align-items:center;gap:8px;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-text);background:var(--butter);padding:6px 16px;border-radius:999px}.center .kicker{align-self:center}.dark .kicker{color:var(--espresso);background:var(--gold-soft)}.h1,.h2,.h3{font-family:var(--serif);font-variation-settings:"SOFT" 100}.h1{font-size:clamp(44px,6vw,80px);line-height:1.04;letter-spacing:-.015em}.h2{font-size:clamp(34px,4.2vw,56px);letter-spacing:-.01em}.h3{font-size:clamp(24px,2.2vw,30px);font-weight:600}.h-page{font-size:clamp(36px,4.6vw,58px);line-height:1.06}.lead{font-size:clamp(19px,1.7vw,22px);line-height:1.6}.small{font-size:16px}.tiny{font-size:14px}.serif-italic{font-family:var(--serif);font-style:italic}.highlight{background:linear-gradient(transparent 62%,var(--gold-soft) 62%);padding:0 4px;border-radius:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:14px 30px;border-radius:999px;font-weight:700;font-size:18px;text-decoration:none;border:2px solid transparent;cursor:pointer;background:var(--ink);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn,.btn:hover{color:var(--cream)}.btn:hover{background:#3a2e26;transform:translateY(-2px);box-shadow:var(--shadow)}.btn-lg{min-height:64px;padding:16px 36px;font-size:20px}.btn-outline{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-outline:hover{background:var(--paper);color:var(--ink)}.btn-gold{background:var(--gold);color:var(--espresso)}.btn-gold:hover{background:#d6b46e}.btn-gold:hover,.dark .btn-gold,.dark .btn-gold:hover{color:var(--espresso)}.dark .btn-outline{color:var(--on-dark);border-color:var(--gold)}.dark .btn-outline:hover{background:#2c241e;color:var(--on-dark)}.btn:disabled,.btn[aria-disabled=true]{background:var(--line);color:var(--muted);cursor:not-allowed;border-color:transparent;transform:none;box-shadow:none}.link-btn{background:none;border:none;padding:12px 4px;cursor:pointer;text-decoration:underline;text-underline-offset:4px;color:var(--gold-text);font-weight:600}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:hsla(38,54%,93%,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.site-header .inner{justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px}.brand,.site-header .inner{display:flex;align-items:center}.brand{gap:10px;text-decoration:none}.brand span{font-family:var(--serif);font-size:30px;font-weight:600;font-variation-settings:"SOFT" 100}.site-nav{display:flex;align-items:center;gap:4px;font-size:17px;font-weight:600}.site-nav a.nav-link{text-decoration:none;padding:10px 14px;border-radius:999px}.site-nav a.nav-link:hover{background:var(--butter);color:var(--ink)}.site-nav a.nav-link[aria-current=page]{background:var(--butter)}.site-nav .btn{margin-left:10px;min-height:50px;padding:10px 24px;font-size:17px}.menu{display:none}@media (max-width:960px){.site-nav{display:none}.menu{display:block}}.menu>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;min-height:50px;padding:10px 20px;border-radius:999px;border:2px solid var(--ink);font-weight:700}.menu>summary::-webkit-details-marker{display:none}.menu[open]>summary{background:var(--ink);color:var(--cream)}.menu-panel{position:absolute;left:12px;right:12px;top:calc(100% + 8px);background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow-lift);padding:14px;display:flex;flex-direction:column;gap:4px}.menu-panel a:not(.btn){text-decoration:none;font-size:20px;font-weight:600;padding:14px 16px;border-radius:var(--radius-sm)}.menu-panel a:not(.btn):hover{background:var(--butter)}.menu-panel .btn{margin-top:8px}.card{box-shadow:var(--shadow)}.card,.card-flat{background:var(--paper);border-radius:var(--radius-lg);padding:clamp(24px,3vw,36px)}.card-flat{border:2px solid var(--line)}.lift{transition:transform .22s ease,box-shadow .22s ease}.lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}.grid-3{grid-gap:clamp(16px,2vw,28px);grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.grid-2,.grid-3{display:grid;gap:clamp(16px,2vw,28px)}.grid-2{grid-gap:clamp(16px,2vw,28px);grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.disclosure{border-radius:var(--radius);background:var(--paper);border:2px solid var(--line)}.disclosure>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;font-weight:700;font-size:19px;min-height:64px}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:after{content:"+";flex:none;width:36px;height:36px;border-radius:999px;background:var(--butter);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:500;transition:transform .2s ease}.disclosure[open]>summary:after{transform:rotate(45deg)}.disclosure .body{padding:0 24px 22px;gap:12px}.disclosure .body,.field{display:flex;flex-direction:column}.field{gap:8px;flex:1 1 220px;min-width:0}.field label,.label{font-size:17px;font-weight:700}.input,.textarea{border:2px solid var(--line-strong);background:var(--paper);border-radius:var(--radius-sm);padding:14px 18px;width:100%;min-height:56px;font-size:18px}.textarea{resize:vertical}.input:focus,.textarea:focus{outline:3px solid var(--gold-soft);outline-offset:0;border-color:var(--gold-text)}.error{color:#8a2a1a;font-size:17px;font-weight:600}.input.invalid,.textarea.invalid{border-color:#b3261e;background:#fdf1ef;box-shadow:0 0 0 1px #b3261e}.input.invalid:focus{outline-color:#f2b8b2;border-color:#b3261e}.field-error{color:#b3261e;font-size:15px;font-weight:600}.choice{cursor:pointer;text-align:left;border:2px solid var(--line-strong);background:var(--paper);color:var(--ink);border-radius:var(--radius);padding:22px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.choice:hover:not(:disabled){border-color:var(--gold-text);transform:translateY(-2px);box-shadow:var(--shadow)}.choice[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--cream);box-shadow:var(--shadow)}.chip{cursor:pointer;min-height:52px;border:2px solid var(--line-strong);background:var(--paper);border-radius:999px;padding:10px 22px;font-size:17px;font-weight:600}.chip[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--cream)}.two-col{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}.two-col>.main{flex:999 1 560px;min-width:0}.two-col>.side{flex:1 1 320px;min-width:0}.summary{background:var(--espresso);color:var(--on-dark);border-radius:var(--radius-lg);padding:30px;display:flex;flex-direction:column;gap:16px;position:-webkit-sticky;position:sticky;top:100px}.summary .line{display:flex;justify-content:space-between;gap:12px;font-size:17px}.summary .line span:first-child{color:var(--on-dark-muted)}.summary .total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--espresso-line);padding-top:16px}.summary .total strong{font-family:var(--serif);font-weight:500;font-size:38px;color:var(--gold)}.summary a{color:var(--gold)}.panel{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);padding:24px}.list-rows>*+*{border-top:2px solid var(--line)}.tag{border:2px solid var(--line-strong);border-radius:999px;padding:6px 14px;font-size:15px;background:var(--paper)}.stages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:22px 18px;gap:22px 18px}@media (max-width:640px){.stages{grid-template-columns:repeat(2,minmax(0,1fr))}}.stages li{min-width:0;display:flex;flex-direction:column;gap:8px;border-top:3px solid var(--espresso-line);padding-top:14px}.stages li.done{border-top-color:var(--gold)}.stages li.now{border-top-color:#8c7650}.stages .dot{width:30px;height:30px;border-radius:999px;border:2px solid #6b5b4c;display:flex;align-items:center;justify-content:center}.stages li.done .dot{background:var(--gold)}.stages li.done .dot,.stages li.now .dot{border-color:var(--gold)}.stages .name{font-family:var(--serif);font-size:clamp(17px,1.6vw,21px);line-height:1.2;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.stages .state{font-size:14px;color:var(--on-dark-muted)}.stages li.now .state{color:var(--gold)}.status-chip{display:inline-block;font-size:13px;font-weight:700;padding:3px 12px;border-radius:999px;border:1px solid var(--gold);background:var(--tint);color:#5a4320}.status-chip.complete{background:var(--ink);color:var(--cream);border-color:var(--ink)}.status-chip.live{background:#2f6b3a;color:#fff;border-color:#2f6b3a}.status-chip.queued{background:transparent;color:var(--muted);border-color:var(--line-strong)}.site-footer{background:var(--espresso);color:var(--on-dark);padding-top:64px;padding-bottom:36px}.site-footer a{color:var(--on-dark);text-decoration:none}.site-footer a:hover{color:var(--gold)}.footer-cols{display:grid;grid-gap:36px;gap:36px;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.footer-cols h3{font-family:var(--sans);font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}.footer-cols ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.socials{display:flex;gap:12px}.socials a{width:52px;height:52px;border-radius:999px;background:#2e251f;display:flex;align-items:center;justify-content:center;transition:background .18s ease,transform .18s ease}.socials a:hover{background:var(--gold);color:var(--espresso);transform:translateY(-2px)}.footer-base{border-top:1px solid var(--espresso-line);margin-top:48px;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:15px;color:var(--on-dark-muted)}.hero-art{position:relative;min-height:500px}.polaroid{position:absolute;margin:0;background:#fff;padding:12px 12px 48px;border-radius:6px;box-shadow:var(--shadow-lift)}.polaroid img{border-radius:2px;width:100%;height:auto}.polaroid figcaption{position:absolute;left:0;right:0;bottom:12px;text-align:center;font-family:var(--serif);font-style:italic;font-size:19px;color:var(--muted)}.blob{position:absolute;border-radius:50%;filter:blur(2px);z-index:0}.float-a{animation:float 7s ease-in-out infinite}.float-b{animation:float 8s ease-in-out -2s infinite}.float-c{animation:float 9s ease-in-out -4s infinite}@keyframes float{0%,to{translate:0 0}50%{translate:0 -12px}}.spin{animation:spin 4s linear infinite;transform-box:fill-box;transform-origin:center}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:720px){.hero-art{min-height:380px}}.ba{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lift);aspect-ratio:3/2;background:var(--tint);touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.ba .after{-webkit-clip-path:inset(0 0 0 var(--pos));clip-path:inset(0 0 0 var(--pos))}.ba .handle{top:0;bottom:0;left:var(--pos);width:4px;margin-left:-2px;pointer-events:none;box-shadow:0 0 12px rgba(0,0,0,.25)}.ba .handle,.ba .knob{position:absolute;background:#fff}.ba .knob{top:50%;left:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:999px;box-shadow:var(--shadow-lift);display:flex;align-items:center;justify-content:center;color:var(--ink)}.ba input[type=range]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.ba input[type=range]:focus-visible+.handle .knob{outline:3px solid var(--gold-text);outline-offset:3px}.ba .label{position:absolute;top:18px;padding:6px 16px;border-radius:999px;font-size:15px;font-weight:800;background:hsla(0,0%,100%,.92);pointer-events:none}.ba .label.before{left:18px}.ba .label.after-l{right:18px;background:var(--gold)}.quote-card{position:relative;background:var(--paper);border-radius:var(--radius-lg);padding:40px 32px 32px;box-shadow:var(--shadow)}.quote-card:before{content:"“";position:absolute;top:-18px;left:26px;font-family:var(--serif);font-size:110px;line-height:1;color:var(--gold)}.avatar{background:var(--peach);font-size:24px}.avatar,.step-num{width:56px;height:56px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:600}.step-num{background:var(--gold);color:var(--espresso);font-size:28px}.js .reveal{opacity:0;translate:0 24px;transition:opacity .7s ease,translate .7s ease}.js .reveal.is-visible{opacity:1;translate:0 0}.prose p+p{margin-top:12px}.prose ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px}.prose a{color:var(--gold-text);text-underline-offset:3px}.admin-table{width:100%;border-collapse:collapse;font-size:15px}.admin-table td,.admin-table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}.admin-table th{font-weight:700;color:var(--muted)}.scroll-x{overflow-x:auto}.action-btn:active:not(:disabled),.btn:active:not(:disabled),.chip:active{transform:scale(.96)}.action-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .12s ease,background .18s ease,color .18s ease}.action-btn[aria-busy=true]{cursor:progress;opacity:.85}.action-btn.is-done{background:#2f6b3a;border-color:#2f6b3a;color:#fff}.link-btn.action-btn.is-done{background:none;color:#2f6b3a}.btn-sm{min-height:40px;padding:6px 16px;font-size:15px}.btn-danger{background:#8a2a1a;color:#fff}.btn-danger:hover{background:#a3361f;color:#fff}.spinner{width:18px;height:18px;flex:none;border-radius:999px;border:2.5px solid;border-right:2.5px solid transparent;animation:spinner .7s linear infinite}@keyframes spinner{to{transform:rotate(1turn)}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.meter{height:10px;background:var(--line);overflow:hidden}.meter,.meter>span{border-radius:999px}.meter>span{display:block;height:100%;background:var(--gold);transition:width .4s ease}.meter-dark{background:#3a2e26;height:12px}.upload-box{background:var(--cream);border:2px dashed var(--line-strong);border-radius:var(--radius-sm);padding:14px}.stages li.now .dot{background:var(--gold);box-shadow:0 0 0 6px rgba(201,164,92,.25);animation:pulse 2s ease-in-out infinite}.stages li.now .name{color:var(--gold)}@keyframes pulse{50%{box-shadow:0 0 0 10px rgba(201,164,92,.08)}}.admin-tab{text-decoration:none}.admin-tab[aria-current=page]{background:var(--ink);color:var(--cream);border-color:var(--ink)}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px}.cal-head{text-align:center;font-size:13px;font-weight:800;color:var(--muted);padding:4px 0}.cal-cell{min-height:96px;background:var(--paper);border:2px solid var(--line);border-radius:12px;padding:6px;display:flex;flex-direction:column;gap:3px;text-decoration:none;color:var(--ink);overflow:hidden;transition:border-color .15s ease,transform .12s ease}.cal-cell:hover{border-color:var(--gold-text);color:var(--ink)}.cal-cell.empty{background:transparent;border:0}.cal-cell.past{opacity:.5}.cal-cell.today .cal-num{background:var(--gold);border-radius:999px;padding:0 7px}.cal-cell.selected{border-color:var(--ink);box-shadow:var(--shadow)}.cal-num{font-weight:800;font-size:15px;align-self:flex-start}.cal-chip{display:inline-block;font-size:11.5px;font-weight:700;line-height:1.3;padding:2px 6px;border-radius:6px;background:#dcebd9;color:#24502c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-chip.booked{background:var(--gold-soft);color:#5a4320}@media (max-width:640px){.cal-cell{min-height:64px}.cal-chip{font-size:0;padding:0;width:8px;height:8px;border-radius:999px}}.day-toggle input{position:absolute;opacity:0;pointer-events:none}.day-toggle span{display:inline-flex;align-items:center;justify-content:center;min-width:58px;min-height:46px;border-radius:999px;border:2px solid var(--line-strong);background:var(--paper);font-weight:700;cursor:pointer}.day-toggle input:checked+span{background:var(--ink);color:var(--cream);border-color:var(--ink)}.day-toggle input:focus-visible+span{outline:3px solid var(--gold-text);outline-offset:2px}.block-row{background:var(--cream);border-radius:var(--radius-sm);padding:10px 12px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}.js .reveal{opacity:1;translate:none}.spinner{animation:spinner 1.4s linear infinite!important}}.stat-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))}.stat{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);padding:16px 18px;display:flex;flex-direction:column;gap:2px}.stat-label{font-size:14px;font-weight:700;color:var(--muted)}.stat-value{font-family:var(--serif);font-size:44px;line-height:1.1;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-note{font-size:14px;color:var(--muted)}.bars{position:relative;height:200px;display:flex;align-items:flex-end;gap:2px;border-bottom:1px solid var(--line-strong);padding-top:18px}.bars-max{position:absolute;top:0;left:0;font-size:12px;color:var(--muted);border-bottom:1px dashed var(--line);width:100%;line-height:1.4;pointer-events:none}.bar-col{position:relative;flex:1 1;min-width:0;height:100%;display:flex;align-items:flex-end;cursor:default;outline:none}.bar{display:block;width:100%;min-height:2px;background:var(--gold);border-radius:4px 4px 0 0}.bar-col:focus-visible .bar,.bar-col:hover .bar{background:var(--gold-text)}.bar-col:focus-visible:after,.bar-col:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;translate:-50% 0;z-index:2;white-space:nowrap;background:var(--ink);color:var(--cream);font-size:13px;padding:6px 10px;border-radius:8px;pointer-events:none}.bar-col:first-of-type:hover:after,.bar-col:nth-of-type(2):hover:after{left:0;translate:0 0}.bar-col:last-child:hover:after{left:auto;right:0;translate:0 0}.bars-axis{display:flex;gap:2px;font-size:12px;color:var(--muted)}.bars-axis span{flex:1 1;min-width:0;white-space:nowrap;overflow:visible}.hbar-row{display:grid;grid-template-columns:90px 1fr auto;align-items:center;grid-gap:12px;gap:12px}.hbar-label{font-weight:700;font-size:16px}.hbar-track{height:14px;background:var(--line);overflow:hidden}.hbar,.hbar-track{border-radius:999px}.hbar{display:block;height:100%;background:var(--gold)}.hbar-value{font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:80px;text-align:right}.pencil-btn{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border-radius:999px;border:2px solid var(--line-strong);background:var(--paper);color:var(--ink);font-weight:700;font-size:15px;cursor:pointer;transition:transform .12s ease,background .15s ease}.pencil-btn:hover{border-color:var(--ink)}.pencil-btn:active{transform:scale(.94)}.pencil-btn.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}.bulk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 14px;background:var(--butter);border-bottom:2px solid var(--line);position:-webkit-sticky;position:sticky;left:0}.bulk-cell{width:44px}.bulk-cell input{width:20px;height:20px;accent-color:var(--ink);cursor:pointer}.file-card{position:absolute;display:flex;align-items:center;gap:12px;background:#fff;border-radius:16px;padding:14px 18px 14px 14px;box-shadow:var(--shadow-lift);max-width:72%}.file-icon{flex:none;width:46px;height:54px;border-radius:8px;background:var(--gold);color:var(--espresso);font-weight:800;font-size:13px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:8px;position:relative}.file-icon:before{content:"";position:absolute;top:0;right:0;width:14px;height:14px;background:hsla(0,0%,100%,.55);border-bottom-left-radius:6px}.check-dot{width:28px;height:28px;border-radius:999px;background:var(--gold);display:inline-flex;align-items:center;justify-content:center;flex:none;margin-top:2px}.chat-root{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.chat-btn{display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:12px 22px;border-radius:999px;border:none;background:var(--ink);color:var(--cream);font-weight:800;font-size:17px;cursor:pointer;box-shadow:var(--shadow-lift);transition:transform .15s ease}.chat-btn:hover{transform:translateY(-2px)}.chat-btn:active{transform:scale(.96)}.chat-panel{width:min(360px,calc(100vw - 36px));background:var(--paper);border-radius:var(--radius-lg);box-shadow:0 24px 60px rgba(42,33,27,.28);overflow:hidden;animation:pop .2s ease}.chat-head{display:flex;align-items:center;gap:12px;padding:16px 18px;background:var(--espresso);color:var(--on-dark)}.chat-avatar{border-radius:999px;background:var(--gold);color:var(--espresso);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:20px;flex:none}.chat-avatar,.chat-x{width:40px;height:40px}.chat-x{margin-left:auto;background:none;border:none;color:var(--on-dark);font-size:28px;line-height:1;cursor:pointer;border-radius:999px}.chat-x:hover{background:#2e251f}.chat-body{padding:16px 18px 18px;max-height:min(70vh,520px);overflow-y:auto}.chat-body .input,.chat-body .textarea{min-height:48px;font-size:16px;padding:10px 14px}.chat-bubble{background:var(--butter);border-radius:16px 16px 16px 4px;padding:12px 14px;font-size:16px;line-height:1.5}.chat-bubble-me{background:var(--peach);border-radius:16px 16px 4px 16px}.chat-trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}@media (max-width:520px){.chat-btn span{display:none}.chat-btn{padding:12px 16px}}.admin-tab{gap:8px}.admin-tab,.nav-badge{display:inline-flex;align-items:center}.nav-badge{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#8a2a1a;color:#fff;font-size:13px;font-weight:800;justify-content:center}.calc-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr))}.calc-field{display:flex;flex-direction:column;gap:4px}.calc-field .input{min-height:48px}.calc-result{background:var(--espresso);color:var(--on-dark);border-radius:var(--radius);padding:18px 20px;gap:6px}.calc-result,.format-card{display:flex;flex-direction:column}.format-card{gap:16px;height:100%;text-decoration:none;color:var(--ink);background:var(--paper);border-radius:var(--radius-lg);padding:24px;border:2px solid var(--line)}.format-card:hover{color:var(--ink);border-color:var(--gold)}.format-art{display:block;background:var(--butter);border-radius:var(--radius);padding:18px 28px}.format-art.small-art{padding:14px 40px;max-width:320px}.format-hero{background:var(--peach);border-radius:var(--radius-lg);padding:clamp(24px,4vw,48px)}.zip-result{display:flex;flex-direction:column;gap:8px;background:var(--paper);border-radius:var(--radius);padding:16px 18px;border:2px solid var(--line);font-size:16px;animation:pop .25s ease}.zip-result.good{border-color:#2f6b3a}.zip-result.good strong{color:#2f6b3a}.count-row{flex-wrap:wrap;justify-content:space-between;gap:12px 20px;padding:16px 20px}.count-row,.counter{display:flex;align-items:center}.counter{gap:6px}.counter button{width:40px;height:40px;border-radius:999px;border:2px solid var(--line-strong);background:var(--paper);font-size:22px;line-height:1;cursor:pointer;font-weight:600;color:var(--ink);transition:transform .12s ease}.counter button:active{transform:scale(.92)}.counter button:disabled{opacity:.4;cursor:default}.counter button.plus{background:var(--ink);color:var(--cream);border-color:var(--ink)}.counter input{width:78px;height:44px;text-align:center;font-size:20px;font-weight:700;border:2px solid var(--line-strong);border-radius:12px;background:var(--paper);color:var(--ink);font-family:inherit}.counter input:focus{outline:3px solid var(--gold-soft);border-color:var(--gold)}.count-unit{min-width:52px}@media (max-width:520px){.count-row{padding:14px 16px}.count-unit{display:none}}.files-grid{display:grid;grid-gap:22px 32px;gap:22px 32px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));max-width:1040px;width:100%;margin:0 auto}.gift-card{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:24px 40px;color:var(--on-dark);border-radius:var(--radius-lg);padding:clamp(40px,5vw,56px) clamp(28px,4vw,56px);background:radial-gradient(circle at 15% 0,rgba(181,56,47,.22),transparent 45%),radial-gradient(circle at 100% 100%,rgba(63,107,74,.3),transparent 50%),var(--espresso);box-shadow:inset 0 0 0 2px rgba(201,164,92,.35);margin:28px 0 24px}.xmas-decor{inset:0;pointer-events:none}.xmas-decor,.xmas-decor svg{position:absolute}.xmas-holly{top:-24px;left:28px;width:90px;height:auto}.xmas-wreath{top:-46px;right:-22px;width:120px;height:auto;filter:drop-shadow(0 6px 10px rgba(0,0,0,.25))}.xmas-presents{bottom:-30px;right:34px;width:150px;height:auto;filter:drop-shadow(0 6px 8px rgba(0,0,0,.2))}.xmas-flake{opacity:.28;animation:flake 6s ease-in-out infinite}@keyframes flake{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(8px) rotate(25deg)}}@media (prefers-reduced-motion:reduce){.xmas-flake{animation:none}}@media (max-width:600px){.xmas-wreath{width:84px;top:-36px;right:-10px}.xmas-holly{width:70px;left:20px;top:-20px}.xmas-presents{width:112px;right:12px;bottom:-26px}}