@font-face{font-family:Manrope;src:url(/fonts/Manrope.ttf) format("truetype");font-weight:200 800;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(/fonts/InstrumentSerif.ttf) format("truetype");font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(/fonts/InstrumentSerif-Italic.ttf) format("truetype");font-style:italic;font-display:swap}
:root{
  --ink:oklch(16% .012 260);--ink-2:oklch(19% .012 260);--paper:oklch(97.2% .003 100);--paper-ink:oklch(18% 0 0);
  --w:oklch(100% 0 0);--w62:oklch(100% 0 0/.62);--w45:oklch(100% 0 0/.45);--line:oklch(100% 0 0/.1);--line2:oklch(100% 0 0/.14);
  --gold:oklch(74% .11 87);--gold-d:oklch(67% .11 87);--ease:cubic-bezier(.2,.7,.2,1)
}
.btn-gold{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gold);color:oklch(15% 0 0);font-weight:600;font-size:14px;line-height:20px;padding:14px 28px;border-radius:999px;transition:transform .3s var(--ease),filter .3s}
.btn-gold:hover{transform:translateY(-1px);filter:brightness(1.06)}
.btn-gold.wide{width:100%;border-radius:20px;padding:16px 32px}
/* date fields + calendar */
.date-cell{position:relative}
.date-btn{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;padding:2px 0;min-height:28px;text-align:left;touch-action:manipulation}
.cell .date-val{font:500 15px/1.3 Manrope,sans-serif;color:#fff;text-transform:none;letter-spacing:0;margin-bottom:0}
.cell .date-val.is-placeholder{color:oklch(100% 0 0/.38);text-transform:uppercase;font-size:13px;letter-spacing:.02em;font-weight:500}
.date-ico{flex:none;color:var(--gold);opacity:.9}
.date-iso{position:absolute;left:18px;bottom:8px;width:1px;height:1px;opacity:0;border:0;pointer-events:none}
.date-cell.is-open{background:oklch(21% .012 260)}
.cal-root{position:fixed;inset:0;z-index:80;display:none}
.cal-root.open{display:block}
.cal-backdrop{position:absolute;inset:0;background:oklch(10% .01 260/.62);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.cal-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(680px,calc(100vw - 40px));background:oklch(16% .012 260/.97);border:1px solid oklch(100% 0 0/.14);border-radius:28px;box-shadow:0 40px 80px -16px rgb(0 0 0/.65);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);padding:22px 22px 16px;color:#fff;animation:enter .35s var(--ease)}
.cal-handle{display:none;width:40px;height:4px;border-radius:999px;background:oklch(100% 0 0/.22);margin:2px auto 12px}
.cal-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}
.cal-kicker{font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.cal-range{font-size:18px;font-weight:500;letter-spacing:-.02em;margin-top:6px;line-height:1.3}
.cal-x{width:40px;height:40px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;flex:none;touch-action:manipulation}
.cal-x:hover{background:oklch(100% 0 0/.06)}
.cal-nav{display:flex;justify-content:space-between;align-items:center;height:40px;margin-bottom:-40px;position:relative;z-index:2;pointer-events:none}
.cal-nav-btn{pointer-events:auto;width:40px;height:40px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;touch-action:manipulation;background:oklch(16% .012 260/.9)}
.cal-nav-btn:hover{background:oklch(100% 0 0/.06)}
.cal-nav-btn:disabled{opacity:.28;cursor:not-allowed}
.cal-months{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px}
.cal-month h3{font-size:15px;font-weight:600;letter-spacing:-.01em;text-align:center;margin:0 0 12px;min-height:40px;display:flex;align-items:center;justify-content:center}
.cal-wd,.cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.cal-wd span{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--w45);text-align:center;padding:0 0 8px}
.cal-grid{gap:2px 0}
.cal-day{position:relative;height:44px;border-radius:50%;font:500 14px/1 Manrope,sans-serif;color:#fff;display:grid;place-items:center;z-index:1;touch-action:manipulation}
.cal-day[aria-disabled=true]{opacity:.28;cursor:not-allowed}
.cal-day:not([aria-disabled=true]):hover{background:oklch(100% 0 0/.08)}
.cal-day.in-range::before{content:"";position:absolute;inset:4px 0;background:oklch(74% .11 87/.16);z-index:-1;border-radius:0}
.cal-day.in-range.sel-start::before{left:50%;border-radius:0 0 0 0}
.cal-day.in-range.sel-end::before{right:50%}
.cal-day.sel{background:var(--gold);color:oklch(15% 0 0);font-weight:600}
.cal-day.sel:hover{background:var(--gold)}
.cal-day.today:not(.sel){box-shadow:inset 0 0 0 1.5px var(--gold)}
.cal-day:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.cal-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.cal-clear{font-size:13px;font-weight:500;color:var(--w62);text-decoration:underline;text-underline-offset:4px;padding:10px 8px;min-height:44px}
.cal-clear:hover{color:#fff}
.cal-foot .btn-gold{min-width:140px;padding:12px 24px}
@media (max-width:720px){
  .cal-panel{left:0;right:0;top:auto;bottom:0;transform:none;width:100%;max-height:min(94dvh,760px);border-radius:28px 28px 0 0;padding:8px 16px 20px;overflow:auto;animation:sheet-up .35s var(--ease)}
  .cal-handle{display:block}
  .cal-months{grid-template-columns:1fr}
  .cal-day{height:48px;font-size:15px}
  .cal-foot .btn-gold{flex:1}
}
@keyframes sheet-up{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
body.nav-lock{overflow:hidden}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.date-btn{color:#fff}
.date-btn .date-val{font:400 15px/1.5 Manrope,sans-serif;color:#fff}
.date-btn .date-val.is-placeholder{color:oklch(100% 0 0/.45);text-transform:none;font-size:15px;letter-spacing:0;font-weight:400}
.date-cell{position:relative}
.date-cell.is-open{background:oklch(21% .012 260/.8)!important}
.qfoot{padding:16px 20px 12px;font-size:12px;color:oklch(100% 0 0/.55)}
.qfoot.ok{color:var(--gold);font-size:14px}
.step2{animation:v-enter .35s var(--ease)}
@keyframes v-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;color:oklch(100% 0 0/.62)}
.consent input{margin-top:3px;accent-color:var(--gold);width:16px;height:16px;flex:none}
.consent a{text-decoration:underline;text-underline-offset:3px}
select option{background:#14171d;color:#fff}
#mobile-navigation[hidden]{display:none!important}
[data-stat],[data-cfg]{font-variant-numeric:tabular-nums}
html{scroll-behavior:smooth}
.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}
/* enquiry modal */
.enq-root{position:fixed;inset:0;z-index:90;display:none}
.enq-root.open{display:block}
.enq-backdrop{position:absolute;inset:0;background:oklch(10% .01 260/.62);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.enq-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100vw - 40px));max-height:min(92dvh,840px);overflow:auto;background:oklch(16% .012 260/.97);border:1px solid oklch(100% 0 0/.14);border-radius:28px;box-shadow:0 40px 80px -16px rgb(0 0 0/.65);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);padding:22px 22px 18px;color:#fff;animation:enter .35s var(--ease)}
.enq-fields{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:oklch(100% 0 0/.12);margin-top:16px;border-radius:12px;overflow:hidden}
.enq-cell{grid-column:1/-1;background:oklch(16% 0 0/.5);padding:14px 18px;display:grid;gap:6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:oklch(100% 0 0/.5)}
.enq-cell.enq-half{grid-column:span 1}
.enq-cell input,.enq-cell textarea{width:100%;border:0;background:transparent;color:#fff;font:400 15px/1.45 Manrope,sans-serif;text-transform:none;letter-spacing:0;padding:0;resize:vertical}
.enq-cell input::placeholder,.enq-cell textarea::placeholder{color:oklch(100% 0 0/.4)}
.enq-cell input:focus,.enq-cell textarea:focus{outline:none}
.enq-cell.consent{text-transform:none;letter-spacing:0;font-size:13px;display:flex;align-items:flex-start;gap:10px;color:oklch(100% 0 0/.62)}
.enq-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;flex-wrap:wrap}
.enq-wa{font-size:13px;font-weight:500;color:var(--w62);text-decoration:underline;text-underline-offset:4px;padding:10px 0}
.enq-wa:hover{color:#fff}
.enq-actions .btn-gold{min-width:160px;padding:12px 24px;margin-left:auto}
.enq-root .qfoot{padding:14px 4px 8px}
@media (max-width:720px){
  .enq-panel{left:0;right:0;top:auto;bottom:0;transform:none;width:100%;border-radius:28px 28px 0 0;padding:8px 16px 20px;animation:sheet-up .35s var(--ease)}
  .enq-cell.enq-half{grid-column:1/-1}
  .enq-actions .btn-gold{flex:1}
}

/* quote form: one-way, city autocomplete, confirmation, payment chips */
#ret-wrap[hidden],.quote-done[hidden],.city-ac[hidden]{display:none!important}
@media (min-width:1024px){
  .step1.is-oneway #dep-wrap{grid-column:1/-1}
}
.city-cell{position:relative;z-index:1}
.city-cell.is-open{z-index:30;background:oklch(21% .012 260/.8)!important}
.city-wrap{position:relative}
.city-input{text-transform:none}
.city-cell.is-selected .city-input{color:#fff}
.city-ico-check{display:none}
.city-cell.is-selected .city-ico-search{display:none}
.city-cell.is-selected .city-ico-check{display:block!important}
.city-ac{
  position:fixed;z-index:120;margin:0;padding:6px;list-style:none;
  background:oklch(16% .012 260/.98);border:1px solid oklch(100% 0 0/.16);
  border-radius:16px;box-shadow:0 24px 48px -12px rgb(0 0 0/.65);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  max-height:min(280px,46vh);overflow-y:auto;-webkit-overflow-scrolling:touch;
  overscroll-behavior:contain
}
.city-ac-item{
  display:grid;grid-template-columns:1fr auto;gap:2px 12px;width:100%;
  text-align:left;padding:11px 12px;border-radius:12px;color:#fff;
  touch-action:manipulation;cursor:pointer;background:transparent
}
.city-ac-item:hover,.city-ac-item.is-active,.city-ac-item:active{background:oklch(74% .11 87/.16)}
.city-ac-city{font-size:14px;font-weight:550;letter-spacing:-.01em}
.city-ac-name{grid-column:1;font-size:12px;color:oklch(100% 0 0/.5);letter-spacing:0;text-transform:none}
.city-ac-code{grid-row:1/3;grid-column:2;align-self:center;font-size:12px;font-weight:650;letter-spacing:.08em;color:var(--gold)}
.city-ac-empty{padding:14px 12px;font-size:13px;color:oklch(100% 0 0/.5)}
.quote-done{padding:28px 20px 16px;text-align:center}
.quote-done-icon{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;
  display:grid;place-items:center;background:oklch(74% .11 87/.16);color:var(--gold);border:1px solid oklch(74% .11 87/.35)}
.quote-done-title{font-size:22px;font-weight:550;letter-spacing:-.03em;margin:0 0 8px}
.quote-done-copy{font-size:15px;line-height:1.5;color:oklch(100% 0 0/.7);max-width:28ch;margin:0 auto}
.quote-done-ref{margin:12px 0 0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:oklch(100% 0 0/.45)}
.quote-wa{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin:22px 0 0;
  border-radius:16px;background:#25D366;color:#fff;font-weight:650;font-size:15px;padding:16px 20px;
  text-decoration:none;touch-action:manipulation}
.quote-wa:hover{filter:brightness(1.06)}
.quote-again{display:inline-block;margin:16px auto 4px;background:none;border:0;cursor:pointer;
  color:oklch(100% 0 0/.62);font-size:13px;font-weight:500;text-decoration:underline;text-underline-offset:4px;padding:8px}
.quote-again:hover{color:#fff}
.qfoot.err{color:#f0b4b4;font-size:13px}
.form-sending .qfoot{color:oklch(100% 0 0/.7)}
.pay-chips{display:flex;flex-wrap:nowrap;align-items:center;gap:4px;margin-top:16px;width:100%;overflow:hidden}
.pay-chips li{flex:1 1 0;min-width:0;height:28px;padding:0 2px;display:flex;align-items:center;justify-content:center;
  border-radius:6px;border:1px solid oklch(100% 0 0/.2);background:oklch(100% 0 0/.07);color:oklch(97% .004 85)}
.pay-chips svg{width:100%;max-width:34px;height:15px;display:block}
[data-end][hidden],section[hidden]{display:none!important}
