*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:400 1.0625rem/1.55 "Karla","Karla Fallback",system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
.wrap{max-width:560px;margin:0 auto;padding:clamp(1.25rem,5vw,2.5rem) 1.15rem 3rem}
.logo{display:block;margin:0 auto 1.25rem;width:var(--logo-w,120px);height:auto}
h1,h2{font-family:"Fraunces","Fraunces Fallback",Georgia,serif;font-weight:800;line-height:1.08;letter-spacing:-.01em;margin:0 0 .6rem}
h1{font-size:clamp(2rem,1.4rem + 3vw,2.8rem);text-align:center}
h2{font-size:1.5rem}
.accent{font-style:italic;font-weight:500;color:var(--accent)}
.lead{text-align:center;color:var(--muted);margin:0 auto 1.5rem;max-width:34rem}
.points{list-style:none;padding:0;margin:0 0 1.6rem;display:grid;gap:.45rem}
.points li{padding-left:1.6rem;position:relative}
.points li::before{content:"";position:absolute;left:0;top:.55em;width:.7rem;height:.7rem;border-radius:50%;background:var(--accent-fill)}
.form-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:1.4rem 1.15rem 1.5rem;box-shadow:0 18px 40px rgba(0,0,0,.25)}
.form-card+.form-card{margin-top:1.6rem}
.form-card .sub{color:var(--muted);margin:-.2rem 0 1rem;font-size:.98rem}
label,.lbl{display:block;font-weight:500;margin:0 0 .3rem}
.opt{font-weight:400;color:var(--muted);font-size:.9em}
.field{margin:0 0 1rem}
input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;font:inherit;color:var(--input-fg);background:var(--input-bg);border:1.5px solid var(--line);border-radius:12px;padding:.8rem .9rem;min-height:48px;appearance:none;-webkit-appearance:none}
select{background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) 55%,calc(100% - 14px) 55%;background-size:6px 6px;background-repeat:no-repeat;padding-right:2.4rem}
textarea{min-height:110px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:3px solid var(--focus);outline-offset:1px;border-color:transparent}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chips label{margin:0;font-weight:500}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips span{display:inline-block;padding:.6rem .95rem;border:1.5px solid var(--line);border-radius:999px;cursor:pointer;min-height:44px;background:var(--input-bg);color:var(--input-fg)}
.chips input:checked+span{background:var(--accent-fill);color:var(--on-accent);border-color:transparent}
.chips input:focus-visible+span{outline:3px solid var(--focus)}
fieldset{border:0;padding:0;margin:0 0 1rem}
legend{font-weight:500;margin:0 0 .4rem;padding:0}
.check{display:flex;gap:.7rem;align-items:flex-start;font-weight:400;font-size:.95rem;margin:0 0 1rem}
.check input{width:22px;height:22px;flex:0 0 22px;margin:.1rem 0 0;accent-color:var(--check)}
.check.big{background:var(--hi-bg);border-radius:14px;padding:.85rem .9rem;font-size:1rem}
.check.big strong{display:block}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
button[type=submit]{width:100%;font:inherit;font-weight:700;font-size:1.08rem;border:0;border-radius:999px;padding:1rem 1.2rem;min-height:54px;cursor:pointer;background:var(--btn-bg);color:var(--on-accent)}
button[disabled]{opacity:.6;cursor:wait}
.form-error{background:#5c1a12;color:#fff;border-radius:12px;padding:.7rem .9rem;margin:0 0 1rem}
.thanks{text-align:center;padding:1rem .3rem}
.thanks:focus{outline:none}
.thanks .big{font-size:2.4rem;line-height:1}
.privacy{font-size:.88rem;color:var(--muted);margin-top:2rem;border-top:1px solid var(--line);padding-top:1.1rem}
.privacy h2{font-family:inherit;font-size:1rem;font-weight:700;margin:0 0 .4rem}
.privacy p{margin:0 0 .6rem}
.foot{text-align:center;font-size:.9rem;color:var(--muted);margin-top:1.4rem}
a{color:var(--link)}
[hidden]{display:none!important}

.embedded .wrap > a:first-child, .embedded .wrap > .logo{display:none}
.embedded .wrap{padding-top:1.25rem;padding-bottom:1.5rem}
.pro{text-align:center;margin:-.15rem auto .9rem;font-weight:500;font-size:.95rem;letter-spacing:.02em;color:var(--accent)}
