/* Settled. — Shared Styles */
:root {
  --forest-deep: #2E5248;
  --deep-sage:   #4A7C6F;
  --warm-sand:   #C4A882;
  --soft-ivory:  #F5F0E8;
  --sage-mist:   #EAF0EE;
  --charcoal:    #2C2C2A;
}
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Source Sans 3','Source Sans Pro',Calibri,sans-serif; color:var(--charcoal); background:var(--soft-ivory); font-size:16px; line-height:1.75; -webkit-font-smoothing:antialiased; }
h1,h2,h3,h4,h5 { font-family:Georgia,'Times New Roman',serif; font-weight:normal; line-height:1.22; }

/* LOGO */
.logo-mark { display:inline-flex; flex-direction:column; gap:5px; text-decoration:none; line-height:1; }
.logo-text { font-family:Georgia,serif; font-size:26px; color:var(--forest-deep); letter-spacing:-0.5px; font-weight:normal; display:flex; align-items:baseline; }
.logo-text .dot { color:var(--warm-sand); }
.logo-text .logo-word { position:relative; }
.logo-text .logo-word::after { content:''; display:block; position:absolute; bottom:-5px; left:0; width:100%; height:1.5px; background:var(--warm-sand); }
.logo-line { display:none; }
.logo-mark.light .logo-text { color:var(--soft-ivory); }

/* NAV */
nav { background:var(--soft-ivory); padding:22px 64px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid rgba(46,82,72,0.1); position:sticky; top:0; z-index:999; }
.nav-links { display:flex; gap:40px; list-style:none; align-items:center; }
.nav-links a { text-decoration:none; color:var(--charcoal); font-family:'Lato',sans-serif; font-size:12px; letter-spacing:2px; text-transform:uppercase; font-weight:400; transition:color 0.2s; opacity:0.7; }
.nav-links a:hover,.nav-links a.active { color:var(--forest-deep); opacity:1; }
.nav-cta { background:var(--forest-deep) !important; color:white !important; padding:11px 28px !important; letter-spacing:1.5px !important; font-weight:700 !important; opacity:1 !important; }
.nav-cta:hover { background:var(--deep-sage) !important; }

/* SECTIONS */
section { padding:96px 64px; }
.inner { max-width:1160px; margin:0 auto; }
.eyebrow { font-family:'Lato',sans-serif; font-size:10px; letter-spacing:4px; text-transform:uppercase; color:var(--deep-sage); margin-bottom:20px; display:flex; align-items:center; gap:12px; }
.eyebrow::before { content:''; display:block; width:24px; height:1px; background:var(--warm-sand); }
.eyebrow.light { color:var(--warm-sand); }
.eyebrow.light::before { background:var(--warm-sand); }

/* BUTTONS */
.btn-primary { background:var(--warm-sand); color:var(--charcoal); padding:15px 36px; border:none; cursor:pointer; font-family:'Lato',sans-serif; font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; transition:background 0.25s; text-decoration:none; display:inline-block; }
.btn-primary:hover { background:white; }
.btn-ghost { background:transparent; color:rgba(255,255,255,0.7); padding:15px 36px; border:1px solid rgba(255,255,255,0.22); font-family:'Lato',sans-serif; font-size:11px; letter-spacing:2px; text-transform:uppercase; transition:all 0.25s; text-decoration:none; display:inline-block; }
.btn-ghost:hover { border-color:rgba(255,255,255,0.55); color:white; }
.btn-sage { background:var(--forest-deep); color:white; padding:13px 32px; border:none; cursor:pointer; font-family:'Lato',sans-serif; font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; transition:background 0.25s; text-decoration:none; display:inline-block; }
.btn-sage:hover { background:var(--deep-sage); }

/* PAGE HERO STRIP */
.page-hero { background:linear-gradient(135deg,var(--forest-deep) 0%,var(--deep-sage) 100%); padding:72px 64px; }
.page-hero-inner { max-width:1160px; margin:0 auto; }
.page-hero .badge { display:inline-block; background:rgba(255,255,255,0.12); color:rgba(255,255,255,0.8); font-family:'Lato',sans-serif; font-size:10px; letter-spacing:3px; text-transform:uppercase; padding:7px 18px; margin-bottom:24px; border:1px solid rgba(255,255,255,0.18); }
.page-hero h1 { font-size:clamp(32px,4vw,52px); color:white; margin-bottom:16px; }
.page-hero p { color:rgba(255,255,255,0.68); font-size:17px; max-width:560px; line-height:1.82; }

/* FOOTER */
footer { background:var(--forest-deep); }
.ft-disc { padding:40px 64px; border-bottom:1px solid rgba(255,255,255,0.07); max-width:1160px; margin:0 auto; font-size:13px; color:rgba(255,255,255,0.35); line-height:1.8; }
.ft-bar { display:grid; grid-template-columns:1.4fr 1fr 1fr; padding:52px 64px; max-width:1160px; margin:0 auto; gap:48px; align-items:start; }
.ft-col p { color:rgba(255,255,255,0.42); font-size:14px; line-height:1.9; margin-top:14px; }
.ft-label { font-family:'Lato',sans-serif; font-size:10px; letter-spacing:3px; text-transform:uppercase; color:var(--warm-sand); margin-bottom:14px; display:block; }
.ft-col a { color:rgba(255,255,255,0.48); text-decoration:none; transition:color 0.2s; display:block; line-height:2.2; font-size:14px; }
.ft-col a:hover { color:var(--warm-sand); }
.ft-bottom { padding:18px 64px; text-align:center; border-top:1px solid rgba(255,255,255,0.07); font-size:12px; color:rgba(255,255,255,0.22); max-width:1160px; margin:0 auto; font-family:'Lato',sans-serif; letter-spacing:0.5px; }

/* WA FLOAT */
.wa-float { position:fixed; bottom:32px; right:32px; background:#25D366; width:50px; height:50px; border-radius:50%; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 20px rgba(0,0,0,0.18); z-index:998; transition:transform 0.25s; text-decoration:none; }
.wa-float:hover { transform:scale(1.08); }
.wa-float svg { width:25px; height:25px; }

/* HAMBURGER */
.hamburger { display:none; flex-direction:column; justify-content:center; gap:5px; width:36px; height:36px; background:none; border:none; cursor:pointer; padding:4px; flex-shrink:0; }
.hamburger span { display:block; width:22px; height:1.5px; background:var(--forest-deep); transition:transform 0.25s, opacity 0.25s; transform-origin:center; }
.hamburger.is-open span:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
.hamburger.is-open span:nth-child(2) { opacity:0; }
.hamburger.is-open span:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }

/* RESPONSIVE */
@media(max-width:768px){
  nav { padding:16px 24px; }
  .hamburger { display:flex; }
  .nav-links { display:none; flex-direction:column; gap:0; position:absolute; top:100%; left:0; right:0; background:var(--soft-ivory); border-bottom:1px solid rgba(46,82,72,0.12); padding:8px 0 16px; box-shadow:0 8px 24px rgba(0,0,0,0.07); }
  .nav-links.open { display:flex; }
  .nav-links li { border-top:1px solid rgba(46,82,72,0.06); }
  .nav-links a { padding:13px 24px; display:block; }
  .nav-cta { margin:12px 24px 4px !important; padding:13px 24px !important; text-align:center; display:block !important; }
  section { padding:56px 24px; }
  .page-hero { padding:52px 24px; }
  .ft-bar { grid-template-columns:1fr; padding:36px 24px; }
  .ft-disc,.ft-bottom { padding-left:24px; padding-right:24px; }
}
