/* TTO Today in Tallaght */
.ttot{--navy:#1f2d4a;--blue:#1a5fb4;--ink:#1f2d4a;--muted:#4a5568;--line:#e3e8e3;
	font-family:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);
	max-width:1200px;margin:-36px auto 24px;padding:0 16px;position:relative;z-index:5;box-sizing:border-box}
@media (min-width:700px){.ttot{padding:0 24px}}
.ttot[hidden]{display:none!important}
.ttot *,.ttot *::before,.ttot *::after{box-sizing:border-box}
.ttot-card{background:#fff;border-radius:16px;padding:18px 20px 20px;box-shadow:0 4px 18px rgba(31,45,74,.14);display:flex;flex-direction:column;gap:14px}
.ttot-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}
.ttot-h{margin:0;font:700 24px/1.2 Fraunces,Georgia,serif;color:var(--ink)}
.ttot-date{font:600 15px "Public Sans",sans-serif;color:var(--muted)}
.ttot-upd{font-size:13px;color:var(--muted)}
.ttot-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.ttot-tile{display:flex;flex-direction:column;gap:8px;padding:16px 18px;border-radius:12px;background:#fff;border:2px solid var(--line);color:var(--ink);text-decoration:none;min-height:150px}
.ttot-tile:hover,.ttot-tile:focus-visible{border-color:var(--navy);color:var(--ink)}
.ttot-tile:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.ttot-loading{background:linear-gradient(90deg,#f1f4f1,#f8faf8,#f1f4f1);border-color:#eef1ee}
.ttot-alert{border-color:#b3261e;background:#fffafa}
.ttot-tile-head{display:flex;align-items:center;gap:10px}
.ttot-ic{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:#eef2f8;color:var(--navy);flex:none}
.ttot-alert .ttot-ic{background:#fdecea;color:#8a1c12}
.ttot-ic-ok{background:#e4f3e9;color:#1d5a37}
.ttot-label{font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.ttot-main{font:700 18px/1.3 Fraunces,Georgia,serif}
.ttot-alert .ttot-main{color:#8a1c12}
.ttot-sub{font-size:14px;line-height:1.45;color:#333d4f}
.ttot-link{margin-top:auto;font-size:14px;font-weight:700;color:var(--blue)}

/* phone: tiles become compact rows */
@media (max-width:560px){
	.ttot{margin-top:-28px;padding:0 12px}
	.ttot-card{padding:14px 14px 6px;gap:6px}
	.ttot-h{font-size:20px}
	.ttot-date,.ttot-upd{display:none}
	.ttot-tiles{display:flex;flex-direction:column;gap:0}
	.ttot-tile{display:grid;grid-template-columns:38px minmax(0,1fr) 14px;grid-template-rows:auto auto;column-gap:12px;row-gap:2px;align-items:center;min-height:64px;padding:12px 4px;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}
	.ttot-alert{background:transparent}
	.ttot-tile-head{display:contents}
	.ttot-ic{grid-column:1;grid-row:1/3}
	.ttot-label{grid-column:2;grid-row:1;font-size:12px}
	.ttot-main{grid-column:2;grid-row:2;font:700 16px/1.3 "Public Sans",sans-serif}
	.ttot-sub,.ttot-link{display:none}
	.ttot-tile::after{content:"";grid-column:3;grid-row:1/3;width:8px;height:8px;border-right:2.5px solid var(--muted);border-top:2.5px solid var(--muted);transform:rotate(45deg)}
	.ttot-loading{min-height:56px}
}
