/* Inna Kazagrandi / Founders CFO: site stylesheet
   Follows Founders CFO Digital Brand System v1.0 (Direction A, locked):
   Founders Navy, Warm Gold / Deep Gold, Warm Ivory, Warm Stone, Mist, Ink, Slate.
   Newsreader (headings) + Source Sans 3 (body). Gold is an accent, never a dominant surface. */
/* Fonts are hosted with the site (SIL Open Font License): Newsreader and Source Sans 3 via Fontsource. */
@font-face{font-family:'Newsreader';src:url(fonts/newsreader-latin-wght-normal.woff2) format('woff2');font-weight:200 800;font-style:normal;font-display:swap;}
@font-face{font-family:'Source Sans 3';src:url(fonts/source-sans-3-latin-wght-normal.woff2) format('woff2');font-weight:200 900;font-style:normal;font-display:swap;}
:root{
  --navy:#0B334A; --navy-deep:#082534;
  --gold:#C7A15B; --gold-deep:#9D7837;
  --ivory:#F8F5EF; --stone:#EFE8DC; --mist:#E9EEF0;
  --ink:#182A36; --slate:#657783;
  --max:1120px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:'Source Sans 3',Aptos,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;}
h1,h2,h3{font-family:'Newsreader',Georgia,serif;font-weight:500;color:var(--navy);letter-spacing:-0.005em;margin:0;}
a{color:inherit;}
img{max-width:100%;}
.wrap{max-width:var(--max);margin:0 auto;padding:0 32px;}
@media (max-width:640px){.wrap{padding:0 20px;}}
[id]{scroll-margin-top:84px;}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px;}
.skip-link{position:absolute;left:-9999px;top:auto;background:var(--navy);color:var(--ivory);padding:10px 16px;z-index:100;}
.skip-link:focus{left:16px;top:16px;}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}}

/* ---------- Header ---------- */
header.site{position:sticky;top:0;z-index:50;background:rgba(248,245,239,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--mist);}
.nav-row{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;position:relative;max-width:var(--max);margin:0 auto;}
@media (max-width:640px){.nav-row{padding-left:20px;padding-right:20px;}}
.brand{font-family:'Newsreader',Georgia,serif;font-weight:500;font-size:1.15rem;color:var(--navy);text-decoration:none;}
nav.links{display:flex;gap:30px;align-items:center;}
nav.links a{text-decoration:none;font-size:.92rem;color:var(--slate);padding:4px 2px;border-bottom:1px solid transparent;transition:border-color .15s ease,color .15s ease;}
nav.links a:hover,nav.links a[aria-current="page"]{color:var(--navy);border-color:var(--gold);}
nav.links a.nav-cta{background:var(--navy);color:var(--ivory);padding:9px 18px;border-radius:2px;font-size:.88rem;border-bottom:none;}
nav.links a.nav-cta:hover{background:var(--navy-deep);}
.menu-toggle{display:none;}
@media (max-width:860px){
  nav.links{display:none;}
  nav.links.menu-open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;background:var(--ivory);border-bottom:1px solid var(--mist);padding:8px 20px 16px;}
  nav.links.menu-open a{padding:12px 0;width:100%;border-bottom:1px solid var(--mist);}
  nav.links.menu-open a.nav-cta{margin-top:10px;width:auto;}
  .menu-toggle{display:block;background:none;border:1px solid var(--mist);padding:8px 12px;font-size:.85rem;color:var(--navy);font-family:inherit;}
}

