:root{--blue:#0878fa;--navy:#061925;--ink:#07131b;--muted:#697780;--ice:#eef5fb;--gold:#e1ad43;--line:#dce6ec}*{box-sizing:border-box}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:#f4f8fb}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.booking-header{height:78px;padding:0 6vw;display:flex;align-items:center;background:var(--navy);color:#fff}.booking-header img{width:112px;height:48px;object-fit:contain}.booking-header>a:last-child{margin-left:auto;font-size:11px;font-weight:700;color:#a9bac3}.booking-shell{min-height:calc(100vh - 78px);display:grid;grid-template-columns:minmax(300px,.72fr) minmax(500px,1.28fr)}.booking-aside{padding:75px 6vw;background:linear-gradient(155deg,#061925,#092b3c);color:#fff;position:relative;overflow:hidden}.booking-aside:after{content:"";position:absolute;width:520px;height:520px;border:1px solid #17465d;border-radius:50%;left:-220px;bottom:-260px;box-shadow:0 0 0 80px rgba(23,70,93,.22),0 0 0 160px rgba(23,70,93,.12)}.eyebrow{display:flex;align-items:center;gap:10px;color:#b5c5cd;text-transform:uppercase;letter-spacing:2px;font-size:9px;font-weight:800}.eyebrow i{width:30px;height:2px;background:var(--blue)}.booking-aside h1{font-size:clamp(44px,5vw,68px);line-height:1.02;letter-spacing:-4px;margin:25px 0}.booking-aside h1 em{color:var(--blue);font-style:normal}.booking-aside>p{color:#9eb0ba;line-height:1.75;font-size:14px;max-width:440px}.step-list{margin-top:55px;display:grid;gap:17px;position:relative;z-index:1}.step-item{display:grid;grid-template-columns:35px 1fr;gap:13px;align-items:center;color:#738b98}.step-item b{width:35px;height:35px;border:1px solid rgba(255,255,255,.14);border-radius:50%;display:grid;place-items:center;font-size:10px}.step-item strong{font-size:11px}.step-item.active{color:#fff}.step-item.active b{background:var(--blue);border-color:var(--blue);box-shadow:0 0 0 5px rgba(8,120,250,.12)}.booking-main{padding:65px 7vw;background:#f6f9fb}.form-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:30px}.form-head small{color:var(--blue);text-transform:uppercase;letter-spacing:1.5px;font-size:9px;font-weight:800}.form-head h2{font-size:34px;letter-spacing:-2px;margin:8px 0 0}.secure-note{color:#80909a;font-size:9px}.quote-form{max-width:760px}.form-section{padding:27px;margin-bottom:16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(9,35,49,.04)}.form-section h3{font-size:15px;margin:0 0 20px}.field{display:block;margin-bottom:18px;color:#66767f;font-size:9px;text-transform:uppercase;letter-spacing:1.1px;font-weight:800}.field:last-child{margin-bottom:0}.field input,.field select,.field textarea{display:block;width:100%;margin-top:8px;padding:13px 14px;border:1px solid #d9e4ea;border-radius:9px;background:#fbfdfe;color:var(--ink);outline:0;text-transform:none;letter-spacing:0;font-size:13px}.field textarea{min-height:88px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(8,120,250,.09)}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.choice{position:relative}.choice input{position:absolute;opacity:0}.choice span{min-height:84px;padding:15px;border:1px solid #dce6eb;border-radius:11px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:.2s}.choice strong{font-size:12px}.choice small{color:#829098;font-size:9px;line-height:1.35}.choice input:checked+span{border-color:var(--blue);background:#edf5ff;box-shadow:0 0 0 2px rgba(8,120,250,.08)}.toggle-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-top:1px solid #e5edf1}.toggle-row:first-of-type{border-top:0}.toggle-copy strong,.toggle-copy small{display:block}.toggle-copy strong{font-size:12px}.toggle-copy small{color:#87959d;font-size:9px;margin-top:4px}.toggle{position:relative;width:42px;height:24px}.toggle input{opacity:0}.toggle i{position:absolute;inset:0;border-radius:20px;background:#d3dde2;cursor:pointer}.toggle i:after{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 7px #0002;transition:.2s}.toggle input:checked+i{background:var(--blue)}.toggle input:checked+i:after{transform:translateX(18px)}.suggestion-wrap{position:relative}.booking-suggestions{position:absolute;z-index:4;left:0;right:0;top:100%;padding:6px;background:#fff;border:1px solid #dce6eb;border-radius:10px;box-shadow:0 18px 40px #0619252e}.booking-suggestions button{width:100%;border:0;background:#fff;padding:11px;text-align:left;border-radius:7px;font-size:11px;cursor:pointer}.booking-suggestions button:hover{background:#edf5ff}.booking-suggestions small{display:block;color:#85929a;margin-top:3px}.estimate{position:sticky;bottom:15px;display:flex;align-items:center;gap:22px;padding:18px 20px;border-radius:15px;background:var(--navy);color:#fff;box-shadow:0 20px 50px rgba(5,25,37,.22)}.estimate small,.estimate strong{display:block}.estimate small{font-size:8px;color:#7390a0;text-transform:uppercase;letter-spacing:1.2px}.estimate strong{font-size:25px;letter-spacing:-1px;margin-top:3px}.estimate p{margin:0;color:#8097a4;font-size:9px;line-height:1.5;max-width:230px}.submit-button{margin-left:auto;border:0;border-radius:9px;background:var(--blue);color:#fff;padding:14px 18px;font-weight:800;font-size:11px;cursor:pointer}.submit-button:hover{background:#006eea}.form-error{color:#c83f39;font-size:10px;margin:10px 0}.confirmation{padding:36px;border-radius:20px;background:#fff;border:1px solid var(--line);max-width:760px}.confirmation-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#e6f8ef;color:#23945f;font-size:22px}.confirmation h2{font-size:36px;letter-spacing:-2px;margin:22px 0 10px}.confirmation p{color:#6c7c85;line-height:1.7;font-size:13px}.reference{padding:14px;border-radius:10px;background:#edf5ff;color:var(--blue);font-size:11px;font-weight:800;margin:22px 0}.gold .booking-aside h1 em{color:#e8b94f}.gold .eyebrow i{background:var(--gold)}.gold .step-item.active b,.gold .submit-button{background:linear-gradient(145deg,#efc663,#b77b16);border-color:#d09a31}.pass-gem{width:62px;height:62px;margin:34px 0 22px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#fff0ab,#d49727 55%,#754706);font-size:28px;color:#fff8dc;text-shadow:0 0 12px #fff;box-shadow:0 0 35px rgba(224,169,50,.28),inset 2px 2px 0 #fff8;position:relative;z-index:1}.benefits{list-style:none;padding:0;margin:30px 0;display:grid;gap:13px}.benefits li{font-size:11px;color:#c1cdd3}.benefits li:before{content:"✓";color:#efbd54;margin-right:10px}@media(max-width:900px){.booking-shell{grid-template-columns:1fr}.booking-aside{padding:55px 7vw}.step-list{grid-template-columns:repeat(3,1fr);margin-top:38px}.booking-main{padding:50px 7vw}}@media(max-width:570px){.booking-header{padding:0 20px}.booking-shell{display:block}.booking-aside{padding:46px 20px}.booking-aside h1{font-size:44px}.step-list{display:none}.booking-main{padding:38px 20px}.form-head{display:block}.secure-note{margin-top:10px}.form-section{padding:20px}.two-cols,.choice-grid{grid-template-columns:1fr}.choice span{min-height:68px}.estimate{position:static;flex-wrap:wrap}.estimate p{max-width:none}.submit-button{width:100%;margin:0}.booking-header>a:last-child{font-size:0}.booking-header>a:last-child:after{content:"←";font-size:18px}}
