/* HC+ common components. Frozen v12 header styles are loaded unchanged first. */
.chrome-menu { opacity:0; }
.chrome-menu-inner { box-sizing:border-box; width:100%; max-width:1272px; margin:0 auto; padding:96px 16px 64px; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:96px; min-height:100dvh; }
.chrome-menu-inner::before,.chrome-menu-inner::after { display:none; }
.chrome-menu-groups { display:grid; gap:32px; }
.chrome-menu-label { color: var(--hcp-white); font-family: var(--hcp-font-latin); font-size: var(--hcp-fs-label); font-weight: var(--hcp-fw-heading); letter-spacing:1.32px; line-height: var(--hcp-lh-label); margin:0 0 16px; }
.chrome-menu-group .menu-open-link-text { margin-bottom:24px; }
.chrome-menu-group .menu-open-link-text:last-child { margin-bottom:0; }
.chrome-menu-feature { align-self:center; }
.chrome-interview-card { display:block; color: var(--hcp-white); text-decoration:none; }
.chrome-interview-card:hover .chrome-interview-title { text-decoration:underline; }
.chrome-interview-card:focus-visible { outline: 2px solid var(--hcp-white); outline-offset:8px; }
.chrome-interview-image { display:block; width:100%; aspect-ratio:16/9; object-fit:contain; }
.chrome-interview-title { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; margin:24px 0 16px; font-size: var(--hcp-fs-lead); font-weight: var(--hcp-fw-heading); line-height: var(--hcp-lh-lead); }
.chrome-interview-name { color: var(--hcp-white); margin-bottom:4px; }
.chrome-interview-role { color: var(--hcp-white); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.chrome-footer .container-1272px { width:100%; max-width:1272px; margin:0 auto; padding:0 16px; }
.chrome-footer-grid { display:grid; grid-template-columns:1.6fr 1fr 1fr 1.4fr; gap:32px; }
.chrome-footer-column,.chrome-footer-brand { min-width:0; }
.chrome-footer-logo { display:block; max-width:380px; }
.chrome-footer-logo img { width:100%; display:block; }
.chrome-footer .footer-tagline-text { margin:16px 0; }
.chrome-footer-operator { color: var(--hcp-white); font-size: var(--hcp-fs-small); line-height: var(--hcp-lh-small); margin:16px 0; }
.chrome-footer-social { display:inline-flex; align-items:center; gap:8px; color: var(--hcp-white); font-size: var(--hcp-fs-body); text-decoration:none; }
.chrome-footer-social:hover { text-decoration:underline; }
.chrome-footer .footer-nav-header-text { margin-top:0; font-weight: var(--hcp-fw-body); line-height: var(--hcp-lh-body); }
@media (max-width:767px) {
 .chrome-menu-inner { grid-template-columns:minmax(0,1fr); gap:40px; padding-top:96px; padding-bottom:40px; }
 .chrome-interview-title { font-size: var(--hcp-fs-small); margin-top:16px; }
 .chrome-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .chrome-footer-brand,.chrome-footer-about { grid-column:1/-1; }
 .chrome-footer .copywrite-text { text-align:center; }
}

.chrome-footer-term-part { display:inline-block; }

/* v2: CSS-only visual states, independent of Webflow interactions. */
.top-header-with-tagline .custom-nav-button { width:40px; height:40px; top:20px; z-index:30; }
.chrome-toggle { position:relative; visibility:hidden; border:0; border-radius:0; background: transparent; color: var(--hcp-text); }
.chrome-js .chrome-toggle { visibility:visible; }
.chrome-toggle::before,.chrome-toggle::after { content:""; position:absolute; left:9px; top:calc(50% - .75px); width:22px; height:1.5px; background: currentcolor; transform-origin:center; transition:transform .25s ease; }
.chrome-toggle::before { transform:translateY(-4.25px); }
.chrome-toggle::after { transform:translateY(4.25px); }
.chrome-toggle:focus-visible { outline: 2px solid currentcolor; outline-offset:4px; }
.top-header-with-tagline .chrome-menu { display:block; position:fixed; inset:0; z-index:20; overflow-y:auto; opacity:0; transform:translateY(-8px); visibility:hidden; pointer-events:none; transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s; }
body.chrome-menu-open { overflow:hidden; }
.chrome-menu-open .chrome-toggle { color: var(--hcp-white); }
.chrome-menu-open .chrome-toggle::before { transform:translateY(0) rotate(45deg); }
.chrome-menu-open .chrome-toggle::after { transform:translateY(0) rotate(-45deg); }
.chrome-menu-open .top-header-with-tagline .chrome-menu { opacity:1; transform:translateY(0); visibility:visible; pointer-events:auto; transition-duration:.3s,.3s,0s; transition-delay:0s; }
@media (prefers-reduced-motion:reduce) {
 .chrome-toggle::before,.chrome-toggle::after,.top-header-with-tagline .chrome-menu,.chrome-menu-open .top-header-with-tagline .chrome-menu { transition:none; }
}

/* v3: existing white brand, centered on the close button's y=40px. */
.chrome-menu-logo { position:absolute; top:28px; left:max(16px,calc((100vw - 1240px)/2)); display:block; }
.chrome-menu-logo img { display:block; height:24px; width:auto; }
.chrome-menu-logo:focus-visible { outline: 2px solid var(--hcp-white); outline-offset:4px; }

.hcp-list-meta { display:flex; align-items:baseline; flex-wrap:wrap; gap:12px; margin-bottom:8px; }

/* 2.5.4: reserve more space after the logo; keep the right navigation anchored. */
@media (min-width:1100px) and (max-width:1279px) {
 .top-header-with-tagline .top-header-primary { margin-left:16px; }
 .top-header-with-tagline .top-primary-nav-list { gap:20px; }
}
@media (min-width:1280px) {
 .top-header-with-tagline .top-header-primary { margin-left:32px; }
 .top-header-with-tagline .top-primary-nav-list { gap:32px; }
}

/* 2.5.6: follow the logo column with a readable 10px minimum. */
@media (min-width:1100px) {
 .top-header-with-tagline .top-header-tagline { font-size: max(10px,calc(clamp(220px,24vw,340px) / 30.1)); white-space:nowrap; }
}
@media (min-width:1100px) and (max-width:1199px) {
 .top-header-with-tagline .top-header-tagline { font-size: max(10px,calc(clamp(220px,calc(24vw - 4px),340px) / 30.1)); }
}
