/* Shared layouts for the complete TV Jahn website. */
.desktop-nav{gap:21px}.desktop-nav a[aria-current=page]{color:var(--red)}.header-inner{gap:24px}.mobile-nav a[aria-current=page]{color:var(--red)}
.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding-block:25px 19px;font-size:.8rem;color:var(--muted);line-height:1.6}.breadcrumbs a:hover{color:var(--red)}.breadcrumbs>[aria-current=page]{color:var(--ink)}.breadcrumbs>span:not([aria-current]){color:#a6a8aa}.page-hero{padding-block:30px 56px;border-bottom:1px solid var(--line);margin-bottom:0;display:grid;grid-template-columns:1fr;gap:44px}.page-hero.with-image{grid-template-columns:1.15fr 1fr;align-items:center}.page-hero h1{font-size:clamp(2.8rem,4.7vw,4.8rem);letter-spacing:-.055em;line-height:1.08;margin-bottom:24px;overflow-wrap:anywhere}.page-hero .eyebrow,.directory-section>.eyebrow,.archive-section>.eyebrow{color:var(--red);font-size:.75rem;margin-bottom:16px}.page-intro{font-size:1.08rem;line-height:1.75;color:var(--muted);max-width:710px;margin-bottom:0}.page-hero .button{margin-top:27px}.page-hero-image{height:315px;background:var(--light);overflow:hidden}.page-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.page-hero-copy{min-width:0}.hero-quicklinks{display:flex;gap:25px;margin-top:29px;font-size:.88rem;font-weight:700}.hero-quicklinks a{padding-bottom:6px;border-bottom:1px solid var(--line)}.hero-quicklinks a:hover{color:var(--red)}
.directory-section{padding-block:56px}.directory-section .section-heading h2{font-size:2.25rem}.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.directory-card{border:1px solid var(--line);padding:26px;display:flex;flex-direction:column;justify-content:space-between;min-height:192px;transition:background .2s,border-color .2s,transform .2s}.directory-card:hover{border-color:var(--red);background:#fffafa;transform:translateY(-3px)}.directory-card h3{font-size:1.45rem;letter-spacing:-.035em;line-height:1.25;margin-bottom:24px;overflow-wrap:anywhere}.directory-card .card-index{color:var(--red);font-size:.75rem;margin-bottom:27px}.card-go{font-size:.875rem;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:20px}.card-go>span{font-size:1.4rem;color:var(--red)}.directory-card.has-image{padding:0;min-height:0}.directory-card.has-image>img{width:100%;height:166px;object-fit:cover;background:var(--light)}.directory-card.has-image>div{padding:22px 25px}.directory-card.has-image h3{margin-bottom:17px}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:76px;padding-block:58px 80px;align-items:start}.content-layout>.prose{min-width:0}.prose{font-size:1rem;line-height:1.85;color:#383d40;overflow-wrap:break-word}.prose>:first-child{margin-top:0}.prose h2{font-size:1.9rem;letter-spacing:-.04em;line-height:1.25;color:var(--ink);margin:44px 0 19px;scroll-margin-top:125px}.prose h3{font-size:1.25rem;line-height:1.45;letter-spacing:-.025em;margin:30px 0 14px;color:var(--ink);scroll-margin-top:125px}.prose h4,.prose h5,.prose h6{font-size:1.05rem;margin:24px 0 12px;line-height:1.5;color:var(--ink)}.prose p{margin:0 0 22px}.prose ul,.prose ol{padding-left:24px;margin:18px 0 26px}.prose li{padding-block:3px}.prose a{color:#b91820;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;overflow-wrap:anywhere}.prose a:hover{text-decoration-thickness:2px}.prose img{display:block;width:auto;max-width:100%;height:auto;max-height:500px;object-fit:contain;margin:24px 0}.prose figure{margin:30px 0}.prose figure img{margin:0}.prose figcaption{font-size:.875rem;color:var(--muted);margin-top:10px}.prose hr{height:1px;border:0;background:var(--line);margin:35px 0}.prose blockquote{border-left:3px solid var(--red);padding:14px 0 14px 27px;margin:30px 0;font-size:1.13rem;background:#fafafa}.prose blockquote p:last-child{margin:0}.prose pre{white-space:pre-wrap}.prose strong{font-weight:700;color:var(--ink)}.prose .button{color:#fff;text-decoration:none}.prose .button-dark{color:#fff}.prose .source-note{font-size:.75rem;line-height:1.6;color:var(--muted);border-top:1px solid var(--line);padding-top:24px;margin-top:42px;clear:both}.prose .source-note a{color:inherit}.prose div:empty{display:none}
.page-sidebar{position:sticky;top:122px;min-width:0}.page-sidebar h2{font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;line-height:1.5;margin:0 0 18px}.on-this-page{border-top:2px solid var(--ink);padding-top:21px}.on-this-page a,.sibling-nav a{display:block;font-size:.88rem;line-height:1.5;padding:10px 0;border-bottom:1px solid #e7e8e9}.on-this-page a:hover,.sibling-nav a:hover{color:var(--red)}.help-panel{background:var(--light);padding:25px;margin-top:32px}.help-panel .eyebrow{font-size:.65rem;color:var(--red);line-height:1.65;margin-bottom:15px}.help-panel h2{text-transform:none;font-size:1.5rem;line-height:1.2;letter-spacing:-.035em;margin-bottom:15px}.help-panel p:not(.eyebrow){font-size:.9rem;line-height:1.7;color:var(--muted);margin-bottom:19px}.help-panel>a{font-size:.85rem;font-weight:700;display:flex;justify-content:space-between;gap:15px}.help-panel>a:hover{color:var(--red)}.sibling-nav{margin-top:36px}.sibling-nav h2{margin-bottom:9px}
.prose .schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:27px 0 37px}.prose .schedule-card{padding:24px;background:var(--light);border-top:3px solid var(--red);min-width:0}.prose .schedule-title{font-size:1.1rem;line-height:1.45;margin:0 0 18px}.prose .schedule-card p{font-size:.95rem;line-height:1.9;margin-bottom:0}.prose .schedule-card p+p{margin-top:15px}.table-scroll{overflow-x:auto;max-width:100%;margin-block:24px 30px;border:1px solid var(--line)}.table-scroll:focus-visible{outline:3px solid #2577d2;outline-offset:4px}.prose table{width:100%;border-collapse:collapse;font-size:.94rem;line-height:1.65;min-width:430px}.prose th,.prose td{padding:16px 19px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.prose th{background:var(--light);font-weight:700}.prose tr:last-child td{border-bottom:0}.prose .faq-item{border-block-end:1px solid var(--line);margin:0;padding:0}.prose .faq-item:first-of-type{border-top:1px solid var(--line)}.prose .faq-item summary{padding:21px 36px 21px 0;font-size:1rem;line-height:1.6;font-weight:700;position:relative;cursor:pointer;color:var(--ink);list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:'+';position:absolute;right:4px;top:20px;color:var(--red);font-size:1.4rem;font-weight:400}.faq-item[open]>summary:after{content:'−'}.prose .faq-item[open]{padding-bottom:18px}.prose .faq-item p:last-child{margin-bottom:8px}.media-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:30px 0!important;padding:0!important;list-style:none}.prose .media-gallery img{width:100%;height:170px;object-fit:cover;margin:0}.prose .media-gallery a{display:block}.prose .media-gallery li{padding:0;list-style:none}.prose .media-gallery>div,.prose .media-gallery>li{min-width:0}.related-news{padding:0!important;list-style:none}.related-news>li{padding:16px 0!important;border-bottom:1px solid var(--line);display:flow-root}.related-news img{float:left;width:65px;height:65px;object-fit:cover;margin:0 17px 8px 0}.related-news strong{display:block}.service-link{margin:32px 0;background:var(--light);border-left:3px solid var(--red);padding:29px}.service-link .eyebrow{color:var(--red);font-size:.75rem}.prose .service-link h2,.prose .service-link h3{margin:0 0 14px;font-size:1.6rem}.prose .service-link p{margin-bottom:20px}.empty-content{background:var(--light);padding:30px}.prose .empty-content h2{margin-top:0}
.archive-section{padding-block:32px 70px}.archive-section>h1{font-size:clamp(3rem,5vw,5rem);line-height:1.08;letter-spacing:-.055em;margin-bottom:20px}.archive-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-block:1px solid var(--line);padding-block:19px;margin-block:36px;font-size:.875rem}.archive-toolbar>span{color:var(--muted)}.archive-toolbar label{display:flex;align-items:center;gap:12px;font-weight:700}.archive-toolbar select{font:inherit;font-weight:400;border:1px solid #cfd2d3;background:#fff;padding:10px 36px 10px 12px;min-width:205px;color:var(--ink);max-width:100%}.news-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 26px}.article-card{border-bottom:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.article-card:hover h2{color:var(--red)}.article-card:hover img{transform:scale(1.035)}.article-image{height:200px;background:var(--light);overflow:hidden}.article-image>img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.article-no-image{display:grid;place-items:center;background:var(--ink);color:white}.article-no-image>span{font-size:2.35rem;font-weight:900;letter-spacing:-.065em}.red-dot{color:var(--red)}.article-card-copy{padding:22px 0;display:flex;flex-direction:column;flex:1}.article-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;font-size:.75rem;line-height:1.5;color:var(--muted);margin-bottom:14px}.article-meta>span{color:var(--red);font-weight:700}.article-meta time{white-space:nowrap}.article-card h2{font-size:1.4rem;line-height:1.3;letter-spacing:-.035em;margin-bottom:23px}.article-card .card-go{margin-top:auto}.pagination{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;margin-top:46px;font-size:.88rem}.pagination a{display:grid;place-items:center;min-width:41px;min-height:43px;padding:8px 14px;border:1px solid var(--line)}.pagination a:hover{border-color:var(--red);color:var(--red)}.pagination a[aria-current=page]{background:var(--red);border-color:var(--red);color:#fff}.archive-more{padding-bottom:60px}.story{padding-block:32px 75px;max-width:980px}.story-header{border-bottom:1px solid var(--line);padding-bottom:36px;margin-bottom:40px}.story-header .eyebrow{color:var(--red);font-size:.75rem}.story-header .eyebrow span{color:var(--muted)}.story-header h1{font-size:clamp(2.5rem,4.6vw,4.6rem);line-height:1.1;letter-spacing:-.055em;margin:0;overflow-wrap:anywhere}.story-content{max-width:820px;margin-inline:auto}.story-content>img:first-child{width:100%;max-height:500px;object-fit:contain}.story-end{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:46px;padding-top:25px;border-top:1px solid var(--line);font-size:.8rem}.story-end>a:last-child{color:var(--muted)}.sitemap-group{border-top:1px solid var(--line);padding-top:30px;margin-top:40px}.sitemap-group h2{font-size:1.8rem;margin-bottom:23px}.sitemap-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 28px;font-size:.95rem}.sitemap-links a:hover{color:var(--red)}
@media(max-width:1200px){.desktop-nav{gap:14px}.header-join{gap:12px}.content-layout{gap:43px;grid-template-columns:minmax(0,1fr) 245px}.page-hero.with-image{grid-template-columns:1.1fr 1fr}.page-hero{gap:30px}.page-hero-image{height:280px}.help-panel{padding:22px}.news-list-grid{gap:30px 20px}.directory-card{padding:23px}.story{max-width:900px}}
@media(max-width:1080px){.desktop-nav{display:none}.menu-toggle{display:flex}.header-join{margin-left:auto}.page-sidebar{position:static}.content-layout{grid-template-columns:minmax(0,1fr) 220px;gap:30px}.prose .schedule-grid{grid-template-columns:1fr}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-hero h1{font-size:3.2rem}}
@media(max-width:780px){.page-hero.with-image{grid-template-columns:1fr}.page-hero-image{height:280px}.page-hero h1{font-size:3.25rem}.content-layout{grid-template-columns:1fr;gap:35px;padding-top:38px}.page-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:25px}.on-this-page{grid-column:1/-1}.on-this-page a{display:inline-block;border:1px solid var(--line);margin:0 8px 9px 0;padding:8px 12px}.help-panel,.sibling-nav{margin-top:0}.page-hero{padding-bottom:35px}.sitemap-links{grid-template-columns:repeat(2,minmax(0,1fr))}.prose .schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.story-header h1{font-size:3rem}.archive-toolbar{align-items:flex-start}.archive-toolbar label{flex-direction:column;align-items:flex-start;gap:7px}}
@media(max-width:640px){.breadcrumbs{font-size:.75rem;padding-block:20px 12px;gap:8px}.page-hero{padding-block:23px 30px;gap:26px}.page-hero h1{font-size:2.6rem;margin-bottom:20px;line-height:1.1}.page-intro{font-size:1rem;line-height:1.8}.page-hero-image{height:230px}.hero-quicklinks{font-size:.85rem;gap:20px;flex-wrap:wrap;margin-top:23px}.directory-section{padding-block:36px}.directory-section .section-heading h2{font-size:2rem}.directory-grid{grid-template-columns:1fr;gap:16px}.directory-card{min-height:160px;padding:23px}.directory-card .card-index{margin-bottom:20px}.directory-card h3{font-size:1.45rem;margin-bottom:18px}.directory-card.has-image>img{height:185px}.content-layout{padding-block:35px 48px}.prose{font-size:1rem;line-height:1.8}.prose h2{font-size:1.7rem;margin-top:35px}.prose h3{font-size:1.2rem}.prose .schedule-grid{grid-template-columns:1fr;gap:15px}.prose .schedule-card{padding:23px}.prose .schedule-card p{font-size:1rem}.prose .schedule-title{font-size:1.1rem}.prose .media-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.prose .media-gallery img{height:140px}.page-sidebar{grid-template-columns:1fr}.on-this-page{grid-column:auto}.help-panel{padding:25px}.help-panel .eyebrow{font-size:.75rem}.help-panel p:not(.eyebrow){font-size:1rem}.help-panel>a{font-size:.875rem}.sibling-nav a,.on-this-page a{font-size:.875rem}.service-link{padding:24px}.prose table{font-size:.875rem}.prose th,.prose td{padding:13px 15px}.news-list-grid{grid-template-columns:1fr;gap:29px}.article-image{height:220px}.article-card h2{font-size:1.55rem}.article-card-copy{padding-block:20px 24px}.article-meta{font-size:.75rem}.archive-section{padding-block:24px 48px}.archive-section>h1{font-size:2.7rem}.archive-toolbar{flex-direction:column;gap:17px;padding-block:18px;margin-block:27px}.archive-toolbar label{width:100%;flex-direction:row;align-items:center;justify-content:space-between}.archive-toolbar select{width:220px;min-width:0}.pagination{gap:6px;font-size:.8rem}.pagination a{min-width:36px;padding:8px 10px}.story{padding-block:24px 47px}.story-header{padding-bottom:27px;margin-bottom:27px}.story-header h1{font-size:2.45rem}.story-header .eyebrow{font-size:.75rem;line-height:1.8}.story-header .eyebrow span{display:block}.story-end{font-size:.8rem;gap:22px}.sitemap-links{grid-template-columns:1fr;gap:15px}.sitemap-group{padding-top:27px;margin-top:33px}.directory-section>h1{font-size:2.7rem;line-height:1.1}.prose .faq-item summary{padding-block:20px}.footer-bottom>div{flex-wrap:wrap;row-gap:12px}}
.page-hero-image.brand-image img,.directory-card.brand-image>img{object-fit:contain;padding:15px;background:#f4f5f5}.prose .inline-news{margin:24px 0 35px}.prose .inline-news-row{display:grid;grid-template-columns:145px minmax(0,1fr) 20px;gap:20px;align-items:start;padding:20px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);line-height:1.6}.prose .inline-news-row>span:first-child{font-size:.8rem;color:var(--muted)}.prose .inline-news-row strong{font-size:1rem}.prose .inline-news-row>span:last-child{color:var(--red)}.prose .inline-news-row:hover strong{color:var(--red)}.help-panel .eyebrow{font-size:.75rem}
@media(max-width:640px){.prose .inline-news-row{grid-template-columns:minmax(0,1fr) 20px;gap:9px 15px;padding-block:18px}.prose .inline-news-row>span:first-child{grid-column:1/-1}.prose .inline-news-row strong{font-size:1rem}.page-hero-image.brand-image img{padding:13px}}
@media(prefers-reduced-motion:reduce){.directory-card:hover{transform:none}.article-card:hover img{transform:none}}
.article-no-image{height:4px;background:var(--red)}.article-no-image>span{display:none}.prose .story-featured{margin:0 0 42px}.prose .story-featured img{width:100%;max-height:620px;object-fit:contain;background:#f4f4f2}
.prose .media-gallery img{object-fit:contain;background:#f4f4f2}
.schedule-switch{display:flex;gap:6px;align-items:center;margin:0 0 15px;padding:5px;border:1px solid #dce2df;border-radius:5px;width:fit-content;background:#f3f5f4}.schedule-switch a{padding:11px 20px;font-size:.82rem;font-weight:700;border-radius:3px;color:#496057}.schedule-switch a[aria-current=page]{background:#17262a;color:white}.hall-course-callout{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#17262a;color:white;padding:22px 26px;margin:20px 0 26px;border-radius:4px}.hall-course-callout p{font-size:.83rem;line-height:1.65;margin:4px 0 0;color:#d3dfd9}.hall-course-callout a{font-size:.83rem;font-weight:700;white-space:nowrap;color:white;text-decoration:underline;text-underline-offset:5px}@media(max-width:650px){.hall-course-callout{flex-direction:column;align-items:flex-start;padding:19px;gap:15px}.schedule-switch{max-width:100%}.schedule-switch a{padding:10px 16px;font-size:.77rem}}

/* Department website embedded on the swimming page. */
.club-hashtag{text-transform:none!important;letter-spacing:0}
.utility .club-hashtag{font-size:.9rem;font-weight:800}
.hashtag-location{font-weight:400;opacity:.8;margin-left:.65rem}
.hero-copy .club-hashtag{font-size:1.15rem;color:var(--red,#df252b);font-weight:800}
.footer-brand .club-hashtag{font-size:clamp(1.4rem,2.3vw,2rem);font-weight:800;letter-spacing:-.03em}
.swim-portal{padding:18px 0 64px}
.swim-portal-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:0 0 28px}
.swim-portal h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.08;letter-spacing:-.045em;margin:8px 0 12px}
.swim-portal-heading p{margin:0;line-height:1.6}
.swim-portal-heading .eyebrow{font-size:.875rem}
.swim-portal-heading>a{flex-shrink:0;font-size:.95rem}
.swim-site{display:block;width:100%;height:1000px;height:max(820px,calc(100dvh - 130px));border:1px solid #dce1e3;background:#fff;border-radius:4px}
.swim-portal-help{font-size:.9rem;color:#626a70;line-height:1.6;margin-top:16px}
.swim-portal-help a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.hashtag-location{display:none}.swim-portal-heading{display:block}.swim-portal-heading>a{display:inline-flex;margin-top:18px}.swim-site{height:880px;height:max(740px,calc(100dvh - 90px))}}
