:root {
  --navy: #1a1f2e;
  --navy-mid: #202637;
  --navy-card: #252b3b;
  --navy-dark: #141824;
  --gold: #BB9143;
  --gold-light: #d4ab5e;
  --gold-dim: rgba(187,145,67,0.10);
  --divider: rgba(187,145,67,0.12);
  --text-primary: #e8e4dc;
  --text-muted: #7a8599;
  --text-light: #b0b8c8;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; scroll-padding-top: 120px; }
body {
  font-family: 'Montserrat', sans-serif;
  background-color: var(--navy);
  color: var(--text-primary);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

/* ── ANIMATIONS ── */
.reveal { opacity:1; transform:translateY(0); transition: opacity .8s cubic-bezier(.22,.61,.36,1), transform .8s cubic-bezier(.22,.61,.36,1); }
.js-loaded .reveal { opacity:0; transform:translateY(20px); }
.js-loaded .reveal.visible { opacity:1; transform:translateY(0); }
.reveal-delay-1{transition-delay:.12s} .reveal-delay-2{transition-delay:.24s} .reveal-delay-3{transition-delay:.36s} .reveal-delay-4{transition-delay:.48s}

/* ── NAV ── */
nav { display:flex; align-items:center; justify-content:space-between; padding:18px 56px; background:var(--navy); position:sticky; top:0; z-index:100; border-bottom:1px solid var(--divider); }
.nav-logo { display:flex; align-items:center; text-decoration:none; }
.nav-logo-img { height:80px; width:auto; }
.nav-links { display:flex; gap:40px; list-style:none; align-items:center; }
.nav-links > li { position:relative; }
.nav-links a { color:var(--text-muted); text-decoration:none; font-size:.7rem; font-weight:500; letter-spacing:.18em; text-transform:uppercase; transition:color .3s; display:inline-block; }
.nav-links a:hover, .nav-links a.is-current { color:var(--gold); }
.nav-cta { background:transparent; color:var(--gold)!important; padding:10px 24px; border:1px solid var(--gold); font-weight:500!important; letter-spacing:.14em!important; transition:background .3s,color .3s!important; }
.nav-cta:hover { background:var(--gold)!important; color:var(--navy)!important; }
.nav-toggle { display:none; background:none; border:none; cursor:pointer; }
.nav-toggle span { display:block; width:22px; height:1.5px; background:var(--gold); margin:5px 0; }

/* ── NAV DROPDOWN ── */
.has-dropdown > a::after { content:'▾'; margin-left:6px; font-size:.7em; opacity:.7; transition:transform .25s; display:inline-block; }
.has-dropdown:hover > a::after, .has-dropdown:focus-within > a::after { transform:rotate(180deg); }
.nav-dropdown { position:absolute; top:calc(100% + 12px); left:-16px; min-width:260px; background:var(--navy); border:1px solid var(--divider); padding:14px 0; list-style:none; opacity:0; visibility:hidden; transform:translateY(-6px); transition:opacity .25s,transform .25s,visibility .25s; z-index:110; box-shadow:0 12px 40px rgba(0,0,0,.4); }
.nav-dropdown::before { content:''; position:absolute; top:-12px; left:0; right:0; height:12px; }
.has-dropdown:hover .nav-dropdown, .has-dropdown:focus-within .nav-dropdown { opacity:1; visibility:visible; transform:translateY(0); }
.nav-dropdown a { display:block; padding:11px 24px; font-size:.68rem; letter-spacing:.16em; color:var(--text-muted); border-left:2px solid transparent; }
.nav-dropdown a:hover { color:var(--gold); border-left-color:var(--gold); background:var(--navy-mid); }
.nav-dropdown-divider { height:1px; background:var(--divider); margin:8px 16px; }
.nav-dropdown-label { font-size:.58rem; letter-spacing:.22em; color:var(--text-muted); opacity:.6; text-transform:uppercase; padding:4px 24px 8px; font-weight:600; }

/* ── HERO (home) ── */
.hero { display:grid; grid-template-columns:1fr 1fr; min-height:88vh; background:var(--navy); overflow:hidden; }
.hero-text { display:flex; flex-direction:column; justify-content:center; padding:80px 56px 80px 72px; position:relative; overflow:hidden; }
.hero-icon-watermark { position:absolute; right:-20px; bottom:-20px; width:460px; height:460px; opacity:.035; pointer-events:none; z-index:0; }
.hero-text>*:not(.hero-icon-watermark) { position:relative; z-index:1; }
.hero-eyebrow { display:inline-flex; align-items:center; gap:14px; color:var(--gold); font-size:.68rem; font-weight:500; letter-spacing:.22em; text-transform:uppercase; margin-bottom:28px; }
.hero-eyebrow::before { content:''; display:inline-block; width:36px; height:1px; background:var(--gold); }
.hero-text h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.6rem,4.2vw,4rem); font-weight:300; line-height:1.12; margin-bottom:30px; color:var(--text-primary); letter-spacing:-.01em; }
.hero-text h1 em { font-style:normal; color:var(--gold); font-weight:400; font-size:0.7em; }
.hero-text p { font-size:.92rem; color:var(--text-light); line-height:1.85; margin-bottom:44px; max-width:440px; font-weight:300; letter-spacing:.01em; }
.btn-group { display:flex; gap:16px; flex-wrap:wrap; }
.btn-primary { background:var(--gold); color:var(--navy); padding:14px 32px; font-weight:600; font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; text-decoration:none; transition:background .3s; display:inline-block; border:none; cursor:pointer; font-family:'Montserrat',sans-serif; }
.btn-primary:hover { background:var(--gold-light); }
.btn-secondary { background:transparent; color:var(--text-light); padding:14px 32px; font-weight:500; font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; text-decoration:none; border:1px solid rgba(255,255,255,.12); transition:border-color .3s,color .3s; display:inline-block; }
.btn-secondary:hover { border-color:var(--gold); color:var(--gold); }

