@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600&family=DM+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

:root{
    --navy:#1B2B3B;--navy-light:#2A3D50;--poppy:#F07820;--poppy-dark:#D56A18;
    --terracotta:#C4704B;--blush:#E8A898;--blush-light:#F2CDC4;--blush-pale:#F8E4DF;
    --lavender:#B8B4C8;--lavender-deep:#9B96B0;--lavender-light:#D4D1E0;
    --lavender-pale:#ECEAF2;--lavender-whisper:#F4F3F8;
    --cream:#FDF9F4;--sand:#E8DDD3;--brown:#3A2A22;--white:#FFFFFF;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--navy);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::selection{background:var(--poppy);color:var(--white)}
img{max-width:100%;display:block}

/* === NAV (BIGGER) === */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:22px 0;background:rgba(253,249,244,0.95);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);transition:all 0.35s}
.nav.scrolled{padding:14px 0;box-shadow:0 1px 0 var(--lavender-light)}
.nv{max-width:1280px;margin:0 auto;padding:0 40px;display:flex;justify-content:space-between;align-items:center}
.logo-link{text-decoration:none}
.logo-link img{height:56px;width:auto;transition:opacity 0.2s}
.logo-link img:hover{opacity:0.85}
.nv-links{display:flex;gap:40px;align-items:center}
.nv-a{font-size:16px;font-weight:500;color:var(--navy);text-decoration:none;transition:color 0.2s;position:relative}
.nv-a::after{content:'';position:absolute;bottom:-6px;left:0;width:0;height:2px;background:var(--poppy);transition:width 0.3s;border-radius:1px}
.nv-a:hover{color:var(--poppy)}.nv-a:hover::after{width:100%}
.nv-socials{display:flex;gap:8px;align-items:center}
.nv-soc{width:34px;height:34px;border-radius:50%;background:var(--lavender-pale);display:flex;justify-content:center;align-items:center;transition:all 0.25s;text-decoration:none}
.nv-soc:hover{background:var(--poppy)}
.nv-soc svg{width:15px;height:15px}
.nv-soc svg path{fill:var(--navy);transition:fill 0.25s}
.nv-soc:hover svg path{fill:var(--white)}
.nv-cta{background:var(--poppy);color:var(--white);padding:14px 36px;font-size:15px;font-weight:700;border-radius:100px;text-decoration:none;transition:all 0.25s}
.nv-cta:hover{background:var(--poppy-dark);transform:translateY(-1px);box-shadow:0 6px 20px rgba(240,120,32,0.2)}
.ham{display:none;background:none;border:none;cursor:pointer;width:28px;height:22px;position:relative}
.ham span{display:block;width:100%;height:2.5px;background:var(--navy);position:absolute;left:0;transition:all 0.3s;border-radius:2px}
.ham span:nth-child(1){top:0}.ham span:nth-child(2){top:10px}.ham span:nth-child(3){bottom:0}
.ham.on span:nth-child(1){top:10px;transform:rotate(45deg)}.ham.on span:nth-child(2){opacity:0}.ham.on span:nth-child(3){bottom:10px;transform:rotate(-45deg)}
.mob{display:none;position:fixed;top:86px;left:0;right:0;background:var(--cream);padding:16px 40px 32px;box-shadow:0 16px 48px rgba(27,43,59,0.08);z-index:999}
.mob.open{display:block}
.mob a{display:block;padding:18px 0;font-size:18px;font-weight:500;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--lavender-pale)}
.mob a:last-child{border-bottom:none}
@media(max-width:960px){.nv-links{display:none}.ham{display:block}}

/* === BUTTONS === */
.btn-pop{background:var(--poppy);color:var(--white);border:none;padding:18px 48px;font-size:15px;font-weight:700;border-radius:100px;cursor:pointer;transition:all 0.3s;font-family:'DM Sans',sans-serif;text-decoration:none;display:inline-block}
.btn-pop:hover{background:var(--poppy-dark);transform:translateY(-3px);box-shadow:0 12px 28px rgba(240,120,32,0.22)}
.btn-ol{background:transparent;color:var(--navy);border:2.5px solid var(--lavender);padding:16px 44px;font-size:15px;font-weight:600;border-radius:100px;cursor:pointer;transition:all 0.3s;font-family:'DM Sans',sans-serif;text-decoration:none;display:inline-block}
.btn-ol:hover{background:var(--lavender);color:var(--white);border-color:var(--lavender)}
.btn-w{background:var(--white);color:var(--navy);border:none;padding:18px 48px;font-size:15px;font-weight:700;border-radius:100px;cursor:pointer;transition:all 0.3s;font-family:'DM Sans',sans-serif;text-decoration:none;display:inline-block}
.btn-w:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,0.1)}
.btn-lav{background:var(--lavender);color:var(--white);border:none;padding:18px 48px;font-size:15px;font-weight:700;border-radius:100px;cursor:pointer;transition:all 0.3s;font-family:'DM Sans',sans-serif;text-decoration:none;display:inline-block}
.btn-lav:hover{background:var(--lavender-deep);transform:translateY(-3px)}

