:root{
  --bg:#120E17; --bg2:#1B1522; --card:#1D1727;
  --accent:#C9A24B; --accent-soft:#E7CE95; --wine:#6B2F3E;
  --text:#F4EEE3; --muted:#C7BFD6; --faint:#8A809A;
  --hair:rgba(201,162,75,0.22);
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:Sora,system-ui,sans-serif;font-weight:300;overflow-x:hidden;
  background-image:radial-gradient(circle,rgba(201,162,75,0.05) 1px,transparent 1px);background-size:26px 26px}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;margin:0}
em{font-style:italic;color:var(--accent-soft)}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent-soft)}
.wrap{max-width:1180px;margin:0 auto;padding-left:24px;padding-right:24px;position:relative}
header{border-bottom:1px solid var(--hair);position:sticky;top:0;background:rgba(18,14,23,0.92);backdrop-filter:blur(6px);z-index:10}
.nav{display:flex;align-items:center;justify-content:space-between;padding:22px 0;flex-wrap:wrap;gap:12px}
.logo {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  white-space: nowrap;
}

.logo img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  object-position: center 22%;
  border: 1.5px solid #C9A24B;
  padding: 2px;
  background: #17130d;
  box-shadow: 0 0 10px rgba(201, 162, 75, 0.25);
  display: block;
}
.navlinks{display:flex;gap:32px;font-size:13px;letter-spacing:0.4px;flex-wrap:wrap}
.navlinks a{position:relative;padding-bottom:3px}
.navlinks a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--accent);transition:right .25s ease}
.navlinks a:hover::after,.navlinks a.active::after{right:0}
.navlinks a.active{color:var(--accent-soft)}
.eyebrow{font-size:11px;letter-spacing:4px;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--accent)}
.center .eyebrow{justify-content:center}
.center .eyebrow::before{display:none}
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border-radius:1px;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:500;cursor:pointer;border:1px solid var(--accent);transition:all .25s ease}
.btn-solid{background:var(--accent);color:#171018}
.btn-solid:hover{background:var(--accent-soft);color:#171018;letter-spacing:2.6px}
.btn-outline{color:var(--accent-soft);background:transparent}
.btn-outline:hover{background:rgba(201,162,75,0.08)}
section{padding:90px 0;position:relative}
.hero{display:flex;gap:64px;align-items:center;flex-wrap:wrap;padding:70px 0 100px;overflow:visible}
.hero-text{flex:1 1 440px;display:flex;flex-direction:column;gap:26px;position:relative;z-index:2}
.hero h1{font-size:clamp(34px,5vw,54px);line-height:1.16}
.hero p.lede{font-size:17px;line-height:1.75;color:var(--muted);max-width:500px;font-weight:300}
.actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px}
.hero-frame{
  flex:1 1 340px;
  position:relative;
  min-height:380px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-frame .mandala{
  position:absolute;
  width:460px;
  height:460px;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  opacity:.55;
  z-index:0;
}

.ph{
  position:relative;
  z-index:1;
  width:240px;
  height:340px;
  object-fit:cover;
  object-position:center center;
}
.corner{position:absolute;width:26px;height:26px;border:1px solid var(--accent);z-index:2}
.corner.tl{top:-1px;left:-1px;border-right:none;border-bottom:none}
.corner.br{bottom:-1px;right:-1px;border-left:none;border-top:none}
.strip{display:flex;justify-content:space-around;flex-wrap:wrap;gap:18px;padding:32px 0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);font-size:12px;color:var(--muted);text-align:center}
.divider{display:flex;align-items:center;gap:14px;justify-content:center;margin:0 auto 60px;width:200px}
.divider .ln{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--hair))}
.divider .ln.r{background:linear-gradient(270deg,transparent,var(--hair))}
.divider .dm{width:6px;height:6px;border:1px solid var(--accent);transform:rotate(45deg)}
.section-head{text-align:center;margin-bottom:8px}
.section-head h2{font-size:clamp(28px,4vw,38px);margin-top:14px;margin-bottom:56px}
.page-head{padding:60px 0 20px;text-align:center}
.page-head h1{font-size:clamp(32px,5vw,46px)}
.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
@media(max-width:900px){.grid3{grid-template-columns:1fr}.grid2{grid-template-columns:1fr}}
@media(max-width:560px){.grid4{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--hair);padding:34px 26px;display:flex;flex-direction:column;gap:14px;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.card:hover{transform:translateY(-6px);border-color:rgba(201,162,75,0.55);box-shadow:0 18px 40px -20px rgba(201,162,75,0.35)}
.icon{width:34px;height:34px;color:var(--accent)}
.card h3{font-size:21px}
.card p{font-size:14px;line-height:1.65;color:var(--muted);margin:0;font-weight:300}
.tag{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--faint)}
.price{font-family:'Cormorant Garamond',serif;font-size:16px;color:var(--accent)}
.bg2{background:var(--bg2)}
.two-col{display:flex;gap:70px;flex-wrap:wrap}
.two-col>div{flex:1 1 320px}
.steps{display:flex;flex-direction:column;margin-top:36px;position:relative;padding-left:6px}
.steps::before{content:"";position:absolute;left:19px;top:8px;bottom:8px;width:1px;background:var(--hair)}
.step{display:flex;gap:22px;align-items:flex-start;padding:16px 0}
.step .num{font-family:'Cormorant Garamond',serif;font-size:24px;color:var(--accent);width:40px;text-align:center;background:var(--bg2);position:relative;z-index:1}
.step .t{font-size:16px;margin-bottom:5px}
.step .d{font-size:14px;color:var(--muted);font-weight:300}
.dropcap p::first-letter{font-family:'Cormorant Garamond',serif;font-size:52px;float:left;line-height:0.8;padding-right:10px;padding-top:8px;color:var(--accent)}
blockquote{font-size:15px;line-height:1.75;font-style:italic;color:#EAE3F2;margin:0;position:relative;font-weight:300}
.quotemark{position:absolute;top:-22px;left:-6px;font-family:'Cormorant Garamond',serif;font-size:64px;color:rgba(201,162,75,0.28)}
.who{margin-top:22px;font-size:12px;color:var(--accent)}
.cta{text-align:center;border-top:1px solid var(--hair)}
.cta p{font-size:16px;color:var(--muted);max-width:560px;margin:16px auto 34px;font-weight:300}
footer{padding:38px 0;border-top:1px solid var(--hair);font-size:12px;color:var(--faint);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
.footlinks{display:flex;gap:24px}
.disclaimer{font-size:11px;color:#655D72;line-height:1.6;padding-bottom:44px}
.credentials{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}
.credentials li{font-size:14px;color:var(--muted);display:flex;gap:12px;align-items:flex-start}
.credentials li::before{content:"—";color:var(--accent)}
.contact-box{background:var(--card);border:1px solid var(--hair);padding:44px;text-align:center;max-width:560px;margin:0 auto}
.contact-box .num{font-family:'Cormorant Garamond',serif;font-size:24px;color:var(--accent-soft);margin:14px 0 26px}
