/* Shared public section layout. Shared header and original image proportions stay intact. */
.section-main { padding-bottom:18px; }
.section-breadcrumbs { display:flex; align-items:center; gap:12px; color:#74787e; font-size:11px; margin:2px 0 12px; }
.section-breadcrumbs i { font-size:8px; }
.section-layout { display:grid; grid-template-columns:minmax(0,2.6fr) minmax(280px,1fr); gap:24px; align-items:start; }
.section-column,.section-sidebar { min-width:0; }
.section-intro { min-height:172px; position:relative; display:flex; align-items:center; margin-bottom:20px; isolation:isolate; }
.section-intro>img { position:absolute; width:auto; max-width:65%; height:100%; right:0; top:0; object-fit:contain; opacity:.65; mask-image:linear-gradient(90deg,transparent,#000 35%,#000 90%,transparent); z-index:-2; }
.section-intro:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#fff 28%,#fffffff5 40%,#ffffff66 72%,#ffffff10); z-index:-1; }
.section-intro>div { padding:10px 16px; width:64%; }
.section-intro h1 { font:700 36px/1.15 var(--body); letter-spacing:-1px; margin:0 0 20px; }
.section-intro p { font-size:14px; line-height:1.75; max-width:365px; }
.section-feature { display:grid; grid-template-columns:1.1fr 1fr; padding:14px; gap:22px; margin-bottom:16px; align-items:center; }
.section-feature-image { position:relative; display:block; min-width:0; }
.section-feature-image img { width:100%; height:auto; aspect-ratio:auto; border-radius:4px; }
.section-feature-image .eyebrow { position:absolute; top:10px; left:10px; font-size:11px; }
.section-feature-copy { min-width:0; padding:4px 8px 4px 0; }
.section-story-meta { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:4px 8px; margin-bottom:9px; font-size:10px; }
.section-story-meta>span { color:var(--red); text-transform:uppercase; font:600 11px var(--heading); }
.section-story-meta time { color:#7d8086; font-size:10px; white-space:nowrap; }
.section-feature h2 { font:600 23px/1.3 var(--heading); margin:15px 0 12px; }
.section-feature p { font-size:12px; line-height:1.65; color:#4c5056; margin-bottom:17px; }
.section-feature .btn { font-size:11px; padding:8px 16px; gap:25px; }
.section-stories { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
.section-card { min-width:0; display:flex; flex-direction:column; padding:10px; }
.section-card-image { display:block; border-radius:4px; }
.section-card-image img { width:100%; height:auto; aspect-ratio:auto; border-radius:4px; }
.section-card-copy { display:flex; flex-direction:column; padding:11px 1px 2px; flex:1; }
.section-card .section-story-meta { margin-bottom:8px; }
.section-card h2 { font:600 17px/1.25 var(--heading); letter-spacing:-.15px; margin-bottom:8px; overflow-wrap:break-word; }
.section-card p { font-size:11px; line-height:1.6; color:#4c5056; margin-bottom:6px; }
.section-locked { display:flex; gap:6px; align-items:center; color:#767b81; font-size:10px; margin-top:auto; padding-top:8px; }
.section-feature .section-locked { padding-top:0; margin:0 0 12px; }
.section-locked i { color:var(--red); font-size:9px; }
.section-empty { grid-column:1/-1; padding:25px; border:1px solid var(--line); border-radius:6px; }
.section-pagination { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:9px; margin:20px 0 4px; }
.section-pagination>a,.section-pagination>span { display:grid; place-items:center; min-width:30px; height:32px; border:1px solid transparent; border-radius:4px; font-size:11px; }
.section-pagination>a:hover { border-color:#e3b8ba; background:#fff7f7; }
.section-pagination a[rel] { border-color:var(--line); }
.section-pagination i { font-size:10px; }
.section-pagination .is-current { background:var(--red); color:#fff; border-color:var(--red); font-weight:600; }
.section-pagination .pagination-gap { min-width:16px; }
.section-sidebar { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; }
.section-sidebar>.panel { padding:17px; }
.section-sidebar .section-heading { border:0; margin-bottom:15px; padding-bottom:0; gap:8px; }
.section-sidebar .section-heading h2 { font-size:14px; }
.section-sidebar .section-heading>a { font-size:9px; }
.section-sidebar .expert-list { display:block; }
.section-sidebar .expert-story { gap:13px; padding-bottom:12px; margin-bottom:12px; border-bottom:1px solid var(--line); }
.section-sidebar .expert-story:last-child { border:0; margin-bottom:0; }
.section-sidebar .expert-story>i { font-size:20px; }
.section-sidebar .expert-story h3 { font-size:11px; line-height:1.45; -webkit-line-clamp:3; }
.section-sidebar .expert-story p { font-size:9px; margin-top:5px; }
.section-sidebar .expert-story time { font-size:9px; margin-top:7px; }
.section-sidebar .expert-cta { width:100%; font-size:10px; padding:7px 9px; margin-top:1px; gap:5px; }
.section-sidebar .newsletter-panel>.section-heading { display:none; }
.section-sidebar .newsletter-intro { padding:1px 0 15px; gap:14px; }
.section-sidebar .newsletter-intro>i { font-size:31px; }
.section-sidebar .newsletter-intro h3 { font-size:15px; text-transform:uppercase; }
.section-sidebar .newsletter-intro p { font-size:10px; }
.section-sidebar .newsletter-input { height:37px; }
.section-sidebar .newsletter-input input { padding:8px; font-size:10px; }
.section-sidebar .newsletter-input .btn { font-size:10px; padding:8px 11px; }
.section-sidebar .newsletter-consent { font-size:9px; }
.section-sidebar .event { display:flex; width:100%; gap:13px; border-bottom:1px solid var(--line); margin-bottom:12px; }
.section-sidebar .event:last-child { border:0; margin-bottom:0; }
.section-sidebar .event time { width:47px; }
.section-sidebar .event h3 { font-size:12px; }
.section-sidebar .event p { font-size:10px; }
.section-sidebar .event span { font-size:10px; }
.section-sidebar .events-empty { padding:2px 0; gap:13px; }
.section-sidebar .events-empty>i { font-size:28px; }
.section-sidebar .events-empty h3 { font-size:12px; }
.section-sidebar .events-empty p { font-size:11px; line-height:1.5; }
.section-sidebar .events-empty a { font-size:10px; }
.section-sidebar .podcast-panel { position:relative; padding-bottom:40px; }
.section-sidebar .podcast-panel .section-heading>a { position:absolute; bottom:15px; right:17px; font-size:10px; }
.section-sidebar .podcast-story { grid-template-columns:100px minmax(0,1fr); gap:13px; }
.section-sidebar .podcast-cover { min-height:130px; padding:12px 10px; }
.section-sidebar .podcast-cover img { width:39px; height:auto; }
.section-sidebar .podcast-cover>i { font-size:65px; right:5px; }
.section-sidebar .podcast-copy h3 { font-size:14px; line-height:1.3; }
.section-sidebar .podcast-copy p { font-size:10px; line-height:1.5; }
.section-sidebar .podcast-copy>span { font-size:10px; }
.section-magazine-inner { display:flex; align-items:center; gap:17px; }
.section-covers { display:grid; grid-template-columns:1fr .35fr; align-items:center; flex:1; min-width:0; isolation:isolate; padding-left:3px; }
.section-covers img { height:auto; width:100%; transform:rotate(-5deg); box-shadow:0 1px 4px #0003; z-index:1; }
.section-covers img+img { transform:rotate(7deg); width:220%; max-width:none; margin-left:-120%; z-index:0; }
.section-magazine .btn { font-size:10px; padding:9px; }
.section-more { display:flex; align-items:center; justify-content:flex-end; gap:7px; font-size:10px; margin-top:13px; }
.section-more i { font-size:8px; }
.section-shop { display:flex; align-items:center; gap:19px; }
.section-shop>i { font-size:34px; color:var(--red); flex-shrink:0; }
.section-shop h2 { font:600 14px var(--heading); text-transform:uppercase; margin-bottom:5px; }
.section-shop p { font-size:11px; line-height:1.5; }
.section-shop .section-more { font-size:9px; margin-top:10px; }
.section-sponsor h2 { font:500 11px var(--heading); text-transform:uppercase; color:#777; margin-bottom:12px; }
.section-sponsor img { width:auto; height:auto; max-height:180px; margin:auto; }
.section-partners { padding:16px 22px 19px; margin-top:20px; position:relative; }
.section-partners .section-heading { border:0; margin:0 0 14px; padding:0; }
.section-partners .section-heading h2 { font-size:14px; }
.section-partner-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:24px; align-items:center; }
.section-partner-grid>a { min-width:0; min-height:42px; display:flex; align-items:center; justify-content:center; padding:4px; }
.section-partner-grid img { max-width:100%; max-height:40px; width:auto; height:auto; object-fit:contain; }
.section-all-partners { margin-top:0; }
.section-all-partners summary { position:absolute; right:22px; top:17px; display:flex; gap:8px; align-items:center; font-size:10px; list-style:none; cursor:pointer; }
.section-all-partners[open] .section-partner-grid { border-top:1px solid var(--line); padding-top:18px; margin-top:18px; }
.section-footer { position:relative; padding:32px 0 18px; background:linear-gradient(110deg,#191d20,#23272b); color:#eceeef; }
.section-footer .site-footer { background:none; border:0; padding:0; border-radius:0; }
.section-footer .footer-grid { grid-template-columns:1.35fr .85fr 1.05fr .85fr 1fr; gap:30px; }
.section-footer .footer-grid>section,.section-footer .footer-grid>nav { border:0; padding:0; }
.section-footer .footer-about:before { content:''; display:block; width:64px; height:54px; background:url('../images/tht-logo-3.svg') left center/contain no-repeat; margin-bottom:13px; }
.section-footer .footer-about h2 { display:none; }
.section-footer .footer-grid h2 { font-size:13px; }
.section-footer .footer-grid p,.section-footer .footer-grid nav>a,.section-footer .footer-about>a { font-size:11px; line-height:1.7; }
.section-footer .footer-about p { max-width:240px; }
.section-footer .footer-about>a { color:#eee; }
.section-footer a:hover,.section-footer button:hover { color:#fff; text-decoration:underline; }
.section-footer .social-links { flex-wrap:wrap; }
.section-footer .social-links a { border-color:#a2a4a7; font-size:13px; width:27px; height:27px; }
.section-footer .footer-bottom { border-color:#ffffff1a; color:#b4b7ba; font-size:10px; padding-right:42px; }
.section-back-top { position:absolute; bottom:25px; right:max(24px,calc((100% - 1280px)/2)); display:grid; place-items:center; border:1px solid #b1b4b7; border-radius:50%; height:31px; width:31px; font-size:13px; }
@media(max-width:1250px) {
  .section-layout { grid-template-columns:minmax(0,2.5fr) minmax(270px,1fr); gap:20px; }
  .section-intro { min-height:155px; }
  .section-intro h1 { font-size:33px; margin-bottom:18px; }
  .section-intro p { font-size:13px; }
  .section-feature { padding:12px; gap:18px; }
  .section-feature h2 { font-size:21px; margin:12px 0 10px; }
  .section-feature p { font-size:11px; }
  .section-card { padding:9px; }
  .section-card h2 { font-size:16px; }
  .section-story-meta time { font-size:9px; }
  .section-card p { font-size:10px; }
  .section-sidebar>.panel { padding:15px; }
  .section-sidebar .section-heading h2 { font-size:13px; }
  .section-sidebar .section-heading>a { font-size:8px; }
  .section-sidebar .podcast-panel { padding-bottom:37px; }
  .section-sidebar .podcast-story { grid-template-columns:91px minmax(0,1fr); gap:11px; }
  .section-sidebar .podcast-copy h3 { font-size:13px; }
  .section-sidebar .podcast-cover { min-height:124px; }
  .section-footer .footer-grid { gap:22px; }
}
@media(max-width:1000px) {
  .section-layout { grid-template-columns:minmax(0,1fr) 265px; gap:18px; }
  .section-intro>div { width:80%; padding-left:8px; }
  .section-intro p { max-width:295px; }
  .section-feature { grid-template-columns:1fr; gap:14px; }
  .section-feature-copy { padding:0 3px 4px; }
  .section-feature h2 { font-size:23px; margin-top:9px; }
  .section-stories { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .section-card h2 { font-size:17px; }
  .section-card p { font-size:11px; }
  .section-story-meta { gap:4px 7px; }
  .section-partner-grid { gap:15px; }
}
@media(max-width:760px) {
  .section-layout { grid-template-columns:minmax(0,1fr); gap:24px; }
  .section-intro { min-height:155px; margin-bottom:16px; }
  .section-intro>div { width:65%; }
  .section-feature { grid-template-columns:1fr 1fr; gap:17px; }
  .section-feature h2 { font-size:21px; }
  .section-feature .section-story-meta { font-size:10px; }
  .section-card { padding:11px; }
  .section-card h2 { font-size:20px; }
  .section-card p { font-size:12px; }
  .section-sidebar { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
  .section-sidebar .expert-panel,.section-sidebar .events-panel { grid-column:auto; }
  .section-sidebar .section-heading { flex-wrap:wrap; }
  .section-sidebar .expert-story h3 { font-size:12px; }
  .section-sidebar .expert-cta { white-space:normal; }
  .section-sidebar .newsletter-intro { gap:11px; }
  .section-sidebar .newsletter-intro h3 { font-size:15px; }
  .section-magazine-inner { gap:12px; }
  .section-covers { min-width:70px; }
  .section-partner-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px 22px; }
  .section-footer .footer-grid { grid-template-columns:1.2fr 1fr 1fr; gap:25px; }
  .section-footer .footer-about { grid-column:auto; grid-row:span 2; }
}
@media(max-width:520px) {
  .section-breadcrumbs { font-size:10px; margin-bottom:5px; }
  .section-intro { min-height:163px; }
  .section-intro>div { width:85%; padding:10px 0; }
  .section-intro h1 { font-size:32px; margin-bottom:15px; }
  .section-intro p { font-size:13px; line-height:1.65; max-width:260px; }
  .section-intro>img { max-width:65%; opacity:.45; }
  .section-intro:after { background:linear-gradient(90deg,#fff 8%,#fffffff0 36%,#ffffff66 100%); }
  .section-feature { grid-template-columns:1fr; padding:12px; gap:15px; margin-bottom:15px; }
  .section-feature h2 { font-size:24px; }
  .section-feature p { font-size:13px; }
  .section-feature .btn { font-size:12px; }
  .section-stories { grid-template-columns:minmax(0,1fr); gap:15px; }
  .section-card { padding:12px; }
  .section-card h2 { font-size:23px; line-height:1.25; }
  .section-card p { font-size:13px; line-height:1.6; }
  .section-card-copy { padding-top:13px; }
  .section-story-meta>span { font-size:12px; }
  .section-story-meta time { font-size:10px; }
  .section-locked { font-size:11px; }
  .section-sidebar { grid-template-columns:minmax(0,1fr); }
  .section-sidebar>.panel { padding:18px; }
  .section-sidebar .section-heading h2 { font-size:16px; }
  .section-sidebar .section-heading>a { font-size:10px; }
  .section-sidebar .expert-story h3 { font-size:13px; }
  .section-sidebar .expert-story p,.section-sidebar .expert-story time { font-size:10px; }
  .section-sidebar .expert-cta { font-size:11px; }
  .section-sidebar .newsletter-intro h3 { font-size:17px; }
  .section-sidebar .newsletter-intro p { font-size:12px; }
  .section-sidebar .newsletter-input { height:42px; }
  .section-sidebar .newsletter-input input,.section-sidebar .newsletter-input .btn { font-size:12px; }
  .section-sidebar .newsletter-consent { font-size:11px; }
  .section-sidebar .events-empty h3 { font-size:14px; }
  .section-sidebar .events-empty p,.section-sidebar .events-empty a { font-size:12px; }
  .section-sidebar .podcast-panel { padding-bottom:42px; }
  .section-sidebar .podcast-story { grid-template-columns:112px minmax(0,1fr); gap:15px; }
  .section-sidebar .podcast-cover { min-height:145px; }
  .section-sidebar .podcast-copy h3 { font-size:17px; }
  .section-sidebar .podcast-copy p { font-size:12px; }
  .section-covers { max-width:160px; }
  .section-magazine-inner { justify-content:space-between; gap:20px; }
  .section-magazine .btn { font-size:11px; }
  .section-shop h2 { font-size:17px; }
  .section-shop p { font-size:12px; }
  .section-shop .section-more { font-size:10px; }
  .section-partners { padding:17px; }
  .section-partners .section-heading { margin-bottom:18px; }
  .section-all-partners summary { position:static; justify-content:flex-end; margin-top:16px; font-size:11px; }
  .section-partner-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
  .section-footer { padding-top:25px; }
  .section-footer .footer-grid { grid-template-columns:1fr 1fr; gap:25px; }
  .section-footer .footer-about { grid-column:1/-1; grid-row:auto; }
  .section-footer .footer-about p { max-width:100%; }
  .section-footer .footer-grid h2 { font-size:14px; }
  .section-footer .footer-grid p,.section-footer .footer-grid nav>a,.section-footer .footer-about>a { font-size:12px; }
  .section-footer .footer-bottom { gap:15px; line-height:1.5; }
  .section-footer .footer-bottom>div { flex-wrap:wrap; gap:8px 15px; }
  .section-back-top { right:15px; }
}
@media(max-width:360px) {
  .section-pagination { gap:5px; }
  .section-pagination>a,.section-pagination>span { min-width:27px; }
  .section-sidebar .podcast-story { grid-template-columns:94px minmax(0,1fr); gap:12px; }
  .section-sidebar .podcast-copy h3 { font-size:16px; }
  .section-magazine-inner { gap:13px; }
  .section-magazine .btn { font-size:10px; }
  .section-covers { max-width:130px; }
}
/* Episode links open the existing episode page; no fabricated player or duration. */
.section-podcast .section-card-image { position:relative; }
.section-play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:46px; height:46px; border-radius:50%; background:var(--red); color:#fff; box-shadow:0 2px 8px #0003; pointer-events:none; }
.section-play i { font-size:18px; margin-left:3px; }
.section-feature .section-play { width:62px; height:62px; }
.section-feature .section-play i { font-size:23px; }
.section-podcast .section-feature-copy>.btn { color:#fff; background:var(--red); }
.section-podcast .section-feature-copy>.btn:hover { background:var(--red-dark); }
