:root {
    --pink: #D4838F;
    --pink-light: #E8A5B0;
    --pink-pale: #F2D0D6;
    --blush: #FDE8EC;
    --cream: #FFF9F7;
    --warm: #FFF0EE;
    --text: #4A3838;
    --text-soft: #6B5555;
    --text-muted: #9A8888;
    --white: #FFFFFF;
    --dark: #3A2E2E;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:auto;}
body{font-family:'Montserrat',sans-serif;font-weight:300;color:var(--text);background:var(--cream);line-height:1.7;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;}

/* ===== HEADER ===== */
.header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:16px 40px;display:flex;align-items:center;justify-content:space-between;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:rgba(255,249,247,0.85);transition:padding 0.4s,box-shadow 0.4s;}
.header.scrolled{padding:12px 40px;box-shadow:0 1px 20px rgba(0,0,0,0.04);}
.logo{font-family:'Great Vibes',cursive;font-size:28px;color:var(--pink);display:flex;flex-direction:column;align-items:center;line-height:1;}
.logo-sub{font-family:'Montserrat',sans-serif;font-size:9px;font-weight:700;letter-spacing:0.35em;color:var(--pink-light);margin-top:2px;}

/* ===== NAV (desktop) ===== */
.nav{position:fixed;top:0;right:0;z-index:1002;display:flex;align-items:center;gap:28px;padding:16px 40px;height:60px;}
.nav a{font-size:12px;letter-spacing:0.12em;color:var(--text-soft);transition:color 0.3s;font-weight:400;}
.nav a:hover{color:var(--pink);}
.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 28px;border-radius:100px;background:var(--pink);color:var(--white);font-size:12px;letter-spacing:0.08em;font-weight:500;transition:all 0.3s;border:none;cursor:pointer;}
.btn:hover{background:#C47080;transform:translateY(-1px);box-shadow:0 4px 16px rgba(212,131,143,0.25);}
.burger{display:none;background:none;border:none;cursor:pointer;padding:8px;}
.burger span{display:block;width:22px;height:2px;background:var(--text);margin:4px 0;transition:0.3s;}

/* ===== NAV OVERLAY ===== */
.nav-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.3);z-index:1001;}
.nav-overlay.open{display:block;}

/* ===== FOOTER ===== */
.footer{background:linear-gradient(135deg,#E890A0,#D4838F);color:rgba(255,255,255,0.7);padding:48px 24px 32px;text-align:center;}
.footer-logo{font-family:'Great Vibes',cursive;font-size:32px;color:var(--white);margin-bottom:12px;}
.footer-links{display:flex;justify-content:center;gap:24px;margin-bottom:16px;flex-wrap:wrap;}
.footer-links a{font-size:12px;color:rgba(255,255,255,0.7);transition:color 0.3s;letter-spacing:0.05em;}
.footer-links a:hover{color:var(--white);}
.footer-social{display:flex;justify-content:center;gap:16px;margin-bottom:16px;}
.footer-social a{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,0.4);display:flex;align-items:center;justify-content:center;transition:all 0.3s;}
.footer-social a:hover{background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.6);}
.footer-social a svg{width:16px;height:16px;color:rgba(255,255,255,0.8);}
.footer-social a:hover svg{color:#fff;}
.footer-copy{font-size:10px;color:rgba(255,255,255,0.5);letter-spacing:0.05em;}
.footer .btn{margin-bottom:16px;}

/* ===== PROMO BANNER ===== */
.promo-banner{background:linear-gradient(135deg,var(--pink),#C47080);padding:12px 24px;text-align:center;}
.promo-text{font-family:'Cormorant Garamond',serif;font-size:clamp(15px,2.5vw,18px);color:var(--white);font-weight:500;letter-spacing:0.03em;}

/* ===== RESPONSIVE ===== */
@media(max-width:768px){
    .header{padding:12px 20px;}
    .burger{display:block;}
    .nav{position:fixed;top:0;right:-100%;width:260px;height:100vh;background:var(--cream);flex-direction:column;justify-content:flex-start;padding:100px 40px 40px;gap:24px;transition:right 0.4s;box-shadow:-4px 0 24px rgba(0,0,0,0.06);z-index:1002;}
    .nav.open{right:0;}
    .nav a{font-size:15px;padding:8px 0;}
    .nav a.active{color:var(--pink);opacity:1;}
    .nav:has(a:hover) a.active:not(:hover){color:var(--text-soft);}
    .nav .btn{white-space:nowrap;padding:12px 24px;font-size:12px;}
    .btn{padding:12px 28px;font-size:13px;}
    .footer{padding:36px 20px 28px;}
    .footer-logo{font-size:28px;}
    .footer-links{gap:16px;}
}