/* ---------- Buttons and links ---------- */
.btn{display:inline-block;padding:13px 26px;text-decoration:none;font-size:.95rem;font-weight:600;border-radius:2px;transition:background .15s ease,color .15s ease;}
.btn-primary{background:var(--navy);color:var(--ivory);}
.btn-primary:hover{background:var(--navy-deep);}
.btn-light{background:var(--ivory);color:var(--navy);}
.btn-light:hover{background:#fff;}
.text-link{font-size:.92rem;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:1px;}
.text-link:hover{color:var(--gold-deep);}
.on-dark .text-link{color:var(--ivory);}
.on-dark .text-link:hover{color:var(--gold);}

/* ---------- Banners (course style: image, navy gradient from the left, gold label and rule) ---------- */
.banner{position:relative;overflow:hidden;background:var(--navy);color:var(--ivory);isolation:isolate;}
.banner__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;z-index:-2;}
.banner::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(11,51,74,.96) 0%,rgba(11,51,74,.92) 44%,rgba(11,51,74,.58) 68%,rgba(11,51,74,.06) 100%);}
@media (max-width:760px){.banner::before{background:linear-gradient(180deg,rgba(11,51,74,.90) 0%,rgba(11,51,74,.80) 100%);}}
.banner .wrap{position:relative;}
.banner__eyebrow{margin:0 0 12px;font-weight:700;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);}
.banner h1,.banner h2{color:#fff;line-height:1.14;text-wrap:balance;}
.banner h1{font-size:clamp(1.9rem,3.5vw,2.6rem);max-width:26ch;}
.banner h2{font-size:clamp(1.6rem,2.8vw,2.1rem);max-width:24ch;}
.banner__rule{width:72px;height:3px;background:var(--gold);margin:16px 0 18px;}
.banner p.banner__text{margin:0 0 22px;max-width:74ch;font-size:1.05rem;color:#E8EEF2;text-wrap:pretty;}
.banner--hero .wrap{padding-top:44px;padding-bottom:40px;}
.banner--page .wrap{padding-top:48px;padding-bottom:44px;}
.banner--page p.banner__text{margin:0;}
.banner--page .banner__actions{margin-top:24px;}
.banner--close .wrap{padding-top:34px;padding-bottom:34px;display:flex;align-items:center;justify-content:space-between;gap:20px 56px;flex-wrap:wrap;}
.banner--close .banner__body{flex:1 1 440px;}
.banner--close p.banner__text{margin:0;}
.banner__actions{display:flex;gap:14px 24px;flex-wrap:wrap;align-items:center;}
.credibility-line{margin:0;font-size:.9rem;color:#D3DDE3;}
.credibility-line a{color:#fff;text-decoration:none;border-bottom:1px solid var(--gold);}
.credibility-line a:hover{color:var(--gold);}
@media (max-width:640px){.banner--hero .wrap{padding-top:36px;padding-bottom:34px;}}

/* ---------- Sections ---------- */
section.block{padding:84px 0;border-bottom:1px solid var(--mist);}
.block p.eyebrow{font-size:.88rem;color:var(--gold-deep);margin:0 0 12px;font-weight:600;max-width:none;}
.section-head{max-width:680px;margin-bottom:44px;}
.section-head h2{font-size:clamp(1.55rem,2.9vw,2.1rem);line-height:1.2;margin-bottom:14px;}
.section-head p{color:var(--slate);font-size:1.04rem;margin:0;}

/* idea section: heading, large lead paragraph, then two columns */
.idea h2{font-size:clamp(1.55rem,2.9vw,2.1rem);line-height:1.2;margin-bottom:20px;}
.idea .idea__lead{margin:0;font-family:'Newsreader',Georgia,serif;font-size:clamp(1.2rem,2.1vw,1.5rem);line-height:1.5;color:var(--navy);max-width:52em;}
.idea__cols{display:grid;grid-template-columns:1fr 1fr;gap:20px 56px;margin-top:36px;padding-top:30px;border-top:1px solid var(--mist);}
@media (max-width:760px){.idea__cols{grid-template-columns:1fr;}}
.idea__cols p{margin:0;font-size:1.05rem;color:var(--ink);}

/* modules */
.module-list{list-style:none;margin:0;padding:0;}
.module-item{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:24px 0;border-top:1px solid var(--mist);}
.module-item:last-child{border-bottom:1px solid var(--mist);}
.module-num{font-family:'Newsreader',Georgia,serif;font-size:1.4rem;color:var(--gold-deep);font-weight:600;line-height:1.3;}
.module-item h3{font-size:1.12rem;margin-bottom:6px;}
.module-item p{margin:0;color:var(--slate);font-size:.98rem;max-width:96ch;text-wrap:pretty;}
.module-cta{margin-top:32px;}

/* enrolment call to action */
.enrol{margin-top:36px;background:var(--stone);border-left:3px solid var(--gold);padding:30px 36px;display:flex;gap:24px 48px;align-items:center;justify-content:space-between;flex-wrap:wrap;}
.enrol h3{font-size:1.4rem;margin:0 0 8px;}
.enrol p{margin:0;max-width:60ch;color:var(--ink);font-size:1rem;}
@media (max-width:640px){.enrol{padding:26px 22px;}}

/* why */
.why-panel{background:var(--stone);padding:48px;display:grid;grid-template-columns:1fr 1fr;gap:44px 56px;}
@media (max-width:760px){.why-panel{grid-template-columns:1fr;padding:32px 24px;gap:32px;}}
.why-item::before{content:"";display:block;width:40px;height:2px;background:var(--gold);margin-bottom:14px;}
.why-item h3{font-size:1.15rem;margin-bottom:8px;}
.why-item p{margin:0;color:var(--ink);font-size:.98rem;}

/* about */
.about .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start;}
@media (max-width:860px){.about .wrap{grid-template-columns:1fr;gap:32px;}}
.about__photo{margin:0;max-width:380px;}
.about__photo img{display:block;width:100%;height:auto;border-radius:2px;background:var(--stone);}
.about h2{font-size:clamp(1.55rem,2.9vw,2.1rem);line-height:1.2;margin-bottom:20px;}
.about p{margin:0 0 18px;color:var(--ink);font-size:1.05rem;max-width:62ch;text-wrap:pretty;}
.about__links{display:flex;gap:24px;margin-top:26px;flex-wrap:wrap;}

/* insights + resources teaser */
.more .wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;align-items:start;}
@media (max-width:860px){.more .wrap{grid-template-columns:1fr;gap:44px;}}
.more h2{font-size:1.5rem;margin-bottom:10px;}
.more p.lead{margin:0 0 22px;color:var(--slate);max-width:52ch;}
.post-list{list-style:none;margin:0 0 24px;padding:0;}
.post-list li{border-top:1px solid var(--mist);}
.post-list li:last-child{border-bottom:1px solid var(--mist);}
.post-list a{display:flex;justify-content:space-between;gap:16px;padding:16px 0;text-decoration:none;color:var(--navy);font-family:'Newsreader',Georgia,serif;font-size:1.08rem;}
.post-list a:hover{color:var(--gold-deep);}
.post-list .tag{font-family:'Source Sans 3',sans-serif;font-size:.78rem;color:var(--slate);font-weight:600;align-self:center;}

/* listing pages */
.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:36px;}
@media (max-width:760px){.card-grid{grid-template-columns:1fr;}}
.card{border-top:2px solid var(--navy);padding-top:18px;}
.card .tag{font-size:.78rem;color:var(--gold-deep);font-weight:600;margin:0 0 8px;}
.card h3{font-size:1.3rem;margin-bottom:8px;}
.card h3 a{text-decoration:none;color:var(--navy);}
.card h3 a:hover{color:var(--gold-deep);}
.card p{margin:0 0 10px;color:var(--slate);font-size:.98rem;}
.card .meta{font-size:.82rem;color:var(--slate);}
.intro{max-width:64ch;margin:0 0 48px;font-size:1.08rem;color:var(--slate);}

/* article page */
.article{max-width:720px;margin:0 auto;padding:72px 32px 96px;}
@media (max-width:640px){.article{padding:48px 20px 72px;}}
.crumbs{font-size:.85rem;color:var(--slate);margin:0 0 22px;}
.crumbs a{color:var(--slate);text-decoration:none;border-bottom:1px solid var(--mist);}
.crumbs a:hover{color:var(--navy);}
.article h1{font-size:clamp(2rem,4vw,2.8rem);line-height:1.15;margin-bottom:22px;}
.byline{display:flex;align-items:center;gap:14px;margin:0 0 36px;padding-bottom:28px;border-bottom:1px solid var(--mist);font-size:.92rem;color:var(--slate);}
.byline img{width:46px;height:46px;border-radius:50%;object-fit:cover;}
.byline strong{color:var(--ink);font-weight:600;}
.article p{margin:0 0 20px;font-size:1.08rem;}
.article .back{margin-top:44px;}

/* ---------- Footer ---------- */
footer.site{padding:18px 0 20px;}
.footer-row{display:flex;justify-content:space-between;align-items:center;gap:8px 24px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--mist);margin-bottom:12px;}
.footer-links{display:flex;gap:4px 22px;flex-wrap:wrap;}
.footer-links a{text-decoration:none;color:var(--slate);font-size:.88rem;}
.footer-links a:hover{color:var(--navy);}
.footer-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:8px 40px;flex-wrap:wrap;}
.disclaimer{font-size:.78rem;color:var(--slate);max-width:64ch;line-height:1.5;margin:0;}
.disclaimer strong{color:var(--ink);}
.footer-small{display:flex;gap:4px 18px;flex-wrap:wrap;font-size:.8rem;color:var(--slate);}
.footer-small a{color:var(--slate);text-decoration:none;}
.footer-small a:hover{color:var(--navy);}