.hero-image { position:relative; overflow:hidden; background:var(--navy); }
.hero-image::after { content:''; position:absolute; inset:0; background:linear-gradient(to right,var(--navy) 0%,rgba(26,31,46,.4) 50%,transparent 100%); z-index:2; pointer-events:none; }
.slide { position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; transition:opacity 1.8s ease-in-out; filter:brightness(.55) saturate(.7); }
.slide.active { opacity:1; }
.hero-dots { position:absolute; bottom:24px; right:28px; display:flex; gap:10px; z-index:3; }
.hero-dot { width:7px; height:7px; border-radius:50%; background:rgba(255,255,255,.2); border:none; cursor:pointer; padding:0; transition:background .3s; }
.hero-dot.active { background:var(--gold); }

/* ── PAGE HERO (sub-pages) ── */
.page-hero { background:var(--navy); padding:96px 56px 80px; border-bottom:1px solid var(--divider); position:relative; overflow:hidden; }
.page-hero-inner { max-width:1100px; margin:0 auto; position:relative; z-index:1; }
.page-hero-watermark { position:absolute; right:-60px; top:-40px; width:380px; height:380px; opacity:.03; pointer-events:none; }
.page-hero .breadcrumb { font-size:.62rem; letter-spacing:.18em; text-transform:uppercase; color:var(--text-muted); margin-bottom:22px; display:flex; gap:10px; align-items:center; }
.page-hero .breadcrumb a { color:var(--text-muted); text-decoration:none; transition:color .3s; }
.page-hero .breadcrumb a:hover { color:var(--gold); }
.page-hero .breadcrumb .sep { opacity:.4; }
.page-hero .breadcrumb .current { color:var(--gold); }
.page-hero h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.4rem,4vw,3.4rem); font-weight:300; line-height:1.15; margin-bottom:24px; color:var(--text-primary); letter-spacing:-.005em; max-width:780px; }
.page-hero h1 em { font-style:normal; color:var(--gold); font-weight:400; }
.page-hero-lede { font-size:1rem; color:var(--text-light); line-height:1.85; max-width:640px; font-weight:300; letter-spacing:.01em; }
.page-hero-meta { display:flex; gap:32px; margin-top:36px; flex-wrap:wrap; }
.page-hero-meta .meta-item { display:flex; flex-direction:column; gap:4px; }
.page-hero-meta .meta-label { font-size:.6rem; letter-spacing:.18em; text-transform:uppercase; color:var(--text-muted); font-weight:500; }
.page-hero-meta .meta-value { font-family:'Cormorant Garamond',serif; font-size:1.4rem; color:var(--gold); font-weight:400; letter-spacing:.01em; }

