:root{--color-bg-primary:#fff;--color-bg-ivory:#faf7f0;--color-bg-ivory-soft:#fdfbf7;--color-bg-beige:#f4efe6;--color-bg-beige-light:#f9f6f0;--color-border-beige:#e9ddc8;--color-border-gold-subtle:#c5a25340;--color-border-gold-medium:#c5a25373;--color-gold-primary:#c5a253;--color-gold-dark:#a48334;--color-gold-light:#dfca8e;--color-gold-surface:#fdfbf4;--color-text-primary:#2d2a26;--color-text-secondary:#5a544c;--color-text-muted:#847c72;--color-text-gold:#9c7923;--font-heading:"Playfair Display", "Cormorant Garamond", Georgia, serif;--font-serif-accent:"Cormorant Garamond", Georgia, serif;--font-body:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--shadow-sm:0 2px 8px #2d2a260a;--shadow-md:0 6px 20px #2d2a260f;--shadow-lg:0 14px 36px #2d2a2614;--shadow-gold:0 8px 24px #c5a25326;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-full:9999px;--transition-fast:.2s ease;--transition-normal:.3s ease;--transition-smooth:.4s cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:16px;overflow-x:hidden}body{font-family:var(--font-body);color:var(--color-text-primary);background-color:var(--color-bg-ivory);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-text-primary);font-weight:600;line-height:1.25}.text-gold{color:var(--color-gold-primary)}.font-serif{font-family:var(--font-heading)}.font-serif-accent{font-family:var(--font-serif-accent)}.container{width:100%;max-width:1240px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}.section{padding-top:80px;padding-bottom:80px}@media (width<=768px){.section{padding-top:50px;padding-bottom:50px}}.section-header{text-align:center;max-width:720px;margin:0 auto 52px}.section-tag{letter-spacing:.16em;text-transform:uppercase;color:var(--color-gold-dark);background-color:var(--color-gold-surface);border:1px solid var(--color-border-gold-subtle);border-radius:var(--radius-full);margin-bottom:12px;padding:4px 14px;font-size:.8rem;font-weight:600;display:inline-block}.section-title{color:var(--color-text-primary);letter-spacing:-.01em;margin-bottom:16px;font-size:clamp(2rem,3.5vw,2.75rem)}.section-subtitle{color:var(--color-text-secondary);font-size:1.05rem;font-weight:400;line-height:1.6}.btn{letter-spacing:.04em;border-radius:var(--radius-sm);transition:all var(--transition-normal);text-align:center;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:.95rem;font-weight:500;display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(135deg,#d4af37 0%,#c5a253 100%);box-shadow:0 4px 16px #c5a2534d}.btn-primary:hover{background:linear-gradient(135deg,#c5a253 0%,#a48334 100%);transform:translateY(-1px);box-shadow:0 6px 20px #c5a25366}.btn-outline{border:1px solid var(--color-gold-primary);color:var(--color-text-primary);background-color:#fff}.btn-outline:hover{background-color:var(--color-gold-surface);border-color:var(--color-gold-dark);color:var(--color-gold-dark);transform:translateY(-1px)}.card-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:32px;display:grid}@media (width<=640px){.card-grid{grid-template-columns:1fr;gap:24px}}.card{background:var(--color-bg-primary);border:1px solid var(--color-border-gold-subtle);border-radius:var(--radius-md);transition:all var(--transition-smooth);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.card:hover{border-color:var(--color-border-gold-medium);box-shadow:var(--shadow-lg), var(--shadow-gold);transform:translateY(-6px)}.category-card{border-radius:var(--radius-md);border:1px solid var(--color-border-gold-subtle);height:380px;box-shadow:var(--shadow-sm);transition:all var(--transition-smooth);display:block;position:relative;overflow:hidden}.category-card:hover{box-shadow:var(--shadow-lg), var(--shadow-gold);border-color:var(--color-gold-primary);transform:translateY(-6px)}.category-card .card-media{width:100%;height:100%;position:absolute;inset:0}.category-card .card-media img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1)}.category-card:hover .card-media img{transform:scale(1.06)}.category-card .card-overlay{color:#fff;background:linear-gradient(#1917141a 0%,#19171466 50%,#191714e0 100%);flex-direction:column;justify-content:flex-end;padding:28px 24px;display:flex;position:absolute;inset:0}.category-card .card-title{font-family:var(--font-heading);color:#fff;text-shadow:0 2px 6px #0000004d;margin-bottom:8px;font-size:1.45rem;font-weight:600}.category-card .card-desc{color:#f4efe6;-webkit-line-clamp:2;opacity:.9;-webkit-box-orient:vertical;margin-bottom:16px;font-size:.9rem;line-height:1.4;display:-webkit-box;overflow:hidden}.category-card .card-action{letter-spacing:.08em;text-transform:uppercase;color:#dfca8e;align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:inline-flex}.service-card{border-radius:var(--radius-md);border:1px solid var(--color-border-gold-subtle);transition:all var(--transition-smooth);box-shadow:var(--shadow-sm);background:#fff;flex-direction:column;display:flex;overflow:hidden}.service-card:hover{border-color:var(--color-gold-primary);box-shadow:var(--shadow-md), var(--shadow-gold);transform:translateY(-5px)}.service-card .service-image-wrapper{background-color:var(--color-bg-beige-light);width:100%;height:240px;position:relative;overflow:hidden}.service-card .service-image-wrapper img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1)}.service-card:hover .service-image-wrapper img{transform:scale(1.05)}.service-card .service-content{flex-direction:column;flex-grow:1;padding:24px;display:flex}.service-card .service-name{font-family:var(--font-heading);color:var(--color-text-primary);margin-bottom:10px;font-size:1.25rem;font-weight:600;line-height:1.3}.service-card .service-desc{color:var(--color-text-secondary);flex-grow:1;margin-bottom:20px;font-size:.92rem;line-height:1.55}.service-card .service-footer{border-top:1px solid var(--color-border-beige);justify-content:space-between;align-items:center;padding-top:16px;display:flex}.service-price-tag{flex-direction:column;display:flex}.service-price-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);font-size:.72rem;font-weight:500}.service-price-value{color:var(--color-gold-dark);font-size:1.05rem;font-weight:700;font-family:var(--font-body)}.badge-gold{background-color:var(--color-gold-surface);border:1px solid var(--color-border-gold-subtle);color:var(--color-gold-dark);letter-spacing:.04em;border-radius:var(--radius-sm);padding:3px 8px;font-size:.75rem;font-weight:600;display:inline-block}.state-container{text-align:center;border-radius:var(--radius-md);border:1px dashed var(--color-border-gold-medium);background:#fff;margin:32px 0;padding:64px 24px}.state-spinner{border:3px solid var(--color-border-gold-subtle);border-top-color:var(--color-gold-primary);border-radius:50%;width:44px;height:44px;margin:0 auto 16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.dev-banner{border-bottom:1px solid var(--color-border-gold-subtle);color:var(--color-text-secondary);text-align:center;background-color:#fffdf9;justify-content:center;align-items:center;gap:8px;padding:7px 16px;font-size:.8rem;display:flex}.dev-banner-badge{background:var(--color-gold-surface);border:1px solid var(--color-border-gold-subtle);color:var(--color-gold-dark);border-radius:var(--radius-sm);text-transform:uppercase;padding:2px 6px;font-size:.7rem;font-weight:600}.form-group{flex-direction:column;gap:6px;width:100%;min-width:0;display:flex}.form-label{color:var(--color-text-secondary);align-items:center;gap:4px;font-size:.86rem;font-weight:600;display:flex}.form-label .req{color:#e53e3e;font-weight:700}.form-input,.form-textarea,select.form-input{width:100%;color:var(--color-text-primary);border:1px solid var(--color-border-beige);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box;background-color:#fff;outline:none;min-height:44px;padding:11px 14px;font-family:inherit;font-size:.94rem}.form-textarea{resize:vertical;min-height:84px;line-height:1.5}.form-input:focus,.form-textarea:focus,select.form-input:focus{border-color:var(--color-gold-primary);box-shadow:0 0 0 3px #c5a25333}.form-input.input-error,.form-textarea.input-error{background-color:#fffdfd;border-color:#e53e3e}.form-input:disabled,.form-textarea:disabled,select.form-input:disabled{background-color:var(--color-bg-beige-light);color:var(--color-text-muted);cursor:not-allowed}.form-row-2{grid-template-columns:1fr 1fr;gap:16px;width:100%;min-width:0;display:grid}@media (width<=640px){.form-row-2{grid-template-columns:1fr;gap:14px}}.field-error-text{color:#e53e3e;margin-top:2px;font-size:.78rem;font-weight:500;display:block}@media (width<=768px){button,a.btn,input[type=submit],.action-btn{min-height:44px}}
