:root{--bg:#faf6f1;--bg-soft:#f3ece2;--panel:#fff;--panel-2:#f3ece2;--card-bg:#fff;--line:#e7ddcf;--border:#e7ddcf;--text:#2a241d;--muted:#8c7f6e;--color-primary:#d9b06f;--color-secondary:#c9a0a0;--color-tertiary:#8c6b42;--primary:var(--color-primary);--green:var(--color-secondary);--font-heading:"Playfair Display", Georgia, serif;--font-body:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 1px 2px #2a241d0f;--shadow-md:0 8px 24px #2a241d14;--shadow-lg:0 16px 48px #2a241d1f;font-family:var(--font-body);color:var(--text);background:var(--bg)}@media (prefers-color-scheme:dark){:root{--bg:#17140f;--bg-soft:#201b14;--panel:#201b15;--panel-2:#2a2318;--card-bg:#201b15;--line:#3a3225;--border:#3a3225;--text:#f4ede1;--muted:#b2a38c;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 8px 24px #00000059;--shadow-lg:0 16px 48px #00000073}}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased}body{background:var(--bg);margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.muted{color:var(--muted)}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.01em;font-weight:700}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(18px)}.reveal-visible{opacity:1;transform:translateY(0)}.btn-primary,.btn{border-radius:var(--radius-md);background:var(--c,var(--color-primary));color:#fff;cursor:pointer;border:0;align-items:center;gap:8px;padding:11px 22px;font-weight:600;transition:filter .15s,transform .15s;display:inline-flex}.btn-primary:hover,.btn:hover{filter:brightness(1.08)}.btn-primary-lg{border-radius:var(--radius-md);background:var(--c,var(--color-primary));color:#fff;cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;padding:15px 30px;font-size:16px;font-weight:600;transition:filter .15s;display:inline-flex}.btn-primary-lg:disabled{opacity:.45;cursor:not-allowed}.btn-primary-lg:not(:disabled):hover{filter:brightness(1.08)}.btn-ghost,.btn.ghost{border:1px solid var(--line);border-radius:var(--radius-md);color:var(--text);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:11px 22px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn-ghost:hover,.btn.ghost:hover{background:var(--panel-2);border-color:var(--color-primary)}.btn-ghost.active{border-color:var(--color-primary);color:var(--color-primary)}.cta-white{border-radius:var(--radius-md);color:#201b15;cursor:pointer;background:#fff;border:0;align-items:center;gap:8px;padding:14px 28px;font-size:16px;font-weight:700;display:inline-flex}.cta-white:hover{background:#f1ede6}.cta-main{border-radius:var(--radius-md);background:var(--color-primary);color:#fff;cursor:pointer;box-shadow:var(--shadow-sm);border:0;align-items:center;gap:8px;padding:15px 30px;font-size:15px;font-weight:600;transition:filter .15s,box-shadow .15s;display:inline-flex}.cta-main:hover{filter:brightness(1.08);box-shadow:var(--shadow-md)}.cta-ghost{border:1px solid var(--line);border-radius:var(--radius-md);color:var(--text);align-items:center;gap:8px;padding:14px 24px;font-size:15px;font-weight:600;display:inline-flex}.cta-ghost:hover{background:var(--panel-2)}.btn-back{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:600;display:flex}.btn-back:hover{color:var(--text);border-color:var(--text)}.nav-bar{z-index:100;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 32px;display:flex;position:sticky;top:0}.nav-brand{font-family:var(--font-heading);align-items:center;gap:12px;font-size:19px;font-weight:700;display:flex}.nav-logo{border-radius:var(--radius-sm);background:var(--color-primary);object-fit:cover;flex-shrink:0;width:38px;height:38px}.nav-links{align-items:center;gap:26px;display:flex}.nav-links a{color:var(--muted);letter-spacing:.01em;font-size:14px;font-weight:600}.nav-links a:hover{color:var(--text)}.hero{justify-content:space-between;align-items:center;gap:56px;max-width:1200px;min-height:72vh;margin:0 auto;padding:96px 32px 72px;display:flex}.hero-editorial{position:relative}.hero-editorial:before{content:"";z-index:-1;background:radial-gradient(60% 60% at 30% 20%, color-mix(in srgb, var(--color-primary) 14%, transparent) 0%, transparent 70%), radial-gradient(50% 50% at 80% 0%, color-mix(in srgb, var(--color-tertiary) 12%, transparent) 0%, transparent 70%);pointer-events:none;height:480px;position:absolute;inset:-10% -10% auto}.hero-content{flex:1;max-width:640px}.hero-badge{background:color-mix(in srgb, var(--color-primary) 14%, transparent);color:var(--color-primary);letter-spacing:.02em;border-radius:999px;align-items:center;gap:8px;margin-bottom:26px;padding:7px 16px;font-size:13px;font-weight:600;display:inline-flex}.hero-title{margin:0 0 20px;font-size:clamp(34px,5vw,58px);font-weight:700;line-height:1.08}.hero-sub{color:var(--muted);max-width:520px;margin:0 0 32px;font-size:18px;line-height:1.65}.hero-ctas{flex-wrap:wrap;gap:14px;display:flex}.hero-visual{flex-shrink:0}.hero-logo-mark{object-fit:cover;border-radius:var(--radius-xl);width:180px;height:180px;box-shadow:var(--shadow-lg);border:1px solid var(--line)}.section{max-width:1200px;margin:0 auto;padding:64px 32px}.section-alt{background:var(--panel-2);max-width:unset;padding:64px}.section-alt>*{max-width:1200px;margin-left:auto;margin-right:auto}.section-label{text-transform:uppercase;letter-spacing:.12em;color:var(--color-primary);margin-bottom:14px;font-size:12px;font-weight:700}.section-title{margin:0 0 12px;font-size:clamp(26px,3.4vw,38px);font-weight:700}.section-sub{color:var(--muted);max-width:560px;margin:0 0 36px;font-size:16px;line-height:1.6}.section-subhead{font-family:var(--font-heading);margin:40px 0 18px;font-size:22px;font-weight:700}.section-subhead:first-of-type{margin-top:8px}.services-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.service-card{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:26px;transition:border-color .2s,transform .2s,box-shadow .2s}.service-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-3px)}.service-card h3{font-size:17px;font-family:var(--font-heading);margin:0 0 8px}.service-footer{justify-content:space-between;align-items:center;margin-top:16px;display:flex}.service-duration{color:var(--muted);align-items:center;gap:4px;font-size:13px;display:flex}.service-price{font-size:18px;font-weight:700;font-family:var(--font-heading)}.contact-link{align-items:center;gap:8px;display:flex}.contact-link:hover{color:var(--text)}.faq-item{border-bottom:1px solid var(--line);padding:14px 0}.faq-question{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;padding:0;font-size:15px;font-weight:600;display:flex}.footer{border-top:1px solid var(--line)}.empty-state{border-radius:var(--radius-lg);border:1px dashed var(--line);background:var(--panel-2);color:var(--color-primary);flex-direction:column;align-items:flex-start;gap:10px;max-width:560px;padding:40px;display:flex}.empty-state h2{color:var(--text);margin:4px 0 0;font-size:21px}.empty-state p{max-width:420px;margin:0}.empty-state.small{align-items:center;padding:24px}.event-summary-card{cursor:pointer;background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:20px;max-width:640px;padding:24px 28px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.event-summary-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.event-summary-main{flex:1;gap:8px;display:grid}.event-summary-title{margin:4px 0 0;font-size:22px}.event-summary-meta{color:var(--muted);flex-wrap:wrap;gap:16px;font-size:14px;display:flex}.event-summary-meta span{align-items:center;gap:6px;display:flex}.event-summary-countdown{text-align:center;border-left:1px solid var(--line);flex-shrink:0;padding:0 18px}.event-summary-countdown strong{font-family:var(--font-heading);color:var(--color-primary);font-size:30px;line-height:1;display:block}.event-summary-countdown span{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px}.event-summary-arrow{color:var(--muted);flex-shrink:0}.event-page-header{max-width:760px}.event-page-meta{color:var(--muted);flex-wrap:wrap;gap:20px;margin-top:10px;font-size:15px;display:flex}.event-page-meta span{align-items:center;gap:8px;display:flex}.photo-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.photo-thumb{border:1px solid var(--line);border-radius:var(--radius-md);aspect-ratio:1;background:var(--panel-2);cursor:pointer;padding:0;overflow:hidden}.photo-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .3s;display:block}.photo-thumb:hover img{transform:scale(1.06)}.lightbox{z-index:2000;background:#14100aeb;justify-content:center;align-items:center;padding:40px;display:flex;position:fixed;inset:0}.lightbox-image{border-radius:var(--radius-md);object-fit:contain;max-width:min(90vw,1000px);max-height:84vh;box-shadow:var(--shadow-lg)}.lightbox-close{color:#fff;cursor:pointer;background:0 0;border:none;position:absolute;top:24px;right:28px}.lightbox-nav{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:999px;padding:10px;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-prev{left:20px}.lightbox-next{right:20px}.quote-panel{gap:24px;max-width:720px;display:grid}.quote-category-header{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.quote-category-header h3{margin:0;font-size:18px}.quote-category-total{color:var(--color-primary);font-weight:700}.quote-rows{gap:10px;display:grid}.quote-row{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card-bg);grid-template-columns:1fr auto auto;align-items:baseline;gap:14px;padding:12px 16px;display:grid}.quote-row-name{gap:2px;display:grid}.quote-row-note{font-size:12px}.quote-row-qty{font-size:13px}.quote-row-price{font-weight:600}.quote-total{border-radius:var(--radius-md);background:var(--panel-2);justify-content:space-between;align-items:baseline;padding:18px 22px;font-size:15px;font-weight:600;display:flex}.quote-total strong{font-family:var(--font-heading);color:var(--color-primary);font-size:24px}.payment-panel{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius-lg);max-width:520px;box-shadow:var(--shadow-sm);padding:26px}.payment-mode-toggle{gap:8px;margin-bottom:18px;display:flex}.payment-mode-toggle button{border-radius:var(--radius-sm);border:1px solid var(--line);cursor:pointer;color:var(--muted);background:0 0;flex:1;padding:10px 14px;font-size:13px;font-weight:600}.payment-mode-toggle button.active{border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.coupon-row{gap:8px;margin-bottom:8px;display:flex}.coupon-applied{color:var(--color-secondary);margin:4px 0 12px;font-size:13px}.payment-methods{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.payment-method-chip{border:1px solid var(--line);cursor:pointer;color:var(--muted);background:0 0;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:600}.payment-method-chip.selected{border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.payment-success{border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-secondary) 14%, transparent);color:var(--color-secondary);align-items:center;gap:10px;max-width:520px;padding:20px 24px;font-weight:600;display:flex}.badge{border-radius:999px;align-items:center;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.form-grid-2{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}.form-group{gap:6px;display:grid}.form-group.full{grid-column:1/-1}.form-label{color:var(--muted);align-items:center;gap:6px;margin-bottom:2px;font-size:13px;font-weight:600;display:flex}.form-input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel);width:100%;color:var(--text);outline:none;padding:12px 16px}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 18%, transparent)}.form-input[rows]{resize:vertical;min-height:88px}.confirm-page{background:radial-gradient(circle at top, color-mix(in srgb, var(--color-primary) 10%, transparent) 0, transparent 45%), var(--bg);place-items:center;min-height:100vh;padding:32px;display:grid}.confirm-card{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--radius-xl);text-align:center;width:min(560px,100%);box-shadow:var(--shadow-md);padding:44px 36px}.confirm-card h2{margin:0 0 10px;font-size:26px}.confirm-card>.muted{margin-bottom:24px}.confirm-icon{margin-bottom:20px}.confirm-code{background:color-mix(in srgb, var(--color-secondary) 12%, transparent);border:1px solid color-mix(in srgb, var(--color-secondary) 30%, transparent);border-radius:var(--radius-sm);color:var(--color-secondary);margin-bottom:24px;padding:14px;font-size:15px}.confirm-details{text-align:left;gap:14px;margin-bottom:24px;display:grid}.detail-item{align-items:flex-start;gap:12px;display:flex}.detail-icon{color:var(--muted);flex-shrink:0;margin-top:2px}.detail-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.detail-val{margin-top:2px;font-size:15px}.confirm-note{border-radius:var(--radius-sm);color:#c0392b;text-align:left;background:#c0392b1a;border:1px solid #c0392b47;margin-bottom:24px;padding:14px;font-size:13px}.confirm-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.error-card{text-align:center}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.7s linear infinite spin}@media (width<=900px){.hero{text-align:left;flex-direction:column;min-height:auto;padding:56px 24px}.hero-visual{display:none}.services-grid{grid-template-columns:1fr}.nav-links a{display:none}.section,.section-alt{padding:48px 24px}.event-summary-card{flex-wrap:wrap}.event-summary-countdown{border-left:none;padding:0}.quote-row{grid-template-columns:1fr auto}.quote-row-qty{display:none}}@media (width<=600px){.form-grid-2{grid-template-columns:1fr}}
