:root{--navy:#1e2a6d;--mint:#5bb3a9;--light-mint:#edf8f5;--line:#d5e1e3;--ink:#243440}
.preview-note{background:#eef5fa;color:#36495b;font-size:.82rem;padding:4px 0;font-weight:700}
.preview-note span{font-weight:400;margin-left:.8em}
.hero{padding:48px 0 34px}
.hero-copy h1{color:var(--navy);text-wrap:initial}
.search-launch{width:min(100%,680px);background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;margin-top:26px;box-shadow:0 10px 28px #193c5b18}
.launch-intro,.result-heading{display:flex;align-items:baseline;justify-content:space-between;gap:6px 14px;flex-wrap:wrap}
.launch-intro h2{font-size:1.2rem;margin:0 0 10px;color:var(--navy)}
.launch-intro a,.result-heading a{font-weight:700;font-size:.95rem}
#home-search{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}
#home-search-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.match-entry{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:12px 14px;border:1px solid #a3cbc4;border-radius:10px;background:var(--light-mint);color:#154b48;text-decoration:none}
.match-entry strong,.match-entry small{display:block}
.match-entry small{color:#365955;font-size:.86rem}
.category-section{padding-bottom:10px}
.category-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.category-list a{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;min-height:80px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);text-decoration:none}
.category-list a:hover,.match-entry:hover{background:#e0f3ef}
.category-list strong{font-size:.94rem;line-height:1.4}
.category-list small{grid-column:2;color:var(--sub);line-height:1}
.category-icon{grid-row:span 2;display:grid;place-items:center;min-width:43px;height:43px;padding:2px 5px;border-radius:50%;background:#e2f2ee;color:#225851;font-size:.72rem;font-weight:800}
.photo-reel .reel-window{width:100%;margin-inline:0}
.button{background:var(--navy);border-color:var(--navy)}
.button:hover{background:#304387}
.button.secondary{background:white;color:var(--navy);border-color:#8396a9}
#filters .fields{grid-template-columns:repeat(4,minmax(0,1fr))}
#more-filters{margin-top:12px}
#more-filters summary{width:fit-content;cursor:pointer;font-weight:700;color:var(--navy);padding:8px 2px;min-height:44px}
#filter-extra{padding-top:8px}
.result-heading{margin:18px 0 7px}
#count{margin:0;color:var(--navy);font-size:1.22rem}
.active-filters{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}
.active-filters:empty{display:none}
.active-filters a{min-height:44px;display:inline-flex;gap:8px;align-items:center;text-decoration:none;margin-bottom:0}
.result-card{padding:0;overflow:hidden;background:white}
.card-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;width:100%;padding:16px}
.result-card .facility-photo{width:100%;margin:0}
.result-card .facility-photo img{height:150px;border-radius:0}
.result-card figcaption{padding:0 12px}
.photo-placeholder{width:100%;height:150px;display:grid;place-content:center;justify-items:center;gap:5px;background:linear-gradient(145deg,#e8f2f8,#eef8f4);color:#516a7c}
.photo-placeholder span{display:grid;place-items:center;width:40px;height:40px;border:1px solid #a9bec9;border-radius:50%;font-weight:700}
.photo-placeholder small{font-size:.78rem}
.card-style{color:#435969}
.card-facts{width:100%;margin:0 0 14px;font-size:.95rem}
.card-facts div{display:grid;grid-template-columns:2.5em 1fr;gap:.4em;border-top:1px solid var(--line);padding:7px 0}
.listing-outbound .button{border:0;padding-left:0;text-decoration:underline;font-size:.9rem}
.empty-results{grid-column:1/-1}
.detail-intro{display:flex;gap:24px;align-items:flex-start;justify-content:space-between;margin-bottom:20px}
.detail-intro h1{font-size:clamp(1.65rem,4vw,2.65rem);color:var(--navy)}
.detail-intro .facility-photo{flex:0 0 min(38%,420px);margin:0}
.main-outbound .button{background:var(--navy);border-color:var(--navy);color:white}
.main-outbound .button:hover{background:#304387}
.detail-at-a-glance{margin:0 0 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.detail-at-a-glance div{background:#f0f6fb;border:1px solid #dce8ef;border-radius:10px;padding:13px}
.detail-at-a-glance dt{color:var(--navy)}
.facility-notice{padding:10px 14px;margin:0 0 16px;border-left:4px solid #bc7822;background:#fcf5e9;color:#5c411b;font-size:.96rem}
.detail-contents{padding:12px 14px;margin-bottom:20px;border:1px solid var(--line);border-radius:12px}
.detail-contents>strong{display:block;margin-bottom:6px;color:var(--navy)}
.detail-contents ul{display:flex;flex-wrap:wrap;gap:6px 8px;list-style:none;padding:0;margin:0}
.detail-contents button{min-height:44px;padding:5px 12px;background:#edf4fa;border:1px solid #cadde9;border-radius:8px;color:var(--navy);font-size:.94rem;font-weight:700}
.detail-contents button:hover{background:#e0ebf4}
.detail-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.detail-section:last-child{grid-column:1/-1}
.detail-section h2,.detail-sources h2{color:var(--navy);scroll-margin-top:12px}
.detail-section h3{font-size:1.05rem;margin-top:1em}
.detail-section .facts{grid-template-columns:1fr}
.profile-points{margin:0}
.profile-points div{border-left:3px solid var(--mint);padding:5px 0 5px 11px;margin-bottom:8px}
.detail-faq details{border-top:1px solid var(--line)}
.detail-faq summary{min-height:44px;cursor:pointer;padding:9px 0;color:var(--navy);font-weight:700}
.detail-faq p{padding-left:1em}
.detail-sources{margin-top:20px;font-size:.94rem}
.locations ul,.map-places{list-style:none;margin:0;padding:0}
.locations li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;border-top:1px solid var(--line)}
.locations li p{margin:0;font-size:.94rem}
.map-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:18px}
.area-map{position:relative;min-height:300px;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:8px}
.area-map svg{position:absolute;width:100%;height:100%}
.area-map a{position:absolute;top:var(--map-y);left:var(--map-x);transform:translate(-50%,-50%);display:grid;place-items:center;min-height:44px;padding:4px 8px;background:white;border:1px solid #86aaa8;border-radius:100px;font-weight:700;font-size:.86rem;white-space:nowrap;text-decoration:none;color:var(--navy)}
.area-map a[aria-current],.area-map a:hover{background:var(--navy);color:white;border-color:var(--navy)}
.map-sea{position:absolute;left:17%;bottom:7%;color:#235f7d;font-size:.9rem;letter-spacing:.18em}
.area-list{display:flex;flex-wrap:wrap;gap:8px}
.map-places{margin-bottom:12px}
.map-places li{display:grid;padding:5px 0;border-bottom:1px solid var(--line)}
.map-places a{min-height:44px;display:flex;align-items:center}
@media(max-width:760px){
  .hero{padding:28px 0 20px;background-size:cover,100% auto}
  .hero-copy h1 br{display:initial}
  .search-launch{padding:14px;margin-top:17px}
  #home-search,#filters .fields{grid-template-columns:repeat(2,minmax(0,1fr))}
  #home-search-fields,#home-search button{grid-column:1/-1}
  .category-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .category-list a{padding:8px;gap:3px 6px}
  .category-icon{min-width:37px;height:37px}
  .detail-intro{flex-direction:column;gap:12px}
  .detail-intro .facility-photo{flex:auto}
  .detail-at-a-glance,.detail-sections,.map-layout{grid-template-columns:1fr}
  .detail-at-a-glance div{display:grid;grid-template-columns:6.5em 1fr;gap:8px;font-size:.94rem;padding:10px}
  .area-map{min-height:265px}
  .area-map a{font-size:.77rem;padding-inline:6px}
}
@media(max-width:360px){
  .head .brand img{width:78px}
  .head .brand-tagline{font-size:.74rem}
  .category-list a{grid-template-columns:1fr}
  .category-icon{justify-self:start;grid-row:auto}
  .category-list small{grid-column:auto}
}
