:root{--green:#163d30;--orange:#e87832;--ink:#182b24;--muted:#67726b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;color:var(--ink);font:16px 'DM Sans',sans-serif;background:#fff}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #e87832;outline-offset:4px}.disclaimer{padding:9px 20px;text-align:center;font-size:12px;color:#d7e1db;background:#153b2f}header{height:90px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:800;letter-spacing:1px}.brand small{display:block;font-size:11px;font-weight:400;letter-spacing:1.1px;margin-top:5px}.brandmark{font-size:22px;letter-spacing:-2px;border:1px solid #9ba99f;border-radius:50%;height:49px;width:49px;display:grid;place-content:center;position:relative}.brandmark span{position:absolute;right:0;top:0;font-size:15px;color:var(--orange)}nav{display:flex;gap:30px;font-size:14px}.call{font-size:14px;border:1px solid #d3dbd5;padding:13px 18px;border-radius:5px;font-weight:700}.hero{position:relative;display:grid;grid-template-columns:1fr 470px;gap:60px;padding:48px 6% 48px;min-height:810px;background:#1b3328;isolation:isolate}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,30,21,.8),rgba(10,30,21,.08) 70%),linear-gradient(0deg,rgba(10,30,21,.65),transparent 65%);z-index:-1}.hero{background-size:cover;background-position:center}.hero-copy{color:#fff;position:relative;padding-top:42px;display:flex;align-items:flex-start;flex-direction:column}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;display:block}.hero .eyebrow{color:#e5c79c;display:flex;align-items:center;gap:10px}.eyebrow>span{height:6px;width:6px;background:var(--orange);border-radius:50%}h1,h2,h3{font-family:'Manrope',sans-serif}h1{font-size:clamp(38px,4.2vw,65px);line-height:1.12;letter-spacing:-2.5px;margin:24px 0}h1>span{display:block;font-size:clamp(23px,2.5vw,38px);line-height:1.3;letter-spacing:-1px;font-weight:400;color:#f0d4ae;margin-top:22px}.hero-copy>p{line-height:1.8;max-width:435px;color:#e0e5dc;font-size:16px}.hero-tags{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}.hero-tags span{font-size:12px;border:1px solid #ffffff60;border-radius:30px;padding:9px 13px}.image-caption{font-size:11px;letter-spacing:2px;margin-top:auto;padding-top:80px}.image-caption span{display:block;font-size:10px;margin-top:8px;color:#bfcabb}.booking{background:white;border-radius:12px;padding:27px 28px 23px;box-shadow:0 10px 50px #0002;align-self:start}.form-head .eyebrow{color:#527060!important;font-size:10px;letter-spacing:1.8px}.form-head h2{font-size:26px;letter-spacing:-.8px;margin:10px 0}.form-head p{font-size:13px;color:var(--muted);margin:0 0 24px}.label-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600;margin-bottom:10px}.label-row span{font-size:12px;color:var(--green)}.calendar{border:1px solid #dde4de;border-radius:8px;padding:10px 12px}.month-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:14px}.month-nav button{border:1px solid #e6ebe7;background:#fff;border-radius:5px;width:30px;height:30px;font-size:24px;line-height:1}.month-nav button:disabled{opacity:.3;cursor:default}.week,#days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:3px}.week{font-size:11px;color:#7f8981;margin-bottom:7px}#days button{height:34px;background:transparent;border:0;border-radius:5px;font-size:13px;color:#263a2f}#days button:hover{background:#eff3ee}#days button:disabled{color:#cbd0ca;cursor:default}#days button.selected{background:var(--green);color:#fff}#days button.today{box-shadow:inset 0 0 0 1px #b3c4b7}.calendar-note{font-size:11px;line-height:1.5;color:#7c847d;margin:8px 0 17px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:13px}.fields label{font-size:12px;font-weight:600;display:block}input,select{width:100%;margin-top:7px;border:1px solid #dce3dc;border-radius:5px;background:#fff;height:42px;padding:0 10px;font-size:13px;color:var(--ink)}.submit{background:var(--orange);color:#fff;width:100%;border:0;border-radius:6px;padding:15px 13px;margin-top:16px;font-size:14px;font-weight:700;display:flex;justify-content:space-between}.submit:hover{background:#ce5f21}.form-foot{font-size:10px;text-align:center;color:#69766b;margin:12px 0 0}.privacy-note{font-size:10px;line-height:1.4;color:#78847b;text-align:center;margin-bottom:0}#error{color:#b73522;font-size:12px;margin:8px 0 0}.benefits{padding:28px 6%;display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #e2e8e1;gap:30px}.benefits>div{display:flex;gap:17px;align-items:center}.benefits>div>span{color:#a77b47;font-size:14px;border:1px solid #dce3d9;border-radius:50%;padding:12px}.benefits strong{font-size:14px}.benefits small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:5px}.section{padding:75px 8%}.section .eyebrow{color:#8f683e;font-size:11px}.section h2{font-size:33px;line-height:1.25;letter-spacing:-1.2px;margin:13px 0 25px}.section-top{display:flex;justify-content:space-between;gap:25px;align-items:center}.section-top p{font-size:14px;line-height:1.7;color:var(--muted)}.safari-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.safari-cards article{padding:30px;border:1px solid #dde4dc;border-radius:10px;background:#f8faf6}.card-icon{font-size:11px;letter-spacing:2px;color:#7c674c}.safari-cards h3{font-size:23px;letter-spacing:-.6px;max-width:300px;margin:20px 0 12px}.safari-cards p{line-height:1.8;font-size:14px;color:var(--muted)}.card-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #dfe6dc;margin-top:25px;padding-top:20px;align-items:center}.card-bottom span{font-size:12px;color:#62705f}.card-bottom button{border:0;color:var(--green);font-size:13px;font-weight:700;background:none}.fine{font-size:12px;color:#74806f;margin-top:20px}.how{background:#f0f4ee;display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.how>div>p{max-width:300px;font-size:15px;line-height:1.8;color:var(--muted)}.text-link{display:inline-block;font-size:14px;font-weight:700;margin-top:20px;border-bottom:1px solid #52715b;padding-bottom:7px}.how ol{list-style:none;margin:0;padding:0}.how li{display:flex;gap:24px;padding:0 0 22px;margin-bottom:22px;border-bottom:1px solid #d5dfd3}.how li:last-child{border:0;padding:0;margin:0}.how li>span{font-size:13px;color:#8b7758;padding-top:4px}.how h3{font-size:17px;margin:0 0 10px}.how li p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}.faq{display:grid;grid-template-columns:1fr 1.35fr;gap:60px}.faq>div>p{font-size:15px;color:var(--muted);line-height:2}.faq a{font-weight:700;color:var(--green)}details{border-bottom:1px solid #dfe5db;padding:19px 0}summary{cursor:pointer;list-style:none;font-size:15px;font-weight:600;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';font-size:20px;font-weight:400}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);line-height:1.8}footer{background:#123528;color:#e3eadd;padding:38px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer p{font-size:12px;line-height:1.8;color:#acbeb0}footer>a:last-child{font-size:14px}.mobile-bar{display:none}@media(min-width:1500px){.hero{padding-left:10%;padding-right:10%;grid-template-columns:1fr 480px}}@media(max-width:1000px){header{padding:0 4%}nav{display:none}.hero{padding:35px 4%;gap:30px;grid-template-columns:1fr 430px}.hero-copy{padding-top:20px}h1{font-size:43px}.hero-copy>p{font-size:14px}.hero-tags{gap:6px}.section{padding:55px 5%}.benefits{padding:25px 4%;gap:15px}.benefits small{font-size:11px}.how,.faq{gap:40px}}@media(max-width:760px){.disclaimer{font-size:10px;line-height:1.5;padding:7px 18px}header{height:76px}.brand{font-size:11px;letter-spacing:.4px}.brand small{font-size:9px}.brandmark{width:40px;height:40px;font-size:20px}.call{font-size:11px;padding:10px 8px}.hero{display:block;padding:25px 18px 30px;background-position:38% top;background-size:auto 680px;background-repeat:no-repeat}.hero-copy{padding:0 6px 25px}.hero .eyebrow{font-size:10px}h1{font-size:39px;margin:18px 0;letter-spacing:-1.8px}h1>span{font-size:23px;margin-top:12px}h1>span br{display:none}.hero-copy>p{max-width:360px;line-height:1.6;font-size:14px;margin:0}.hero-tags{margin-top:16px}.image-caption{display:none}.booking{padding:24px 20px}.benefits{grid-template-columns:1fr;padding:25px 24px;gap:22px}.benefits small{font-size:12px}.section{padding:45px 24px}.section-top{display:block}.section h2{font-size:28px}.section-top p{margin-top:-10px;margin-bottom:25px}.safari-cards{grid-template-columns:1fr;gap:16px}.safari-cards article{padding:24px}.how,.faq{grid-template-columns:1fr;gap:28px}.how h2 br{display:none}.how>div>p{max-width:none}.text-link{margin-top:5px}.faq>div>p{margin:0}.faq h2{margin-bottom:15px}footer{flex-direction:column;align-items:flex-start;padding:30px 24px 95px;gap:15px}footer p{margin:0}.mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;padding:10px 15px;box-shadow:0 -3px 20px #0001;gap:10px;z-index:5}.mobile-bar a{padding:13px 18px;font-size:13px;border:1px solid #cdd9cc;border-radius:5px;font-weight:600;text-align:center}.mobile-bar a:last-child{flex:1;color:white;background:var(--green)}}

.hero{background-image:url("/front/assets/img/ranthambore-online.jpg")}

/* Compact booking layout */
.hero{grid-template-columns:minmax(260px,1fr) minmax(570px,650px);gap:36px;min-height:620px;padding-top:40px;padding-bottom:40px}.hero-copy{padding-top:14px}.hero-copy h1{font-size:clamp(36px,3.7vw,55px)}.hero-copy h1>span{font-size:28px}.image-caption{padding-top:25px}.booking.compact{padding:22px}.compact .form-head h2{font-size:22px;margin:8px 0}.compact .form-head p{margin-bottom:18px;font-size:14px}.compact-grid{display:grid;grid-template-columns:255px 1fr;gap:18px}.compact .label-row{display:block;font-size:14px;line-height:1.5;margin-bottom:8px}.compact .label-row span{display:block;font-size:12px;min-height:18px}.compact .calendar{padding:8px}.compact .week{font-size:12px}.compact #days{gap:2px}.compact #days button{height:29px;font-size:13px}.compact .calendar-note{font-size:12px;margin:8px 0;line-height:1.45}.compact .fields{gap:10px;margin:0 0 12px}.compact .fields label{font-size:14px}.compact input,.compact select{font-size:14px;height:36px;padding:0 7px;margin-top:5px}.compact .consent{display:flex;gap:7px;font-size:12px;line-height:1.5;align-items:flex-start}.compact .consent input{width:15px;height:15px;flex-shrink:0;margin-top:3px}.consent a{text-decoration:underline}.compact .submit{margin-top:8px;padding:12px;font-size:14px}.compact .form-foot,.compact .privacy-note{font-size:12px}.compact .privacy-note{margin-top:6px}.data-table{width:100%;border-collapse:collapse;min-width:580px;text-align:left;font-size:15px}.data-table caption{position:absolute;left:-10000px}.data-table thead{background:var(--green);color:white}.data-table th,.data-table td{padding:19px 20px;border-bottom:1px solid #dce4d8}.data-table tbody tr:nth-child(even){background:#f4f7f1}.data-table td strong{font-size:23px;color:var(--green)}.data-table small{display:block;font-size:12px;color:var(--muted);margin-top:4px}.table-scroll{overflow-x:auto;border:1px solid #dce4d8;border-radius:8px}.price-notes{display:grid;grid-template-columns:1fr 1fr;gap:10px 26px;margin:17px 0 35px}.price-notes p{font-size:14px;line-height:1.75;margin:0}.price-notes p:last-child{grid-column:1/-1}.timing-head{margin-top:40px}.timing-head p{font-size:15px;line-height:1.7;color:var(--muted)}.season-note{background:#f4f7f0;border-left:3px solid var(--orange);padding:20px;margin-top:20px;font-size:14px;line-height:1.75}.season-note p{margin:7px 0 0}.footer-links{display:flex;flex-wrap:wrap;gap:20px;font-size:13px}footer{flex-wrap:wrap}footer>.footer-links{width:100%;border-top:1px solid #ffffff24;padding-top:20px}.page-title{padding:42px 8%;background:#eef3eb}.page-title>a,.page-title>span{font-size:13px;color:var(--muted)}.page-title h1{font-size:44px;letter-spacing:-1.5px;margin:24px 0 12px}.page-title p{font-size:18px;line-height:1.6;color:var(--muted)}.info-layout{display:grid;grid-template-columns:230px 1fr;gap:65px;max-width:1150px;margin:auto;padding:50px 30px 75px}.info-layout aside{align-self:start;background:#f5f7f1;padding:23px;border-radius:8px}.info-layout aside .footer-links{flex-direction:column;gap:17px;margin:25px 0;font-size:14px}.info-cta{display:block;background:var(--green);color:#fff;padding:12px;border-radius:5px;font-size:14px}.info-content section{margin-bottom:30px}.info-content h2{font-size:22px;letter-spacing:-.4px;margin:0 0 12px}.info-content p{font-size:16px;line-height:1.85;margin:0;color:#526055}.info-content a{text-decoration:underline;color:var(--green)}
@media(max-width:1120px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{max-width:680px}.hero-copy h1 br{display:none}.hero-copy h1>span br{display:none}.hero-copy>p{max-width:600px}.image-caption{display:none}.booking.compact{width:100%;max-width:760px}.compact-grid{grid-template-columns:270px 1fr}.hero-copy h1{margin:12px 0}.hero-copy h1>span{font-size:25px;margin-top:10px}.hero-copy>p{margin:0}.hero-tags{margin-top:12px}.hero-copy{padding-bottom:0}.hero{gap:24px}}
@media(max-width:600px){.compact-grid{grid-template-columns:1fr;gap:6px}.booking.compact{padding:18px}.compact .label-row{display:flex;justify-content:space-between}.compact .calendar{padding:8px 12px}.compact #days button{height:28px}.compact .form-head .eyebrow{display:none}.compact .form-head h2{font-size:20px}.compact .form-head p{font-size:12px;margin-bottom:12px}.compact .fields{margin-bottom:10px}.compact .calendar-note{font-size:12px}.compact .privacy-note{font-size:12px}.compact .form-foot{font-size:12px}.compact .submit{font-size:13px}.compact .consent{font-size:12px}.hero{padding:24px 16px}.hero-copy h1{font-size:34px}.hero-copy h1>span{font-size:22px}.price-notes{grid-template-columns:1fr}.data-table th,.data-table td{padding:14px}.info-layout{grid-template-columns:1fr;gap:28px;padding:30px 24px 50px}.info-layout aside{order:2}.page-title{padding:30px 24px}.page-title h1{font-size:34px}.info-content h2{font-size:21px}}

/* Strong, always-present primary form action. */
.compact .submit{display:flex!important;visibility:visible!important;opacity:1;width:100%;min-height:50px;align-items:center;justify-content:space-between;background:#a83b0d;color:#fff;border:2px solid #a83b0d;box-shadow:0 4px 10px #a83b0d25;font-size:16px;font-weight:700;margin-top:12px;position:relative;z-index:1}.compact .submit:hover{background:#872b05;border-color:#872b05}.compact .submit:focus-visible{outline:3px solid #163d30;outline-offset:3px}.compact .submit:disabled{cursor:wait;background:#6d543f;border-color:#6d543f}#booking-status{font-size:14px;line-height:1.5;color:#163d30;margin:8px 0}#booking-status:empty{display:none}@media(max-width:600px){.compact .submit{font-size:16px;min-height:50px}.brand{font-size:10px}}

/* Reference layout, existing forest-green and orange palette. */
.compact-grid{display:block}.hero{grid-template-columns:minmax(280px,1fr) minmax(430px,510px)}.compact .calendar{border:1px solid #d0dccf;padding:0;border-radius:6px;overflow:hidden}.compact .month-nav{padding:10px 12px;margin:0}.compact .week{gap:0;background:#163d30;color:white;margin:0}.compact .week span{padding:9px 0;border-right:1px solid #ffffff30}.compact #days{gap:0}.compact #days button{height:36px;border-radius:0;border-right:1px solid #dae3d6;border-bottom:1px solid #dae3d6;background:#f4f7ef}.compact #days button.selected{background:#163d30;color:#fff}.compact .form-controls{margin-top:14px}.compact .fields{margin-bottom:12px}.compact .fields input,.compact .fields select{height:40px}.booking-step[hidden]{display:none!important}.booking-step{background:#f7f9f4}.booking-step>.eyebrow{margin-top:25px}.booking-person{border:1px solid #ccd9ca;background:white;border-radius:10px;padding:22px}.booking-person>h3:first-child{background:#163d30;color:white;margin:-22px -22px 20px;padding:14px 22px;border-radius:9px 9px 0 0;font-size:17px}.booking-person>p{font-size:14px;line-height:1.7}.booking-summary{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #dde5d9;margin:18px 0}.booking-summary>div{padding:12px;border:1px solid #dde5d9;overflow-wrap:anywhere}.booking-summary dt{font-size:12px;color:#66775f}.booking-summary dd{margin:5px 0 0;font-size:14px;font-weight:600}.booking-person .fields{align-items:start}.booking-person label{font-size:14px}.booking-person textarea{width:100%;margin-top:7px;border:1px solid #dce3dc;border-radius:5px;padding:10px;font:inherit;resize:vertical}.consent{display:flex;gap:10px;font-size:14px;line-height:1.6;margin:18px 0}.consent input{width:17px;height:17px;flex-shrink:0;margin-top:3px}.step-note{font-size:14px;line-height:1.7;color:#66715f}.traveller-heading{font-size:20px;color:#a83b0d;margin-bottom:8px}.passenger-row{display:grid;grid-template-columns:24px 1.5fr .6fr .9fr .9fr 1fr 1fr 1.2fr 1.2fr 30px;gap:8px;align-items:start;padding:17px 0;border-bottom:1px solid #e0e8db}.passenger-row label{font-size:12px;min-width:0}.passenger-row input,.passenger-row select{font-size:12px;padding:0 6px;height:36px}.passenger-number{color:#a83b0d;font-weight:700;padding-top:26px;font-size:14px}.upload-id input{padding:8px 0;font-size:11px;max-width:100%;border:0}.upload-id small{font-size:10px;line-height:1.4;display:block}.remove-member{margin-top:24px;height:30px;border:0;background:#fcece3;color:#a83b0d;border-radius:4px;font-size:20px}.remove-member:disabled{opacity:.3}.add-member{margin-top:15px;background:#e8eee1;border:1px solid #c9d8be;color:#163d30;width:100%;padding:12px;border-radius:5px;font-weight:600}.add-member:disabled{opacity:.5;cursor:default}.payment-summary{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:25px}.payment-summary strong{display:block;font-size:30px;margin:8px 0}.payment-summary small,.payment-summary span{display:block;font-size:13px;line-height:1.7}.payment-summary .submit{width:260px;min-height:50px;background:#a83b0d;font-size:16px;align-items:center}#passenger-status{font-size:14px;line-height:1.7;color:#a83b0d}.booking-step .text-link{margin-top:0}@media(max-width:1120px){.hero{grid-template-columns:1fr 480px}.passenger-row{grid-template-columns:24px repeat(4,minmax(0,1fr))}.passenger-number{grid-row:span 2}.payment-summary{align-items:flex-start}}@media(max-width:850px){.hero{grid-template-columns:1fr}.booking.compact{max-width:580px}.booking-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.booking-person{padding:16px}.booking-person>h3:first-child{margin:-16px -16px 16px;padding:13px 16px}.passenger-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.passenger-number{grid-column:1/-1;grid-row:auto;padding:0}.passenger-row input,.passenger-row select{font-size:14px}.passenger-row label{font-size:13px}.upload-id{grid-column:1/-1}.remove-member{margin-top:0}.payment-summary{display:block}.payment-summary .submit{width:100%}.booking-summary{grid-template-columns:1fr 1fr}.booking-person .fields{grid-template-columns:1fr}.compact #days button{height:34px}}
/* Compact dimensions only: retain content, colours, fields and behavior. */
.hero{grid-template-columns:minmax(280px,1fr) minmax(360px,430px)}
.booking.compact{padding:16px;max-width:430px}
.compact .form-head h2{font-size:20px;margin:6px 0}
.compact .form-head p{margin-bottom:10px;font-size:13px}
.compact .label-row{margin-bottom:5px}
.compact .month-nav{padding:6px 9px;margin:0;font-size:14px}
.compact .month-nav button{width:26px;height:26px;font-size:21px}
.compact .week span{padding:6px 0}
.compact #days button{height:27px;font-size:13px}
.compact .calendar-note{margin:5px 0;font-size:12px;line-height:1.35}
.compact .form-controls{margin-top:9px}
.compact .fields{gap:9px;margin-bottom:8px}
.compact .fields label{font-size:13px}
.compact .fields input,.compact .fields select{height:34px;margin-top:4px;font-size:13px}
.compact .consent{margin:9px 0;font-size:12px;line-height:1.35;gap:6px}
.compact .submit{min-height:42px;padding:9px 12px;margin-top:8px;font-size:15px}
.compact .form-foot,.compact .privacy-note{margin-top:6px;font-size:12px;line-height:1.35}
.booking-step{padding-top:38px;padding-bottom:38px}
.booking-step>h2{font-size:27px;margin:10px 0 16px}
.booking-step>.eyebrow{margin-top:16px}
.booking-person{padding:16px}
.booking-person>h3:first-child{margin:-16px -16px 12px;padding:10px 16px;font-size:16px}
.booking-person>p{margin:9px 0;line-height:1.5}
.booking-summary{margin:12px 0}
.booking-summary>div{padding:8px 10px}
.booking-summary dd{margin-top:3px}
.booking-person .fields{margin-top:9px;gap:10px}
.booking-person .fields input{height:35px;margin-top:4px}
.booking-person textarea{margin-top:4px;padding:7px}
.booking-person .consent{margin:12px 0;font-size:13px;line-height:1.45}
.booking-person .traveller-heading{font-size:18px;margin:14px 0 6px}
.booking-step .step-note{font-size:13px;line-height:1.5;margin:8px 0}
.passenger-row{padding:10px 0;gap:6px}
.passenger-row input,.passenger-row select{height:32px;margin-top:4px}
.passenger-number{padding-top:23px}
.remove-member{margin-top:21px;height:28px}
.add-member{padding:9px;margin-top:10px}
.booking-step .season-note{padding:14px;margin-top:14px;font-size:13px;line-height:1.5}
.payment-summary{margin-top:16px;gap:18px}
.payment-summary strong{font-size:25px;margin:5px 0}
.payment-summary .submit{min-height:43px;padding:10px 12px;font-size:15px}
@media(max-width:1120px){.hero{grid-template-columns:1fr 430px}}
@media(max-width:850px){.hero{grid-template-columns:1fr}.booking.compact{width:100%;max-width:430px}}
@media(max-width:600px){.booking.compact{padding:14px}.compact #days button{height:27px}.compact .form-head h2{font-size:19px}.compact .fields{gap:8px}.compact .fields input,.compact .fields select{font-size:13px;height:34px}.compact .submit{min-height:44px;font-size:15px}.booking-step{padding:30px 16px}.booking-person{padding:12px}.booking-person>h3:first-child{margin:-12px -12px 12px;padding:10px 12px}.passenger-row{gap:8px}.passenger-row input,.passenger-row select{font-size:14px;height:34px}.passenger-number{padding-top:0}.remove-member{margin-top:0}.payment-summary .submit{min-height:44px}}
