.booking-shell{background:var(--red);padding:38px 0 75px}.booking-layout{display:grid;grid-template-columns:1fr 1.02fr;gap:70px;align-items:start}.booking-intro{color:var(--yellow);padding-top:4px}.back-link{display:inline-block;color:white;font-size:.875rem;margin-bottom:44px;text-decoration:underline;text-underline-offset:5px}.booking-intro>.eyebrow{color:var(--yellow);font-size:.8rem}.booking-intro h1{font-size:clamp(3rem,4.5vw,4.6rem);letter-spacing:-.05em;line-height:1.13;margin:23px 0}.booking-intro h1 span{color:#fff}.booking-intro>p{color:white;font-size:1.1rem;max-width:470px}.session-tags{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0 46px}.session-tags span{border:1px solid #ff8da9;border-radius:30px;padding:6px 13px;font-size:.875rem;color:#fff}.session-outline{border-top:1px solid #ed5c84;padding-top:30px}.session-outline h2{font-size:1.55rem;letter-spacing:-.03em}.session-outline ol{list-style:none;padding:0;margin:28px 0 0}.session-outline li{display:flex;gap:20px;margin:0 0 25px}.session-outline li>span{font-size:.875rem;padding-top:2px}.session-outline strong{color:var(--yellow);font-size:1.06rem}.session-outline p{color:#fff;margin:7px 0 0;font-size:.95rem;max-width:350px}.booking-card{background:#fffdf7;border-radius:24px;padding:34px;color:var(--dark);box-shadow:0 15px 45px #97002c20}.card-topline{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:24px}.card-topline>span{font-size:.75rem;letter-spacing:.07em;font-weight:700;color:var(--red)}.card-topline strong{background:var(--yellow);color:var(--red);border-radius:30px;padding:5px 13px;font-size:.85rem}.booking-card h2{font-size:2.6rem;margin-bottom:17px}.booking-card>p{font-size:1rem;margin-bottom:22px}.prototype-note{padding:12px 15px;background:#fff0f4;border:1px solid #f7d0db;border-radius:10px;font-size:.875rem;color:#65535b}.prototype-note strong{display:block;color:var(--red)}.form-steps{display:flex;list-style:none;padding:0;margin:25px 0;gap:25px}.form-steps li{font-size:.875rem;display:flex;gap:9px;align-items:center;color:var(--muted)}.form-steps li span{display:grid;place-items:center;width:28px;height:28px;background:#ffe3e9;border-radius:50%}.form-steps li[aria-current]{color:var(--red);font-weight:700}.form-steps li[aria-current] span{background:var(--red);color:#fff}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:20px}label,legend{font-size:.875rem;font-weight:650}label>span{color:var(--red)}label small{font-size:.8rem;font-weight:400;color:var(--muted);margin-left:5px}input,select,textarea{font:inherit;font-size:1rem;border:1px solid #d9c6cc;background:white;color:var(--dark);border-radius:8px;width:100%;padding:12px;min-height:48px;margin-top:7px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--red);outline-offset:2px}input::placeholder,textarea::placeholder{color:#806b73}.field-hint{font-size:.875rem;line-height:1.5;margin:6px 0 0}fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}.topic-options{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.topic-options label{cursor:pointer;position:relative;display:block}.topic-options input{position:absolute;opacity:0;width:1px;height:1px;min-height:0}.topic-options span{display:block;padding:8px 12px;border:1px solid #dfcbd1;border-radius:24px;color:var(--muted);font-weight:500;font-size:.875rem;background:white}.topic-options input:checked+span{background:#ffe3e9;border-color:var(--red);color:var(--red)}.topic-options input:focus-visible+span{outline:2px solid var(--red);outline-offset:2px}.booking-next{width:100%;min-height:52px}.form-small{text-align:center;font-size:.8rem;margin:13px 0 0}.booking-faq{display:grid;grid-template-columns:1fr 1fr;gap:70px}.booking-faq h2{margin-top:18px;font-size:2.5rem}#review h3{font-size:1.4rem}#review-details{margin:20px 0}#review-details>div{border-bottom:1px solid var(--line);padding:13px 0}#review-details dt{font-size:.8rem;color:var(--muted)}#review-details dd{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.95rem}.review-notice{background:#ffe3e9;border-radius:10px;padding:18px;margin:24px 0}.review-notice p{font-size:.9rem;margin:8px 0 0}.booking-next:disabled{cursor:not-allowed;background:#eed9de;color:#65444e;border-color:#eed9de;transform:none}.edit-details{display:block;margin:23px auto 0}.booking-card [hidden]{display:none}@media(max-width:1100px){.booking-layout{gap:35px}.booking-card{padding:27px}.booking-intro h1{font-size:3.5rem}.field-grid{grid-template-columns:1fr;gap:0}.card-topline>span{font-size:.7rem}}@media(max-width:800px){.booking-layout{grid-template-columns:1fr;gap:35px;max-width:620px}.booking-intro h1{font-size:3.5rem}.back-link{margin-bottom:25px}.session-outline{display:none}.session-tags{margin-bottom:0}.booking-faq{grid-template-columns:1fr;gap:16px}.booking-shell{padding:25px 0 45px}.field-grid{grid-template-columns:1fr 1fr;gap:14px}}@media(max-width:480px){.booking-intro h1{font-size:2.95rem}.booking-card{padding:24px 20px;border-radius:20px}.booking-card h2{font-size:2.2rem}.field-grid{grid-template-columns:1fr;gap:0}.session-tags{gap:7px}.session-tags span{font-size:.8rem;padding:5px 10px}}
