.sp{--sp-ink:#2a1f24;--sp-accent:#4b2e3f;--sp-base:#f6f0ea;--sp-accent2:#b08d57;--sp-page:#fcfaf8;--sp-surface:#fff;--sp-text:color-mix(in srgb, var(--sp-ink) 90%, white);--sp-mute:color-mix(in srgb, var(--sp-ink) 74%, white);--sp-line:color-mix(in srgb, var(--sp-ink) 12%, white);--sp-tint:color-mix(in srgb, var(--sp-accent) 4%, color-mix(in srgb, var(--sp-base) 55%, white));--sp-eyebrow:color-mix(in srgb, var(--sp-accent2) 50%, var(--sp-ink));--sp-on-accent:#fff;--sp-serif:"Cormorant Garamond", "Noto Serif Display", Georgia, serif;--sp-sans:"Inter", "Jost", "Helvetica Neue", Arial, sans-serif;--sp-fs-xs:12px;--sp-fs-sm:14px;--sp-fs-body:16px;--sp-fs-lead:18px;--sp-fs-h3:24px;--sp-fs-h2:clamp(30px, 6vw, 44px);--sp-fs-h1:clamp(42px, 9vw, 72px);--sp-fs-price:clamp(64px, 16vw, 112px);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--sp-gutter:clamp(20px, 5vw, 48px);--sp-max:1120px;--sp-read:62ch;--sp-r-sm:10px;--sp-r-md:18px;--sp-r-lg:28px;--sp-r-pill:999px;--sp-shadow:0 1px 2px #2a1f240a, 0 12px 32px -16px #2a1f2438;--sp-ease:cubic-bezier(.22, .61, .36, 1);--sp-dur:.52s;background:var(--sp-page);color:var(--sp-text);font-family:var(--sp-sans);font-size:var(--sp-fs-body);-webkit-font-smoothing:antialiased;line-height:1.6}.sp *,.sp :before,.sp :after{box-sizing:border-box}.sp img{max-width:100%;display:block}.sp-wrap{width:100%;max-width:var(--sp-max);padding:0 var(--sp-gutter);margin:0 auto}.sp-sec{padding:var(--sp-8) 0;border-top:1px solid var(--sp-line)}.sp-sec:first-child{border-top:0}@media (min-width:900px){.sp-sec{padding:var(--sp-9) 0}}.sp-eyebrow{font-size:var(--sp-fs-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--sp-eyebrow);margin:0 0 var(--sp-3);font-weight:600}.sp-h1,.sp-h2,.sp-h3{font-family:var(--sp-serif);color:var(--sp-ink);letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:500;line-height:1.04}.sp-h1{font-size:var(--sp-fs-h1)}.sp-h2{font-size:var(--sp-fs-h2);line-height:1.1}.sp-h3{font-size:var(--sp-fs-h3);line-height:1.2}.sp-h1 em,.sp-h2 em{color:var(--sp-accent);font-style:italic}.sp-lead{font-size:var(--sp-fs-lead);color:var(--sp-mute);max-width:var(--sp-read);margin:var(--sp-4) 0 0}.sp-small{font-size:var(--sp-fs-sm);color:var(--sp-mute)}.sp-price{font-family:var(--sp-serif);font-size:var(--sp-fs-price);color:var(--sp-accent);font-variant-numeric:tabular-nums;font-weight:500;line-height:.9}.sp-price small{font-family:var(--sp-sans);font-size:var(--sp-fs-lead);color:var(--sp-mute);margin-left:var(--sp-2);font-weight:400}.sp-rule{background:var(--sp-line);height:1px;margin:var(--sp-6) 0;border:0}.sp-btn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:52px;padding:0 var(--sp-6);border-radius:var(--sp-r-pill);border:1px solid var(--sp-accent);background:var(--sp-accent);color:var(--sp-on-accent);font:500 var(--sp-fs-body) var(--sp-sans);letter-spacing:.02em;cursor:pointer;transition:transform .16s var(--sp-ease), box-shadow .16s var(--sp-ease), background .16s var(--sp-ease);touch-action:manipulation;text-decoration:none;display:inline-flex}.sp-btn:hover{box-shadow:var(--sp-shadow)}.sp-btn:active{transform:scale(.98)}.sp-btn-ghost{color:var(--sp-accent);background:0 0}.sp-btn:focus-visible,.sp-opt:focus-visible{outline:2px solid var(--sp-accent2);outline-offset:3px}.sp-card{background:var(--sp-surface);border:1px solid var(--sp-line);border-radius:var(--sp-r-lg);padding:var(--sp-6)}.sp-photo{border-radius:var(--sp-r-lg);background:var(--sp-tint);aspect-ratio:4/5;position:relative;overflow:hidden}.sp-photo img{object-fit:cover;width:100%;height:100%}.sp-photo.arch{border-radius:999px 999px var(--sp-r-lg) var(--sp-r-lg)}.sp-photo-empty{justify-content:center;align-items:center;gap:var(--sp-2);text-align:center;padding:var(--sp-5);color:var(--sp-mute);font-size:var(--sp-fs-sm);background:radial-gradient(120% 80% at 70% 20%, color-mix(in srgb, var(--sp-accent2) 14%, white) 0%, var(--sp-tint) 60%);flex-direction:column;display:flex;position:absolute;inset:0}.sp-photo-empty b{font-family:var(--sp-serif);font-size:var(--sp-fs-h3);color:var(--sp-ink);font-weight:500}.sp-trust{gap:var(--sp-3) var(--sp-6);padding:var(--sp-5) 0;border-top:1px solid var(--sp-line);border-bottom:1px solid var(--sp-line);font-size:var(--sp-fs-sm);color:var(--sp-text);flex-wrap:wrap;display:flex}.sp-trust span{align-items:center;gap:var(--sp-2);display:inline-flex}.sp-trust span:before{content:"";background:var(--sp-accent2);border-radius:50%;flex:none;width:6px;height:6px}.sp-quote{font-family:var(--sp-serif);color:var(--sp-ink);margin:0;font-size:clamp(22px,4vw,28px);line-height:1.3}.sp-quote-by{margin-top:var(--sp-3);font-size:var(--sp-fs-sm);color:var(--sp-mute)}.sp-stars{color:var(--sp-eyebrow);letter-spacing:.12em}.sp-opt{justify-content:space-between;align-items:center;gap:var(--sp-4);width:100%;min-height:64px;padding:var(--sp-4) var(--sp-5);border:1px solid var(--sp-line);border-radius:var(--sp-r-md);background:var(--sp-surface);color:var(--sp-ink);font:500 var(--sp-fs-lead) var(--sp-sans);text-align:left;cursor:pointer;transition:border-color .16s var(--sp-ease), background .16s var(--sp-ease), transform .16s var(--sp-ease);display:flex}.sp-opt:hover{border-color:var(--sp-accent)}.sp-opt[aria-pressed=true],.sp-opt.on{border-color:var(--sp-accent);background:var(--sp-tint)}.sp-progress{background:var(--sp-line);border-radius:2px;height:3px;overflow:hidden}.sp-progress i{background:var(--sp-accent);height:100%;transition:width var(--sp-dur) var(--sp-ease);display:block}.sp-sticky{z-index:40;justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-gutter) calc(var(--sp-3) + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--sp-line);background:#fffffff0;display:flex;position:sticky;bottom:0}.sp-sticky .sp-btn{min-height:48px;padding:0 var(--sp-5)}@media (min-width:900px){.sp-sticky{display:none}}.sp-reveal{opacity:0;transition:opacity var(--sp-dur) var(--sp-ease), transform var(--sp-dur) var(--sp-ease);transform:translateY(16px)}.sp-reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.sp-reveal{opacity:1;transition:none;transform:none}.sp-btn,.sp-opt,.sp-progress i{transition:none}}
