/* Toronto Museum Ticket Guide — "tmg-" skeleton. System fonts, local images, no trackers. */
*,::before,::after{box-sizing:border-box}
html,body{margin:0;padding:0}
.tmg-doc{
  font:17px/1.62 ui-serif,"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  color:#191b1f;background:#f6f3ec;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:#7a2e2e;text-decoration:underline;text-underline-offset:3px}
a:hover{color:#4d1a1a}

/* ---------- header ---------- */
.tmg-top{background:#14171f;color:#ece7db;border-bottom:3px solid #c9a227}
.tmg-top-in{max-width:1000px;margin:0 auto;padding:13px 20px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.tmg-logo{display:inline-flex;align-items:center;gap:10px;color:#ece7db;text-decoration:none;font-weight:700;font-size:17px}
.tmg-logo-mark{width:26px;height:26px;background:#c9a227;clip-path:polygon(50% 0,72% 26%,100% 42%,86% 100%,14% 100%,0 42%,28% 26%)}
.tmg-logo-txt{font-family:ui-serif,Georgia,serif}
.tmg-nav{margin-left:auto;display:flex;gap:15px;flex-wrap:wrap;font-size:14.5px}
.tmg-nav a{color:#d8d2c4;text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}
.tmg-nav a:hover{color:#fff;border-bottom-color:#c9a227}
.tmg-nav a.is-on{color:#fff;border-bottom-color:#c9a227;font-weight:700}

/* ---------- hero ---------- */
.tmg-hero{position:relative;background:#14171f url(/assets/img/crystal.svg) center/cover no-repeat;color:#ece7db;padding:66px 0 54px;border-bottom:3px solid #c9a227;overflow:hidden}
.tmg-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,23,31,.25),rgba(20,23,31,.82));pointer-events:none}
.tmg-hero-in{position:relative;z-index:2;max-width:720px;margin:0 auto;padding:0 22px;text-align:center}
.tmg-hero h1{font-size:46px;line-height:1.08;margin:0 0 12px;letter-spacing:-.02em;text-shadow:0 2px 22px rgba(0,0,0,.65)}
.tmg-hero .tmg-sub{color:#e3dcc9;font-size:18.5px;font-style:italic;margin:0 0 10px;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.tmg-hero .tmg-by{color:#a8a08c;font-size:14px;margin:12px 0 0}

/* ---------- body ---------- */
.tmg-main{max-width:730px;margin:0 auto;padding:32px 22px 64px}
.tmg-h1{font-size:33px;line-height:1.15;margin:12px 0 8px;letter-spacing:-.015em}
.tmg-sub{color:#5a4a3f;font-size:17px;font-style:italic;margin:0 0 24px}
.tmg-main h2{font-size:23px;line-height:1.25;margin:34px 0 11px;letter-spacing:-.005em}
.tmg-main h3{font-size:17.5px;margin:24px 0 7px}
.tmg-main p{margin:0 0 16px}
.tmg-main ul,.tmg-main ol{margin:0 0 19px 1.1em;padding:0}
.tmg-main li{margin:0 0 7px}

.tmg-main>article>p:first-of-type::first-letter{float:left;font-size:60px;line-height:.88;padding:6px 10px 0 0;font-weight:700;color:#8b2e2e}

/* figures */
.tmg-fig{margin:26px 0 22px}
.tmg-fig img{border-radius:3px;box-shadow:0 6px 22px rgba(0,0,0,.16)}
.tmg-fig figcaption{font-size:13.5px;color:#6f6156;font-style:italic;margin-top:8px;line-height:1.5}
.tmg-fig figcaption b{color:#4a3d33;font-style:normal}
.tmg-fig.tmg-tilt{background:#fff;padding:13px 13px 44px;transform:rotate(-1.1deg);box-shadow:0 10px 28px rgba(0,0,0,.18);max-width:420px;margin:26px auto}
.tmg-fig.tmg-tilt img{box-shadow:none;border-radius:0}
.tmg-fig.tmg-tilt figcaption{text-align:center;font-size:16px;color:#2b2520;font-style:normal;margin-top:10px}

/* note box */
.tmg-note{background:#fff6e2;border-left:4px solid #c9a227;padding:15px 19px;margin:23px 0;font-size:16px}
.tmg-note strong{color:#7a5a12}

/* pull quote */
.tmg-pull{font-size:21px;line-height:1.42;color:#4d3f34;border-left:3px solid #8b2e2e;padding:3px 0 3px 20px;margin:27px 0;font-style:italic}

/* table */
.tmg-tbl{width:100%;border-collapse:collapse;margin:12px 0 20px;font-size:14.5px}
.tmg-tbl th,.tmg-tbl td{border:1px solid #d6c9b2;padding:9px 10px;text-align:left}
.tmg-tbl th{background:#efe6d2}

/* crumbs */
.tmg-crumbs{font-size:13.5px;color:#77685c;margin:0 0 10px}
.tmg-crumbs a{color:#77685c;text-decoration:none}
.tmg-crumbs a:hover{color:#3b2c22;text-decoration:underline}

/* cards grid on home */
.tmg-cards{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:24px 0}
.tmg-cards a{display:block;padding:15px 17px;background:#fff;border:1px solid #d6c9b2;border-radius:5px;color:#191b1f;text-decoration:none;transition:.15s}
.tmg-cards a:hover{border-color:#c9a227;transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.09)}
.tmg-cards strong{display:block;font-size:15.5px;color:#7a2e2e;margin-bottom:3px}
.tmg-cards small{display:block;color:#77685c;font-size:13.5px;font-style:italic;line-height:1.45}
@media(max-width:580px){.tmg-cards{grid-template-columns:1fr}}

/* related */
.tmg-rel{margin:38px 0 0;padding:20px 0 0;border-top:1px solid #d6c9b2;font-size:14.5px}
.tmg-rel h3{margin:0 0 6px;font-size:13.5px;text-transform:uppercase;letter-spacing:.1em;color:#5a4a3f}

/* faq */
.tmg-faq details{border-top:1px solid #d6c9b2;padding:13px 0}
.tmg-faq details:last-child{border-bottom:1px solid #d6c9b2}
.tmg-faq summary{cursor:pointer;font-weight:700;font-size:17px;padding:3px 0}
.tmg-faq p{margin:9px 0 2px}

/* footer */
.tmg-foot{background:#14171f;color:#b7ae9d;padding:30px 0 24px;margin-top:52px;font-size:14.5px}
.tmg-foot-in{max-width:1000px;margin:0 auto;padding:0 20px}
.tmg-disc{margin:0 0 14px;color:#e2dccd;line-height:1.6}
.tmg-disc strong{color:#fff}
.tmg-foot-nav{display:flex;gap:14px;flex-wrap:wrap;margin:0 0 14px}
.tmg-foot-nav a{color:#b7ae9d}
.tmg-foot-nav a:hover{color:#fff}
.tmg-copy{margin:0;color:#8a8272;font-size:13.5px}
.tmg-credit{margin:10px 0 0;color:#7d7566;font-size:11.5px;line-height:1.5}

@media(max-width:640px){
  .tmg-doc{font-size:16px}
  .tmg-nav{font-size:13.8px;gap:10px}
  .tmg-hero{padding:48px 0 36px}
  .tmg-hero h1{font-size:33px}
  .tmg-h1{font-size:27px}
}

/* ---------- date stamp under the header ---------- */
.tmg-stamp{font-size:12.5px;color:#8a7c6e;letter-spacing:.03em;margin:0 0 18px;text-transform:none;font-style:italic}

/* ---------- 2024-03-09: old hero, kept in case we go back ----------
.tmg-hero-old{background:#0b0e14 url(/assets/img/crystal.svg) no-repeat center/cover;min-height:420px}
.tmg-hero-old h1{font-size:38px;color:#f0e9d8}
------------------------------------------------------------------- */

/* ---------- 2024-06-14: unused, was for the events strip ----------
.tmg-events-strip{display:flex;gap:10px;overflow-x:auto;padding:12px 0}
.tmg-events-strip .tmg-ev{min-width:180px;border:1px solid #d6c9b2;border-radius:4px;padding:10px}
------------------------------------------------------------------- */

/* ---------- 2025-01-22: retired, replaced by .tmg-cards ----------
.tmg-list-legacy{margin:20px 0;padding:0;list-style:none}
.tmg-list-legacy li{padding:8px 0;border-bottom:1px dotted #d6c9b2}
.tmg-list-legacy li:last-child{border-bottom:none}
------------------------------------------------------------------- */

/* ---------- unused utility classes (left over from earlier builds) ---------- */
.tmg-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.tmg-clearfix::after{content:"";display:table;clear:both}
.tmg-hidden{display:none !important}
.tmg-mt-0{margin-top:0 !important}
.tmg-mb-0{margin-bottom:0 !important}
.tmg-tc{text-align:center}
.tmg-small{font-size:13.5px}
.tmg-muted{color:#8a7c6e}
.tmg-warn{color:#a03a2a}
.tmg-archive-note{background:#f2ece0;border:1px dashed #d6c9b2;padding:10px 14px;font-size:13.5px;color:#6f6156}
.tmg-badge-soon{display:inline-block;padding:2px 7px;border-radius:3px;background:#efe6d2;color:#7a5a12;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