/* ── TRUST BAR ── */
.trust-bar { background:var(--navy-dark); border-top:1px solid var(--divider); border-bottom:1px solid var(--divider); padding:20px 56px; display:flex; align-items:center; justify-content:center; gap:48px; flex-wrap:wrap; }
.trust-item { display:flex; align-items:center; gap:10px; color:var(--text-muted); font-size:.68rem; font-weight:500; letter-spacing:.12em; text-transform:uppercase; }
.trust-item svg { stroke:var(--gold); width:16px; height:16px; fill:none; stroke-width:1.5; flex-shrink:0; }

/* ── SECTION SHARED ── */
.section-label { font-size:.65rem; font-weight:600; letter-spacing:.22em; text-transform:uppercase; color:var(--gold); margin-bottom:14px; text-align:center; }
.section-title { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,3vw,2.6rem); font-weight:300; text-align:center; margin-bottom:16px; line-height:1.2; letter-spacing:.01em; color:var(--text-primary); }
.section-title::after { content:''; display:block; width:40px; height:1px; background:var(--gold); margin:18px auto 0; }
.section-sub { text-align:center; color:var(--text-muted); font-size:.88rem; line-height:1.8; max-width:580px; margin:0 auto 52px; font-weight:300; letter-spacing:.01em; }
.section { padding:80px 56px; }
.section-inner { max-width:1100px; margin:0 auto; }
.section-bg-dark { background:var(--navy-dark); border-top:1px solid var(--divider); border-bottom:1px solid var(--divider); }

/* ── SERVICES GRID (home) ── */
.services { background:var(--navy); padding:80px 56px; }
.services-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; max-width:1200px; margin:0 auto; background:var(--divider); }
.service-card { background:var(--navy); padding:40px 28px; transition:background .4s; text-decoration:none; color:inherit; display:flex; flex-direction:column; }
.service-card:hover { background:var(--navy-mid); }
.service-icon { width:40px; height:40px; display:flex; align-items:center; justify-content:center; margin-bottom:24px; }
.service-icon svg { width:24px; height:24px; stroke:var(--gold); fill:none; stroke-width:1.5; }
.service-card h3 { font-family:'Cormorant Garamond',serif; font-size:1.2rem; font-weight:400; margin-bottom:14px; color:var(--text-primary); line-height:1.3; letter-spacing:.02em; }
.service-card p { font-size:.82rem; color:var(--text-muted); line-height:1.8; font-weight:300; letter-spacing:.01em; flex:1; }
.service-card .service-link { font-size:.66rem; letter-spacing:.18em; text-transform:uppercase; color:var(--gold); margin-top:22px; display:inline-flex; align-items:center; gap:8px; font-weight:500; }
.service-card .service-link::after { content:'→'; transition:transform .3s; }
.service-card:hover .service-link::after { transform:translateX(4px); }
.service-card .price-from { font-size:.7rem; letter-spacing:.1em; color:var(--text-muted); margin-top:14px; font-weight:400; }
.service-card .price-from strong { color:var(--gold); font-weight:500; }