/* === PAGE HERO === */
.pg-hero{padding:160px 40px 80px;text-align:center;position:relative}
.pg-hero-eyebrow{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:0.25em;color:var(--poppy);margin-bottom:20px}
.pg-hero-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(38px,5vw,64px);font-weight:600;color:var(--navy);letter-spacing:-0.035em;line-height:1.06;margin-bottom:24px}
.pg-hero-h1 span{color:var(--poppy)}
.pg-hero-sub{font-size:18px;color:#5C6D7E;max-width:620px;margin:0 auto;line-height:1.85}

/* === SECTION HELPERS === */
.sec-cream{background:var(--cream)}
.sec-white{background:var(--white)}
.sec-lav{background:var(--lavender-whisper)}
.sec-blush{background:var(--blush-pale)}
.sec-navy{background:var(--navy)}
.sec-lavfull{background:var(--lavender-pale)}
.sec-poppy{background:var(--poppy)}
.container{max-width:1140px;margin:0 auto;padding:0 40px}
.pad-sec{padding:100px 0}
.pad-sec-lg{padding:120px 0}
.text-center{text-align:center}

/* === CTA BANNER === */
.cta-banner{padding:100px 40px;background:var(--poppy)}
.cta-in{max-width:700px;margin:0 auto;text-align:center}
.cta-h2{font-family:'Cormorant Garamond',serif;font-size:clamp(34px,4.5vw,52px);font-weight:600;color:var(--white);margin-bottom:20px;letter-spacing:-0.025em}
.cta-p{font-size:18px;color:rgba(255,255,255,0.85);margin-bottom:48px;line-height:1.8}

/* === FOOTER === */
.footer{background:var(--navy);padding:88px 40px 44px;color:rgba(255,255,255,0.5)}
.ft-in{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 0.6fr;gap:56px;margin-bottom:64px}
.ft-logo{height:48px;width:auto;margin-bottom:16px}
.ft-tg{font-size:15px;color:var(--blush);font-style:italic;margin-bottom:28px}
.ft-ss{display:flex;gap:12px}
.ft-s{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,0.06);display:flex;justify-content:center;align-items:center;transition:all 0.25s;text-decoration:none}
.ft-s:hover{background:var(--poppy)}
.ft-s svg{width:16px;height:16px}.ft-s svg path{fill:rgba(255,255,255,0.5);transition:fill 0.25s}.ft-s:hover svg path{fill:var(--white)}
.ft-h{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.18em;color:rgba(255,255,255,0.2);margin-bottom:24px}
.ft-l{display:block;font-size:15px;color:rgba(255,255,255,0.45);text-decoration:none;margin-bottom:14px;transition:color 0.2s}
.ft-l:hover{color:var(--white)}
.ft-loc{font-size:13px;color:rgba(255,255,255,0.25);margin-top:20px}
.ft-bar{max-width:1140px;margin:0 auto;padding-top:36px;border-top:1px solid rgba(255,255,255,0.05);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;color:rgba(255,255,255,0.18)}
@media(max-width:700px){.ft-in{grid-template-columns:1fr;gap:40px}}

/* === ANIMATIONS === */
@keyframes rise{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
.rv{opacity:1;transform:translateY(0);transition:opacity 0.7s cubic-bezier(0.23,1,0.32,1),transform 0.7s cubic-bezier(0.23,1,0.32,1)}
.rv.vis{opacity:1;transform:translateY(0)}
.rv-d1{transition-delay:0.1s}.rv-d2{transition-delay:0.2s}.rv-d3{transition-delay:0.3s}

/* === SOCIAL ICONS === */
.ig-svg{width:24px;height:24px}
.li-svg{width:24px;height:24px}
.soc-row{display:flex;gap:14px}
.soc-circle{width:56px;height:56px;border-radius:50%;background:var(--lavender);display:flex;justify-content:center;align-items:center;transition:all 0.3s;text-decoration:none}
.soc-circle:hover{background:var(--poppy);transform:translateY(-3px);box-shadow:0 8px 20px rgba(240,120,32,0.2)}
.soc-circle svg{width:24px;height:24px}
.soc-circle svg path{fill:var(--white)}

/* === JOTFORM EMBED === */
.jotform-wrap{max-width:720px;margin:0 auto}
.jotform-wrap iframe{width:100%!important;border:none!important}
@media(max-width:700px){.tg-mobile{grid-template-columns:1fr!important}
[style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important}
[style*="grid-template-columns:repeat(3"]{grid-template-columns:1fr!important}
[style*="grid-template-columns:repeat(4"]{grid-template-columns:1fr 1fr!important}
.hw-grid{grid-template-columns:1fr!important}
.assess-grid{grid-template-columns:1fr!important}}
