:root{--ground:#f7f4ed;--ink:#241E2B;--mute:#6B6472;--purple:#961ce0;--deep:#16111C;--lilac:#C77BF5;--rule:#E3DDD2;--faded:#8C8592}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ground);color:var(--ink);font-family:Montserrat,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased;padding-bottom:env(safe-area-inset-bottom,0px)}
a{color:var(--ink);text-underline-offset:6px}
a:hover{color:var(--purple)}
:focus-visible{outline:3px solid var(--purple);outline-offset:4px;border-radius:4px}
.wrap{max-width:1280px;margin:0 auto;padding-left:max(5vw,20px);padding-right:max(5vw,20px)}
header.top{padding-top:calc(28px + env(safe-area-inset-top,0px));display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.brand{font-weight:800;font-size:18px;text-decoration:none}
nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 28px;font-size:15px;font-weight:600}
nav a{text-decoration:none}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 30px;border-radius:999px;background:var(--purple);color:#fff;text-decoration:none;font-weight:700;font-size:16px;border:0;cursor:pointer;font-family:inherit}
.pill:hover{color:#fff;background:#7d14bd}
.pill:disabled{opacity:.6;cursor:default}
.ghost{display:inline-flex;align-items:center;min-height:46px;padding:0 22px;border-radius:999px;border:2px solid var(--ink);background:transparent;font-family:inherit;font-weight:700;font-size:15px;color:var(--ink);cursor:pointer;text-decoration:none}
.ghost:hover{border-color:var(--purple);color:var(--purple)}
.pill.light{background:var(--ground);color:var(--deep)}
.pill.light:hover{background:#fff;color:var(--deep)}
.textlink{font-weight:700;font-size:16px}
h2{margin:0;font-size:clamp(38px,5vw,72px);font-weight:800;letter-spacing:-.03em;line-height:1}
.field{display:flex;flex-direction:column;gap:8px;min-width:0}
.field.full{grid-column:1/-1}
label,legend{font-size:15px;font-weight:700}
.hint{font-size:14px;color:var(--mute);font-weight:500}
input,select,textarea{font-family:inherit;font-size:17px;color:var(--ink);background:transparent;border:0;border-bottom:2px solid #CFC7BA;padding:10px 2px;border-radius:0;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-bottom-color:var(--purple)}
textarea{min-height:110px;resize:vertical}
fieldset{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:12px;min-width:0}
.choice{display:flex;align-items:flex-start;gap:12px;font-size:16px;font-weight:500;line-height:1.45}
.choice input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--purple);flex:0 0 auto}
.hidden{position:absolute;left:-9999px}
.error{color:#b3261e;font-weight:600}
footer.site{border-top:1px solid var(--rule)}
footer.site .wrap{padding-top:32px;padding-bottom:48px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:14px;color:var(--mute)}
footer.site strong{color:var(--ink)}
.band{background:var(--deep);color:var(--ground);padding:88px 0 96px}
.band a{color:var(--ground)}
.band .row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:24px 56px}
.band .n26{font-size:clamp(120px,16vw,240px);font-weight:900;line-height:.8;letter-spacing:-.05em;color:var(--lilac)}
.band p{margin:0;font-size:clamp(24px,2.8vw,38px);font-weight:800;line-height:1.15}
