/* =========================================================
   WELLSTAR AGENCY — shared styles (v2 light design)
   Used by all sub pages. index.html keeps its own inline copy.
   ========================================================= */
:root{
  --bg:#ffffff; --bg2:#f3f6f9; --sky:#e7f0f8; --sky2:#cfe1f0;
  --ink:#1c2430; --ink2:#4a5566; --grey:#a3adba; --line:#e2e7ee;
  --blue:#2d5f9a; --blue2:#5a8fc4; --navy:#1d3368; --coral:#e58a6e;
  --en:'Jost',system-ui,sans-serif; --jp:'Noto Sans JP','Hiragino Kaku Gothic ProN',sans-serif;
  --gut:clamp(20px,5vw,80px); --max:1360px; --r:28px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:clip;scroll-behavior:smooth}
body{font-family:var(--jp);color:var(--ink);background:var(--bg);line-height:1.9;letter-spacing:.04em;-webkit-font-smoothing:antialiased;font-weight:400}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.phrase{word-break:normal}.phrase>span{display:inline-block}
.nw{white-space:nowrap;display:inline-block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.narrow{max-width:980px;margin:0 auto;padding:0 var(--gut)}
.en{font-family:var(--en)}
.g{color:var(--grey)}
.b{color:var(--blue)}

/* ---------- section titles ---------- */
.st .e{display:block;font-family:var(--en);font-weight:300;font-size:clamp(40px,5vw,76px);line-height:1;letter-spacing:-.01em;color:var(--ink)}
.st .j{display:block;font-size:13px;color:var(--ink2);margin-top:14px;letter-spacing:.12em;font-weight:400}
.h3{font-size:clamp(22px,2.3vw,32px);font-weight:500;line-height:1.6;letter-spacing:.06em}
.lead{font-size:15px;color:var(--ink2);line-height:2.1}
.sec-top{display:flex;justify-content:space-between;align-items:flex-end;gap:32px 40px;flex-wrap:wrap}
.sec-top>.lead{max-width:540px}

/* ---------- links / buttons ---------- */
.more{display:inline-flex;align-items:center;gap:16px;font-family:var(--en);font-size:15px;letter-spacing:.06em;color:var(--ink);padding-bottom:6px;border-bottom:1px solid var(--ink)}
.more i{width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-style:normal;font-size:13px;transition:transform .3s}
.more:hover i{transform:translateX(4px)}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 20px 18px 30px;border-radius:999px;font-size:15px;font-weight:500;transition:background .3s,color .3s,box-shadow .3s;border:0;cursor:pointer;font-family:var(--jp)}
.btn i{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-family:var(--en);transition:transform .3s}
.btn:hover i{transform:translateX(3px)}
.btn.p{background:var(--navy);color:#fff}.btn.p i{background:#fff;color:var(--navy)}
.btn.p:hover{background:var(--blue)}
.btn.s{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.btn.s i{background:var(--bg2)}
.btn.s:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.btns{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- reveal ---------- */
.rv{opacity:0;transform:translateY(30px);transition:opacity 1.1s cubic-bezier(.2,.7,.1,1),transform 1.1s cubic-bezier(.2,.7,.1,1)}
.rv.on{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}.d4{transition-delay:.4s}
.fi{opacity:0;transform:translateY(18px);animation:fi 1.1s cubic-bezier(.2,.7,.1,1) forwards}
.fi.a{animation-delay:.1s}.fi.b{animation-delay:.3s}.fi.c{animation-delay:.5s}
@keyframes fi{to{opacity:1;transform:none}}

/* ---------- header ---------- */
.hd{position:fixed;inset:0 0 auto;z-index:50;transition:background .4s,box-shadow .4s}
.hd .in{height:84px;display:flex;align-items:center;gap:32px}
.hd .logo img{height:32px;width:auto}
.hd nav{margin-left:auto;display:flex;gap:28px;font-size:13.5px;font-weight:500}
.hd nav a{position:relative;padding:4px 0}
.hd nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:right;transition:transform .35s}
.hd nav a:hover::after,.hd nav a.cur::after{transform:scaleX(1);transform-origin:left}
.hd .tel{font-family:var(--en);font-size:15px;letter-spacing:.04em;white-space:nowrap}
.hd .tel small{display:block;font-family:var(--jp);font-size:10px;color:var(--ink2);letter-spacing:.06em;line-height:1.2}
.hd .ct{font-size:13px;font-weight:500;background:var(--navy);color:#fff;padding:12px 22px;border-radius:999px;white-space:nowrap}
.hd.sc{background:rgba(255,255,255,.86);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--line)}
.burger{display:none;margin-left:auto;width:48px;height:48px;border-radius:50%;border:0;background:var(--navy);color:#fff;position:relative;cursor:pointer}
.burger i{position:absolute;left:15px;right:15px;height:1.5px;background:#fff;transition:transform .3s}
.burger i:nth-child(1){top:19px}.burger i:nth-child(2){top:28px}
.menu-open .burger i:nth-child(1){transform:translateY(4.5px) rotate(45deg)}
.menu-open .burger i:nth-child(2){transform:translateY(-4.5px) rotate(-45deg)}
.drawer{position:fixed;inset:0;z-index:40;background:var(--bg2);padding:110px var(--gut) 40px;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .35s;overflow-y:auto}
.drawer a{display:flex;justify-content:space-between;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--line);font-size:17px;font-weight:500}
.drawer a span{font-family:var(--en);font-size:12px;color:var(--grey);letter-spacing:.1em}
.drawer .btn{margin-top:28px;border-bottom:0}
.menu-open .drawer{opacity:1;pointer-events:auto}


/* drawer buttons (mobile menu) */
.drawer a.btn{display:flex;align-items:center;justify-content:space-between;padding:17px 18px 17px 26px;font-size:15px;font-weight:500;border-bottom:0;border-radius:999px;margin-top:28px}
.drawer a.btn+a.btn{margin-top:12px!important}
.drawer a.btn.s{background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.drawer a.btn.s{font-family:var(--en);font-size:17px;letter-spacing:.04em}
.drawer a.btn i{flex:0 0 34px;width:34px;height:34px}
.menu-open .hd{background:var(--bg2);box-shadow:0 1px 0 var(--line)}

/* ---------- page hero (sub pages) ---------- */
.phero{padding-top:84px}
.phero .head{padding:clamp(48px,7vw,96px) 0 clamp(36px,4vw,56px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:24px 64px;align-items:end}
.crumb{font-size:12px;color:var(--ink2);display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}
.crumb a{color:var(--ink2)}.crumb a:hover{color:var(--blue)}
.crumb span+span::before{content:"/";margin-right:10px;color:var(--grey)}
.phero .e{display:block;font-family:var(--en);font-weight:200;font-size:clamp(48px,6.6vw,108px);line-height:1;letter-spacing:-.025em}
.phero h1{font-size:clamp(20px,2vw,28px);font-weight:500;margin-top:22px;letter-spacing:.08em;line-height:1.6}
.phero .copy{font-size:clamp(20px,2vw,28px);font-weight:500;line-height:1.7;letter-spacing:.06em}
.phero .copy+.lead{margin-top:16px}
.phero .ph{border-radius:36px 36px 36px 200px;overflow:hidden;aspect-ratio:21/8;background:var(--bg2)}
.phero .ph img{width:100%;height:100%;object-fit:cover}

/* ---------- sections ---------- */
.sec{padding:clamp(88px,11vw,160px) 0}
.sec.alt{background:var(--bg2)}
.sec.sky{background:var(--sky)}
.sec+.sec.alt,.sec.alt+.sec{}
.mt-l{margin-top:clamp(48px,6vw,80px)}
.mt-m{margin-top:clamp(28px,3.5vw,48px)}

/* statement (two-tone) */
.stmt{font-size:clamp(24px,2.7vw,40px);font-weight:500;line-height:1.75;letter-spacing:.06em}

/* split: image + text */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,100px);align-items:center}
.split.rev>.ph{order:2}
.split .ph{border-radius:var(--r);overflow:hidden;aspect-ratio:4/3.2}
.split .ph.arch{border-radius:220px 220px var(--r) var(--r);aspect-ratio:4/5}
.split .ph img{width:100%;height:100%;object-fit:cover}
.split .tx .lead{margin-top:22px}
.split .tx .more,.split .tx .btns{margin-top:36px}

/* cards grid */
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cards.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cards.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cd{background:var(--bg2);border-radius:24px;padding:30px 28px 32px;transition:background .4s,transform .4s,box-shadow .4s}
.alt .cd,.sky .cd{background:#fff}
.cd:hover{transform:translateY(-6px);box-shadow:0 18px 50px rgba(28,36,48,.09);background:#fff}
.cd .n{font-family:var(--en);font-size:13px;color:var(--blue);letter-spacing:.1em}
.cd .e{display:block;font-family:var(--en);font-size:12px;letter-spacing:.12em;color:var(--blue);text-transform:uppercase}
.cd h3{font-size:19px;font-weight:500;margin-top:10px;line-height:1.6;letter-spacing:.05em}
.cd .big{font-family:var(--en);font-weight:300;font-size:30px;line-height:1.1;margin-top:18px}
.cd p{font-size:14px;color:var(--ink2);margin-top:12px;line-height:1.9}
.cd .img{border-radius:18px;overflow:hidden;aspect-ratio:16/10;margin:-8px -6px 20px}
.cd .img img{width:100%;height:100%;object-fit:cover}
.cd ul{list-style:none;margin-top:14px}
.cd li{font-size:13.5px;color:var(--ink2);padding:8px 0 8px 18px;position:relative;border-top:1px solid var(--line)}
.cd li::before{content:"";position:absolute;left:2px;top:17px;width:6px;height:6px;border-radius:50%;background:var(--blue2)}

/* check list */
.checks{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.checks li{background:#fff;border-radius:18px;padding:18px 22px 18px 56px;position:relative;font-size:15px;line-height:1.8}
.checks li::before{content:"";position:absolute;left:22px;top:22px;width:20px;height:20px;border-radius:50%;background:var(--sky)}
.checks li::after{content:"";position:absolute;left:28px;top:27px;width:8px;height:5px;border-left:1.8px solid var(--blue);border-bottom:1.8px solid var(--blue);transform:rotate(-45deg)}

/* numbers row */
.nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.nums .it{padding:40px 24px 44px;border-left:1px solid rgba(45,95,154,.15)}
.nums .it:first-child{border-left:0;padding-left:0}
.nums .k{font-size:13px;color:var(--ink2);letter-spacing:.1em}
.nums .v{font-family:var(--en);font-weight:200;font-size:clamp(56px,6vw,96px);line-height:1;letter-spacing:-.04em;color:var(--navy);margin-top:12px}
.nums .v small{font-family:var(--jp);font-size:15px;font-weight:500;letter-spacing:.06em;margin-left:6px;color:var(--ink)}
.nums .t{font-size:13.5px;color:var(--ink2);margin-top:14px;line-height:1.9}

/* flow (horizontal) */
.flowctl{display:flex;gap:10px}
.flowctl button{width:52px;height:52px;border-radius:50%;border:1px solid var(--line);background:#fff;font-family:var(--en);font-size:16px;cursor:pointer;transition:background .3s,color .3s}
.flowctl button:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;margin-top:56px;padding:0 var(--gut) 12px calc((100vw - min(100vw,var(--max)))/2 + var(--gut));scrollbar-width:none}
.track::-webkit-scrollbar{display:none}
.stp{flex:0 0 clamp(270px,26vw,360px);scroll-snap-align:start;background:#fff;border-radius:28px;padding:30px 28px 34px;min-height:300px;display:flex;flex-direction:column}
.sec:not(.alt) .stp{background:var(--bg2)}
.stp .n{font-family:var(--en);font-weight:200;font-size:72px;line-height:1;color:var(--blue2);letter-spacing:-.04em}
.stp .e{font-family:var(--en);font-size:12px;letter-spacing:.12em;color:var(--grey);margin-top:auto;padding-top:28px;text-transform:uppercase}
.stp h4{font-size:19px;font-weight:500;margin-top:4px}
.stp p{font-size:13.5px;color:var(--ink2);margin-top:10px;line-height:1.9}

/* notice / fee */
.note-box{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;background:#fff;border-radius:22px;padding:22px 30px}
.sec:not(.alt) .note-box{background:var(--bg2)}
.note-box b{font-size:17px;font-weight:500}
.pill{display:inline-block;font-size:12px;font-weight:500;color:#fff;background:var(--blue);padding:5px 12px;border-radius:999px;white-space:nowrap}
.pill.l{color:var(--blue);background:var(--sky)}
.note-box .t{font-size:13.5px;color:var(--ink2)}

/* voices */
.voice{background:#fff;border-radius:24px;padding:30px 28px;display:flex;flex-direction:column}
.voice .q{font-family:var(--en);font-weight:200;font-size:56px;line-height:.6;color:var(--blue2)}
.voice h3{font-size:18px;font-weight:500;margin-top:18px;line-height:1.6}
.voice p{font-size:14px;color:var(--ink2);margin-top:12px;line-height:1.95}
.voice .who{margin-top:auto;padding-top:20px;font-size:12px;color:var(--grey);letter-spacing:.08em}

/* FAQ */
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:40px 1fr 36px;gap:12px;align-items:center;padding:26px 0;font-size:16px;font-weight:500;line-height:1.7}
.faq summary::-webkit-details-marker{display:none}
.faq summary .q{font-family:var(--en);font-size:22px;font-weight:300;color:var(--blue)}
.faq summary .ic{width:36px;height:36px;border-radius:50%;background:var(--bg2);position:relative;transition:background .3s}
.faq summary .ic::before,.faq summary .ic::after{content:"";position:absolute;left:11px;right:11px;top:17.5px;height:1.5px;background:var(--ink);transition:transform .3s}
.faq summary .ic::after{transform:rotate(90deg)}
.faq details[open] summary .ic{background:var(--navy)}
.faq details[open] summary .ic::before,.faq details[open] summary .ic::after{background:#fff}
.faq details[open] summary .ic::after{transform:rotate(0)}
.faq .a{padding:0 48px 28px 52px;font-size:14.5px;color:var(--ink2);line-height:2}

/* table (company etc.) */
.tbl{border-top:1px solid var(--ink)}
.tbl .r{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line);font-size:15px}
.tbl .r>dt,.tbl .r>.k{color:var(--ink2);font-size:14px}
.tbl dd{line-height:1.9}
.tbl dd small{display:block;color:var(--ink2);font-size:13px}

/* map */
.map{border-radius:var(--r);overflow:hidden;aspect-ratio:16/7;background:var(--bg2)}
.map iframe{width:100%;height:100%;border:0;filter:grayscale(.2)}

/* forms */
.form{background:#fff;border-radius:32px;padding:clamp(28px,4.5vw,64px);box-shadow:0 1px 0 var(--line)}
.alt .form{box-shadow:none}
.fr{display:grid;grid-template-columns:240px 1fr;gap:12px 32px;padding:22px 0;border-bottom:1px solid var(--line);align-items:start}
.fr:first-of-type{padding-top:0}
.fr>label,.fr>.lb{font-size:15px;font-weight:500;padding-top:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.req{font-size:11px;font-weight:500;color:#fff;background:var(--coral);padding:2px 9px;border-radius:999px}
.opt{font-size:11px;font-weight:500;color:var(--ink2);background:var(--bg2);padding:2px 9px;border-radius:999px}
.fi2{display:grid;gap:10px}
.fi2.two{grid-template-columns:1fr 1fr}
.fi2 small{font-size:12px;color:var(--ink2)}
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],select,textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--bg2);border:1px solid transparent;border-radius:14px;padding:14px 16px;transition:border-color .2s,background .2s;appearance:none;-webkit-appearance:none}
select{background-image:linear-gradient(45deg,transparent 50%,var(--ink2) 50%),linear-gradient(135deg,var(--ink2) 50%,transparent 50%);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:44px}
textarea{min-height:180px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--blue2);background:#fff}
.chk{display:flex;flex-wrap:wrap;gap:10px}
.chk label{display:inline-flex;align-items:center;gap:8px;background:var(--bg2);border-radius:999px;padding:10px 18px;font-size:14px;cursor:pointer}
.chk input{accent-color:var(--navy);width:16px;height:16px}
.form .agree{margin-top:28px;font-size:13px;color:var(--ink2);text-align:center}
.form .agree a{color:var(--blue);text-decoration:underline}
.form .submit{margin-top:24px;display:flex;justify-content:center}
.form .submit .btn{min-width:300px}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;visibility:hidden}

/* prose (privacy etc.) */
.prose{font-size:15px;color:var(--ink2);line-height:2.05}
.prose h2{font-size:20px;font-weight:500;color:var(--ink);margin:48px 0 12px;letter-spacing:.05em;padding-left:16px;border-left:3px solid var(--blue2);line-height:1.5}
.prose h3{font-size:16px;font-weight:500;color:var(--ink);margin:28px 0 8px}
.prose p+p{margin-top:1em}
.prose ul,.prose ol{margin:10px 0 10px 1.4em}
.prose li{margin:4px 0}
.prose a{color:var(--blue);text-decoration:underline}

/* related links */
.rel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.rel a{background:var(--bg2);border-radius:22px;padding:24px 26px;display:flex;justify-content:space-between;align-items:center;gap:16px;transition:background .3s,transform .3s}
.rel a:hover{background:#fff;transform:translateY(-4px);box-shadow:0 14px 40px rgba(28,36,48,.08)}
.rel .e{display:block;font-family:var(--en);font-size:11px;letter-spacing:.14em;color:var(--blue);text-transform:uppercase}
.rel b{font-weight:500;font-size:16px}
.rel .go{flex:0 0 36px;height:36px;border-radius:50%;background:#fff;display:grid;place-items:center;font-family:var(--en)}

.rel.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nums.fee{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
.phero .ph img{object-position:center 40%}

/* CTA */
.cta{padding:clamp(80px,10vw,140px) 0}
.cta .box{position:relative;display:grid;grid-template-columns:1.1fr .9fr;border-radius:40px;overflow:hidden;background:linear-gradient(120deg,#dcebf7 0%,#eef5fb 55%,#f7fafd 100%)}
.cta .tx{padding:clamp(36px,5.5vw,88px)}
.cta .e{font-family:var(--en);font-weight:200;font-size:clamp(48px,6vw,96px);line-height:1;letter-spacing:-.02em;color:var(--navy)}
.cta h3{font-size:clamp(22px,2.3vw,32px);font-weight:500;margin-top:24px;line-height:1.6;letter-spacing:.06em}
.cta p{font-size:15px;color:var(--ink2);margin-top:14px;line-height:2}
.cta .btns{margin-top:34px}
.cta .tel{margin-top:30px;display:flex;align-items:baseline;gap:8px 20px;flex-wrap:wrap}
.cta .tel a{font-family:var(--en);font-weight:300;font-size:clamp(30px,3vw,42px);color:var(--navy)}
.cta .tel span{font-size:12.5px;color:var(--ink2)}
.cta .ph{position:relative;min-height:420px}
.cta .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* footer */
.ft{background:var(--bg2);padding:80px 0 36px;font-size:13px;color:var(--ink2)}
.ft .grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.ft .logo{height:32px;width:auto}
.ft .co{margin-top:24px;line-height:2.05}
.ft h5{font-family:var(--en);font-weight:400;font-size:13px;letter-spacing:.14em;color:var(--ink);margin-bottom:14px}
.ft ul{list-style:none;line-height:2.3}
.ft a:hover{color:var(--blue)}
.ft .bt{margin-top:64px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--en);font-size:12px;letter-spacing:.06em}
.sample{position:fixed;left:16px;bottom:16px;z-index:60;background:var(--ink);color:#fff;font-size:12px;font-weight:500;padding:8px 14px;border-radius:999px}
.totop{position:fixed;right:18px;bottom:18px;z-index:45;width:50px;height:50px;border-radius:50%;background:#fff;color:var(--navy);box-shadow:0 8px 28px rgba(28,36,48,.16);display:grid;place-items:center;font-family:var(--en);font-size:18px;opacity:0;pointer-events:none;transition:opacity .3s}
.totop.on{opacity:1;pointer-events:auto}

/* ---------- responsive ---------- */
@media (max-width:1180px){
  .hd nav,.hd .tel,.hd .ct{display:none}
  .burger{display:block}
  .cards.c4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ft .grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .phero .head,.split,.cta .box{grid-template-columns:minmax(0,1fr)}
  .split.rev>.ph{order:0}
  .phero .ph{aspect-ratio:4/3;border-radius:28px 28px 28px 120px}
  .split .ph.arch{max-width:460px;border-radius:180px 180px var(--r) var(--r)}
  .cards,.cards.c2{grid-template-columns:minmax(0,1fr)}
  .checks{grid-template-columns:minmax(0,1fr)}
  .nums{grid-template-columns:1fr 1fr}
  .nums .it{padding:30px 16px 34px}
  .nums .it:nth-child(3){border-left:0;padding-left:0}
  .nums .it:nth-child(n+3){border-top:1px solid rgba(45,95,154,.15)}
  .rel,.rel.c2{grid-template-columns:minmax(0,1fr)}
  .nums.fee{grid-template-columns:minmax(0,1fr)}
  .nums.fee .it+.it{border-left:0;padding-left:0;border-top:1px solid rgba(45,95,154,.15)}
  .cta .ph{min-height:260px;order:-1}
  .tbl .r{grid-template-columns:minmax(0,1fr);gap:4px}
  .fr{grid-template-columns:minmax(0,1fr);gap:8px}
  .fr>label,.fr>.lb{padding-top:0}
  .map{aspect-ratio:4/3}
}
@media (max-width:640px){
  .hd .in{height:72px}
  .hd .logo img{height:26px}
  .phero{padding-top:72px}
  .cards.c4{grid-template-columns:minmax(0,1fr)}
  .fi2.two{grid-template-columns:minmax(0,1fr)}
  .btns .btn{flex:1 1 100%}
  .form .submit .btn{min-width:0;width:100%}
  .faq summary{grid-template-columns:28px 1fr 32px;font-size:15px}
  .faq .a{padding:0 0 24px 40px}
  .ft .grid{grid-template-columns:minmax(0,1fr)}
  .flowctl{display:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .rv,.fi{opacity:1;transform:none}
}
