@font-face{font-family:Poppins;src:url(fonts/poppins-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url(fonts/poppins-latin-500-normal.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url(fonts/poppins-latin-500-italic.woff2) format("woff2");font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:Poppins;src:url(fonts/poppins-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url(fonts/poppins-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Poppins;src:url(fonts/poppins-latin-700-italic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}

:root{--navy:#1F2A5C;--rose:#D3687A;--rose-dark:#B9566A;--soft:#3A4470;--muted:#7D8399;--band:#F2F3F6;--line:#CDD2DE}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Poppins,system-ui,sans-serif;color:var(--navy);background:#fff;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.wrap{max-width:960px;margin:0 auto;padding:0 24px}
section{padding:72px 0}
h1{font-weight:700;font-size:40px;line-height:1.2;margin-bottom:18px}
h2{font-weight:700;font-size:30px;line-height:1.25;margin-bottom:28px;text-align:center}
h3{font-weight:700;font-size:19px;margin:12px 0 6px}
p{font-size:18px;line-height:1.65}
.btn{display:inline-block;background:var(--rose);color:#fff;font:600 17px Poppins,sans-serif;padding:14px 34px;border-radius:999px;text-decoration:none;border:0;cursor:pointer;transition:background .15s}
.btn:hover,.btn:focus-visible{background:var(--rose-dark)}
.btn:focus-visible{outline:3px solid var(--navy);outline-offset:3px}

.hero{text-align:center;padding-top:64px}
.hero .logo{width:270px;margin:0 auto 34px}
.hero .lede{max-width:680px;margin:0 auto 32px;color:var(--soft)}

.how{padding-top:24px}
.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.col{text-align:center;padding:8px}
.col img{width:36px;height:36px;margin:0 auto}
.col p{font-size:16px}
.close{text-align:center;font-style:italic;font-weight:500;font-size:19px;margin-top:40px}

.who{background:var(--band)}
.who .wrap{max-width:760px;text-align:center}

.about{display:flex;gap:44px;align-items:center;max-width:820px;margin:0 auto}
.about .photo{flex:none;width:190px;height:190px;border-radius:50%;object-fit:cover}
.about .name{font-weight:700;font-size:26px}
.about .title{font-weight:600;font-size:17px;color:var(--rose);margin:2px 0 14px}
.about p{font-size:17px}

.vision{background:var(--navy);color:#fff;padding:80px 0}
.vision .wrap{max-width:820px;text-align:center}
.vision .bell{width:58px;margin:0 auto 26px}
.vision p{font-weight:500;font-size:24px;line-height:1.55}
.vision .v{color:var(--rose)}
.vision .think{font-style:italic;font-weight:700;margin-top:16px}

.contact .wrap{max-width:620px}
.contact .intro{text-align:center;margin-bottom:26px}
label{display:block;font-weight:600;font-size:14px;margin:0 0 6px}
input,textarea{width:100%;border:1.5px solid var(--line);border-radius:10px;padding:13px 14px;font:400 16px Poppins,sans-serif;color:var(--navy);margin-bottom:16px;background:#fff}
input:focus,textarea:focus{outline:none;border-color:var(--navy)}
textarea{resize:vertical;min-height:130px}
.form-actions{text-align:center;margin-top:4px}
.hidden{position:absolute;left:-9999px}
.direct{text-align:center;margin-top:30px;font-size:16px}
.direct a{text-decoration:none}
.direct a:hover{text-decoration:underline}

footer{border-top:1px solid #E3E6EC;padding:26px 0;text-align:center;font-size:14px;color:var(--muted)}

.simple{min-height:80vh;display:flex;align-items:center;text-align:center}
.simple .logo{width:220px;margin:0 auto 30px}
.simple p{margin:0 auto 28px;max-width:520px;color:var(--soft)}

@media (max-width:640px){
  section{padding:52px 0}
  h1{font-size:30px}
  h2{font-size:25px}
  p{font-size:17px}
  .hero .logo{width:220px}
  .cols{grid-template-columns:1fr;gap:20px}
  .about{flex-direction:column;text-align:center;gap:24px}
  .vision p{font-size:20px}
}
h1,h2,.lede,.close{text-wrap:balance}
.who-list{list-style:none;text-align:left;max-width:640px;margin:26px auto 0}
.who-list li{position:relative;padding-left:26px;margin-bottom:14px;font-size:17px;line-height:1.6}
.who-list li::before{content:"";position:absolute;left:4px;top:.62em;width:9px;height:9px;border-radius:50%;background:var(--rose)}
.who-list strong{font-weight:600}
.about p+p{margin-top:12px}

.opt{font-weight:400;color:var(--muted)}
.pref{border:0;margin:2px 0 18px;display:flex;flex-wrap:wrap;gap:8px 26px;align-items:center}
.pref legend{font-weight:600;font-size:14px;margin-bottom:8px;width:100%;float:left}
.pref label{display:inline-flex;align-items:center;gap:8px;font-weight:400;font-size:16px;margin:0;cursor:pointer}
.pref input{width:18px;height:18px;margin:0;accent-color:var(--rose)}
.contact .intro{max-width:560px;margin-left:auto;margin-right:auto;text-wrap:balance}
.paren{display:block;font-weight:500}

.prose .wrap{max-width:700px}
.prose p{font-size:17px;line-height:1.7}
.prose p+p{margin-top:16px}
.prose em{font-style:italic;font-weight:500}
.prose strong{font-weight:700}
.expect{padding-top:0}
.guarantee{background:var(--band)}
.guarantee strong{color:var(--rose-dark)}

.how{padding-top:72px}
.why{background:var(--band)}
.expect{padding-top:72px}
.guar-note{text-align:center;font-size:14px;color:var(--muted);margin-top:12px}
@media (max-width:640px){.how,.expect{padding-top:52px}}
