/* Migrated TLC page content, restyled as cards. Themes supply the variables. */
.source-content{max-width:1240px;width:calc(100% - 48px);margin:0 auto;padding:clamp(28px,4vw,56px) 0 clamp(48px,6vw,88px);color:var(--ink);line-height:1.75;overflow-wrap:anywhere}
.source-content *{box-sizing:border-box}
.source-content .dmRespRowsWrapper>.dmRespRow,.source-content .innerPageTmplBox>.dmRespRow,.source-content>.dmRespRow,.source-content .dmDefaultRespTmpl>.dmRespRow,.source-content .dmHomeRespTmpl>.dmRespRow{background:var(--row-bg);border:1px solid var(--row-line);border-radius:var(--radius);padding:var(--row-pad);margin:0 0 var(--row-gap);box-shadow:var(--row-shadow);position:relative}
.source-content .dmRespRow.is-empty{display:none}
.source-content .dmRespColsWrapper{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(22px,3vw,44px);align-items:center}
.source-content .dmRespCol{grid-column:1/-1;min-width:0}
.source-content .large-1{grid-column:span 1}.source-content .large-2{grid-column:span 2}.source-content .large-3{grid-column:span 3}.source-content .large-4{grid-column:span 4}.source-content .large-5{grid-column:span 5}.source-content .large-6{grid-column:span 6}.source-content .large-7{grid-column:span 7}.source-content .large-8{grid-column:span 8}.source-content .large-9{grid-column:span 9}.source-content .large-10{grid-column:span 10}.source-content .large-11{grid-column:span 11}.source-content .large-12{grid-column:1/-1}
.source-content .dmNewParagraph+.dmNewParagraph{margin-top:20px}
.source-content p{color:var(--text);font-size:16.5px;line-height:1.8;margin:0 0 14px}
.source-content p:empty,.source-content .dmNewParagraph:empty,.source-content .empty-column:empty,.source-content .dmWidgetClear,.source-content [data-element-type="shape"]{display:none}
.source-content h1,.source-content h2,.source-content h3,.source-content h4{font-family:var(--display);color:var(--ink);letter-spacing:-.02em}
.source-content h2{font-size:clamp(26px,3vw,38px);line-height:1.2;margin:6px 0 18px;color:var(--h2)}
.source-content h3{font-size:clamp(21px,2vw,26px);line-height:1.3;margin:22px 0 12px}
.source-content h4{font-size:19px;line-height:1.4;margin:18px 0 10px}
.source-content h1 span,.source-content h2 span,.source-content h3 span,.source-content h2 font,.source-content h3 font,.source-content .dmNewParagraph span,.source-content .dmNewParagraph font{font:inherit;color:inherit}
.source-content h2.text-align-center,.source-content .text-align-center{text-align:center}
.source-content li{font-size:16.5px;color:var(--text);line-height:1.8;margin-bottom:6px}
.source-content ul,.source-content ol{padding-left:1.2em}
.source-content .ql-indent-1{padding-left:0}
.source-content strong,.source-content b{font-weight:700;color:var(--ink)}
.source-content .dmNewParagraph a,.source-content .preserved-accordion-body a,.source-content li a{color:var(--link);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--link) 35%,transparent);text-underline-offset:3px;transition:color .2s}
.source-content .dmNewParagraph a:hover,.source-content li a:hover{color:var(--red)}
.source-content img{max-width:100%;height:auto;object-fit:contain;border-radius:calc(var(--radius) - 6px)}
.source-content .imageWidget{margin-block:8px}
.source-content .imageWidget>a{display:block;overflow:hidden;border-radius:calc(var(--radius) - 6px)}
.source-content .imageWidget img{width:100%;max-height:560px;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.source-content .imageWidget>a:hover img{transform:scale(1.04)}
.source-content .preserved-background{width:100%;height:340px;object-fit:cover;margin:0 0 24px}
.source-content .preserved-media-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}
.source-content .preserved-media-strip img{width:100%;height:240px;object-fit:cover;margin:0}
.source-content .preserved-widget{width:100%;border:0;display:block;max-width:100%;min-height:180px;background:transparent;margin:6px 0 18px;overflow:hidden}
.source-content .preserved-map{width:100%;border:0;display:block;min-height:360px;border-radius:calc(var(--radius) - 6px)}
.source-content iframe[src*="youtube"],.source-content video{aspect-ratio:16/9;width:100%;height:auto;border:0;border-radius:calc(var(--radius) - 6px);display:block;margin:0 auto;background:#000}
.source-content [data-element-type="dYouTubeId"]{width:100%;max-width:980px;margin:auto}
.source-content [data-element-type="dYouTubeId"]>*:not(.innerYoutubeExt):not(iframe){display:none}
.source-content table{border-collapse:separate;border-spacing:0;width:100%;font-size:14.5px;margin:18px 0;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.source-content td,.source-content th{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:14px 16px;vertical-align:top;text-align:left;line-height:1.6}
.source-content tr>*:last-child{border-right:0}.source-content tr:last-child>*{border-bottom:0}
.source-content table tr:first-child>*{background:var(--blue);color:#fff;border-color:rgba(255,255,255,.18)}
.source-content table tr:first-child p,.source-content table tr:first-child span,.source-content table tr:first-child strong{color:#fff!important}
.source-content table tr:nth-child(even)>*{background:var(--soft)}
.source-content table tr:first-child>*{background:var(--blue)}
.source-content table p{font-size:14.5px;margin:0}
.source-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
/* buttons */
.source-content .dmButtonLink,.source-content a.dmWidget:not(.caption-button){display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 26px;background:var(--btn-bg);color:var(--btn-fg)!important;font-size:15px;font-weight:700;border-radius:999px;line-height:1.4;max-width:100%;text-decoration:none!important;margin:12px 10px 12px 0;border:0;box-shadow:var(--btn-shadow);transition:transform .25s,box-shadow .25s,background .25s}
.source-content .dmButtonLink:hover{transform:translateY(-3px);background:var(--btn-hover);box-shadow:var(--btn-shadow-hover)}
.source-content .dmButtonLink .iconBg{display:none}.source-content .dmButtonLink .text{color:inherit}
.source-content .dmButtonLink::after{content:'→';font-weight:700}
.source-content [class*="align-center"].dmButtonLink,.source-content .dmWwr.align-center{display:flex;width:max-content;max-width:100%;margin-inline:auto}
/* list widget → cards */
.source-content .dmPrettyList .listWidgetContainer{padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;margin:8px 0 14px}
.source-content .listItem{border:1px solid var(--line);border-radius:calc(var(--radius) - 4px);padding:24px;margin:0;background:var(--card-soft);transition:transform .3s,box-shadow .3s,border-color .3s}
.source-content .listItem:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--blue)}
.source-content .listItem .itemName{font-family:var(--display);font-weight:800;color:var(--ink);display:block;font-size:18px;line-height:1.35}
.source-content .listItem .itemText{display:block;margin-top:10px}
.source-content .listItem .itemText p{font-size:15px;margin:0}
.source-content .listItem .link,.source-content .listItem .listImage:empty,.source-content .dmwidget-title[hide="true"]{display:none}
.source-content .listItem a{text-decoration:none}.source-content .listItem a[href=""]{pointer-events:none}
/* galleries / sliders */
.source-content [data-element-type="dPhotoGalleryId"] .photogallery-row{display:flex;flex-wrap:wrap;gap:16px}
.source-content .photogallery-column{flex:1 1 calc(33.333% - 16px);min-width:200px}
.source-content .image-container a{display:block;overflow:hidden;border-radius:14px}
.source-content .image-container img{width:100%;height:auto;max-height:450px;object-fit:cover;transition:transform .5s}
.source-content .image-container a:hover img{transform:scale(1.05)}
.source-content .caption-container,.source-content .img-wrapper{display:none}
.source-content .dmPhotoGalleryHolder:empty{display:none}
.source-content [data-native-slider] .slides{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:0;margin:20px 0}
.source-content [data-native-slider] .slides>li{margin:0}
.source-content [data-native-slider] .slides img{width:100%;max-height:450px;object-fit:cover}
.source-content [data-native-slider] .slide-inner,.source-content [data-native-slider] .color-overlay{display:none}
/* accordions */
.source-content .preserved-accordions{margin:20px 0}
.source-content .preserved-accordions details{padding:0 24px;border:1px solid var(--line);border-radius:16px;margin-bottom:12px;background:var(--paper);transition:box-shadow .3s,border-color .3s}
.source-content .preserved-accordions details[open]{box-shadow:var(--shadow);border-color:var(--blue)}
.source-content .preserved-accordions summary{font-family:var(--display);font-weight:700;font-size:18px;color:var(--ink);padding:22px 0;display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none}
.source-content .preserved-accordions summary::-webkit-details-marker{display:none}
.source-content .preserved-accordions summary:after{content:'+';font-size:26px;color:var(--red);font-weight:400;margin-left:20px;transition:transform .3s}
.source-content .preserved-accordions details[open] summary:after{transform:rotate(45deg)}
.source-content .preserved-accordion-body{padding-bottom:20px}.source-content .preserved-accordion-body p{font-size:16px}
/* forms */
.source-content .dmform-wrapper{border:1px solid var(--line);border-top:4px solid var(--red);border-radius:var(--radius);padding:clamp(20px,3vw,34px);background:var(--card-soft);margin:18px 0}
.source-content form.dmRespDesignRow{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}
.source-content .dmforminput{min-width:0;grid-column:span 6}
.source-content .dmforminput.large-12{grid-column:1/-1}.source-content .dmforminput.large-4{grid-column:span 4}.source-content .dmforminput.large-3{grid-column:span 3}.source-content .dmforminput.large-2{grid-column:span 2}
.source-content .dmforminput label{font-size:13px;font-weight:700;display:block;line-height:1.5;margin-bottom:8px;color:var(--ink)}
.source-content .dmforminput input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.source-content .dmforminput select,.source-content .dmforminput textarea{width:100%;min-height:48px;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:12px 14px;font:inherit;font-size:15px;color:var(--ink)}
.source-content .dmforminput textarea{min-height:130px;resize:vertical}
.source-content .contact-checkable-container label{font-weight:400;display:flex;gap:10px;align-items:flex-start;font-size:13px;margin-bottom:9px}
.source-content .contact-checkable-container input{margin-top:4px}
.source-content .dmformsubmit{grid-column:1/-1;margin-top:8px}
.source-content .dmformsubmit input{background:var(--btn-bg);color:var(--btn-fg);border:0;padding:15px 26px;font:inherit;font-weight:700;cursor:pointer;border-radius:999px;white-space:normal;max-width:100%}
.source-content .form-connection-note{grid-column:1/-1!important;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:12px;padding:16px!important;font-size:14px!important;margin:0!important}
.source-content .form-connection-note a{color:var(--link);text-decoration:underline;display:inline-block;margin-top:8px;font-weight:700}
.source-content .dmforminput.required>label:after{content:' *';color:var(--red)}
.source-content .dmform-success,.source-content .dmform-error{display:none}
.source-content .dmforminput .fileUploadLink{display:inline-block;background:var(--paper);border:1px dashed var(--blue);padding:12px 18px;font-size:13px;border-radius:12px}
.source-content input:disabled,.source-content select:disabled,.source-content textarea:disabled{opacity:.72;cursor:default}
.source-content .secure-application-link{margin:0!important}
.source-content .preserved-share,.source-content .preserved-comments{font-size:14px;margin:20px 0;border-top:1px solid var(--line);padding-top:18px;color:var(--link)}
.source-content [data-element-type="graphic"] svg{max-width:64px;max-height:64px;color:var(--blue);fill:currentColor}
.connected-contact iframe{display:block;width:100%;min-height:650px;border:0;background:#fff;border-radius:14px}
.contact-fallback{font-size:14px!important;margin-top:16px!important}.contact-fallback a{color:var(--link);text-decoration:underline}
.original-field-reference{margin-top:20px;font-size:14px}.original-field-reference summary{cursor:pointer;padding:14px 0;color:var(--link);font-weight:700}
.source-content .source-alias-note{background:var(--soft);padding:18px 20px;border-left:4px solid var(--red);border-radius:12px;font-size:15px}
/* blog list on the legacy blog widget */
.source-content .mainBlog .inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.source-content .mainBlog .postArticle{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper)}
.source-content .mainBlog .postArticle>.inner{display:block}
.source-content .mainBlog img{width:100%;height:190px;object-fit:cover;border-radius:0}
.source-content .mainBlog .postTextContainer{padding:20px}.source-content .mainBlog .postTitle h3{font-size:20px;margin:0 0 12px}
.source-content .mainBlog .postDescription{font-size:14px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.source-content .mainBlog .authorBar{font-size:12px;color:var(--muted);margin-bottom:10px}.source-content .mainBlog .showMorePosts{display:none}
/* blog catalogue, site map, downloads */
.full-blog-catalog{margin-top:6px}
.catalog-controls{padding:22px;background:var(--card-soft);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:26px}
.catalog-controls label{font-size:14px;font-weight:700;display:block;margin-bottom:10px;color:var(--ink)}
.catalog-controls input{width:100%;border:1px solid var(--line);padding:15px 18px;background:var(--paper);border-radius:999px;color:var(--ink);font:inherit;font-size:16px}
.catalog-controls input:focus{outline:2px solid var(--blue);outline-offset:2px}
.catalog-controls p{font-size:13px;margin:10px 0 0 6px!important}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.catalog-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.catalog-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.catalog-card[hidden]{display:none}
.catalog-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none!important}
.catalog-card img{height:210px;width:100%;object-fit:cover;border-radius:0!important;transition:transform .6s}
.catalog-card:hover img{transform:scale(1.04)}
.catalog-card>a>div{padding:22px;display:flex;flex-direction:column;flex:1}
.catalog-card span{font-size:12px;color:var(--red);font-weight:700;letter-spacing:.02em}
.catalog-card h2{font-size:21px;line-height:1.3;margin:12px 0!important;color:var(--ink)!important}
.catalog-card p{font-size:14px!important;line-height:1.7!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted)!important}
.catalog-card b{font-size:13px;color:var(--link);margin-top:auto;padding-top:10px}
.catalog-more{margin:30px auto 0;display:flex}
.directory-content{max-width:1240px;width:calc(100% - 48px);margin:0 auto;padding:clamp(28px,4vw,56px) 0 clamp(48px,6vw,88px)}
.directory-content>.eyebrow,.directory-content>h1,.directory-content>p:not(.eyebrow){display:none}
.all-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.all-page-grid>a{border:1px solid var(--line);padding:24px;border-radius:calc(var(--radius) - 4px);display:flex;flex-direction:column;gap:16px;background:var(--paper);transition:transform .25s,box-shadow .25s,border-color .25s}
.all-page-grid>a:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--blue)}
.all-page-grid>a>span{font-size:11px;letter-spacing:.1em;color:var(--red);font-weight:800;text-transform:uppercase}
.all-page-grid h2{font-size:20px;line-height:1.3;margin:0;color:var(--ink)}
.all-page-grid b{font-size:13px;color:var(--link);margin-top:auto}
.download-list{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper)}
.download-list>a{display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid var(--line);padding:20px 24px;font-size:16px;font-weight:600;color:var(--ink);transition:background .2s,padding .2s}
.download-list>a:last-child{border-bottom:0}.download-list>a:hover{background:var(--soft);padding-left:32px}
.download-list b{white-space:nowrap;color:var(--link);font-size:13px}
/* article footer */
.article-end{max-width:1240px;width:calc(100% - 48px);margin:0 auto clamp(40px,5vw,72px)}
.article-end h2{font-family:var(--display);font-size:clamp(24px,2.6vw,34px);margin:0 0 22px;color:var(--ink)}
.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.related-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);display:flex;flex-direction:column;transition:transform .35s,box-shadow .35s}
.related-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.related-card img{height:170px;width:100%;object-fit:cover}
.related-card div{padding:20px}.related-card small{color:var(--red);font-weight:700;font-size:12px}
.related-card h3{font-family:var(--display);font-size:18px;line-height:1.35;margin:8px 0 0;color:var(--ink)}
/* lightbox */
.lightbox{padding:14px;max-width:min(1200px,calc(100vw - 32px));width:max-content;background:var(--navy);color:#fff;border:0;border-radius:18px}
.lightbox::backdrop{background:rgba(5,15,34,.78);backdrop-filter:blur(4px)}
.lightbox img{max-height:80vh;max-width:90vw;object-fit:contain;display:block;border-radius:10px}
.lightbox p{color:#fff;font-size:14px;padding:12px 4px 2px;margin:0}
.lightbox .dialog-close{position:absolute;right:20px;top:20px;background:#fff;color:var(--navy);border:0;border-radius:50%;width:36px;height:36px;font-size:24px;line-height:1;cursor:pointer;display:grid;place-items:center}
@media(max-width:1000px){
  .source-content .large-2,.source-content .large-3,.source-content .large-4{grid-column:span 6}
  .source-content .dmforminput.large-2,.source-content .dmforminput.large-3,.source-content .dmforminput.large-4{grid-column:span 6}
  .source-content .dmPrettyList .listWidgetContainer,.catalog-grid,.all-page-grid,.related-grid,.source-content .mainBlog .inner{grid-template-columns:repeat(2,minmax(0,1fr))}
  .source-content .large-5,.source-content .large-6,.source-content .large-7,.source-content .large-8{grid-column:1/-1}
}
@media(max-width:640px){
  .source-content,.directory-content,.article-end{width:calc(100% - 32px)}
  .source-content .dmRespColsWrapper{display:block}.source-content .dmRespCol+.dmRespCol{margin-top:24px}
  .source-content p,.source-content li{font-size:16px}
  .source-content .preserved-media-strip{grid-template-columns:1fr 1fr;gap:10px}.source-content .preserved-media-strip img{height:150px}
  .source-content [data-native-slider] .slides,.source-content .dmPrettyList .listWidgetContainer,.catalog-grid,.all-page-grid,.related-grid,.source-content .mainBlog .inner{grid-template-columns:1fr}
  .source-content form.dmRespDesignRow{display:block}.source-content .dmforminput{margin:18px 0}
  .source-content .dmforminput input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.source-content select,.source-content textarea{font-size:16px}
  .source-content td,.source-content th{min-width:130px;padding:12px;font-size:13.5px}
  .source-content .photogallery-column{flex-basis:100%}
  .download-list>a{display:block;padding:18px 20px}.download-list b{display:block;margin-top:8px}
  .source-content .preserved-accordions details{padding-inline:18px}.source-content .preserved-accordions summary{font-size:16px}
}

/* tables filled in from the staff-edited site data (holidays, quarter calendar) */
.tlc-data-table{width:100%;border-collapse:collapse;margin:8px 0}.tlc-data-table td{padding:10px 14px;border-bottom:1px solid rgba(16,38,74,.12);text-align:left}.tlc-data-table td:first-child{font-weight:700;white-space:nowrap}
@media(max-width:600px){.tlc-data-table td{display:block;border-bottom:0;padding:4px 12px}.tlc-data-table tr{display:block;border-bottom:1px solid rgba(16,38,74,.12);padding:8px 0}.tlc-data-table td:first-child{white-space:normal}}
