:root{
  --charcoal:#1A1512;
  --charcoal-soft:#241E19;
  --charcoal-line: rgba(247,244,238,0.14);
  --bronze:#BC8A44;
  --bronze-deep:#96682B;
  --bronze-light:#DDB273;
  --bronze-pale: rgba(188,138,68,0.12);
  --white:#FFFFFF;
  --warm:#F4F0E8;
  --warm-deep:#EAE2D1;
  --ink:#2A2622;
  --ink-soft:#6b6459;
  --line: rgba(42,38,34,0.12);
  --line-strong: rgba(42,38,34,0.2);
  --shadow: 0 30px 70px -30px rgba(26,21,18,0.4);
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto;} *{animation-duration:.001ms !important; transition-duration:.001ms !important;} }
body{ font-family:'Inter',sans-serif; background:var(--white); color:var(--ink); line-height:1.65; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
h1,h2,h3,h4{ font-family:'Fraunces',serif; color:var(--charcoal); letter-spacing:-0.01em; font-weight:600; }
a{ color:inherit; text-decoration:none; }
ul{ list-style:none; }
img{ max-width:100%; display:block; }
button{ font-family:inherit; cursor:pointer; }
.wrap{ max-width:1180px; margin:0 auto; padding:0 32px; }
@media (max-width:640px){ .wrap{padding:0 20px;} }

.eyebrow{
  font-size:0.76rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--bronze-deep);
  font-weight:600; display:flex; align-items:center; gap:10px;
}
.eyebrow::before{ content:''; width:20px; height:1.5px; background:var(--bronze); }
.dark-bg .eyebrow, .charcoal-bg .eyebrow{ color:var(--bronze-light); }
.dark-bg .eyebrow::before, .charcoal-bg .eyebrow::before{ background:var(--bronze-light); }
.center-head{ text-align:center; }
.center-head .eyebrow{ justify-content:center; }

.divider-accent{ width:56px; height:2px; background:var(--bronze); margin:16px auto 0; border-radius:2px; }
.divider-accent.left{ margin-left:0; }

#scrollbar{ position:fixed; top:0; left:0; height:2px; width:0%; background:var(--bronze); z-index:100; transition:width .08s linear; }

.icon-circle{
  width:64px; height:64px; border-radius:50%; border:1.5px solid var(--bronze);
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
  background:var(--white);
}
.charcoal-bg .icon-circle{ background:transparent; border-color:var(--bronze-light); }
.icon-circle svg{ width:26px; height:26px; }

/* ===== NAV ===== */
header.site{ background:var(--charcoal); position:sticky; top:0; z-index:90; }
.nav-top{ border-bottom:1px solid var(--charcoal-line); }
.nav-inner{ max-width:1180px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:20px 32px 6px; }
@media (max-width:640px){ .nav-inner{padding:18px 20px 6px;} }
.brand{ display:flex; align-items:center; gap:12px; }
.brand .hare{ width:52px; height:34px; object-fit:contain; }
.brand-word{ font-family:'Fraunces',serif; font-weight:600; font-size:1.3rem; color:var(--white); line-height:1; }
.brand-word span{ display:block; font-family:'Inter',sans-serif; font-weight:600; font-size:0.56rem; letter-spacing:0.22em; color:var(--bronze-light); margin-top:4px; }

