/* MyRegularTrip — site footer.
   Shared by the landing page and the generated trip pages. */
.mrt-foot{background:var(--ink,#1c1917);color:#cfc6c2;position:relative;overflow:hidden;
  margin-top:0;padding:0!important}
.mrt-foot::before{content:"";position:absolute;inset:auto -12% -55% -12%;height:70%;
  background:radial-gradient(50% 100% at 50% 100%,rgba(225,6,0,.28),transparent 72%);pointer-events:none}
.mrt-foot .fwrap{position:relative;max-width:var(--maxw,1280px);margin:0 auto;padding:0 var(--pad,24px)}

/* ── keep-in-touch band ── */
.foot-cta{border-bottom:1px solid rgba(255,255,255,.12);padding:clamp(1.1rem,2vw,1.6rem) 0}
.foot-cta-in{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1.2rem,3vw,2.6rem);align-items:center}
@media(max-width:820px){.foot-cta-in{grid-template-columns:1fr;gap:1.2rem}}
.foot-cta h3{font-family:"Bricolage Grotesque","Outfit",sans-serif;font-weight:800;letter-spacing:-.02em;
  color:#fff;font-size:clamp(1.2rem,2.2vw,1.65rem);line-height:1.12;margin:0}
.foot-cta p{margin:.35rem 0 0;font-size:.92rem;max-width:50ch;color:#b9afaa}
.foot-form{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}
.foot-form .mrt-sel{flex:1 1 calc(50% - .25rem);width:auto;min-width:0}
.foot-form .mrt-sel-btn{background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.28);
  color:#fff;border-radius:999px;padding:.62em .9em;font-size:.9rem}
.foot-form .mrt-sel-btn:hover{box-shadow:none;border-color:rgba(255,255,255,.5)}
.foot-form .mrt-sel[data-open="1"] .mrt-sel-btn{border-color:var(--yellow,#ffd53b);box-shadow:none}
.foot-form .mrt-sel-btn svg{color:#b9afaa}
.foot-form input{flex:1 1 58%;min-width:0;font:inherit;font-size:.95rem;padding:.72em .95em;color:#fff;
  background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.28);border-radius:999px}
.foot-form input::placeholder{color:#8d8580}
.foot-form input:focus{outline:3px solid var(--yellow,#ffd53b);outline-offset:1px;border-color:transparent}
.foot-form button{flex:1 1 34%;font:inherit;font-weight:600;font-size:.95rem;padding:.72em 1.2em;cursor:pointer;
  color:var(--ink,#1c1917);background:var(--yellow,#ffd53b);border:1.5px solid var(--yellow,#ffd53b);
  border-radius:999px;transition:transform .18s cubic-bezier(.16,1,.3,1)}
.foot-form button:hover{transform:translateY(-2px)}
.foot-ok{flex-basis:100%;color:var(--yellow,#ffd53b);font-size:.92rem;font-weight:600;margin:.2rem 0 0}
.foot-ok[hidden]{display:none}

/* ── link columns ── */
.foot-main{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:clamp(1.2rem,2.4vw,2rem);
  padding:clamp(1.3rem,2.2vw,1.8rem) 0;align-items:start}
@media(max-width:1000px){.foot-main{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:640px){.foot-main{grid-template-columns:1fr 1fr;gap:1.6rem}}
.foot-brand{max-width:34ch}
@media(max-width:640px){.foot-brand{grid-column:1/-1}}
.foot-brand .mark{display:inline-flex;align-items:center;gap:.5rem;
  background:#fff;border-radius:999px;padding:.34rem .85rem .34rem .38rem;margin-bottom:.7rem}
.foot-brand .mark img{height:34px;width:34px;display:block}
.foot-brand .mark b{font-family:"Bricolage Grotesque","Outfit",system-ui,sans-serif;font-weight:800;font-size:1.08rem;
  letter-spacing:-.03em;color:var(--ink,#1c1917);white-space:nowrap}
.foot-brand .mark i{font-style:normal;color:var(--red,#e10600)}
.foot-brand p{margin:0 0 .8rem;font-size:.89rem;line-height:1.55;color:#b9afaa}
.foot-social{display:flex;gap:.55rem;margin-top:.85rem}
.foot-social a{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;
  background:var(--soc,#444);overflow:hidden;opacity:.92;
  transition:transform .18s,opacity .18s}
.foot-social a:hover{transform:translateY(-2px);opacity:1}
.foot-social a.soc-instagram{background:
  radial-gradient(circle at 28% 106%,#fdf497 0%,#fd5949 42%,#d6249f 62%,#285AEB 92%)}
.foot-social svg{display:block;width:26px;height:26px}
.mrt-foot h4{font-family:"Bricolage Grotesque","Outfit",sans-serif;color:#fff;font-size:.78rem;
  font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .5rem}
.mrt-foot ul{list-style:none;margin:0;padding:0;display:block;gap:0}
.mrt-foot li{margin:0}
.mrt-foot a{display:block;color:#cfc6c2;text-decoration:none;font-size:.9rem;
  line-height:1.55;padding:.24rem 0;transition:color .16s}
.mrt-foot .foot-legal a,.mrt-foot .foot-social a{display:inline-flex;padding:0}
.mrt-foot a:hover{color:var(--yellow,#ffd53b)}

/* ── office + trust ── */
.foot-office{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(1rem,2.4vw,2rem);
  padding:clamp(.85rem,1.5vw,1.1rem) 0;border-top:1px solid rgba(255,255,255,.12);align-items:center}
@media(max-width:820px){.foot-office{grid-template-columns:1fr;gap:1.4rem}}
.foot-addr{display:flex;gap:.6rem;align-items:center;font-size:.88rem;line-height:1.45}
.foot-addr svg{flex:0 0 auto;color:var(--red,#e10600)}
.foot-addr b{color:#fff;display:inline;font-weight:600;letter-spacing:.01em}
.foot-addr span{color:#b9afaa;display:block}
.foot-trust{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.foot-badge{display:inline-flex;align-items:center;gap:.4em;font-size:.78rem;color:#cfc6c2;
  background:rgba(255,255,255,.07);border:1.5px solid rgba(255,255,255,.18);
  border-radius:999px;padding:.35em .8em}
.foot-badge b{color:var(--yellow,#ffd53b);font-weight:700}
.foot-pay{background:#fff;border-radius:9px;padding:.32rem .55rem;display:inline-flex}
.foot-pay img{height:19px;width:auto;display:block}

/* ── legal ── */
.foot-legal{border-top:1px solid rgba(255,255,255,.12);padding:.7rem 0 .9rem;
  display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;font-size:.85rem}
.foot-legal nav{display:flex;gap:1rem;flex-wrap:wrap}
.foot-legal p{margin:0;color:#8d8580}
@media(max-width:600px){.foot-legal{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.mrt-foot *{transition:none!important}}

/* ── small screens: the same content, less scrolling ── */
@media(max-width:640px){
  .foot-cta{padding:1.15rem 0}
  .foot-cta h3{font-size:1.25rem}
  .foot-cta p{font-size:.87rem;margin-top:.3rem}
  .foot-main{padding:1.3rem 0;gap:1.1rem 1.4rem}
  .foot-brand p{font-size:.86rem;margin-bottom:.6rem}
  .foot-brand .mark img{height:30px;width:30px}
  .foot-brand .mark b{font-size:1rem}
  .foot-social a{width:32px;height:32px}
  .mrt-foot h4{margin-bottom:.25rem}
  .mrt-foot a{font-size:.87rem;padding:.18rem 0}
  .foot-office{padding:1rem 0;gap:.9rem}
  .foot-addr{font-size:.87rem}
  .foot-badge{font-size:.74rem;padding:.3em .7em}
  .foot-pay img{height:19px}
  .foot-legal{padding:.75rem 0 1rem;font-size:.8rem;gap:.5rem}
  .foot-legal nav{gap:.9rem}
}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media(max-width:820px){
  .foot-form{gap:.4rem}
  .foot-form .mrt-sel{flex:1 1 46%;min-width:0}
  .foot-form input{flex:1 1 100%}
  .foot-form button{flex:1 1 100%}
}

/* footer.css is the last sheet on every page, so the 16px mobile floor has to
   be restated here -- .foot-form's own sizes were overriding it and the footer
   lead form is the one that appears on all 1266 pages. */
@media(max-width:640px){
  .foot-form input,.foot-form select,.foot-form textarea,
  .foot-form .mrt-sel-btn,.foot-form button,
  .lead-two input,.lead-two select,.lead-two textarea,.lead-two .mrt-sel-btn,
  .lead-card input,.lead-card select,.lead-card textarea,.lead-card .mrt-sel-btn,
  .sbar input,.sbar .go{font-size:16px;min-height:46px}
  /* chips are tappable filters; 39px was under the comfortable thumb target */
  button.chip,a.chip{min-height:42px;padding-inline:.95em}
}

/* ── thumbs ──────────────────────────────────────────────────────────────
   The footer is a dense column of links, and on a phone it is reached by a
   thumb, not a cursor. They measured 27px tall -- over the 24px WCAG 2.5.8
   floor but under anything comfortable, so neighbouring links were easy to
   hit by mistake. The rule that used to do this lived in select.css, which
   had nothing to do with the footer and was too small to help anyway. */
@media(max-width:820px){
  /* .mrt-foot .foot-legal a sets padding:0 at two classes deep, so a plain
     .foot-legal a here loses on specificity and silently does nothing --
     match the depth rather than reach for !important */
  .mrt-foot .foot-main a,.mrt-foot .foot-legal a{
    display:inline-block;padding-block:.5em;
  }
  .mrt-foot .foot-social a{width:44px;height:44px}
}
