/* THE FOUNDERS — booking page */
.booking-wrap{display:grid;grid-template-columns:1fr 380px;gap:24px;align-items:start;padding-block:8px 80px}
.booking-form{display:flex;flex-direction:column;gap:18px;min-width:0}
.b-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(18px,3vw,28px)}
.b-card h2{font-size:21px;display:flex;align-items:center;gap:12px;margin-bottom:18px}
.b-num{width:32px;height:32px;border-radius:50%;background:var(--navy);color:#fff;font-size:15px;display:inline-flex;align-items:center;justify-content:center;flex:none}
.b-err{font-size:14px;color:#B3261E;margin-top:10px}
.b-err:empty{display:none}

.plan-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.pick{position:relative;cursor:pointer}
.pick input{position:absolute;opacity:0;pointer-events:none}
.pick-in{display:flex;flex-direction:column;gap:4px;height:100%;padding:16px;border-radius:14px;border:1.5px solid var(--field-line);transition:border-color .2s,background .2s,box-shadow .2s}
.pick-in svg{width:26px;height:26px;color:var(--link);margin-bottom:6px}
.pick-in b{font-family:var(--font-display);font-weight:600;font-size:16.5px}
.pick-in small{font-size:13px;color:var(--muted)}
.pick:hover .pick-in{border-color:var(--blue)}
.pick input:checked + .pick-in{border-color:var(--blue);background:rgba(48,93,141,.07);box-shadow:inset 0 0 0 1px var(--blue)}
.pick input:checked + .pick-in svg{color:var(--accent-ink)}
.pick input:focus-visible + .pick-in{outline:3px solid var(--orange);outline-offset:2px}
@media (max-width:760px){.plan-picker{grid-template-columns:1fr 1fr}}

.seg-field{border:0;padding:0;margin:0;min-width:0}
.seg-field legend{margin-bottom:8px;padding:0}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg label{position:relative;cursor:pointer;flex:1 1 0;min-width:96px}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg span{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:50px;padding:8px 10px;border-radius:12px;border:1.5px solid var(--field-line);font-weight:600;font-size:15px;line-height:1.35;transition:all .2s}
.seg span small{font-size:12px;font-weight:500;color:var(--accent-ink)}
.seg input:checked + span{background:var(--navy);border-color:var(--navy);color:#fff}
.seg input:checked + span small{color:#FFB08C}
.seg input:focus-visible + span{outline:3px solid var(--orange);outline-offset:2px}
.note{font-size:13.5px;color:var(--muted);margin-top:4px}
.field.check{flex-direction:row;align-items:center;gap:12px;padding:14px 16px;border:1.5px solid var(--field-line);border-radius:12px;cursor:pointer;font-size:15px}
.field.check input{width:20px;height:20px;min-height:0;padding:0;appearance:auto;-webkit-appearance:checkbox;accent-color:var(--blue);flex:none}

/* summary */
.summary{position:sticky;top:calc(var(--header-h) + 20px);display:flex;flex-direction:column;gap:12px}
.sum-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:14px;box-shadow:0 18px 44px rgba(14,28,51,.08)}
.sum-card h2{font-size:20px}
.sum-empty{font-size:15px;color:var(--muted);background:var(--paper);border-radius:12px;padding:14px}
.sum-rows{margin:0;display:flex;flex-direction:column}
.sum-rows div{display:flex;justify-content:space-between;gap:12px;padding-block:9px;border-bottom:1px solid var(--line);font-size:15px}
.sum-rows dt{color:var(--muted)}
.sum-rows dd{margin:0;font-weight:600;text-align:end;font-variant-numeric:tabular-nums}
.sum-total{display:flex;flex-direction:column;gap:2px;background:var(--navy);color:#fff;border-radius:14px;padding:16px 18px}
.sum-total span{font-size:14px;color:var(--blue-mist)}
.sum-total b{font-family:var(--font-display);font-size:28px;font-weight:700;font-variant-numeric:tabular-nums}
.sum-total small{font-size:13px;color:var(--blue-mist)}
.sum-notes{display:flex;flex-direction:column;gap:6px}
.sum-notes li{font-size:13.5px;color:var(--muted);display:flex;gap:8px}
.sum-notes li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange);flex:none;margin-top:9px}
.sum-notes li.offer-note{color:var(--accent-ink);font-weight:600}
.sum-fine{font-size:12.5px;color:var(--muted);text-align:center}
.summary .form-done{display:none}
.summary .form-done.show{display:flex}
.summary.sent #summary{display:none}

/* mobile summary bar */
.sum-bar{position:fixed;inset-inline:0;bottom:0;z-index:40;display:none;align-items:center;justify-content:space-between;gap:12px;padding:10px var(--gutter-r) calc(10px + env(safe-area-inset-bottom,0px)) var(--gutter);background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-top:1px solid var(--line)}
.sum-bar small{display:block;font-size:12.5px;color:var(--muted);line-height:1.3}
.sum-bar b{font-family:var(--font-display);font-size:20px;font-variant-numeric:tabular-nums}
.sum-bar .btn{min-height:48px}

@media (max-width:980px){
  .booking-wrap{grid-template-columns:1fr}
  .summary{position:static}
  .sum-bar{display:flex}
  .sum-bar.hide{display:none}
  .booking-page{padding-bottom:80px}
  .booking-page .wa-float{display:none}
}