nav.links{ display:flex; align-items:center; gap:4px; }
nav.links > a, .navdrop > button{
  font-size:0.92rem; font-weight:500; color:rgba(247,244,238,0.82);
  padding:10px 16px; border:none; background:none; display:flex; align-items:center; gap:6px;
  position:relative;
}
nav.links > a.active{ color:var(--white); }
nav.links > a.active::after{ content:''; position:absolute; left:16px; right:16px; bottom:2px; height:2px; background:var(--bronze); }
nav.links > a:hover, .navdrop > button:hover{ color:var(--white); }
.navdrop{ position:relative; }
.navdrop .caret{ font-size:0.6rem; transition:transform .2s ease; }
.navdrop:hover .caret{ transform:rotate(180deg); }
.mega{
  position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(6px);
  background:var(--white); border-radius:10px; box-shadow:var(--shadow); padding:14px; min-width:320px;
  display:grid; grid-template-columns:1fr 1fr; gap:4px; opacity:0; pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
.navdrop:hover .mega{ opacity:1; pointer-events:auto; transform:translateX(-50%) translateY(0); }
.mega a{ display:block; padding:10px 12px; border-radius:6px; font-size:0.86rem; color:var(--ink); }
.mega a:hover{ background:var(--warm); color:var(--bronze-deep); }
.mega a.accent{ grid-column:1/-1; border-top:1px solid var(--line); margin-top:4px; padding-top:12px; font-weight:600; color:var(--bronze-deep); }

.nav-right{ display:flex; align-items:center; gap:14px; }
.btn{ font-size:0.86rem; font-weight:600; padding:12px 22px; border-radius:5px; border:1.5px solid var(--charcoal);
  display:inline-flex; align-items:center; gap:8px; white-space:nowrap; transition:all .22s ease; }
.btn-primary{ background:var(--bronze); border-color:var(--bronze); color:var(--charcoal); }
.btn-primary:hover{ background:var(--bronze-light); border-color:var(--bronze-light); transform:translateY(-1px); }
.btn-outline{ background:transparent; border-color:var(--line-strong); color:var(--ink); }
.btn-outline:hover{ border-color:var(--charcoal); }
.btn-ghost-dark{ border-color:rgba(247,244,238,0.35); color:var(--white); background:transparent; }
.btn-ghost-dark:hover{ border-color:var(--bronze-light); color:var(--bronze-light); }
.btn .arrow{ transition:transform .2s ease; }
.btn:hover .arrow{ transform:translateX(3px); }

.mobile-toggle{ display:none; width:38px; height:38px; align-items:center; justify-content:center; border:1px solid rgba(247,244,238,0.3); border-radius:5px; background:none; color:var(--white); }
@media (max-width:960px){ nav.links{display:none;} .nav-right .btn-primary{padding:10px 16px;} .mobile-toggle{display:flex;} }
#mobileMenu{ display:none; flex-direction:column; background:var(--charcoal-soft); padding:6px 20px 18px; }
#mobileMenu.open{ display:flex; }
#mobileMenu a{ padding:13px 4px; font-size:0.95rem; border-bottom:1px solid var(--charcoal-line); color:rgba(247,244,238,0.85); }

.tagline-bar{ padding:10px 32px; }
.tagline-bar .wrap{ display:flex; justify-content:flex-start; }
.tagline-bar span{ font-size:0.82rem; letter-spacing:0.06em; color:var(--bronze-light); font-weight:500; }
@media (max-width:960px){ .tagline-bar{display:none;} }

/* ===== HERO ===== */
.hero{ background:var(--charcoal); position:relative; padding:26px 32px 0; overflow:visible; }
.hero-inner{ max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1.05fr 0.95fr; gap:50px; align-items:center; padding-bottom:90px; }
@media (max-width:960px){ .hero-inner{grid-template-columns:1fr; gap:36px; padding-bottom:60px;} .hero{padding:20px 20px 0;} }
.hero h1{ font-size:clamp(2.3rem,4.6vw,3.5rem); line-height:1.12; color:var(--white); font-weight:600; margin-bottom:22px; }
.hero h1 .accent{ color:var(--bronze); }
.hero p.lead{ font-size:1.04rem; color:rgba(247,244,238,0.68); max-width:48ch; margin-bottom:32px; }
.hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; }

