/* The existing Cape theme supplies the local fonts, container and brand colours. */
.sq-discovery-home, .sq-mobile-guide { --paper:#fff; background:#fff; }
.sq-discovery [hidden] { display:none!important; }
.sq-discovery-home .sq-discovery { background:var(--paper); color:var(--ink); }
.sq-discovery-hero { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:1rem clamp(2rem,5vw,5rem); padding-block:2.5rem 2.75rem; border-bottom:1px solid var(--line); }
.sq-discovery-hero h1 { grid-column:1; max-width:12ch; margin:0; font:800 clamp(3.5rem,5.6vw,5.1rem)/.99 var(--display); letter-spacing:-.05em; }
.sq-discovery-hero h1 span { color:#d64048; }
.sq-discovery-intro { grid-column:2; align-self:end; max-width:36rem; margin:.35rem 0 0; font:400 1.125rem/1.65 var(--body); }
.sq-discovery-browser { padding-block:2rem 3rem; scroll-margin-top:1rem; }
.sq-discovery-search { max-width:42rem; }
.sq-discovery-search label { display:block; margin-bottom:.5rem; }
.sq-discovery-search input { width:100%; min-height:48px; border:1px solid var(--ink); border-radius:4px; padding:.75rem 1rem; font:400 1rem/1.5 var(--body); color:var(--ink); }
.sq-discovery-grid { display:grid; grid-template-columns:minmax(0,1fr); align-items:start; padding:0; margin:0; list-style:none; }
.sq-discovery-card h3 a { text-decoration:none; color:inherit; }
.sq-discovery-empty { margin:0 0 1.2rem; padding:.9rem; border-left:3px solid var(--coral); }
.sq-guide-art { min-width:0; }
.sq-discovery-home .sq-guide-art img { display:block; width:100%; aspect-ratio:5/6; height:auto; object-fit:cover; border-radius:5px; }
.sq-mobile-footer.site-footer { padding:1rem 0 .65rem; }
@media (min-width:720px) { .sq-discovery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (min-width:1100px) { .sq-discovery-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:899px) {
  .sq-discovery-hero { grid-template-columns:minmax(0,1fr); row-gap:1rem; padding-block:2rem; }
  .sq-discovery-hero h1 { max-width:13ch; font-size:clamp(2.8rem,8vw,4.5rem); }
  .sq-discovery-intro { grid-column:1; align-self:start; margin:0; font-size:1rem; }
}
@media (max-width:800px) {
  .sq-mobile-bar .header-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.55rem; min-height:82px; padding-block:1rem; }
  .sq-mobile-bar .brand { gap:6px; }
  .sq-mobile-bar .brand-mark { width:32px; height:32px; }
  .sq-mobile-bar .brand > span { font-size:1.1rem; }
  .sq-mobile-bar #main-navigation { grid-column:1 / -1; margin:.25rem 0 0; }
  .sq-mobile-bar .menu-toggle { grid-column:2; grid-row:1; width:44px; height:44px; margin:0; padding:0; border:0; background:transparent; flex-direction:column; justify-content:center; align-items:center; gap:5px; }
  .sq-mobile-bar .sq-welcome-region { display:none; }
}
@media (max-width:519px) {
  .sq-discovery-hero { padding-block:1.5rem 1.75rem; row-gap:.9rem; }
  .sq-discovery-hero h1 { font-size:clamp(2.65rem,10.4vw,3.4rem); }
}
@media (min-width:900px) { .sq-discovery-home .sq-discovery-hero h1 { grid-row:1 / span 2; } }
@media (max-width:800px) {
  .sq-discovery-home .header-inner { grid-template-columns:minmax(0,1fr) auto; }
  .sq-discovery-home .menu-toggle {
    grid-column:2;
    grid-row:1;
    width:44px;
    height:44px;
    padding:0;
    border:0;
    background:transparent;
    flex-direction:column;
    justify-content:center;
    gap:5px;
  }
  .menu-toggle .sq-menu-line {
    display:block;
    width:23px;
    height:2px;
    border-radius:1px;
    background:currentColor;
  }
}
.sq-first-choices {
  grid-column: 2;
  min-width: 0;
  width: 100%;
  max-width: 35rem;
}
.sq-first-track {
  display:flex;
  align-items:stretch;
  gap:.7rem;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
}
.sq-first-track::-webkit-scrollbar { display:none; }
.sq-first-track.is-dragging { scroll-snap-type:none; user-select:none; }
.sq-first-track.is-dragging a { cursor:grabbing; }
.sq-first-choices .sq-first-card {
  flex:0 0 84%;
  min-width:0;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border: 1px solid #c7b6ac;
  border-radius: 6px;
  background:var(--paper);
  color: var(--ink,#2d173a);
  text-decoration: none;
}
.sq-first-card:hover, .sq-first-card:focus-visible { border-color: #452449; }
.sq-first-card:hover strong, .sq-first-card:focus-visible strong { text-decoration: underline; }
.sq-first-card:focus-visible { outline: 3px solid #452449; outline-offset: -3px; }
.sq-first-card img { display:block; width:100%; height:auto; aspect-ratio:5 / 4; object-fit:cover; object-position:50% 46%; }
.sq-first-copy { display: flex; position: relative; flex-direction: column; flex: 1; gap: .22rem; padding: .7rem .7rem .85rem; border-top: 1px solid #d6c9b7; }
.sq-first-area { font: 650 .75rem/1.3 var(--body, sans-serif); color: #6e4b42; }
.sq-first-copy strong { display:block; font: 750 1.4rem/1.06 var(--display,sans-serif); letter-spacing:-.015em; padding-right:1.25rem; }
.sq-first-arrow { position:absolute; right:.45rem; top:.55rem; font-size:.9rem; font-weight:bold; }
.sq-discovery-home .sq-discovery-tools {
  display:block;
  margin:0 0 1.2rem;
}
.sq-discovery-home .sq-discovery-search { position:relative; }
.sq-discovery-home .sq-discovery-search label { font:750 1.55rem/1.15 var(--display); }
.sq-discovery-home .sq-discovery-tools input:not(:placeholder-shown) { padding-right:4rem; }
.sq-discovery-tools input::-webkit-search-cancel-button { display:none; }
.sq-discovery-home .sq-discovery-tools [data-sq-reset] { position:absolute; right:.35rem; bottom:2px; min-width:44px; padding:.25rem; border:0; text-decoration:underline; background:transparent; }
@media (max-width:800px) {
  .sq-discovery-home .sq-discovery-hero { padding-bottom:1rem; }
  .sq-discovery-home .sq-discovery-browser { padding-top:1rem; }
}
@media (max-width:899px) { .sq-first-choices { grid-column:1; } }
@media (min-width:900px) {
  .sq-discovery-home .sq-discovery-hero h1 { grid-row:1; }
  .sq-discovery-hero .sq-first-choices { grid-column:1 / -1; max-width:none; }
  .sq-first-choices .sq-first-card { flex-basis:30%; }
}
@media (max-width:359px) { .sq-first-choices { column-gap:.45rem; } .sq-first-copy { padding:.55rem .45rem .65rem; } }

.sq-discovery-home .sq-discovery-grid { gap:0 1.45rem; }
.sq-discovery-home .sq-discovery-card {
  position:relative;
  display:grid;
  grid-template-columns:clamp(72px,22vw,94px) minmax(0,1fr);
  align-items:center;
  gap:.9rem;
  padding:.85rem 0;
  border:0;
  border-top:1px solid var(--line);
  border-radius:0;
  background:transparent;
}
.sq-discovery-home .sq-guide-thumb {
  display:block;
  width:100%;
  aspect-ratio:5 / 6;
  height:auto;
  object-fit:cover;
  border-radius:5px;
  background:var(--tan);
}
.sq-guide-copy { min-width:0; }
.sq-discovery-home .sq-guide-copy .sq-discovery-location {
  margin:0 0 .3rem;
  font:600 .78rem/1.3 var(--body);
  color:var(--muted);
}
.sq-discovery-home .sq-guide-copy h3 {
  margin:0 0 .25rem;
  font:750 1.33rem/1.07 var(--display);
  letter-spacing:-.023em;
}
.sq-discovery-home .sq-guide-copy .sq-discovery-summary {
  margin:0;
  color:var(--ink);
  font:400 .94rem/1.38 var(--body);
}
.sq-guide-copy h3 a::after { content:""; position:absolute; inset:0; }
.sq-discovery-card:hover h3 a, .sq-discovery-card:focus-within h3 a { text-decoration:underline; }
.sq-guide-copy h3 a:focus-visible::after { outline:2px solid var(--ink); outline-offset:-2px; }

.sq-discovery-home .sq-discovery-browser { padding-bottom:0; }
.sq-discovery-home .sq-operator-note {
  margin-block:0;
  padding-block:.9rem 1.25rem;
  border-top:1px solid var(--line);
  font:400 .94rem/1.45 var(--body);
  color:var(--muted);
}

.sq-discovery-home .site-footer { padding:1rem 0 .65rem; }
.sq-footer-content a {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:inherit;
  text-decoration:underline;
  text-underline-offset:.23em;
}
.sq-footer-identity, .sq-footer-reader-links, .sq-footer-credits, .sq-footer-credits nav {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
}
.sq-footer-identity, .sq-footer-credits { justify-content:space-between; gap:0 .75rem; }
.sq-footer-identity .brand { gap:7px; text-decoration:none; }
.sq-footer-identity .brand-mark { width:38px; height:38px; }
.sq-footer-identity .brand > span { font:900 1.17rem/.88 var(--display); letter-spacing:-.05em; }
.sq-footer-social { display:flex; flex-wrap:wrap; gap:0 .85rem; }
.sq-footer-social .sq-social-icon { width:44px; justify-content:center; }
.sq-social-icon img { width:26px; height:26px; object-fit:contain; filter:brightness(0) invert(1); }
.sq-footer-social a, .sq-footer-reader-links a { font:550 .94rem/1.3 var(--body); }
.sq-footer-info { margin:.35rem 0; }
.sq-footer-info summary {
  display:flex; justify-content:space-between; align-items:center; min-height:44px;
  list-style:none; font:600 .97rem/1.4 var(--body); cursor:pointer;
}
.sq-footer-info summary::-webkit-details-marker { display:none; }
.sq-footer-info summary::after {
  content:""; width:8px; height:8px; margin-inline:.5rem;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor;
  transform:rotate(45deg);
}
.sq-footer-info[open] summary::after { transform:rotate(225deg); }
.sq-footer-info summary:focus-visible { outline:2px solid var(--coral); outline-offset:2px; }
.sq-footer-reader-links { align-items:flex-start; flex-direction:column; padding-left:.8rem; border-left:1px solid #806587; margin:0 0 .7rem; }
.sq-footer-credits { padding-top:.45rem; border-top:1px solid #654e69; color:#eadce8; }
.sq-footer-credits small, .sq-footer-credits a { font:400 .79rem/1.4 var(--body); }
.sq-footer-credits nav { gap:0 .9rem; }
.sq-discovery-home { --paper:#fff; }
.sq-discovery-home .sq-discovery-tools input[type="search"] { background-color:var(--paper); }
