
:root{
  --bg:#f6f1ea;
  --paper:#fffaf4;
  --paper-2:#f0e8df;
  --ink:#191716;
  --muted:#6b625c;
  --line:rgba(25,23,22,.10);
  --shadow:0 24px 70px rgba(40,30,26,.08);
  --shadow-soft:0 12px 32px rgba(40,30,26,.06);
  --sage:#6d7d72;
  --clay:#bc8b74;
  --mist:#d7d0c9;
  --radius:30px;
  --radius-sm:18px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at top left, rgba(188,139,116,.17), transparent 32%),
    radial-gradient(circle at 90% 10%, rgba(109,125,114,.16), transparent 28%),
    linear-gradient(180deg, #fcfaf7 0%, var(--bg) 55%, #f7f1ea 100%);
  line-height:1.55;
}
h1,h2,h3,h4,p{margin:0}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrapper{width:min(calc(100% - 32px), var(--max)); margin:0 auto}
.topbar{
  position:sticky; top:0; z-index:20;
  backdrop-filter: blur(18px);
  background:rgba(252,250,247,.72);
  border-bottom:1px solid rgba(25,23,22,.06);
}
.topbar-inner{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; padding:16px 0;
}
.brand{
  display:flex; align-items:center; gap:12px; min-width:0;
}
.brand-mark{
  width:42px;height:42px;border-radius:14px;
  background:linear-gradient(145deg, rgba(109,125,114,.95), rgba(188,139,116,.9));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.32), var(--shadow-soft);
  position:relative; flex:0 0 auto;
}
.brand-mark:before,.brand-mark:after{
  content:""; position:absolute; background:rgba(255,250,244,.9); border-radius:999px;
}
.brand-mark:before{width:18px;height:2px;left:12px;top:14px;transform:rotate(36deg)}
.brand-mark:after{width:14px;height:2px;left:15px;top:22px;transform:rotate(-28deg)}
.brand-copy{min-width:0}
.brand-copy strong{
  display:block; font-weight:600; letter-spacing:-.02em;
}
.brand-copy span{
  display:block; font-size:12px; color:var(--muted); white-space:nowrap;
}
.nav{
  display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end;
}
.nav a{
  padding:10px 14px; border:1px solid rgba(25,23,22,.08); border-radius:999px;
  background:rgba(255,250,244,.72); font-size:14px; color:var(--muted);
}
.nav a:hover{background:white}
.hero{padding:44px 0 36px}
.hero-shell{
  display:grid; grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr); gap:22px; align-items:stretch;
}
.hero-left,.hero-right,.panel,.guide-card,.note-card,.faq-card,.info-card,.footer-card,.form-panel,.page-shell,.split-card{
  background:linear-gradient(180deg, rgba(255,250,244,.94), rgba(255,250,244,.78));
  border:1px solid rgba(25,23,22,.08);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.hero-left{
  padding:28px;
  position:relative;
  overflow:hidden;
}
.hero-left:before{
  content:""; position:absolute; right:-80px; top:-70px; width:240px; height:240px;
  background:radial-gradient(circle, rgba(109,125,114,.22), transparent 64%);
}
.eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-size:12px; text-transform:uppercase; letter-spacing:.15em;
  color:var(--muted); margin-bottom:20px;
}
.eyebrow:before{
  content:""; width:26px; height:1px; background:currentColor; opacity:.7;
}
.hero-title{
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(40px, 7vw, 78px);
  line-height:.96; letter-spacing:-.04em; max-width:11ch;
}
.hero-copy{
  max-width:57ch; color:var(--muted); font-size:17px; margin-top:22px;
}
.hero-actions{
  display:flex; flex-wrap:wrap; gap:12px; margin-top:28px;
}
.button, button{
  appearance:none; border:none; cursor:pointer;
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:14px 18px; border-radius:999px; font-weight:600; font-size:15px;
  transition:.2s ease;
}
.button.primary, button.primary{
  color:#fffaf4;
  background:linear-gradient(135deg, var(--sage), #4f5b52);
  box-shadow:0 12px 28px rgba(79,91,82,.22);
}
.button.secondary{
  color:var(--ink); background:rgba(255,250,244,.9); border:1px solid rgba(25,23,22,.1);
}
.button:hover, button:hover{transform:translateY(-1px)}
.mini-rail{
  display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:28px;
}
.mini-rail .chip{
  padding:14px 16px; border-radius:18px; background:rgba(240,232,223,.8);
  color:var(--muted); border:1px solid rgba(25,23,22,.06); font-size:14px;
}
.hero-right{
  padding:18px;
  display:grid; grid-template-rows:auto auto 1fr; gap:14px;
}
.hero-stat{
  display:grid; grid-template-columns:repeat(2,1fr); gap:12px;
}
.info-card{
  padding:18px; border-radius:24px; box-shadow:var(--shadow-soft);
}
.info-label{
  font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted);
}
.info-value{
  margin-top:12px; font-size:18px; letter-spacing:-.02em; font-weight:600;
}
.info-copy{
  margin-top:8px; color:var(--muted); font-size:14px;
}
.signature{
  padding:22px; border-radius:26px;
  background:linear-gradient(160deg, rgba(240,232,223,.95), rgba(255,250,244,.84));
  border:1px solid rgba(25,23,22,.08);
}
.signature h3{
  font-family:Georgia, "Times New Roman", serif; font-size:28px; line-height:1.05; letter-spacing:-.03em;
}
.signature p{color:var(--muted); margin-top:12px}
.signature-list{
  display:grid; gap:10px; margin-top:20px;
}
.signature-list div{
  display:flex; align-items:flex-start; gap:10px; color:var(--ink);
}
.dot{
  width:10px; height:10px; border-radius:999px; margin-top:7px;
  background:linear-gradient(135deg,var(--clay),var(--sage)); flex:0 0 auto;
}
.section{
  padding:22px 0;
}
.section-shell{
  display:grid; grid-template-columns: 260px minmax(0,1fr); gap:18px; align-items:start;
}
.section-rail{
  position:relative;
}
.rail-card{
  position:sticky; top:94px;
  padding:20px; border-radius:28px;
  background:rgba(255,250,244,.64);
  border:1px solid rgba(25,23,22,.08);
  box-shadow:var(--shadow-soft);
}
.rail-label{
  font-size:12px; text-transform:uppercase; letter-spacing:.16em; color:var(--muted);
}
.rail-title{
  margin-top:14px; font-family:Georgia, "Times New Roman", serif; font-size:34px; line-height:1.02; letter-spacing:-.03em;
}
.rail-copy{
  margin-top:12px; color:var(--muted); font-size:15px;
}
.grid-guides{
  display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:18px;
}
.guide-card{
  padding:24px; position:relative; overflow:hidden;
}
.guide-card:before{
  content:""; position:absolute; inset:auto -30px -40px auto; width:160px; height:160px;
  background:radial-gradient(circle, rgba(215,208,201,.6), transparent 64%);
}
.guide-top{
  display:flex; align-items:flex-start; justify-content:space-between; gap:14px;
}
.guide-kicker{
  font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted);
}
.guide-price{
  padding:10px 14px; border-radius:999px; background:rgba(240,232,223,.92); font-weight:600;
}
.guide-card h3{
  margin-top:16px; font-family:Georgia, "Times New Roman", serif; font-size:34px; line-height:1.02; letter-spacing:-.03em;
  max-width:11ch;
}
.guide-card p{
  margin-top:16px; color:var(--muted); max-width:48ch;
}
.guide-meta{
  display:flex; flex-wrap:wrap; gap:10px; margin-top:20px;
}
.guide-meta span{
  font-size:13px; color:var(--muted); padding:8px 12px; border-radius:999px;
  background:rgba(255,250,244,.85); border:1px solid rgba(25,23,22,.07);
}
.notes-grid{
  display:grid; grid-template-columns:1.1fr .9fr; gap:18px;
}
.note-card{
  padding:26px;
}
.note-card h3,.split-card h3{
  font-family:Georgia, "Times New Roman", serif; font-size:34px; line-height:1.03; letter-spacing:-.03em;
}
.note-card p,.split-card p{margin-top:14px; color:var(--muted)}
.note-points{
  display:grid; gap:12px; margin-top:22px;
}
.note-points div{
  padding:14px 16px; border-radius:20px; background:rgba(240,232,223,.72);
  border:1px solid rgba(25,23,22,.06);
}
.process-grid{
  display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); gap:14px;
}
.step-card{
  padding:22px; border-radius:26px; background:rgba(255,250,244,.72);
  border:1px solid rgba(25,23,22,.08); box-shadow:var(--shadow-soft);
}
.step-number{
  display:inline-flex; align-items:center; justify-content:center;
  width:34px; height:34px; border-radius:999px; background:rgba(109,125,114,.12);
  color:var(--sage); font-weight:700; margin-bottom:16px;
}
.step-card h4{font-size:18px; letter-spacing:-.02em}
.step-card p{margin-top:10px; color:var(--muted); font-size:14px}
.faq-grid{
  display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px;
}
.faq-card{
  padding:22px;
}
.faq-card h4{
  font-size:18px; letter-spacing:-.02em;
}
.faq-card p{
  margin-top:12px; color:var(--muted);
}
.inquiry-shell{
  display:grid; grid-template-columns: .95fr 1.05fr; gap:18px;
}
.split-card{
  padding:28px;
}
.form-panel{
  padding:24px;
}
.form-grid{
  display:grid; gap:14px; margin-top:18px;
}
label{
  display:grid; gap:8px; font-size:14px; color:var(--muted);
}
input, select, textarea{
  width:100%; border:1px solid rgba(25,23,22,.1); border-radius:18px;
  padding:14px 15px; background:rgba(255,250,244,.9); color:var(--ink);
  font:inherit;
}
textarea{min-height:140px; resize:vertical}
.form-note{
  margin-top:16px; padding:14px 16px; border-radius:18px;
  background:rgba(240,232,223,.74); color:var(--muted); font-size:14px;
}
.footer{
  padding:24px 0 38px;
}
.footer-grid{
  display:grid; grid-template-columns:1.1fr .9fr; gap:18px;
}
.footer-card{
  padding:24px;
}
.footer-card h3{
  font-family:Georgia, "Times New Roman", serif; font-size:30px; line-height:1.02; letter-spacing:-.03em;
}
.footer-list{
  display:grid; gap:8px; margin-top:16px; color:var(--muted);
}
.footer-links{
  display:flex; flex-wrap:wrap; gap:10px; margin-top:18px;
}
.footer-links a{
  padding:10px 14px; border-radius:999px; background:rgba(240,232,223,.72);
  border:1px solid rgba(25,23,22,.06); color:var(--ink); font-size:14px;
}
.disclaimer{
  margin-top:18px; padding:16px 18px; border-radius:20px;
  background:rgba(255,250,244,.72); border:1px solid rgba(25,23,22,.08); color:var(--muted); font-size:14px;
}
.legal{
  padding:34px 0 44px;
}
.page-shell{
  padding:28px;
}
.page-top{
  display:flex; flex-wrap:wrap; justify-content:space-between; gap:18px; align-items:flex-start;
  padding-bottom:22px; border-bottom:1px solid rgba(25,23,22,.08);
}
.page-top h1{
  font-family:Georgia, "Times New Roman", serif; font-size:clamp(34px, 5vw, 58px); line-height:.98; letter-spacing:-.04em;
}
.page-sub{
  max-width:58ch; color:var(--muted); margin-top:14px;
}
.meta-stack{
  display:grid; gap:10px; color:var(--muted); font-size:14px;
}
.legal-grid{
  display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:18px; margin-top:24px;
}
.legal-card{
  padding:22px; border-radius:24px; background:rgba(255,250,244,.72);
  border:1px solid rgba(25,23,22,.08); box-shadow:var(--shadow-soft);
}
.legal-card h2{
  font-size:20px; letter-spacing:-.02em;
}
.legal-card p, .legal-card ul{
  margin-top:12px; color:var(--muted);
}
.legal-card ul{padding-left:18px}
.thankyou-box{
  display:grid; grid-template-columns:1.1fr .9fr; gap:18px; margin-top:24px;
}
.ribbon{
  display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border-radius:999px;
  background:rgba(109,125,114,.11); color:var(--sage); font-size:13px; letter-spacing:.12em; text-transform:uppercase;
}
hr.sep{
  border:none; height:1px; background:rgba(25,23,22,.08); margin:22px 0;
}
@media (max-width: 1024px){
  .hero-shell,.section-shell,.notes-grid,.inquiry-shell,.footer-grid,.thankyou-box,.legal-grid{grid-template-columns:1fr}
  .section-rail .rail-card{position:static}
  .process-grid{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width: 760px){
  .topbar-inner{align-items:flex-start; flex-direction:column}
  .hero-left,.hero-right,.panel,.guide-card,.note-card,.faq-card,.info-card,.footer-card,.form-panel,.page-shell,.split-card{border-radius:24px}
  .grid-guides,.faq-grid,.hero-stat,.process-grid,.mini-rail{grid-template-columns:1fr}
  .hero{padding-top:28px}
  .hero-left{padding:22px}
  .hero-right,.form-panel,.split-card,.page-shell,.footer-card,.note-card{padding:20px}
  .section{padding:18px 0}
}