.hero-photo-wrap{ position:relative; }
.photo-block{
  position:relative; border-radius:16px; overflow:hidden;
  background: linear-gradient(140deg, #4a3a26 0%, #2a2118 55%, #1a1512 100%);
  display:flex; align-items:flex-end;
  box-shadow: var(--shadow);
}
.photo-block::before{
  content:''; position:absolute; inset:0;
  background: radial-gradient(120% 100% at 25% 15%, rgba(188,138,68,0.35), transparent 55%);
}
.hero-photo-wrap .photo-block{ width:100%; aspect-ratio:8/5; }
.pb-icon-wrap{ position:absolute; top:22px; left:22px; width:38px; height:38px; border-radius:50%; border:1px solid rgba(247,244,238,0.35); display:flex; align-items:center; justify-content:center; }
.pb-icon-wrap svg{ width:18px; height:18px; }
.pb-cap{
  position:relative; z-index:1; margin:18px; font-size:0.72rem; letter-spacing:0.05em; text-transform:uppercase;
  color:rgba(247,244,238,0.8); background:rgba(26,21,18,0.55); backdrop-filter:blur(6px);
  padding:9px 13px; border-radius:6px; border:1px solid rgba(247,244,238,0.15);
}
.curve-transition{
  position:relative; height:64px; background:var(--charcoal); margin-top:-1px;
}
.curve-transition svg{ position:absolute; bottom:0; left:0; width:100%; height:64px; display:block; }
@media (max-width:640px){ .curve-transition, .curve-transition svg{ height:36px; } }

/* ===== SECTION SCAFFOLD ===== */
section{ padding:100px 32px; position:relative; }
@media (max-width:640px){ section{padding:64px 20px;} }
section .wrap{ padding:0; }
.section-head{ max-width:680px; margin-bottom:52px; }
.section-head h2{ font-size:clamp(1.9rem,3.2vw,2.5rem); margin-top:16px; line-height:1.18; }
.section-head p{ margin-top:16px; color:var(--ink-soft); font-size:1.02rem; max-width:60ch; }
.warm-bg{ background:var(--warm); }
.charcoal-bg{ background:var(--charcoal); color:var(--warm); }
.charcoal-bg h2,.charcoal-bg h3,.charcoal-bg h4{ color:var(--white); }
.charcoal-bg .section-head p{ color:rgba(247,244,238,0.65); }

.reveal{ opacity:0; transform:translateY(24px); transition:opacity .6s ease, transform .6s ease; }
.reveal.in{ opacity:1; transform:translateY(0); }

/* ===== POSITIONING (3 pillars) ===== */
.positioning-lead{ text-align:center; max-width:70ch; margin:0 auto 56px; color:var(--ink-soft); font-size:1.05rem; }
.pillars-3{ display:grid; grid-template-columns:repeat(3,1fr); }
@media (max-width:760px){ .pillars-3{grid-template-columns:1fr; gap:36px;} }
.pillar-3-card{ text-align:center; padding:0 28px; border-left:1px solid var(--line); }
.pillar-3-card:first-child{ border-left:none; }
@media (max-width:760px){ .pillar-3-card{ border-left:none; border-top:1px solid var(--line); padding:36px 10px 0;} .pillar-3-card:first-child{border-top:none; padding-top:0;} }
.pillar-3-card .icon-circle{ margin:0 auto 20px; }
.pillar-3-card h4{ font-size:1.2rem; margin-bottom:12px; }
.pillar-3-card p{ font-size:0.92rem; color:var(--ink-soft); max-width:32ch; margin:0 auto; }

/* ===== SOLUTIONS ===== */
.solutions-panel{ background:var(--warm-deep); border-radius:18px; padding:56px 48px; }
@media (max-width:640px){ .solutions-panel{padding:40px 22px; border-radius:12px;} }
.solutions-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:16px; margin-top:44px; }
@media (max-width:1024px){ .solutions-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width:640px){ .solutions-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:460px){ .solutions-grid{grid-template-columns:1fr;} }
.sol-card{
  background:var(--white); border-radius:12px; padding:30px 22px; text-align:center; cursor:pointer;
  border:1.5px solid transparent; transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;
  display:flex; flex-direction:column; align-items:center;
}
.sol-card:hover{ transform:translateY(-3px); box-shadow:0 18px 40px -26px rgba(26,21,18,0.35); }
.sol-card.active{ border-color:var(--bronze); }
.sol-card .icon-circle{ margin-bottom:18px; }
.sol-card h4{ font-size:1.02rem; margin-bottom:10px; line-height:1.3; }
.sol-card p{ font-size:0.85rem; color:var(--ink-soft); margin-bottom:16px; }
.sol-card .explore{ font-size:0.82rem; font-weight:600; color:var(--bronze-deep); display:flex; align-items:center; gap:6px; margin-top:auto; }
.sol-card .explore .arrow{ transition:transform .2s ease; }
.sol-card:hover .explore .arrow{ transform:translateX(3px); }

