/*
Theme Name: Kuma Financial
Theme URI: https://kumafinancial.ca
Author: Ruban Kumarasamy
Description: Custom one-page WordPress theme for Kuma Financial.
Version: 1.0.0
Text Domain: kuma-financial
*/
:root{--ink:#102e2a;--green:#0e443b;--lime:#ddeb65;--cream:#f5f1e8;--sand:#e8dfd0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.site-header{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(245,241,232,.94);border-bottom:1px solid rgba(16,46,42,.12);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:12px;font-size:17px;letter-spacing:.13em}.brand b{font-weight:400;opacity:.58}.brand-mark{width:37px;height:37px;display:grid;place-items:center;color:var(--lime);background:var(--green);border-radius:50% 50% 50% 12%;font-family:Georgia,serif;font-size:22px;font-style:italic}nav{display:flex;gap:34px;font-size:14px}nav a:hover{opacity:.6}.button{display:inline-flex;justify-content:center;align-items:center;gap:26px;background:var(--lime);color:var(--ink);padding:17px 23px;border-radius:3px;font-size:14px;font-weight:700;transition:.2s}.button:hover{transform:translateY(-2px);background:#e9f582}.button-small{padding:12px 18px;gap:12px}.hero{min-height:690px;display:grid;grid-template-columns:1.08fr .92fr;overflow:hidden}.hero-copy{padding:110px 7vw 90px}.eyebrow{margin:0 0 24px;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.04em}h1{margin:0;max-width:700px;font-size:clamp(58px,6vw,92px);line-height:.96}.hero-lead{max-width:590px;font-size:19px;line-height:1.65;margin:31px 0;color:#36554f}.hero-actions{display:flex;align-items:center;gap:30px}.text-link{border-bottom:1px solid var(--ink);padding:14px 0;font-size:14px}.text-link span{margin-left:20px}.microcopy{margin-top:24px;font-size:12px;opacity:.55}.hero-art{position:relative;min-height:100%;background:var(--green);overflow:hidden}.sun{position:absolute;width:260px;height:260px;border-radius:50%;background:var(--lime);top:105px;right:15%}.arc{position:absolute;border:1px solid rgba(255,255,255,.22);border-radius:50%}.arc-one{width:690px;height:690px;top:30px;left:-120px}.arc-two{width:500px;height:500px;top:125px;left:-25px}.hero-card{position:absolute;left:10%;right:10%;bottom:8%;padding:34px;color:white;background:rgba(8,35,31,.78);backdrop-filter:blur(12px);border-left:3px solid var(--lime)}.hero-card span{display:block;text-transform:uppercase;font-size:10px;letter-spacing:.2em;opacity:.65;margin-bottom:18px}.hero-card strong{font-family:Georgia,serif;font-size:31px;line-height:1.25;font-weight:400}.trust-strip{display:flex;justify-content:center;align-items:center;gap:44px;padding:24px;background:var(--lime);text-transform:uppercase;letter-spacing:.17em;font-size:10px;font-weight:700}.trust-strip i{width:4px;height:4px;border-radius:50%;background:var(--ink)}.section{padding:110px 7vw}.section-intro{display:flex;justify-content:space-between;gap:50px;align-items:flex-start;margin-bottom:60px}.section h2{font-size:clamp(43px,5vw,67px);line-height:1.05;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #bcb6aa}.service-card{padding:28px 25px 25px 0;min-height:285px;border-right:1px solid #bcb6aa;display:flex;flex-direction:column}.service-card:not(:first-child){padding-left:25px}.service-card:last-child{border-right:0}.service-card>span{font-size:11px;opacity:.5}.service-card h3{font-family:Georgia,serif;font-weight:400;font-size:25px;margin:52px 0 16px}.service-card p{margin:0;line-height:1.6;font-size:14px;color:#4b655f}.service-card a{margin-top:auto;font-size:12px;font-weight:700}.service-card a b{float:right}.approach{background:var(--green);color:white;display:grid;grid-template-columns:1fr 1fr;gap:11vw}.light{color:var(--lime)}.approach-copy>p:last-child{color:#c1d0cc;line-height:1.75;max-width:560px;margin-top:30px}.step{display:grid;grid-template-columns:45px 1fr;gap:20px;padding:27px 0;border-top:1px solid rgba(255,255,255,.22)}.step>span{color:var(--lime);font-size:11px}.step h3{margin:0 0 8px;font-family:Georgia,serif;font-size:25px;font-weight:400}.step p{margin:0;color:#c1d0cc;font-size:14px;line-height:1.55}.about{display:grid;grid-template-columns:.45fr 1fr;gap:8vw;background:#fffdf8}.quote-mark{width:100%;aspect-ratio:1;max-width:350px;border-radius:50% 50% 10% 50%;background:var(--sand);display:grid;place-items:center;color:var(--green);font:150px/1 Georgia,serif;padding-top:55px}.about>div:last-child{max-width:720px}.about>div>p:not(.eyebrow):not(.signature){line-height:1.8;color:#4b655f;font-size:17px;margin-top:30px}.signature{margin-top:35px;font-family:Georgia,serif;font-size:22px}.signature span{display:block;margin-top:8px;font:11px Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;opacity:.55}.contact{padding:95px 7vw;text-align:center;background:#173a35;color:white}.contact h2{font-size:clamp(50px,6vw,78px);line-height:1;margin:0}.contact>p:not(.eyebrow){color:#c3d0cc}.contact-actions{display:flex;justify-content:center;align-items:center;gap:30px;margin-top:35px}.button-light{background:var(--lime)}.email-link{border-bottom:1px solid rgba(255,255,255,.5);padding:13px 0;font-size:14px}footer{background:#0a2622;color:white;padding:65px 7vw 30px}.footer-brand{width:max-content}footer>p{max-width:650px;color:#9fb0ac;font-size:13px;line-height:1.6}.legal{margin-top:42px;max-width:1000px;font-size:10px;opacity:.65}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.15);padding-top:22px;margin-top:30px;color:#81918d;font-size:11px}
@media(max-width:900px){nav{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding-top:75px}.hero-art{min-height:470px}.service-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(2){border-right:0}.service-card{border-bottom:1px solid #bcb6aa}.approach{grid-template-columns:1fr;gap:60px}.about{grid-template-columns:1fr}.quote-mark{max-width:220px}}
@media(max-width:600px){.site-header{height:72px;padding:0 20px}.brand{font-size:13px;gap:8px}.brand-mark{width:32px;height:32px}.button-small{display:none}.hero-copy,.section{padding:72px 24px}h1{font-size:54px}.hero-actions,.contact-actions{align-items:stretch;flex-direction:column}.microcopy{line-height:1.5}.hero-art{min-height:430px}.sun{width:190px;height:190px}.trust-strip{gap:15px;flex-wrap:wrap;text-align:center}.section-intro{display:block}.service-grid{grid-template-columns:1fr}.service-card,.service-card:not(:first-child){padding:24px 0;border-right:0}.service-card h3{margin-top:30px}.contact{padding:75px 24px}footer{padding:55px 24px 25px}.footer-bottom{gap:20px}}
.scheduler{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:var(--sand)}.scheduler-intro>p:not(.eyebrow){line-height:1.75;color:#4b655f;max-width:520px}.privacy-note{margin-top:35px;padding:22px;border-left:3px solid var(--green);background:rgba(255,255,255,.45);display:grid;gap:8px;font-size:12px;line-height:1.55}.booking-form{padding:38px;background:#fffdf8;box-shadow:0 18px 60px rgba(16,46,42,.09)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking-form label{display:grid;gap:9px;margin-bottom:18px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.booking-form label small{float:right;font-size:9px;opacity:.5}.booking-form input,.booking-form select{width:100%;border:1px solid #c6c0b5;background:white;border-radius:2px;padding:14px 13px;color:var(--ink);font:14px Arial,sans-serif;letter-spacing:0;text-transform:none;outline:none}.booking-form input:focus,.booking-form select:focus{border-color:var(--green);box-shadow:0 0 0 2px rgba(14,68,59,.12)}.booking-form .consent{display:flex;align-items:flex-start;gap:12px;margin:7px 0 20px;text-transform:none;letter-spacing:0;font-weight:400;font-size:12px;line-height:1.5}.consent input{width:17px;height:17px;margin:1px 0 0;flex:0 0 auto}.submit-button{border:0;cursor:pointer;width:100%}.form-note{font-size:10px;line-height:1.5;color:#64746f;margin:13px 0 0}.success{padding:12px;margin-top:14px!important;background:#e8efcb;color:var(--green)!important;font-size:12px!important}
@media(max-width:900px){.scheduler{grid-template-columns:1fr;gap:60px}}
@media(max-width:600px){.booking-form{padding:24px}.field-row{grid-template-columns:1fr;gap:0}}
.education{background:#fffdf8}.education-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:end;margin-bottom:60px}.education-heading>p{margin:0;color:#4b655f;font-size:16px;line-height:1.75}.learning-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.learning-card{position:relative;padding:34px;background:var(--cream);border:1px solid #d8d1c5;min-height:360px}.learning-number{position:absolute;right:30px;top:28px;font:italic 46px Georgia,serif;color:#c9c2b5}.learning-tag{margin:0 0 55px!important;color:#506a64!important;font-size:10px!important;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.learning-card h3{max-width:78%;margin:0 0 18px;font:400 30px/1.1 Georgia,serif}.learning-card>p:not(.learning-tag){color:#4b655f;font-size:14px;line-height:1.65}.learning-card details{margin-top:28px;border-top:1px solid #c9c2b5;padding-top:17px}.learning-card summary{cursor:pointer;list-style:none;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.learning-card summary::-webkit-details-marker{display:none}.learning-card summary span{float:right;font-size:18px;font-weight:400}.learning-card details[open] summary span{transform:rotate(45deg)}.learning-card ul{margin:17px 0 0;padding-left:19px;color:#4b655f;font-size:13px;line-height:1.8}.education-disclaimer{margin:30px 0 0!important;padding-left:18px;border-left:2px solid var(--lime);font-size:10px!important;line-height:1.6;color:#64746f!important;max-width:850px}
@media(max-width:900px){.education-heading{grid-template-columns:1fr;gap:25px}.learning-grid{grid-template-columns:1fr}}
@media(max-width:600px){.learning-card{padding:27px;min-height:0}.learning-card h3{font-size:26px}.learning-number{right:23px;top:23px}}
.compact-education{background:#173a35;color:white;padding-top:82px;padding-bottom:82px}.compact-education-intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.compact-education-intro h2{font-size:clamp(42px,4.5vw,62px)}.compact-education-intro>p{margin:0;color:#c1d0cc;line-height:1.75;max-width:520px}.compact-learning-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid rgba(255,255,255,.25)}.compact-learning-grid article{padding:27px 28px 10px 0;border-right:1px solid rgba(255,255,255,.2);min-height:205px}.compact-learning-grid article:not(:first-child){padding-left:28px}.compact-learning-grid article:last-child{border-right:0}.compact-learning-grid span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--lime)}.compact-learning-grid h3{margin:34px 0 12px;font:400 24px/1.15 Georgia,serif}.compact-learning-grid p{margin:0;color:#c1d0cc;font-size:13px;line-height:1.6}.compact-disclaimer{margin:32px 0 0;color:#93a7a2;font-size:9px;letter-spacing:.03em}
@media(max-width:800px){.compact-education-intro{grid-template-columns:1fr;gap:22px}.compact-learning-grid{grid-template-columns:1fr}.compact-learning-grid article,.compact-learning-grid article:not(:first-child){padding:25px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.2);min-height:0}.compact-learning-grid h3{margin-top:18px}}
.registered-section{background:#e8dfd0}.registered-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end;margin-bottom:50px}.registered-heading>p{margin:0;color:#4b655f;line-height:1.75;max-width:560px}.program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.program-grid article{padding:28px 24px;background:#fffdf8;border-top:4px solid var(--green);min-height:270px}.program-grid article>span{display:inline-grid;place-items:center;min-width:62px;height:34px;padding:0 9px;background:var(--lime);font-size:11px;font-weight:700;letter-spacing:.1em}.program-grid h3{font:400 21px/1.2 Georgia,serif;margin:42px 0 14px}.program-grid p{margin:0;color:#4b655f;font-size:13px;line-height:1.65}.program-note{max-width:900px;margin:28px 0 0!important;padding-left:17px;border-left:2px solid var(--green);color:#5e6f6a!important;font-size:10px!important;line-height:1.6}
@media(max-width:1000px){.program-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.registered-heading{grid-template-columns:1fr;gap:24px}.program-grid{grid-template-columns:1fr}.program-grid article{min-height:0}.program-grid h3{margin-top:28px}}
.logo-link img{display:block;width:auto;height:54px;object-fit:contain}.footer-logo img{height:64px;filter:brightness(1.15)}
@media(max-width:600px){.logo-link img{height:44px}.footer-logo img{height:54px}}
.second-opinion{display:grid;grid-template-columns:1fr 1fr;gap:9vw;background:#fffdf8}.second-opinion-lead>p:not(.eyebrow){max-width:620px;color:#4b655f;font-size:16px;line-height:1.8;margin:28px 0}.second-opinion-lead .button{margin-top:8px}.review-points{border-top:1px solid #c8c1b5}.review-points article{display:grid;grid-template-columns:42px 1fr;column-gap:18px;padding:24px 0;border-bottom:1px solid #c8c1b5}.review-points article span{grid-row:1/3;color:#7a8b86;font-size:10px}.review-points h3{margin:0 0 8px;font:400 23px Georgia,serif}.review-points article p{margin:0;color:#4b655f;font-size:13px;line-height:1.6}.review-note{margin:28px 0 0;padding:20px;background:var(--lime);font:italic 16px/1.6 Georgia,serif}
@media(max-width:900px){.second-opinion{grid-template-columns:1fr;gap:55px}}
.test-banner{display:grid;gap:5px;margin:-8px 0 24px;padding:14px 16px;background:#fff5c9;border-left:3px solid #b48a18;font-size:11px;line-height:1.45}.test-banner strong{text-transform:uppercase;letter-spacing:.12em}.test-banner span{color:#5f563d}.submit-button:disabled{cursor:wait;opacity:.7;transform:none}.success{display:grid;gap:5px;padding:15px 16px}.success strong{font-size:13px}.success span{color:#36554f}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-error{padding:15px 16px;margin-top:14px;background:#f7dddd;color:#7a1f1f;font-size:12px;line-height:1.45}
