body.tce-blog-hub-view { background:#07080b !important; }
.tce-blog-hub { --hub-bg:#07080b; --hub-surface:#101218; --hub-card:#151820; --hub-line:rgba(255,255,255,.10); --hub-text:#f7f8fb; --hub-muted:#a9afbd; --hub-a:#36c7ff; --hub-b:#7a5cff; --hub-c:#ff4fd8; width:100%; overflow:hidden; background:var(--hub-bg); color:var(--hub-text); }
.tce-blog-hub *, .tce-blog-hub *:before, .tce-blog-hub *:after { box-sizing:border-box; }
.tce-blog-hub a { text-decoration:none; }
.tce-blog-hub-inner { width:min(1240px, calc(100% - 40px)); margin:0 auto; }
.tce-blog-hero { position:relative; isolation:isolate; padding:118px 0 78px; min-height:490px; display:grid; align-items:end; background:radial-gradient(circle at 78% 8%,rgba(122,92,255,.33),transparent 34%),radial-gradient(circle at 18% 14%,rgba(54,199,255,.16),transparent 31%),linear-gradient(180deg,#0b0d12 0%,#07080b 100%); border-bottom:1px solid var(--hub-line); }
.tce-blog-hero:after { content:""; position:absolute; inset:auto 0 0; height:2px; background:linear-gradient(90deg,transparent,var(--hub-a),var(--hub-b),var(--hub-c),transparent); opacity:.8; }
.tce-blog-hero-glow { position:absolute; z-index:-1; width:560px; height:560px; right:-120px; bottom:-300px; border-radius:50%; background:radial-gradient(circle,rgba(255,79,216,.18),transparent 67%); filter:blur(20px); }
.tce-blog-kicker { display:inline-flex; color:#cbd0dc; font-size:11px; font-weight:900; letter-spacing:.18em; }
.tce-blog-hero h1 { max-width:980px; margin:18px 0 20px; color:#fff; font-size:clamp(48px,7.1vw,92px); line-height:.94; letter-spacing:-.052em; }
.tce-blog-hero p { max-width:760px; margin:0; color:#c7ccd7; font-size:clamp(17px,2vw,21px); line-height:1.6; }
.tce-blog-hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.tce-blog-hero-actions a { display:inline-flex; min-height:46px; align-items:center; justify-content:center; padding:0 18px; border:1px solid rgba(255,255,255,.17); border-radius:999px; color:#fff !important; background:rgba(255,255,255,.045); font-size:12px; font-weight:850; letter-spacing:.045em; backdrop-filter:blur(9px); transition:transform .2s ease,border-color .2s ease,background .2s ease; }
.tce-blog-hero-actions a:hover { transform:translateY(-2px); border-color:rgba(255,255,255,.35); background:rgba(255,255,255,.08); }
.tce-blog-hero-actions .tce-blog-primary-cta { border:0; background:linear-gradient(100deg,var(--hub-a),var(--hub-b) 55%,var(--hub-c)); box-shadow:0 12px 34px rgba(87,84,255,.26); }
.tce-blog-filter-shell { position:relative; z-index:5; border-bottom:1px solid var(--hub-line); background:rgba(7,8,11,.94); backdrop-filter:blur(16px); }
.tce-blog-filter-shell .tce-blog-hub-inner { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,360px); gap:22px; align-items:center; padding:18px 0; }
.tce-blog-chips { display:flex; gap:8px; overflow:auto; scrollbar-width:none; padding:2px 0; }
.tce-blog-chips::-webkit-scrollbar { display:none; }
.tce-blog-chips a { flex:0 0 auto; padding:9px 13px; border:1px solid rgba(255,255,255,.10); border-radius:999px; color:#9ea6b5 !important; background:#0d0f14; font-size:10px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.tce-blog-chips a:hover,.tce-blog-chips a.is-active { color:#fff !important; border-color:rgba(112,215,255,.55); background:linear-gradient(110deg,rgba(54,199,255,.15),rgba(122,92,255,.14)); }
.tce-blog-search { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.tce-blog-search input { width:100%; min-height:42px; border:1px solid rgba(255,255,255,.12); border-radius:999px; outline:0; padding:0 15px; color:#fff; background:#0d0f14; font:inherit; font-size:12px; }
.tce-blog-search input::placeholder { color:#697181; }
.tce-blog-search button { min-height:42px; border:0; border-radius:999px; padding:0 17px; color:#fff; background:#20242e; font-size:11px; font-weight:850; cursor:pointer; }
.tce-blog-section { padding:72px 0; }
.tce-blog-featured-section { background:linear-gradient(180deg,#090b10,#07080b); }
.tce-blog-section-heading { display:flex; justify-content:space-between; gap:20px; align-items:end; margin-bottom:28px; }
.tce-blog-section-heading span { display:block; margin-bottom:7px; color:#747d8e; font-size:10px; font-weight:900; letter-spacing:.16em; }
.tce-blog-section-heading h2 { margin:0; color:#fff; font-size:clamp(31px,4vw,48px); line-height:1.02; letter-spacing:-.035em; }
.tce-blog-section-heading > a,.tce-blog-section-heading > p { margin:0; color:#838b9b !important; font-size:11px; font-weight:800; letter-spacing:.06em; }
.tce-blog-feature-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(390px,.75fr); gap:14px; }
.tce-blog-feature-stack { display:grid; grid-template-columns:1fr; grid-template-rows:repeat(2,minmax(0,1fr)); gap:14px; }
.tce-blog-feature { min-width:0; transition:transform .24s ease; }
.tce-blog-feature-media { position:relative; display:block; height:100%; min-height:240px; overflow:hidden; border:1px solid rgba(82,198,255,.30); border-radius:20px; background:#11141b; box-shadow:0 0 0 1px rgba(122,92,255,.08),0 0 22px rgba(54,199,255,.10),0 0 34px rgba(122,92,255,.07); transition:border-color .24s ease,box-shadow .24s ease,transform .24s ease; }
.tce-blog-feature.is-primary .tce-blog-feature-media { min-height:565px; }
.tce-blog-feature img { width:100%; height:100%; object-fit:cover; object-position:center top; transform-origin:center top; transition:transform .55s ease; }
.tce-blog-feature:hover { transform:translateY(-3px); }
.tce-blog-feature:hover .tce-blog-feature-media { border-color:rgba(112,215,255,.68); box-shadow:0 0 0 1px rgba(255,79,216,.18),0 0 24px rgba(54,199,255,.26),0 0 46px rgba(122,92,255,.20),0 0 64px rgba(255,79,216,.11); }
.tce-blog-feature:hover img { transform:scale(1.035); }
.tce-blog-feature-overlay { position:absolute; inset:0; background:linear-gradient(0deg,rgba(5,6,9,.96) 0%,rgba(5,6,9,.56) 40%,rgba(5,6,9,.08) 72%); }
.tce-blog-feature-copy { position:absolute; left:0; right:0; bottom:0; padding:22px; }
.tce-blog-feature-copy h2 { margin:10px 0 7px; color:#fff; font-size:clamp(18px,2.2vw,29px); line-height:1.04; letter-spacing:-.025em; }
.tce-blog-feature.is-primary .tce-blog-feature-copy { padding:32px; }
.tce-blog-feature.is-primary .tce-blog-feature-copy h2 { max-width:720px; font-size:clamp(34px,4.5vw,59px); }
.tce-blog-feature-copy p { margin:0; color:#aeb5c2; font-size:11px; }
.tce-blog-category-badge { display:inline-flex; max-width:calc(100% - 20px); padding:6px 10px; border:1px solid rgba(112,215,255,.58); border-radius:999px; color:#fff; background:linear-gradient(110deg,rgba(54,199,255,.18),rgba(122,92,255,.18) 58%,rgba(255,79,216,.16)),rgba(7,8,11,.76); backdrop-filter:blur(9px); box-shadow:0 0 0 1px rgba(122,92,255,.10),0 0 12px rgba(54,199,255,.24),0 0 20px rgba(122,92,255,.12); text-shadow:0 0 9px rgba(255,255,255,.24); font-size:9px; line-height:1.1; font-weight:900; letter-spacing:.09em; text-transform:uppercase; transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease; }
.tce-blog-feature:hover .tce-blog-category-badge,.tce-blog-story-card:hover .tce-blog-category-badge { border-color:rgba(151,228,255,.92); box-shadow:0 0 0 1px rgba(255,79,216,.18),0 0 16px rgba(54,199,255,.42),0 0 28px rgba(122,92,255,.26),0 0 34px rgba(255,79,216,.14); transform:translateY(-1px); }
.tce-blog-card-placeholder { position:absolute; inset:0; display:grid; place-items:center; background:radial-gradient(circle at 30% 20%,rgba(54,199,255,.18),transparent 35%),radial-gradient(circle at 70% 80%,rgba(255,79,216,.18),transparent 35%),#101218; color:#596172; font-size:10px; font-weight:900; letter-spacing:.2em; }
.tce-blog-latest { border-top:1px solid var(--hub-line); background:#07080b; }
.tce-blog-story-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.tce-blog-story-card { overflow:hidden; border:1px solid rgba(82,198,255,.25); border-radius:18px; background:#101218; box-shadow:0 0 0 1px rgba(122,92,255,.06),0 0 18px rgba(54,199,255,.08),0 0 30px rgba(122,92,255,.05); transition:transform .23s ease,border-color .23s ease,box-shadow .23s ease; }
.tce-blog-story-card:hover { transform:translateY(-5px); border-color:rgba(112,215,255,.66); box-shadow:0 18px 45px rgba(0,0,0,.30),0 0 0 1px rgba(255,79,216,.14),0 0 22px rgba(54,199,255,.24),0 0 42px rgba(122,92,255,.18),0 0 58px rgba(255,79,216,.09); }
.tce-blog-card-media { position:relative; display:block; aspect-ratio:16/10; overflow:hidden; background:#0b0d12; }
.tce-blog-card-media img { width:100%; height:100%; object-fit:cover; object-position:center top; transform-origin:center top; transition:transform .5s ease; }
.tce-blog-story-card:hover .tce-blog-card-media img { transform:scale(1.04); }
.tce-blog-card-shade { position:absolute; inset:0; background:linear-gradient(0deg,rgba(5,6,9,.45),transparent 45%); }
.tce-blog-card-media .tce-blog-category-badge { position:absolute; left:14px; bottom:13px; }
.tce-blog-card-copy { padding:20px 20px 22px; }
.tce-blog-card-meta { color:#747d8e; font-size:9px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.tce-blog-card-meta span { margin:0 5px; }
.tce-blog-card-copy h3 { margin:10px 0 10px; color:#fff; font-size:clamp(20px,2vw,27px); line-height:1.08; letter-spacing:-.026em; }
.tce-blog-card-copy h3 a { color:#fff !important; }
.tce-blog-card-copy p { min-height:66px; margin:0; color:#9fa7b6; font-size:13px; line-height:1.62; }
.tce-blog-read-link { display:inline-flex; margin-top:16px; color:#70d7ff !important; font-size:10px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.tce-blog-read-link span { margin-left:6px; transition:transform .2s ease; }
.tce-blog-read-link:hover span { transform:translateX(4px); }
.tce-blog-pagination { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; margin-top:38px; }
.tce-blog-pagination a { display:grid; min-width:40px; height:40px; place-items:center; padding:0 12px; border:1px solid var(--hub-line); border-radius:999px; color:#b7bdc9 !important; background:#0d0f14; font-size:11px; font-weight:850; }
.tce-blog-pagination a.is-current,.tce-blog-pagination a:hover { color:#fff !important; border-color:transparent; background:linear-gradient(100deg,var(--hub-a),var(--hub-b) 55%,var(--hub-c)); }
.tce-blog-empty { padding:60px 24px; border:1px solid var(--hub-line); border-radius:18px; text-align:center; background:#0d0f14; }
.tce-blog-empty h3 { margin:0 0 8px; color:#fff; font-size:30px; }
.tce-blog-empty p { color:#939baa; }
.tce-blog-empty a { color:#70d7ff !important; font-weight:850; }
.tce-blog-explore { padding:76px 0; border-top:1px solid var(--hub-line); background:radial-gradient(circle at 50% 0%,rgba(122,92,255,.14),transparent 45%),#0a0c11; }
.tce-blog-explore-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.tce-blog-explore-grid a { min-height:195px; display:flex; flex-direction:column; justify-content:flex-end; padding:22px; border:1px solid var(--hub-line); border-radius:18px; color:#fff !important; background:linear-gradient(145deg,rgba(54,199,255,.06),rgba(122,92,255,.05) 55%,rgba(255,79,216,.04)),#101218; transition:transform .22s ease,border-color .22s ease; }
.tce-blog-explore-grid a:hover { transform:translateY(-4px); border-color:rgba(112,215,255,.28); }
.tce-blog-explore-grid span { margin-bottom:7px; color:#70798a; font-size:9px; font-weight:900; letter-spacing:.15em; }
.tce-blog-explore-grid strong { font-size:24px; line-height:1.06; letter-spacing:-.02em; }
.tce-blog-explore-grid small { margin-top:10px; color:#9aa2b1; font-size:12px; line-height:1.5; }
.tce-blog-hub-ad { padding:32px 0 58px; border-top:1px solid var(--hub-line); background:#07080b; }
.tce-blog-hub-ad .tce-blog-sponsored-ad { color:#7f8798; }
.tce-blog-hub-ad hr { border:0; border-top:1px solid var(--hub-line); }
@media (min-width:1021px) {
  /* Desktop: two taller secondary feature cards form a true sub-featured rail. */
  .tce-blog-feature:not(.is-primary) .tce-blog-feature-copy { padding:22px; }
  .tce-blog-feature:not(.is-primary) .tce-blog-feature-copy h2 { max-width:95%; font-size:clamp(20px,1.25vw,24px); line-height:1.06; letter-spacing:-.02em; }
}
@media (max-width:1020px) {
  .tce-blog-feature-grid { grid-template-columns:1fr; }
  .tce-blog-feature-stack { grid-template-columns:1fr 1fr; grid-template-rows:auto; }
  .tce-blog-feature.is-primary .tce-blog-feature-media { min-height:480px; }
  .tce-blog-story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tce-blog-explore-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .tce-blog-hub-inner { width:min(100% - 28px,1240px); }
  .tce-blog-hero { min-height:430px; padding:94px 0 54px; }
  .tce-blog-hero h1 { font-size:clamp(43px,13vw,67px); }
  .tce-blog-hero p { font-size:16px; }
  .tce-blog-filter-shell .tce-blog-hub-inner { grid-template-columns:1fr; gap:12px; padding:14px 0; }
  .tce-blog-section { padding:52px 0; }
  .tce-blog-section-heading { align-items:start; }
  .tce-blog-section-heading > a,.tce-blog-section-heading > p { display:none; }
  .tce-blog-feature-stack { grid-template-columns:1fr; grid-template-rows:auto; }
  .tce-blog-feature.is-primary .tce-blog-feature-media { min-height:440px; }
  .tce-blog-feature-media { min-height:290px; }
  .tce-blog-feature.is-primary .tce-blog-feature-copy { padding:24px; }
  .tce-blog-feature.is-primary .tce-blog-feature-copy h2 { font-size:clamp(31px,9vw,46px); }
  .tce-blog-story-grid { grid-template-columns:1fr; }
  .tce-blog-card-copy p { min-height:0; }
  .tce-blog-explore-grid { grid-template-columns:1fr 1fr; }
  .tce-blog-explore-grid a { min-height:165px; padding:18px; }
  .tce-blog-explore-grid strong { font-size:20px; }
}
@media (max-width:480px) {
  .tce-blog-hero-actions { display:grid; grid-template-columns:1fr; }
  .tce-blog-search { grid-template-columns:1fr auto; }
  .tce-blog-explore-grid { grid-template-columns:1fr; }
}

/* =========================================================
   v1.29.3 — Kinetic Editorial Section Headings
   Internal light sweep + illuminated rail for premium newsroom feel.
========================================================= */
.tce-blog-featured-section .tce-blog-section-heading > div,
.tce-blog-latest .tce-blog-section-heading > div {
    position: relative;
    padding-bottom: 11px;
}
.tce-blog-featured-section .tce-blog-section-heading > div::after,
.tce-blog-latest .tce-blog-section-heading > div::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(190px, 72%);
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(54,199,255,.22), #71ddff 30%, #8d77ff 54%, #ff72dc 76%, rgba(255,79,216,.16));
    background-size: 220% 100%;
    box-shadow: 0 0 10px rgba(54,199,255,.32), 0 0 18px rgba(122,92,255,.18);
    animation: tceBlogHeadingRail 4.8s linear infinite;
}

@supports ((-webkit-background-clip:text) or (background-clip:text)) {
    .tce-blog-featured-section .tce-blog-section-heading h2,
    .tce-blog-latest .tce-blog-section-heading h2 {
        color: transparent;
        background-image: linear-gradient(105deg,
            #ffffff 0%,
            #ffffff 24%,
            #87e7ff 34%,
            #ffffff 42%,
            #a795ff 50%,
            #ff8fe5 59%,
            #ffffff 69%,
            #ffffff 100%);
        background-size: 270% 100%;
        background-position: 120% 50%;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        filter: drop-shadow(0 0 8px rgba(78,202,255,.12));
        animation: tceBlogHeadingIlluminate 6.2s cubic-bezier(.45,0,.55,1) infinite;
    }
}

/* Give Blog category pills a brighter branded halo even before hover. */
.tce-blog-feature .tce-blog-category-badge,
.tce-blog-story-card .tce-blog-category-badge {
    border-color: rgba(130,224,255,.72);
    box-shadow: 0 0 0 1px rgba(122,92,255,.14), 0 0 14px rgba(54,199,255,.32), 0 0 24px rgba(122,92,255,.17), 0 0 30px rgba(255,79,216,.07);
    text-shadow: 0 0 10px rgba(255,255,255,.34), 0 0 12px rgba(85,214,255,.22);
}

@keyframes tceBlogHeadingIlluminate {
    0%   { background-position: 135% 50%; filter: drop-shadow(0 0 7px rgba(54,199,255,.10)); }
    42%  { background-position: 45% 50%;  filter: drop-shadow(0 0 11px rgba(122,92,255,.20)); }
    68%  { background-position: -10% 50%; filter: drop-shadow(0 0 12px rgba(255,79,216,.15)); }
    100% { background-position: -135% 50%; filter: drop-shadow(0 0 7px rgba(54,199,255,.10)); }
}
@keyframes tceBlogHeadingRail {
    0%   { background-position: 120% 50%; opacity: .62; }
    45%  { opacity: 1; }
    100% { background-position: -120% 50%; opacity: .62; }
}

@media (prefers-reduced-motion: reduce) {
    .tce-blog-featured-section .tce-blog-section-heading h2,
    .tce-blog-latest .tce-blog-section-heading h2,
    .tce-blog-featured-section .tce-blog-section-heading > div::after,
    .tce-blog-latest .tce-blog-section-heading > div::after {
        animation: none !important;
        background-position: 50% 50%;
    }
}

/* =========================================================
   v1.29.4 — Premium Explore / Night-Out Signature Treatment
========================================================= */
.tce-blog-explore .tce-blog-section-heading > div {
    position: relative;
    padding-bottom: 11px;
}
.tce-blog-explore .tce-blog-section-heading > div::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(220px,72%);
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(54,199,255,.22), #71ddff 30%, #8d77ff 54%, #ff72dc 76%, rgba(255,79,216,.16));
    background-size: 220% 100%;
    box-shadow: 0 0 10px rgba(54,199,255,.34), 0 0 20px rgba(122,92,255,.20);
    animation: tceBlogHeadingRail 4.8s linear infinite;
}
@supports ((-webkit-background-clip:text) or (background-clip:text)) {
    .tce-blog-explore .tce-blog-section-heading h2 {
        color: transparent;
        background-image: linear-gradient(105deg,
            #ffffff 0%,
            #ffffff 24%,
            #87e7ff 34%,
            #ffffff 42%,
            #a795ff 50%,
            #ff8fe5 59%,
            #ffffff 69%,
            #ffffff 100%);
        background-size: 270% 100%;
        background-position: 120% 50%;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        filter: drop-shadow(0 0 8px rgba(78,202,255,.12));
        animation: tceBlogHeadingIlluminate 6.4s cubic-bezier(.45,0,.55,1) infinite;
    }
}

.tce-blog-explore-grid a {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border-color: rgba(82,198,255,.30);
    box-shadow: 0 15px 38px rgba(0,0,0,.20),0 0 0 1px rgba(122,92,255,.07),0 0 18px rgba(54,199,255,.10),0 0 30px rgba(122,92,255,.07);
    transition: transform .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease;
}
.tce-blog-explore-grid a::before {
    content: "";
    position: absolute;
    z-index: 3;
    inset: 0;
    border-radius: inherit;
    padding: 1px;
    pointer-events: none;
    opacity: .48;
    background: linear-gradient(135deg,rgba(90,221,255,.84),rgba(122,92,255,.58) 52%,rgba(255,79,216,.68));
    -webkit-mask: linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    transition: opacity .24s ease;
}
.tce-blog-explore-grid a::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 150px;
    height: 150px;
    right: -60px;
    top: -60px;
    border-radius: 50%;
    background: radial-gradient(circle,rgba(122,92,255,.18),rgba(54,199,255,.06) 48%,transparent 70%);
    filter: blur(8px);
    opacity: .72;
    transition: transform .35s ease,opacity .35s ease;
}
.tce-blog-explore-grid a:hover,
.tce-blog-explore-grid a:focus-visible {
    transform: translateY(-6px);
    border-color: rgba(124,225,255,.78);
    background: linear-gradient(145deg,rgba(54,199,255,.095),rgba(122,92,255,.085) 55%,rgba(255,79,216,.07)),#101218;
    box-shadow: 0 25px 58px rgba(0,0,0,.32),0 0 0 1px rgba(255,79,216,.18),0 0 24px rgba(54,199,255,.32),0 0 46px rgba(122,92,255,.24),0 0 66px rgba(255,79,216,.12);
    outline: none;
}
.tce-blog-explore-grid a:hover::before,
.tce-blog-explore-grid a:focus-visible::before { opacity: .98; }
.tce-blog-explore-grid a:hover::after,
.tce-blog-explore-grid a:focus-visible::after { transform: scale(1.32) translate(-10px,10px); opacity: 1; }

/* Eyebrows behave like the glowing category pills used on editorial/event cards. */
.tce-blog-explore-grid a > span {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    margin-bottom: 11px;
    padding: 6px 10px;
    border: 1px solid rgba(112,215,255,.58);
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(110deg,rgba(54,199,255,.17),rgba(122,92,255,.17) 58%,rgba(255,79,216,.15)),rgba(7,8,11,.76);
    box-shadow: 0 0 0 1px rgba(122,92,255,.10),0 0 12px rgba(54,199,255,.24),0 0 20px rgba(122,92,255,.12);
    text-shadow: 0 0 9px rgba(255,255,255,.24);
    transition: border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}
.tce-blog-explore-grid a:hover > span,
.tce-blog-explore-grid a:focus-visible > span {
    border-color: rgba(151,228,255,.94);
    box-shadow: 0 0 0 1px rgba(255,79,216,.18),0 0 16px rgba(54,199,255,.42),0 0 28px rgba(122,92,255,.26),0 0 34px rgba(255,79,216,.14);
    transform: translateY(-1px);
}
.tce-blog-explore-grid a > strong {
    text-shadow: 0 0 18px rgba(255,255,255,.05);
    transition: text-shadow .22s ease;
}
.tce-blog-explore-grid a:hover > strong,
.tce-blog-explore-grid a:focus-visible > strong {
    text-shadow: 0 0 12px rgba(255,255,255,.16),0 0 20px rgba(54,199,255,.10);
}

@media (prefers-reduced-motion: reduce) {
    .tce-blog-explore .tce-blog-section-heading h2,
    .tce-blog-explore .tce-blog-section-heading > div::after {
        animation: none !important;
        background-position: 50% 50%;
    }
    .tce-blog-explore-grid a,
    .tce-blog-explore-grid a::before,
    .tce-blog-explore-grid a::after,
    .tce-blog-explore-grid a > span {
        transition: none !important;
    }
}

/* =========================================================
   v1.30.0 — Two-row filters + Load More newsroom flow
========================================================= */
.tce-blog-chips {
    flex-wrap: wrap;
    overflow: visible;
    align-content: center;
    row-gap: 8px;
}
.tce-blog-filter-shell .tce-blog-hub-inner {
    align-items: center;
}
.tce-blog-load-more-wrap {
    display:flex;
    justify-content:center;
    margin-top:38px;
}
.tce-blog-load-more {
    min-width:210px;
    min-height:48px;
    padding:0 24px;
    border:1px solid rgba(112,215,255,.48);
    border-radius:999px;
    color:#fff;
    background:linear-gradient(110deg,rgba(54,199,255,.14),rgba(122,92,255,.15) 52%,rgba(255,79,216,.12));
    box-shadow:0 0 18px rgba(54,199,255,.10),0 0 28px rgba(122,92,255,.08);
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    cursor:pointer;
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,opacity .2s ease;
}
.tce-blog-load-more:hover {
    transform:translateY(-2px);
    border-color:rgba(132,226,255,.85);
    box-shadow:0 0 24px rgba(54,199,255,.25),0 0 42px rgba(122,92,255,.20),0 0 54px rgba(255,79,216,.10);
}
.tce-blog-load-more.is-loading,
.tce-blog-load-more:disabled { opacity:.68; cursor:wait; transform:none; }
@media (max-width:760px) {
    .tce-blog-chips { flex-wrap:wrap; overflow:visible; }
    .tce-blog-filter-shell .tce-blog-hub-inner { gap:14px; }
}
@media (min-width:761px) {
    .tce-blog-chips {
        display:grid;
        grid-template-columns:repeat(4,max-content);
        align-items:center;
        justify-content:start;
    }
}

/* =========================================================
   v1.30.1 — Single-line auto-scrolling Blog category rail
========================================================= */
.tce-blog-filter-shell .tce-blog-hub-inner {
    grid-template-columns:minmax(0,1fr) minmax(260px,360px);
    gap:18px;
    align-items:center;
}
.tce-blog-chips {
    display:flex !important;
    flex-wrap:nowrap !important;
    min-width:0;
    gap:8px;
    overflow-x:auto !important;
    overflow-y:hidden;
    align-content:initial;
    scroll-behavior:smooth;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    padding:4px 2px 5px;
}
.tce-blog-chips::-webkit-scrollbar { display:none; }
.tce-blog-chips a { scroll-snap-align:start; }
@media (max-width:760px) {
    .tce-blog-filter-shell .tce-blog-hub-inner {
        grid-template-columns:1fr;
        gap:12px;
    }
    .tce-blog-chips {
        display:flex !important;
        flex-wrap:nowrap !important;
        overflow-x:auto !important;
    }
}


/* =========================================================
   v1.30.38 — Blog-card actions + Featured "Read Story"
   ---------------------------------------------------------
   Reuses the My Toronto Save heart and branded Share control on every
   Featured/Trending and Latest Story card without nesting buttons in links.
========================================================= */
.tce-blog-feature,
.tce-blog-story-card { position:relative; }
.tce-blog-card-actions {
  position:absolute;
  z-index:12;
  top:14px;
  right:14px;
  display:flex;
  align-items:center;
  gap:8px;
}
.tce-blog-card-actions .tce-my-save-card,
.tce-blog-card-actions .tce-my-share-card {
  position:static!important;
  top:auto!important;
  right:auto!important;
  display:grid!important;
  place-items:center;
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:50%!important;
  background:rgba(5,8,14,.84)!important;
  color:#fff!important;
  box-shadow:0 8px 24px rgba(0,0,0,.28),0 0 16px rgba(54,199,255,.08);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.tce-blog-card-actions .tce-my-save-card:hover,
.tce-blog-card-actions .tce-my-share-card:hover {
  border-color:rgba(123,224,255,.72)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.32),0 0 20px rgba(54,199,255,.22),0 0 28px rgba(122,92,255,.13);
}
.tce-blog-card-actions .tce-my-save-card [data-tce-save-label] { display:none!important; }
.tce-blog-card-actions .tce-my-heart { font-size:20px; }
.tce-blog-card-actions .tce-my-share-card { font-size:18px; }
.tce-blog-feature-read {
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:14px;
  color:#77dcff;
  font-size:10px;
  font-weight:950;
  letter-spacing:.105em;
  line-height:1;
  text-transform:uppercase;
  text-shadow:0 0 12px rgba(54,199,255,.18);
}
.tce-blog-feature-read > span { transition:transform .2s ease; }
.tce-blog-feature-media:hover .tce-blog-feature-read > span { transform:translateX(4px); }
@media (max-width:760px) {
  .tce-blog-card-actions { top:11px; right:11px; gap:7px; }
  .tce-blog-card-actions .tce-my-save-card,
  .tce-blog-card-actions .tce-my-share-card {
    width:39px!important;
    min-width:39px!important;
    height:39px!important;
    min-height:39px!important;
  }
}
