:root{--town-ink:#15332c;--town-green:#17614e;--town-moss:#718968;--town-paper:#faf8f2;--town-sand:#f0eadc;--town-gold:#c69848;--town-clay:#ab6247;--town-border:#e3e6dc;--town-muted:#69756e;--town-white:#fff;--town-serif:Georgia,"Times New Roman",serif}
.town-index{padding:94px 0;background:var(--town-paper);border-top:1px solid #eee9de}
.town-index-header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:35px}
.town-index-header .section-head{margin:0;max-width:740px}
.town-index-header .kicker,.town-card-label{color:var(--town-clay)}
.town-index-note{max-width:275px;color:var(--town-muted);font-size:.86rem;line-height:1.7}
.town-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.town-index-card{position:relative;display:block;min-height:235px;padding:26px 24px 22px;border:1px solid var(--town-border);border-radius:18px;background:#fff;transition:transform .2s ease,box-shadow .2s ease}
.town-index-card:hover{transform:translateY(-4px);box-shadow:0 15px 38px rgba(21,51,44,.08)}
.town-card-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;background:var(--town-paper);font-size:1.32rem}
.town-card-label{display:block;margin-top:17px;font-size:.68rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.town-index-card h3{margin-top:5px;color:var(--town-ink);font-family:var(--town-serif);font-size:1.5rem;font-weight:500;line-height:1.16}
.town-index-card p{margin-top:8px;color:var(--town-muted);font-size:.86rem;line-height:1.6}
.town-card-link{display:block;margin-top:17px;color:var(--town-green);font-size:.78rem;font-weight:800}
.town-advertising{padding:84px 0;background:#fff;border-top:1px solid #ecece6}
.town-ad-frame{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:42px;border:1px solid #e8ddca;border-radius:24px;background:linear-gradient(135deg,#fffdf8,#f8f2e7)}
.town-ad-copy+.town-ad-copy{padding-left:30px;border-left:1px solid #e4dbc8}
.town-ad-label{display:inline-block;margin-bottom:12px;color:#92703d;font-size:.69rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.town-ad-copy h2,.town-ad-copy h3{margin:0;color:var(--town-ink);font-family:var(--town-serif);font-size:clamp(1.7rem,3vw,2.35rem);font-weight:500;line-height:1.16}
.town-ad-copy p{margin:12px 0 0;color:#667269;font-size:.93rem;line-height:1.76}
.town-ad-copy[lang="ta"] h3{font-family:Inter,"Noto Sans Tamil","Nirmala UI",Arial,sans-serif;font-size:1.52rem;line-height:1.55}
.town-ad-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px}
.town-ad-button{display:inline-flex;min-height:46px;align-items:center;padding:11px 16px;border-radius:10px;background:var(--town-ink);color:#fff!important;font-size:.82rem;font-weight:800}
.town-ad-phone{color:var(--town-green)!important;font-size:.87rem;font-weight:800}
.guide-body{margin:0;background:var(--town-white);color:var(--town-ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.7}
.guide-body *{box-sizing:border-box}.guide-body a{text-decoration:none}.guide-shell{width:min(1120px,92%);margin:auto}
.guide-header{position:sticky;top:0;z-index:20;border-bottom:1px solid #eae8df;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}
.guide-header-inner{display:flex;min-height:74px;align-items:center;justify-content:space-between;gap:18px}
.guide-brand{display:flex;align-items:center;gap:10px;color:var(--town-ink)}
.guide-brand img{width:132px;height:auto;object-fit:contain}.guide-brand>span{display:none}.guide-brand strong,.guide-brand small{display:block}
.guide-brand strong{font-size:.89rem;letter-spacing:.1em}.guide-brand small{color:var(--town-muted);font-size:.65rem;letter-spacing:.07em}
.guide-header-link{color:var(--town-green);font-size:.84rem;font-weight:800}
.guide-subnav{overflow-x:auto;border-top:1px solid #efede6;background:#fbfaf7;scrollbar-width:none}.guide-subnav::-webkit-scrollbar{display:none}
.guide-subnav-inner{display:flex;gap:20px;min-width:max-content;padding:10px 0}.guide-subnav a{color:#52645a;font-size:.76rem;font-weight:700}.guide-subnav a[aria-current="page"]{color:var(--town-clay)}
.guide-hero{padding:77px 0 69px;background:linear-gradient(130deg,#f6f2e8,#fff 74%);border-bottom:1px solid #eeeade}
.guide-kicker{color:var(--town-clay);font-size:.71rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.guide-hero h1{max-width:790px;margin:14px 0;color:var(--town-ink);font-family:var(--town-serif);font-size:clamp(2.9rem,7vw,5rem);font-weight:500;line-height:1.03;letter-spacing:-.05em}
.guide-lead{max-width:730px;margin:0;color:var(--town-muted);font-size:1.03rem}.guide-main{padding:63px 0 85px}
.guide-section+.guide-section{margin-top:66px}.guide-section-title{margin:0 0 9px;font-family:var(--town-serif);font-size:2rem;font-weight:500;line-height:1.15}
.guide-section-intro{max-width:780px;margin:0 0 26px;color:var(--town-muted)}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.guide-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.guide-card{position:relative;padding:23px;border:1px solid var(--town-border);border-radius:17px;background:#fff}.guide-card-symbol{font-size:1.35rem}
.guide-card-category{display:block;margin-top:11px;color:var(--town-clay);font-size:.67rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.guide-card h2,.guide-card h3{margin:7px 0 8px;color:var(--town-ink);font-family:var(--town-serif);font-size:1.43rem;font-weight:500;line-height:1.2}
.guide-card p{margin:0;color:var(--town-muted);font-size:.88rem}.guide-card a,.guide-source-list a,.guide-inline-link{color:var(--town-green);font-weight:750}
.guide-card-action{display:inline-block;margin-top:16px;font-size:.78rem}.guide-meta{margin-top:13px;padding-top:13px;border-top:1px solid #efeee8;color:#56645a;font-size:.79rem}
.guide-callout{margin-top:28px;padding:21px 23px;border:1px solid #e8dfce;border-radius:15px;background:#fbf8f0;color:#5e655b;font-size:.88rem}
.guide-callout strong{color:var(--town-ink)}.guide-service-list{display:grid;gap:13px}.guide-service{display:grid;grid-template-columns:1fr auto;gap:20px;padding:23px;border:1px solid var(--town-border);border-radius:16px}
.guide-service h2,.guide-service h3{margin:0 0 5px;font-size:1.09rem}.guide-service p{max-width:660px;margin:0;color:var(--town-muted);font-size:.86rem}.guide-service-contact{text-align:right}.guide-service-contact a{display:block;color:var(--town-green);font-weight:850}.guide-service-contact small{display:block;color:var(--town-muted);font-size:.74rem}
.guide-emergency-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.guide-emergency{padding:20px;border:1px solid #eaded0;border-radius:14px;background:#fffaf4}.guide-emergency strong{display:block;color:var(--town-clay);font-size:1.8rem;line-height:1.1}.guide-emergency span{display:block;margin-top:7px;color:var(--town-ink);font-size:.82rem}.guide-emergency a{color:inherit}
.guide-story{padding:27px;border:1px solid var(--town-border);border-radius:17px;background:#fff}.guide-story+.guide-story{margin-top:15px}.guide-story-label{color:var(--town-clay);font-size:.68rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.guide-story h2{margin:7px 0 9px;font-family:var(--town-serif);font-size:1.75rem;font-weight:500;line-height:1.17}.guide-story p{margin:0;color:var(--town-muted)}.guide-story p+p{margin-top:11px}
.guide-directory-cta{margin-top:31px;padding:30px;border-radius:19px;background:#18372e;color:#fff}.guide-directory-cta h2{margin:0;font-family:var(--town-serif);font-size:1.8rem;font-weight:500}.guide-directory-cta p{max-width:720px;color:#dfebe5}.guide-directory-cta a{display:inline-flex;padding:11px 16px;border-radius:9px;background:#e8c675;color:#20332b;font-weight:800}
.guide-source-list{margin:14px 0 0;padding-left:18px;color:var(--town-muted)}.guide-source-list li+li{margin-top:6px}.guide-footer{padding:28px 0;border-top:1px solid var(--town-border);background:#fbfaf7;color:var(--town-muted);font-size:.8rem}.guide-footer-inner{display:flex;justify-content:space-between;gap:20px}.guide-footer a{color:var(--town-green);font-weight:750}
@media(max-width:820px){.town-index-grid,.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.town-index-header{display:block}.town-index-note{max-width:650px;margin-top:12px}.town-ad-frame{grid-template-columns:1fr;padding:29px}.town-ad-copy+.town-ad-copy{padding:24px 0 0;border-top:1px solid #e4dbc8;border-left:0}.guide-emergency-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.town-index,.town-advertising{padding:63px 0}.town-index-grid,.guide-grid,.guide-grid.two{grid-template-columns:1fr}.town-index-card{min-height:0}.town-ad-frame{padding:22px}.guide-hero{padding:57px 0 52px}.guide-main{padding:45px 0 65px}.guide-service{grid-template-columns:1fr;gap:12px}.guide-service-contact{text-align:left}.guide-footer-inner{display:block}.guide-footer-inner div+div{margin-top:8px}.guide-emergency-grid{gap:9px}.guide-emergency{padding:15px}.guide-brand img{width:112px}.guide-header-link{font-size:.75rem}}

/* Local facilities handbook */
.facilities-page{--facility-navy:#0a2533;--facility-green:#17614e;--facility-gold:#e0ad43;--facility-pale:#f3f6f2;--facility-line:#dfe7e2;background:#fff}
.facilities-page .guide-header{position:relative}
.facilities-hero{padding:70px 0;background:linear-gradient(115deg,#071f2c 0%,#0b3440 62%,#17614e 100%);color:#fff}
.facilities-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:64px}
.facilities-hero .guide-kicker{color:#efc56e}
.facilities-hero h1{max-width:760px;margin:13px 0 16px;font-family:var(--town-serif);font-size:clamp(2.75rem,6vw,4.9rem);font-weight:500;line-height:1.02;letter-spacing:-.045em}
.facilities-hero p{max-width:700px;margin:0;color:#d5e3e4;font-size:1.03rem;line-height:1.78}
.facilities-keyfacts{display:grid;gap:1px;overflow:hidden;border:1px solid rgba(255,255,255,.17);border-radius:17px;background:rgba(255,255,255,.17)}
.facilities-keyfacts div{padding:19px 21px;background:rgba(5,27,36,.75)}
.facilities-keyfacts strong,.facilities-keyfacts span{display:block}.facilities-keyfacts strong{color:#fff;font-size:1rem}.facilities-keyfacts span{margin-top:4px;color:#c9dbdd;font-size:.79rem;line-height:1.5}
.facilities-jump{position:sticky;top:0;z-index:18;overflow-x:auto;border-bottom:1px solid #dfe6e2;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);scrollbar-width:none}.facilities-jump::-webkit-scrollbar{display:none}
.facilities-jump-inner{display:flex;gap:8px;min-width:max-content;padding:11px 0}.facilities-jump a{padding:8px 12px;border-radius:999px;color:#36544a;font-size:.76rem;font-weight:800}.facilities-jump a:hover,.facilities-jump a:focus-visible{background:#e8f0ec;color:#124d3c}
.facilities-main{padding-top:35px}.facilities-main .guide-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;color:#75817b;font-size:.76rem}.facilities-main .guide-breadcrumbs a{color:#17614e;font-weight:750}
.facility-overview{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px;padding:30px;border:1px solid var(--facility-line);border-radius:22px;background:linear-gradient(130deg,#f7f9f7,#fff)}
.facility-overline{display:block;color:#a46b24;font-size:.67rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.facility-overview h2{margin:7px 0 8px;font-family:var(--town-serif);font-size:2rem;font-weight:500}.facility-overview p{margin:0;color:#64736c;font-size:.88rem}
.facility-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.facility-overview-grid a{display:grid;grid-template-columns:38px 1fr;align-items:center;padding:15px;border:1px solid #e2e9e5;border-radius:13px;background:#fff;color:#173a30}.facility-overview-grid a>span{grid-row:1/3;font-size:1.35rem}.facility-overview-grid strong,.facility-overview-grid small{display:block}.facility-overview-grid strong{font-size:.86rem}.facility-overview-grid small{color:#718078;font-size:.7rem;line-height:1.35}
.facility-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px}.facility-section-head>div{max-width:760px}.facility-source-link{flex:0 0 auto;margin-bottom:27px;color:#17614e!important;font-size:.76rem;font-weight:850}
.transport-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.transport-card,.transport-note{position:relative;min-height:270px;padding:24px;border:1px solid var(--facility-line);border-radius:18px;background:#fff}.transport-card-featured{border-color:#c9ddd3;background:linear-gradient(150deg,#eef6f1,#fff)}
.transport-mode{display:inline-block;padding:5px 8px;border-radius:6px;background:#edf3ef;color:#17614e;font-size:.61rem;font-weight:900;letter-spacing:.13em}.transport-icon{position:absolute;top:20px;right:22px;font-size:1.45rem}.transport-card h3{margin:26px 0 10px;color:#112f29;font-family:var(--town-serif);font-size:1.5rem;font-weight:500;line-height:1.15}.transport-card p{margin:0;color:#66756e;font-size:.84rem;line-height:1.68}.transport-card p strong{color:#29483f}.transport-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.transport-actions a{padding:7px 10px;border:1px solid #cfe0d8;border-radius:8px;color:#17614e;font-size:.7rem;font-weight:850}.transport-note{display:flex;flex-direction:column;justify-content:end;border:0;background:var(--facility-navy);color:#fff}.transport-note strong{font-family:var(--town-serif);font-size:1.55rem;font-weight:500}.transport-note p{margin:9px 0 0;color:#c9d9dc;font-size:.83rem;line-height:1.65}
.route-board{overflow:hidden;border:1px solid #d9e3de;border-radius:18px}.route-row{display:grid;grid-template-columns:.65fr 1.4fr 1fr;gap:22px;padding:17px 20px;border-top:1px solid #e7ece9;color:#5f6f67;font-size:.82rem;line-height:1.55}.route-row:first-child{border-top:0}.route-row strong{color:#173c31;font-size:.86rem}.route-heading{background:var(--facility-navy);color:#fff;font-size:.66rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.route-row:nth-child(odd):not(.route-heading){background:#f8faf8}
.school-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid #dfe6e2;border-radius:18px;background:#dfe6e2;gap:1px}.school-list article{min-height:136px;padding:18px;background:#fff}.school-list strong,.school-list span,.school-list small{display:block}.school-list strong{color:#15392f;font-family:var(--town-serif);font-size:1.06rem;font-weight:600;line-height:1.28}.school-list span{margin-top:8px;color:#526d63;font-size:.73rem}.school-list small{margin-top:8px;color:#8a7560;font-size:.68rem}.school-list a{color:#17614e;font-weight:850}
.college-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.college-card{padding:27px;border-radius:19px;background:linear-gradient(140deg,#0b2936,#123e43);color:#fff}.college-card:nth-child(2){background:linear-gradient(140deg,#123d31,#1d6a51)}.college-card>span{color:#efc56e;font-size:.65rem;font-weight:900;letter-spacing:.14em}.college-card h3{margin:8px 0 11px;font-family:var(--town-serif);font-size:1.65rem;font-weight:500}.college-card p,.college-card li{color:#d3e1df;font-size:.82rem;line-height:1.65}.college-card ul{margin:15px 0;padding-left:18px}.college-card a{color:#f3cd7b;font-weight:800}.college-link{display:inline-block;margin-top:5px;font-size:.76rem}
.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.health-card{padding:25px;border:1px solid #e0e7e3;border-radius:18px;background:#fff}.health-card.primary{background:#f1f7f3}.health-card.emergency{border-color:#f0d4c9;background:#fff5f0}.health-card>span{color:#a46b24;font-size:.64rem;font-weight:900;letter-spacing:.12em}.health-card h3{margin:8px 0;font-family:var(--town-serif);font-size:1.45rem;font-weight:500}.health-card p,.health-card small{color:#65746d;font-size:.82rem;line-height:1.65}.health-card>a,.health-card p a{color:#17614e;font-weight:900}.health-card.emergency p a{display:inline-block;min-width:42px;color:#a14328;font-size:1rem}
.everyday-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.everyday-grid>a{display:block;min-height:186px;padding:22px;border:1px solid #e0e7e3;border-radius:16px;background:#fff;color:#173b31;transition:transform .18s ease,box-shadow .18s ease}.everyday-grid>a:hover{transform:translateY(-3px);box-shadow:0 13px 30px rgba(11,40,31,.08)}.everyday-grid>a>span{font-size:1.3rem}.everyday-grid h3{margin:13px 0 7px;font-family:var(--town-serif);font-size:1.25rem;font-weight:600}.everyday-grid p{margin:0;color:#68766f;font-size:.8rem;line-height:1.6}
.verify-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;padding:34px;border-radius:22px;background:#f3f6f2}.verify-panel h2{margin:8px 0 10px;font-family:var(--town-serif);font-size:2rem;font-weight:500}.verify-panel p{margin:0;color:#627169;font-size:.86rem}.verify-panel small{display:block;margin-top:14px;color:#92703d;font-weight:750}.verify-panel .guide-source-list{margin:0;padding-left:19px}
@media(max-width:900px){.facilities-hero-grid,.facility-overview{grid-template-columns:1fr}.facilities-hero-grid{gap:34px}.transport-grid,.school-list,.everyday-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.facility-section-head{display:block}.facility-source-link{display:inline-block;margin:0 0 24px}.route-row{grid-template-columns:.7fr 1.3fr}.route-row span:last-child{grid-column:2}.route-heading span:last-child{display:none}.college-grid,.health-grid,.verify-panel{grid-template-columns:1fr}}
@media(max-width:580px){.facilities-hero{padding:52px 0}.facilities-hero h1{font-size:2.75rem}.facilities-keyfacts div{padding:16px}.facilities-main{padding-top:25px}.facility-overview{padding:22px}.facility-overview-grid,.transport-grid,.school-list,.everyday-grid{grid-template-columns:1fr}.transport-card,.transport-note{min-height:0}.transport-card h3{margin-top:22px}.route-row,.route-heading{grid-template-columns:1fr;gap:5px;padding:16px}.route-row span:last-child{grid-column:auto}.route-heading span:not(:first-child){display:none}.route-row strong{font-size:1rem}.college-card,.verify-panel{padding:23px}.facilities-page .guide-section+.guide-section{margin-top:54px}}