/* ---------- Forms ---------- */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.hp{position:absolute;left:-9999px;}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px;}
.field label{font-size:.9rem;font-weight:600;color:var(--navy);}
.field input,.field select,.field textarea{font:inherit;font-size:1rem;color:var(--ink);background:#fff;border:1px solid #CBD5DA;border-radius:2px;padding:12px 14px;width:100%;}
.field textarea{min-height:170px;resize:vertical;}
.field input:focus,.field select:focus,.field textarea:focus,.nl-form input:focus{outline:2px solid var(--gold-deep);outline-offset:1px;border-color:var(--gold-deep);}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;}
@media (max-width:640px){.form-grid{grid-template-columns:1fr;}}
button.btn{border:0;cursor:pointer;font-family:inherit;}
button.btn:disabled{opacity:.6;cursor:wait;}
.form-note{font-size:.82rem;color:var(--slate);margin:14px 0 0;max-width:60ch;}
.form-note a{color:var(--navy);}
.form-status{margin:12px 0 0;font-size:.95rem;}
.form-status:empty{display:none;}
.form-status--ok{color:var(--navy);font-weight:600;}
.form-status--err{color:#8A3A2E;}
.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:64px;align-items:start;}
@media (max-width:860px){.contact-grid{grid-template-columns:1fr;gap:40px;}}
.contact-aside{background:var(--stone);padding:32px;}
.contact-aside h2{font-size:1.2rem;margin:0 0 8px;}
.contact-aside p{margin:0 0 24px;color:var(--ink);font-size:1rem;}
.contact-aside p.small{font-size:.9rem;color:var(--slate);margin:0;}
.contact-aside .links{display:flex;gap:22px;}

