:root{--dd-bg-cream:#FFF5E4;--dd-pink-light:#FFE3E1;--dd-pink-medium:#FFD1D1;--dd-pink-deep:#FF9494;--dd-text-dark:#4A3535;--dd-text-muted:#8C6D6D;--dd-white:#FFFFFF;--dd-border:rgba(74, 53, 53, 0.08);--dd-border-dark:rgba(74, 53, 53, 0.18);--font-serif:'Playfair Display', Georgia, serif;--font-sans:'Outfit', 'Inter', sans-serif;--text-xs:clamp(0.7rem,   0.65rem + 0.2vw,  0.8rem);--text-sm:clamp(0.825rem, 0.78rem + 0.2vw,  0.9rem);--text-base:clamp(0.95rem,  0.92rem + 0.15vw, 1.05rem);--text-md:clamp(1.05rem,  1.0rem  + 0.2vw,  1.15rem);--text-lg:clamp(1.15rem,  1.1rem  + 0.4vw,  1.3rem);--text-xl:clamp(1.3rem,   1.2rem  + 0.6vw,  1.6rem);--text-2xl:clamp(1.5rem,   1.35rem + 0.8vw,  2.1rem);--text-3xl:clamp(1.85rem,  1.6rem  + 1.2vw,  2.7rem);--text-4xl:clamp(2.2rem,   1.8rem  + 1.8vw,  3.5rem);--text-5xl:clamp(2.7rem,   2.1rem  + 2.8vw,  5.2rem);--radius-xs:4px;--radius-sm:8px;--radius-base:14px;--radius-lg:22px;--radius-xl:30px;--radius-full:9999px;--shadow-xs:0 2px 4px rgba(74, 53, 53, 0.03);--shadow-sm:0 4px 12px rgba(74, 53, 53, 0.05);--shadow-md:0 10px 30px rgba(74, 53, 53, 0.07);--shadow-lg:0 20px 50px rgba(74, 53, 53, 0.1);--shadow-inset:inset 0 2px 8px rgba(74, 53, 53, 0.05);--transition-fast:all 150ms cubic-bezier(0.16, 1, 0.3, 1);--transition-base:all 300ms cubic-bezier(0.16, 1, 0.3, 1);--transition-slow:all 600ms cubic-bezier(0.16, 1, 0.3, 1);--container-max:1240px;--header-height:80px}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--dd-text-dark);background-color:var(--dd-bg-cream);line-height:1.6;overflow-x:hidden;min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:400;line-height:1.25;color:var(--dd-text-dark)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl);font-family:var(--font-sans)}h6{font-size:var(--text-lg);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em}p{color:var(--dd-text-muted)}a{color:inherit;text-decoration:none;transition:var(--transition-fast)}a:hover{color:var(--dd-pink-deep)}button,input,textarea,select{font:inherit;color:inherit;outline:none}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 2rem;border-radius:var(--radius-full);font-family:var(--font-sans);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;transition:var(--transition-base);border:1.5px solid #fff0}.btn--primary{background-color:var(--dd-text-dark);color:var(--dd-bg-cream)}.btn--primary:hover{background-color:var(--dd-pink-deep);color:var(--dd-white);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.btn--outline{background-color:#fff0;color:var(--dd-text-dark);border-color:var(--dd-text-dark)}.btn--outline:hover{background-color:var(--dd-text-dark);color:var(--dd-bg-cream);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.btn--pink{background-color:var(--dd-pink-deep);color:var(--dd-white)}.btn--pink:hover{background-color:var(--dd-text-dark);color:var(--dd-bg-cream);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.btn--ghost-white{background-color:rgb(255 255 255 / .15);backdrop-filter:blur(10px);border:1.5px solid rgb(255 255 255 / .7);color:var(--dd-white)}.btn--ghost-white:hover{background-color:var(--dd-white);color:var(--dd-text-dark);border-color:var(--dd-white)}#dd-page-wrapper{opacity:1}#dd-page-wrapper.is-loaded{opacity:1}input[type="text"],input[type="email"],input[type="password"],input[type="tel"],textarea,select{width:100%;padding:.9rem 1.2rem;border-radius:var(--radius-base);border:1.5px solid var(--dd-border);background-color:var(--dd-white);color:var(--dd-text-dark);transition:var(--transition-base)}input[type="text"]:focus,input[type="email"]:focus,input[type="password"]:focus,input[type="tel"]:focus,textarea:focus,select:focus{border-color:var(--dd-pink-deep);box-shadow:0 0 0 4px rgb(255 148 148 / .15)}