:root{--color-bg: #fdfaf7;--color-bg-alt: #f7f2ed;--color-cream: #f5ece2;--color-rose: #c9a98a;--color-rose-light: #e8d5c4;--color-text: #2c2118;--color-text-muted: #8c7a6b;--color-border: #e8ddd4;--color-white: #ffffff;--font-serif: "Cormorant Garamond", Georgia, serif;--font-script: "Great Vibes", cursive;--font-sans: "Montserrat", -apple-system, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{cursor:pointer;font-family:inherit}h1,h2,h3,h4,h5{font-family:var(--font-serif);font-weight:500;line-height:1.2}.script{font-family:var(--font-script);font-weight:400}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:96px 0}.section-sm{padding:64px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;border-radius:50px;font-family:var(--font-sans);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;transition:all .25s ease;cursor:pointer;border:none;text-decoration:none}.btn-primary{background-color:var(--color-rose);color:var(--color-white)}.btn-primary:hover{background-color:#b8987a;transform:translateY(-1px);box-shadow:0 8px 24px #c9a98a4d}.btn-outline{background-color:transparent;color:var(--color-text);border:1.5px solid var(--color-border)}.btn-outline:hover{border-color:var(--color-rose);color:var(--color-rose)}.btn-ghost{background:none;color:var(--color-text-muted);padding:8px 16px;letter-spacing:.05em}.btn-ghost:hover{color:var(--color-text)}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.form-input,.form-select,.form-textarea{width:100%;padding:12px 16px;border:1.5px solid var(--color-border);border-radius:12px;background:var(--color-white);font-family:var(--font-sans);font-size:14px;color:var(--color-text);transition:border-color .2s ease;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-rose);box-shadow:0 0 0 3px #c9a98a1f}.form-textarea{resize:vertical;min-height:100px}.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238c7a6b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;cursor:pointer}.form-error{font-size:12px;color:#b85c5c}.card{background:var(--color-white);border-radius:20px;border:1px solid var(--color-border);overflow:hidden;transition:box-shadow .25s ease,transform .25s ease}.card:hover{box-shadow:0 12px 40px #2c211814;transform:translateY(-2px)}.card-body{padding:28px}.texture-bg{position:relative}.texture-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/assets/texture.png);background-size:cover;background-position:center;opacity:.04;pointer-events:none;z-index:0}.texture-bg>*{position:relative;z-index:1}.section-label{font-family:var(--font-sans);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:12px;display:block}.badge{display:inline-block;padding:4px 12px;border-radius:50px;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.badge-rose{background:#c9a98a26;color:var(--color-rose);border:1px solid rgba(201,169,138,.3)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.grid-2,.grid-4{grid-template-columns:1fr}.section{padding:64px 0}.container{padding:0 16px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp .7s ease forwards}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg-alt)}::-webkit-scrollbar-thumb{background:var(--color-rose-light);border-radius:3px}
