:root{
--purple:#31104F;
--purple-mid:#4B1F7A;
--purple-light:#6B3FA0;
--cream:#FAF8F2;
--lavender:#F5F0FA;
--gold:#D4AF37;
--gold-hover:#E8C84A;
--charcoal:#1A1A1A;
--muted:#6B5B7B;
--border:#E2D8EE;
--sage:#A882C8;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--cream);color:var(--charcoal);font-family:'DM Sans',sans-serif;font-weight:300;font-size:16px;line-height:1.7;overflow-x:hidden;}
.rail{position:fixed;left:0;top:0;height:100vh;width:44px;background:var(--purple);display:flex;align-items:center;justify-content:center;z-index:200;}
.rail span{writing-mode:vertical-rl;transform:rotate(180deg);font-family:'Cormorant Garamond',serif;font-size:12px;letter-spacing:0.18em;color:var(--gold);opacity:0.8;user-select:none;}
nav{position:fixed;top:0;left:44px;right:0;height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:rgba(250,248,242,0.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);z-index:199;}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.nav-logo img{width:36px;height:36px;object-fit:contain;}
.nav-logo span{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:600;letter-spacing:0.06em;color:var(--purple);}
.nav-logo span em{color:var(--gold);font-style:normal;}
.nav-links{display:flex;gap:0;list-style:none;}
.nav-links>li{position:relative;}
.nav-links>li>a{font-size:12px;font-weight:400;letter-spacing:0.07em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:8px 12px;display:block;transition:color 0.2s;white-space:nowrap;}
.nav-links>li>a:hover{color:var(--purple);}
.dropdown{display:none;position:absolute;top:100%;left:0;background:var(--cream);border:1px solid var(--border);min-width:220px;z-index:300;box-shadow:0 8px 24px rgba(49,16,79,0.1);}
.nav-links>li:hover .dropdown{display:block;}
.dropdown a{display:block;padding:10px 18px;font-size:12px;letter-spacing:0.05em;color:var(--muted);text-decoration:none;border-bottom:1px solid var(--border);transition:background 0.15s;}
.dropdown a:last-child{border-bottom:none;}
.dropdown a:hover{background:var(--lavender);color:var(--purple);}
main{margin-left:44px;padding-top:60px;}
section{padding:72px 56px;}
.dark{background:var(--purple);color:var(--cream);}
.alt{background:var(--lavender);}
.eyebrow{font-size:10px;font-weight:500;letter-spacing:0.24em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;display:flex;align-items:center;gap:10px;}
.eyebrow::before{content:'';display:block;width:24px;height:1px;background:var(--gold);}
.sec-title{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,3vw,44px);font-weight:300;color:var(--purple);line-height:1.2;margin-bottom:16px;}
.dark .sec-title{color:var(--cream);}
.dark .eyebrow{color:var(--gold);}
.sec-body{font-size:15px;color:var(--muted);line-height:1.9;max-width:660px;}
.dark .sec-body{color:rgba(250,248,242,0.7);}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--purple);color:var(--cream);text-decoration:none;padding:13px 26px;font-size:12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;transition:background 0.2s;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;}
.btn:hover{background:var(--purple-mid);}
.btn-gold{background:var(--gold);color:var(--purple);}
.btn-gold:hover{background:var(--gold-hover);}
.btn-wa{background:#25D366;color:white;}
.btn-wa:hover{background:#1db954;}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:40px;}
.card{background:white;padding:28px 24px;border-top:3px solid transparent;transition:border-color 0.2s,transform 0.2s;}
.card:hover{border-color:var(--gold);transform:translateY(-3px);}
.card-num{font-family:'Cormorant Garamond',serif;font-size:26px;color:rgba(212,175,55,0.3);margin-bottom:12px;}
.card-title{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:600;color:var(--purple);margin-bottom:8px;}
.card-body{font-size:13px;color:var(--muted);line-height:1.8;}
.card-tag{display:inline-block;margin-top:14px;font-size:9px;letter-spacing:0.14em;text-transform:uppercase;color:var(--gold);font-weight:500;}
.card a.card-link{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-size:11px;font-weight:500;letter-spacing:0.07em;text-transform:uppercase;color:var(--purple);text-decoration:none;border-bottom:1px solid var(--border);padding-bottom:2px;}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-top:40px;}
.photo-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:4px;}
.photo-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px;}
.pill-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
.pill{background:rgba(75,31,122,0.08);color:var(--purple);padding:6px 14px;font-size:12px;letter-spacing:0.05em;}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;}
.testi{padding:24px;border:1px solid var(--border);background:white;position:relative;}
.testi::before{content:'"';font-family:'Cormorant Garamond',serif;font-size:56px;color:var(--gold);opacity:0.2;position:absolute;top:6px;left:16px;line-height:1;}
.testi-stars{color:var(--gold);font-size:12px;margin-bottom:6px;}
.testi-text{font-family:'Cormorant Garamond',serif;font-size:15px;font-style:italic;color:var(--charcoal);line-height:1.7;margin-bottom:14px;padding-top:22px;}
.testi-author{font-size:10px;font-weight:500;letter-spacing:0.07em;text-transform:uppercase;color:var(--muted);}
.loc-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:36px;}
.loc-card{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.12);padding:36px 32px;}
.loc-city{font-family:'Cormorant Garamond',serif;font-size:26px;color:var(--gold);margin-bottom:4px;}
.loc-area{font-size:14px;color:var(--cream);font-weight:400;margin-bottom:8px;}
.loc-details{font-size:12px;color:rgba(250,248,242,0.5);line-height:1.8;}
.loc-link{display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-size:11px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(212,175,55,0.35);padding-bottom:2px;}
.loc-link:hover{border-color:var(--gold);}
.cf{display:flex;flex-direction:column;gap:12px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.cf input,.cf textarea,.cf select{background:white;border:1px solid var(--border);color:var(--charcoal);padding:12px 15px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:300;outline:none;transition:border-color 0.2s;width:100%;}
.cf input:focus,.cf textarea:focus{border-color:var(--gold);}
.cf textarea{resize:vertical;min-height:90px;}
.faq-item{border-bottom:1px solid var(--border);padding:20px 0;}
.faq-q{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:400;color:var(--purple);cursor:pointer;display:flex;justify-content:space-between;align-items:center;}
.faq-a{font-size:14px;color:var(--muted);line-height:1.8;margin-top:12px;display:none;}
.faq-item.open .faq-a{display:block;}
.faq-item.open .faq-arrow{transform:rotate(180deg);}
.faq-arrow{transition:transform 0.2s;font-size:18px;color:var(--gold);}
.success-card{background:white;border:1px solid var(--border);padding:28px;position:relative;}
.success-card::before{content:'"';font-family:'Cormorant Garamond',serif;font-size:56px;color:var(--gold);opacity:0.15;position:absolute;top:6px;left:16px;line-height:1;}
.success-stars{color:var(--gold);font-size:12px;margin-bottom:6px;}
.success-text{font-family:'Cormorant Garamond',serif;font-size:15px;font-style:italic;color:var(--charcoal);line-height:1.75;padding-top:20px;margin-bottom:14px;}
.success-author{font-size:10px;font-weight:500;letter-spacing:0.07em;text-transform:uppercase;color:var(--muted);}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:40px;}
.why-card{background:var(--purple);padding:32px 28px;}
.why-icon{font-size:28px;margin-bottom:14px;}
.why-title{font-family:'Cormorant Garamond',serif;font-size:20px;color:var(--cream);margin-bottom:10px;}
.why-body{font-size:13px;color:rgba(250,248,242,0.65);line-height:1.8;}
.who-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:40px;}
.who-card{background:white;padding:24px;text-align:center;border-top:3px solid var(--gold);}
.who-icon{font-size:32px;margin-bottom:12px;}
.who-title{font-family:'Cormorant Garamond',serif;font-size:18px;color:var(--purple);margin-bottom:8px;}
.who-body{font-size:12px;color:var(--muted);line-height:1.7;}
.page-hero{background:var(--purple);padding:64px 56px;color:var(--cream);}
.page-hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(30px,4vw,52px);font-weight:300;color:var(--cream);line-height:1.15;margin-bottom:14px;}
.page-hero p{font-size:14px;color:rgba(250,248,242,0.65);max-width:560px;line-height:1.85;}
.method-list{list-style:none;display:flex;flex-direction:column;gap:5px;margin-top:10px;}
.method-list li{font-size:12px;color:var(--muted);padding-left:14px;position:relative;}
.method-list li::before{content:'—';position:absolute;left:0;color:var(--gold);}
.wa-fab{position:fixed;bottom:24px;right:24px;width:52px;height:52px;border-radius:50%;background:#25D366;color:white;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(37,211,102,0.4);z-index:999;text-decoration:none;transition:transform 0.2s;}
.wa-fab:hover{transform:scale(1.1);}
.trial-bar{background:var(--gold);padding:16px 56px;display:flex;align-items:center;justify-content:space-between;position:sticky;bottom:0;z-index:98;}
.trial-bar-text{font-family:'Cormorant Garamond',serif;font-size:18px;color:var(--purple);}
.trial-bar a{background:var(--purple);color:var(--cream);padding:10px 24px;font-size:12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;transition:background 0.2s;}
.trial-bar a:hover{background:var(--purple-mid);}
footer{background:#1A0A2E;color:rgba(250,248,242,0.35);padding:24px 56px;display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:0.05em;}
footer a{color:inherit;text-decoration:none;}
footer a:hover{color:var(--gold);}
.footer-logo{font-family:'Cormorant Garamond',serif;font-size:15px;color:rgba(250,248,242,0.5);}
@media(max-width:768px){
.rail{display:none;}
main{margin-left:0;}
nav{left:0;padding:0 16px;}
.nav-links{display:none;}
section,.page-hero{padding:48px 20px;}
.hero-grid{grid-template-columns:1fr!important;gap:24px!important;}
.hero-visual{height:260px!important;}
.two-col,.card-grid,.testi-grid,.loc-grid,.why-grid,.who-grid,.photo-grid-2,.photo-grid-3{grid-template-columns:1fr;gap:16px;}
.dark-strip{grid-template-columns:1fr!important;gap:24px!important;padding:40px 20px!important;}
.form-row{grid-template-columns:1fr;}
footer{flex-direction:column;gap:8px;text-align:center;padding:20px;}
.trial-bar{flex-direction:column;gap:12px;text-align:center;padding:16px 20px;}
.success-grid{grid-template-columns:1fr!important;}
.who-grid{grid-template-columns:1fr 1fr!important;}
}