/* September editorial, navigation and homepage refinements. */
@media (min-width: 1024px) {
  .home .cf-home-first-screen h1 { font-size: clamp(48px, 4vw, 68px) !important; }
}
.home .cf-home-about-points > a:last-child { border-bottom:0; }
.home .cf-home-category-card { perspective: 1200px; padding-bottom: 0 !important; }
.home .cf-home-category-card .cf-home-category-card-media { position: relative; aspect-ratio: 5 / 4 !important; height: auto !important; min-height: 0; background:#fff; }
.home .cf-home-category-card .cf-home-category-card-image { position: absolute; inset: 0; width:100%; height:100%; backface-visibility: hidden; object-fit:cover; transition: transform .65s cubic-bezier(.2,.65,.25,1), opacity .5s ease; }
.home .cf-home-category-card .cf-home-category-card-image--default { transform: rotateY(0); opacity:1; }
.home .cf-home-category-card .cf-home-category-card-image--hover { transform: rotateY(-180deg); opacity:0; }
.home .cf-home-category-card:hover .cf-home-category-card-image--default,
.home .cf-home-category-card:focus-visible .cf-home-category-card-image--default { transform: rotateY(180deg); opacity:0; }
.home .cf-home-category-card:hover .cf-home-category-card-image--hover,
.home .cf-home-category-card:focus-visible .cf-home-category-card-image--hover { transform: rotateY(0); opacity:1; }
.home .cf-home-category-card h3 { min-height:0 !important; margin:0 !important; padding:15px 14px 17px !important; font-size:18px; line-height:1.35; }
.cf-home-news-slider[hidden] { display:none !important; }
.cf-home-news-tabs { flex-wrap:wrap; }
.cf-home-news-tabs button:focus-visible { outline:3px solid #b49a4e; outline-offset:3px; }
.cf-home-exhibitions { background:#f1f5f2; }
.cf-home-exhibitions .split-head { align-items:end; gap:32px; margin-bottom:32px; }
.cf-home-exhibitions .split-head p:not(.eyebrow) { max-width:660px; margin:16px 0 0; color:#52645b; }
.cf-exhibition-photo-wall { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; align-items:stretch; }
.cf-exhibition-photo-column { display:grid; gap:18px; min-width:0; }
.cf-exhibition-photo-wall .cf-exhibition-photo { margin:0; overflow:hidden; border-radius:4px; background:#e4eae5; aspect-ratio:4/3; }
.cf-exhibition-photo-wall > .cf-exhibition-photo-column:first-child > .cf-exhibition-photo--landscape:first-child img { object-position:center top; }
.cf-exhibition-photo-wall img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .45s ease; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .cf-exhibition-photo-wall .cf-exhibition-photo:hover img { transform:scale(1.035); }
}
.cf-exhibition-photo--conversation img { object-position:center 80%; }
.cf-exhibition-photo--portrait img { object-position:center bottom; }
.home .cf-home-certificate-window[data-cert-track-scroller] { overflow:hidden; cursor:grab; touch-action:pan-y; user-select:none; scroll-behavior:auto; }
.home .cf-home-certificate-window[data-cert-track-scroller] .cf-home-certificate-track { animation:none !important; will-change:transform; }
.home .cf-home-certificate-window[data-cert-track-scroller] img { pointer-events:none; -webkit-user-drag:none; }
.home .cf-home-certificate-window.is-dragging { cursor:grabbing; }
.cf-footer-contact .cf-footer-socials { margin-top:24px; justify-content:flex-start; }
.site-footer .cf-footer-socials { gap:8px; }
.site-footer .cf-footer-socials > a { width:32px; height:32px; min-width:32px; min-height:32px; flex:0 0 32px; padding:0; }
.site-footer .cf-footer-socials > a :is(svg, img) { display:block; width:16px; height:16px; max-width:16px; max-height:16px; flex:0 0 16px; object-fit:contain; }
.cf-about-profile-actions { flex-wrap:wrap; }
.cf-about-values-section .cf-about-values-copy > p:last-of-type { margin-bottom:0; }
.cf-about-values-section .cf-about-values-actions { display:flex; margin-top:24px; }
.cf-about-values-section .cf-about-values-actions > .cf-about-inline-link { margin:0; }
.cf-about-history-section > .site-shell > .cf-about-profile-actions { justify-content:center; }
.cf-about-history-section .cf-about-profile-actions a { color:#fff; border-color:rgba(255,255,255,.45); }
.cf-news-detail-layout.cf-article-columns { display:grid; grid-template-columns:minmax(0,7fr) minmax(250px,3fr); max-width:1400px; gap:clamp(28px,4vw,64px); align-items:start; }
.cf-article-columns .cf-news-detail-content { min-width:0; width:100%; }
.cf-article-sidebar { min-width:0; align-self:stretch; }
.cf-article-sticky { position:sticky; top:calc(var(--cf-header-height, 96px) + 24px); max-height:calc(100dvh - var(--cf-header-height,96px) - 48px); overflow-y:auto; padding:28px; border:1px solid #dce6df; border-top:3px solid #095540; border-radius:6px; background:#f5f8f5; }
.cf-article-sticky h2 { margin:6px 0 24px; font-size:24px; line-height:1.25; color:#193e30; }
.site-main .cf-article-sticky h2 { font-size:24px !important; line-height:1.25 !important; }
.page-id-20 .cf-support-navigation-section { padding-top:44px !important; padding-bottom:60px !important; }
.page-id-20 .cf-support-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.page-id-20 .cf-support-navigation-heading { margin-bottom:28px; }
.cf-article-sticky .eyebrow { font-size:11px; letter-spacing:.14em; }
.cf-event-details dl { margin:0; }
.cf-event-details dl div { padding:18px 0; border-top:1px solid #dce6df; }
.cf-event-details dt { font-size:11px; text-transform:uppercase; letter-spacing:.09em; color:#64766c; font-weight:700; }
.cf-event-details dd { margin:8px 0 0; font-size:16px; line-height:1.6; color:#1c3b2e; overflow-wrap:anywhere; }
.cf-article-breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; font-size:12px; color:#63776a; margin:0 0 20px; }
.cf-news-detail-page .cf-news-detail-body-section { padding-top:48px; }
.cf-news-detail-page .cf-article-breadcrumbs { margin-bottom:20px; }
.site-main .cf-article-body-title { color:#193e30; font-size:36px !important; line-height:1.25 !important; letter-spacing:0 !important; margin:0 0 28px; overflow-wrap:anywhere; }
.cf-article-published { color:#687c6e; font-size:13px; margin:0 0 32px; }
.cf-article-columns--guide .cf-article-body-title { margin-bottom:16px; }
.cf-article-toc ol { display:grid; gap:6px; list-style:none; padding:0; margin:0; }
.cf-article-toc li { margin:0; padding:0; line-height:1.5; }
.cf-article-toc a { position:relative; display:block; padding:10px 14px 10px 30px; border-bottom:1px solid #e1e8e2; color:#3b5447; font-size:14px; line-height:1.5; overflow-wrap:anywhere; }
.cf-article-toc a::before { content:""; position:absolute; left:14px; top:18px; width:5px; height:5px; border-radius:50%; background:currentColor; }
.cf-article-toc a:focus-visible { outline:2px solid #006937; outline-offset:2px; }
.cf-article-toc a:hover,.cf-article-toc a.is-active { color:#006937; text-decoration:underline; }
.cf-article-toc .cf-toc-level-3 { padding-left:12px; }
.cf-article-toc .cf-toc-level-4 { padding-left:24px; }
.cf-article-toc .cf-toc-level-5 { padding-left:36px; }
.cf-news-detail-entry :is(h2,h3,h4,h5) { scroll-margin-top:calc(var(--cf-header-height,96px) + 30px); }
.cf-news-detail-entry img { max-width:100%; height:auto; border-radius:5px; }
.cf-news-detail-entry figure { margin:28px 0; }
.cf-news-detail-entry table { display:block; max-width:100%; overflow-x:auto; }
.cf-inline-product { display:flex; gap:20px; align-items:center; border:1px solid #d6e2da; background:#f4f8f5; padding:20px; margin:32px 0; border-radius:8px; }
.cf-inline-product img { width:96px; height:96px; object-fit:contain; background:white; }
.cf-inline-product div { flex:1; display:grid; gap:6px; }
.cf-inline-product small { font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.cf-inline-product a { font-weight:700; color:#095540; font-size:13px; }
.cf-exhibition-popup { --cf-popup-max-height:80dvh; --cf-popup-head-height:66px; --cf-popup-bottom-padding:16px; box-sizing:border-box; width:60vw; max-width:60vw; max-height:var(--cf-popup-max-height); padding:0 28px var(--cf-popup-bottom-padding); border:0; border-radius:4px; background:white; color:#213b31; overflow:hidden; box-shadow:0 24px 100px #0005; }
.cf-exhibition-popup::backdrop { background:rgba(0,15,10,.72); }
.cf-exhibition-popup-head { box-sizing:border-box; height:var(--cf-popup-head-height); display:flex; align-items:center; justify-content:space-between; gap:20px; padding:12px 0; }
.cf-exhibition-popup-head h2 { font-size:26px; margin:0; font-weight:500; }
.cf-exhibition-popup-head button { appearance:none; box-sizing:border-box; flex:0 0 42px; display:grid; place-items:center; width:42px; height:42px; min-height:42px; padding:0; border:1px solid #cfdbd3; border-radius:50%; background:#f3f7f4; color:#213b31; font:30px/1 Arial,sans-serif; cursor:pointer; outline:none; }
.cf-exhibition-popup-head button:hover { background:#e5eee8; border-color:#91aa9a; }
.cf-exhibition-popup .cf-exhibition-popup-head button[data-popup-close] { border-radius:50% !important; position:relative; z-index:1; touch-action:manipulation; }
.cf-exhibition-popup-head button:focus-visible { outline:none; box-shadow:0 0 0 3px #c6ddce; }
.cf-exhibition-popup-head button::before, .cf-exhibition-popup-head button::after { content:none !important; }
.cf-exhibition-popup a { display:block; }
/* Preserve the attachment width/height aspect ratio for WordPress auto-sized lazy images. */
.cf-exhibition-popup img { width:100%; max-width:100%; height:auto; max-height:calc(var(--cf-popup-max-height) - var(--cf-popup-head-height) - var(--cf-popup-bottom-padding)); object-fit:contain; display:block; margin:0; }
@media(max-width:900px) {
  .cf-news-detail-layout.cf-article-columns { grid-template-columns:1fr; }
  .cf-article-sticky { position:static; max-height:none; }
  .cf-article-sidebar { grid-row:auto; }
  .cf-article-toc ol { max-height:240px; overflow-y:auto; }
  .cf-exhibition-photo-wall { display:block; columns:2; column-gap:18px; }
  .cf-exhibition-photo-column { display:contents; }
  .cf-exhibition-photo-wall .cf-exhibition-photo { display:inline-block; vertical-align:top; width:100%; margin-bottom:18px; break-inside:avoid; }
}
@media(max-width:600px) {
  .cf-news-detail-page .cf-news-detail-body-section { padding-top:32px; }
  .cf-news-detail-page .cf-article-breadcrumbs { margin-bottom:16px; }
  .site-main .cf-article-body-title { font-size:28px !important; margin-bottom:24px; }
  .page-id-20 .cf-support-grid { grid-template-columns:1fr; }
  .cf-home-exhibitions .split-head { display:block; }
  .cf-home-exhibitions .split-head>a { margin-top:22px; }
  .cf-exhibition-photo-wall { columns:1; }
  .cf-exhibition-photo-wall .cf-exhibition-photo { margin-bottom:14px; }
  .home .cf-home-news-tabs button { padding:0 12px; }
  .cf-article-sticky { padding:22px; }
  .cf-exhibition-popup { --cf-popup-max-height:92dvh; --cf-popup-head-height:58px; --cf-popup-bottom-padding:12px; width:94vw; max-width:94vw; padding:0 12px var(--cf-popup-bottom-padding); }
  .cf-exhibition-popup-head { padding:8px 0; }
  .cf-exhibition-popup-head h2 { font-size:20px; }
  .cf-inline-product { flex-wrap:wrap; padding:16px; }
}
/* Keep the explicit dismiss target accessible on touch screens, including landscape. */
@media(max-width:900px), (pointer:coarse) {
  .cf-exhibition-popup {
    --cf-popup-max-height:92vh;
    --cf-popup-max-height:calc(100dvh - 2 * max(12px, env(safe-area-inset-top), env(safe-area-inset-bottom)));
    --cf-popup-head-height:68px;
    --cf-popup-bottom-padding:12px;
    width:94vw;
    max-width:calc(100vw - 2 * max(12px, env(safe-area-inset-left), env(safe-area-inset-right)));
    padding:0 12px var(--cf-popup-bottom-padding);
  }
  .cf-exhibition-popup-head { padding:10px 0; }
  .cf-exhibition-popup-head button[data-popup-close] { flex:0 0 48px; width:48px; height:48px; min-width:48px; min-height:48px; }
}
@media(prefers-reduced-motion:reduce) {
  .home .cf-home-category-card .cf-home-category-card-image,.cf-exhibition-photo-wall img { transition:none; }
}
