@import url("https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,200..800;1,6..72,200..800&family=Epilogue:ital,wght@0,100..900;1,100..900&family=Caveat:wght@400..700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0,0&display=swap");:root{--brand-teal:#6fd3d0;--brand-teal-deep:#3fb8b5;--brand-teal-soft:#c7eceb;--brand-teal-cream:#eaf7f6;--brand-lavender:#c9a6e0;--brand-lavender-deep:#a78bc2;--brand-lavender-soft:#ecdff6;--brand-rose:#f2b5c0;--brand-rose-soft:#fbe3e7;--brand-cocoa:#5c4033;--brand-cocoa-soft:#b89484;--cream-50:#fffcf8;--cream-100:#fff8f4;--cream-200:#fbf2eb;--cream-300:#f5ece5;--cream-400:#f0e7df;--cream-500:#eae1da;--cream-600:#e1d8d2;--ink-900:#1f1b17;--ink-700:#34302b;--ink-500:#49454e;--ink-400:#7a757f;--ink-300:#cac4cf;--bg:var(--cream-100);--bg-elev:#fff;--bg-soft:var(--cream-200);--bg-muted:var(--cream-300);--fg:var(--ink-900);--fg-muted:var(--ink-500);--fg-subtle:var(--ink-400);--border:var(--ink-300);--border-soft:rgba(111,211,208,.25);--primary:var(--brand-teal);--primary-deep:var(--brand-teal-deep);--primary-soft:var(--brand-teal-soft);--on-primary:#fff;--accent:var(--brand-lavender);--accent-soft:var(--brand-lavender-soft);--highlight:var(--brand-rose);--success:#6fb388;--warning:#e2a24e;--error:#ba1a1a;--error-soft:#ffdad6;--lav-primary:#645784;--lav-primary-container:#a294c5;--lav-primary-fixed:#e9ddff;--lav-primary-fixed-dim:#cebff2;--lav-on-primary:#fff;--lav-tertiary:#765749;--lav-tertiary-fixed:#ffdbcc;--lav-tertiary-fixed-dim:#e6bead;--font-display:"Newsreader","Cormorant Garamond",Georgia,serif;--font-body:"Epilogue","Inter",system-ui,-apple-system,sans-serif;--font-script:"Caveat","Patrick Hand","Bradley Hand",cursive;--display-xl:600 64px/1.05 var(--font-display);--display-lg:600 48px/1.1 var(--font-display);--h1:600 40px/1.15 var(--font-display);--h2:500 32px/1.2 var(--font-display);--h3:500 24px/1.3 var(--font-display);--h4:600 20px/1.35 var(--font-body);--body-lg:400 18px/1.6 var(--font-body);--body-md:400 16px/1.55 var(--font-body);--body-sm:400 14px/1.5 var(--font-body);--label:600 14px/1.2 var(--font-body);--eyebrow:600 12px/1.2 var(--font-body);--note:500 22px/1.4 var(--font-script);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:48px;--space-2xl:80px;--gutter:24px;--margin:32px;--r-sm:6px;--r-md:12px;--r-lg:20px;--r-xl:32px;--r-pill:9999px;--shadow-xs:0 1px 2px rgba(92,64,51,.04);--shadow-sm:0 4px 12px rgba(111,211,208,.1);--shadow-md:0 12px 28px -10px rgba(92,64,51,.14);--shadow-lg:0 20px 40px -15px rgba(111,211,208,.22);--shadow-xl:0 30px 60px -20px rgba(167,139,194,.28);--ease-soft:cubic-bezier(0.4,0,0.2,1);--ease-bounce:cubic-bezier(0.34,1.56,0.64,1);--dur-fast:150ms;--dur-base:250ms;--dur-slow:450ms}.edition-lavender{--primary:var(--lav-primary);--primary-deep:#4c406b;--primary-soft:var(--lav-primary-fixed);--on-primary:var(--lav-on-primary);--accent:var(--lav-tertiary);--accent-soft:var(--lav-tertiary-fixed);--border-soft:rgba(162,148,197,.22)}h1{font:var(--h1);letter-spacing:-.01em}h1,h2{color:var(--fg)}h2{font:var(--h2);letter-spacing:-.005em}h3{font:var(--h3)}h3,h4{color:var(--fg)}h4{font:var(--h4)}p{font:var(--body-md);color:var(--fg-muted)}.caption,small{font:var(--body-sm);color:var(--fg-subtle)}.note{font:var(--note);color:var(--brand-cocoa)}code,pre{font-family:JetBrains Mono,ui-monospace,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--fg);font:var(--body-md);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font-family:inherit}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;user-select:none}.container{max-width:1280px;margin:0 auto;padding:0 32px}.section{padding:80px 0}.section-tight{padding:56px 0}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(255,252,248,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-soft)}.site-header .inner{max-width:1280px;margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand-mark{display:flex;align-items:center;gap:10px;font:700 italic 22px/1 var(--font-display);color:var(--primary);letter-spacing:-.005em}nav.primary{display:flex;gap:32px}nav.primary a{font:var(--label);color:var(--fg-muted);padding:6px 0;cursor:pointer;transition:color var(--dur-base) var(--ease-soft);border-bottom:2px solid transparent}nav.primary a.active,nav.primary a:hover{color:var(--primary-deep)}nav.primary a.active{border-bottom-color:var(--primary)}.header-actions{display:flex;align-items:center;gap:8px}.icon-btn{background:none;border:none;color:var(--primary-deep);padding:8px;border-radius:var(--r-md);cursor:pointer;position:relative;transition:all var(--dur-base) var(--ease-soft);display:inline-flex;align-items:center;justify-content:center}.icon-btn:hover{background:var(--primary-soft);transform:translateY(-1px)}.icon-btn .badge{position:absolute;top:2px;right:2px;background:var(--primary);color:var(--on-primary);font:700 10px/1 var(--font-body);padding:2px 5px;border-radius:var(--r-pill);min-width:16px;text-align:center}.edit-toggle{color:var(--fg-muted);border:1px solid var(--border-soft);padding:7px 12px;font:600 12px/1 var(--font-body);letter-spacing:.04em}.edit-toggle .material-symbols-outlined{font-size:16px}.btn{font:var(--label);cursor:pointer;border:none;display:inline-flex;align-items:center;gap:8px;transition:all var(--dur-base) var(--ease-soft);white-space:nowrap}.btn:active{transform:scale(.97)}.btn-primary{background:var(--primary);color:var(--on-primary);padding:14px 26px;border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--primary-deep);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:transparent;color:var(--brand-cocoa);padding:12px 24px;border-radius:var(--r-md);border:2px solid var(--brand-cocoa)}.btn-secondary:hover{background:var(--cream-300)}.btn-pill{border-radius:var(--r-pill);padding:11px 22px}.btn-block{width:100%;justify-content:center}.btn-sm{padding:9px 16px;font-size:13px}.eyebrow{font:var(--eyebrow);text-transform:uppercase;letter-spacing:.12em;color:var(--primary-deep)}.chip{background:var(--cream-300);color:var(--fg-muted);padding:4px 10px;border-radius:4px;font-size:10px;font-weight:600;letter-spacing:.06em}.chip,.pill{display:inline-block;text-transform:uppercase}.pill{background:var(--primary-soft);color:var(--primary-deep);padding:6px 14px;border-radius:var(--r-pill);font:var(--eyebrow);letter-spacing:.12em}.card{background:#fff;border:1px solid var(--border-soft);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:all var(--dur-base) var(--ease-soft)}.card-hover:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.hero{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:64px;gap:64px;align-items:center;padding:80px 0 96px}.hero h1{font:600 56px/1.05 var(--font-display);letter-spacing:-.01em;margin:18px 0;text-wrap:pretty;max-width:560px;color:var(--fg)}.hero h1 em{color:var(--primary-deep);font-style:italic}.hero p{font:var(--body-lg);color:var(--fg-muted);max-width:480px;margin:0 0 32px}.hero .ctas{display:flex;gap:14px;flex-wrap:wrap}.hero-art{position:relative;height:560px}.hero-art .panel{position:absolute;inset:0;background:var(--primary-soft);border-radius:64px;transform:rotate(3deg);opacity:.45}.hero-art .photo{position:absolute;inset:0;border-radius:48px;overflow:hidden;box-shadow:var(--shadow-xl);transform:rotate(-1deg);border:8px solid #fff;background:var(--cream-300)}.hero-art .photo .ph-img,.hero-art .photo img{width:100%;height:100%;object-fit:cover}.ph-img{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--cream-300),var(--primary-soft));color:var(--brand-cocoa-soft);font:italic 16px/1.4 var(--font-display);text-align:center;padding:24px}.ph-img .material-symbols-outlined{font-size:48px;opacity:.5}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px;gap:32px}.section-head h2{font:var(--h1);margin:0 0 6px}.section-head p{margin:0;font:var(--body-md);color:var(--fg-muted)}.section-head-center{text-align:center;margin-bottom:56px}.section-head-center .eyebrow{display:inline-block;margin-bottom:12px}.section-head-center h2{font:var(--h1);margin:0 0 14px}.section-head-center p{font:var(--body-md);color:var(--fg-muted);max-width:580px;margin:0 auto}.bakers-note{background:var(--cream-200);border:1px solid var(--border-soft);border-radius:var(--r-md);padding:28px 32px;transform:rotate(-1deg);box-shadow:var(--shadow-md)}.bakers-note p{font:italic 500 22px/1.45 var(--font-display);color:var(--brand-cocoa);margin:0 0 14px}.bakers-note .by{display:flex;align-items:center;gap:12px}.bakers-note .by .line{width:36px;height:1px;background:var(--primary-deep)}.bakers-note .by span{font:var(--eyebrow);text-transform:uppercase;letter-spacing:.12em;color:var(--primary-deep)}.dashed{border:none;border-top:1.5px dashed var(--ink-300);margin:18px 0}.site-footer{background:var(--cream-300);padding:56px 0;border-top:1px solid var(--border-soft);margin-top:48px}.site-footer .inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;align-items:center}.site-footer .brand-line{font:700 italic 18px/1.2 var(--font-display);color:var(--fg)}.site-footer .copy{font:var(--body-sm);color:var(--fg-subtle);margin-top:4px}.site-footer nav{display:flex;gap:28px}.site-footer nav a{font:var(--body-sm);color:var(--fg-muted);cursor:pointer;transition:color var(--dur-base) var(--ease-soft)}.site-footer .social,.site-footer nav a:hover{color:var(--primary-deep)}.site-footer .social{display:flex;gap:12px}.edit-mode .editable{outline:1.5px dashed var(--primary);outline-offset:4px;border-radius:4px;cursor:text;position:relative;transition:outline-color var(--dur-base) var(--ease-soft)}.edit-mode .editable:hover{outline-color:var(--primary-deep);background:var(--primary-soft)}.edit-mode .editable-image{outline-style:dashed;cursor:pointer}.edit-mode .editable-image:after{content:"";position:absolute;inset:0;background:rgba(100,87,132,0);border-radius:inherit;pointer-events:none;transition:background var(--dur-base) var(--ease-soft)}.edit-mode .editable-image:hover:after{background:rgba(100,87,132,.25)}.edit-mode .editable-image .image-edit-hint{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--primary);color:var(--on-primary);padding:8px 14px;border-radius:var(--r-pill);font:600 12px/1 var(--font-body);letter-spacing:.04em;display:flex;align-items:center;gap:6px;opacity:0;pointer-events:none;transition:opacity var(--dur-base) var(--ease-soft);z-index:2}.edit-mode .editable-image:hover .image-edit-hint{opacity:1}.edit-mode .editable-image .material-symbols-outlined{font-size:18px}.image-edit-hint{display:none}.edit-mode .image-edit-hint{display:inline-flex}[contenteditable=true]:focus{outline:2px solid var(--primary-deep);outline-offset:4px}[contenteditable=true]{caret-color:var(--primary-deep)}.modal-backdrop{position:fixed;inset:0;background:rgba(31,27,23,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .2s var(--ease-soft)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:#fff;border-radius:var(--r-xl);box-shadow:var(--shadow-xl);max-width:520px;width:100%;padding:32px;max-height:90vh;overflow:auto}.modal h3{font:var(--h2);margin:0 0 6px}.modal .modal-sub{font:var(--body-sm);color:var(--fg-muted);margin:0 0 24px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.dropzone{border:2px dashed var(--border);border-radius:var(--r-md);padding:32px;text-align:center;cursor:pointer;transition:all var(--dur-base) var(--ease-soft);background:var(--cream-100)}.dropzone.drag,.dropzone:hover{border-color:var(--primary);background:var(--primary-soft)}.dropzone .material-symbols-outlined{font-size:36px;color:var(--primary-deep);margin-bottom:8px}.dropzone p{margin:0;font:var(--body-sm);color:var(--fg-muted)}.dropzone strong{color:var(--fg)}.field{margin-bottom:14px}.field label{display:block;font:var(--label);margin-bottom:6px;text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--fg-muted)}.field input,.field select,.field textarea{width:100%;font:var(--body-md);padding:12px 14px;border:1.5px solid var(--border-soft);border-radius:var(--r-md);background:var(--cream-100);color:var(--fg);transition:border-color var(--dur-base) var(--ease-soft)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--primary)}.divider-or{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--fg-subtle);font:var(--label);text-transform:uppercase;letter-spacing:.12em;font-size:11px}.divider-or:after,.divider-or:before{content:"";flex:1 1;height:1px;background:var(--border-soft)}.drawer-backdrop{position:fixed;inset:0;background:rgba(31,27,23,.35);z-index:90;animation:fadeIn .2s var(--ease-soft)}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);background:var(--bg);z-index:100;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);animation:slideIn .28s var(--ease-soft)}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.drawer header{padding:24px 28px;border-bottom:1px solid var(--border-soft);display:flex;justify-content:space-between;align-items:center}.drawer header h3{font:var(--h3);margin:0}.drawer .items{flex:1 1;overflow-y:auto;padding:16px 28px}.drawer .item{display:flex;gap:14px;padding:14px 0;border-bottom:1px dashed var(--border)}.drawer .item:last-child{border-bottom:none}.drawer .item .thumb{width:64px;height:64px;border-radius:var(--r-md);overflow:hidden;flex-shrink:0}.drawer .item .thumb img{width:100%;height:100%;object-fit:cover}.drawer .item .info{flex:1 1;min-width:0}.drawer .item h4{font:500 16px/1.2 var(--font-display);margin:0 0 4px}.drawer .item .price{font:var(--body-sm);color:var(--primary-deep);font-weight:600}.drawer .item .qty{display:flex;align-items:center;gap:8px;margin-top:6px}.drawer .item .qty button{background:var(--cream-300);border:none;width:24px;height:24px;border-radius:var(--r-pill);cursor:pointer;color:var(--fg);font:600 14px/1 var(--font-body)}.drawer .item .qty button:hover{background:var(--primary-soft)}.drawer .item .qty span{font:var(--label);min-width:18px;text-align:center}.drawer .item .remove{background:none;border:none;cursor:pointer;color:var(--fg-subtle);padding:4px}.drawer .item .remove:hover{color:var(--error)}.drawer footer{padding:20px 28px;border-top:1px solid var(--border-soft);background:#fff}.drawer .totals{display:flex;justify-content:space-between;font:var(--body-md);margin-bottom:12px}.drawer .totals.grand{font:600 18px/1 var(--font-display);color:var(--fg)}.empty-state{padding:48px 24px;text-align:center;color:var(--fg-muted)}.empty-state .material-symbols-outlined{font-size:56px;color:var(--ink-300);margin-bottom:12px}.empty-state p{margin:0}.pgrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px}.pcard{background:#fff;border:1px solid var(--border-soft);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:all var(--dur-base) var(--ease-soft);display:flex;flex-direction:column}.pcard:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.pcard .img-wrap{height:280px;overflow:hidden;position:relative}.pcard .img-wrap .ph-img,.pcard .img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-soft)}.pcard:hover .img-wrap img{transform:scale(1.06)}.pcard .ribbon{position:absolute;top:14px;left:14px;background:var(--primary);color:var(--on-primary);padding:5px 12px;border-radius:var(--r-pill);font:var(--eyebrow);text-transform:uppercase;letter-spacing:.08em;font-size:11px;z-index:2}.pcard .body{padding:22px 24px 24px;flex:1 1;display:flex;flex-direction:column}.pcard .row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.pcard h3{font:var(--h3);margin:0}.pcard .price{font:600 22px/1 var(--font-display);color:var(--primary-deep);white-space:nowrap}.pcard p{font:var(--body-sm);color:var(--fg-muted);margin:10px 0 14px;flex:1 1}.pcard .chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.pcard .add-btn{margin-top:auto;background:var(--primary-soft);color:var(--primary-deep);border:none;padding:10px 16px;border-radius:var(--r-md);font:var(--label);cursor:pointer;display:inline-flex;align-items:center;gap:6px;justify-content:center;transition:all var(--dur-base) var(--ease-soft)}.pcard .add-btn:hover{background:var(--primary);color:var(--on-primary)}.pcard .add-btn:active{transform:scale(.97)}.tiers{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;align-items:stretch}.tier{background:#fff;border:1px solid var(--border-soft);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-sm);transition:all var(--dur-base) var(--ease-soft);position:relative;display:flex;flex-direction:column}.tier:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.tier.featured{border:2px solid var(--primary);box-shadow:var(--shadow-lg)}.tier .tier-img{border-radius:var(--r-md);height:180px;margin-bottom:18px;overflow:hidden;background:var(--cream-300)}.tier .tier-img .ph-img,.tier .tier-img img{width:100%;height:100%;object-fit:cover}.tier .badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--primary);color:var(--on-primary);padding:5px 14px;border-radius:var(--r-pill);font:var(--eyebrow);text-transform:uppercase;letter-spacing:.1em;font-size:11px}.tier h3{font:var(--h3);margin:0 0 6px}.tier .from{font:var(--label);color:var(--primary-deep);margin-bottom:4px}.tier ul{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-direction:column;gap:10px;flex:1 1}.tier ul li{font:var(--body-sm);color:var(--fg-muted);display:flex;gap:8px;align-items:flex-start}.tier ul li .material-symbols-outlined{font-size:18px;color:var(--primary);margin-top:1px;flex-shrink:0}.form-card{background:#fff;border:1px solid var(--border-soft);border-radius:var(--r-lg);padding:32px;box-shadow:var(--shadow-sm);margin-bottom:24px}.form-card .step-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--primary-soft);color:var(--primary-deep);border-radius:var(--r-pill);font:700 13px/1 var(--font-body);margin-right:10px}.form-card h3{font:var(--h3);margin:0 0 22px;display:flex;align-items:center}.field-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.option-pills{display:flex;flex-wrap:wrap;gap:8px}.option-pills label{display:inline-flex;align-items:center;padding:9px 16px;border:1.5px solid var(--border-soft);border-radius:var(--r-md);font:var(--label);cursor:pointer;transition:all var(--dur-base) var(--ease-soft);background:#fff}.option-pills input{display:none}.option-pills label:hover{border-color:var(--primary);color:var(--primary-deep)}.option-pills input:checked+label,.option-pills label.checked{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.gallery-filters{display:flex;gap:8px;justify-content:center;margin-bottom:32px;flex-wrap:wrap}.gallery-filters button{background:transparent;border:1.5px solid var(--border-soft);color:var(--fg-muted);padding:9px 18px;border-radius:var(--r-pill);font:var(--label);cursor:pointer;transition:all var(--dur-base) var(--ease-soft)}.gallery-filters button:hover{border-color:var(--primary);color:var(--primary-deep)}.gallery-filters button.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:16px;gap:16px}.gallery-grid .gitem{border-radius:var(--r-md);overflow:hidden;position:relative;background:var(--cream-300)}.gallery-grid .gitem .ph-img,.gallery-grid .gitem img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease-soft)}.gallery-grid .gitem:hover img{transform:scale(1.05)}.gallery-grid .span-8{grid-column:span 8;aspect-ratio:16/10}.gallery-grid .span-4{grid-column:span 4;aspect-ratio:1/1}.gallery-grid .span-6{grid-column:span 6;aspect-ratio:5/4}.gallery-grid .span-3{grid-column:span 3;aspect-ratio:1/1}.ig-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px}.ig-grid .ig-item{aspect-ratio:1/1;border-radius:var(--r-md);overflow:hidden;background:var(--cream-300);position:relative;cursor:pointer}.ig-grid .ig-item .ph-img,.ig-grid .ig-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease-soft)}.ig-grid .ig-item:hover img{transform:scale(1.06)}.ig-grid .ig-item .overlay{position:absolute;inset:0;background:rgba(100,87,132,.4);opacity:0;pointer-events:none;display:flex;align-items:center;justify-content:center;color:#fff;transition:opacity var(--dur-base) var(--ease-soft)}.ig-grid .ig-item:hover .overlay{opacity:1}.story-grid{display:grid;grid-template-columns:5fr 7fr;grid-gap:56px;gap:56px;align-items:center}.story-photo{border-radius:var(--r-xl);overflow:hidden;aspect-ratio:4/5;box-shadow:var(--shadow-md);background:var(--primary-soft)}.story-photo .ph-img,.story-photo img{width:100%;height:100%;object-fit:cover}.story-text h2{font:var(--h1);color:var(--primary-deep);margin:0 0 24px}.story-text>p{font:var(--body-md);color:var(--fg-muted)}.special-callout{background:var(--cream-200);border:1px solid var(--border-soft);border-radius:var(--r-xl);padding:48px 32px;text-align:center;max-width:720px;margin:0 auto}.special-callout .eyebrow{display:block;margin-bottom:8px}.special-callout h3{font:var(--h2);margin:0 0 12px;color:var(--primary-deep)}.special-callout p{max-width:480px;margin:0 auto 24px;font:var(--body-md);color:var(--fg-muted)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:48px;gap:48px;align-items:start}.contact-list{display:flex;flex-direction:column;gap:16px;margin:24px 0}.contact-list .row{display:flex;gap:14px;padding:12px 0;align-items:center}.contact-list .icon-circle{width:40px;height:40px;border-radius:var(--r-pill);background:var(--primary-soft);color:var(--primary-deep);display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-list .label{font:var(--eyebrow);text-transform:uppercase;letter-spacing:.12em;color:var(--fg-subtle);display:block}.contact-list .value{font:var(--body-md);color:var(--fg)}.hours-card{background:var(--cream-200);border-radius:var(--r-lg);padding:28px}.hours-card .row{display:flex;justify-content:space-between;padding:8px 0;font:var(--body-md);border-bottom:1px dashed var(--border)}.hours-card .row:last-of-type{border-bottom:none}.hours-card .closed{color:var(--fg-subtle)}.fab{position:fixed;bottom:28px;right:28px;background:var(--primary);color:var(--on-primary);padding:14px 22px;border-radius:var(--r-pill);border:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font:var(--label);box-shadow:var(--shadow-xl);z-index:40;transition:all var(--dur-base) var(--ease-soft)}.fab:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl),var(--shadow-md)}.fab:active{transform:scale(.97)}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:var(--ink-700);color:var(--cream-100);padding:12px 22px;border-radius:var(--r-pill);font:var(--label);box-shadow:var(--shadow-lg);z-index:200;display:inline-flex;align-items:center;gap:8px;animation:toastIn .28s var(--ease-soft)}@keyframes toastIn{0%{transform:translate(-50%,30px);opacity:0}to{transform:translate(-50%);opacity:1}}.toast .material-symbols-outlined{color:var(--brand-teal);font-size:18px}.page-fade{animation:pageFade .32s var(--ease-soft)}@keyframes pageFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:960px){.hero{grid-template-columns:1fr;padding:48px 0}.hero h1{font-size:40px}.hero-art{height:380px}.pgrid,.story-grid,.tiers{grid-template-columns:1fr}.story-grid{gap:32px}.ig-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid .span-3,.gallery-grid .span-4,.gallery-grid .span-6,.gallery-grid .span-8{grid-column:span 12;aspect-ratio:4/3}.contact-grid{grid-template-columns:1fr;gap:32px}nav.primary{display:none}.field-grid{grid-template-columns:1fr}.section{padding:56px 0}}.editable{outline:2px dashed transparent;outline-offset:4px;border-radius:4px;transition:outline-color var(--dur-fast) var(--ease-soft)}.editable:hover{outline-color:var(--primary-soft)}.editable:focus{outline-color:var(--primary);outline-style:solid}.editable-image{display:inline-block}.img-edit-btn{position:absolute;top:8px;right:8px;padding:6px 10px;border-radius:var(--r-pill);background:var(--bg-elev);border:1px solid var(--border);font:var(--label);cursor:pointer;box-shadow:var(--shadow-sm)}.img-placeholder{background:var(--bg-soft);border:1px dashed var(--border);border-radius:var(--r-lg);display:grid;place-items:center;color:var(--fg-subtle);font:var(--body-sm);min-height:200px;aspect-ratio:4/3}.popover{position:absolute;z-index:50;top:calc(100% + 8px);right:0;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:16px;min-width:280px}.img-popover .dropzone{border:2px dashed var(--border);border-radius:var(--r-md);padding:20px;color:var(--fg-muted)}.img-popover .dropzone,.or-divider{text-align:center;font:var(--body-sm)}.or-divider{color:var(--fg-subtle);margin:12px 0}.popover-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.editable-number{width:70px;padding:4px 8px;border:1px solid var(--border);border-radius:var(--r-sm);font:inherit}.edit-toggle{display:inline-flex;align-items:center;gap:6px;background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-pill);padding:6px 14px;font:var(--label);cursor:pointer;transition:all var(--dur-base) var(--ease-soft)}.edit-toggle:hover{border-color:var(--primary);color:var(--primary-deep)}.edit-toggle.active{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}