*,:before,:after{box-sizing:border-box}:root{--bg:#f7f4ef;--bg-elevated:#efe9e0;--bg-card:#fff;--text:#2a2622;--text-muted:#6b6560;--heading:#1f1b18;--accent:#9e3b5c;--accent-dark:#7a2e48;--accent-light:#fdf8f6;--accent-glow:#9e3b5c38;--sage:#5c7a6b;--rose:#c9a87c;--rose-light:#e8d5b8;--border:#2a26221f;--font-display:"Cormorant Garamond", Georgia, serif;--font-body:"Karla", system-ui, sans-serif;--radius:14px;--radius-lg:24px;--transition:.3s cubic-bezier(.4, 0, .2, 1);--shadow-sm:0 4px 24px #2a26220f;--shadow-md:0 12px 40px #9e3b5c1f}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;font-weight:400;line-height:1.65}body:before{content:"";pointer-events:none;z-index:0;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 30h60M30 0v60' stroke='%23c9a87c' stroke-width='0.35' fill='none' opacity='0.35'/%3E%3C/svg%3E");position:fixed;inset:0}#root{z-index:1;min-height:100vh;position:relative}h1,h2,h3{font-family:var(--font-display);color:var(--heading);margin:0;font-weight:600;line-height:1.15}h1{letter-spacing:-.02em;font-size:clamp(2.6rem,5.5vw,4.25rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:1.4rem}p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font-family:inherit}.container{width:min(1120px,100% - 2.5rem);margin-inline:auto}.section{padding:5rem 0}.section-label{letter-spacing:.22em;text-transform:uppercase;color:var(--sage);margin-bottom:.75rem;font-size:.72rem;font-weight:600;display:inline-block}.btn{letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:transform var(--transition), box-shadow var(--transition), background var(--transition), color var(--transition);border:none;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.95rem 1.85rem;font-size:.88rem;font-weight:600;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-outline{background:var(--bg-card);color:var(--accent);border:1.5px solid var(--border)}.btn-outline:hover{border-color:var(--accent);background:var(--accent-light)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.header{z-index:100;transition:background var(--transition), backdrop-filter var(--transition);padding:1.25rem 0;position:fixed;top:0;left:0;right:0}.header.scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm);background:#f7f4eff0}.header-inner{justify-content:space-between;align-items:center;display:flex}.logo{font-family:var(--font-display);color:var(--heading);letter-spacing:.01em;font-size:1.65rem;font-weight:600}.logo span{color:var(--accent)}.nav{align-items:center;gap:2rem;display:flex}.nav a{color:var(--text-muted);transition:color var(--transition);font-size:.875rem;font-weight:400}.nav a:hover{color:var(--accent)}.menu-toggle{color:var(--heading);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.5rem;display:none}@media (width<=768px){.nav{background:var(--bg-elevated);border-left:1px solid var(--border);width:min(280px,85vw);transition:transform var(--transition);flex-direction:column;align-items:flex-start;gap:1.5rem;padding:5rem 2rem 2rem;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.nav.open{transform:translate(0)}.menu-toggle{display:block}}.hero{align-items:center;min-height:100vh;padding-top:6rem;display:flex;position:relative;overflow:hidden}.hero-bg{background:radial-gradient(ellipse 75% 55% at 80% 15%, #9e3b5c1f 0%, transparent 55%), radial-gradient(ellipse 60% 50% at 10% 85%, #5c7a6b26 0%, transparent 50%), var(--bg);pointer-events:none;position:absolute;inset:0}.hero-bg:after{content:"";background:linear-gradient(to top, var(--bg), transparent);height:200px;position:absolute;bottom:0;left:0;right:0}.hero-grid{z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:3rem;display:grid;position:relative}.hero-content p{color:var(--text-muted);max-width:28rem;margin:1.5rem 0 2rem;font-size:1.125rem}.hero-actions{flex-wrap:wrap;gap:1rem;display:flex}.hero-stats{border-top:1px solid var(--border);gap:2.5rem;margin-top:3rem;padding-top:2rem;display:flex}.hero-stat strong{font-family:var(--font-display);color:var(--accent);font-size:2rem;font-weight:600;display:block}.hero-stat span{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.8rem}.hero-visual{aspect-ratio:4/5;border-radius:var(--radius-lg);max-height:560px;position:relative;overflow:hidden}.hero-visual-inner{border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;height:100%;box-shadow:var(--shadow-md);background:linear-gradient(160deg,#9e3b5c40 0%,#0000 55%),linear-gradient(20deg,#5c7a6b33 0%,#0000 45%),url(https://images.unsplash.com/photo-1589128777073-2632576aacb3?w=800&q=80) 50%/cover}.hero-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fffffff2;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex;position:absolute;bottom:1.5rem;left:1.5rem;right:1.5rem}.hero-badge-icon{background:var(--rose);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.25rem;display:flex}.hero-badge p{color:var(--text-muted);font-size:.85rem}.hero-badge strong{color:var(--heading);margin-bottom:.15rem;font-weight:600;display:block}@media (width<=900px){.hero-grid{text-align:center;grid-template-columns:1fr}.hero-content p{margin-inline:auto}.hero-actions,.hero-stats{justify-content:center}.hero-visual{order:-1;max-height:400px}}.about-grid{grid-template-columns:1fr 1.2fr;align-items:center;gap:4rem;display:grid}.about-image{aspect-ratio:1;border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--rose) 0%, transparent 60%), url(https://images.unsplash.com/photo-1558171813-1c7c37fbae18?w=600&q=80) center/cover;border:1px solid var(--border)}.about-content h2{margin-bottom:1.25rem}.about-content>p{color:var(--text-muted);margin-bottom:2rem}.about-list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.about-list li{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);align-items:flex-start;gap:1rem;padding:1rem;display:flex}.about-list-icon{background:#9e3b5c1a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.1rem;display:flex}.about-list strong{color:var(--heading);margin-bottom:.2rem;font-weight:600;display:block}.about-list span{color:var(--text-muted);font-size:.875rem}@media (width<=900px){.about-grid{grid-template-columns:1fr}.about-image{aspect-ratio:16/10;max-height:320px}}.offers{background:var(--bg-elevated)}.offers-header{text-align:center;max-width:36rem;margin:0 auto 3rem}.offers-header p{color:var(--text-muted);margin-top:1rem}.offers-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.offer-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform var(--transition), border-color var(--transition), box-shadow var(--transition);box-shadow:var(--shadow-sm);flex-direction:column;padding:2rem;display:flex}.offer-card:hover{box-shadow:var(--shadow-md);border-color:#9e3b5c59;transform:translateY(-4px)}.offer-card.featured{border-color:var(--accent);background:linear-gradient(180deg, #9e3b5c0f 0%, var(--bg-card) 45%);position:relative}.offer-badge{background:var(--accent);color:#fff;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:.35rem 1rem;font-size:.7rem;font-weight:600;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.offer-card h3{margin-bottom:.5rem}.offer-price{font-family:var(--font-display);color:var(--accent);margin:1rem 0;font-size:2.5rem}.offer-price span{color:var(--text-muted);font-size:1rem;font-family:var(--font-body)}.offer-desc{color:var(--text-muted);flex:1;margin-bottom:1.5rem;font-size:.9rem}.offer-features{margin:0 0 1.5rem;padding:0;font-size:.875rem;list-style:none}.offer-features li{color:var(--text-muted);align-items:center;gap:.5rem;padding:.4rem 0;display:flex}.offer-features li:before{content:"✓";color:var(--accent);font-weight:600}.offer-card .btn{width:100%;margin-top:auto}@media (width<=900px){.offers-grid{grid-template-columns:1fr;max-width:400px;margin-inline:auto}}.testimonials-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.testimonial-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.75rem}.testimonial-stars{color:var(--accent);letter-spacing:.1em;margin-bottom:1rem;font-size:.9rem}.testimonial-card blockquote{font-style:italic;font-family:var(--font-display);color:var(--text);margin:0 0 1.25rem;font-size:1.15rem;line-height:1.5}.testimonial-author{align-items:center;gap:.75rem;display:flex}.testimonial-avatar{background:linear-gradient(135deg, var(--rose), var(--accent));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.85rem;font-weight:600;display:flex}.testimonial-author strong{color:var(--heading);font-size:.9rem;display:block}.testimonial-author span{color:var(--text-muted);font-size:.75rem}@media (width<=900px){.testimonials-grid{grid-template-columns:1fr}}.contact-wrapper{grid-template-columns:1fr 1.2fr;align-items:start;gap:4rem;display:grid}.contact-info h2{margin-bottom:1rem}.contact-info>p{color:var(--text-muted);margin-bottom:2rem}.contact-details{flex-direction:column;gap:1.25rem;display:flex}.contact-detail{align-items:center;gap:1rem;font-size:.95rem;display:flex}.contact-detail-icon{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.contact-form{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:2rem}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group{margin-bottom:1.25rem}.form-group label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem;font-size:.8rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);transition:border-color var(--transition);padding:.85rem 1rem;font-size:.95rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent);outline:none}.form-group textarea{resize:vertical;min-height:120px}.form-success{border:1px solid var(--sage);border-radius:var(--radius);color:var(--sage);text-align:center;background:#5c7a6b1f;margin-top:1rem;padding:1rem}@media (width<=768px){.contact-wrapper,.form-row{grid-template-columns:1fr}}.footer{border-top:1px solid var(--border);text-align:center;padding:2.5rem 0}.footer p{color:var(--text-muted);font-size:.85rem}.footer a{color:var(--accent)}.footer a:hover{text-decoration:underline}.payment-section h2{margin-bottom:1.25rem}.pci-notice{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);text-align:left;box-shadow:var(--shadow-sm);margin:1.5rem 0 2rem;padding:1.25rem 1.5rem;font-size:.92rem}.pci-notice strong{color:var(--heading);margin-bottom:.5rem;display:block}.pci-notice p{margin:0}.setup-banner{background:var(--bg-card);border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-muted);text-align:left;padding:1.25rem;font-size:.9rem}.setup-banner code{color:var(--accent);font-size:.85em}.payment-grid{max-width:520px;margin-inline:auto}.payment-form .amount-hint{color:var(--text-muted);margin-bottom:1rem}.invoice-preview{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:left;margin-bottom:1.5rem;padding:1.5rem}.invoice-preview-header{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.invoice-brand{font-family:var(--font-display);color:var(--heading);font-size:1.35rem}.invoice-meta{color:var(--text-muted);font-size:.8rem;line-height:1.4}.invoice-meta.align-end{text-align:right}.invoice-lines{margin:0}.invoice-line{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;padding:.5rem 0;font-size:.9rem;display:flex}.invoice-line dt{color:var(--text-muted);font-weight:500}.invoice-line dd{text-align:right;color:var(--text);margin:0}.invoice-line.invoice-total{border-bottom:none;margin-top:.5rem;padding-top:1rem;font-size:1rem}.invoice-line.invoice-total dt,.invoice-line.invoice-total dd{color:var(--accent);font-weight:600}.invoice-note{color:var(--text-muted);margin:1rem 0 0;font-size:.8rem;line-height:1.45}.stripe-element-wrap{margin-top:.5rem}.stripe-pay-form .stripe-submit{width:100%;margin-top:1rem}.form-error{color:#b91c1c;margin:.75rem 0 0;font-size:.9rem}.payment-done{background:var(--bg-card);border:1px solid var(--accent);border-radius:var(--radius-lg);text-align:center;max-width:480px;margin-inline:auto;padding:2rem}.payment-done h3{margin-bottom:.75rem}.payment-done p{color:var(--text-muted);margin-bottom:1rem}.countdown{font-size:1.25rem;color:var(--accent)!important;margin:1rem 0 1.5rem!important}.payment-done .btn{margin-top:.5rem}