/* ── ABOUT ── */
.about-strip { background:var(--navy-dark); padding:80px 56px; border-top:1px solid var(--divider); border-bottom:1px solid var(--divider); }
.about-inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.about-text .section-title, .about-text .section-label { text-align:left; }
.about-text .section-title::after { margin:18px 0 0 0; }
.about-text p { color:var(--text-light); font-size:.9rem; line-height:1.9; margin-bottom:20px; font-weight:300; letter-spacing:.01em; }
.values-list { display:flex; flex-direction:column; gap:16px; margin-top:12px; }
.value-item { display:flex; align-items:flex-start; gap:14px; }
.value-dot { width:6px; height:6px; background:var(--gold); flex-shrink:0; margin-top:7px; }
.value-item span { font-size:.86rem; color:var(--text-light); font-weight:300; letter-spacing:.01em; }
.value-item strong { color:var(--gold); font-weight:500; }
.about-stats { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--divider); }
.stat-card { background:var(--navy-dark); padding:36px 24px; text-align:center; }
.stat-card .stat-num { font-family:'Cormorant Garamond',serif; font-size:2.2rem; font-weight:300; color:var(--gold); display:block; margin-bottom:10px; letter-spacing:.02em; }
.stat-card .stat-label { font-size:.72rem; color:var(--text-muted); line-height:1.6; letter-spacing:.06em; text-transform:uppercase; font-weight:400; }

/* ── WHY US / DIFFERENTIATORS ── */
.why-us { background:var(--navy); padding:80px 56px; }
.why-us-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; max-width:1200px; margin:0 auto; background:var(--divider); }
.why-card { background:var(--navy); padding:40px 28px; transition:background .4s; }
.why-card:hover { background:var(--navy-mid); }
.why-icon { width:40px; height:40px; display:flex; align-items:center; justify-content:center; margin-bottom:24px; }
.why-icon svg { width:24px; height:24px; stroke:var(--gold); fill:none; stroke-width:1.5; }
.why-card h3 { font-family:'Cormorant Garamond',serif; font-size:1.2rem; font-weight:400; margin-bottom:14px; color:var(--text-primary); line-height:1.3; letter-spacing:.02em; }
.why-card p { font-size:.82rem; color:var(--text-muted); line-height:1.8; font-weight:300; letter-spacing:.01em; }

/* ── TILE GRID ── */
.tile-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; max-width:1100px; margin:0 auto; background:var(--divider); }
.tile-grid.cols-3 { grid-template-columns:repeat(3,1fr); }
.tile { background:var(--navy); padding:28px 22px; text-align:center; }
.tile svg { width:22px; height:22px; stroke:var(--gold); fill:none; stroke-width:1.5; margin-bottom:14px; }
.tile h4 { font-family:'Cormorant Garamond',serif; font-size:1rem; font-weight:400; color:var(--text-primary); margin-bottom:6px; letter-spacing:.02em; }
.tile p { font-size:.74rem; color:var(--text-muted); line-height:1.6; font-weight:300; letter-spacing:.01em; }

/* ── INCLUSIONS LIST ── */
.inclusions { max-width:900px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:14px 40px; }
.inclusion { display:flex; align-items:flex-start; gap:14px; padding:8px 0; }
.inclusion .check { width:22px; height:22px; border:1px solid var(--gold); display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-top:2px; }
.inclusion .check svg { width:11px; height:11px; stroke:var(--gold); fill:none; stroke-width:2; }
.inclusion span { font-size:.88rem; color:var(--text-light); line-height:1.6; font-weight:300; letter-spacing:.01em; }

/* ── PROCESS STEPS ── */
.process { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; max-width:1100px; margin:0 auto; background:var(--divider); }
.process.steps-3 { grid-template-columns:repeat(3,1fr); }
.process.steps-5 { grid-template-columns:repeat(5,1fr); }
.process-step { background:var(--navy); padding:36px 26px; position:relative; }
.process-step .step-num { font-family:'Cormorant Garamond',serif; font-size:2.4rem; font-weight:300; color:var(--gold); line-height:1; margin-bottom:18px; display:block; }
.process-step h4 { font-family:'Cormorant Garamond',serif; font-size:1.1rem; font-weight:400; color:var(--text-primary); margin-bottom:10px; letter-spacing:.02em; }
.process-step p { font-size:.78rem; color:var(--text-muted); line-height:1.7; font-weight:300; letter-spacing:.01em; }

