@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap');
:root{--green:#123b24;--gold:#e7ad2e;--cream:#fbf7ec;--paper:#fffdf7;--ink:#173424;--muted:#66766a;--line:#e8e0cd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}.topbar{height:82px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fffdf7;position:sticky;top:0;z-index:20;border-bottom:1px solid #ece5d6}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.logo{width:45px;height:45px;color:#d7a522;display:grid;place-items:center;font-size:40px}.brand-text strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:21px;color:var(--green)}.brand-text small{display:block;text-align:center;font-size:8px;letter-spacing:.2em;margin-top:4px;color:#8a784b}.nav{display:flex;align-items:center;gap:25px}.nav a{text-decoration:none;font-size:12px;font-weight:700;color:#354b3b}.nav .nav-cta{background:var(--gold);padding:13px 17px;border-radius:30px}.menu-toggle{display:none;border:0;background:none;font-size:25px;color:var(--green)}.hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:35px;align-items:center;padding:52px 5.5%;background:radial-gradient(ellipse at 85% 15%,#f7d5a7 0,transparent 35%),linear-gradient(120deg,#fff9e9,#f1ead7);min-height:590px}.hero-copy{max-width:650px}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:700;color:#a47a1e}.eyebrow span{display:inline-block;width:25px;height:1px;background:var(--gold);vertical-align:middle;margin-right:8px}.hero h1,h2{font-family:"Playfair Display",Georgia,serif;letter-spacing:-.035em}.hero h1{font-size:clamp(42px,4.7vw,67px);line-height:1.1;margin:21px 0;color:var(--green);font-weight:600}.hero h1 em,h2 em{font-weight:400;color:#bd8b1e}.hero-sub{font-family:"Playfair Display",Georgia,serif;font-size:18px;line-height:1.5;margin:20px 0}.hero-description{max-width:470px;font-size:14px;line-height:1.85;color:#58685b}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 19px;border:0;border-radius:30px;text-decoration:none;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer}.btn-green{background:var(--green);color:white}.btn-outline{border:1px solid var(--green);color:var(--green);background:transparent}.btn-gold{background:var(--gold);color:#182f1d}.hero-points{display:flex;flex-wrap:wrap;gap:14px;font-size:10px;color:#61715f;margin-top:28px}.hero-visual{position:relative;min-width:0}.hero-visual img{width:100%;height:auto;max-height:490px;aspect-ratio:3/2;object-fit:cover;object-position:center;display:block;border-radius:7px;box-shadow:0 18px 40px #1d38201c}.image-caption{position:absolute;bottom:12px;left:12px;right:12px;text-align:center;color:white;background:#092a18b8;padding:12px 8px;font-size:9px;letter-spacing:.16em;border-radius:3px}.ribbon{display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;padding:17px 5%;font-size:9px;letter-spacing:.17em;font-weight:700;color:#6c725f;border-bottom:1px solid var(--line)}.section{padding:78px 8%}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:center}.section h2{font-size:clamp(33px,4vw,47px);line-height:1.2;margin:16px 0 0;color:var(--green)}.about-copy p{font-size:14px;line-height:1.9;color:#4f6253}.about-copy .muted{color:#7c877a;font-size:12px}.courses{background:#f6f0df}.section-title-row{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:32px}.section-title-row>p{max-width:300px;font-size:12px;line-height:1.8;color:#657265}.course-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.course-card{background:#fffdf8;border:1px solid #eee5d3;border-radius:12px;overflow:hidden;box-shadow:0 9px 22px #243b2010;display:flex;flex-direction:column}.course-art{height:130px;display:grid;place-items:center;color:white;font-size:50px;position:relative;overflow:hidden}.course-art:before,.course-art:after{content:"";position:absolute;border:1px solid #ffffff70;border-radius:50%;width:150px;height:150px}.course-art:after{width:95px;height:95px}.course-art span{z-index:1;text-shadow:0 3px 18px #fff8}.art-one{background:radial-gradient(circle at center,#e5c65c,#3564a0 40%,#101c48 85%)}.art-two{background:linear-gradient(130deg,#8b5b37,#e6c08b,#e8e3c8)}.art-three{background:radial-gradient(circle at 50% 35%,#4e9d95,#123d52 50%,#1a183f)}.art-four{background:radial-gradient(circle at 60% 40%,#f6bd48,#9a4d26 30%,#17283a 78%)}.course-body{padding:21px 19px 19px;display:flex;flex-direction:column;flex:1}.course-tag{font-size:8px;letter-spacing:.14em;color:#a77c1b;font-weight:700}.course-body h3{font-family:"Playfair Display",Georgia,serif;font-size:20px;color:var(--green);margin:10px 0}.course-body p{font-size:11px;line-height:1.8;color:#68766a;flex:1}.course-link{border-top:1px solid #eee6d6;padding-top:13px;text-decoration:none;font-size:11px;font-weight:700;color:var(--green)}.fineprint{font-size:10px;color:#7c8678;margin:17px 0 0}.method-section{background:var(--green);color:white}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.method-grid h2{color:white;margin:19px 0}.method-grid h2 em{color:#f3ce70}.method-grid>div:first-child>p{font-size:13px;line-height:1.9;color:#d6e0d3;max-width:480px;margin:24px 0}.light{color:#edc65f}.steps{border-top:1px solid #ffffff30}.steps>div{display:flex;gap:22px;padding:18px 0;border-bottom:1px solid #ffffff30}.steps b{font-size:11px;color:#f0c454;padding-top:4px}.steps h3{font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:21px;margin:0 0 4px}.steps p{font-size:11px;color:#d2dfd4;margin:0}.why{text-align:center}.why h2{margin:15px 0 35px}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.why-grid article{padding:23px 14px;border:1px solid var(--line);border-radius:8px}.why-grid article>span{font-size:29px;color:#bd8b1e}.why-grid h3{font-size:13px;margin:14px 0 8px}.why-grid p{font-size:11px;color:#6e7a6d;line-height:1.7}.faq{background:#f7f1e4;display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.faq-list details{border-bottom:1px solid #e2d9c7;padding:18px 0}.faq-list details:first-child{border-top:1px solid #e2d9c7}.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:15px;font-size:13px;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#a67a17;font-size:18px}.faq-list details p{font-size:12px;color:#667365;line-height:1.8;margin:13px 20px 0 0}.contact-wrap{padding:65px 7%;background:linear-gradient(130deg,#f3e9cc,#e7edcf)}.contact-card{max-width:1100px;margin:auto;background:var(--green);border-radius:12px;padding:48px 6%;display:grid;grid-template-columns:1fr .9fr;gap:10%;color:white}.contact-intro h2{font-size:clamp(36px,4vw,49px);color:white;margin:18px 0}.contact-intro h2 em{color:#f3ce70}.contact-intro>p{font-size:13px;line-height:1.8;color:#d3dfd4;max-width:380px}.contact-bullet{font-size:10px;color:#f3ce70;margin-top:25px}#lead-form{display:flex;flex-direction:column}#lead-form label{font-size:10px;color:#e0e9dd;margin:0 0 7px}#lead-form input,#lead-form select,#lead-form textarea{width:100%;padding:12px 13px;border:1px solid transparent;border-radius:4px;background:#fffdf7;color:#203b27;font:inherit;font-size:12px;margin-bottom:14px}#lead-form textarea{resize:vertical}.submit{width:100%;margin-top:3px}.form-status{font-size:10px;line-height:1.6;color:#d3dfd4;margin:10px 0 0}footer{padding:37px 8% 22px;background:#fffdf7}footer>p{font-size:12px;color:#778272;margin:14px 0 23px}.footer-bottom{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:17px;font-size:10px;color:#7a8577}.footer-bottom a{text-decoration:none;color:var(--green)}.disclaimer{display:block;max-width:850px;margin-top:20px;color:#899184;font-size:10px;line-height:1.7}@media(max-width:1000px){.topbar{padding:0 4%}.nav{gap:13px}.hero{padding:45px 5%;gap:22px}.section{padding:65px 6%}.course-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.topbar{height:72px}.brand-text strong{font-size:18px}.logo{width:40px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:71px;padding:16px 6% 22px;background:#fffdf7;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:13px 0;font-size:13px}.nav .nav-cta{text-align:center;margin-top:8px;padding:13px}.hero{grid-template-columns:1fr;padding:43px 6% 38px;gap:28px}.hero h1{font-size:46px}.hero-visual img{aspect-ratio:3/2;max-height:none}.hero-points{gap:10px}.ribbon{gap:10px;font-size:8px}.section{padding:55px 6%}.about,.method-grid,.faq,.contact-card{grid-template-columns:1fr;gap:28px}.section-title-row{display:block}.section-title-row>p{margin-top:16px}.course-grid{grid-template-columns:1fr}.course-art{height:160px}.why-grid{grid-template-columns:repeat(2,1fr)}.contact-wrap{padding:40px 4%}.contact-card{padding:32px 6%}.footer-bottom{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Compact, professional, responsive clickable hero banner */
.hero.hero-image-only{
  display:flex;justify-content:center;align-items:center;min-height:0;
  padding:clamp(18px,3vw,38px) 5%;
  background:radial-gradient(ellipse at 50% 0%,#f8edcf 0%,#fbf7ec 72%);
}
.hero-image-link{
  position:relative;display:block;width:100%;max-width:1050px;margin:0 auto;
  line-height:0;overflow:hidden;cursor:pointer;border-radius:14px;
  background:#f5ecd7;box-shadow:0 14px 34px rgba(28,55,34,.14);
  border:1px solid rgba(189,139,30,.24);
  transition:box-shadow .2s ease,transform .2s ease;
}
.hero-image-link img{
  display:block;width:100%;height:auto;max-height:600px;object-fit:contain;
  object-position:center;border-radius:13px;transition:filter .2s ease;
}
.hero-image-link:hover,.hero-image-link:focus-visible{
  box-shadow:0 19px 42px rgba(28,55,34,.20);transform:translateY(-2px)
}
.hero-image-link:hover img,.hero-image-link:focus-visible img{filter:brightness(.97)}
.hero-image-link:focus-visible{outline:3px solid #bd8b1e;outline-offset:4px}
.image-click-hint{
  position:absolute;right:clamp(12px,2vw,22px);bottom:clamp(12px,2vw,20px);
  line-height:1.2;background:rgba(18,59,36,.94);color:#fffdf7;
  border:1px solid #e7ad2e;border-radius:28px;padding:11px 16px;
  font-size:11px;font-weight:700;letter-spacing:.02em;
  opacity:.96;transform:translateY(0);transition:opacity .2s ease,background .2s ease;
}
.hero-image-link:hover .image-click-hint,.hero-image-link:focus-visible .image-click-hint{background:#245536}
@media(max-width:700px){
  .hero.hero-image-only{padding:14px 4% 22px}
  .hero-image-link{border-radius:10px}
  .hero-image-link img{max-height:300px;border-radius:9px}
  .image-click-hint{right:10px;bottom:10px;padding:9px 12px;font-size:10px}
}


/* Readability upgrade: larger typography while keeping the premium layout */
body{font-size:16px}
.brand-text strong{font-size:24px}
.brand-text small{font-size:9px}
.nav a{font-size:14px}
.eyebrow{font-size:12px}
.ribbon{font-size:11px}
.section h2{font-size:clamp(36px,4.2vw,52px)}
.about-copy p{font-size:16px}
.about-copy .muted{font-size:14px}
.section-title-row>p{font-size:14px}
.course-tag{font-size:10px}
.course-body h3{font-size:22px}
.course-body p{font-size:14px}
.course-link{font-size:13px}
.fineprint{font-size:12px}
.method-grid>div:first-child>p{font-size:15px}
.steps b{font-size:13px}
.steps p{font-size:13px}
.why-grid h3{font-size:15px}
.why-grid p{font-size:13px}
.faq-list summary{font-size:15px}
.faq-list details p{font-size:14px}
.contact-intro>p{font-size:15px}
.contact-bullet{font-size:12px}
#lead-form label{font-size:12px}
#lead-form input,#lead-form select,#lead-form textarea{font-size:14px}
.form-status{font-size:12px}
footer>p{font-size:14px}
.footer-bottom{font-size:12px}
.disclaimer{font-size:11px}
.btn{font-size:14px}
@media(max-width:700px){
  .brand-text strong{font-size:20px}
  .nav a{font-size:15px}
  .section h2{font-size:clamp(32px,8vw,42px)}
  .course-body h3{font-size:21px}
  .course-body p{font-size:14px}
  .hero-image-link img{max-height:360px}
}
