
:root{--green:#008001;--dark:#11251c;--ink:#20342b;--muted:#5b6e62;--line:#dce8de;--cream:#f5f8f3;--gold:#d9b868}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,Arial,system-ui,sans-serif;line-height:1.65;background:#fff}a{color:#08752a}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #f2bd48;outline-offset:4px}header{position:sticky;top:0;z-index:10;background:#fffffff5;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav{max-width:1190px;margin:auto;padding:14px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{text-decoration:none;display:flex;align-items:center;gap:10px;color:var(--dark);line-height:1.06;font-weight:800;font-size:18px;white-space:nowrap}.mark{display:grid;place-items:center;width:43px;height:43px;background:#008001;color:#fff;border-radius:50%;font-size:26px}.brand small{display:block;font-size:11px;font-weight:500;color:var(--green);letter-spacing:.04em}.links{display:flex;gap:17px;align-items:center;flex-wrap:wrap}.links a{text-decoration:none;color:#35483d;font-size:13px;font-weight:700}.links a:hover,.links a.active{color:var(--green)}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:7px;background:var(--green);color:white!important;padding:13px 22px;font-weight:800;font-size:14px;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn.alt{background:#fff;color:var(--green)!important;border:1px solid #bdd5bf}.wrap{max-width:1130px;margin:auto;padding:0 26px}.hero{background:var(--dark);color:#fff;position:relative;overflow:hidden}.hero.withimage{background:linear-gradient(90deg,#10251deF 0%,#10251dc9 49%,#10251d55 100%),url('assets/hero.png') center/cover}.hero .wrap{padding-top:105px;padding-bottom:110px}.eyebrow{font-size:12px;font-weight:850;letter-spacing:.19em;text-transform:uppercase;color:#a6dfab;margin:0 0 16px}.hero h1{font-size:clamp(39px,6vw,73px);line-height:1.07;letter-spacing:-.045em;max-width:830px;margin:0 0 20px}.hero p{font-size:clamp(17px,2vw,21px);max-width:670px;color:#e1ebe2}.hero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero .btn.alt{background:#ffffff16;color:white!important;border-color:#ffffff80}.section{padding:82px 0}.section.tint{background:var(--cream)}.section.dark{background:var(--dark);color:white}.section h2{font-size:clamp(29px,4vw,46px);line-height:1.15;letter-spacing:-.035em;margin:0 0 22px;color:inherit}.lead{font-size:20px;color:var(--muted);max-width:780px}.dark .lead{color:#c6d8cc}.kicker{color:var(--green);font-size:12px;font-weight:850;letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:35px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.tile{background:#fff;border:1px solid var(--line);border-radius:13px;padding:29px;box-shadow:0 6px 24px #0e2b1810}.tile h3{font-size:22px;line-height:1.24;margin:0 0 12px;color:var(--dark)}.tile p{margin:0 0 14px;color:#53675a}.num{display:inline-block;color:var(--green);font-size:13px;font-weight:800;margin-bottom:18px}.split{display:grid;grid-template-columns:1.08fr .92fr;gap:50px;align-items:center}.photo{width:100%;height:390px;object-fit:cover;border-radius:14px}.check{padding-left:22px}.check li{margin:10px 0}.note{font-size:14px;color:#647369}.banner{padding:40px;border-radius:14px;background:#eaf3e9;border-left:5px solid var(--green)}.banner p{margin-bottom:0}.company{background:#fff;border:1px solid var(--line);border-radius:13px;margin:20px 0;padding:27px 30px;box-shadow:0 5px 18px #132b1710}.company h2{font-size:27px;margin:0 0 12px}.company p{margin:0 0 16px}.company details{border-top:1px solid var(--line);padding-top:12px}.company summary{color:var(--green);font-weight:800;cursor:pointer;padding:9px 0}.company li{margin-bottom:18px}.company ol{padding-left:22px}.company a{overflow-wrap:anywhere}.disclosure{background:#f0f6ed;padding:23px 26px;border-left:4px solid var(--green);border-radius:5px}.foot{background:#10221a;color:#d6e2d8;padding:44px 0}.foot .wrap{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.foot a{color:#d6e2d8}.muted{color:#677a6c}.mini{font-size:13px;text-transform:uppercase;letter-spacing:.13em;color:var(--green);font-weight:850}.crumb{color:#bfd7c3;font-size:13px;margin-bottom:20px}.crumb a{color:inherit}.form{display:grid;gap:14px;max-width:680px}.form input,.form textarea,.form select{width:100%;border:1px solid #bfd3c3;border-radius:7px;padding:14px;font:inherit;background:white}.form label{font-weight:700;font-size:14px}.form button{border:0;cursor:pointer}.callout{padding:30px;background:#edf5ec;border-radius:12px;margin:35px 0}.pill{display:inline-block;border:1px solid #d0e5d2;color:#086d23;background:#f2f8f1;padding:6px 13px;border-radius:100px;font-size:12px;font-weight:800}.footerlinks{display:flex;gap:18px;flex-wrap:wrap}.small{font-size:14px}.widephoto{width:100%;max-height:390px;object-fit:cover;border-radius:13px}.company ol li strong{color:#193e24}@media(max-width:880px){.links{gap:9px}.links a{font-size:12px}.split,.grid.two{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.hero .wrap{padding-top:72px;padding-bottom:77px}}@media(max-width:620px){.nav{display:block}.links{margin-top:16px;gap:12px}.grid{grid-template-columns:1fr}.section{padding:55px 0}.company{padding:21px}.hero h1{font-size:41px}.photo{height:260px}}

/* Approved navigation order; original page content otherwise unchanged. */
.links{gap:clamp(7px,1vw,15px);flex-wrap:nowrap}.links a{white-space:nowrap;font-size:clamp(10px,.86vw,13px)}.links .contact-link{background:#008001;color:#fff!important;padding:9px 13px;border-radius:6px}.links .contact-link:hover{background:#006b01}.menu-toggle{display:none;background:#008001;color:white;border:0;border-radius:6px;padding:9px 13px;font-weight:700;cursor:pointer}@media(max-width:700px){.nav{flex-wrap:wrap}.menu-toggle{display:block;margin-left:auto}.links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}.links.open{display:flex}.links a{font-size:15px;padding:11px;border-bottom:1px solid #dce8de}.links .contact-link{margin-top:8px;text-align:center}}

/* Original supplied SGFN logo, restored 2026-10-21. */
.brand-logo{display:block;width:200px;height:auto;max-width:100%;object-fit:contain}

/* Keep all eight navigation links visible on desktop and tablet. */
@media(min-width:701px) and (max-width:1100px){.nav{flex-wrap:wrap;gap:12px}.links{display:flex;width:100%;flex-direction:row;flex-wrap:wrap;justify-content:space-between;gap:8px 12px}.links a{font-size:12px}.menu-toggle{display:none}}
@media(max-width:700px){.nav{display:flex;flex-wrap:wrap}.links{margin-top:0}}

/* Approved Training and Our Approach content and supplied images. */
.training-hero{background:var(--dark)}
.training-page .hero h1{font-size:clamp(36px,4.3vw,58px);max-width:880px}
.training-copy{max-width:1000px}.training-session-image{width:100%;height:auto;display:block;border-radius:14px}.perspective-image{display:block;width:100%;height:auto;margin:30px 0;border-radius:8px}.subsection-heading{margin-top:40px}.training-page .tile h4{font-size:21px;line-height:1.3;margin:0 0 14px}.change-model{font-size:clamp(16px,2vw,22px)}.page-actions{display:flex;flex-wrap:wrap;gap:14px;margin:28px 0}.approach-page .hero .wrap{padding-top:65px;padding-bottom:65px}

/* Compact explanations support the five-step graphic. */
.approach-steps{margin:30px auto 0;max-width:900px}.approach-steps>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:10px 0}.approach-steps dt{font-weight:700}.approach-steps dd{margin:0}.approach-page .perspective-image{margin:0;width:100%}@media(max-width:620px){.approach-steps>div{grid-template-columns:1fr;gap:3px}}

/* Readable fine print for the Expectations disclosure. */
.disclosure{font-size:13px;line-height:1.55}.disclosure p{font-size:inherit;margin:.4em 0 0}

/* Owner-supplied historical award photograph and dated caption. */
.founder-photo{margin:0;width:100%;max-width:360px;justify-self:center}.founder-photo img{display:block;width:100%;height:auto;border-radius:14px}.founder-photo figcaption{margin-top:12px;font-size:13px;line-height:1.5;color:#5b6e62}

/* Shared page rhythm and footer, preserving component-specific layouts. */
:root{--section-space:clamp(56px,6vw,80px);--content-gap:24px}
main>.section{padding-block:var(--section-space)}
.hero:not(.home-hero) .wrap{padding-block:var(--section-space)}
.section>.wrap>p{margin-block:0 20px}
.section>.wrap>p:last-child{margin-bottom:0}
.section>.wrap>h3{margin-top:36px;margin-bottom:16px}
.section>.wrap>h2+ p{margin-top:0}
.section>.wrap>.grid{margin-top:32px}
.tile>:last-child{margin-bottom:0}
.foot{padding-block:44px}
.foot .wrap{align-items:flex-start;gap:28px 40px}
.foot strong{display:block;line-height:1.4}
.foot p{margin:12px 0 16px;max-width:470px}
.foot small{display:block;line-height:1.5}
.foot .footerlinks{gap:12px 24px;align-items:center;padding-top:3px;line-height:1.6}
/* Training introduction: opening statement, supporting copy and brand promise. */
.training-page .training-copy{max-width:920px}
.training-introduction .training-copy>p{font-size:18px;line-height:1.75;margin:0 0 24px}
.training-introduction .training-copy>.lead{font-size:clamp(21px,2.1vw,25px);line-height:1.55;font-weight:500;color:var(--dark);max-width:none;margin-bottom:32px}
.training-introduction .training-copy>.training-tagline{font-size:clamp(20px,2vw,24px);line-height:1.4;color:var(--green);border-left:4px solid var(--green);padding-left:20px;margin:32px 0 0}
.training-page .tile h3:not(:first-child){margin-top:28px}
.training-page .subsection-heading+.grid{margin-top:20px}
@media(max-width:620px){.foot{padding-block:36px}.foot .wrap{flex-direction:column;gap:24px}.foot .footerlinks{padding-top:0}.training-introduction .training-copy>p{font-size:17px}.training-introduction .training-copy>.lead{font-size:21px}.training-introduction .training-copy>.training-tagline{font-size:20px;padding-left:16px}}

/* Matching closing brand statements on Our Approach and About. */
.section>.wrap>p.closing-brand-tagline{color:var(--green);font-size:clamp(20px,2vw,24px);font-weight:700;font-style:normal;line-height:1.4;text-align:left;margin:36px 0 0}