/* ── ANCHOR BLOCK ── */
.anchor-block { background:var(--navy-mid); border:1px solid var(--divider); padding:56px 48px; max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.anchor-block .anchor-icon { width:64px; height:64px; border:1px solid var(--gold); display:flex; align-items:center; justify-content:center; margin-bottom:24px; }
.anchor-block .anchor-icon svg { width:28px; height:28px; stroke:var(--gold); fill:none; stroke-width:1.4; }
.anchor-block h3 { font-family:'Cormorant Garamond',serif; font-size:1.8rem; font-weight:300; color:var(--text-primary); margin-bottom:16px; line-height:1.25; letter-spacing:.01em; }
.anchor-block h3 em { font-style:normal; color:var(--gold); font-weight:400; }
.anchor-block p { font-size:.9rem; color:var(--text-light); line-height:1.85; font-weight:300; letter-spacing:.01em; margin-bottom:20px; }
.anchor-block-points { display:flex; flex-direction:column; gap:10px; margin:20px 0 28px; }
.anchor-block-points .pt { display:flex; align-items:flex-start; gap:12px; font-size:.84rem; color:var(--text-light); font-weight:300; line-height:1.6; }
.anchor-block-points .pt::before { content:''; width:6px; height:6px; background:var(--gold); flex-shrink:0; margin-top:8px; }

/* ── PRICING TABLE ── */
.fee-table-wrap { max-width:880px; margin:0 auto 52px; }
.fee-table-title { font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:400; color:var(--gold); margin-bottom:18px; letter-spacing:.02em; padding-bottom:12px; border-bottom:1px solid var(--divider); }
.fee-table { width:100%; border-collapse:collapse; }
.fee-table tr { border-bottom:1px solid var(--divider); }
.fee-table tr:last-child { border-bottom:none; }
.fee-table td { padding:18px 8px; vertical-align:top; font-size:.86rem; color:var(--text-light); font-weight:300; letter-spacing:.01em; }
.fee-table td.fee-service { width:55%; }
.fee-table td.fee-amount { width:25%; font-family:'Cormorant Garamond',serif; font-size:1.15rem; color:var(--gold); font-weight:400; white-space:nowrap; }
.fee-table td.fee-note { width:20%; color:var(--text-muted); font-size:.76rem; font-style:italic; }
.fee-intro { max-width:680px; margin:0 auto 56px; text-align:center; color:var(--text-light); font-size:.92rem; line-height:1.9; font-weight:300; letter-spacing:.01em; }
.fee-disclaimer { max-width:780px; margin:0 auto; background:var(--navy-mid); border:1px solid var(--divider); padding:32px 36px; }
.fee-disclaimer h4 { font-family:'Cormorant Garamond',serif; font-size:1.05rem; font-weight:400; color:var(--gold); margin-bottom:14px; letter-spacing:.02em; }
.fee-disclaimer ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px; }
.fee-disclaimer li { font-size:.8rem; color:var(--text-muted); line-height:1.7; font-weight:300; letter-spacing:.01em; padding-left:18px; position:relative; }
.fee-disclaimer li::before { content:''; position:absolute; left:0; top:10px; width:6px; height:1px; background:var(--gold); }

/* ── PROSE BLOCK ── */
.prose { max-width:720px; margin:0 auto; }
.prose p { font-size:1.02rem; color:var(--text-light); line-height:1.95; font-weight:300; letter-spacing:.01em; margin-bottom:22px; }
.prose p:last-child { margin-bottom:0; }
.prose p strong { color:var(--text-primary); font-weight:500; }
.prose .lead { font-family:'Cormorant Garamond',serif; font-size:1.4rem; line-height:1.55; color:var(--text-primary); font-weight:400; font-style:italic; margin-bottom:32px; letter-spacing:.005em; }

/* ── PORTRAIT ── */
.portrait-frame { background:var(--navy-mid); border:1px solid var(--divider); padding:0; aspect-ratio:4/5; display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; }
.portrait-frame.placeholder { background:linear-gradient(135deg,var(--navy-mid) 0%,var(--navy-dark) 100%); }
.portrait-frame.placeholder::before { content:''; position:absolute; inset:24px; border:1px solid var(--divider); pointer-events:none; }
.portrait-frame .portrait-mono { width:38%; height:auto; opacity:.95; }
.portrait-frame img { width:100%; height:100%; object-fit:cover; }

