:root{--navy:#2f5d62;--teal:#4f8f8b;--aqua:#d7e8e5;--sand:#f7f1e6;--gold:#e2c08d;--coral:#e2c08d;--offwhite:#fbf9f4;--ink:#24393b}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);line-height:1.6;background:#fff}
a{color:var(--teal)}.wrap{max-width:1120px;margin:auto;padding:0 20px}
header{position:sticky;top:0;background:rgba(251,249,244,.96);backdrop-filter:blur(6px);z-index:10;border-bottom:1px solid #e4eef0}
nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0}.logo{font-weight:800;color:var(--navy);font-size:1.2rem;text-decoration:none;display:flex;align-items:center;gap:10px;line-height:1.15}.logo img{width:44px;height:44px;flex:none}.logo span{color:var(--teal)}
nav ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}nav ul a{text-decoration:none;color:var(--ink);font-weight:500}
.btn{display:inline-block;background:var(--gold);color:#24393b!important;padding:13px 26px;border-radius:40px;text-decoration:none;font-weight:700;border:0;cursor:pointer;font-size:1rem}.btn.alt{background:transparent;border:2px solid #fff;color:#fff!important}
.hero{background:linear-gradient(160deg,#24494d,var(--navy) 45%,var(--teal));color:#fff;position:relative;overflow:hidden;padding:110px 0 160px}
.hero h1{font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.1;margin:.2em 0;max-width:760px}.hero p{font-size:1.2rem;max-width:620px;opacity:.92}
.tag{display:inline-block;background:rgba(255,255,255,.15);padding:6px 14px;border-radius:20px;font-size:.85rem;letter-spacing:.05em}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.wave{position:absolute;bottom:-1px;left:0;width:100%}
section{padding:80px 0}h2{font-size:clamp(1.8rem,3.5vw,2.5rem);color:var(--navy);margin:0 0 .3em}.lead{color:#4a5b66;max-width:680px;margin-bottom:40px}
.grid{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:#fff;border:1px solid #dcebed;border-radius:16px;padding:28px;box-shadow:0 6px 24px rgba(11,57,84,.06)}.card h3{margin-top:0;color:var(--navy)}
.num{display:inline-flex;width:40px;height:40px;border-radius:50%;background:var(--aqua);color:var(--navy);font-weight:800;align-items:center;justify-content:center;margin-bottom:10px}
.sand{background:var(--sand)}.about{display:grid;grid-template-columns:1fr 1.4fr;gap:50px;align-items:center}
.photo{aspect-ratio:4/5;border-radius:20px;background:repeating-linear-gradient(45deg,#d8eef0,#d8eef0 12px,#c9e6e9 12px,#c9e6e9 24px);display:flex;align-items:center;justify-content:center;color:var(--navy);font-weight:600;text-align:center;padding:20px}
.ph{background:#fff6d6;border:2px dashed #e0b84a;color:#7a5b00;border-radius:10px;padding:10px 14px;font-size:.9rem;margin:14px 0}
.price{text-align:center}.price .amt{font-size:2.6rem;font-weight:800;color:var(--navy)}.price ul{text-align:left;padding-left:20px}.price.feat{border:3px solid var(--teal);transform:scale(1.03)}
.badge{background:var(--teal);color:#fff;font-size:.75rem;padding:4px 12px;border-radius:20px}
details{background:#fff;border:1px solid #dcebed;border-radius:12px;padding:18px 22px;margin-bottom:12px}summary{font-weight:700;cursor:pointer;color:var(--navy)}
.signup{background:linear-gradient(120deg,var(--teal),var(--navy));color:#fff;text-align:center}.signup h2{color:#fff}
form.inline{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:20px}input,textarea,select{padding:13px 16px;border-radius:30px;border:1px solid #c8dadd;font-size:1rem;font-family:inherit}form.inline input{min-width:280px;border:0}
.contact form{display:grid;gap:14px;max-width:560px}.contact textarea{border-radius:14px;min-height:120px}
footer{background:#24494d;color:#d9e6e3;padding:40px 0;font-size:.9rem}
@media(max-width:780px){nav ul{display:none}.about{grid-template-columns:1fr}.price.feat{transform:none}.hero{padding:70px 0 120px}section{padding:56px 0}}

.flogo{display:block;background:#fff;border-radius:14px;padding:10px 16px;width:220px;max-width:70%;margin-bottom:16px}
.about-logo{aspect-ratio:auto;background:#fff;border:1px solid #e6dcc8;border-radius:20px;padding:30px;display:flex;flex-direction:column;align-items:center;gap:14px}.about-logo img{width:100%;max-width:420px;height:auto}
.badge{background:var(--navy)}.price.feat{border-color:var(--teal)}.num{background:#f3e6cf;color:var(--navy)}
@media(max-width:780px){.logo{font-size:1rem}.logo img{width:36px;height:36px}}
/* nav + quiz UX */
.nav-toggle{display:none;background:none;border:1px solid #cfdfdf;border-radius:8px;padding:9px 8px;cursor:pointer}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--navy);margin:4px 0}
@media(min-width:801px){nav ul{gap:16px;flex-wrap:nowrap}nav ul a{font-size:.93rem;white-space:nowrap}}
@media(max-width:800px){nav{flex-wrap:wrap;position:relative}.nav-toggle{display:block}
nav ul,nav ul.open{display:none}nav ul.open{display:flex;flex-direction:column;gap:0;width:100%;background:#fff;border-top:1px solid #e4eeee;margin-top:10px}
nav ul.open li a{display:block;padding:12px 4px;border-bottom:1px solid #eef4f4}}
@media(max-width:700px){.grid{grid-template-columns:1fr!important}.price.feat{transform:none}}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.q-options{border:0;padding:0;margin:12px 0}.q-opt{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid #dcebed;border-radius:10px;margin:8px 0;cursor:pointer;background:#fff}
.q-opt input{margin-top:4px}.q-opt.right{border-color:#2e7d4f;background:#eaf6ee}.q-opt.wrong{border-color:#b3412f;background:#fbecea}
.q-feedback{font-weight:600;min-height:1.2em}.q-feedback.ok{color:#2e7d4f}.q-feedback.no{color:#b3412f}
.login-notice{max-width:520px;margin:0 auto 20px;background:#fff6e5;border:1px solid var(--gold);border-radius:12px;padding:14px 18px;color:var(--ink)}
