/* SN Academy homepage — conversion design. Scoped under .snh-root, classes prefixed .snh-.
   Illustrations referenced relative to this file (assets/illustrations/). */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;800;900&family=Source+Sans+3:wght@300;400;600;700&display=swap');

/* full-width template: strip the theme #main wrapper's vertical padding so sections sit flush
   to the header and footer (removes the white gap above the footer). */
/* full-width template: content sits flush to header and footer (no white gaps) */
.page-template-template-fullwidth-home #main{padding-top:0!important;padding-bottom:0!important;margin-bottom:0!important}
.snh-root{margin:0}
/* BRAND tokens (var names kept; values are the official pack colours — teal/green) */
.snh-root{--navy:#0f3d48;--navy2:#1B5C6B;--green:#6AAF2C;--green-deep:#5a9624;--green-l:#edf7de;
  --ink:#0f3d48;--body:#2c3e50;--muted:#5b6b7a;--light:#f8fafb;--border:#dbe7ea;
  font-family:'Source Sans 3',-apple-system,sans-serif;color:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased}
.snh-root *{box-sizing:border-box}
.snh-root h1,.snh-root h2,.snh-root h3{font-family:'Playfair Display',Georgia,serif;color:var(--ink);line-height:1.15;letter-spacing:-.2px;margin:0}
.snh-root p{margin:0}.snh-root ul{margin:0;list-style:none;padding:0}
.snh-root a{text-decoration:none}
.snh-root a:not(.snh-btn){color:inherit}  /* buttons keep their own text colour (see .snh-green etc.) */
.snh-wrap{max-width:1200px;margin:0 auto;padding:0 28px}
.snh-full{width:100%}
.snh-eyebrow{font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--green)}
.snh-btn{display:inline-block;vertical-align:middle;font-weight:700;font-size:15px;line-height:1.2;border-radius:10px;padding:15px 28px;border:2px solid transparent;transition:.18s;cursor:pointer}
.snh-green{background:var(--green);color:#fff;border-color:var(--green);box-shadow:0 10px 22px rgba(106,175,44,.3)}
.snh-green:hover{background:var(--green-deep);border-color:var(--green-deep);color:#fff}
.snh-ghost{background:transparent;border-color:#bcd3d9;color:var(--navy)}
.snh-ghost:hover{border-color:var(--navy);color:var(--navy)}
.snh-white{background:#fff;color:var(--navy);border-color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.14)}
.snh-navy{background:var(--navy);color:#fff;border-color:var(--navy)}.snh-navy:hover{background:var(--navy2);border-color:var(--navy2);color:#fff}
/* every button gets the SAME 2px transparent border + identical hover lift, so adjacent
   buttons (e.g. green + ghost) share the same height, text baseline, and motion */
.snh-btn:hover{transform:translateY(-2px)}
.snh-section{padding:92px 0}
.snh-head{text-align:center;max-width:640px;margin:0 auto 50px}
.snh-head h2{font-size:40px;font-weight:800;margin:12px 0}.snh-head p{color:var(--muted);font-size:18px}

/* hero */
.snh-hero{background:radial-gradient(1000px 500px at 80% -10%,rgba(106,175,44,.10),transparent),linear-gradient(180deg,#f8fafb,#e9f4f6)}
.snh-hero .snh-wrap{display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center;padding:90px 28px}
.snh-hero h1{font-size:58px;font-weight:800;margin:18px 0}.snh-hero h1 .hl{color:var(--green)}
.snh-lede{font-size:19px;max-width:31em}
.snh-cta{display:flex;gap:14px;margin:30px 0 16px;flex-wrap:wrap}
.snh-micro{font-size:14px;color:var(--muted);font-weight:600}.snh-micro .stars{color:#f5a623;letter-spacing:2px}
.snh-art{position:relative}.snh-art .blob{position:absolute;inset:-8% 0;background:radial-gradient(closest-side,rgba(106,175,44,.16),transparent);border-radius:50%}
.snh-art-img{position:relative;height:430px;background:url(illustrations/ill-student-going-to-school.svg) center/contain no-repeat}

/* trust bar */
.snh-trustbar{background:var(--navy)}
.snh-trustbar .snh-wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;padding:22px 28px;color:#bcd6db;font-weight:600;font-size:15px}
.snh-trustbar b{color:var(--green-l)}

/* PAS */
.snh-pas .snh-wrap{max-width:820px;text-align:center}
.snh-pas h2{font-size:34px;font-weight:800;margin:14px 0 16px}.snh-pas p{font-size:18px;color:var(--body)}

/* pillars */
.snh-pillars{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.snh-pillar{border:1px solid var(--border);border-radius:20px;padding:40px;background:#fff;box-shadow:0 10px 34px rgba(21,38,61,.06)}
.snh-pillar.b{background:linear-gradient(180deg,#edf7de,#fff)}
.snh-pillimg{height:120px;background-position:left center;background-repeat:no-repeat;background-size:contain;margin-bottom:8px}
.snh-pillimg.a{background-image:url(illustrations/ill-success.svg)}
.snh-pillimg.bb{background-image:url(illustrations/ill-presentation.svg)}
.snh-pillar .tag{font-size:13px;font-weight:700;color:var(--green-deep);text-transform:uppercase;letter-spacing:1px}
.snh-pillar h3{font-size:26px;font-weight:800;margin:8px 0 12px}
.snh-pillar li{padding:7px 0 7px 30px;position:relative;color:var(--body)}
.snh-pillar li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800}
.snh-pillar .snh-btn{margin-top:12px}

/* steps */
.snh-steps{background:var(--light)}.snh-stepgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.snh-step{text-align:center}.snh-step .num{width:54px;height:54px;border-radius:50%;background:var(--green);color:#fff;font-weight:800;font-size:22px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:0 8px 20px rgba(106,175,44,.3)}
.snh-step h3{font-size:20px;font-weight:700;margin-bottom:8px}.snh-step p{color:var(--muted);font-size:15px;max-width:22em;margin:0 auto}

/* proof */
.snh-proof{background:var(--navy);color:#fff}.snh-proof .snh-wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:60px 28px}
.snh-proof .s{text-align:center}.snh-proof .n{font-size:46px;font-weight:800;color:var(--green-l)}.snh-proof .l{color:#bcd6db;font-size:15px;margin-top:6px}

/* testimonials */
.snh-tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.snh-tcard{background:#fff;border:1px solid var(--border);border-radius:16px;padding:28px;box-shadow:0 8px 30px rgba(21,38,61,.06)}
.snh-tcard .stars{color:#f5a623;letter-spacing:2px}.snh-tcard p{margin:14px 0 18px;font-size:15px;color:var(--body)}
.snh-tcard .who{display:flex;align-items:center;gap:12px}.snh-tcard .av{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--navy2));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.snh-tcard .nm{font-weight:700;color:var(--ink);font-size:15px}.snh-tcard .ro{font-size:13px;color:var(--muted)}

/* lead capture */
.snh-lead{background:linear-gradient(135deg,#0c3038,#1B5C6B);color:#fff}
.snh-lead .snh-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:64px 28px}
.snh-lead h2{color:#fff;font-size:32px;font-weight:800}.snh-lead p{color:#c6d4e8;margin-top:10px}
.snh-lead form{display:flex;gap:10px;margin-top:8px;background:#fff;padding:8px;border-radius:12px}
.snh-lead input{flex:1;border:0;padding:14px 16px;font-size:15px;border-radius:8px;font-family:inherit}
.snh-lead .fine{font-size:13px;color:#9fb2cc;margin-top:10px}

/* pricing */
.snh-pcards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}
.snh-pcard{border:1px solid var(--border);border-radius:18px;padding:32px;background:#fff;box-shadow:0 8px 30px rgba(21,38,61,.06);display:flex;flex-direction:column}
.snh-pcard.feat{border:2px solid var(--green);box-shadow:0 18px 44px rgba(106,175,44,.18);position:relative}
.snh-pcard.feat .badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--green);color:#fff;font-size:12px;font-weight:700;padding:5px 14px;border-radius:999px;letter-spacing:.5px}
.snh-pcard .pname{font-weight:700;color:var(--navy);font-size:17px}
.snh-pcard .price{font-size:42px;font-weight:800;color:var(--ink);margin:8px 0}.snh-pcard .price span{font-size:16px;color:var(--muted);font-weight:600}
.snh-pcard li{padding:7px 0 7px 28px;position:relative;font-size:15px}.snh-pcard li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800}
.snh-pcard ul{flex:1;margin:16px 0 24px}

/* faq */
.snh-faq{max-width:820px;margin:0 auto}.snh-fitem{border-bottom:1px solid var(--border);padding:22px 0}
.snh-fitem h3{font-size:18px;font-weight:700;color:var(--ink);display:flex;justify-content:space-between}.snh-fitem p{color:var(--muted);margin-top:10px}

/* cta */
.snh-ctaband{background:linear-gradient(135deg,var(--green),var(--green-deep));color:#fff;text-align:center}.snh-ctaband .snh-wrap{padding:76px 28px}
.snh-ctaband h2{color:#fff;font-size:38px;font-weight:800;margin-bottom:12px}.snh-ctaband p{color:#eafff3;font-size:18px;margin-bottom:28px}

/* pricing page */
.snh-pricehero{background:radial-gradient(900px 420px at 50% -20%,rgba(106,175,44,.10),transparent),linear-gradient(180deg,#f8fafb,#e9f4f6);text-align:center}
.snh-pricehero .snh-wrap{padding:84px 28px 64px;max-width:760px}
.snh-pricehero h1{font-size:48px;font-weight:800;margin:14px 0 14px}
.snh-pricehero p{font-size:19px;color:var(--body)}
.snh-billing{display:inline-flex;gap:6px;background:#fff;border:1px solid var(--border);border-radius:999px;padding:6px;margin-top:26px;font-weight:700;font-size:14px}
.snh-billing span{padding:9px 20px;border-radius:999px;color:var(--muted)}
.snh-billing span.on{background:var(--navy);color:#fff}
.snh-save{color:var(--green-deep);font-weight:700;font-size:14px;margin-top:6px}
.snh-note{text-align:center;color:var(--muted);font-size:15px;margin-top:30px}
.snh-note a{color:var(--green-deep);font-weight:700;text-decoration:underline}
.snh-guarantee{background:var(--light)}
.snh-guarantee .snh-wrap{display:flex;align-items:center;justify-content:center;gap:14px;padding:30px 28px;text-align:center;color:var(--navy);font-weight:600;font-size:16px}
.snh-guarantee .g-ico{width:42px;height:42px;border-radius:50%;background:rgba(106,175,44,.14);color:var(--green-deep);display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.snh-pcards.four{grid-template-columns:repeat(4,1fr)}
.snh-pcard .pdesc{color:var(--muted);font-size:14px;margin-top:4px;min-height:38px}

/* responsive */
@media(max-width:860px){
  .snh-hero .snh-wrap,.snh-lead .snh-wrap{grid-template-columns:1fr}
  .snh-pillars,.snh-stepgrid,.snh-tgrid,.snh-pcards,.snh-pcards.four{grid-template-columns:1fr}
  .snh-proof .snh-wrap{grid-template-columns:repeat(2,1fr)}
  .snh-hero h1{font-size:42px}.snh-art-img{height:300px}
  .snh-section{padding:60px 0}
}