/* ── CREDENTIALS LIST ── */
.creds { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--divider); max-width:880px; margin:0 auto; }
.cred { background:var(--navy); padding:28px 26px; }
.cred .cred-label { font-size:.6rem; letter-spacing:.2em; text-transform:uppercase; color:var(--text-muted); margin-bottom:10px; font-weight:500; }
.cred .cred-value { font-family:'Cormorant Garamond',serif; font-size:1.2rem; color:var(--gold); font-weight:400; letter-spacing:.01em; line-height:1.3; }
.cred .cred-note { font-size:.78rem; color:var(--text-muted); margin-top:6px; font-weight:300; letter-spacing:.01em; }

/* ── CONTACT ── */
.contact-section { background:var(--navy-dark); padding:80px 56px; border-top:1px solid var(--divider); }
.contact-inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; }
.contact-info .section-title, .contact-info .section-label { text-align:left; }
.contact-info .section-title::after { margin:18px 0 0 0; }
.contact-info p { color:var(--text-light); font-size:.9rem; line-height:1.85; margin-bottom:40px; font-weight:300; letter-spacing:.01em; }
.contact-details { display:flex; flex-direction:column; gap:20px; }
.contact-item { display:flex; align-items:flex-start; gap:16px; }
.contact-item-icon { width:36px; height:36px; display:flex; align-items:center; justify-content:center; flex-shrink:0; border:1px solid var(--divider); }
.contact-item-icon svg { width:16px; height:16px; stroke:var(--gold); fill:none; stroke-width:1.5; }
.contact-item-text .label { font-size:.62rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:.16em; margin-bottom:3px; font-weight:500; }
.contact-item-text a, .contact-item-text span { font-size:.88rem; color:var(--text-light); text-decoration:none; display:block; font-weight:300; letter-spacing:.01em; }
.contact-item-text a:hover { color:var(--gold); }
.contact-form { background:var(--navy-card); padding:44px 40px; border:1px solid var(--divider); }
.contact-form h3 { font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:400; margin-bottom:32px; letter-spacing:.02em; }
.form-group { margin-bottom:22px; }
.form-group label { display:block; font-size:.65rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:.14em; margin-bottom:8px; font-weight:500; }
.form-group input, .form-group textarea, .form-group select { width:100%; background:var(--navy); border:1px solid rgba(255,255,255,.06); border-radius:0; padding:13px 16px; color:var(--text-primary); font-family:'Montserrat',sans-serif; font-size:.86rem; font-weight:300; outline:none; transition:border-color .3s; letter-spacing:.01em; }
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { border-color:var(--gold); }
.form-group textarea { resize:vertical; min-height:110px; }
.form-group select option { background:var(--navy); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-success { display:none; text-align:center; padding:44px 24px; }
.form-success .success-icon { width:56px; height:56px; border:1px solid var(--divider); display:flex; align-items:center; justify-content:center; margin:0 auto 20px; }
.form-success .success-icon svg { width:24px; height:24px; stroke:var(--gold); fill:none; stroke-width:2; }
.form-success h4 { font-family:'Cormorant Garamond',serif; font-size:1.5rem; font-weight:400; color:var(--text-primary); margin-bottom:12px; letter-spacing:.02em; }
.form-success p { font-size:.86rem; color:var(--text-muted); line-height:1.7; font-weight:300; letter-spacing:.01em; }

/* ── CTA STRIP ── */
.cta-strip { background:var(--navy-mid); border-top:1px solid var(--divider); border-bottom:1px solid var(--divider); padding:64px 56px; text-align:center; }
.cta-strip h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,3vw,2.4rem); font-weight:300; margin-bottom:16px; letter-spacing:.01em; }
.cta-strip h2::after { display:none; }
.cta-strip p { color:var(--text-muted); font-size:.9rem; margin-bottom:36px; font-weight:300; letter-spacing:.01em; max-width:600px; margin-left:auto; margin-right:auto; }