/* ---------- Newsletter band ---------- */
.newsletter{background:var(--stone);padding:44px 0;border-bottom:1px solid var(--mist);}
.newsletter .wrap{display:grid;grid-template-columns:1fr 1fr;gap:28px 56px;align-items:center;}
@media (max-width:860px){.newsletter .wrap{grid-template-columns:1fr;}}
.newsletter h2{font-size:1.5rem;margin:0 0 8px;}
.newsletter p.lead{margin:0;color:var(--ink);max-width:48ch;}
.nl-form{display:flex;gap:10px;flex-wrap:wrap;}
.nl-form input[type=email]{flex:1 1 230px;font:inherit;font-size:1rem;padding:13px 14px;border:1px solid #CBD5DA;border-radius:2px;background:#fff;color:var(--ink);}

/* ---------- Text pages (privacy, thank-you, not found) ---------- */
.article h2{font-size:1.35rem;margin:38px 0 10px;}
.article ul{margin:0 0 20px;padding-left:22px;}
.article li{margin:0 0 8px;font-size:1.05rem;}
.article p.intro{font-size:1.15rem;color:var(--slate);margin-bottom:28px;}
mark.todo{background:#F3E6C4;color:var(--ink);padding:0 4px;}

/* ---------- Confirmation pop-up ---------- */
dialog.notice{border:0;padding:0;background:var(--ivory);color:var(--ink);width:min(440px,calc(100% - 40px));box-shadow:0 24px 60px rgba(11,51,74,.35);}
dialog.notice::backdrop{background:rgba(11,51,74,.6);}
.notice__body{padding:36px 36px 30px;}
.notice__body h2{font-size:1.5rem;margin:0;}
.notice__rule{width:56px;height:3px;background:var(--gold);margin:16px 0 18px;}
.notice__body p{margin:0 0 24px;font-size:1.05rem;}
