.medical-wizard{position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(188,201,221,.72);border-radius:14px;background:#fffffff0;box-shadow:0 34px 90px #07152f2e;backdrop-filter:blur(18px)}.medical-wizard:before{content:"";position:absolute;inset:0 0 auto;height:142px;background:linear-gradient(135deg,#e9f1ffd1,#ffffffe0 54%,#edf5ffb3);pointer-events:none}.wizard-steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:38px 34px 30px}.wizard-steps:before{content:"";position:absolute;top:19px;left:76px;right:76px;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent)}.wizard-step{position:relative;z-index:1;display:grid;justify-items:center;gap:10px;min-height:62px;border:0;background:transparent;color:var(--muted);font-size:13px;font-weight:780}.wizard-step span{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:999px;background:#fffffff0;color:var(--muted);font-size:14px;font-weight:820;box-shadow:0 8px 18px #07152f0f}.wizard-step.is-active{color:var(--teal-deep)}.wizard-step.is-active span{border-color:var(--teal);background:radial-gradient(circle at 35% 18%,#1c59ad,var(--teal-deep));color:#fff;box-shadow:0 18px 38px #082d6742}.wizard-step.is-done span{border-color:transparent;background:var(--mint);color:var(--teal-deep)}.wizard-body{position:relative;z-index:1;flex:0 0 auto;height:clamp(470px,48svh,560px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border-top:1px solid var(--line);padding:28px 34px;background:#ffffffd1}.wizard-pane{display:grid;align-content:start;gap:20px;min-height:100%}.form-notice{margin-bottom:18px;border:1px solid rgba(227,92,77,.28);border-radius:var(--radius);padding:13px 15px;background:#fff5f2eb;color:#9b2f25;font-size:13px;font-weight:720;line-height:1.35}.form-notice.is-info{border-color:#0b3a822e;background:#edf5ffe0;color:var(--teal-deep)}.pane-heading{display:flex;gap:14px;align-items:flex-start}.pane-heading>svg{flex:0 0 auto;width:40px;height:40px;border-radius:var(--radius);padding:9px;background:var(--mint);color:var(--teal-deep)}.pane-heading h3{margin:0;color:var(--ink-strong);font-size:23px;line-height:1.14}.pane-heading p{margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.45}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field-grid.two{margin-top:2px}.medical-field{display:grid;gap:8px}.medical-field span{color:var(--muted);font-size:12px;font-weight:800}.medical-field input,.medical-field select{width:100%;min-height:52px;border:1px solid var(--line-strong);border-radius:var(--radius);padding:0 14px;background:#ffffffeb;color:var(--ink-strong);font-size:15px;outline:none;box-shadow:inset 0 1px #ffffffb3;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.medical-field input[aria-invalid=true],.medical-field select[aria-invalid=true],.calendar-trigger.has-error{border-color:#e35c4db8;background:#fffaf8f5}.medical-field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--teal-deep) 50%),linear-gradient(135deg,var(--teal-deep) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}.medical-field input:focus,.medical-field select:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 4px #0b3a821a}.medical-field input[aria-invalid=true]:focus,.medical-field select[aria-invalid=true]:focus,.calendar-trigger.has-error:focus-visible{border-color:#e35c4ddb;box-shadow:0 0 0 4px #e35c4d1f}.field-error{display:block;color:#a33a2f;font-size:12px;font-weight:720;line-height:1.32}.calendar-field{position:relative;display:grid;gap:8px}.calendar-field:has(.calendar-popover){z-index:30}.calendar-field.is-guided{z-index:31}.calendar-field-label{color:var(--muted);font-size:12px;font-weight:800}.calendar-field-hint{position:absolute;z-index:2;right:8px;top:-10px;max-width:min(276px,calc(100vw - 48px));border-radius:999px;padding:9px 13px;background:linear-gradient(145deg,#0d54c4,var(--teal-deep));color:#fff;font-size:12px;font-weight:820;line-height:1.25;box-shadow:0 16px 34px #0b3a8238;transform:translateY(-100%);animation:calendarHintIn .18s ease both}.calendar-field-hint:after{content:"";position:absolute;right:22px;bottom:-5px;width:10px;height:10px;background:var(--teal-deep);transform:rotate(45deg)}.calendar-trigger{display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:12px;align-items:center;width:100%;min-height:52px;border:1px solid var(--line-strong);border-radius:var(--radius);padding:0 14px;background:#ffffffeb;color:var(--ink-strong);font-size:15px;text-align:left;outline:none;box-shadow:inset 0 1px #ffffffb3;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.calendar-trigger:hover,.calendar-trigger.is-open{border-color:var(--teal);background:#fff}.calendar-field.is-guided .calendar-trigger{border-color:#0d54c4;background:#fff;box-shadow:0 0 0 4px #0d54c41f;animation:calendarGuidePulse 1.15s ease-in-out infinite}.calendar-trigger.has-error,.calendar-trigger.has-error:hover,.calendar-trigger.has-error.is-open{border-color:#e35c4db8;background:#fffaf8f5}.calendar-trigger:focus-visible{border-color:var(--teal);background:#fff;box-shadow:0 0 0 4px #0b3a821a}.calendar-trigger span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-trigger .is-placeholder{color:#8391a8}.calendar-trigger svg,.calendar-nav svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.calendar-trigger svg{width:20px;height:20px;color:var(--teal-deep);stroke-width:2.1}.calendar-popover{position:absolute;z-index:40;top:calc(100% + 10px);left:0;width:min(318px,calc(100vw - 48px));border:1px solid rgba(188,201,221,.86);border-radius:16px;padding:14px;background:linear-gradient(145deg,#fffffffa,#f6fafff5);box-shadow:0 28px 70px #07152f2e;backdrop-filter:blur(18px)}.calendar-popover.is-floating{position:fixed;inset:auto;z-index:10000;overflow:auto;overscroll-behavior:contain}@keyframes calendarHintIn{0%{opacity:0;transform:translateY(calc(-100% + 6px))}to{opacity:1;transform:translateY(-100%)}}@keyframes calendarGuidePulse{0%,to{box-shadow:0 0 0 4px #0d54c41a}50%{box-shadow:0 0 0 7px #0d54c42e}}@keyframes calendarMobileHintIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.calendar-field-hint,.calendar-field.is-guided .calendar-trigger{animation:none}}.calendar-head{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:10px;align-items:center;margin-bottom:12px}.calendar-current{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(74px,.65fr);gap:8px}.calendar-current select{min-width:0;height:36px;border:1px solid rgba(211,223,241,.96);border-radius:10px;padding:0 24px 0 10px;appearance:none;background:linear-gradient(45deg,transparent 50%,var(--teal-deep) 50%),linear-gradient(135deg,var(--teal-deep) 50%,transparent 50%),#ffffffd1;background-position:calc(100% - 13px) 50%,calc(100% - 8px) 50%,0 0;background-size:5px 5px,5px 5px,100% 100%;background-repeat:no-repeat;color:var(--ink-strong);font-size:13px;font-weight:820;outline:none}.calendar-current select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0b3a821a}.calendar-nav{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(211,223,241,.96);border-radius:10px;background:#ffffffd1;color:var(--teal-deep);transition:border-color .16s ease,transform .16s ease,background .16s ease}.calendar-nav:hover{transform:translateY(-1px);border-color:#0b3a8257;background:#fff}.calendar-nav svg{width:18px;height:18px;stroke-width:2.2}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekdays{margin-bottom:6px}.calendar-weekdays span{display:grid;place-items:center;min-height:24px;color:#8391a8;font-size:11px;font-weight:820;text-transform:uppercase}.calendar-days{gap:4px}.calendar-day{display:grid;place-items:center;aspect-ratio:1;min-width:0;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink-strong);font-size:13px;font-weight:780;transition:transform .12s ease,border-color .12s ease,background .12s ease,color .12s ease}.calendar-day:hover:not(:disabled){transform:translateY(-1px);border-color:#0b3a8247;background:#edf5ffeb}.calendar-day.is-outside{color:#a8b4c6}.calendar-day.is-today:not(.is-selected){border-color:#0b3a824d;color:var(--teal-deep)}.calendar-day.is-selected{border-color:var(--teal-deep);background:radial-gradient(circle at 35% 18%,#1c59ad,var(--teal-deep));color:#fff;box-shadow:0 12px 26px #082d6742}.calendar-day:disabled{cursor:not-allowed;color:#c1cad8;opacity:.55}.inline-summary{position:relative;z-index:1;display:flex;justify-content:space-between;gap:16px;border:1px solid rgba(215,232,229,.78);border-radius:var(--radius);padding:16px 17px;background:linear-gradient(135deg,#f7fcfbf5,#eff8f6d6);color:var(--muted);font-size:14px}.inline-summary strong{color:var(--ink-strong)}.coverage-preview{display:grid;gap:14px}.coverage-preview h4{margin:6px 0 0;color:var(--ink-strong);font-size:22px;line-height:1.1}.coverage-options,.payment-methods{display:grid;gap:14px}.coverage-options{grid-template-columns:repeat(2,minmax(0,1fr))}.coverage-options.is-single{grid-template-columns:minmax(0,1fr)}.coverage-option,.payment-method{position:relative;display:grid;gap:10px;width:100%;border:1px solid var(--line);border-radius:var(--radius);padding:20px 50px 20px 18px;background:#ffffffd6;color:var(--ink);text-align:left;box-shadow:0 12px 30px #0f4e4b0b;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}.coverage-option:hover,.payment-method:hover{transform:translateY(-1px);border-color:#0b3a826b;box-shadow:0 18px 42px #07152f17}.coverage-option.is-fixed{cursor:default}.coverage-option.is-fixed:hover{transform:none}.coverage-option.is-selected,.payment-method.is-selected{border-color:var(--teal);background:linear-gradient(135deg,#eff8f6f5,#fffffff5)}.coverage-option strong,.payment-method strong{color:var(--ink-strong);font-size:16px;line-height:1.25}.coverage-option small,.payment-method span{color:var(--muted);font-size:13px;line-height:1.45}.coverage-option em{position:absolute;right:16px;bottom:16px;color:var(--teal-deep);font-size:18px;font-style:normal;font-weight:860}.coverage-check{position:absolute;right:16px;top:18px;display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--line-strong);border-radius:999px;color:#fff;background:#fff}.coverage-option.is-selected .coverage-check{border-color:var(--teal);background:var(--teal)}.coverage-check svg{width:16px;height:16px}.traveler-list{display:grid;gap:14px;padding-right:4px}.traveler-row{border:1px solid var(--line);border-radius:var(--radius);padding:17px;background:#ffffffa8}.traveler-row-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.traveler-row-head strong{color:var(--ink-strong);font-size:15px}.icon-action,.ghost-action{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-strong);border-radius:var(--radius);background:#fff;color:var(--teal-deep);transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.icon-action:hover,.ghost-action:hover{transform:translateY(-1px);border-color:var(--teal);box-shadow:0 12px 28px #07152f14}.icon-action{width:36px;height:36px}.icon-action svg{width:18px;height:18px}.ghost-action{gap:8px;min-height:46px;padding:0 16px;font-size:14px;font-weight:800}.check-line{display:flex;align-items:flex-start;gap:11px;color:var(--ink);font-size:14px;line-height:1.35}.check-line a{color:var(--teal-deep);font-weight:820;text-decoration:none}.check-line a:hover{text-decoration:underline}.check-line input{width:18px;height:18px;margin-top:0;accent-color:var(--teal)}.success-note{display:flex;gap:10px;align-items:flex-start;border:1px solid rgba(14,111,104,.22);border-radius:var(--radius);padding:14px;background:var(--mint);color:var(--teal-deep);font-size:14px;line-height:1.4}.review-card{display:grid;gap:16px;border:1px solid rgba(188,201,221,.72);border-radius:var(--radius);padding:18px;background:linear-gradient(135deg,#f7fafff5,#ffffffeb);box-shadow:0 16px 36px #07152f0f}.review-head{display:flex;align-items:start;justify-content:space-between;gap:16px}.review-head strong{display:block;color:var(--ink-strong);font-size:17px}.review-head span{color:var(--muted);font-size:13px;line-height:1.35}.review-head button{flex:0 0 auto;min-height:34px;border:1px solid rgba(188,201,221,.76);border-radius:999px;padding:0 13px;background:#ffffffc2;color:var(--teal-deep);font-size:12px;font-weight:820}.review-head button:hover{border-color:var(--teal);background:#fff}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0}.review-grid div{min-width:0}.review-grid dt{margin-bottom:4px;color:var(--muted);font-size:11px;font-weight:820;text-transform:uppercase}.review-grid dd{min-width:0;margin:0;overflow-wrap:anywhere;color:var(--ink-strong);font-size:14px;font-weight:780;line-height:1.35}.review-travelers{display:grid;gap:10px;border-top:1px solid rgba(188,201,221,.58);padding-top:14px}.review-travelers>strong{color:var(--ink-strong);font-size:14px;line-height:1.2}.review-travelers>div{display:grid;gap:8px}.review-travelers article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;border:1px solid rgba(213,223,238,.76);border-radius:14px;padding:10px 12px;background:#ffffffb8}.review-travelers article>span{display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:#0d54c41a;color:var(--teal-deep);font-size:12px;font-weight:860}.review-travelers b{display:block;min-width:0;overflow-wrap:anywhere;color:var(--ink-strong);font-size:14px;line-height:1.25}.review-travelers small{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:3px;min-width:0;overflow-wrap:anywhere;color:var(--muted);font-size:12px;line-height:1.35}.review-traveler-details span{min-width:0}.review-traveler-details span+span:before{content:"";display:inline-block;width:3px;height:3px;margin-right:10px;border-radius:999px;background:#57637a8a;vertical-align:middle}.success-note svg,.security-note svg{flex:0 0 auto;width:18px;height:18px}.wizard-footer{position:relative;z-index:1;flex:0 0 auto;display:grid;grid-template-columns:180px minmax(0,1fr) minmax(260px,.9fr);gap:16px 18px;border-top:1px solid var(--line);padding:24px 34px 26px;background:#ffffffeb}.wizard-total{align-self:center}.wizard-total span{display:block;color:var(--muted);font-size:12px;line-height:1.2}.wizard-total strong{display:block;margin-top:4px;color:var(--ink-strong);font-size:34px;line-height:1}.mini-recap{display:flex;flex-wrap:wrap;gap:9px;align-self:center;color:var(--teal-deep);font-size:13px;font-weight:760}.mini-recap.is-empty{color:#7d8aa0;font-weight:650}.mini-recap span{display:inline-flex;align-items:center;gap:9px}.mini-recap span+span:before{content:"";width:4px;height:4px;border-radius:999px;background:var(--line-strong)}.wizard-actions{display:grid;grid-template-columns:minmax(86px,.52fr) minmax(160px,1fr);gap:10px;align-self:center}.primary-action,.secondary-action{min-height:52px;border-radius:var(--radius);padding:0 18px;font-size:15px;font-weight:840;white-space:nowrap;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.primary-action{border:1px solid var(--coral);background:linear-gradient(145deg,#0d428f,var(--teal-deep));color:#fff;box-shadow:0 20px 42px #082d673d}.primary-action:hover{transform:translateY(-1px);box-shadow:0 24px 52px #082d674d}.primary-action:disabled{transform:none;border-color:#d7e1df;background:#d7e1df;color:#7d8f8f;box-shadow:none}.secondary-action{border:1px solid var(--line-strong);background:#fff;color:var(--teal-deep)}.secondary-action:hover:not(:disabled){transform:translateY(-1px);border-color:var(--teal)}.secondary-action:disabled{color:#a5b5b3;background:#f5f9f8}.security-note{grid-column:1 / -1;display:flex;gap:10px;align-items:center;min-height:45px;border:1px solid rgba(215,232,229,.78);border-radius:var(--radius);padding:12px 14px;background:linear-gradient(135deg,#f7fcfbf5,#eff8f6b8);color:var(--teal-deep);font-size:13px;line-height:1.35}@media(max-width:760px){.calendar-field-hint{right:0;left:0;top:auto;bottom:calc(100% + 8px);max-width:none;width:max-content;transform:none;animation-name:calendarMobileHintIn}.calendar-field-hint:after{right:22px}.medical-wizard{border-radius:16px}.wizard-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:20px 12px 18px}.wizard-steps:before{display:none}.wizard-step{display:grid;justify-items:center;align-content:start;gap:10px;min-width:0;min-height:64px;color:#59657a;font-size:clamp(11px,3.3vw,13px);line-height:1.2;text-align:center}.wizard-step:after{content:"";position:absolute;z-index:0;top:15px;left:calc(50% + 18px);right:calc(-50% + 18px);height:2px;border-radius:999px;background:var(--line)}.wizard-step:last-child:after{display:none}.wizard-step.is-active:after,.wizard-step.is-done:after{background:linear-gradient(90deg,#0d6fd1,#0d54c4)}.wizard-step span{position:relative;z-index:1;width:32px;height:32px;font-size:15px;box-shadow:0 10px 24px #07152f14}.wizard-body{height:auto;min-height:520px;overflow:visible;scrollbar-gutter:auto;padding:22px 18px 12px}.field-grid,.coverage-options,.review-grid{grid-template-columns:1fr}.review-head{display:grid}.review-head button{justify-self:start}.review-traveler-details{display:grid;gap:3px}.review-traveler-details span+span:before{display:none}.medical-field input,.medical-field select,.calendar-trigger{min-height:54px;font-size:16px}.medical-field,.calendar-field,.traveler-row{scroll-margin-bottom:190px}.calendar-popover{width:100%;max-height:min(480px,72svh);overflow:auto;overscroll-behavior:contain}.calendar-day{min-height:38px;font-size:14px}.inline-summary{display:grid}.wizard-footer{position:sticky;z-index:10;bottom:0;grid-template-columns:1fr;gap:12px;margin:0;padding:16px 18px calc(16px + env(safe-area-inset-bottom));background:#fffffff5;backdrop-filter:blur(18px)}.wizard-total strong{font-size:28px}.mini-recap{font-size:12px}.wizard-actions{grid-template-columns:1fr}.primary-action,.secondary-action{min-height:56px;font-size:16px}.traveler-list{padding-right:0}.traveler-row{padding:15px}}@media(max-width:420px){.wizard-steps{padding-inline:10px}.wizard-step{font-size:11px}.wizard-body{min-height:500px;padding-inline:14px}.wizard-footer{padding-inline:14px}.wizard-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.mini-recap.is-empty{display:none}}
