*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);background:var(--bg);color:var(--ink);line-height:1.6}
a{color:var(--sea)}
.inner{width:min(1040px,calc(100% - 2rem));margin:0 auto}
.bwtop{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}
.bwrow{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:1rem}
.bwlogo{font-weight:800;color:var(--deep);text-decoration:none;letter-spacing:-.03em}
.bwlogo em{font-style:normal;color:var(--sea)}
nav ul{display:flex;gap:1.05rem;list-style:none;margin:0;padding:0}
nav a{color:var(--muted);font-weight:700;text-decoration:none;font-size:.92rem}
nav a:hover,nav a.on{color:var(--deep)}
.cta{background:var(--sea);color:#fff;padding:.6rem 1rem;border-radius:8px;font-weight:700;text-decoration:none;border:0;cursor:pointer;font:inherit}
.cta:hover{text-decoration:none;filter:brightness(1.06)}
.hero{padding:4.4rem 0 3.2rem}
h1{font-size:clamp(1.85rem,3.8vw,2.9rem);letter-spacing:-.045em;margin:0 0 .9rem;max-width:18ch}
.lede{color:var(--muted);max-width:640px}
.ghost{background:#fff;color:var(--deep);border:1px solid var(--line);margin-left:.4rem}
.sec{padding:2.8rem 0}
.sv{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.sc{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.3rem}
.amt{font-weight:800;font-size:1.2rem;color:var(--sea)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
label{display:block;font-weight:700;font-size:.86rem;margin:.55rem 0 .2rem}
input,textarea,select{width:100%;border:1px solid var(--line);border-radius:8px;padding:.65rem;font:inherit}
textarea{min-height:100px}
.foot{background:var(--deep);color:#9ec4d0;padding:2.1rem 0 1.4rem}
.foot a{color:#7fd4e0}
.fl{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.9rem}
.legal{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.3rem;margin-bottom:2rem}
.ov{position:fixed;inset:0;background:rgba(2,48,71,.45);z-index:80}
.md{position:fixed;z-index:81;left:50%;top:50%;transform:translate(-50%,-50%);width:min(440px,calc(100% - 2rem));background:#fff;border-radius:14px;padding:1.3rem}
.x{position:absolute;right:.7rem;top:.5rem;border:0;background:0;font-size:1.3rem;cursor:pointer}
#cb{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--deep);color:#fff;padding:1rem;z-index:70;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center}
@media(max-width:800px){.sv,.split{grid-template-columns:1fr}.bwrow{flex-wrap:wrap}}