/* ── FOOTER ── */
footer { background:var(--navy-dark); padding:56px 56px 32px; border-top:1px solid var(--divider); }
.footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; max-width:1200px; margin:0 auto 48px; padding-bottom:48px; border-bottom:1px solid var(--divider); }
.footer-brand .footer-logo { margin-bottom:20px; }
.footer-brand p { font-size:.82rem; color:var(--text-muted); line-height:1.8; margin-bottom:20px; font-weight:300; max-width:320px; letter-spacing:.01em; }
.footer-abn { font-size:.7rem; color:var(--text-muted); margin-bottom:20px; letter-spacing:.06em; opacity:.6; }
.social-links { display:flex; gap:12px; }
.social-links a { width:36px; height:36px; border:1px solid var(--divider); display:flex; align-items:center; justify-content:center; color:var(--text-muted); text-decoration:none; transition:border-color .3s,color .3s; }
.social-links a:hover { border-color:var(--gold); color:var(--gold); }
.footer-col h4 { font-size:.65rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; color:var(--gold); margin-bottom:20px; }
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:12px; }
.footer-col ul a { color:var(--text-muted); text-decoration:none; font-size:.82rem; font-weight:300; letter-spacing:.02em; transition:color .3s; }
.footer-col ul a:hover { color:var(--gold); }
.footer-bottom { max-width:1200px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.footer-copy { font-size:.68rem; color:var(--text-muted); opacity:.5; letter-spacing:.04em; }
.footer-legal { display:flex; gap:24px; }
.footer-legal a { font-size:.68rem; color:var(--text-muted); opacity:.5; text-decoration:none; letter-spacing:.04em; transition:color .3s,opacity .3s; }
.footer-legal a:hover { color:var(--gold); opacity:1; }
.footer-fees { font-size:.66rem; color:var(--text-muted); opacity:.45; letter-spacing:.04em; text-decoration:none; transition:color .3s,opacity .3s; }
.footer-fees:hover { color:var(--gold); opacity:1; }

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  .services-grid,.why-us-grid,.tile-grid,.tile-grid.cols-3,.process,.process.steps-3,.process.steps-5{grid-template-columns:repeat(2,1fr)}
  .about-inner,.contact-inner,.anchor-block{grid-template-columns:1fr;gap:48px}
  .footer-top{grid-template-columns:1fr 1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .inclusions{grid-template-columns:1fr}
  .creds{grid-template-columns:1fr}
}
@media(max-width:768px){
  nav{padding:14px 24px}
  .nav-logo-img{height:56px}
  .nav-links{display:none;flex-direction:column;gap:16px;background:var(--navy);position:absolute;top:88px;left:0;right:0;padding:28px;border-bottom:1px solid var(--divider);align-items:center;text-align:center}
  .nav-links > li{width:100%;text-align:center;position:relative}
  .nav-links li a{display:inline-block}
  .nav-links.open{display:flex}
  .nav-toggle{display:block}
  .nav-dropdown{position:static;opacity:1;visibility:visible;transform:none;background:transparent;border:none;box-shadow:none;padding:8px 0 0 0;min-width:auto;text-align:center}
  .nav-dropdown li{text-align:center}
  .nav-dropdown a{border-left:none;text-align:center;padding:8px 0}
  .nav-dropdown-label{padding:4px 0 6px;text-align:center}
  .has-dropdown > a::after{display:none}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-image{height:300px}
  .hero-text{padding:52px 24px}
  .page-hero{padding:64px 24px 56px}
  .services,.why-us,.about-strip,.contact-section,.cta-strip,footer,.section{padding:56px 24px}
  .services-grid,.why-us-grid,.tile-grid,.tile-grid.cols-3,.process,.process.steps-3,.process.steps-5{grid-template-columns:1fr}
  .anchor-block{padding:36px 28px}
  .trust-bar{gap:20px;padding:20px 24px}
  .footer-top{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .about-stats{grid-template-columns:1fr 1fr}
  .hero-icon-watermark{width:280px;height:280px}
  .fee-table td.fee-note{display:none}
  .fee-table td.fee-service{width:60%}
  .fee-table td.fee-amount{width:40%}
}