.sol-detail{ margin-top:36px; border-radius:14px; background:var(--white); padding:38px; display:none; }
.sol-detail.show{ display:block; }
.sol-detail-head{ display:flex; align-items:baseline; gap:16px; margin-bottom:8px; flex-wrap:wrap; }
.sol-detail-head h3{ font-size:1.5rem; }
.sol-detail-head .outcome-tag{ font-size:0.76rem; text-transform:uppercase; letter-spacing:0.06em; color:var(--bronze-deep); background:var(--bronze-pale); padding:5px 11px; border-radius:4px; font-weight:600; }
.sol-detail-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:28px; margin-top:26px; }
@media (max-width:900px){ .sol-detail-grid{grid-template-columns:1fr 1fr;} }
@media (max-width:560px){ .sol-detail-grid{grid-template-columns:1fr;} }
.sol-detail-col .dlabel{ font-size:0.7rem; letter-spacing:0.08em; text-transform:uppercase; color:var(--ink-soft); margin-bottom:10px; font-weight:700; }
.sol-detail-col p, .sol-detail-col li{ font-size:0.88rem; color:var(--ink); }
.sol-detail-col ul li{ padding:5px 0; position:relative; padding-left:14px; }
.sol-detail-col ul li::before{ content:'—'; position:absolute; left:0; color:var(--bronze); }
.sol-detail-approach{ margin-top:26px; padding-top:22px; border-top:1px solid var(--line-strong); display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-size:0.84rem; color:var(--ink-soft); }
.flow-mini{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.flow-mini .fnode{ padding:4px 10px; background:var(--warm); border:1px solid var(--line-strong); border-radius:4px; color:var(--charcoal); font-weight:600; }
.flow-mini .farrow{ color:var(--bronze); }

/* ===== FRAMEWORK ROW (approach / accelerator / partnership) ===== */
.framework-intro{ display:grid; grid-template-columns:1.1fr 0.9fr; gap:50px; align-items:center; margin-bottom:56px; }
@media (max-width:900px){ .framework-intro{grid-template-columns:1fr;} }
.framework-intro .photo-block{ width:100%; aspect-ratio:6/5; border-radius:16px; max-width:400px; margin:0 auto; }
.framework-title{ display:flex; align-items:baseline; gap:14px; margin-bottom:6px; flex-wrap:wrap; }
.framework-tag{ font-size:0.72rem; letter-spacing:0.07em; text-transform:uppercase; padding:4px 10px; border-radius:4px; border:1px solid var(--line-strong); color:var(--ink-soft); font-weight:600; }
.charcoal-bg .framework-tag{ border-color:rgba(247,244,238,0.28); color:rgba(247,244,238,0.7); }

.flow-steps{ display:flex; align-items:flex-start; gap:0; }
@media (max-width:900px){ .flow-steps{ flex-direction:column; gap:34px; } }
.flow-step{ flex:1; text-align:center; padding:0 14px; position:relative; }
.flow-step .icon-circle{ margin:0 auto 18px; position:relative; z-index:2; }
.flow-step .fs-line{ position:absolute; top:32px; left:calc(50% + 40px); right:calc(-50% + 40px); height:1.5px; background:linear-gradient(to right, var(--bronze), var(--line-strong)); z-index:1; }
.flow-step:last-child .fs-line{ display:none; }
.charcoal-bg .flow-step .fs-line{ background:linear-gradient(to right, var(--bronze-light), rgba(247,244,238,0.15)); }
@media (max-width:900px){ .flow-step .fs-line{ display:none; } .flow-step{ text-align:left; display:flex; gap:20px; align-items:flex-start; padding:0; } .flow-step .icon-circle{ margin:0; } }
.flow-step .fs-num{ font-size:0.72rem; font-weight:700; letter-spacing:0.08em; color:var(--bronze-deep); margin-bottom:6px; }
.charcoal-bg .flow-step .fs-num{ color:var(--bronze-light); }
.flow-step h4{ font-size:1.02rem; margin-bottom:8px; }
.flow-step p{ font-size:0.85rem; color:var(--ink-soft); }
.charcoal-bg .flow-step p{ color:rgba(247,244,238,0.6); }

.framework-outcome{ margin-top:44px; padding:22px 26px; border-left:2px solid var(--bronze); background:var(--bronze-pale); border-radius:0 8px 8px 0; }
.charcoal-bg .framework-outcome{ background:rgba(221,178,115,0.08); }
.framework-outcome p{ font-family:'Fraunces',serif; font-size:1.05rem; font-weight:600; color:var(--charcoal); line-height:1.5; }
.charcoal-bg .framework-outcome p{ color:var(--warm); }
.partnership-closing{ margin-top:44px; padding-top:32px; border-top:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; }
.partnership-closing p{ max-width:56ch; color:var(--ink-soft); font-size:0.95rem; }

/* ===== IMPACT ===== */
.impact-grid{ display:grid; grid-template-columns:repeat(4,1fr); }
@media (max-width:860px){ .impact-grid{grid-template-columns:1fr 1fr; gap:36px;} }
@media (max-width:460px){ .impact-grid{grid-template-columns:1fr;} }
.impact-card{ text-align:center; padding:0 20px; border-left:1px solid var(--line); }
.impact-card:first-child{ border-left:none; }
@media (max-width:860px){ .impact-card{ border-left:none; } }
.impact-card .icon-circle{ margin:0 auto 18px; }
.impact-card h4{ font-size:1.02rem; margin-bottom:8px; }
.impact-card p{ font-size:0.86rem; color:var(--ink-soft); max-width:26ch; margin:0 auto; }

/* ===== BRONZE CTA BAR ===== */
.cta-bar{ background:var(--bronze); padding:0; }
.cta-bar-inner{ max-width:1180px; margin:0 auto; padding:44px 32px; display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap; }
@media (max-width:640px){ .cta-bar-inner{padding:36px 20px; flex-direction:column; text-align:center;} }
.cta-bar-left{ display:flex; align-items:center; gap:22px; }
@media (max-width:640px){ .cta-bar-left{ flex-direction:column; } }
.cta-bar .icon-circle{ border-color:var(--charcoal); background:transparent; }
.cta-bar .icon-circle svg{ stroke:var(--charcoal); }
.cta-bar h3{ color:var(--charcoal); font-size:1.4rem; margin-bottom:4px; }
.cta-bar p{ color:rgba(26,21,18,0.75); font-size:0.94rem; }
.cta-bar .btn-dark{ background:var(--charcoal); color:var(--white); border-color:var(--charcoal); }
.cta-bar .btn-dark:hover{ background:#000; }

/* ===== WHO WE ARE / FOUNDER ===== */
.who-grid{ display:grid; grid-template-columns:1.1fr 0.9fr; gap:56px; align-items:start; }
@media (max-width:900px){ .who-grid{grid-template-columns:1fr;} }
.who-grid p{ margin-bottom:16px; font-size:1.01rem; }
.differentiators{ display:grid; gap:0; margin-top:8px; }
.diff-item{ display:flex; gap:16px; align-items:flex-start; padding:18px 0; border-top:1px solid var(--line); }
.diff-item .dmark{ font-weight:700; color:var(--bronze-deep); font-size:0.85rem; padding-top:2px; }
.diff-item h4{ font-size:1rem; margin-bottom:4px; }
.diff-item p{ font-size:0.87rem; color:var(--ink-soft); margin:0; }

.founder-card{ display:grid; grid-template-columns:0.5fr 1.5fr; gap:36px; align-items:center; background:var(--warm); border-radius:16px; padding:34px; margin-top:44px; }
@media (max-width:700px){ .founder-card{grid-template-columns:1fr;} }
.founder-avatar{ aspect-ratio:1/1; border-radius:12px; overflow:hidden; position:relative; background:linear-gradient(150deg, var(--bronze-deep), var(--charcoal)); display:flex; align-items:center; justify-content:center; }
.founder-avatar .mono{ font-family:'Fraunces',serif; font-weight:700; font-size:3.2rem; color:rgba(247,244,238,0.92); }
.founder-avatar .cap{ position:absolute; bottom:10px; left:10px; right:10px; text-align:center; font-size:0.6rem; letter-spacing:0.05em; text-transform:uppercase; color:rgba(247,244,238,0.6); }
.founder-name{ font-size:1.35rem; margin-bottom:2px; }
.founder-title{ font-size:0.85rem; color:var(--bronze-deep); font-weight:600; margin-bottom:14px; }
.founder-card p{ font-size:0.95rem; color:var(--ink); margin-bottom:10px; }

/* ===== WHO WE SERVE ===== */
.serve-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
@media (max-width:900px){ .serve-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width:600px){ .serve-grid{grid-template-columns:repeat(2,1fr);} }
.serve-chip{ border-radius:12px; padding:26px 16px; text-align:center; background:var(--white); border:1px solid var(--line-strong); transition:border-color .2s ease, transform .2s ease; }
.serve-chip:hover{ border-color:var(--bronze); transform:translateY(-2px); }
.serve-chip .icon-circle{ margin:0 auto 14px; width:52px; height:52px; }
.serve-chip .icon-circle svg{ width:22px; height:22px; }
.serve-chip span{ font-size:0.86rem; font-weight:600; color:var(--charcoal); }

/* ===== TESTIMONIALS ===== */
.testi-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
@media (max-width:860px){ .testi-grid{grid-template-columns:1fr;} }
.testi-card{ border:1.5px dashed var(--line-strong); border-radius:14px; padding:30px 26px; background:var(--warm); display:flex; flex-direction:column; justify-content:space-between; min-height:190px; }
.testi-card .quote-mark{ font-family:'Fraunces',serif; font-size:2.4rem; color:var(--bronze); line-height:1; margin-bottom:10px; font-weight:700; }
.testi-card p.placeholder-txt{ font-style:italic; color:var(--ink-soft); font-size:0.92rem; margin-bottom:18px; }
.testi-card .attrib{ font-size:0.76rem; letter-spacing:0.03em; color:var(--ink-soft); text-transform:uppercase; font-weight:600; }

/* ===== INSIGHTS ===== */
.insight-tags{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:36px; }
.itag{ font-size:0.76rem; letter-spacing:0.03em; text-transform:uppercase; padding:7px 14px; border-radius:16px; border:1px solid var(--line-strong); color:var(--ink-soft); font-weight:600; }
.insight-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
@media (max-width:860px){ .insight-grid{grid-template-columns:1fr;} }
.insight-card{ border-radius:14px; overflow:hidden; background:var(--white); border:1px solid var(--line); }
.insight-card .photo-block{ aspect-ratio:16/10; border-radius:0; }
.insight-card .ic-body{ padding:22px; }
.insight-card .icat{ font-size:0.7rem; letter-spacing:0.06em; text-transform:uppercase; color:var(--bronze-deep); margin-bottom:10px; font-weight:700; }
.insight-card h4{ font-size:1.02rem; margin-bottom:8px; line-height:1.35; }
.insight-card p{ font-size:0.86rem; color:var(--ink-soft); }

/* ===== FINAL CTA (before contact) ===== */
.final-cta{ text-align:center; }
.final-cta h2{ font-size:clamp(2rem,4vw,2.8rem); max-width:20ch; margin:18px auto 20px; line-height:1.18; }
.final-cta p{ color:var(--ink-soft); max-width:60ch; margin:0 auto 36px; font-size:1.03rem; }
.final-cta .hero-ctas{ justify-content:center; }

/* ===== CONTACT ===== */
.contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
@media (max-width:900px){ .contact-grid{grid-template-columns:1fr; gap:44px;} }
.contact-line{ display:flex; gap:16px; padding:16px 0; border-top:1px solid rgba(247,244,238,0.15); font-size:0.92rem; }
.contact-line:last-child{ border-bottom:1px solid rgba(247,244,238,0.15); }
.contact-line .clabel{ font-size:0.68rem; text-transform:uppercase; letter-spacing:0.07em; color:var(--bronze-light); min-width:82px; font-weight:700; }
.contact-line a{ color:var(--white); }
.contact-line a:hover{ color:var(--bronze-light); }
.mock-form{ background:var(--charcoal-soft); border:1px solid rgba(247,244,238,0.15); border-radius:14px; padding:36px; }
.field{ margin-bottom:20px; }
.field label{ display:block; font-size:0.7rem; letter-spacing:0.07em; text-transform:uppercase; color:rgba(247,244,238,0.55); margin-bottom:8px; font-weight:700; }
.field input, .field textarea, .field select{ width:100%; background:transparent; border:none; border-bottom:1px solid rgba(247,244,238,0.3); color:var(--white); font-family:'Inter',sans-serif; font-size:0.95rem; padding:8px 0; outline:none; transition:border-color .25s ease; }
.field input:focus, .field textarea:focus, .field select:focus{ border-color:var(--bronze-light); }
.field select option{ background:var(--charcoal); }
.field textarea{ resize:vertical; min-height:70px; }
.mock-form .btn-primary{ width:100%; justify-content:center; margin-top:6px; }
.form-note{ font-size:0.76rem; color:rgba(247,244,238,0.4); margin-top:14px; text-align:center; }

/* ===== FOOTER ===== */
footer{ background:var(--charcoal); color:rgba(247,244,238,0.6); padding-top:70px; }
.footer-top{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:50px; border-bottom:1px solid rgba(247,244,238,0.1); }
@media (max-width:860px){ .footer-top{grid-template-columns:1fr 1fr; row-gap:36px;} }
@media (max-width:520px){ .footer-top{grid-template-columns:1fr;} }
.footer-brand-block{ display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.footer-brand-block .hare{ width:46px; height:30px; object-fit:contain; }
.footer-brand-block span{ font-family:'Fraunces',serif; font-weight:600; color:var(--white); font-size:1.08rem; }
.footer-tagline{ font-size:0.88rem; max-width:30ch; }
.footer-col h5{ font-size:0.72rem; letter-spacing:0.08em; text-transform:uppercase; color:var(--bronze-light); margin-bottom:18px; font-weight:700; }
.footer-col a{ display:block; padding:6px 0; font-size:0.88rem; }
.footer-col a:hover{ color:var(--bronze-light); }
.footer-bottom{ padding:26px 0 34px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; font-size:0.78rem; }
.footer-bottom a{ margin-left:18px; }
