/* Homepage only. The existing shared shell and article components stay intact. */
.home-directory{padding-top:20px}
.home-directory .home-search-panel{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding:24px 20px;margin:0 0 24px;background:var(--accent);border:0;border-radius:12px}
.home-directory .home-intro h1{font-size:30px;line-height:1.1;letter-spacing:-.03em;max-width:19ch;text-wrap:balance}
.home-directory .home-intro p{margin:12px 0 0;color:var(--ink);font-size:15px;line-height:1.5;max-width:44ch}
.home-directory .city-search-form{width:100%;min-width:0;margin:0}
.home-directory .city-search-form label{display:block;font-size:14px;font-weight:650;margin-bottom:8px}
.home-directory .city-query-box{gap:8px}
.home-directory .city-query-box input{border-color:transparent;border-radius:8px;min-width:0;height:52px;padding-inline:14px}
.home-directory .city-query-box .button{background:var(--ink);color:#fff;min-height:52px;padding:12px 16px;flex:none;border:0;font-size:14px;white-space:nowrap}
.home-directory .city-query-box .button:hover{background:#34444b}
.home-directory .home-city-section{background:#fff;border:1px solid var(--line);border-radius:12px;margin:0 0 32px;padding:8px 16px 0}
.home-directory .section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:12px 0}
.home-directory .section-heading h2{font-size:21px;line-height:1.2;margin:0;max-width:22ch}
.home-directory .section-heading>.text-link{padding:0;min-height:44px;display:inline-flex;align-items:center;flex:none;font-size:13px;margin:0;white-space:nowrap}
.home-directory .home-city-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;margin:0}
.home-directory .home-city-links a{min-height:54px;height:100%;padding:10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;font-size:14px;font-weight:550;gap:8px;overflow-wrap:normal}
.home-directory .home-city-links a:after{color:#586268;font-size:20px}
.home-directory .home-city-links a:hover{background:none;color:#625000;text-decoration:underline;text-underline-offset:4px}
.home-directory .home-regions{border:0;border-radius:0;margin:8px 0 0;background:none}
.home-directory .home-regions summary{padding:14px 0;min-height:56px;font-size:14px}
.home-directory .home-regions ul{columns:auto;grid-template-columns:1fr;gap:0 24px;padding:0 0 16px}
.home-directory .home-regions a{font-size:14px}
.home-directory .home-guides{padding:0}
.home-directory .home-guides>.section-heading{padding:0 0 16px}
.home-directory .home-guides>.section-heading h2{max-width:16ch}
.home-directory .guide-topic h3{font-size:18px;line-height:1.3}
.home-directory .guide-topic li a{font-size:14px}
@media(min-width:640px){
 .home-directory .home-search-panel{padding:32px;gap:28px}
 .home-directory .home-intro h1{font-size:38px}
 .home-directory .home-city-section{padding:12px 24px 0}
 .home-directory .home-city-links{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px}
 .home-directory .home-regions ul{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-directory .section-heading h2{font-size:24px}
 .home-directory .section-heading>.text-link{font-size:14px}
}
@media(min-width:960px){
 .home-directory{padding-top:28px}
 .home-directory .home-search-panel{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:56px;padding:36px;margin-bottom:28px}
 .home-directory .home-intro h1{font-size:44px;max-width:19ch}
 .home-directory .home-intro p{font-size:16px;max-width:39ch}
 .home-directory .home-city-section{padding:12px 28px 0;margin-bottom:36px}
 .home-directory .home-city-links{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:32px}
 .home-directory .home-city-links a{min-height:54px;font-size:15px}
 .home-directory .home-regions ul{grid-template-columns:repeat(3,minmax(0,1fr))}
 .home-directory .home-guides>.section-heading h2{max-width:none}
}
@media(max-width:359px){
 .home-directory .home-search-panel{padding:22px 16px}
 .home-directory .home-intro h1{font-size:28px}
 .home-directory .city-query-box .button{padding-inline:12px;font-size:13px}
 .home-directory .home-city-section{padding-inline:14px}
 .home-directory .home-city-links{column-gap:16px}
 .home-directory .home-city-links a{font-size:13px}
 .home-directory .section-heading h2{font-size:19px}
 .home-directory .section-heading>.text-link{font-size:12px}
}
