:root{--crimson-900:#2c1017;--crimson-800:#3f1520;--crimson-700:#682837;--crimson-600:#7d3345;--maroon:#6b2737;--pink-100:#fbf3f4;--pink-200:#fdd8de;--pink-300:#febdc6;--cream-50:#faf1e4;--cream-100:#f3e6d3;--olive-600:#565b3a;--olive-800:#3d4128;--ink-900:#2c1017}
html,body{-webkit-text-size-adjust:100%;margin:0}.ss .shop{--card:#fff;--heading:var(--crimson);--muted:color-mix(in srgb, var(--ink) 62%, var(--cream));--line:color-mix(in srgb, var(--crimson-deep) 14%, transparent);--soft:color-mix(in srgb, var(--pink-soft) 45%, #fff);--good:#3d6b3a;--warn:#8a5a00;--bad:#9b2c2c;--radius:20px;--sans:var(--ss-label);--serif:var(--ss-body);--script:var(--ss-display);font-family:var(--serif)}.ss .shop button,.ss .shop input,.ss .shop select,.ss .shop textarea,.ss .shop label,.ss .shop .sans{font-family:var(--sans)}.ss .shop h1,.ss .shop h2,.ss .shop h3{color:var(--heading);font-weight:400;line-height:1.2}.ss .shop h2{font-size:1.45rem}.ss .shop a:not(.btn):not(.ws-card){color:var(--crimson);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--crimson) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--crimson) 35%, transparent)}.ss .shop .eyebrow{color:var(--olive)}.ss .shop .muted{color:var(--muted)}.ss .shop-banner{background:var(--crimson);color:var(--pink-soft);text-align:center;padding:132px 24px 64px;position:relative;overflow:hidden}.ss .shop-banner .eyebrow{color:var(--pink)}.ss .shop .shop-banner a:not(.btn):not(.ws-card){color:inherit;text-decoration:none}.ss .shop .shop-banner a:not(.btn):not(.ws-card):hover{color:#fff}.ss .shop-banner h1{font-family:var(--ss-label);color:var(--pink);letter-spacing:-.01em;margin-top:8px;font-size:clamp(2.2rem,5.6vw,3.4rem);font-weight:700;line-height:1.12}.ss .shop-banner p.sub{max-width:620px;color:color-mix(in srgb, var(--pink-soft) 88%, transparent);margin:14px auto 0;font-size:1.05rem}.ss .shop-banner .pill{margin-bottom:8px}@media (max-width:640px){.ss .shop-banner{padding:112px 18px 48px}}.ss .shop-main{max-width:1140px;margin:0 auto;padding:48px 28px 96px}@media (max-width:640px){.ss .shop-main{padding:32px 16px 72px}}.ss .shop .btn{cursor:pointer;font-family:var(--ss-label);background:var(--crimson);color:var(--pink-soft);border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .2s;display:inline-flex}.ss .shop .btn:hover{background:var(--crimson-deep)}.ss .shop .btn[disabled]{opacity:.6;cursor:progress;box-shadow:none;transform:none}.ss .shop .btn-ghost{color:var(--crimson);border:1px solid var(--crimson);background:0 0}.ss .shop .btn-ghost:hover{background:color-mix(in srgb, var(--crimson) 6%, transparent)}.ss .shop .card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow)}.ss .shop .pill{font-family:var(--sans);background:var(--pink-soft);color:var(--crimson-deep);border-radius:999px;padding:4px 12px;font-size:.8rem;font-weight:600;display:inline-block}.ss .shop .pill-good{color:var(--good);background:#dfeedd}.ss .shop .pill-warn{color:var(--warn);background:#f7e7c6}.ss .shop .pill-bad{color:var(--bad);background:#f6dcdc}.ss .shop .notice{background:var(--soft);border:1px solid var(--line);font-family:var(--sans);border-radius:14px;padding:14px 16px;font-size:.95rem}.ss .shop .notice-bad{color:var(--bad);background:#fbeaea;border-color:#eccaca}.ss .shop .notice-good{color:var(--good);background:#eaf4e8;border-color:#cfe3cb}.ss .shop .ws-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:28px;display:grid}.ss .shop .ws-card{color:var(--ink);flex-direction:column;gap:0;padding:0;text-decoration:none;transition:transform .3s;display:flex;overflow:hidden}.ss .shop .ws-card:hover{box-shadow:0 0 0 2px var(--pink), var(--shadow)}.ss .shop .ws-card-img{aspect-ratio:4/3;background:var(--cream-2) center / cover;color:var(--crimson);font-family:var(--script);place-items:center;font-size:2.4rem;display:grid}.ss .shop .ws-card-body{gap:8px;padding:20px 22px 24px;display:grid}.ss .shop .ws-card-body h2{font-family:var(--sans);letter-spacing:-.01em;font-size:1.35rem;font-weight:700}.ss .shop .ws-meta{font-family:var(--sans);color:var(--muted);font-size:.88rem}.ss .shop .ws-card-foot{font-family:var(--sans);justify-content:space-between;align-items:center;margin-top:8px;display:flex}.ss .shop .ws-price{color:var(--crimson);font-weight:600}.ss .shop .empty{text-align:center;justify-items:center;gap:12px;padding:52px 24px;display:grid}.ss .shop .empty p{color:var(--muted);max-width:460px}.ss .shop .ws-page{gap:36px;display:grid}@media (min-width:900px){.ss .shop .ws-page{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start}}.ss .shop .ws-photo{border-radius:var(--radius);aspect-ratio:16/10;object-fit:cover;width:100%;box-shadow:var(--shadow);margin-bottom:8px}.ss .shop .ws-facts{font-family:var(--sans);background:var(--card);box-shadow:var(--shadow);border-radius:18px;gap:12px;margin:22px 0;padding:20px 22px;display:grid}.ss .shop .ws-facts div{gap:14px;display:flex}.ss .shop .ws-facts dt{min-width:76px;color:var(--olive);padding-top:1px;font-size:.85rem;font-weight:700}.ss .shop .ws-summary{color:var(--crimson-deep);margin-bottom:14px;font-size:1.2rem}.ss .shop .ws-desc{white-space:pre-line}.ss .shop .ws-terms{color:var(--muted);white-space:pre-line;border-top:1px solid var(--line);margin-top:28px;padding-top:20px;font-size:.94rem}.ss .shop .ws-terms h3{font-family:var(--sans);color:var(--olive);margin-bottom:8px;font-size:1rem;font-weight:700}.ss .shop .book{gap:18px;padding:26px;scroll-margin-top:90px;display:grid}@media (min-width:900px){.ss .shop .book{position:sticky;top:96px}}.ss .shop .book h2{font-family:var(--sans);letter-spacing:-.01em;color:var(--crimson);font-size:1.6rem;font-weight:700}.ss .shop .ws-jump{margin-bottom:18px;display:none}@media (max-width:899px){.ss .shop .ws-jump{display:inline-flex}}.ss .shop .field{gap:6px;display:grid}.ss .shop .field label,.ss .shop .field .label{font-size:.9rem;font-weight:500}.ss .shop .field input[type=text],.ss .shop .field input[type=email],.ss .shop .field input[type=tel],.ss .shop .field textarea,.ss .shop .field select,.ss .shop .field input[type=number]{border:1px solid color-mix(in srgb, var(--crimson-deep) 22%, transparent);width:100%;min-height:48px;color:var(--ink);background:#fff;border-radius:14px;padding:10px 16px;font-size:1rem}.ss .shop .field textarea{resize:vertical;min-height:90px}.ss .shop .field input:focus,.ss .shop .field textarea:focus,.ss .shop .field select:focus{outline:2px solid var(--pink);border-color:var(--crimson)}.ss .shop .field .err{color:var(--bad);font-family:var(--sans);font-size:.85rem}.ss .shop .check{align-items:flex-start;gap:10px;font-size:.92rem;display:flex}.ss .shop .check input{width:20px;height:20px;accent-color:var(--crimson);flex:none;margin-top:2px}.ss .shop .tickets{gap:10px;display:grid}.ss .shop .ticket{border:1px solid var(--line);background:var(--cream);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.ss .shop .ticket-name{font-family:var(--sans);font-weight:600}.ss .shop .ticket-desc{color:var(--muted);font-size:.86rem}.ss .shop .ticket-price{font-family:var(--sans);color:var(--crimson);font-weight:600}.ss .shop .stepper{font-family:var(--sans);align-items:center;gap:4px;display:flex}.ss .shop .stepper button{border:1px solid var(--crimson);width:38px;height:38px;color:var(--crimson);cursor:pointer;background:#fff;border-radius:50%;font-size:1.2rem}.ss .shop .stepper button:disabled{opacity:.35;cursor:default}.ss .shop .stepper output{text-align:center;min-width:28px;font-weight:600}.ss .shop .total{font-family:var(--sans);border-top:1px solid var(--line);color:var(--crimson-deep);justify-content:space-between;padding-top:14px;font-size:1.1rem;font-weight:600;display:flex}.ss .shop .pay{gap:24px;max-width:660px;margin:0 auto;display:grid}.ss .shop .pay-card{gap:18px;padding:26px;display:grid}.ss .shop .pay-card h2{font-family:var(--sans);letter-spacing:-.01em;color:var(--crimson);font-size:1.45rem;font-weight:700}.ss .shop .pay-qr{text-align:center;justify-items:center;gap:10px;display:grid}.ss .shop .pay-qr svg{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(260px,100%);height:auto;padding:10px}.ss .shop .pay-qr .caption{font-family:var(--sans);color:var(--crimson);font-size:.9rem;font-weight:600}.ss .shop .rows{font-family:var(--sans);gap:10px;display:grid}.ss .shop .rows div{justify-content:space-between;gap:16px;display:flex}.ss .shop .rows dt{color:var(--muted)}.ss .shop .rows dd{text-align:right;font-weight:600}.ss .shop .ref{font-family:var(--sans);letter-spacing:.06em;color:var(--crimson-deep);font-size:1.5rem;font-weight:600}.ss .shop .copy{background:var(--pink-soft);color:var(--crimson-deep);cursor:pointer;border:0;border-radius:999px;margin-left:8px;padding:4px 12px;font-size:.82rem;font-weight:600}.ss .shop .steps{font-family:var(--sans);gap:6px;padding-left:20px;font-size:.95rem;display:grid}.ss .shop .countdown{font-family:var(--sans);color:var(--pink);font-weight:600}.ss .shop .upload{justify-items:start;gap:10px;display:grid}.ss .shop .sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ss .shop .ws-gallery{gap:12px;margin-bottom:40px;display:grid}.ss .shop .ws-gallery img{object-fit:cover;background:var(--cream-2);border-radius:18px;width:100%;height:100%;display:block}.ss .shop .ws-gallery-1 img{aspect-ratio:21/9}.ss .shop .ws-gallery-2{grid-template-columns:1fr 1fr}.ss .shop .ws-gallery-2 img{aspect-ratio:4/3}.ss .shop .ws-gallery-3{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1.6fr 1fr;height:clamp(320px,42vw,480px)}.ss .shop .ws-gallery-3 img{min-height:0}.ss .shop .ws-gallery-3 img:first-child{grid-row:span 2}@media (max-width:640px){.ss .shop .ws-gallery-2,.ss .shop .ws-gallery-3{scroll-snap-type:x mandatory;height:auto;margin:0 -16px 28px;padding:0 16px;display:flex;overflow-x:auto}.ss .shop .ws-gallery-2 img,.ss .shop .ws-gallery-3 img{aspect-ratio:4/3;scroll-snap-align:center;flex:0 0 85%}}.ss .shop .ws-body{gap:8px;min-width:0;display:grid}.ss .shop .ws-tagline{font-family:var(--sans);letter-spacing:-.01em;color:var(--crimson);margin-bottom:8px;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:700;line-height:1.2}.ss .shop .ws-desc{font-size:1.08rem;line-height:1.7}.ss .shop .ws-tabs{z-index:2;background:color-mix(in srgb, var(--cream) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);font-family:var(--sans);border-radius:999px;gap:6px;margin:28px 0 4px;padding:8px;font-size:.86rem;display:flex;position:sticky;top:72px;overflow-x:auto}.ss .shop .ws-tabs a:not(.btn){white-space:nowrap;color:var(--crimson-deep);border-radius:999px;padding:6px 14px;text-decoration:none}.ss .shop .ws-tabs a:not(.btn):hover{background:var(--pink-soft)}.ss .shop .ws-section{border-top:1px solid var(--line);margin-top:20px;padding:28px 0 8px;scroll-margin-top:140px}.ss .shop .ws-section h3{font-family:var(--sans);letter-spacing:-.01em;color:var(--crimson);margin-bottom:16px;font-size:1.4rem;font-weight:700}.ss .shop .ws-flowers{gap:14px;padding:0;list-style:none;display:grid}.ss .shop .ws-flowers li{padding-left:30px;line-height:1.6;position:relative}.ss .shop .ws-flowers li:before{content:"✿";color:var(--crimson);position:absolute;top:0;left:2px}.ss .shop .ws-steps{counter-reset:step;gap:18px;padding:0;list-style:none;display:grid}.ss .shop .ws-steps li{counter-increment:step;grid-template-columns:40px 1fr;column-gap:14px;display:grid}.ss .shop .ws-steps li:before{content:counter(step);background:var(--pink-soft);width:34px;height:34px;color:var(--crimson-deep);font-family:var(--sans);border-radius:50%;grid-row:span 2;place-items:center;font-size:.9rem;font-weight:600;display:grid}.ss .shop .ws-steps strong{font-family:var(--sans);color:var(--crimson-deep);font-weight:600}.ss .shop .ws-steps span{color:var(--muted);line-height:1.55}.ss .shop .ws-included{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:12px 28px;padding:0;list-style:none;display:grid}.ss .shop .ws-included li{padding-left:30px;line-height:1.5;position:relative}.ss .shop .ws-included li:before{content:"";border:1.5px solid var(--olive);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1.5' fill='none' stroke='%236e8530' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/10px no-repeat;border-radius:50%;width:18px;height:18px;position:absolute;top:3px;left:0}.ss .shop .ws-closing{color:var(--crimson-deep);margin:28px 0 4px;font-size:1.2rem;font-style:italic}.ss .shop .ws-dates{gap:10px;padding:0;list-style:none;display:grid}.ss .shop .ws-dates a{border:1px solid var(--line);background:var(--card);font-family:var(--sans);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex;color:var(--ink)!important;text-decoration:none!important}.ss .shop .ws-dates a:hover{border-color:var(--crimson)}.ss .shop .ws-section.ws-terms{margin-top:20px}.ss .shop .ws-section.ws-terms h3{font-family:var(--sans);text-transform:none;letter-spacing:-.01em;color:var(--crimson);margin-bottom:12px;font-size:1.4rem;font-weight:700}.ss .shop .book-from{font-family:var(--sans);margin:0;font-size:1.05rem}.ss .shop .book-from strong{color:var(--crimson-deep);font-size:1.5rem}.ss .shop .book-when{font-family:var(--sans);color:var(--muted);margin:-10px 0 0;font-size:.92rem}.ss .shop .book-note{margin:0;font-size:.84rem}.ss .shop .ws-card .ws-card-title{color:inherit;text-decoration:none!important}.ss .shop .ws-card .ws-card-title:hover{color:var(--crimson)}.ss .shop .ws-card-dates{gap:8px;margin:6px 0 0;padding:0;list-style:none;display:grid}.ss .shop .ws-card-dates a{border:1px solid var(--line);background:var(--cream);font-family:var(--sans);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;font-size:.9rem;display:flex;color:var(--ink)!important;text-decoration:none!important}.ss .shop .ws-card-dates a:hover{border-color:var(--crimson)}.ss .shop .ws-card .btn-sm{min-height:40px;padding:0 18px;font-size:.88rem}.ss .shop .ws-desc{white-space:normal;gap:14px;display:grid}.ss .shop .ws-desc p{margin:0}.ss .shop .ws-highlight{background:var(--card);box-shadow:var(--shadow);color:var(--crimson-deep);border-radius:18px;margin:0;padding:18px 22px 18px 50px;font-size:1.1rem;line-height:1.65;position:relative}.ss .shop .ws-highlight:before{content:"✿";color:var(--crimson);position:absolute;top:18px;left:20px}.ss .shop .ws-card-dates .pill{white-space:nowrap;flex:none}.ss .shop .ws-other{margin:4px 0 18px}.ss .shop .ws-other h3{font-family:var(--sans);color:var(--crimson);margin-bottom:10px;font-size:1rem;font-weight:700}.ss .shop .ws-dates .muted{font-weight:400}.ss .shop .ws-dates .pill{white-space:nowrap;flex:none}.ss .shop .ws-desc{margin-top:18px}.ss .shop .ws-pair a{justify-content:flex-start;padding:10px 18px 10px 10px}.ss .shop .ws-pair img{object-fit:cover;border-radius:12px;flex:none;width:72px;height:72px}.ss .shop .ws-pair-text{flex:1;gap:2px;min-width:0;display:grid}.ss .shop .ws-pair-perk{color:var(--crimson);font-size:.88rem;font-weight:600}.ss .shop .ws-pair-go{color:var(--crimson);flex:none;font-weight:700}.ss .shop .booking-info{gap:6px}.ss .shop .booking-info .booking-photo{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius) var(--radius) 0 0;width:calc(100% + 52px);max-width:none;margin:-26px -26px 12px}.ss .shop .booking-info section{border-top:1px solid var(--line);margin-top:10px;padding-top:14px}.ss .shop .booking-info h3{color:var(--heading);margin:0 0 8px;font-size:1.05rem}.ss .shop .booking-info p,.ss .shop .booking-info li{font-family:var(--sans);font-size:.95rem;line-height:1.6}.ss .shop .booking-info ul,.ss .shop .booking-info ol{gap:6px;margin:0;padding-left:20px;display:grid}.ss .shop .step-label{font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--crimson);margin:0;font-size:.78rem;font-weight:700}.ss .shop .pay-step2{border:2px solid var(--crimson);background:color-mix(in srgb, var(--pink-200,#fdd8de) 35%, #fff)}.ss .shop .pay-step2 .btn{width:100%}.ss .shop .proof-jump{left:16px;right:16px;bottom:max(16px, env(safe-area-inset-bottom));z-index:30;background:var(--crimson);text-align:center;font-family:var(--sans);border-radius:999px;padding:14px 18px;font-weight:600;display:none;position:fixed;box-shadow:0 10px 28px #2c101747;color:var(--pink-soft,#fbf3f4)!important;text-decoration:none!important}@media (max-width:760px){.ss .shop .proof-jump{display:block}.ss .shop .pay{padding-bottom:72px}}.ss .shop .dropzone{box-sizing:border-box;border:2px dashed color-mix(in srgb, var(--crimson) 35%, transparent);text-align:center;background:#fff;border-radius:16px;justify-items:center;gap:10px;width:100%;padding:18px;transition:background .15s,border-color .15s;display:grid}.ss .shop .dropzone.is-over{border-color:var(--crimson);background:color-mix(in srgb, var(--pink-200,#fdd8de) 45%, #fff)}.ss .shop .dropzone .btn{pointer-events:none;width:100%}.ss .shop .dropzone-hint{font-family:var(--sans);color:var(--muted);font-size:.85rem}@media (hover:none){.ss .shop .dropzone{background:0 0;border:0;padding:0}.ss .shop .dropzone-hint{display:none}}.ss .shop fieldset.guests{border:0;border-top:1px solid var(--line);gap:12px;margin:0;padding:14px 0 0;display:grid}.ss .shop fieldset.guests legend{font-family:var(--sans);margin-bottom:4px;padding:0;font-weight:600}.ss .shop .rows dt{white-space:nowrap}.ss .shop .popup-list{margin:0 0 36px}.ss .shop .popup-list h2{font-family:var(--sans);color:var(--crimson-deep);margin:0 0 12px;font-size:1.1rem}.ss .shop .popup-list ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.ss .shop .popup-row{justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.ss .shop .popup-row strong{font-family:var(--sans);font-size:1.05rem;display:block}.ss .shop .popup-row span{font-family:var(--sans);color:var(--muted);font-size:.9rem}@media (max-width:560px){.ss .shop .popup-row{flex-direction:column;align-items:flex-start}}
