/*
Theme Name: FUV Group Blocksy Child
Theme URI: https://fuv.gr
Description: FUV Group presentation site for the Blocksy parent theme.
Author: FUV Group
Template: blocksy
Version: 1.0.0
Text Domain: fuv-group-blocksy
*/

/* FUV Group - clean static stylesheet */
@font-face {
  font-family: "Inter FUV";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("./fonts/inter-variable.woff2") format("woff2");
}

@font-face {
  font-family: "Inter FUV";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("./fonts/inter-variable-italic.woff2") format("woff2");
}

:root {
  --navy: #001f38;
  --navy-2: #062b46;
  --logo-navy: #001b38;
  --sky: #00a8df;
  --sky-soft: #dff5fc;
  --paper: #f5f7f8;
  --white: #ffffff;
  --ink: #102b3b;
  --muted: #60727d;
  --line: #d7e0e4;
  --shadow: 0 20px 55px rgba(0, 31, 56, 0.12);
  --fuv-font-sans: "Inter FUV", Inter, "Segoe UI", Arial, sans-serif;
  --fuv-type-nav: .7rem;
  --fuv-type-label: .69rem;
  --fuv-type-body: .88rem;
  --fuv-type-card-title: 1.12rem;
  --fuv-type-section-title: clamp(1.4rem, 1.7vw, 2rem);
  --fuv-type-page-title: clamp(1.55rem, 2vw, 2.45rem);
}

/* FUV Group — first homepage direction */
.fuvg-page { background: white; color: var(--ink); }
.fuvg-shell { margin: 0 auto; max-width: 1440px; padding-left: 42px; padding-right: 42px; }
.fuvg-kicker { color: var(--sky); font-size: .7rem; font-weight: 900; letter-spacing: .16em; margin: 0 0 22px; text-transform: uppercase; }
.fuvg-kicker-light { color: #75d8f5; }
.fuvg-header { background: var(--logo-navy); color: white; position: relative; z-index: 30; }
.fuvg-utility { background: #00182c; border-bottom: 1px solid rgba(255,255,255,.09); }
.fuvg-utility-inner { align-items: center; display: flex; gap: 22px; justify-content: flex-end; min-height: 34px; }
.fuvg-utility-inner a, .fuvg-utility-inner span { color: #a9c3ce; font-size: .65rem; font-weight: 750; }
.fuvg-utility-inner a:hover { color: white; }
.fuvg-header-inner { align-items: center; display: grid; gap: 40px; grid-template-columns: 220px 1fr; min-height: 88px; }
.fuvg-brand { align-items: center; display: inline-flex; gap: 12px; width: max-content; }
.fuvg-brand img { height: 58px; width: 58px; }
.fuvg-brand > span { color: white; font-size: 1.18rem; font-weight: 850; letter-spacing: -.035em; }
.fuvg-nav { align-items: center; display: flex; gap: clamp(20px, 2.1vw, 38px); justify-content: flex-end; }
.fuvg-nav a { color: #d5e6ed; font-size: clamp(.7rem, .8vw, .82rem); font-weight: 750; }
.fuvg-nav a:hover { color: var(--sky); }
.fuvg-mobile-nav { display: none; }
.fuvg-hero { color: white; min-height: calc(100vh - 122px); overflow: hidden; position: relative; }
.fuvg-hero-image { height: 100%; inset: 0; object-fit: cover; position: absolute; width: 100%; }
.fuvg-hero-shade { background: linear-gradient(90deg, rgba(0,31,56,.98) 0%, rgba(0,31,56,.9) 38%, rgba(0,31,56,.38) 70%, rgba(0,31,56,.14) 100%); inset: 0; position: absolute; }
.fuvg-hero-content { display: flex; flex-direction: column; justify-content: center; min-height: calc(100vh - 122px); padding-bottom: 96px; padding-top: 96px; position: relative; z-index: 2; }
.fuvg-hero h1 { font-size: clamp(4.3rem, 8.2vw, 8.7rem); letter-spacing: -.075em; line-height: .82; margin: 0; max-width: 900px; }
.fuvg-hero-lead { color: #c2d6df; font-size: clamp(.96rem, 1.25vw, 1.18rem); margin: 38px 0; max-width: 680px; }
.fuvg-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.fuvg-button { align-items: center; display: inline-flex; font-size: .76rem; font-weight: 900; gap: 42px; justify-content: space-between; min-height: 54px; padding: 14px 19px; }
.fuvg-button-primary { background: var(--sky); color: var(--navy); }
.fuvg-button-primary:hover { background: white; }
.fuvg-button-outline { border: 1px solid rgba(255,255,255,.32); color: white; }
.fuvg-button-outline:hover { border-color: var(--sky); color: var(--sky); }
.fuvg-hero-note { background: rgba(0,31,56,.92); border-left: 3px solid var(--sky); bottom: 0; display: flex; flex-direction: column; gap: 5px; padding: 26px 32px; position: absolute; right: clamp(28px, 5vw, 84px); width: min(330px, calc(100% - 56px)); z-index: 3; }
.fuvg-hero-note span { color: #7bd8f3; font-size: .66rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.fuvg-hero-note strong { font-size: 1.35rem; line-height: 1.15; }
.fuvg-channel { background: #002641; color: white; padding: 120px 0 130px; }
.fuvg-section-heading { align-items: end; display: grid; gap: 80px; grid-template-columns: 1.2fr .8fr; margin-bottom: 64px; }
.fuvg-section-heading h2, .fuvg-group h2, .fuvg-knowledge h2, .fuvg-contact h2 { color: var(--navy); font-size: clamp(3.1rem, 5.8vw, 6rem); letter-spacing: -.065em; line-height: .92; margin: 0; }
.fuvg-section-heading > p { color: var(--muted); font-size: .96rem; margin: 0; max-width: 560px; }
.fuvg-section-heading-light h2 { color: white; }
.fuvg-section-heading-light > p { color: #bbd0da; }
.fuvg-featured-video { display: grid; grid-template-columns: 1.35fr .65fr; min-height: 520px; overflow: hidden; position: relative; }
.fuvg-featured-video > img { height: 520px; object-fit: cover; width: 100%; }
.fuvg-featured-video > div { background: var(--sky); color: var(--navy); display: flex; flex-direction: column; justify-content: flex-end; padding: 46px; }
.fuvg-featured-video small { font-size: .64rem; font-weight: 900; letter-spacing: .1em; }
.fuvg-featured-video strong { font-size: clamp(1.8rem, 2.8vw, 3.2rem); letter-spacing: -.05em; line-height: 1; margin: 30px 0 40px; }
.fuvg-featured-video > div > span { border-top: 1px solid rgba(0,31,56,.28); font-size: .74rem; font-weight: 900; padding-top: 16px; }
.fuvg-play { align-items: center; background: white; border-radius: 50%; color: var(--navy); display: flex; font-size: 1.6rem; height: 78px; justify-content: center; left: calc(67.5% - 39px); padding-left: 5px; position: absolute; top: calc(50% - 39px); width: 78px; z-index: 2; }
.fuvg-featured-video:hover .fuvg-play { background: var(--navy); color: white; }
.fuvg-group { padding: 128px 0; }
.fuvg-group-grid { display: grid; gap: 70px; grid-template-columns: .35fr 1.65fr; }
.fuvg-group h2 { max-width: 980px; }
.fuvg-group-grid > div > p { color: var(--muted); font-size: 1.05rem; margin: 32px 0 0; max-width: 850px; }
.fuvg-history { background: var(--sky-soft); padding: 116px 0 128px; }
.fuvg-history-grid { display: grid; gap: 70px; grid-template-columns: .45fr 1.55fr; }
.fuvg-year { color: var(--navy); display: block; font-size: clamp(2rem, 3.3vw, 3.5rem); letter-spacing: -.055em; line-height: 1; }
.fuvg-history-copy h2 { color: var(--navy); font-size: clamp(3.1rem, 5.8vw, 6rem); letter-spacing: -.065em; line-height: .92; margin: 0 0 34px; }
.fuvg-history-copy p { color: var(--muted); font-size: 1rem; margin: 0 0 18px; max-width: 830px; }
.fuvg-history-copy a { border-bottom: 1px solid var(--sky); color: var(--navy); font-weight: 850; }
.fuvg-ecosystem-grid { border-left: 1px solid rgba(0,31,56,.17); border-top: 1px solid rgba(0,31,56,.17); display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 76px; }
.fuvg-ecosystem-grid > a { border-bottom: 1px solid rgba(0,31,56,.17); border-right: 1px solid rgba(0,31,56,.17); display: flex; flex-direction: column; min-height: 310px; padding: 30px; }
.fuvg-ecosystem-grid > a:hover { background: white; }
.fuvg-ecosystem-grid > a > span { color: #008fbd; font-size: .62rem; font-weight: 900; letter-spacing: .1em; }
.fuvg-ecosystem-grid h3 { color: var(--navy); font-size: 1.45rem; letter-spacing: -.035em; line-height: 1.08; margin: 52px 0 16px; }
.fuvg-ecosystem-grid p { color: var(--muted); font-size: .8rem; margin: 0 0 24px; }
.fuvg-ecosystem-grid strong { border-top: 1px solid rgba(0,31,56,.15); display: flex; font-size: .7rem; justify-content: space-between; margin-top: auto; padding-top: 14px; }
.fuvg-ecosystem-grid strong span { color: var(--sky); }
.fuvg-expertise { background: var(--paper); padding: 120px 0 132px; }
.fuvg-sector-grid { border-left: 1px solid var(--line); border-top: 1px solid var(--line); display: grid; grid-template-columns: repeat(4, 1fr); }
.fuvg-sector-grid > a { background: white; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); display: flex; flex-direction: column; min-height: 385px; padding: 34px; }
.fuvg-sector-grid > a:hover { background: var(--sky-soft); }
.fuvg-sector-grid h3 { color: var(--navy); font-size: 1.45rem; letter-spacing: -.035em; line-height: 1.08; margin: 0 0 18px; }
.fuvg-sector-grid p { color: var(--muted); font-size: .83rem; margin: 0 0 26px; }
.fuvg-sector-grid strong { border-top: 1px solid var(--line); display: flex; font-size: .72rem; justify-content: space-between; margin-top: auto; padding-top: 15px; }
.fuvg-sector-grid strong span { color: var(--sky); }
.fuvg-knowledge { background: var(--navy); color: white; padding: 120px 0; }
.fuvg-knowledge-grid { align-items: start; display: grid; gap: 110px; grid-template-columns: .9fr 1.1fr; }
.fuvg-knowledge h2 { color: white; }
.fuvg-knowledge-copy > p { border-left: 2px solid var(--sky); color: #bdd1da; margin: 0 0 52px; padding-left: 28px; }
.fuvg-proof-grid { border-left: 1px solid rgba(255,255,255,.16); border-top: 1px solid rgba(255,255,255,.16); display: grid; grid-template-columns: 1fr 1fr; }
.fuvg-proof-grid article { border-bottom: 1px solid rgba(255,255,255,.16); border-right: 1px solid rgba(255,255,255,.16); min-height: 150px; padding: 25px; }
.fuvg-proof-grid strong { display: block; font-size: 1.05rem; }
.fuvg-proof-grid span { color: #8fb0bf; display: block; font-size: .71rem; margin-top: 28px; }
.fuvg-trusted { background: white; padding: 120px 0 132px; }
.fuvg-client-grid { border-left: 1px solid var(--line); border-top: 1px solid var(--line); display: grid; grid-template-columns: repeat(4, 1fr); }
.fuvg-client-grid figure { align-items: center; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); display: flex; flex-direction: column; justify-content: center; min-height: 220px; padding: 26px; }
.fuvg-client-grid img { height: 112px; object-fit: contain; width: 100%; }
.fuvg-client-grid figcaption { color: var(--muted); font-size: .65rem; font-weight: 800; margin-top: 18px; text-align: center; }
.fuvg-partners { background: #002641; color: white; padding: 120px 0 132px; }
.fuvg-partner-grid { border-left: 1px solid rgba(255,255,255,.16); border-top: 1px solid rgba(255,255,255,.16); display: grid; grid-template-columns: repeat(4, 1fr); }
.fuvg-partner-grid a { border-bottom: 1px solid rgba(255,255,255,.16); border-right: 1px solid rgba(255,255,255,.16); display: grid; gap: 10px; grid-template-columns: 1fr auto; min-height: 155px; padding: 26px; }
.fuvg-partner-grid article { align-items: center; background: #fff; border-bottom: 1px solid rgba(0,38,65,.14); border-right: 1px solid rgba(0,38,65,.14); display: flex; justify-content: center; min-height: 180px; padding: 30px; }
.fuvg-partner-grid article img { height: 92px; object-fit: contain; width: 100%; }
.fuvg-partner-grid a:hover { background: var(--sky); color: var(--navy); }
.fuvg-partner-grid strong { font-size: 1rem; }
.fuvg-partner-grid span { color: #9bb9c6; font-size: .7rem; grid-column: 1 / -1; }
.fuvg-partner-grid a:hover span { color: var(--navy); }
.fuvg-partner-grid i { color: var(--sky); font-style: normal; }
.fuvg-partner-grid a:hover i { color: var(--navy); }
.fuvg-projects { padding: 120px 0 132px; }
.fuvg-project-grid { display: grid; gap: 18px; grid-template-columns: repeat(3, 1fr); }
.fuvg-project-grid article { background: var(--navy); color: white; min-height: 530px; overflow: hidden; position: relative; }
.fuvg-project-grid img { height: 530px; object-fit: contain; transition: transform .35s ease; width: 100%; }
.fuvg-project-grid article::after { background: linear-gradient(transparent 38%, rgba(0,31,56,.94)); content: ""; inset: 0; position: absolute; }
.fuvg-project-grid article:hover img { transform: none; }
.fuvg-project-grid article > div { bottom: 0; left: 0; padding: 30px; position: absolute; right: 0; z-index: 2; }
.fuvg-project-grid span { color: #74d8f4; font-size: .65rem; font-weight: 900; letter-spacing: .12em; }
.fuvg-project-grid h3 { font-size: 1.5rem; line-height: 1.1; margin: 12px 0 0; }
.fuvg-contact { background: var(--sky); padding: 100px 0; }
.fuvg-contact-grid { align-items: end; display: grid; gap: 80px; grid-template-columns: 1.25fr .75fr; }
.fuvg-contact h2 { max-width: 900px; }
.fuvg-contact .fuvg-kicker { color: var(--navy); }
.fuvg-contact .fuvg-button-primary { background: var(--navy); color: white; justify-self: end; }
.fuvg-contact .fuvg-button-primary:hover { background: white; color: var(--navy); }
.fuvg-footer { background: var(--logo-navy); color: white; padding: 42px 0; }
.fuvg-footer-grid { align-items: center; display: grid; gap: 35px; grid-template-columns: 1fr 1fr 1fr; }
.fuvg-footer p { color: #89a9b6; font-size: .72rem; margin: 0; text-align: center; }
.fuvg-footer-grid > span { color: #89a9b6; font-size: .7rem; justify-self: end; }

/* FUV Group — doric Greek direction */
.fuvg-doric { --fuvg-rule: rgba(0,31,56,.22); }
.fuvg-doric .fuvg-header { border-bottom: 1px solid rgba(255,255,255,.14); }
.fuvg-doric .fuvg-hero { background: var(--navy); min-height: min(760px, calc(100vh - 122px)); }
.fuvg-doric .fuvg-hero-content { min-height: min(760px, calc(100vh - 122px)); }
.fuvg-doric .fuvg-hero-content::after { background: var(--sky); bottom: 0; content: ""; height: 7px; left: 42px; position: absolute; width: 94px; }
.fuvg-doric .fuvg-hero h1 { font-size: clamp(4.6rem, 9vw, 9.4rem); line-height: .84; }
.fuvg-doric .fuvg-hero-note { background: transparent; border-left: 1px solid rgba(255,255,255,.35); border-top: 1px solid rgba(255,255,255,.35); }
.fuvg-doric .fuvg-channel { background: var(--logo-navy); }
.fuvg-channel-link { border: 1px solid rgba(255,255,255,.25); color: white; display: grid; grid-template-columns: 1.1fr .9fr; min-height: 420px; }
.fuvg-channel-link > div { display: flex; flex-direction: column; justify-content: flex-end; padding: clamp(34px, 5vw, 68px); }
.fuvg-channel-link small { color: var(--sky); font-size: .64rem; font-weight: 900; letter-spacing: .11em; }
.fuvg-channel-link strong { font-size: clamp(2rem, 3.5vw, 4.2rem); letter-spacing: -.055em; line-height: .98; margin: 34px 0 50px; max-width: 880px; }
.fuvg-channel-link > div > span { border-top: 1px solid rgba(255,255,255,.25); font-size: .74rem; font-weight: 900; padding-top: 16px; }
.fuvg-channel-link > b { align-items: flex-end; border-left: 1px solid rgba(255,255,255,.25); color: rgba(255,255,255,.13); display: flex; font-size: clamp(3rem, 6vw, 7rem); justify-content: flex-end; letter-spacing: -.07em; line-height: .75; overflow: hidden; padding: 36px; text-align: right; }
.fuvg-channel-link > img { border-left: 1px solid rgba(255,255,255,.25); height: 100%; object-fit: cover; width: 100%; }
.fuvg-channel-link:hover { border-color: var(--sky); }
.fuvg-channel-profile { background: var(--logo-navy); border: 1px solid rgba(255,255,255,.25); color: #fff; isolation: isolate; min-height: clamp(510px, 43vw, 660px); overflow: hidden; position: relative; }
.fuvg-channel-profile::after { background: linear-gradient(90deg, rgba(0,27,56,.98) 0%, rgba(0,27,56,.92) 39%, rgba(0,27,56,.38) 66%, rgba(0,27,56,.1) 100%); content: ""; inset: 0; position: absolute; z-index: -1; }
.fuvg-channel-profile-photo { bottom: 0; height: 92%; object-fit: contain; object-position: bottom right; position: absolute; right: clamp(18px, 3vw, 48px); width: min(41%, 560px); -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 15%, #000 100%); mask-image: linear-gradient(90deg, transparent 0%, #000 15%, #000 100%); z-index: -2; }
.fuvg-channel-profile-copy { display: flex; flex-direction: column; justify-content: center; min-height: clamp(510px, 43vw, 660px); padding: clamp(44px, 6vw, 84px); position: relative; width: min(58%, 760px); z-index: 1; }
.fuvg-channel-profile-copy > small { color: var(--sky); font-size: .68rem; font-weight: 900; letter-spacing: .13em; }
.fuvg-channel-profile-copy h1 { font-size: clamp(2.7rem, 4.8vw, 5.7rem); letter-spacing: -.055em; line-height: .94; margin: 26px 0 34px; }
.fuvg-channel-profile-copy h2 { color: #fff; font-size: clamp(2.7rem, 4.8vw, 5.7rem); letter-spacing: -.055em; line-height: .94; margin: 26px 0 34px; }
.fuvg-channel-profile-copy > p { font-size: clamp(.86rem, 1.05vw, 1rem); line-height: 1.65; margin: 30px 0 0; max-width: 650px; }
.fuvg-channel-profile-stats { border-bottom: 1px solid rgba(255,255,255,.26); border-top: 1px solid rgba(255,255,255,.26); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; }
.fuvg-channel-profile-stats > div { padding: 16px 18px 17px 0; }
.fuvg-channel-profile-stats > div + div { border-left: 1px solid rgba(255,255,255,.2); padding-left: 18px; }
.fuvg-channel-profile-stats dt { color: rgba(255,255,255,.66); font-size: .62rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.fuvg-channel-profile-stats dd { font-size: clamp(1.35rem, 2.35vw, 2.35rem); font-weight: 850; letter-spacing: -.04em; line-height: 1; margin: 8px 0 0; }
.fuvg-channel-profile-home { margin-top: 24px; }
.fuvg-channel-home-link { align-items: center; background: var(--logo-navy); border: 1px solid rgba(255,255,255,.25); border-top: 0; color: #fff; display: grid; grid-template-columns: 150px 1fr auto; min-height: 150px; padding: 0 34px 0 0; }
.fuvg-channel-home-link > img { aspect-ratio: 1; height: 150px; object-fit: contain; width: 150px; }
.fuvg-channel-home-link > span { border-left: 1px solid rgba(255,255,255,.22); display: flex; flex-direction: column; gap: 8px; padding: 24px 30px; }
.fuvg-channel-home-link small { color: var(--sky); font-size: .62rem; font-weight: 900; letter-spacing: .12em; }
.fuvg-channel-home-link strong { font-size: clamp(1.15rem, 2vw, 1.75rem); letter-spacing: -.035em; line-height: 1.1; }
.fuvg-channel-home-link > b { color: var(--sky); font-size: 1.6rem; }
.fuvg-channel-home-link:hover { border-color: var(--sky); }
.fuvg-doric .fuvg-history { background: #f2f0ea; }
.fuvg-doric .fuvg-expertise { background: white; }
.fuvg-doric .fuvg-sector-grid > a { background: transparent; }
.fuvg-doric .fuvg-sector-grid > a:hover { background: #f2f0ea; }
.fuvg-doric .fuvg-client-grid p { align-items: flex-end; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); color: var(--navy); display: flex; font-size: clamp(1rem, 1.5vw, 1.35rem); font-weight: 850; letter-spacing: -.025em; margin: 0; min-height: 140px; padding: 26px; }
.fuvg-doric .fuvg-project-grid { border-left: 1px solid var(--fuvg-rule); border-top: 1px solid var(--fuvg-rule); gap: 0; }
.fuvg-doric .fuvg-project-grid article { background: white; border-bottom: 1px solid var(--fuvg-rule); border-right: 1px solid var(--fuvg-rule); color: var(--navy); min-height: 340px; overflow: visible; }
.fuvg-doric .fuvg-project-grid article::after { display: none; }
.fuvg-doric .fuvg-project-grid article > div { bottom: auto; display: flex; flex-direction: column; height: 100%; justify-content: flex-end; padding: 34px; position: static; }
.fuvg-doric .fuvg-project-grid span { color: #008fbd; }
.fuvg-doric .fuvg-project-grid h3 { font-size: clamp(1.6rem, 2.4vw, 2.5rem); letter-spacing: -.045em; margin-top: 80px; }
.fuvg-doric .fuvg-milestones { border-left: 1px solid var(--fuvg-rule); border-top: 1px solid var(--fuvg-rule); display: grid; grid-template-columns: repeat(5, 1fr); margin-top: 72px; }
.fuvg-doric .fuvg-milestones article { border-bottom: 1px solid var(--fuvg-rule); border-right: 1px solid var(--fuvg-rule); color: var(--navy); min-height: 180px; padding: 26px; }
.fuvg-doric .fuvg-milestones strong { display: block; font-size: 1.2rem; }
.fuvg-doric .fuvg-milestones span { color: var(--muted); display: block; font-size: .77rem; line-height: 1.55; margin-top: 38px; }

/* FUV Group — expanded 2026 draft */
.fuvg-nav { overflow: visible; }
.fuvg-nav-dropdown { position: relative; }
.fuvg-nav-dropdown summary { color: #d5e6ed; cursor: pointer; font-size: clamp(.7rem, .8vw, .82rem); font-weight: 750; list-style: none; }
.fuvg-nav-dropdown summary::-webkit-details-marker { display: none; }
.fuvg-nav-dropdown summary::after { color: var(--sky); content: " +"; }
.fuvg-nav-dropdown[open] summary::after { content: " −"; }
.fuvg-nav-dropdown.is-active summary { color: var(--sky); }
.fuvg-nav-dropdown > div { background: white; border-top: 3px solid var(--sky); box-shadow: var(--shadow); display: grid; min-width: 220px; padding: 10px; position: absolute; right: 0; top: calc(100% + 18px); z-index: 50; }
.fuvg-nav-dropdown > div a { border-bottom: 1px solid var(--line); color: var(--navy); padding: 11px 13px; white-space: nowrap; }
.fuvg-nav-dropdown > div a:last-child { border-bottom: 0; }
.fuvg-nav-dropdown > div a:hover { background: var(--sky-soft); }
.fuvg-nav-dropdown > .fuvg-nav-dropdown-wide { min-width: 310px; }
.fuvg-nav-dropdown.fuvg-channel-menu { position: static; }
.fuvg-channel-menu > .fuvg-channel-megamenu { gap: 0; grid-template-columns: 1.15fr .65fr 1fr; left: 50%; min-width: min(980px, calc(100vw - 84px)); padding: 0; right: auto; transform: translateX(-50%); }
.fuvg-channel-megamenu > div { display: flex; flex-direction: column; padding: 28px; }
.fuvg-channel-megamenu > div + div { border-left: 1px solid var(--line); }
.fuvg-channel-megamenu .fuvg-channel-mega-intro { background: var(--navy); color: white; gap: 20px; justify-content: space-between; }
.fuvg-channel-mega-intro > span, .fuvg-channel-menu-title { color: var(--sky); font-size: .62rem; font-weight: 900; letter-spacing: .12em; margin-bottom: 12px; text-transform: uppercase; }
.fuvg-channel-mega-intro > strong { font-size: 1.25rem; letter-spacing: -.025em; line-height: 1.22; }
.fuvg-channel-megamenu .fuvg-channel-mega-intro > a { border: 0; color: white; padding: 0; }
.fuvg-channel-megamenu .fuvg-channel-mega-intro > a:hover { background: transparent; color: var(--sky); }
.fuvg-definition { border-left: 3px solid var(--sky); color: var(--navy) !important; font-size: clamp(1.25rem, 2vw, 1.85rem) !important; font-weight: 750; line-height: 1.35; padding-left: 24px; }
.fuvg-awards-note { border-top: 1px solid var(--fuvg-rule); display: grid; gap: 40px; grid-template-columns: .45fr 1.55fr; margin-top: 72px; padding-top: 34px; }
.fuvg-awards-note p:last-child { color: var(--muted); margin: 0; }
.fuvg-channel-actions { display: flex; gap: 12px; margin-top: 26px; }
.fuvg-channel-format-nav { border: 1px solid rgba(255,255,255,.25); border-top: 0; display: grid; grid-template-columns: repeat(5, 1fr); }
.fuvg-channel-format-nav a { border-right: 1px solid rgba(255,255,255,.25); color: white; font-size: .72rem; font-weight: 900; padding: 19px 22px; scroll-margin-top: 150px; }
.fuvg-channel-format-nav a:last-child { border-right: 0; }
.fuvg-channel-format-nav a:hover { background: var(--sky); color: var(--navy); }
.fuvg-channel-format-nav a.is-active { background: var(--sky); color: var(--navy); }
.fuvg-channel-magazine { border: 1px solid rgba(255,255,255,.25); border-top: 0; display: grid; grid-template-columns: .55fr 1.45fr; }
.fuvg-channel-magazine-heading { border-right: 1px solid rgba(255,255,255,.25); display: flex; flex-direction: column; gap: 42px; justify-content: flex-start; min-height: 420px; padding: 30px; }
.fuvg-channel-magazine-heading small { color: var(--sky); font-size: .62rem; font-weight: 900; letter-spacing: .13em; }
.fuvg-channel-magazine-heading img { align-self: center; aspect-ratio: 1; height: auto; object-fit: contain; width: min(98%, 330px); }
.fuvg-channel-topic-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.fuvg-channel-topic-grid a { border-bottom: 1px solid rgba(255,255,255,.25); border-right: 1px solid rgba(255,255,255,.25); color: white; display: flex; flex-direction: column; isolation: isolate; justify-content: flex-end; min-height: 150px; overflow: hidden; position: relative; scroll-margin-top: 150px; }
.fuvg-channel-topic-grid a:nth-child(4n) { border-right: 0; }
.fuvg-channel-topic-grid a:nth-child(n+9) { border-bottom: 0; }
.fuvg-channel-topic-grid a::after { background: linear-gradient(180deg, rgba(0,31,56,.06), rgba(0,31,56,.94)); content: ""; inset: 0; position: absolute; z-index: -1; }
.fuvg-channel-topic-grid img { height: 100%; inset: 0; object-fit: cover; opacity: .7; position: absolute; transition: transform .25s ease, opacity .25s ease; width: 100%; z-index: -2; }
.fuvg-channel-topic-grid a:hover img { opacity: .88; transform: scale(1.035); }
.fuvg-channel-topic-grid strong { font-size: 1.05rem; letter-spacing: -.025em; line-height: 1.15; padding: 24px; position: relative; }
.fuvg-channel-standalone { min-height: calc(100vh - 176px); }
.fuvg-channel-articles { border: 1px solid rgba(255,255,255,.25); border-top: 0; display: grid; grid-template-columns: .34fr 1.66fr; scroll-margin-top: 130px; }
.fuvg-channel-articles-heading { border-right: 1px solid rgba(255,255,255,.25); display: flex; flex-direction: column; justify-content: space-between; min-height: 520px; padding: 30px; }
.fuvg-channel-articles-heading small { color: var(--sky); font-size: .62rem; font-weight: 900; letter-spacing: .13em; }
.fuvg-channel-articles-heading strong { font-size: clamp(2rem,3.8vw,4.6rem); letter-spacing: -.06em; line-height: .88; }
.fuvg-channel-article-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.fuvg-channel-article-grid article { border-bottom: 1px solid rgba(255,255,255,.25); border-right: 1px solid rgba(255,255,255,.25); min-height: 190px; padding: 24px; }
.fuvg-channel-article-grid article:nth-child(2n) { border-right: 0; }
.fuvg-channel-article-grid article:nth-last-child(-n+2) { border-bottom: 0; }
.fuvg-channel-article-grid time { color: var(--sky); display: block; font-size: .66rem; font-weight: 900; letter-spacing: .08em; margin-bottom: 34px; }
.fuvg-channel-article-grid h2 { color: #fff; font-size: 1.05rem; letter-spacing: -.02em; line-height: 1.35; margin: 0; }
.fuvg-channel-page .fuvg-header-inner { grid-template-columns: 250px 1fr; }
.fuvg-channel-page .fuvg-nav { gap: 22px; }
.fuvg-channel-page .fuvg-nav a.is-active { color: var(--sky); }
.fuvg-channel-page, .fuvg-channel-page .fuvg-channel, .fuvg-channel-page .fuvg-footer, .fuvg-channel-page .fuv-channel-utility, .fuvg-channel-page .fuv-channel-topic-bar { background: var(--logo-navy); }
.fuvg-activity-grid { border-left: 1px solid var(--line); border-top: 1px solid var(--line); display: grid; grid-template-columns: repeat(4, 1fr); }
.fuvg-activity-grid > a { border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); display: flex; flex-direction: column; min-height: 310px; padding: 30px; }
.fuvg-activity-grid > a:hover { background: #f2f0ea; }
.fuvg-activity-grid h3 { color: var(--navy); font-size: 1.4rem; margin: 42px 0 18px; }
.fuvg-activity-grid p { color: var(--muted); font-size: .82rem; margin: 0 0 24px; }
.fuvg-activity-grid strong { border-top: 1px solid var(--line); display: flex; font-size: .72rem; justify-content: space-between; margin-top: auto; padding-top: 15px; }
.fuvg-activity-grid strong span { color: var(--sky); }
.fuvg-project-placeholder { border: 1px solid var(--fuvg-rule); min-height: 360px; padding: clamp(34px, 6vw, 80px); }
.fuvg-project-placeholder > span { color: #008fbd; font-size: .65rem; font-weight: 900; letter-spacing: .12em; }
.fuvg-project-placeholder h3 { color: var(--navy); font-size: clamp(2rem, 4vw, 4rem); letter-spacing: -.05em; line-height: 1; margin: 80px 0 20px; }
.fuvg-project-placeholder p { color: var(--muted); max-width: 620px; }
.fuvg-consulting { background: #f2f0ea; padding: 120px 0 132px; }
.fuvg-consulting-grid { display: grid; gap: 110px; grid-template-columns: .9fr 1.1fr; }
.fuvg-consulting h2, .fuvg-dual h2 { color: var(--navy); font-size: clamp(3rem, 5vw, 5.5rem); letter-spacing: -.06em; line-height: .94; margin: 0; }
.fuvg-consulting-grid > div:last-child > p { color: var(--muted); margin: 0 0 28px; }
.fuvg-consulting h3 { color: var(--navy); font-size: 1.1rem; margin: 38px 0 10px; }
.fuvg-consulting a { border-bottom: 1px solid var(--sky); color: var(--navy); font-weight: 850; }
.fuvg-proof-grid a { border-bottom: 1px solid rgba(255,255,255,.16); border-right: 1px solid rgba(255,255,255,.16); min-height: 150px; padding: 25px; }
.fuvg-proof-grid a:hover { background: rgba(255,255,255,.06); }
.fuvg-proof-grid a strong { display: block; font-size: 1.05rem; }
.fuvg-proof-grid a span { color: #8fb0bf; display: block; font-size: .71rem; margin-top: 28px; }
.fuvg-dual { padding: 120px 0 132px; }
.fuvg-dual-grid { border-left: 1px solid var(--fuvg-rule); border-top: 1px solid var(--fuvg-rule); display: grid; grid-template-columns: 1fr 1fr; }
.fuvg-dual article { border-bottom: 1px solid var(--fuvg-rule); border-right: 1px solid var(--fuvg-rule); display: flex; flex-direction: column; min-height: 500px; overflow: hidden; }
.fuvg-dual-image { aspect-ratio: 16 / 10; display: block; object-fit: cover; width: 100%; }
.fuvg-dual-copy { display: flex; flex: 1; flex-direction: column; padding: clamp(34px, 5vw, 70px); }
.fuvg-dual-copy p:not(.fuvg-kicker) { color: var(--muted); margin: 32px 0; max-width: 570px; }
.fuvg-dual-copy > a { border-top: 1px solid var(--fuvg-rule); display: block; font-size: .76rem; font-weight: 900; margin-top: auto; padding-top: 16px; }

@media (max-width: 1040px) {
  .fuvg-nav { display: none; }
  .fuvg-header-inner { grid-template-columns: 1fr auto; }
  .fuvg-mobile-nav { display: block; position: relative; }
  .fuvg-mobile-nav summary { border: 1px solid rgba(255,255,255,.3); cursor: pointer; font-size: .73rem; font-weight: 900; list-style: none; padding: 12px 16px; }
  .fuvg-mobile-nav nav { background: white; box-shadow: var(--shadow); display: flex; flex-direction: column; min-width: 280px; padding: 13px; position: absolute; right: 0; top: calc(100% + 10px); }
  .fuvg-mobile-nav nav a { border-bottom: 1px solid var(--line); color: var(--navy); font-size: .75rem; font-weight: 800; padding: 12px; }
  .fuvg-mobile-submenu summary { border: 0; border-bottom: 1px solid var(--line); color: var(--navy); font-size: .75rem; padding: 12px; }
  .fuvg-mobile-submenu summary::after { color: var(--sky); content: " +"; }
  .fuvg-mobile-submenu[open] summary::after { content: " −"; }
  .fuvg-mobile-submenu > div { background: #f4f8fa; display: grid; padding: 6px 12px; }
  .fuvg-mobile-nav nav .fuvg-mobile-submenu a { font-size: .69rem; padding-left: 16px; }
  .fuvg-sector-grid, .fuvg-activity-grid { grid-template-columns: repeat(2, 1fr); }
  .fuvg-ecosystem-grid, .fuvg-client-grid, .fuvg-partner-grid { grid-template-columns: repeat(2, 1fr); }
  .fuvg-featured-video { grid-template-columns: 1fr; }
  .fuvg-featured-video > div { min-height: 330px; }
  .fuvg-play { left: calc(50% - 39px); top: 481px; }
}

@media (max-width: 720px) {
  .fuvg-shell { padding-left: 22px; padding-right: 22px; }
  .fuvg-utility-inner { justify-content: space-between; }
  .fuvg-utility-inner > span { display: none; }
  .fuvg-header-inner { min-height: 78px; }
  .fuvg-brand img { height: 48px; width: 48px; }
  .fuvg-brand > span { font-size: 1rem; }
  .fuvg-hero, .fuvg-hero-content { min-height: calc(100vh - 112px); }
  .fuvg-hero-shade { background: rgba(0,31,56,.73); }
  .fuvg-hero-image { object-position: 60% center; }
  .fuvg-hero h1 { font-size: clamp(4rem, 22vw, 6.6rem); }
  .fuvg-hero-content { justify-content: flex-start; padding-bottom: 170px; padding-top: 90px; }
  .fuvg-hero-note { left: 22px; right: 22px; width: auto; }
  .fuvg-channel, .fuvg-group, .fuvg-history, .fuvg-expertise, .fuvg-knowledge, .fuvg-trusted, .fuvg-partners, .fuvg-projects { padding-bottom: 84px; padding-top: 84px; }
  .fuvg-section-heading, .fuvg-group-grid, .fuvg-history-grid, .fuvg-knowledge-grid, .fuvg-contact-grid { gap: 34px; grid-template-columns: 1fr; }
  .fuvg-section-heading { margin-bottom: 42px; }
  .fuvg-section-heading h2, .fuvg-group h2, .fuvg-history-copy h2, .fuvg-knowledge h2, .fuvg-contact h2 { font-size: clamp(2.8rem, 15vw, 4.8rem); }
  .fuvg-featured-video > img { height: 270px; }
  .fuvg-featured-video > div { min-height: 340px; padding: 28px; }
  .fuvg-play { height: 62px; left: calc(50% - 31px); top: 239px; width: 62px; }
  .fuvg-sector-grid, .fuvg-ecosystem-grid, .fuvg-proof-grid, .fuvg-partner-grid, .fuvg-project-grid { grid-template-columns: 1fr; }
  .fuvg-client-grid { grid-template-columns: repeat(2, 1fr); }
  .fuvg-doric .fuvg-client-grid p { min-height: 110px; padding: 20px; }
  .fuvg-client-grid figure { min-height: 170px; padding: 18px; }
  .fuvg-client-grid img { height: 88px; }
  .fuvg-sector-grid > a { min-height: 315px; }
  .fuvg-sector-grid h3 { margin-top: 48px; }
  .fuvg-project-grid article, .fuvg-project-grid img { min-height: 430px; }
  .fuvg-contact .fuvg-button-primary { justify-self: start; }
  .fuvg-footer-grid { grid-template-columns: 1fr; }
  .fuvg-footer p { text-align: left; }
  .fuvg-footer-grid > span { justify-self: start; }
  .fuvg-doric .fuvg-hero, .fuvg-doric .fuvg-hero-content { min-height: calc(100vh - 112px); }
  .fuvg-doric .fuvg-hero-content::after { left: 22px; }
  .fuvg-channel-link { grid-template-columns: 1fr; }
  .fuvg-channel-link > b { border-left: 0; border-top: 1px solid rgba(255,255,255,.25); min-height: 190px; }
  .fuvg-channel-link > img { aspect-ratio: 16 / 9; border-left: 0; border-top: 1px solid rgba(255,255,255,.25); height: auto; }
  .fuvg-channel-profile { min-height: 0; }
  .fuvg-channel-profile::after { background: linear-gradient(180deg, rgba(0,27,56,.02) 0%, rgba(0,27,56,.08) 38%, rgba(0,27,56,.96) 59%, var(--logo-navy) 100%); }
  .fuvg-channel-profile-photo { bottom: auto; height: auto; object-position: top right; right: 0; top: 0; width: 68%; }
  .fuvg-channel-profile-copy { min-height: 0; padding: calc(74% + 24px) 22px 34px; width: 100%; }
  .fuvg-channel-profile-copy h1 { font-size: clamp(2.05rem, 10.5vw, 3.2rem); margin: 18px 0 26px; }
  .fuvg-channel-profile-copy h2 { font-size: clamp(2.05rem, 10.5vw, 3.2rem); margin: 18px 0 26px; }
  .fuvg-channel-profile-copy > p { font-size: .82rem; margin-top: 24px; }
  .fuvg-channel-profile-stats > div { padding: 13px 9px 14px 0; }
  .fuvg-channel-profile-stats > div + div { padding-left: 9px; }
  .fuvg-channel-profile-stats dt { font-size: .5rem; letter-spacing: .07em; }
  .fuvg-channel-profile-stats dd { font-size: clamp(1.1rem, 5.3vw, 1.45rem); margin-top: 6px; }
  .fuvg-channel-home-link { grid-template-columns: 104px 1fr auto; min-height: 104px; padding-right: 14px; }
  .fuvg-channel-home-link > img { height: 104px; width: 104px; }
  .fuvg-channel-home-link > span { padding: 16px; }
  .fuvg-channel-home-link strong { font-size: .9rem; }
  .fuvg-channel-home-link > b { font-size: 1.2rem; }
  .fuvg-doric .fuvg-project-grid article { min-height: 260px; }
  .fuvg-doric .fuvg-milestones { grid-template-columns: 1fr; }
  .fuvg-consulting, .fuvg-dual { padding-bottom: 84px; padding-top: 84px; }
  .fuvg-activity-grid, .fuvg-consulting-grid, .fuvg-dual-grid, .fuvg-awards-note { grid-template-columns: 1fr; }
  .fuvg-channel-actions { align-items: stretch; flex-direction: column; }
  .fuvg-channel-format-nav { grid-template-columns: repeat(2, 1fr); }
  .fuvg-channel-format-nav a { border-bottom: 1px solid rgba(255,255,255,.25); }
  .fuvg-channel-format-nav a:nth-child(2n) { border-right: 0; }
  .fuvg-channel-format-nav a:nth-last-child(-n+2) { border-bottom: 0; }
  .fuvg-channel-format-nav a:last-child { border-bottom: 0; grid-column: 1 / -1; }
  .fuvg-channel-articles { grid-template-columns: 1fr; }
  .fuvg-channel-articles-heading { border-bottom: 1px solid rgba(255,255,255,.25); border-right: 0; min-height: auto; gap: 42px; }
  .fuvg-channel-article-grid { grid-template-columns: 1fr; }
  .fuvg-channel-article-grid article,
  .fuvg-channel-article-grid article:nth-child(2n),
  .fuvg-channel-article-grid article:nth-last-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.25); border-right: 0; min-height: 170px; }
  .fuvg-channel-article-grid article:last-child { border-bottom: 0; }
  .fuvg-channel-magazine { grid-template-columns: .62fr 1.38fr; }
  .fuvg-channel-magazine-heading { border-bottom: 0; border-right: 1px solid rgba(255,255,255,.25); gap: 16px; justify-content: flex-start; min-height: 100%; padding: 18px 12px; }
  .fuvg-channel-magazine-heading img { align-self: center; margin-top: 0; width: min(100%, 145px); }
  .fuvg-channel-topic-grid { grid-template-columns: 1fr; }
  .fuvg-channel-topic-grid a, .fuvg-channel-topic-grid a:nth-child(4n), .fuvg-channel-topic-grid a:nth-child(n+9) { border-bottom: 1px solid rgba(255,255,255,.25); border-right: 0; min-height: 116px; }
  .fuvg-channel-topic-grid a:last-child { border-bottom: 0; }
  .fuvg-activity-grid > a { min-height: 260px; }
  .fuvg-dual article { min-height: auto; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  background: var(--paper);
  color: var(--ink);
  font-family: var(--fuv-font-sans);
  line-height: 1.6;
  margin: 0;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
figure { margin: 0; }
/* FUV Group homepage — content update from 01_Αρχική.docx */
.fuvg-doric .fuvg-hero-image { object-position: center; }
.fuvg-doric .fuvg-hero-shade {
  background: linear-gradient(90deg, rgba(0, 24, 44, .97) 0%, rgba(0, 31, 56, .91) 37%, rgba(0, 31, 56, .43) 70%, rgba(0, 31, 56, .18) 100%);
}
.fuvg-values {
  border-top: 1px solid var(--fuvg-rule);
  margin-top: 62px;
  padding-top: 38px;
}
.fuvg-group-grid .fuvg-values .fuvg-kicker { color: #008fbd; font-size: .7rem; margin: 0 0 20px; }
.fuvg-values h3 {
  color: var(--navy);
  font-size: clamp(2rem, 4.2vw, 4.8rem);
  letter-spacing: -.055em;
  line-height: .98;
  margin: 0;
  max-width: 980px;
}
.fuvg-values h3 span { color: #008fbd; font-weight: inherit; }
.fuvg-group-grid .fuvg-values > p:last-child { max-width: 980px; }
.fuvg-channel-feature {
  border: 1px solid rgba(255, 255, 255, .24);
  color: white;
  display: grid;
  grid-template-columns: 1.35fr .65fr;
}
.fuvg-channel-feature > img {
  aspect-ratio: 16 / 9;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.fuvg-channel-feature > div {
  border-left: 1px solid rgba(255, 255, 255, .24);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: clamp(30px, 4vw, 58px);
}
.fuvg-channel-feature small { color: var(--sky); font-size: .64rem; font-weight: 900; letter-spacing: .13em; }
.fuvg-channel-feature strong { font-size: clamp(1.7rem, 2.7vw, 3.2rem); letter-spacing: -.045em; line-height: 1; margin: 34px 0 24px; }
.fuvg-channel-feature p { color: #abc5d0; font-size: .82rem; line-height: 1.65; margin: 0 0 42px; }
.fuvg-channel-feature span { border-top: 1px solid rgba(255, 255, 255, .24); font-size: .72rem; font-weight: 900; padding-top: 16px; }
.fuvg-channel-feature:hover { border-color: var(--sky); }
.fuvg-channel-platforms {
  border-left: 1px solid rgba(255, 255, 255, .24);
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.fuvg-channel-platforms a {
  border-bottom: 1px solid rgba(255, 255, 255, .24);
  border-right: 1px solid rgba(255, 255, 255, .24);
  color: white;
  display: flex;
  flex-direction: column;
  gap: 12px;
  justify-content: center;
  min-height: 118px;
  padding: 26px;
}
.fuvg-channel-platforms a:hover { background: rgba(53, 195, 237, .12); }
.fuvg-channel-platforms strong { font-size: 1rem; }
.fuvg-channel-platforms span { color: #9cb8c5; font-size: .7rem; }
.fuvg-activities-intro {
  background: white;
  border: 1px solid var(--line);
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  margin-bottom: 48px;
}
.fuvg-activities-intro > img { height: 100%; min-height: 440px; object-fit: cover; width: 100%; }
.fuvg-activities-intro > div { border-left: 1px solid var(--line); padding: clamp(34px, 5vw, 68px); }
.fuvg-activities-intro h2 {
  color: var(--navy);
  font-size: clamp(2.8rem, 5vw, 5.5rem);
  letter-spacing: -.06em;
  line-height: .94;
  margin: 0 0 34px;
}
.fuvg-activities-intro > div > p:last-child { color: var(--muted); line-height: 1.7; margin: 0; }
.fuvg-branch-grid { grid-template-columns: repeat(3, 1fr); }
.fuvg-numbers { background: #f2f0ea; padding: 120px 0 132px; }
.fuvg-number-grid {
  border-left: 1px solid var(--fuvg-rule);
  border-top: 1px solid var(--fuvg-rule);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.fuvg-number-grid article {
  border-bottom: 1px solid var(--fuvg-rule);
  border-right: 1px solid var(--fuvg-rule);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 230px;
  padding: 30px;
}
.fuvg-number-grid strong { color: var(--navy); font-size: clamp(3.1rem, 5.4vw, 6.2rem); letter-spacing: -.07em; line-height: .8; }
.fuvg-number-grid span { color: #406073; font-size: .78rem; font-weight: 850; line-height: 1.35; max-width: 180px; }

@media (max-width: 980px) {
  .fuvg-channel-feature,
  .fuvg-activities-intro { grid-template-columns: 1fr; }
  .fuvg-channel-feature > div,
  .fuvg-activities-intro > div { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .24); }
  .fuvg-activities-intro > div { border-top-color: var(--line); }
  .fuvg-branch-grid { grid-template-columns: 1fr; }
  .fuvg-number-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
  .fuvg-doric .fuvg-hero-image { object-position: 70% center; }
  .fuvg-doric .fuvg-hero-shade { background: rgba(0, 31, 56, .78); }
  .fuvg-values { margin-top: 44px; padding-top: 30px; }
  .fuvg-channel-platforms,
  .fuvg-number-grid { grid-template-columns: 1fr; }
  .fuvg-channel-platforms a { min-height: 100px; }
  .fuvg-activities-intro > img { min-height: 0; }
  .fuvg-numbers { padding-bottom: 84px; padding-top: 84px; }
  .fuvg-number-grid article { min-height: 170px; }
}

/* FUV Group homepage — Gibran and expanded timeline */
.fuvg-gibran { background: #f2f0ea; padding: 120px 0 132px; }
.fuvg-gibran-grid {
  border: 1px solid var(--fuvg-rule);
  display: grid;
  grid-template-columns: 1.08fr .92fr;
}
.fuvg-gibran figure { margin: 0; min-height: 700px; }
.fuvg-gibran figure img { height: 100%; object-fit: cover; width: 100%; }
.fuvg-gibran blockquote {
  background: white;
  border-left: 1px solid var(--fuvg-rule);
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0;
  padding: clamp(38px, 5vw, 76px);
}
.fuvg-gibran blockquote > p:not(.fuvg-kicker) {
  color: #406073;
  font-size: clamp(.92rem, 1.15vw, 1.08rem);
  font-style: italic;
  line-height: 1.65;
  margin: 0 0 22px;
}
.fuvg-gibran blockquote .fuvg-gibran-emphasis {
  color: var(--navy);
  font-size: clamp(1.55rem, 2.5vw, 2.65rem);
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.15;
  margin: 10px 0 30px;
}
.fuvg-gibran cite {
  border-top: 1px solid var(--fuvg-rule);
  color: var(--navy);
  font-size: .72rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .04em;
  margin-top: 14px;
  padding-top: 18px;
}
.fuvg-channel .fuvg-section-heading h2 { font-size: clamp(2.55rem, 4.7vw, 5.1rem); }
.fuvg-timeline-simple {
  border-left: 1px solid var(--fuvg-rule);
  border-top: 1px solid var(--fuvg-rule);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.fuvg-timeline-simple article {
  background: white;
  border-bottom: 1px solid var(--fuvg-rule);
  border-right: 1px solid var(--fuvg-rule);
  display: flex;
  flex-direction: column;
  min-height: 292px;
  min-width: 0;
  padding: clamp(24px, 2.2vw, 34px);
}
.fuvg-timeline-card-top {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  min-height: 94px;
}
.fuvg-timeline-card-top > strong {
  color: #008fbd;
  font-size: 1.1rem;
  font-weight: 900;
  letter-spacing: -.02em;
}
.fuvg-timeline-small-logo {
  background: #00182c;
  display: block;
  height: 88px;
  object-fit: contain;
  width: 88px;
}
.fuvg-timeline-logo-cluster {
  display: flex;
  gap: 5px;
}
.fuvg-timeline-logo-cluster img {
  background: #00182c;
  display: block;
  height: 42px;
  object-fit: contain;
  width: 42px;
}
.fuvg-timeline-simple h3 {
  color: var(--navy);
  font-size: 1.24rem;
  margin: 28px 0 12px;
}
.fuvg-timeline-simple p {
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.65;
  margin: 0;
}

@media (max-width: 980px) {
  .fuvg-gibran-grid { grid-template-columns: 1fr; }
  .fuvg-gibran figure { min-height: 520px; }
  .fuvg-gibran blockquote { border-left: 0; border-top: 1px solid var(--fuvg-rule); }
  .fuvg-timeline-simple { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
  .fuvg-gibran { padding-bottom: 84px; padding-top: 84px; }
  .fuvg-gibran figure { min-height: 360px; }
  .fuvg-timeline-simple { grid-template-columns: 1fr; }
  .fuvg-timeline-simple article { min-height: 260px; }
}

/* FUV Group — διορθώσεις 21/08/2026 */
.fuvg-header-inner {
  gap: clamp(26px, 3vw, 52px);
  grid-template-columns: minmax(250px, 330px) 1fr;
  min-height: 100px;
}
.fuvg-header .fuvg-brand img {
  height: auto;
  max-width: 100%;
  width: 320px;
}
.fuvg-hero,
.fuvg-hero-content,
.fuvg-doric .fuvg-hero,
.fuvg-doric .fuvg-hero-content {
  min-height: calc(100vh - 100px);
}
.fuvg-hero-subtitle {
  color: #75d8f5;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .16em;
  margin: 34px 0 10px;
}
.fuvg-hero-lead { margin: 0 0 38px; }

.fuvg-gibran {
  align-items: center;
  background: #00182c;
  display: grid;
  min-height: 0;
  overflow: hidden;
  padding: 0;
  position: relative;
}
.fuvg-gibran figure {
  inset: 0;
  margin: 0;
  min-height: 0;
  position: absolute;
}
.fuvg-gibran figure img {
  height: 100%;
  object-fit: cover;
  object-position: center;
  width: 100%;
}
.fuvg-gibran-shade {
  background: linear-gradient(90deg, rgba(0, 24, 44, .93) 0%, rgba(0, 24, 44, .78) 48%, rgba(0, 24, 44, .2) 100%);
  inset: 0;
  position: absolute;
}
.fuvg-gibran blockquote {
  background: transparent;
  border: 0;
  display: block;
  margin: 0 auto;
  padding-bottom: clamp(48px, 5vw, 80px);
  padding-top: clamp(48px, 5vw, 80px);
  position: relative;
  width: 100%;
  z-index: 2;
}
.fuvg-gibran blockquote > p:not(.fuvg-kicker) {
  color: #e0edf2;
  max-width: 720px;
}
.fuvg-gibran blockquote .fuvg-gibran-emphasis { color: white; }
.fuvg-gibran cite {
  border-top-color: rgba(255, 255, 255, .35);
  color: white;
  display: block;
  max-width: 720px;
}

.fuvg-timeline-logo-light { background: white; }
.fuvg-timeline-card-top-present { justify-content: flex-end; }

.fuvg-consulting-logos {
  align-items: center;
  border-bottom: 1px solid var(--fuvg-rule);
  border-top: 1px solid var(--fuvg-rule);
  display: grid;
  gap: 28px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 42px 0 50px;
  padding: 24px 0;
}
.fuvg-consulting .fuvg-consulting-logos a {
  align-items: center;
  border: 0;
  display: flex;
  justify-content: center;
  min-height: 72px;
}
.fuvg-consulting-logos img,
.fuvg-consulting-logos svg {
  display: block;
  height: 58px;
  max-width: 100%;
  object-fit: contain;
  width: 100%;
}
.fuvg-consulting-logos img.fuvg-certification-badge { height: 112px; }
.fuvg-proof-grid a {
  display: flex;
  flex-direction: column;
}
.fuvg-proof-grid a img {
  background: white;
  display: block;
  height: 54px;
  margin-bottom: 22px;
  max-width: 190px;
  object-fit: contain;
  padding: 8px;
  width: 100%;
}
.fuvg-trusted-title {
  color: var(--navy);
  font-size: clamp(2.8rem, 4.8vw, 5.2rem);
  letter-spacing: -.06em;
  line-height: .94;
  margin: 0 0 64px;
}

.fuvg-activities-intro {
  display: block;
}
.fuvg-activities-intro > div {
  border-left: 0;
  max-width: 1050px;
}

.fuvg-client-grid {
  border: 0;
  gap: clamp(26px, 4vw, 60px);
}
.fuvg-client-grid figure {
  border: 0;
  min-height: 120px;
  padding: 0;
}
.fuvg-client-grid img {
  height: 96px;
  mix-blend-mode: multiply;
}

.fuvg-footer .fuvg-brand img {
  height: auto;
  max-width: 100%;
  width: 260px;
}

@media (max-width: 1040px) {
  .fuvg-header-inner { grid-template-columns: minmax(220px, 300px) auto; }
  .fuvg-header .fuvg-brand img { width: 280px; }
  .fuvg-consulting-logos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .fuvg-header-inner { min-height: 78px; }
  .fuvg-header .fuvg-brand img { height: auto; width: 220px; }
  .fuvg-hero,
  .fuvg-hero-content,
  .fuvg-doric .fuvg-hero,
  .fuvg-doric .fuvg-hero-content { min-height: calc(100vh - 78px); }
  .fuvg-gibran { min-height: 0; padding: 0; }
  .fuvg-gibran figure { min-height: 0; }
  .fuvg-gibran-shade { background: rgba(0, 24, 44, .78); }
  .fuvg-gibran blockquote { border: 0; padding-bottom: 48px; padding-top: 48px; }
  .fuvg-client-grid { gap: 28px 18px; }
  .fuvg-client-grid figure { min-height: 90px; padding: 0; }
  .fuvg-client-grid img { height: 72px; }
  .fuvg-consulting-logos { gap: 18px; }
  .fuvg-consulting-logos img,
  .fuvg-consulting-logos svg { height: 48px; }
  .fuvg-consulting-logos img.fuvg-certification-badge { height: 88px; }
  .fuvg-trusted-title { margin-bottom: 44px; }
  .fuvg-footer .fuvg-brand img { height: auto; width: 240px; }
}

/* FUV Group — compact title scale and unboxed partner logos */
.fuvg-doric .fuvg-hero h1 {
  font-size: clamp(3.6rem, 6.5vw, 6.9rem);
  line-height: .92;
  max-width: 840px;
}
.fuvg-section-heading h2,
.fuvg-group h2,
.fuvg-history-copy h2,
.fuvg-knowledge h2,
.fuvg-contact h2,
.fuvg-consulting h2,
.fuvg-dual h2,
.fuvg-trusted-title {
  font-size: clamp(2.65rem, 5vw, 5.3rem);
  line-height: .98;
}
.fuvg-partners {
  background: #fff;
  color: var(--navy);
}
.fuvg-partner-heading {
  border-bottom: 1px solid var(--line);
  padding-bottom: 28px;
}
.fuvg-partner-heading > p,
.fuvg-partner-copy p {
  color: var(--muted);
}
.fuvg-partner-copy p {
  font-size: .96rem;
  margin: 0;
  max-width: 560px;
}
.fuvg-partner-copy p + p { margin-top: 14px; }
.fuvg-partner-grid {
  border: 0;
  gap: clamp(26px, 4vw, 60px);
}
.fuvg-partner-grid article {
  background: transparent;
  border: 0;
  min-height: 120px;
  padding: 0;
}
.fuvg-partner-grid article img {
  height: 96px;
  mix-blend-mode: multiply;
  object-fit: contain;
  width: 100%;
}

@media (max-width: 720px) {
  .fuvg-doric .fuvg-hero h1 {
    font-size: clamp(3.15rem, 16vw, 4.8rem);
    line-height: .94;
  }
  .fuvg-section-heading h2,
  .fuvg-group h2,
  .fuvg-history-copy h2,
  .fuvg-knowledge h2,
  .fuvg-contact h2,
  .fuvg-consulting h2,
  .fuvg-dual h2,
  .fuvg-trusted-title {
    font-size: clamp(2.35rem, 11vw, 3.7rem);
  }
  .fuvg-partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fuvg-partner-grid article { min-height: 90px; }
  .fuvg-partner-grid article img { height: 72px; }

  .fuvg-home-page .fuvg-hero h1 {
    font-size: clamp(2.41rem, 12.24vw, 3.67rem);
  }
  .fuvg-home-page .fuvg-dual-image {
    aspect-ratio: auto;
    height: auto;
    margin: 18px auto 0;
    object-fit: contain;
    width: calc(100% - 36px);
  }
  .fuvg-home-page .fuvg-section-heading h2,
  .fuvg-home-page .fuvg-group h2,
  .fuvg-home-page .fuvg-history-copy h2,
  .fuvg-home-page .fuvg-knowledge h2,
  .fuvg-home-page .fuvg-contact h2,
  .fuvg-home-page .fuvg-consulting h2,
  .fuvg-home-page .fuvg-dual h2,
  .fuvg-home-page .fuvg-trusted-title {
    font-size: clamp(2rem, 9.35vw, 3.15rem);
  }
  .fuvg-home-page .fuvg-activities-intro h2 {
    font-size: clamp(2.38rem, 4.25vw, 4.68rem);
  }
  .fuvg-home-page .fuvg-values h3 {
    font-size: clamp(1.7rem, 3.57vw, 4.08rem);
  }
  .fuvg-home-page .fuvg-channel .fuvg-section-heading h2 {
    font-size: clamp(2.17rem, 4vw, 4.34rem);
  }
  .fuvg-home-page .fuvg-channel-feature strong {
    font-size: clamp(1.45rem, 2.3vw, 2.72rem);
  }
  .fuvg-home-page .fuvg-activity-grid h3 { font-size: 1.19rem; }
  .fuvg-home-page .fuvg-consulting h3 { font-size: .94rem; }
  .fuvg-home-page .fuvg-timeline-simple h3 { font-size: 1.05rem; }
}

/* FUV Group homepage — visual alignment with FUV Products */
.fuvg-home-page {
  background: #fff;
  color: var(--ink);
}
.fuvg-home-page .fuvg-shell {
  max-width: 1280px;
  padding-left: 34px;
  padding-right: 34px;
}
.fuvg-home-page .fuvg-header {
  background: var(--navy);
  border-bottom: 1px solid rgba(255,255,255,.1);
}
.fuvg-home-page .fuvg-header-inner {
  gap: 24px;
  grid-template-columns: 205px minmax(0, 1fr);
  min-height: 82px;
}
.fuvg-home-page .fuvg-header .fuvg-brand img {
  height: 58px;
  object-fit: contain;
  object-position: left center;
  width: 195px;
}
.fuvg-home-page .fuvg-nav {
  gap: clamp(18px, 1.8vw, 32px);
}
.fuvg-home-page .fuvg-nav a,
.fuvg-home-page .fuvg-nav-dropdown summary {
  color: #d4e5ec;
  font-size: clamp(.7rem, .78vw, .82rem);
  font-weight: 700;
}
.fuvg-home-page .fuvg-hero,
.fuvg-home-page .fuvg-hero-content,
.fuvg-home-page.fuvg-doric .fuvg-hero,
.fuvg-home-page.fuvg-doric .fuvg-hero-content {
  min-height: calc(100vh - 82px);
}
.fuvg-home-page .fuvg-hero-shade {
  background: linear-gradient(90deg, rgba(0,31,56,.98) 0%, rgba(0,31,56,.9) 52%, rgba(0,31,56,.58) 100%);
}
.fuvg-home-page .fuvg-hero-content {
  padding-bottom: 92px;
  padding-top: 92px;
}
.fuvg-home-page .fuvg-kicker {
  font-size: .69rem;
  letter-spacing: .14em;
  margin-bottom: 20px;
}
.fuvg-home-page .fuvg-hero h1 {
  font-size: clamp(3.9rem, 7vw, 7.2rem);
  letter-spacing: -.07em;
  line-height: .92;
  max-width: 760px;
}
.fuvg-home-page .fuvg-hero-subtitle {
  color: var(--sky);
  font-size: 1.08rem;
  letter-spacing: -.025em;
  margin: 54px 0 16px;
}
.fuvg-home-page .fuvg-hero-lead {
  color: #d0dfe5;
  font-size: 1.08rem;
  margin: 0 0 34px;
  max-width: 760px;
}
.fuvg-home-page .fuvg-button {
  gap: 34px;
  padding: 13px 19px;
}
.fuvg-home-page .fuvg-section-heading h2,
.fuvg-home-page .fuvg-group h2,
.fuvg-home-page .fuvg-history-copy h2,
.fuvg-home-page .fuvg-knowledge h2,
.fuvg-home-page .fuvg-contact h2,
.fuvg-home-page .fuvg-consulting h2,
.fuvg-home-page .fuvg-dual h2,
.fuvg-home-page .fuvg-trusted-title,
.fuvg-home-page .fuvg-activities-intro h2 {
  color: var(--navy);
  font-size: clamp(2.6rem, 4.8vw, 5rem);
  letter-spacing: -.06em;
  line-height: 1;
}
.fuvg-home-page .fuvg-channel .fuvg-section-heading h2,
.fuvg-home-page .fuvg-knowledge h2 {
  color: #fff;
}
.fuvg-home-page .fuvg-group,
.fuvg-home-page .fuvg-expertise,
.fuvg-home-page .fuvg-dual,
.fuvg-home-page .fuvg-trusted {
  background: #fff;
}
.fuvg-home-page .fuvg-consulting,
.fuvg-home-page .fuvg-history {
  background: var(--paper);
}
.fuvg-home-page .fuvg-channel,
.fuvg-home-page .fuvg-gibran {
  background: var(--navy);
}
.fuvg-home-page .fuvg-knowledge {
  background: var(--navy-2);
}
.fuvg-home-page .fuvg-partners {
  background: var(--sky-soft);
  color: var(--navy);
}
.fuvg-home-page .fuvg-contact {
  background: var(--sky);
}
.fuvg-home-page .fuvg-footer {
  background: #001b36;
  color: #9bb4bf;
  padding: 0;
}
.fuvg-home-page .fuvg-footer-grid {
  min-height: 120px;
}
.fuvg-home-page .fuvg-footer p,
.fuvg-home-page .fuvg-footer-grid > span {
  color: #9bb4bf;
  font-size: .78rem;
}
.fuvg-home-page .fuvg-footer .fuvg-brand img {
  height: 66px;
  object-fit: contain;
  object-position: left center;
  width: 220px;
}

@media (max-width: 1040px) {
  .fuvg-home-page .fuvg-header-inner {
    grid-template-columns: 1fr auto;
    min-height: 86px;
  }
  .fuvg-home-page .fuvg-header .fuvg-brand img {
    height: 58px;
    width: 195px;
  }
}

/* FUV Activities — Consulting card and certification overview. */
.fuvg-activities-certifications-image {
  align-items: center;
  background: #fff;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 18px;
}
.fuvg-activities-certifications-image img,
.fuvg-activities-certifications-image svg {
  display: block;
  height: 88px;
  object-fit: contain;
  width: 100%;
}
.fuvg-activity-detail-intro {
  margin-bottom: 42px;
}
.fuvg-consulting-intro > p {
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.75;
  margin: 0;
  max-width: 900px;
}
.fuvg-consulting-intro > p a {
  color: var(--navy);
  font-weight: 800;
}
.fuvg-consulting-intro-logos {
  align-items: center;
  border-bottom: 1px solid var(--line);
  border-top: 1px solid var(--line);
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 30px;
  padding: 24px 0;
}
.fuvg-consulting-intro-logos img,
.fuvg-consulting-intro-logos svg {
  display: block;
  height: 94px;
  object-fit: contain;
  width: 100%;
}

/* The poem follows the same body-text scale as the rest of the homepage. */
.fuvg-home-page .fuvg-gibran blockquote > p:not(.fuvg-kicker),
.fuvg-home-page .fuvg-gibran blockquote > p.fuvg-gibran-emphasis {
  font-size: .88rem;
  line-height: 1.65;
}
.fuvg-home-page .fuvg-gibran blockquote > p.fuvg-gibran-emphasis {
  letter-spacing: 0;
}

@media (max-width: 720px) {
  .fuvg-activities-certifications-image {
    gap: 7px;
    padding: 14px;
  }
  .fuvg-activities-certifications-image img,
  .fuvg-activities-certifications-image svg {
    height: 74px;
  }
  .fuvg-consulting-intro-logos {
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .fuvg-consulting-intro-logos img,
  .fuvg-consulting-intro-logos svg {
    height: 78px;
  }
}

/* FUV Channel — article archive lead. */
.fuvg-channel-category-page .fuvg-channel-category-hero .fuv-channel-archive-lead {
  font-size: .88rem !important;
  line-height: 1.65 !important;
  margin-top: 22px !important;
}

@media (max-width: 720px) {
  .fuvg-home-page .fuvg-shell {
    padding-left: 34px;
    padding-right: 34px;
  }
  .fuvg-home-page .fuvg-hero,
  .fuvg-home-page .fuvg-hero-content,
  .fuvg-home-page.fuvg-doric .fuvg-hero,
  .fuvg-home-page.fuvg-doric .fuvg-hero-content {
    min-height: auto;
  }
  .fuvg-home-page .fuvg-hero-content {
    padding-bottom: 160px;
    padding-top: 72px;
  }
  .fuvg-home-page .fuvg-hero-shade {
    background: rgba(0,31,56,.86);
  }
  .fuvg-home-page .fuvg-hero h1 {
    font-size: 3.5rem;
  }
  .fuvg-home-page .fuvg-section-heading h2,
  .fuvg-home-page .fuvg-group h2,
  .fuvg-home-page .fuvg-history-copy h2,
  .fuvg-home-page .fuvg-knowledge h2,
  .fuvg-home-page .fuvg-contact h2,
  .fuvg-home-page .fuvg-consulting h2,
  .fuvg-home-page .fuvg-dual h2,
  .fuvg-home-page .fuvg-trusted-title,
  .fuvg-home-page .fuvg-activities-intro h2 {
    font-size: 2.6rem;
  }
  .fuvg-home-page .fuvg-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .fuvg-home-page .fuvg-actions .fuvg-button {
    width: 100%;
  }
}

/* FUV Channel homepage — smaller photographs inside topic boxes. */
.fuvg-channel-page .fuvg-channel-topic-grid img {
  height: calc(100% - 36px) !important;
  inset: 18px !important;
  object-fit: cover !important;
  width: calc(100% - 36px) !important;
}
.fuvg-channel-page .fuvg-channel-topic-grid a:hover img {
  transform: scale(1.02);
}

@media (max-width: 720px) {
  .fuvg-channel-page .fuvg-channel-topic-grid img {
    height: calc(100% - 24px) !important;
    inset: 12px !important;
    width: calc(100% - 24px) !important;
  }
}

/* FUV Channel article archive — compact, equal cards. */
.fuvg-channel-article-card-grid > a {
  min-height: 0;
  padding: 18px;
}
.fuvg-channel-article-card-image {
  aspect-ratio: auto;
  height: 180px;
  margin-top: 14px;
  object-fit: cover;
}
.fuvg-channel-article-card-top > span { font-size: 1.3rem; }
.fuvg-channel-article-card-grid .fuvg-channel-article-publication {
  font-size: .61rem;
  margin-top: 12px;
}
.fuvg-channel-article-card-grid h2 {
  font-size: 1.02rem !important;
  margin: 14px 0 10px;
  min-height: 2.45em;
}
.fuvg-channel-article-card-grid p:not(.fuvg-channel-article-publication) {
  display: -webkit-box;
  font-size: .78rem;
  line-height: 1.55;
  margin-bottom: 22px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.fuvg-channel-article-card-grid > a > strong {
  font-size: .67rem;
  padding-top: 12px;
}

@media (max-width: 720px) {
  .fuvg-channel-article-card-image { height: 165px; }
  .fuvg-channel-article-card-grid h2 { min-height: 0; }
}

/* FUV Group homepage — split hero in the visual language of FUV Products */
.fuvg-home-page .fuvg-section-heading h2,
.fuvg-home-page .fuvg-group h2,
.fuvg-home-page .fuvg-history-copy h2,
.fuvg-home-page .fuvg-knowledge h2,
.fuvg-home-page .fuvg-contact h2,
.fuvg-home-page .fuvg-consulting h2,
.fuvg-home-page .fuvg-dual h2,
.fuvg-home-page .fuvg-trusted-title,
.fuvg-home-page .fuvg-activities-intro h2 {
  font-size: clamp(1.75rem, 2.4vw, 3rem);
  letter-spacing: -.04em;
  line-height: 1.08;
}
.fuvg-home-page .fuvg-hero {
  background: var(--navy);
}
.fuvg-home-page .fuvg-hero-image {
  left: auto;
  object-position: center;
  right: 0;
  width: 56%;
}
.fuvg-home-page .fuvg-hero-shade {
  background: linear-gradient(90deg, #001f38 0%, #001f38 39%, rgba(0,31,56,.97) 47%, rgba(0,31,56,.66) 68%, rgba(0,31,56,.2) 100%);
}
.fuvg-home-page .fuvg-hero-content {
  padding-right: min(52%, 660px);
}
.fuvg-home-page .fuvg-hero h1 {
  font-size: clamp(2.8rem, 4.5vw, 4.5rem);
  line-height: .96;
  max-width: 620px;
}
.fuvg-home-page .fuvg-hero-lead {
  font-size: .96rem;
  max-width: 560px;
}
.fuvg-home-page .fuvg-hero-note {
  background: rgba(0,31,56,.9);
  right: max(34px, calc((100vw - 1280px) / 2 + 34px));
}

@media (max-width: 900px) {
  .fuvg-home-page .fuvg-hero-image {
    left: 0;
    opacity: 1;
    width: 100%;
  }
  .fuvg-home-page .fuvg-hero-shade {
    background: linear-gradient(90deg, rgba(0,31,56,.9) 0%, rgba(0,31,56,.76) 58%, rgba(0,31,56,.6) 100%);
  }
  .fuvg-home-page .fuvg-hero-content {
    padding-right: 34px;
  }
}

@media (max-width: 720px) {
  .fuvg-home-page .fuvg-hero h1 {
    font-size: clamp(2.65rem, 12vw, 3.5rem);
  }
}

/* FUV Group homepage — Mass Timber and Academy in successive rows */
.fuvg-home-page .fuvg-dual-grid {
  grid-template-columns: 1fr;
}
.fuvg-home-page .fuvg-dual article {
  align-items: center;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  min-height: 0;
}
.fuvg-home-page .fuvg-dual-image {
  align-self: center;
  aspect-ratio: 4 / 3;
  background: var(--paper);
  height: auto;
  min-height: 0;
  object-fit: contain;
  width: 100%;
}
.fuvg-home-page .fuvg-dual-copy {
  align-self: stretch;
  border-left: 1px solid var(--fuvg-rule);
}

@media (max-width: 900px) {
  .fuvg-home-page .fuvg-dual article {
    grid-template-columns: 1fr;
  }
  .fuvg-home-page .fuvg-dual-image {
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 0;
  }
  .fuvg-home-page .fuvg-dual-copy {
    border-left: 0;
    border-top: 1px solid var(--fuvg-rule);
  }
}

@media (max-width: 720px) {
  .fuvg-home-page .fuvg-dual-image {
    aspect-ratio: auto;
    height: auto;
    margin: 18px auto 0;
    object-fit: contain;
    width: calc(100% - 36px);
  }
}

/* FUV Group — standalone About page */
.fuvg-about-page { background: #fff; }
.fuvg-about-hero {
  background: var(--navy);
  color: #fff;
  overflow: hidden;
  position: relative;
}
.fuvg-about-hero::after {
  border: 1px solid rgba(117,216,245,.22);
  border-radius: 50%;
  content: "";
  height: 540px;
  position: absolute;
  right: -130px;
  top: -250px;
  width: 540px;
}
.fuvg-about-hero .fuvg-shell { padding-bottom: 108px; padding-top: 112px; position: relative; z-index: 1; }
.fuvg-about-hero h1 {
  font-size: clamp(4rem, 8vw, 8.2rem);
  letter-spacing: -.075em;
  line-height: .84;
  margin: 0;
}
.fuvg-about-hero .fuvg-shell > p:last-child {
  color: #bad1da;
  font-size: 1rem;
  line-height: 1.8;
  margin: 42px 0 0;
  max-width: 780px;
}
.fuvg-about-intro { padding: 116px 0 124px; }
.fuvg-about-intro-grid { display: grid; gap: 54px 84px; grid-template-columns: 1fr 1fr; }
.fuvg-about-intro h2,
.fuvg-about-history h2,
.fuvg-about-section-heading h2 {
  color: var(--navy);
  font-size: clamp(2.7rem, 5vw, 5.2rem);
  letter-spacing: -.06em;
  line-height: .96;
  margin: 0;
}
.fuvg-about-intro-copy { align-self: end; }
.fuvg-about-intro-copy p { color: var(--muted); font-size: 1.02rem; line-height: 1.85; margin: 0; }
.fuvg-about-investment {
  background: var(--sky-soft);
  border-left: 5px solid var(--sky);
  display: grid;
  gap: 32px;
  grid-column: 1 / -1;
  grid-template-columns: minmax(240px,.65fr) 1.35fr;
  margin-top: 20px;
  padding: 38px 42px;
}
.fuvg-about-investment span { color: var(--navy); font-size: .74rem; font-weight: 900; letter-spacing: .13em; line-height: 1.6; }
.fuvg-about-investment p { color: #365567; font-size: 1rem; line-height: 1.8; margin: 0; }
.fuvg-about-history { background: var(--paper); padding: 116px 0 132px; }
.fuvg-about-timeline { margin-top: 76px; position: relative; }
.fuvg-about-timeline::before { background: #bdd0d9; bottom: 0; content: ""; left: 174px; position: absolute; top: 0; width: 1px; }
.fuvg-about-timeline article {
  display: grid;
  gap: 72px;
  grid-template-columns: 140px minmax(0,1fr);
  padding: 0 0 64px;
  position: relative;
}
.fuvg-about-timeline article:last-child { padding-bottom: 0; }
.fuvg-about-timeline article::before {
  background: var(--sky);
  border: 7px solid var(--paper);
  border-radius: 50%;
  content: "";
  height: 23px;
  left: 163px;
  position: absolute;
  top: 4px;
  width: 23px;
}
.fuvg-about-timeline article > strong { color: var(--sky); font-size: 1.8rem; letter-spacing: -.04em; line-height: 1; }
.fuvg-about-timeline article > div { border-top: 1px solid var(--line); padding: 28px 0 0; }
.fuvg-about-timeline article > div h3 { color: var(--navy); font-size: clamp(1.45rem,2.3vw,2.2rem); letter-spacing: -.035em; margin: 0 0 14px; }
.fuvg-about-timeline article > div p { color: var(--muted); line-height: 1.8; margin: 0; max-width: 850px; }
.fuvg-about-awards { padding: 118px 0 132px; }
.fuvg-about-section-heading { align-items: end; display: grid; gap: 80px; grid-template-columns: 1.15fr .85fr; margin-bottom: 70px; }
.fuvg-about-section-heading > p { color: var(--muted); line-height: 1.8; margin: 0; }
.fuvg-about-award-grid { display: grid; gap: 30px; grid-template-columns: repeat(3,minmax(0,1fr)); }
.fuvg-about-award-grid article { background: var(--paper); padding: 24px 24px 30px; }
.fuvg-about-award-image { align-items: center; background: #fff; display: flex; height: 230px; justify-content: center; margin-bottom: 26px; overflow: hidden; padding: 18px; }
.fuvg-about-award-image img { height: 100%; object-fit: contain; width: 100%; }
.fuvg-about-award-grid article > span { color: var(--sky); display: block; font-size: .68rem; font-weight: 900; letter-spacing: .1em; margin-bottom: 12px; text-transform: uppercase; }
.fuvg-about-award-grid h3 { color: var(--navy); font-size: 1.45rem; letter-spacing: -.03em; margin: 0 0 12px; }
.fuvg-about-award-grid p { color: var(--muted); font-size: .88rem; line-height: 1.65; margin: 0; }
.fuvg-about-papers { background: var(--navy); color: #fff; padding: 118px 0 132px; }
.fuvg-about-section-heading-light h2 { color: #fff; }
.fuvg-about-section-heading-light > p { color: #b9d0da; }
.fuvg-about-papers-grid { display: grid; gap: 68px; grid-template-columns: .8fr 1.2fr; }
.fuvg-about-papers-grid > img { background: #fff; height: 560px; object-fit: cover; object-position: top center; width: 100%; }
.fuvg-about-conference-list article { border-top: 1px solid rgba(255,255,255,.2); display: grid; gap: 32px; grid-template-columns: 80px 1fr; padding: 30px 0; }
.fuvg-about-conference-list article:last-child { border-bottom: 1px solid rgba(255,255,255,.2); }
.fuvg-about-conference-list strong { color: #75d8f5; font-size: 1.15rem; }
.fuvg-about-conference-list h3 { color: #fff; font-size: 1.25rem; line-height: 1.35; margin: 0 0 9px; }
.fuvg-about-conference-list p { color: #94b5c2; margin: 0; }

@media (max-width: 900px) {
  .fuvg-about-award-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fuvg-about-papers-grid { grid-template-columns: 1fr; }
  .fuvg-about-papers-grid > img { height: 440px; }
}

@media (max-width: 720px) {
  .fuvg-about-hero .fuvg-shell { padding-bottom: 76px; padding-top: 80px; }
  .fuvg-about-hero h1 { font-size: clamp(3.6rem,18vw,5.2rem); }
  .fuvg-about-intro,
  .fuvg-about-history,
  .fuvg-about-awards,
  .fuvg-about-papers { padding: 82px 0 90px; }
  .fuvg-about-intro-grid,
  .fuvg-about-section-heading { grid-template-columns: 1fr; }
  .fuvg-about-intro-grid { gap: 34px; }
  .fuvg-about-section-heading { gap: 28px; margin-bottom: 48px; }
  .fuvg-about-intro h2,
  .fuvg-about-history h2,
  .fuvg-about-section-heading h2 { font-size: clamp(2.5rem,12vw,3.7rem); }
  .fuvg-about-investment { gap: 18px; grid-template-columns: 1fr; padding: 30px 26px; }
  .fuvg-about-timeline { margin-top: 56px; padding-left: 36px; }
  .fuvg-about-timeline::before { left: 8px; }
  .fuvg-about-timeline article { display: block; padding: 0 0 54px; }
  .fuvg-about-timeline article::before { border-width: 6px; height: 20px; left: -38px; top: 1px; width: 20px; }
  .fuvg-about-timeline article > strong { display: block; font-size: 1.45rem; margin-bottom: 18px; }
  .fuvg-about-timeline article > div { padding-top: 22px; }
  .fuvg-about-award-grid { grid-template-columns: 1fr; }
  .fuvg-about-award-image { height: 210px; }
  .fuvg-about-papers-grid { gap: 42px; }
  .fuvg-about-papers-grid > img { height: 360px; }
  .fuvg-about-conference-list article { gap: 18px; grid-template-columns: 64px 1fr; }
}

/* FUV Group — About outreach archive */
.fuvg-about-outreach { background: var(--paper); padding: 118px 0 132px; }
.fuvg-about-outreach-grid { border-left: 1px solid var(--line); border-top: 1px solid var(--line); display: grid; gap: 0; grid-template-columns: repeat(4,minmax(0,1fr)); }
.fuvg-about-outreach-card { background: #fff; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); color: var(--navy); display: flex; flex-direction: column; min-width: 0; transition: background-color .2s ease, color .2s ease; }
.fuvg-about-outreach-card:hover,
.fuvg-about-outreach-card:focus-visible { background: var(--navy); color: #fff; }
.fuvg-about-outreach-card:focus-visible { outline: 3px solid var(--sky); outline-offset: -3px; }
.fuvg-about-outreach-grid img { aspect-ratio: 4 / 3; height: auto; object-fit: cover; width: 100%; }
.fuvg-about-outreach-card-placeholder { align-items: center; aspect-ratio: 4 / 3; background: var(--navy); display: flex; justify-content: center; margin: 0; }
.fuvg-about-outreach-grid .fuvg-about-outreach-card-placeholder span { color: rgba(255,255,255,.18); font-size: clamp(2.5rem,4vw,4.5rem); letter-spacing: -.06em; margin: 0; }
.fuvg-about-outreach-grid .fuvg-about-outreach-card > div { display: flex; flex: 1; flex-direction: column; padding: 18px 17px 20px; }
.fuvg-about-outreach-grid span { color: var(--sky); display: block; font-size: .7rem; font-weight: 900; letter-spacing: .1em; margin-bottom: 16px; }
.fuvg-about-outreach-grid h3 { color: inherit; font-size: 1.02rem; letter-spacing: -.025em; line-height: 1.25; margin: 0 0 11px; }
.fuvg-about-outreach-grid p { color: var(--muted); font-size: .82rem; margin: 0; }
.fuvg-about-outreach-card:hover p,
.fuvg-about-outreach-card:focus-visible p { color: #bdd1db; }
.fuvg-about-outreach-grid strong { border-top: 1px solid var(--line); color: inherit; display: flex; font-size: .67rem; font-weight: 900; justify-content: space-between; margin-top: 20px; padding-top: 11px; }
.fuvg-about-outreach-grid strong b { color: var(--sky); }
.fuvg-about-outreach-card:hover strong,
.fuvg-about-outreach-card:focus-visible strong { border-top-color: rgba(255,255,255,.2); }

/* FUV Group — standalone Research */
.fuvg-research-page { background: #fff; }
.fuvg-research-hero { background: var(--navy); color: #fff; overflow: hidden; position: relative; }
.fuvg-research-hero::after { border: 1px solid rgba(117,216,245,.22); border-radius: 50%; content: ""; height: 620px; position: absolute; right: -120px; top: -300px; width: 620px; }
.fuvg-research-hero .fuvg-shell { padding-bottom: 108px; padding-top: 112px; position: relative; z-index: 1; }
.fuvg-research-hero h1 { font-size: clamp(3.7rem,7vw,7.4rem); letter-spacing: -.07em; line-height: .88; margin: 0; }
.fuvg-research-intro { padding: 116px 0 124px; }
.fuvg-research-intro-grid { align-items: end; display: grid; gap: 86px; grid-template-columns: 1.1fr .9fr; }
.fuvg-research-intro h2,
.fuvg-research-conferences h2 { color: var(--navy); font-size: clamp(2.7rem,5vw,5.2rem); letter-spacing: -.06em; line-height: .96; margin: 0; }
.fuvg-research-intro-grid > p { color: var(--muted); line-height: 1.85; margin: 0; }
.fuvg-research-conferences { background: var(--paper); padding: 116px 0 132px; }
.fuvg-research-conference-grid { display: grid; gap: 30px; grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 68px; }
.fuvg-research-conference-grid article { background: #fff; }
.fuvg-research-conference-grid img { aspect-ratio: 16 / 10; height: auto; object-fit: cover; object-position: top center; width: 100%; }
.fuvg-research-conference-grid article > div { padding: 28px 30px 34px; }
.fuvg-research-conference-grid span { color: var(--sky); display: block; font-size: .72rem; font-weight: 900; letter-spacing: .09em; margin-bottom: 20px; }
.fuvg-research-conference-grid h3 { color: var(--navy); font-size: 1.35rem; letter-spacing: -.025em; line-height: 1.3; margin: 0 0 14px; }
.fuvg-research-conference-grid p { color: var(--muted); margin: 0; }

@media (max-width: 900px) {
  .fuvg-about-outreach-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 720px) {
  .fuvg-about-outreach,
  .fuvg-research-intro,
  .fuvg-research-conferences { padding: 82px 0 90px; }
  .fuvg-about-outreach-grid,
  .fuvg-research-intro-grid,
  .fuvg-research-conference-grid { grid-template-columns: 1fr; }
  .fuvg-about-outreach-grid { gap: 22px; }
  .fuvg-research-hero .fuvg-shell { padding-bottom: 76px; padding-top: 80px; }
  .fuvg-research-hero h1 { font-size: clamp(3.1rem,15vw,4.8rem); }
  .fuvg-research-intro-grid { gap: 34px; }
  .fuvg-research-intro h2,
  .fuvg-research-conferences h2 { font-size: clamp(2.5rem,12vw,3.7rem); }
  .fuvg-research-conference-grid { margin-top: 48px; }
}

/* FUV Channel — standalone magazine sections */
.fuvg-channel-category-page { background: #fff; }
.fuvg-channel-category-hero {
  background: var(--navy);
  color: #fff;
  min-height: 610px;
  overflow: hidden;
  position: relative;
}
.fuvg-channel-category-hero::after {
  border: 1px solid rgba(117,216,245,.18);
  border-radius: 50%;
  content: "";
  height: 620px;
  position: absolute;
  right: -180px;
  top: -290px;
  width: 620px;
}
.fuvg-channel-category-hero > .fuvg-shell {
  padding-bottom: 88px;
  padding-top: 104px;
  position: relative;
  z-index: 1;
}
.fuvg-channel-category-hero h1 {
  font-size: clamp(4.2rem, 8vw, 8.5rem);
  letter-spacing: -.075em;
  line-height: .85;
  margin: 0;
  max-width: 1080px;
}
.fuvg-channel-category-hero > .fuvg-shell > p:not(.fuvg-kicker) {
  color: #b9d0da;
  font-size: clamp(1rem, 1.55vw, 1.25rem);
  line-height: 1.7;
  margin: 42px 0 0;
  max-width: 760px;
}
.fuvg-channel-category-hero .fuvg-channel-format-nav {
  border-top: 1px solid rgba(255,255,255,.25);
  margin-top: 78px;
}
.fuvg-channel-article-archive { background: var(--paper); padding: 116px 0 132px; }
.fuvg-channel-archive-heading {
  align-items: end;
  display: grid;
  gap: 70px;
  grid-template-columns: 1.15fr .85fr;
  margin-bottom: 70px;
}
.fuvg-channel-archive-heading h2 {
  color: var(--navy);
  font-size: clamp(2.8rem, 5vw, 5.4rem);
  letter-spacing: -.065em;
  line-height: .92;
  margin: 0;
}
.fuvg-channel-archive-heading > p {
  color: var(--muted);
  line-height: 1.75;
  margin: 0;
}
.fuvg-channel-article-card-grid {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.fuvg-channel-article-card-grid > a {
  background: #fff;
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  color: var(--navy);
  display: flex;
  flex-direction: column;
  min-height: 360px;
  padding: 22px;
  transition: background-color .2s ease, color .2s ease;
}
.fuvg-channel-article-card-grid > a:hover { background: var(--navy); color: #fff; }
.fuvg-channel-article-card-top { align-items: center; display: flex; justify-content: space-between; }
.fuvg-channel-article-card-top > span {
  color: #c7d4da;
  font-size: 1.65rem;
  font-weight: 900;
  letter-spacing: -.06em;
  line-height: 1;
}
.fuvg-channel-article-card-top time {
  color: var(--sky);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
}
.fuvg-channel-article-card-image {
  aspect-ratio: 16 / 9;
  display: block;
  margin-top: 18px;
  object-fit: cover;
  width: 100%;
}
.fuvg-channel-article-card-grid .fuvg-channel-article-publication {
  color: var(--sky);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .035em;
  line-height: 1.35;
  margin: 16px 0 0;
}
.fuvg-channel-article-card-grid h2 {
  font-size: 1.12rem;
  letter-spacing: -.035em;
  line-height: 1.25;
  margin: 18px 0 14px;
}
.fuvg-channel-article-card-grid p {
  color: var(--muted);
  font-size: .85rem;
  line-height: 1.7;
  margin: 0 0 34px;
}
.fuvg-channel-article-card-grid > a:hover p { color: #b9d0da; }
.fuvg-channel-article-card-grid > a > strong {
  border-top: 1px solid var(--line);
  display: flex;
  font-size: .72rem;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 16px;
}
.fuvg-channel-article-card-grid > a:hover > strong { border-top-color: rgba(255,255,255,.2); }
.fuvg-channel-article-card-grid > a > strong span { color: var(--sky); }

@media (max-width: 980px) {
  .fuvg-channel-article-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .fuvg-channel-category-hero { min-height: auto; }
  .fuvg-channel-category-hero > .fuvg-shell { padding-bottom: 74px; padding-top: 78px; }
  .fuvg-channel-category-hero h1 { font-size: clamp(3.4rem, 17vw, 5.2rem); }
  .fuvg-channel-category-hero .fuvg-channel-format-nav { margin-top: 56px; }
  .fuvg-channel-article-archive { padding: 82px 0 90px; }
  .fuvg-channel-archive-heading { gap: 28px; grid-template-columns: 1fr; margin-bottom: 48px; }
  .fuvg-channel-archive-heading h2 { font-size: clamp(2.55rem, 12vw, 3.8rem); }
  .fuvg-channel-article-card-grid { grid-template-columns: 1fr; }
  .fuvg-channel-article-card-grid > a { min-height: 0; padding: 20px; }
  .fuvg-channel-article-card-grid h2 { margin-top: 18px; }
}

/* FUV Group — Activities hub and detail pages */
.fuvg-nav a.is-active { color: var(--sky); }
.fuvg-activities-page,
.fuvg-activity-detail-page { background: #fff; }
.fuvg-activities-hub-hero,
.fuvg-activity-detail-hero {
  background:
    linear-gradient(115deg, rgba(0, 31, 56, .98), rgba(0, 47, 76, .92)),
    radial-gradient(circle at 82% 25%, rgba(0, 168, 223, .32), transparent 35%);
  color: #fff;
  overflow: hidden;
  position: relative;
}
.fuvg-activities-hub-hero::after,
.fuvg-activity-detail-hero::after {
  border: 1px solid rgba(117, 216, 245, .16);
  border-radius: 50%;
  content: "";
  height: 560px;
  position: absolute;
  right: -140px;
  top: -245px;
  width: 560px;
}
.fuvg-activities-hub-hero .fuvg-shell,
.fuvg-activity-detail-hero .fuvg-shell {
  padding-bottom: 118px;
  padding-top: 108px;
  position: relative;
  z-index: 1;
}
.fuvg-activities-hub-hero h1,
.fuvg-activity-detail-hero h1 {
  font-size: clamp(3.75rem, 7.4vw, 7.6rem);
  letter-spacing: -.07em;
  line-height: .86;
  margin: 0;
  max-width: 1080px;
}
.fuvg-activities-hub-hero .fuvg-shell > p:last-child,
.fuvg-activity-detail-hero .fuvg-shell > p:last-child {
  color: #bad1da;
  font-size: 1rem;
  line-height: 1.8;
  margin: 42px 0 0;
  max-width: 780px;
}
.fuvg-activities-hub-menu {
  background: var(--paper);
  padding: 112px 0 128px;
}
.fuvg-activities-hub-heading {
  align-items: end;
  display: grid;
  gap: 70px;
  grid-template-columns: .42fr 1.58fr;
  margin-bottom: 68px;
}
.fuvg-activities-hub-heading h2,
.fuvg-activity-related-heading h2 {
  color: var(--navy);
  font-size: clamp(2.7rem, 5vw, 5.2rem);
  letter-spacing: -.065em;
  line-height: .92;
  margin: 0;
}
.fuvg-activities-hub-grid {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.fuvg-activities-hub-grid > a {
  background: #fff;
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  color: var(--navy);
  display: flex;
  flex-direction: column;
  min-height: 330px;
  padding: 31px;
  transition: background-color .2s ease, color .2s ease;
}
.fuvg-activities-hub-grid > a:hover { background: var(--navy); color: #fff; }
.fuvg-activities-hub-card-image {
  height: 180px;
  margin: -31px -31px 28px;
  overflow: hidden;
  position: relative;
}
.fuvg-activities-hub-card-image img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.fuvg-activities-hub-grid h2 {
  font-size: 1.55rem;
  letter-spacing: -.04em;
  line-height: 1.08;
  margin: 0 0 18px;
}
.fuvg-activities-hub-grid p {
  color: var(--muted);
  font-size: .84rem;
  line-height: 1.65;
  margin: 0 0 32px;
}
.fuvg-activities-hub-grid > a:hover p { color: #bad1da; }
.fuvg-activities-hub-grid strong {
  border-top: 1px solid var(--line);
  display: flex;
  font-size: .72rem;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 15px;
}
.fuvg-activities-hub-grid > a:hover strong { border-top-color: rgba(255,255,255,.2); }
.fuvg-activities-hub-grid strong b { color: var(--sky); }
.fuvg-activity-detail-content {
  background: var(--paper);
  padding: 112px 0 124px;
}
.fuvg-activity-detail-grid {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.fuvg-activity-detail-grid article {
  background: #fff;
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  min-height: 360px;
  padding: 35px;
}
.fuvg-activity-detail-grid article > span {
  color: var(--sky);
  font-size: .72rem;
  font-weight: 900;
}
.fuvg-activity-detail-grid h2 {
  color: var(--navy);
  font-size: clamp(1.45rem, 2vw, 2rem);
  letter-spacing: -.045em;
  line-height: 1.08;
  margin: 72px 0 25px;
}
.fuvg-activity-detail-grid p {
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.75;
  margin: 0;
}
.fuvg-activity-external-cta {
  align-items: center;
  background: var(--navy);
  color: #fff;
  display: flex;
  justify-content: space-between;
  margin-top: 32px;
  padding: 40px;
}
.fuvg-activity-external-cta .fuvg-kicker { margin-bottom: 13px; }
.fuvg-activity-external-cta h2 {
  font-size: clamp(2rem, 3.5vw, 3.5rem);
  letter-spacing: -.055em;
  margin: 0;
}
.fuvg-activity-related { background: #fff; padding: 108px 0 124px; }
.fuvg-activity-related-heading {
  align-items: end;
  display: grid;
  gap: 70px;
  grid-template-columns: .42fr 1.58fr;
  margin-bottom: 64px;
}
.fuvg-activity-related nav {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.fuvg-activity-related nav a {
  align-items: center;
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  color: var(--navy);
  display: flex;
  font-size: .9rem;
  font-weight: 800;
  justify-content: space-between;
  min-height: 74px;
  padding: 20px 24px;
}
.fuvg-activity-related nav a:hover { background: var(--sky-soft); }
.fuvg-activity-related nav b { color: var(--sky); }

@media (max-width: 980px) {
  .fuvg-activities-hub-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fuvg-activity-detail-grid { grid-template-columns: 1fr; }
  .fuvg-activity-detail-grid article { min-height: auto; }
  .fuvg-activity-detail-grid h2 { margin-top: 42px; }
}

@media (max-width: 720px) {
  .fuvg-activities-hub-hero .fuvg-shell,
  .fuvg-activity-detail-hero .fuvg-shell { padding-bottom: 76px; padding-top: 76px; }
  .fuvg-activities-hub-hero h1,
  .fuvg-activity-detail-hero h1 { font-size: clamp(3.35rem, 16vw, 5rem); }
  .fuvg-about-hero .fuvg-shell > p:last-child,
  .fuvg-activities-hub-hero .fuvg-shell > p:last-child,
  .fuvg-activity-detail-hero .fuvg-shell > p:last-child { font-size: .9rem; margin-top: 30px; }
  .fuvg-activities-hub-menu,
  .fuvg-activity-detail-content,
  .fuvg-activity-related { padding: 82px 0 90px; }
  .fuvg-activities-hub-heading,
  .fuvg-activity-related-heading { gap: 25px; grid-template-columns: 1fr; margin-bottom: 45px; }
  .fuvg-activities-hub-heading h2,
  .fuvg-activity-related-heading h2 { font-size: clamp(2.5rem, 12vw, 3.6rem); }
  .fuvg-activities-hub-grid { grid-template-columns: 1fr; }
  .fuvg-activities-hub-grid > a { min-height: 290px; padding: 26px; }
  .fuvg-activities-hub-card-image { height: 180px; margin: -26px -26px 26px; }
  .fuvg-activity-detail-grid article { padding: 27px; }
  .fuvg-activity-external-cta { align-items: stretch; flex-direction: column; gap: 32px; padding: 28px; }
  .fuvg-activity-external-cta .fuvg-button { width: 100%; }
  .fuvg-activity-related nav { grid-template-columns: 1fr; }
}

/* FUV Architecture & Construction — project archive */
.fuvg-project-index { background: #fff; padding: 112px 0 124px; }
.fuvg-project-index-heading {
  align-items: start;
  display: grid;
  gap: 70px;
  grid-template-columns: .42fr 1.58fr;
  margin-bottom: 64px;
}
.fuvg-project-index-heading h2,
.fuvg-project-gallery-heading h2 {
  color: var(--navy);
  font-size: clamp(2.8rem, 5vw, 5.4rem);
  letter-spacing: -.065em;
  line-height: .92;
  margin: 0;
}
.fuvg-project-index-heading > div > p {
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.75;
  margin: 26px 0 0;
  max-width: 690px;
}
.fuvg-project-card-grid {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.fuvg-project-card-grid > a {
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  color: var(--navy);
  display: grid;
  grid-template-rows: 330px 1fr;
}
.fuvg-project-card-grid figure { background: var(--navy); margin: 0; overflow: hidden; }
.fuvg-project-card-grid img {
  height: 100%;
  object-fit: contain;
  transition: opacity .25s ease, transform .35s ease;
  width: 100%;
}

/* Projects — responsive thumbnail gallery and lightbox */
.fuvg-project-entry-header {
  max-width: 980px;
  margin: 0 0 clamp(28px, 4vw, 48px);
}

.fuvg-project-entry-header h2 {
  max-width: 920px;
  margin: 12px 0 18px;
  color: var(--navy);
  font-size: clamp(1.65rem, 3vw, 2.7rem);
  line-height: 1.08;
}

.fuvg-project-entry-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 34px;
  margin: 0 0 18px;
}

.fuvg-project-entry-meta div {
  display: grid;
  gap: 4px;
  padding-left: 12px;
  border-left: 2px solid var(--sky);
}

.fuvg-project-entry-meta dt {
  color: var(--muted);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.fuvg-project-entry-meta dd {
  margin: 0;
  color: var(--navy);
  font-weight: 700;
}

.fuvg-project-entry-intro {
  max-width: 780px;
  margin: 0;
  color: var(--muted);
  line-height: 1.75;
}

.fuvg-project-entry-copy {
  display: grid;
  max-width: 780px;
  gap: 14px;
}

.fuvg-project-entry-copy .fuvg-project-entry-intro {
  max-width: none;
}

.fuvg-project-entry-copy a {
  color: var(--navy);
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: var(--sky);
  text-underline-offset: 0.18em;
}

.fuvg-project-journey {
  max-width: 900px;
  margin: 26px 0 0;
  color: var(--navy);
  font-size: clamp(1.05rem, 1.45vw, 1.24rem);
  line-height: 1.72;
}

.fuvg-project-video-panel {
  margin: 0 auto clamp(28px, 4vw, 48px);
  max-width: 820px;
}

.fuvg-project-video-panel iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
  background: var(--navy);
}

.fuvg-project-description {
  max-width: 980px;
  margin: clamp(64px, 8vw, 110px) 0 0;
  padding-top: clamp(34px, 5vw, 58px);
  border-top: 1px solid var(--line);
}

.fuvg-project-description h2 {
  max-width: 920px;
  margin: 12px 0 24px;
  color: var(--navy);
  font-size: clamp(1.65rem, 3vw, 2.7rem);
  line-height: 1.08;
}

.fuvg-project-photo-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 1.7vw, 20px);
}

.fuvg-project-photo-card {
  min-width: 0;
  margin: 0;
}

.fuvg-project-photo-button {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: zoom-in;
  text-align: left;
}

.fuvg-project-photo-frame {
  display: grid;
  place-items: center;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  border: 1px solid var(--line);
  background: #f3f5f6;
}

.fuvg-project-photo-frame img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.fuvg-project-photo-zoom {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(7, 33, 52, 0.84);
  color: #fff;
  font-size: 1.25rem;
  line-height: 1;
}

.fuvg-project-photo-card > figcaption {
  padding: 9px 2px 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.fuvg-project-lightbox {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  place-items: center;
  padding: 56px 80px 42px;
  background: rgba(4, 16, 25, 0.94);
}

.fuvg-project-lightbox figure {
  display: grid;
  max-width: 100%;
  max-height: 100%;
  margin: 0;
  gap: 12px;
}

.fuvg-project-lightbox figure > img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(1500px, calc(100vw - 170px));
  max-height: calc(100vh - 130px);
  object-fit: contain;
}

.fuvg-project-lightbox figcaption {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  color: #fff;
  font-size: 0.82rem;
}

.fuvg-project-lightbox button {
  border: 0;
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
  cursor: pointer;
}

.fuvg-project-lightbox-close {
  position: absolute;
  top: 18px;
  right: 22px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  font-size: 2rem;
}

.fuvg-project-lightbox-arrow {
  position: absolute;
  top: 50%;
  width: 48px;
  height: 68px;
  transform: translateY(-50%);
  font-size: 3rem;
  line-height: 1;
}

.fuvg-project-lightbox-arrow.is-prev {
  left: 18px;
}

.fuvg-project-lightbox-arrow.is-next {
  right: 18px;
}

.fuvg-project-photo-button:focus-visible,
.fuvg-project-lightbox button:focus-visible {
  outline: 3px solid var(--sky);
  outline-offset: 3px;
}

@media (max-width: 820px) {
  .fuvg-project-photo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .fuvg-project-photo-grid {
    gap: 8px;
  }

  .fuvg-project-lightbox {
    padding: 64px 12px 60px;
  }

  .fuvg-project-lightbox figure > img {
    max-width: 100%;
    max-height: calc(100vh - 150px);
  }

  .fuvg-project-lightbox-arrow {
    top: auto;
    bottom: 8px;
    width: 44px;
    height: 40px;
    transform: none;
    font-size: 2rem;
  }

  .fuvg-project-lightbox-arrow.is-prev {
    left: calc(50% - 52px);
  }

  .fuvg-project-lightbox-arrow.is-next {
    right: calc(50% - 52px);
  }

  .fuvg-project-lightbox figcaption {
    font-size: 0.72rem;
  }
}
.fuvg-project-card-grid > a:hover img { opacity: .78; transform: none; }
.fuvg-project-card-copy { display: flex; flex-direction: column; min-height: 330px; padding: 32px; }
.fuvg-project-card-copy > span { color: var(--sky); font-size: .68rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.fuvg-project-card-copy h3 { font-size: clamp(1.55rem, 2.3vw, 2.35rem); letter-spacing: -.045em; line-height: 1.05; margin: 48px 0 18px; }
.fuvg-project-card-copy p { color: var(--muted); font-size: .86rem; line-height: 1.7; margin: 0 0 34px; }
.fuvg-project-card-copy strong { border-top: 1px solid var(--line); display: flex; font-size: .72rem; justify-content: space-between; margin-top: auto; padding-top: 15px; }
.fuvg-project-card-copy strong b { color: var(--sky); }

.fuvg-project-page { background: #fff; }
.fuvg-project-hero { background: var(--navy); color: #fff; min-height: 680px; overflow: hidden; position: relative; }
.fuvg-project-hero > img { height: 100%; inset: 0; object-fit: contain; position: absolute; width: 100%; }
.fuvg-project-hero-shade { background: linear-gradient(90deg, rgba(0,31,56,.97), rgba(0,31,56,.62) 58%, rgba(0,31,56,.2)); inset: 0; position: absolute; }
.fuvg-project-hero .fuvg-shell { display: flex; flex-direction: column; justify-content: flex-end; min-height: 680px; padding-bottom: 82px; padding-top: 82px; position: relative; z-index: 1; }
.fuvg-project-hero .fuvg-shell > a { color: #c8dbe3; font-size: .7rem; font-weight: 800; margin-bottom: auto; width: max-content; }
.fuvg-project-hero .fuvg-shell > a:hover { color: var(--sky); }
.fuvg-project-hero h1 { font-size: clamp(3.4rem, 7vw, 7rem); letter-spacing: -.07em; line-height: .87; margin: 18px 0 0; max-width: 1040px; }
.fuvg-project-overview { background: var(--paper); padding: 108px 0 116px; }
.fuvg-project-overview-grid { display: grid; gap: clamp(70px, 10vw, 150px); grid-template-columns: 1.25fr .75fr; }
.fuvg-project-overview h2 { color: var(--navy); font-size: clamp(2.7rem, 4.6vw, 5rem); letter-spacing: -.06em; line-height: .94; margin: 34px 0 30px; }
.fuvg-project-overview-grid > div > p:last-child { color: var(--muted); font-size: .96rem; line-height: 1.8; margin: 0; max-width: 650px; }
.fuvg-project-overview dl { border-top: 1px solid var(--line); margin: 0; }
.fuvg-project-overview dl > div { border-bottom: 1px solid var(--line); display: grid; gap: 22px; grid-template-columns: 120px 1fr; padding: 18px 0; }
.fuvg-project-overview dt { color: var(--muted); font-size: .68rem; font-weight: 800; text-transform: uppercase; }
.fuvg-project-overview dd { color: var(--navy); font-size: .8rem; font-weight: 800; margin: 0; }
.fuvg-project-description { background: #fff; padding: 112px 0 120px; }
.fuvg-project-description-grid { align-items: start; display: grid; gap: clamp(55px, 8vw, 130px); grid-template-columns: .72fr 1.28fr; }
.fuvg-project-description h2 { color: var(--navy); font-size: clamp(2.6rem, 4.6vw, 4.8rem); letter-spacing: -.06em; line-height: .96; margin: 34px 0 0; }
.fuvg-project-description-copy { border-top: 1px solid var(--line); max-width: 780px; padding-top: 28px; }
.fuvg-project-description-copy p { color: #415565; font-family: var(--fuv-font-sans); font-size: var(--fuv-type-body); line-height: 1.65; margin: 0 0 22px; }
.fuvg-project-description-copy p:last-child { margin-bottom: 0; }
.fuvg-project-gallery { background: #fff; padding: 112px 0 128px; }
.fuvg-project-gallery-heading { display: grid; gap: 32px; grid-template-columns: .42fr 1.58fr; margin-bottom: 64px; }
.fuvg-project-gallery-grid { display: grid; gap: 16px; grid-auto-flow: dense; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fuvg-project-gallery-grid figure { background: var(--navy); display: grid; height: 520px; margin: 0; min-height: 0; overflow: hidden; place-items: center; }
.fuvg-project-gallery-grid figure.is-wide { grid-column: 1 / -1; height: 480px; min-height: 0; }
.fuvg-project-gallery-grid img { height: 100%; object-fit: contain; width: 100%; }
.fuvg-dubai-gallery-grid figure.is-contain { background: var(--paper); padding: 14px; }
.fuvg-dubai-gallery-grid figure.is-contain img { object-fit: contain; }
.fuvg-dubai-gallery-grid figure.is-document {
  background: var(--paper);
  display: grid;
  grid-column: 1 / -1;
  grid-template-rows: minmax(760px, 1050px) auto;
  height: auto;
  justify-self: center;
  max-width: 920px;
  min-height: 0;
  padding: 18px;
  width: 100%;
}
.fuvg-dubai-gallery-grid figure.is-document img { object-fit: contain; }
.fuvg-dubai-gallery-grid figcaption {
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: .72rem;
  line-height: 1.55;
  padding: 15px 2px 0;
}

@media (max-width: 900px) {
  .fuvg-project-card-grid { grid-template-columns: 1fr; }
  .fuvg-project-overview-grid { gap: 60px; grid-template-columns: 1fr; }
  .fuvg-project-description-grid { gap: 60px; grid-template-columns: 1fr; }
  .fuvg-project-gallery-grid figure { height: 400px; min-height: 0; }
}

@media (max-width: 720px) {
  .fuvg-project-index,
  .fuvg-project-overview,
  .fuvg-project-description,
  .fuvg-project-gallery { padding: 82px 0 90px; }
  .fuvg-project-index-heading,
  .fuvg-project-gallery-heading { gap: 24px; grid-template-columns: 1fr; margin-bottom: 44px; }
  .fuvg-project-index-heading h2,
  .fuvg-project-gallery-heading h2 { font-size: clamp(2.65rem, 12vw, 3.7rem); }
  .fuvg-project-card-grid > a { grid-template-rows: 250px 1fr; }
  .fuvg-project-card-copy { min-height: 290px; padding: 26px; }
  .fuvg-project-card-copy h3 { margin-top: 38px; }
  .fuvg-project-hero,
  .fuvg-project-hero .fuvg-shell { min-height: 600px; }
  .fuvg-project-hero .fuvg-shell { padding-bottom: 65px; padding-top: 58px; }
  .fuvg-project-hero h1 { font-size: clamp(3rem, 15vw, 4.7rem); }
  .fuvg-project-overview dl > div { grid-template-columns: 96px 1fr; }
  .fuvg-project-gallery-grid { grid-template-columns: 1fr; }
  .fuvg-project-gallery-grid figure,
  .fuvg-project-gallery-grid figure.is-wide { grid-column: auto; height: 330px; min-height: 0; }
  .fuvg-dubai-gallery-grid figure.is-document {
    grid-column: auto;
    grid-template-rows: minmax(500px, 720px) auto;
    height: auto;
    padding: 10px;
  }
}

/* FUV Architecture & Construction — first decade */
.fuvg-first-decade {
  background: #fff;
  padding: 112px 0 124px;
}
.fuvg-first-decade-heading {
  align-items: start;
  display: grid;
  gap: 70px;
  grid-template-columns: .42fr 1.58fr;
  margin-bottom: 58px;
}
.fuvg-first-decade-heading h2 {
  color: var(--navy);
  font-size: clamp(2.8rem, 5vw, 5.4rem);
  letter-spacing: -.065em;
  line-height: .92;
  margin: 0;
  max-width: 920px;
}
.fuvg-first-decade-copy {
  border-left: 2px solid var(--sky);
  margin: 0 0 72px calc(21% + 37px);
  max-width: 900px;
  padding-left: 34px;
}
.fuvg-first-decade-copy p {
  color: var(--muted);
  font-size: .94rem;
  line-height: 1.82;
  margin: 0 0 22px;
}
.fuvg-first-decade-copy p:last-child { margin-bottom: 0; }
.fuvg-first-decade-gallery {
  display: grid;
  gap: 28px 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.fuvg-first-decade-gallery > figure {
  margin: 0;
  min-width: 0;
}
.fuvg-first-decade-gallery > figure.is-wide { grid-column: 1 / -1; }
.fuvg-first-decade-image {
  background: var(--navy);
  margin: 0;
  overflow: hidden;
}
.fuvg-first-decade-gallery img {
  display: block;
  height: auto;
  width: 100%;
}
.fuvg-first-decade-gallery figcaption {
  align-items: center;
  border-bottom: 1px solid var(--line);
  color: var(--navy);
  display: flex;
  font-size: .75rem;
  font-weight: 800;
  justify-content: space-between;
  padding: 14px 2px 16px;
}
.fuvg-first-decade-gallery figcaption span {
  color: var(--sky);
  font-size: .65rem;
  font-weight: 900;
  letter-spacing: .08em;
}

@media (max-width: 900px) {
  .fuvg-first-decade-copy { margin-left: 0; }
}

@media (max-width: 720px) {
  .fuvg-first-decade { padding: 82px 0 90px; }
  .fuvg-first-decade-heading {
    gap: 24px;
    grid-template-columns: 1fr;
    margin-bottom: 42px;
  }
  .fuvg-first-decade-heading h2 { font-size: clamp(2.65rem, 12vw, 3.7rem); }
  .fuvg-first-decade-copy {
    margin-bottom: 54px;
    padding-left: 24px;
  }
  .fuvg-first-decade-copy p { font-size: .9rem; }
  .fuvg-first-decade-gallery { grid-template-columns: 1fr; }
  .fuvg-first-decade-gallery > figure.is-wide { grid-column: auto; }
  .fuvg-first-decade-gallery figcaption {
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }
}

/* FUV Group — Theo Tountas */
.fuvg-theo-hero {
  background: var(--navy);
  color: #fff;
  overflow: hidden;
  position: relative;
}
.fuvg-theo-hero::after {
  border: 1px solid rgba(117, 216, 245, .16);
  border-radius: 50%;
  content: "";
  height: 640px;
  position: absolute;
  right: -170px;
  top: -300px;
  width: 640px;
}
.fuvg-theo-hero .fuvg-shell {
  padding-bottom: 118px;
  padding-top: 108px;
  position: relative;
  z-index: 1;
}
.fuvg-theo-hero h1 {
  font-size: clamp(3.75rem, 7.4vw, 7.6rem);
  letter-spacing: -.07em;
  line-height: .86;
  margin: 0;
}
.fuvg-theo-hero .fuvg-shell > p:last-child {
  color: #bad1da;
  font-size: 1rem;
  line-height: 1.8;
  margin: 42px 0 0;
  max-width: 780px;
}
.fuvg-theo-intro { background: #fff; padding: 112px 0 122px; }
.fuvg-theo-intro-grid {
  display: grid;
  gap: 100px;
  grid-template-columns: .95fr 1.05fr;
}
.fuvg-theo-intro h2 {
  color: var(--navy);
  font-size: clamp(2.8rem, 5vw, 5.3rem);
  letter-spacing: -.065em;
  line-height: .92;
  margin: 0;
}
.fuvg-theo-intro-grid > div:last-child {
  border-left: 2px solid var(--sky);
  padding-left: 34px;
}
.fuvg-theo-intro-grid > div:last-child p {
  color: var(--muted);
  font-size: .98rem;
  line-height: 1.82;
  margin: 0 0 23px;
}
.fuvg-theo-intro-grid > div:last-child p:last-child { margin-bottom: 0; }
.fuvg-theo-roles { background: var(--paper); padding: 112px 0 124px; }
.fuvg-theo-role-grid {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.fuvg-theo-role-grid article {
  background: #fff;
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  min-height: 370px;
  padding: 35px;
}
.fuvg-theo-role-grid h2 {
  color: var(--navy);
  font-size: clamp(1.5rem, 2.1vw, 2.05rem);
  letter-spacing: -.045em;
  line-height: 1.08;
  margin: 0 0 25px;
}
.fuvg-theo-role-grid p { color: var(--muted); font-size: .9rem; line-height: 1.75; margin: 0; }
.fuvg-theo-cta { background: #002641; color: #fff; padding: 96px 0; }
.fuvg-theo-cta-grid {
  align-items: end;
  display: grid;
  gap: 80px;
  grid-template-columns: 1fr auto;
}
.fuvg-theo-cta h2 {
  font-size: clamp(2.5rem, 4.6vw, 4.8rem);
  letter-spacing: -.06em;
  line-height: .94;
  margin: 0;
  max-width: 900px;
}

@media (max-width: 980px) {
  .fuvg-theo-intro-grid { gap: 55px; grid-template-columns: 1fr; }
  .fuvg-theo-role-grid { grid-template-columns: 1fr; }
  .fuvg-theo-role-grid article { min-height: auto; }
  .fuvg-theo-role-grid h2 { margin-top: 42px; }
  .fuvg-theo-cta-grid { align-items: stretch; grid-template-columns: 1fr; }
  .fuvg-theo-cta-grid .fuvg-button { width: max-content; }
}

@media (max-width: 720px) {
  .fuvg-theo-hero .fuvg-shell { padding-bottom: 76px; padding-top: 76px; }
  .fuvg-theo-hero h1 { font-size: clamp(3.2rem, 15.5vw, 4.8rem); }
  .fuvg-theo-hero .fuvg-shell > p:last-child { font-size: .9rem; margin-top: 30px; }
  .fuvg-theo-intro,
  .fuvg-theo-roles { padding: 82px 0 90px; }
  .fuvg-theo-intro h2 { font-size: clamp(2.5rem, 12vw, 3.7rem); }
  .fuvg-theo-intro-grid > div:last-child { padding-left: 25px; }
  .fuvg-theo-role-grid article { padding: 27px; }
  .fuvg-theo-cta { padding: 78px 0; }
  .fuvg-theo-cta-grid { gap: 38px; }
  .fuvg-theo-cta-grid .fuvg-button { width: 100%; }
}

/* FUV Activities — Projects and Reuse */
.fuvg-projects-overview { background: #fff; padding: 112px 0 124px; }
.fuvg-projects-overview-heading {
  align-items: start;
  display: grid;
  gap: 70px;
  grid-template-columns: .42fr 1.58fr;
  margin-bottom: 64px;
}
.fuvg-projects-overview-heading h2 {
  color: var(--navy);
  font-size: clamp(2.8rem, 5vw, 5.4rem);
  letter-spacing: -.065em;
  line-height: .92;
  margin: 0;
}
.fuvg-project-menu-grid {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.fuvg-project-menu-card {
  background: #fff;
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  color: var(--navy);
  display: grid;
  grid-template-rows: 240px 1fr;
  min-height: 500px;
}
.fuvg-project-menu-card figure {
  background: var(--navy);
  margin: 0;
  overflow: hidden;
  position: relative;
}
.fuvg-project-menu-card figure.is-placeholder {
  align-items: flex-end;
  background: #eef3f5;
  display: flex;
  padding: 24px 28px;
}
.fuvg-project-menu-card figure.is-placeholder span {
  color: #c7d8df;
  font-size: 5rem;
  font-weight: 900;
  letter-spacing: -.08em;
  line-height: .8;
}
.fuvg-project-menu-card img {
  height: 100%;
  object-fit: contain;
  transition: opacity .25s ease, transform .35s ease;
  width: 100%;
}
.fuvg-project-menu-card:hover img { opacity: .82; transform: none; }
.fuvg-project-menu-card > div {
  display: flex;
  flex-direction: column;
  padding: 29px;
}
.fuvg-project-menu-card > div > span {
  color: var(--sky);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .08em;
}
.fuvg-project-menu-card h2 {
  font-size: clamp(1.55rem, 2.4vw, 2.45rem);
  letter-spacing: -.05em;
  line-height: 1.02;
  margin: 38px 0 22px;
}
.fuvg-project-menu-card strong {
  border-top: 1px solid var(--line);
  display: flex;
  font-size: .72rem;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 15px;
}
.fuvg-project-menu-card strong b { color: var(--sky); }
.fuvg-project-menu-empty { background: #fff; padding: 112px 0 128px; }
.fuvg-project-menu-empty .fuvg-shell {
  border-left: 2px solid var(--sky);
  padding-bottom: 28px;
  padding-top: 28px;
}
.fuvg-project-menu-empty h2 {
  color: var(--navy);
  font-size: clamp(2.2rem, 4.5vw, 4.8rem);
  letter-spacing: -.06em;
  line-height: .96;
  margin: 24px 0 0;
  max-width: 850px;
}
.fuvg-projects-epanachrisi-card {
  background: var(--navy);
  color: #fff;
  display: grid;
  grid-template-columns: 1.18fr .82fr;
  min-height: 520px;
}
.fuvg-projects-epanachrisi-card figure { margin: 0; min-height: 520px; overflow: hidden; }
.fuvg-projects-epanachrisi-card img { height: 100%; object-fit: contain; transition: transform .35s ease; width: 100%; }
.fuvg-projects-epanachrisi-card:hover img { transform: none; }
.fuvg-projects-epanachrisi-card > div { display: flex; flex-direction: column; padding: 42px; }
.fuvg-projects-epanachrisi-card span { color: var(--sky); font-size: .7rem; font-weight: 900; letter-spacing: .08em; }
.fuvg-projects-epanachrisi-card h2 { font-size: clamp(2.2rem, 4vw, 4.2rem); letter-spacing: -.06em; line-height: .94; margin: 72px 0 25px; }
.fuvg-projects-epanachrisi-card p { color: #bad1da; font-size: .92rem; line-height: 1.75; margin: 0 0 40px; }
.fuvg-projects-epanachrisi-card strong { border-top: 1px solid rgba(255,255,255,.22); display: flex; font-size: .75rem; justify-content: space-between; margin-top: auto; padding-top: 17px; }
.fuvg-projects-epanachrisi-card strong b { color: var(--sky); }
.fuvg-projects-next {
  border: 1px solid var(--line);
  display: grid;
  gap: 45px;
  grid-template-columns: .42fr 1.58fr;
  margin-top: 34px;
  padding: 38px;
}
.fuvg-projects-next h2 { color: var(--navy); font-size: clamp(1.8rem, 3vw, 3rem); letter-spacing: -.05em; line-height: 1; margin: 0 0 22px; }
.fuvg-projects-next > div p { color: var(--muted); font-size: .9rem; line-height: 1.75; margin: 0; max-width: 720px; }

.fuvg-epanachrisi-page { background: #fff; }
.fuvg-project-back { color: #bad1da; display: inline-block; font-size: .72rem; font-weight: 800; margin-bottom: 66px; }
.fuvg-reuse-projects { background: #fff; padding: 112px 0 128px; }
.fuvg-reuse-intro { margin-bottom: 96px; }
.fuvg-reuse-project { border-top: 1px solid var(--line); margin-bottom: 88px; padding-top: 48px; }
.fuvg-reuse-intro + .fuvg-reuse-project { border-top: 0; padding-top: 0; }
.fuvg-reuse-project:last-child { margin-bottom: 0; }
.fuvg-reuse-project-year { color: var(--sky); font-size: .72rem; font-weight: 900; letter-spacing: .1em; margin: 0 0 14px; }
.fuvg-reuse-project-gallery { display: grid; gap: 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fuvg-reuse-project-gallery figure { margin: 0; }
.fuvg-reuse-project-image { aspect-ratio: 4 / 3; background: var(--paper); display: grid; overflow: hidden; place-items: center; }
.fuvg-reuse-project-image img { display: block; height: 100%; object-fit: contain; width: 100%; }
.fuvg-reuse-project-details { border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 18px 0 0; }
.fuvg-reuse-project-details div { border-left: 1px solid var(--line); padding: 15px 18px 17px; }
.fuvg-reuse-project-details div:first-child { border-left: 0; }
.fuvg-reuse-project-details dt { color: var(--muted); font-size: .62rem; font-weight: 800; letter-spacing: .07em; margin-bottom: 6px; text-transform: uppercase; }
.fuvg-reuse-project-details dd { color: var(--navy); font-size: .88rem; font-weight: 750; line-height: 1.4; margin: 0; }

/* FUV Channel — technical stories */
.fuvg-technical-stories-index { background: var(--paper); padding: 112px 0 124px; }
.fuvg-technical-stories-heading {
  align-items: start;
  display: grid;
  gap: 70px;
  grid-template-columns: .42fr 1.58fr;
  margin-bottom: 64px;
}
.fuvg-technical-stories-heading h2 { color: var(--navy); font-size: clamp(2.8rem, 5vw, 5.4rem); letter-spacing: -.065em; line-height: .92; margin: 0; }
.fuvg-technical-story-card { background: #fff; color: var(--navy); display: grid; grid-template-columns: .85fr 1.15fr; }
.fuvg-technical-story-card figure { background: var(--navy); margin: 0; min-height: 490px; overflow: hidden; }
.fuvg-technical-story-card img { height: 100%; object-fit: contain; transition: transform .35s ease; width: 100%; }
.fuvg-technical-story-card:hover img { transform: none; }
.fuvg-technical-story-card > div { display: flex; flex-direction: column; padding: 44px; }
.fuvg-technical-story-card span { color: var(--sky); font-size: .7rem; font-weight: 900; letter-spacing: .08em; }
.fuvg-technical-story-card h3 { font-size: clamp(2.1rem, 4vw, 4.15rem); letter-spacing: -.06em; line-height: .94; margin: 74px 0 24px; }
.fuvg-technical-story-card p { color: var(--muted); font-size: .92rem; line-height: 1.75; margin: 0 0 38px; }
.fuvg-technical-story-card strong { border-top: 1px solid var(--line); display: flex; font-size: .75rem; justify-content: space-between; margin-top: auto; padding-top: 17px; }
.fuvg-technical-story-card strong b { color: var(--sky); }

.fuvg-story-hero { background: var(--navy); color: #fff; padding: 92px 0 106px; }
.fuvg-story-hero-grid { align-items: end; display: grid; gap: clamp(50px, 7vw, 110px); grid-template-columns: 1.18fr .82fr; }
.fuvg-story-back { color: #bad1da; display: inline-block; font-size: .72rem; font-weight: 800; margin-bottom: 74px; }
.fuvg-story-hero h1 { font-size: clamp(3.25rem, 6.4vw, 6.7rem); letter-spacing: -.07em; line-height: .88; margin: 17px 0 34px; }
.fuvg-story-deck { color: #bad1da; font-size: 1rem; line-height: 1.75; margin: 0; max-width: 760px; }
.fuvg-story-byline { border-top: 1px solid rgba(255,255,255,.22); font-size: .72rem; font-weight: 800; margin: 38px 0 0; padding-top: 18px; }
.fuvg-story-hero figure { margin: 0; overflow: hidden; }
.fuvg-story-hero img { display: block; height: auto; width: 100%; }
.fuvg-story-video-section { background: var(--paper); padding: clamp(44px, 6vw, 78px) 0; }
.fuvg-story-video-section .fuv-channel-video-frame { margin: 0 auto; max-width: 1050px; }
.fuvg-story-body { background: #fff; padding: 112px 0 128px; }
.fuvg-story-layout { align-items: start; display: grid; gap: clamp(60px, 9vw, 150px); grid-template-columns: .45fr 1.55fr; }
.fuvg-story-layout > aside { position: sticky; top: 120px; }
.fuvg-story-layout > aside > p:nth-child(2) { color: var(--muted); font-size: .78rem; line-height: 1.65; margin: 24px 0 30px; }
.fuvg-story-layout > aside .fuvg-channel-format-nav { grid-template-columns: 1fr; }
.fuvg-story-layout > aside .fuvg-channel-format-nav a { min-height: 48px; }
.fuvg-story-section { border-top: 1px solid var(--line); padding: 50px 0; }
.fuvg-story-section:first-child { border-top: 0; padding-top: 0; }
.fuvg-story-section h2 { color: var(--navy); font-size: clamp(2rem, 3.6vw, 3.8rem); letter-spacing: -.055em; line-height: .98; margin: 0 0 31px; }
.fuvg-story-section p { color: #415565; font-family: var(--fuv-font-sans); font-size: var(--fuv-type-body); line-height: 1.65; margin: 0 0 25px; }
.fuvg-story-section p:last-child { margin-bottom: 0; }

@media (max-width: 900px) {
  .fuvg-project-menu-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fuvg-projects-epanachrisi-card,
  .fuvg-technical-story-card,
  .fuvg-story-hero-grid,
  .fuvg-story-layout { grid-template-columns: 1fr; }
  .fuvg-projects-epanachrisi-card figure,
  .fuvg-technical-story-card figure { min-height: 420px; }
  .fuvg-story-layout > aside { position: static; }
  .fuvg-reuse-project-details { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fuvg-reuse-project-details div:nth-child(3) { border-left: 0; border-top: 1px solid var(--line); }
  .fuvg-reuse-project-details div:nth-child(4) { border-top: 1px solid var(--line); }
}

@media (max-width: 720px) {
  .fuvg-projects-overview,
  .fuvg-reuse-projects,
  .fuvg-technical-stories-index,
  .fuvg-story-body { padding: 82px 0 90px; }
  .fuvg-projects-overview-heading,
  .fuvg-technical-stories-heading,
  .fuvg-projects-next { gap: 24px; grid-template-columns: 1fr; margin-bottom: 44px; }
  .fuvg-projects-overview-heading h2,
  .fuvg-technical-stories-heading h2 { font-size: clamp(2.65rem, 12vw, 3.7rem); }
  .fuvg-project-menu-grid { grid-template-columns: 1fr; }
  .fuvg-project-menu-card { grid-template-rows: 220px 1fr; min-height: 440px; }
  .fuvg-project-menu-card > div { padding: 25px; }
  .fuvg-project-menu-empty { padding: 82px 0 90px; }
  .fuvg-projects-epanachrisi-card figure,
  .fuvg-technical-story-card figure { min-height: 290px; }
  .fuvg-projects-epanachrisi-card > div,
  .fuvg-technical-story-card > div { padding: 28px; }
  .fuvg-projects-epanachrisi-card h2,
  .fuvg-technical-story-card h3 { margin-top: 42px; }
  .fuvg-projects-next { margin-bottom: 0; padding: 27px; }
  .fuvg-project-back { margin-bottom: 52px; }
  .fuvg-reuse-project { margin-bottom: 64px; padding-top: 36px; }
  .fuvg-reuse-intro + .fuvg-reuse-project { padding-top: 0; }
  .fuvg-reuse-project-gallery { gap: 10px; grid-template-columns: 1fr; }
  .fuvg-reuse-project-details { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 14px; }
  .fuvg-reuse-project-details div { border-left: 1px solid var(--line); border-top: 0; padding: 13px 12px 15px; }
  .fuvg-reuse-project-details div:nth-child(odd) { border-left: 0; }
  .fuvg-reuse-project-details div:last-child { border-top: 1px solid var(--line); grid-column: 1 / -1; }
  .fuvg-story-hero { padding: 64px 0 76px; }
  .fuvg-story-back { margin-bottom: 54px; }
  .fuvg-story-hero h1 { font-size: clamp(3rem, 14.5vw, 4.6rem); }
  .fuvg-story-section { padding: 40px 0; }
  .fuvg-story-section p { font-size: 1rem; line-height: 1.82; }
  .fuvg-activity-detail-hero h1 {
    font-size: clamp(3rem, 12.5vw, 4.2rem);
    overflow-wrap: anywhere;
  }
}

/* FUV Group — unified title scale across all subpages */
.fuvg-page:not(.fuvg-home-page) main h1 {
  font-size: clamp(3rem, 5vw, 5.5rem);
  letter-spacing: -.065em;
  line-height: .92;
}
.fuvg-page:not(.fuvg-home-page) main h2 {
  font-size: clamp(1.75rem, 2.4vw, 3rem);
  letter-spacing: -.04em;
  line-height: 1.08;
}
.fuvg-page:not(.fuvg-home-page) main h3 {
  font-size: clamp(1.15rem, 1.55vw, 1.5rem);
  letter-spacing: -.025em;
  line-height: 1.18;
}

@media (max-width: 720px) {
  .fuvg-page:not(.fuvg-home-page) main h1 {
    font-size: clamp(2.75rem, 10vw, 3.5rem);
  }
}

/* FUV Channel — magazine navigation */
.fuv-channel-header {
  background: #fff;
  color: var(--navy);
  position: relative;
  z-index: 60;
}
.fuv-channel-utility {
  background: #00182c;
  color: #c7dbe3;
}
.fuv-channel-utility .fuvg-shell {
  align-items: center;
  display: flex;
  justify-content: space-between;
  min-height: 34px;
}
.fuv-channel-utility a {
  color: #c7dbe3;
  font-size: .66rem;
  font-weight: 800;
}
.fuv-channel-utility a:hover { color: var(--sky); }
.fuv-channel-utility div div { display: flex; gap: 22px; }
.fuv-channel-masthead {
  align-items: center;
  display: flex;
  justify-content: space-between;
  min-height: 104px;
}
.fuv-channel-brand {
  align-items: center;
  color: var(--navy);
  display: flex;
  gap: 15px;
}
.fuv-channel-brand img {
  display: block;
  height: 58px;
  object-fit: contain;
  width: 58px;
}
.fuv-channel-brand span { display: flex; flex-direction: column; }
.fuv-channel-brand strong {
  font-size: 1.62rem;
  letter-spacing: -.045em;
  line-height: 1;
}
.fuv-channel-brand small {
  color: #60727d;
  font-size: .61rem;
  font-weight: 700;
  margin-top: 7px;
}
.fuv-channel-masthead > p {
  color: var(--sky);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .13em;
  margin: 0;
}
.fuv-channel-topic-bar {
  background: var(--navy);
  border-bottom: 3px solid var(--sky);
  color: #fff;
}
.fuv-channel-topic-nav {
  align-items: stretch;
  display: flex;
  min-height: 50px;
  overflow: visible;
}
.fuv-channel-topic-nav > a,
.fuv-channel-topic-link,
.fuv-channel-topic-toggle {
  align-items: center;
  background: transparent;
  border: 0;
  color: #fff;
  cursor: pointer;
  display: flex;
  font-family: inherit;
  font-size: .68rem;
  font-weight: 850;
  min-height: 50px;
  padding: 0 12px;
  white-space: nowrap;
}
.fuv-channel-topic-link { padding-right: 5px; }
.fuv-channel-topic-toggle {
  justify-content: center;
  padding-left: 3px;
  padding-right: 10px;
}
.fuv-channel-topic-toggle::after {
  color: var(--sky);
  content: "+";
  font-size: .7rem;
}
.fuv-channel-topic-nav > a:hover,
.fuv-channel-topic-nav > a.is-active,
.fuv-channel-topic-dropdown:hover > .fuv-channel-topic-link,
.fuv-channel-topic-dropdown:hover > .fuv-channel-topic-toggle,
.fuv-channel-topic-dropdown > .fuv-channel-topic-toggle[aria-expanded="true"],
.fuv-channel-topic-dropdown:has(> .fuv-channel-topic-toggle[aria-expanded="true"]) > .fuv-channel-topic-link,
.fuv-channel-topic-dropdown.is-active > .fuv-channel-topic-link,
.fuv-channel-topic-dropdown.is-active > .fuv-channel-topic-toggle {
  background: var(--sky);
  color: var(--navy);
}
.fuv-channel-topic-dropdown {
  display: flex;
  position: static;
}
.fuv-channel-mega-menu {
  background: #fff;
  border-top: 3px solid var(--sky);
  box-shadow: 0 24px 60px rgba(0,24,44,.24);
  color: var(--navy);
  display: none;
  left: 50%;
  max-height: min(680px, 72vh);
  max-width: 1212px;
  overflow-y: auto;
  padding: 30px;
  position: absolute;
  top: 100%;
  transform: translateX(-50%);
  width: calc(100vw - 68px);
}
.fuv-channel-mega-menu.is-open { display: block; }
.fuv-channel-mega-heading {
  align-items: end;
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
  margin-bottom: 24px;
  padding-bottom: 18px;
}
.fuv-channel-mega-heading > div { display: flex; flex-direction: column; }
.fuv-channel-mega-heading span {
  color: var(--sky);
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .12em;
}
.fuv-channel-mega-heading strong {
  font-size: 2rem;
  letter-spacing: -.045em;
  line-height: 1;
  margin-top: 8px;
}
.fuv-channel-mega-heading > a {
  color: var(--navy);
  font-size: .7rem;
  font-weight: 900;
}
.fuv-channel-mega-grid {
  display: grid;
  gap: 24px 18px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.fuv-channel-mega-grid > a {
  color: var(--navy);
  display: block;
}
.fuv-channel-mega-grid img {
  aspect-ratio: 16 / 9;
  display: block;
  object-fit: cover;
  width: 100%;
}
.fuv-channel-mega-grid strong {
  display: block;
  font-size: .78rem;
  line-height: 1.45;
  margin-top: 10px;
}
.fuv-channel-mega-grid > a:hover strong { color: var(--sky); }
.fuv-channel-mobile-menu { display: none; }

.fuv-channel-topic-hero,
.fuv-channel-article-header {
  background: var(--navy);
  color: #fff;
  padding: clamp(58px, 7vw, 96px) 0;
}
.fuv-channel-topic-hero a,
.fuv-channel-article-header a {
  color: #b9d4df;
  display: inline-block;
  font-size: .75rem;
  font-weight: 800;
  margin-bottom: 34px;
}
.fuv-channel-topic-hero h1,
.fuv-channel-article-header h1 {
  color: #fff;
  margin: 0;
  max-width: 980px;
}
.fuv-channel-topic-index { padding: clamp(56px, 7vw, 100px) 0; }
.fuv-channel-topic-index-grid {
  display: grid;
  gap: 42px 26px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.fuv-channel-topic-index-grid > a {
  color: var(--navy);
  display: flex;
  flex-direction: column;
}
.fuv-channel-topic-index-grid img {
  aspect-ratio: 16 / 9;
  display: block;
  object-fit: contain;
  width: 100%;
}
.fuv-channel-topic-index-grid span {
  color: var(--sky);
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .12em;
  margin-top: 18px;
}
.fuv-channel-topic-index-grid h2 {
  font-size: clamp(1.15rem, 1.6vw, 1.6rem) !important;
  line-height: 1.18 !important;
  margin: 9px 0 18px;
}
.fuv-channel-topic-index-grid strong {
  border-top: 1px solid var(--line);
  color: #415565;
  font-size: .72rem;
  margin-top: auto;
  padding-top: 14px;
}
.fuv-channel-topic-index-grid > a:hover h2,
.fuv-channel-topic-index-grid > a:hover strong { color: var(--sky); }
.fuv-channel-topic-empty {
  border: 1px solid var(--line);
  padding: 32px;
}
.fuv-channel-topic-empty p { margin: 0; }
.fuv-channel-article-header h1 { max-width: 1050px; }
.fuv-channel-article-body {
  display: grid;
  gap: clamp(40px, 6vw, 82px);
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .75fr);
  padding-bottom: clamp(64px, 8vw, 112px);
  padding-top: clamp(48px, 7vw, 92px);
}
.fuv-channel-video-frame {
  aspect-ratio: 16 / 9;
  background: #00182c;
}
.fuv-channel-video-frame iframe {
  border: 0;
  display: block;
  height: 100%;
  width: 100%;
}
.fuv-channel-article-description {
  align-self: start;
  border-top: 3px solid var(--sky);
  padding-top: 22px;
}
.fuv-channel-article-description p:not(.fuvg-kicker) {
  color: #415565;
  font-size: .96rem;
  line-height: 1.75;
}
.fuv-channel-article-description > a {
  border-top: 1px solid var(--line);
  color: var(--navy);
  display: block;
  font-size: .72rem;
  font-weight: 900;
  margin-top: 28px;
  padding-top: 16px;
}

@media (max-width: 1040px) {
  .fuv-channel-masthead { min-height: 86px; }
  .fuv-channel-topic-nav { display: none; }
  .fuv-channel-mobile-menu {
    display: block;
    padding-bottom: 10px;
    padding-top: 10px;
    position: relative;
  }
  .fuv-channel-mobile-menu > summary {
    border: 1px solid rgba(255,255,255,.35);
    color: #fff;
    cursor: pointer;
    font-size: .74rem;
    font-weight: 850;
    list-style: none;
    padding: 12px 14px;
  }
  .fuv-channel-mobile-menu > summary::-webkit-details-marker { display: none; }
  .fuv-channel-mobile-menu > summary::after { color: var(--sky); content: " +"; }
  .fuv-channel-mobile-menu[open] > summary::after { content: " −"; }
  .fuv-channel-mobile-menu > nav {
    background: #fff;
    box-shadow: 0 20px 50px rgba(0,24,44,.28);
    color: var(--navy);
    left: 34px;
    max-height: 70vh;
    overflow-y: auto;
    padding: 12px;
    position: absolute;
    right: 34px;
    top: calc(100% - 1px);
  }
  .fuv-channel-mobile-menu > nav > a,
  .fuv-channel-mobile-menu > nav > details > summary {
    border-bottom: 1px solid var(--line);
    color: var(--navy);
    cursor: pointer;
    display: block;
    font-size: .8rem;
    font-weight: 800;
    list-style: none;
    padding: 13px 11px;
  }
  .fuv-channel-mobile-menu > nav > details > div { background: var(--paper); display: grid; }
  .fuv-channel-mobile-menu > nav > details > div a {
    border-bottom: 1px solid var(--line);
    color: #415565;
    font-size: .73rem;
    line-height: 1.45;
    padding: 11px 15px;
  }
  .fuv-channel-mobile-menu > nav > details > div .fuv-channel-mobile-all {
    color: var(--navy);
    font-weight: 900;
  }
  .fuv-channel-topic-index-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fuv-channel-article-body { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  .fuv-channel-utility .fuvg-shell > div { display: none; }
  .fuv-channel-masthead > p { display: none; }
  .fuv-channel-brand strong { font-size: 1.42rem; }
  .fuv-channel-mobile-menu > nav { left: 28px; right: 28px; }
  .fuv-channel-topic-index-grid { gap: 0; grid-template-columns: 1fr; }
  .fuv-channel-topic-index-grid > a {
    border-bottom: 1px solid var(--line);
    display: grid;
    gap: 4px 14px;
    grid-template-columns: 112px minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    padding: 16px 0;
  }
  .fuv-channel-topic-index-grid img {
    align-self: start;
    aspect-ratio: 16 / 9;
    grid-column: 1;
    grid-row: 1 / 4;
    height: auto;
    margin: 0;
    object-fit: contain;
  }
  .fuv-channel-topic-index-grid span {
    grid-column: 2;
    margin-top: 0;
  }
  .fuv-channel-topic-index-grid h2 {
    font-size: .98rem !important;
    grid-column: 2;
    margin: 2px 0 4px;
  }
  .fuv-channel-topic-index-grid strong {
    border-top: 0;
    font-size: .64rem;
    grid-column: 2;
    padding-top: 0;
  }
}

/* FUV Group — συνολική εικαστική εναρμόνιση με FUV Products */
.fuvg-page {
  --navy: var(--logo-navy);
  --navy-2: var(--logo-navy);
  background: #fff;
  color: var(--ink);
  font-family: var(--fuv-font-sans);
  font-size: 16px;
  line-height: 1.6;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
.fuvg-page .fuvg-shell {
  max-width: 1280px;
  padding-left: 34px;
  padding-right: 34px;
}
.fuvg-page .fuvg-header {
  background: var(--logo-navy);
  border-bottom: 0;
}
.fuvg-page .fuvg-header-inner {
  gap: 24px;
  grid-template-columns: 205px minmax(0, 1fr);
  min-height: 116px;
}
.fuvg-page .fuvg-header .fuvg-brand img {
  display: block;
  height: 58px;
  max-width: 100%;
  object-fit: contain;
  object-position: left center;
  width: 195px;
}
.fuvg-page .fuvg-nav {
  gap: clamp(18px, 1.8vw, 32px);
}
.fuvg-page .fuvg-nav a,
.fuvg-page .fuvg-nav-dropdown summary {
  color: #d4e5ec;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
}
.fuvg-page .fuvg-nav-dropdown > div {
  border-top-color: var(--sky);
  box-shadow: 0 18px 45px rgba(0,24,44,.18);
  top: calc(100% + 22px);
}
.fuvg-page .fuvg-nav-dropdown > div a {
  color: var(--navy);
  font-size: .78rem;
  line-height: 1.4;
  padding: 13px 14px;
}
.fuvg-page .fuvg-mobile-nav summary {
  font-size: .75rem;
  font-weight: 800;
  line-height: 1.3;
}
.fuvg-page .fuvg-mobile-nav nav a {
  font-size: .82rem;
  font-weight: 750;
  line-height: 1.4;
  padding: 13px 12px;
}
.fuvg-page .fuvg-mobile-nav nav .fuvg-mobile-submenu a {
  font-size: .75rem;
}
.fuvg-page .fuvg-kicker {
  font-size: .69rem;
  font-weight: 900;
  letter-spacing: .14em;
  line-height: 1.4;
  margin-bottom: 20px;
}
.fuvg-page main p {
  font-size: .94rem;
  line-height: 1.75;
}
.fuvg-page .fuvg-button {
  font-size: .76rem;
  font-weight: 900;
  gap: 34px;
  min-height: 54px;
  padding: 13px 19px;
}
.fuvg-page .fuvg-footer {
  background: var(--logo-navy);
  color: #9bb4bf;
  padding: 0;
}
.fuvg-page .fuvg-utility,
.fuvg-page .fuvg-gibran,
.fuvg-page .fuvg-channel,
.fuvg-page .fuvg-theo-cta,
.fuvg-page:not(.fuvg-home-page) .fuvg-partners {
  background: var(--logo-navy);
}
.fuvg-page .fuvg-footer-grid {
  min-height: 120px;
}
.fuvg-page .fuvg-footer p,
.fuvg-page .fuvg-footer-grid > span {
  color: #9bb4bf;
  font-size: .78rem;
}
.fuvg-page .fuvg-footer .fuvg-brand img {
  height: 66px;
  object-fit: contain;
  object-position: left center;
  width: 220px;
}

.fuvg-home-page .fuvg-hero,
.fuvg-home-page .fuvg-hero-content,
.fuvg-home-page.fuvg-doric .fuvg-hero,
.fuvg-home-page.fuvg-doric .fuvg-hero-content {
  min-height: calc(100vh - 116px);
}
.fuvg-home-page .fuvg-hero-image {
  left: auto;
  opacity: 1;
  object-position: center;
  right: 0;
  width: 56%;
}
.fuvg-home-page .fuvg-hero-shade {
  background: linear-gradient(90deg, #001b38 0%, #001b38 40%, rgba(0,27,56,.96) 48%, rgba(0,27,56,.32) 60%, rgba(0,27,56,0) 76%);
}
.fuvg-home-page .fuvg-hero-content {
  padding-bottom: 92px;
  padding-right: min(52%, 660px);
  padding-top: 92px;
}
.fuvg-home-page .fuvg-hero-lead {
  color: #d0dfe5;
  font-size: 1.08rem;
  font-weight: 400;
  line-height: 1.6;
}
.fuvg-home-page .fuvg-hero-note {
  background: rgba(0,27,56,.82);
}

@media (max-width: 1040px) {
  .fuvg-page .fuvg-header-inner {
    grid-template-columns: 1fr auto;
    min-height: 86px;
  }
  .fuvg-page .fuvg-header .fuvg-brand img {
    height: 58px;
    width: 195px;
  }
  .fuvg-home-page .fuvg-hero,
  .fuvg-home-page .fuvg-hero-content,
  .fuvg-home-page.fuvg-doric .fuvg-hero,
  .fuvg-home-page.fuvg-doric .fuvg-hero-content {
    min-height: calc(100vh - 86px);
  }
}

@media (max-width: 900px) {
  .fuvg-home-page .fuvg-hero-image {
    left: 0;
    width: 100%;
  }
  .fuvg-home-page .fuvg-hero-shade {
    background: linear-gradient(90deg, rgba(0,27,56,.88) 0%, rgba(0,27,56,.72) 62%, rgba(0,27,56,.48) 100%);
  }
  .fuvg-home-page .fuvg-hero-content {
    padding-right: 34px;
  }
}

@media (max-width: 720px) {
  .fuvg-page .fuvg-shell {
    padding-left: 28px;
    padding-right: 28px;
  }
  .fuvg-page .fuvg-header-inner {
    min-height: 86px;
  }
  .fuvg-page main p {
    font-size: .9rem;
    line-height: 1.72;
  }
  .fuvg-home-page .fuvg-hero,
  .fuvg-home-page .fuvg-hero-content,
  .fuvg-home-page.fuvg-doric .fuvg-hero,
  .fuvg-home-page.fuvg-doric .fuvg-hero-content {
    min-height: auto;
  }
  .fuvg-home-page .fuvg-hero-content {
    padding-bottom: 160px;
    padding-right: 28px;
    padding-top: 72px;
  }
}

/* FUV Group homepage — all section titles follow the Research title scale. */
.fuvg-home-page main > section:not(.fuvg-hero) h2 {
  font-size: clamp(1.75rem, 2.4vw, 3rem);
  letter-spacing: -.04em;
  line-height: 1.08;
}

/* FUV Group homepage — compact editorial rhythm */
.fuvg-home-page main p {
  font-size: .88rem;
  line-height: 1.65;
}
.fuvg-home-page .fuvg-hero,
.fuvg-home-page .fuvg-hero-content,
.fuvg-home-page.fuvg-doric .fuvg-hero,
.fuvg-home-page.fuvg-doric .fuvg-hero-content {
  min-height: clamp(560px, 66vh, 680px);
}
.fuvg-home-page .fuvg-hero-content {
  padding-bottom: 62px;
  padding-top: 62px;
}
.fuvg-home-page .fuvg-hero h1 {
  font-size: clamp(2.45rem, 3.2vw, 3.75rem);
  line-height: .98;
  max-width: 540px;
}
.fuvg-home-page .fuvg-hero-subtitle {
  font-size: .78rem;
  margin: 30px 0 10px;
}
.fuvg-home-page .fuvg-hero-lead {
  font-size: .88rem;
  line-height: 1.55;
  margin-bottom: 24px;
  max-width: 500px;
}
.fuvg-home-page .fuvg-button {
  font-size: .7rem;
  min-height: 46px;
  padding: 10px 16px;
}
.fuvg-home-page .fuvg-hero-note {
  padding: 18px 24px;
  width: min(280px, calc(100% - 56px));
}
.fuvg-home-page .fuvg-hero-note strong { font-size: 1.08rem; }

.fuvg-home-page main > section:not(.fuvg-hero) h2,
.fuvg-home-page .fuvg-section-heading h2,
.fuvg-home-page .fuvg-group h2,
.fuvg-home-page .fuvg-history-copy h2,
.fuvg-home-page .fuvg-knowledge h2,
.fuvg-home-page .fuvg-contact h2,
.fuvg-home-page .fuvg-consulting h2,
.fuvg-home-page .fuvg-dual h2,
.fuvg-home-page .fuvg-trusted-title,
.fuvg-home-page .fuvg-activities-intro h2 {
  font-size: clamp(1.55rem, 2vw, 2.45rem);
  letter-spacing: -.035em;
  line-height: 1.1;
}
.fuvg-home-page .fuvg-group,
.fuvg-home-page .fuvg-expertise,
.fuvg-home-page .fuvg-consulting,
.fuvg-home-page .fuvg-channel,
.fuvg-home-page .fuvg-history,
.fuvg-home-page .fuvg-dual,
.fuvg-home-page .fuvg-knowledge,
.fuvg-home-page .fuvg-trusted,
.fuvg-home-page .fuvg-partners {
  padding-bottom: 72px;
  padding-top: 72px;
}
.fuvg-home-page .fuvg-section-heading {
  gap: 48px;
  margin-bottom: 40px;
}
.fuvg-home-page .fuvg-group-grid,
.fuvg-home-page .fuvg-consulting-grid,
.fuvg-home-page .fuvg-knowledge-grid {
  gap: 48px;
}
.fuvg-home-page .fuvg-group-grid > div > p { margin-top: 22px; }
.fuvg-home-page .fuvg-definition {
  font-size: 1.1rem !important;
  padding-left: 18px;
}
.fuvg-home-page .fuvg-values {
  margin-top: 38px;
  padding-top: 26px;
}
.fuvg-home-page .fuvg-values h3 {
  font-size: clamp(1.35rem, 2vw, 2.15rem);
  line-height: 1.05;
}

.fuvg-home-page .fuvg-activities-intro {
  margin-bottom: 30px;
}
.fuvg-home-page .fuvg-activities-intro > div { padding: 38px; }
.fuvg-home-page .fuvg-activities-intro h2 { margin-bottom: 20px; }
.fuvg-home-page .fuvg-activity-grid > a {
  min-height: 220px;
  padding: 24px;
}
.fuvg-home-page .fuvg-activity-grid h3 {
  font-size: 1.12rem;
  margin: 28px 0 14px;
}

.fuvg-home-page .fuvg-consulting-logos {
  margin: 30px 0 34px;
  padding: 18px 0;
}
.fuvg-home-page .fuvg-consulting h3 { margin-top: 26px; }

.fuvg-home-page .fuvg-channel-profile,
.fuvg-home-page .fuvg-channel-profile-copy {
  min-height: 440px;
}
.fuvg-home-page .fuvg-channel-profile-copy {
  padding: 48px;
}
.fuvg-home-page .fuvg-channel-profile-copy h2 {
  margin: 20px 0 26px;
}
.fuvg-home-page .fuvg-channel-profile-copy > p { margin-top: 22px; }
.fuvg-home-page .fuvg-channel-profile-stats dd {
  font-size: clamp(1.25rem, 1.8vw, 1.8rem);
}
.fuvg-home-page .fuvg-channel-home-link {
  grid-template-columns: 110px 1fr auto;
  min-height: 110px;
}
.fuvg-home-page .fuvg-channel-home-link > img {
  height: 110px;
  width: 110px;
}
.fuvg-home-page .fuvg-channel-platforms a {
  min-height: 88px;
  padding: 20px;
}

.fuvg-home-page .fuvg-timeline-simple article {
  min-height: 230px;
  padding: 22px;
}
.fuvg-home-page .fuvg-timeline-card-top { min-height: 70px; }
.fuvg-home-page .fuvg-timeline-small-logo {
  height: 66px;
  width: 66px;
}
.fuvg-home-page .fuvg-timeline-simple h3 {
  font-size: 1.05rem;
  margin: 20px 0 10px;
}

.fuvg-home-page .fuvg-gibran blockquote {
  padding-bottom: 52px;
  padding-top: 52px;
}
.fuvg-home-page .fuvg-gibran blockquote > p:not(.fuvg-kicker) {
  font-size: .86rem;
  margin-bottom: 12px;
}
.fuvg-home-page .fuvg-gibran blockquote .fuvg-gibran-emphasis {
  font-size: clamp(1.25rem, 1.8vw, 1.75rem);
  margin: 8px 0 18px;
}

.fuvg-home-page .fuvg-dual-copy { padding: 36px; }
.fuvg-home-page .fuvg-dual-copy p:not(.fuvg-kicker) { margin: 22px 0; }
.fuvg-home-page .fuvg-knowledge-copy > p {
  margin-bottom: 34px;
  padding-left: 20px;
}
.fuvg-home-page .fuvg-proof-grid a {
  min-height: 120px;
  padding: 20px;
}
.fuvg-home-page .fuvg-trusted-title { margin-bottom: 40px; }
.fuvg-home-page .fuvg-client-grid,
.fuvg-home-page .fuvg-partner-grid { gap: 32px 42px; }
.fuvg-home-page .fuvg-client-grid figure,
.fuvg-home-page .fuvg-partner-grid article { min-height: 88px; }
.fuvg-home-page .fuvg-client-grid img,
.fuvg-home-page .fuvg-partner-grid article img { height: 74px; }
.fuvg-home-page .fuvg-partner-heading { padding-bottom: 20px; }
.fuvg-home-page .fuvg-contact { padding: 62px 0; }
.fuvg-home-page .fuvg-contact-grid { gap: 48px; }
.fuvg-home-page .fuvg-footer-grid { min-height: 92px; }
.fuvg-home-page .fuvg-footer .fuvg-brand img { width: 190px; }

@media (max-width: 900px) {
  .fuvg-home-page .fuvg-hero,
  .fuvg-home-page .fuvg-hero-content,
  .fuvg-home-page.fuvg-doric .fuvg-hero,
  .fuvg-home-page.fuvg-doric .fuvg-hero-content {
    min-height: 560px;
  }
  .fuvg-home-page .fuvg-hero-content { padding-right: 34px; }
  .fuvg-home-page .fuvg-channel-profile,
  .fuvg-home-page .fuvg-channel-profile-copy { min-height: 400px; }
}

@media (max-width: 720px) {
  .fuvg-home-page .fuvg-shell {
    padding-left: 22px;
    padding-right: 22px;
  }
  .fuvg-home-page .fuvg-hero,
  .fuvg-home-page .fuvg-hero-content,
  .fuvg-home-page.fuvg-doric .fuvg-hero,
  .fuvg-home-page.fuvg-doric .fuvg-hero-content {
    min-height: 540px;
  }
  .fuvg-home-page .fuvg-hero-content {
    padding-bottom: 128px;
    padding-right: 22px;
    padding-top: 50px;
  }
  .fuvg-home-page .fuvg-hero h1 {
    font-size: clamp(2.15rem, 10vw, 2.85rem);
    max-width: 410px;
  }
  .fuvg-home-page .fuvg-hero-subtitle { margin-top: 24px; }
  .fuvg-home-page main > section:not(.fuvg-hero) h2,
  .fuvg-home-page .fuvg-section-heading h2,
  .fuvg-home-page .fuvg-group h2,
  .fuvg-home-page .fuvg-history-copy h2,
  .fuvg-home-page .fuvg-knowledge h2,
  .fuvg-home-page .fuvg-contact h2,
  .fuvg-home-page .fuvg-consulting h2,
  .fuvg-home-page .fuvg-dual h2,
  .fuvg-home-page .fuvg-trusted-title,
  .fuvg-home-page .fuvg-activities-intro h2 {
    font-size: clamp(1.7rem, 8vw, 2.25rem);
  }
  .fuvg-home-page .fuvg-group,
  .fuvg-home-page .fuvg-expertise,
  .fuvg-home-page .fuvg-consulting,
  .fuvg-home-page .fuvg-channel,
  .fuvg-home-page .fuvg-history,
  .fuvg-home-page .fuvg-dual,
  .fuvg-home-page .fuvg-knowledge,
  .fuvg-home-page .fuvg-trusted,
  .fuvg-home-page .fuvg-partners {
    padding-bottom: 54px;
    padding-top: 54px;
  }
  .fuvg-home-page .fuvg-section-heading,
  .fuvg-home-page .fuvg-group-grid,
  .fuvg-home-page .fuvg-consulting-grid,
  .fuvg-home-page .fuvg-knowledge-grid {
    gap: 24px;
  }
  .fuvg-home-page .fuvg-section-heading { margin-bottom: 30px; }
  .fuvg-home-page .fuvg-activities-intro > div,
  .fuvg-home-page .fuvg-dual-copy { padding: 26px; }
  .fuvg-home-page .fuvg-activity-grid > a { min-height: 190px; }
  .fuvg-home-page .fuvg-channel-profile { min-height: 0; }
  .fuvg-home-page .fuvg-channel-profile-copy {
    min-height: 0;
    padding: calc(66% + 18px) 22px 28px;
  }
  .fuvg-home-page .fuvg-channel-home-link {
    grid-template-columns: 86px 1fr auto;
    min-height: 86px;
  }
  .fuvg-home-page .fuvg-channel-home-link > img {
    height: 86px;
    width: 86px;
  }
  .fuvg-home-page .fuvg-channel-home-link > span { padding: 12px 14px; }
  .fuvg-home-page .fuvg-timeline-simple article { min-height: 205px; }
  .fuvg-home-page .fuvg-gibran blockquote {
    padding-bottom: 40px;
    padding-top: 40px;
  }
  .fuvg-home-page .fuvg-client-grid,
  .fuvg-home-page .fuvg-partner-grid { gap: 22px 18px; }
  .fuvg-home-page .fuvg-contact { padding: 48px 0; }
  .fuvg-home-page .fuvg-footer-grid { min-height: 84px; }
}

/* FUV Group subpages — one shared scale for pages, menus and cards. */
.fuvg-page:is(
  .fuvg-about-page,
  .fuvg-research-page,
  .fuvg-activities-page,
  .fuvg-activity-detail-page,
  .fuvg-project-page,
  .fuvg-theo-page,
  .fuvg-contact-page
) main h1 {
  font-size: clamp(2.45rem, 3.2vw, 3.75rem);
  letter-spacing: -.045em;
  line-height: .98;
}

.fuvg-about-hero .fuvg-shell,
.fuvg-research-hero .fuvg-shell,
.fuvg-activities-hub-hero .fuvg-shell,
.fuvg-activity-detail-hero .fuvg-shell,
.fuvg-theo-hero .fuvg-shell {
  padding-bottom: 68px;
  padding-top: 68px;
}

.fuvg-project-hero,
.fuvg-project-hero .fuvg-shell {
  min-height: 520px;
}
.fuvg-project-hero .fuvg-shell {
  padding-bottom: 62px;
  padding-top: 62px;
}

.fuvg-page:is(
  .fuvg-about-page,
  .fuvg-research-page,
  .fuvg-activities-page,
  .fuvg-activity-detail-page,
  .fuvg-project-page,
  .fuvg-theo-page,
  .fuvg-contact-page
) main h2,
.fuvg-activities-hub-heading h2,
.fuvg-activity-related-heading h2,
.fuvg-projects-overview-heading h2,
.fuvg-project-index-heading h2,
.fuvg-project-gallery-heading h2,
.fuvg-first-decade-heading h2 {
  font-size: clamp(1.55rem, 2vw, 2.45rem);
  letter-spacing: -.035em;
  line-height: 1.1;
}

.fuvg-page:is(
  .fuvg-about-page,
  .fuvg-research-page,
  .fuvg-activities-page,
  .fuvg-activity-detail-page,
  .fuvg-project-page,
  .fuvg-theo-page,
  .fuvg-contact-page
) main h3 {
  font-size: clamp(1.05rem, 1.25vw, 1.3rem);
  letter-spacing: -.02em;
  line-height: 1.2;
}

.fuvg-activities-hub-grid h2,
.fuvg-activity-detail-grid h2,
.fuvg-project-menu-card h2,
.fuvg-theo-role-grid h2 {
  font-size: clamp(1.08rem, 1.3vw, 1.38rem);
  line-height: 1.12;
}

.fuvg-about-intro,
.fuvg-about-history,
.fuvg-about-awards,
.fuvg-about-papers,
.fuvg-about-outreach,
.fuvg-research-intro,
.fuvg-research-conferences,
.fuvg-activities-hub-menu,
.fuvg-activity-detail-content,
.fuvg-activity-related,
.fuvg-project-index,
.fuvg-projects-overview,
.fuvg-project-menu-empty,
.fuvg-project-overview,
.fuvg-project-description,
.fuvg-project-gallery,
.fuvg-first-decade,
.fuvg-theo-intro,
.fuvg-theo-roles,
.fuvg-reuse-projects,
.fuvg-technical-stories-index,
.fuvg-story-body {
  padding-bottom: 72px;
  padding-top: 72px;
}

.fuvg-activities-hub-heading,
.fuvg-activity-related-heading,
.fuvg-project-index-heading,
.fuvg-projects-overview-heading,
.fuvg-project-gallery-heading,
.fuvg-first-decade-heading,
.fuvg-technical-stories-heading {
  gap: 48px;
  margin-bottom: 40px;
}

.fuvg-activities-hub-grid > a {
  min-height: 260px;
  padding: 24px;
}
.fuvg-activities-hub-card-image {
  height: 150px;
  margin: -24px -24px 22px;
}
.fuvg-activities-hub-grid h2 { margin-bottom: 14px; }
.fuvg-activities-hub-grid p { margin-bottom: 22px; }

.fuvg-activity-detail-grid article,
.fuvg-theo-role-grid article {
  min-height: 285px;
  padding: 27px;
}
.fuvg-activity-detail-grid h2,
.fuvg-theo-role-grid h2 {
  margin: 42px 0 20px;
}
.fuvg-activity-external-cta {
  margin-top: 26px;
  padding: 30px;
}
.fuvg-activity-related nav a {
  min-height: 62px;
  padding: 16px 20px;
}

.fuvg-project-menu-card {
  grid-template-rows: 190px 1fr;
  min-height: 410px;
}
.fuvg-project-menu-card > div { padding: 24px; }
.fuvg-project-menu-card h2 { margin: 28px 0 18px; }
.fuvg-project-card-copy {
  min-height: 260px;
  padding: 24px;
}
.fuvg-project-card-copy h3 { margin: 32px 0 16px; }

.fuvg-project-overview-grid,
.fuvg-project-description-grid,
.fuvg-theo-intro-grid {
  gap: clamp(44px, 6vw, 86px);
}
.fuvg-project-gallery-heading { margin-bottom: 40px; }
.fuvg-project-description h2,
.fuvg-project-overview h2,
.fuvg-theo-intro h2,
.fuvg-theo-cta h2,
.fuvg-project-menu-empty h2 {
  font-size: clamp(1.55rem, 2vw, 2.45rem);
  letter-spacing: -.035em;
  line-height: 1.1;
}
.fuvg-project-gallery-grid figure { height: 420px; }
.fuvg-project-gallery-grid figure.is-wide { height: 400px; }

@media (max-width: 720px) {
  .fuvg-page:is(
    .fuvg-about-page,
    .fuvg-research-page,
    .fuvg-activities-page,
    .fuvg-activity-detail-page,
    .fuvg-project-page,
    .fuvg-theo-page,
    .fuvg-contact-page
  ) main h1 {
    font-size: clamp(2.15rem, 10vw, 2.85rem);
  }

  .fuvg-page:is(
    .fuvg-about-page,
    .fuvg-research-page,
    .fuvg-activities-page,
    .fuvg-activity-detail-page,
    .fuvg-project-page,
    .fuvg-theo-page,
    .fuvg-contact-page
  ) main h2,
  .fuvg-activities-hub-heading h2,
  .fuvg-activity-related-heading h2,
  .fuvg-projects-overview-heading h2,
  .fuvg-project-index-heading h2,
  .fuvg-project-gallery-heading h2,
  .fuvg-first-decade-heading h2 {
    font-size: clamp(1.7rem, 8vw, 2.25rem);
  }

  .fuvg-about-hero .fuvg-shell,
  .fuvg-research-hero .fuvg-shell,
  .fuvg-activities-hub-hero .fuvg-shell,
  .fuvg-activity-detail-hero .fuvg-shell,
  .fuvg-theo-hero .fuvg-shell {
    padding-bottom: 54px;
    padding-top: 54px;
  }

  .fuvg-project-hero,
  .fuvg-project-hero .fuvg-shell { min-height: 460px; }
  .fuvg-project-hero .fuvg-shell {
    padding-bottom: 48px;
    padding-top: 48px;
  }

  .fuvg-about-intro,
  .fuvg-about-history,
  .fuvg-about-awards,
  .fuvg-about-papers,
  .fuvg-about-outreach,
  .fuvg-research-intro,
  .fuvg-research-conferences,
  .fuvg-activities-hub-menu,
  .fuvg-activity-detail-content,
  .fuvg-activity-related,
  .fuvg-project-index,
  .fuvg-projects-overview,
  .fuvg-project-menu-empty,
  .fuvg-project-overview,
  .fuvg-project-description,
  .fuvg-project-gallery,
  .fuvg-first-decade,
  .fuvg-theo-intro,
  .fuvg-theo-roles,
  .fuvg-reuse-projects,
  .fuvg-technical-stories-index,
  .fuvg-story-body {
    padding-bottom: 54px;
    padding-top: 54px;
  }

  .fuvg-activities-hub-heading,
  .fuvg-activity-related-heading,
  .fuvg-project-index-heading,
  .fuvg-projects-overview-heading,
  .fuvg-project-gallery-heading,
  .fuvg-first-decade-heading,
  .fuvg-technical-stories-heading {
    gap: 24px;
    margin-bottom: 30px;
  }

  .fuvg-activities-hub-grid > a { min-height: 240px; }
  .fuvg-activity-detail-grid article,
  .fuvg-theo-role-grid article { min-height: 0; }
  .fuvg-project-menu-card {
    grid-template-rows: 180px 1fr;
    min-height: 360px;
  }
  .fuvg-project-gallery-grid figure,
  .fuvg-project-gallery-grid figure.is-wide { height: 300px; }
}

/* FUV Channel — shared navy, typography and component dimensions. */
.fuvg-channel-page,
.fuvg-channel-page .fuv-channel-header,
.fuvg-channel-page .fuv-channel-utility,
.fuvg-channel-page .fuv-channel-masthead,
.fuvg-channel-page .fuv-channel-topic-bar,
.fuvg-channel-page .fuvg-channel,
.fuvg-channel-page .fuvg-footer,
.fuvg-channel-category-page .fuvg-channel-category-hero,
.fuvg-channel-page .fuv-channel-topic-hero,
.fuvg-channel-page .fuv-channel-article-header,
.fuvg-channel-page .fuvg-story-hero,
.fuvg-channel-page .fuv-channel-video-frame {
  background-color: var(--logo-navy);
}

.fuv-channel-header { color: #fff; }
.fuv-channel-utility { border-bottom: 1px solid rgba(255,255,255,.1); }
.fuv-channel-masthead {
  min-height: 92px;
}
.fuv-channel-brand {
  color: #fff;
  width: 92px;
}
.fuv-channel-brand img {
  height: 82px;
  object-fit: contain;
  width: 82px;
}
.fuv-channel-topic-nav { min-height: 48px; }
.fuv-channel-topic-nav > a,
.fuv-channel-topic-link,
.fuv-channel-topic-toggle {
  font-size: .7rem;
  min-height: 48px;
}
.fuv-channel-footer-brand img {
  height: 76px !important;
  object-fit: contain !important;
  width: 76px !important;
}

.fuvg-channel-page main h1,
.fuvg-channel-category-page main h1 {
  font-size: clamp(2.45rem, 3.2vw, 3.75rem);
  letter-spacing: -.045em;
  line-height: .98;
}
.fuvg-channel-page main h2,
.fuvg-channel-category-page main h2,
.fuvg-channel-archive-heading h2,
.fuvg-technical-stories-heading h2 {
  font-size: clamp(1.55rem, 2vw, 2.45rem);
  letter-spacing: -.035em;
  line-height: 1.1;
}

.fuv-channel-topic-hero,
.fuv-channel-article-header {
  padding-bottom: 68px;
  padding-top: 68px;
}
.fuvg-channel-category-hero {
  min-height: 0;
}
.fuvg-channel-category-hero > .fuvg-shell {
  padding-bottom: 68px;
  padding-top: 68px;
}
.fuvg-channel-category-hero .fuvg-channel-format-nav {
  margin-top: 44px;
}
.fuv-channel-topic-hero a,
.fuv-channel-article-header a {
  margin-bottom: 24px;
}

.fuvg-channel-standalone,
.fuv-channel-topic-index,
.fuvg-channel-article-archive,
.fuvg-technical-stories-index {
  padding-bottom: 72px;
  padding-top: 72px;
}
.fuvg-channel-standalone { min-height: 0; }
.fuvg-channel-profile,
.fuvg-channel-profile-copy {
  min-height: 480px;
}
.fuvg-channel-profile-copy {
  padding: 48px;
}
.fuvg-channel-profile-copy h1 {
  margin: 22px 0 28px;
}

.fuvg-channel-magazine-heading { min-height: 420px; }
.fuvg-channel-topic-grid {
  grid-auto-rows: 1fr;
}
.fuvg-channel-topic-grid a {
  min-height: 150px;
}
.fuvg-channel-topic-grid strong {
  font-size: .92rem;
  line-height: 1.2;
  padding: 20px;
}

.fuv-channel-mega-grid {
  grid-auto-rows: 1fr;
}
.fuv-channel-mega-grid > a {
  display: grid;
  grid-template-rows: auto 1fr;
}
.fuv-channel-mega-grid strong {
  font-size: .8rem;
  line-height: 1.4;
  min-height: 3.5em;
}

.fuv-channel-topic-index-grid {
  align-items: stretch;
  gap: 28px 22px;
}
.fuv-channel-topic-index-grid > a {
  height: 100%;
  min-height: 340px;
}
.fuv-channel-topic-index-grid h2 {
  font-size: 1.2rem !important;
  line-height: 1.2 !important;
  min-height: 3.6em;
}
.fuv-channel-topic-index-grid img {
  aspect-ratio: 16 / 9;
  object-fit: contain;
}

.fuvg-channel-article-card-grid {
  align-items: stretch;
}
.fuvg-channel-article-card-grid > a {
  min-height: 340px;
}
.fuvg-channel-article-card-grid h2 {
  font-size: 1.16rem;
  line-height: 1.22;
  min-height: 3.66em;
}
.fuvg-channel-article-archive { padding-bottom: 72px; padding-top: 72px; }
.fuvg-channel-archive-heading {
  gap: 48px;
  margin-bottom: 40px;
}

.fuv-channel-article-body {
  display: block;
  padding-bottom: 72px;
  padding-top: 72px;
}
.fuv-channel-video-frame {
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.fuv-channel-article-description {
  border-top: 1px solid var(--line);
  margin: 54px auto 0;
  max-width: 860px;
  padding-top: 34px;
}
.fuv-channel-article-description > .fuvg-kicker {
  color: var(--sky);
  margin-bottom: 28px;
}
.fuv-channel-article-copy p {
  color: #415565;
  font-family: var(--fuv-font-sans);
  font-size: var(--fuv-type-body);
  line-height: 1.65;
  margin: 0 0 24px;
  overflow-wrap: anywhere;
  white-space: pre-line;
}
.fuv-channel-article-copy p:last-child { margin-bottom: 0; }
.fuv-channel-article-description > a { margin-top: 38px; }

@media (max-width: 720px) {
  .fuv-channel-masthead { min-height: 82px; }
  .fuv-channel-brand,
  .fuv-channel-brand img {
    height: 70px;
    width: 70px;
  }

  .fuvg-channel-page main h1,
  .fuvg-channel-category-page main h1 {
    font-size: clamp(2.15rem, 10vw, 2.85rem);
  }
  .fuvg-channel-page main h2,
  .fuvg-channel-category-page main h2,
  .fuvg-channel-archive-heading h2,
  .fuvg-technical-stories-heading h2 {
    font-size: clamp(1.7rem, 8vw, 2.25rem);
  }

  .fuv-channel-topic-hero,
  .fuv-channel-article-header,
  .fuvg-channel-category-hero > .fuvg-shell {
    padding-bottom: 54px;
    padding-top: 54px;
  }
  .fuvg-channel-standalone,
  .fuv-channel-topic-index,
  .fuvg-channel-article-archive,
  .fuvg-technical-stories-index,
  .fuv-channel-article-body {
    padding-bottom: 54px;
    padding-top: 54px;
  }

  .fuvg-channel-profile { min-height: 0; }
  .fuvg-channel-profile-copy {
    min-height: 0;
    padding: calc(66% + 18px) 22px 28px;
  }
  .fuvg-channel-magazine { grid-template-columns: 1fr; }
  .fuvg-channel-magazine-heading {
    border-bottom: 1px solid rgba(255,255,255,.25);
    border-right: 0;
    min-height: 250px;
  }
  .fuvg-channel-magazine-heading img { width: min(68%, 220px); }
  .fuvg-channel-topic-grid { grid-template-columns: repeat(2, 1fr); }
  .fuvg-channel-topic-grid a { min-height: 132px; }
  .fuvg-channel-topic-grid a:nth-child(4n) { border-right: 1px solid rgba(255,255,255,.25); }
  .fuvg-channel-topic-grid a:nth-child(2n) { border-right: 0; }

  .fuv-channel-topic-index-grid > a {
    min-height: 0;
  }
  .fuv-channel-topic-index-grid h2 {
    min-height: 0;
  }
  .fuvg-channel-archive-heading {
    gap: 24px;
    margin-bottom: 30px;
  }
  .fuvg-channel-article-card-grid h2 { min-height: 0; }
  .fuv-channel-article-description { margin-top: 38px; padding-top: 28px; }
  .fuv-channel-article-copy p { font-size: var(--fuv-type-body); line-height: 1.65; }
}

/* FUV Channel corrections — white editorial areas and exact Group typography. */
.fuvg-channel-page {
  background: #fff;
}
.fuv-channel-topic-index,
.fuvg-technical-stories-index,
.fuv-channel-article-body {
  background: #fff;
  color: var(--ink);
}
.fuvg-channel-article-archive {
  background: var(--paper);
}

.fuvg-channel-page main,
.fuvg-channel-category-page main {
  font-family: var(--fuv-font-sans);
}
.fuvg-channel-page main h1,
.fuvg-channel-category-page main h1 {
  font-family: inherit;
  font-size: clamp(2.45rem, 3.2vw, 3.75rem);
  font-weight: 700;
  letter-spacing: -.045em;
  line-height: .98;
}
.fuvg-channel-page main h2,
.fuvg-channel-category-page main h2,
.fuvg-channel-archive-heading h2,
.fuvg-technical-stories-heading h2 {
  font-family: inherit;
  font-size: clamp(1.55rem, 2vw, 2.45rem);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.1;
}
.fuvg-channel-page main h3,
.fuvg-channel-category-page main h3 {
  font-family: inherit;
  font-size: clamp(1.05rem, 1.25vw, 1.3rem);
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.2;
}
.fuvg-channel-page main p,
.fuvg-channel-category-page main p {
  font-size: .88rem;
  line-height: 1.65;
}
.fuv-channel-topic-index-grid h2,
.fuvg-channel-article-card-grid h2 {
  font-size: 1.12rem !important;
  font-weight: 700;
  line-height: 1.2 !important;
}
.fuvg-channel-topic-grid strong,
.fuv-channel-mega-grid strong {
  font-family: var(--fuv-font-sans);
  font-weight: 700;
}

@media (max-width: 720px) {
  .fuvg-channel-page main h1,
  .fuvg-channel-category-page main h1 {
    font-size: clamp(2.15rem, 10vw, 2.85rem);
  }
  .fuvg-channel-page main h2,
  .fuvg-channel-category-page main h2,
  .fuvg-channel-archive-heading h2,
  .fuvg-technical-stories-heading h2 {
    font-size: clamp(1.7rem, 8vw, 2.25rem);
  }
}

/* FUV Channel article archive — final compact dimensions. */
.fuvg-channel-page .fuvg-channel-article-card-grid > a {
  min-height: 0;
  padding: 18px;
}
.fuvg-channel-page .fuvg-channel-article-card-image {
  aspect-ratio: auto;
  height: 180px;
  margin-top: 14px;
  object-fit: cover;
}
.fuvg-channel-page .fuvg-channel-article-card-top > span { font-size: 1.3rem; }
.fuvg-channel-page .fuvg-channel-article-card-grid .fuvg-channel-article-publication {
  font-size: .61rem;
  margin-top: 12px;
}
.fuvg-channel-page .fuvg-channel-article-card-grid h2 {
  font-size: 1.02rem !important;
  margin: 14px 0 10px;
  min-height: 2.45em;
}
.fuvg-channel-page .fuvg-channel-article-card-grid p:not(.fuvg-channel-article-publication) {
  display: -webkit-box;
  font-size: .78rem;
  line-height: 1.55;
  margin-bottom: 22px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.fuvg-channel-page .fuvg-channel-article-card-grid > a > strong {
  font-size: .67rem;
  padding-top: 12px;
}

@media (max-width: 720px) {
  .fuvg-channel-page .fuvg-channel-article-card-image { height: 165px; }
  .fuvg-channel-page .fuvg-channel-article-card-grid h2 { min-height: 0; }
}

/* FUV Channel — final menu, submenu and card consistency. */
.fuvg-channel-page .fuvg-channel-article-card-top {
  justify-content: flex-end;
}
.fuvg-channel-page .fuv-channel-topic-nav > a,
.fuvg-channel-page .fuv-channel-topic-link,
.fuvg-channel-page .fuv-channel-topic-toggle {
  font-family: var(--fuv-font-sans);
  font-size: .7rem;
  font-weight: 700;
  line-height: 1.2;
  min-height: 48px;
}
.fuvg-channel-page .fuv-channel-mega-grid strong {
  font-size: .8rem;
  line-height: 1.4;
  min-height: 3.5em;
}
.fuvg-channel-page .fuv-channel-topic-index-grid > a {
  background: #fff;
  border: 1px solid #c8d4da;
  min-height: 340px;
  padding: 16px;
}
.fuvg-channel-page .fuv-channel-topic-index-grid img {
  aspect-ratio: auto;
  background: #f2f5f6;
  height: 180px;
  object-fit: contain;
}
.fuvg-channel-page .fuv-channel-topic-index-grid h2 {
  font-size: 1.12rem !important;
  line-height: 1.2 !important;
  min-height: 3.6em;
}
.fuvg-channel-page .fuv-channel-article-header h1 {
  font-size: clamp(2.2rem, 2.7vw, 3.2rem);
  line-height: 1.02;
  max-width: 920px;
}

@media (max-width: 1040px) {
  .fuvg-channel-page .fuv-channel-mobile-menu > summary,
  .fuvg-channel-page .fuv-channel-mobile-menu > nav > a,
  .fuvg-channel-page .fuv-channel-mobile-menu > nav > details > summary {
    font-family: var(--fuv-font-sans);
    font-size: .8rem;
    font-weight: 700;
  }
  .fuvg-channel-page .fuv-channel-mobile-menu > nav > details > div a {
    font-family: var(--fuv-font-sans);
    font-size: .73rem;
  }
}

/* FUV Group home — tighter transition from values to activities. */
.fuvg-home-page .fuvg-group {
  padding-bottom: 32px;
}
.fuvg-home-page .fuvg-expertise {
  padding-top: 32px;
}

@media (max-width: 720px) {
  .fuvg-home-page .fuvg-group {
    padding-bottom: 28px;
  }
  .fuvg-home-page .fuvg-expertise {
    padding-top: 28px;
  }
}

/* FUV Group — header logo aligned visually with FUV Products. */
@media (min-width: 1041px) {
  .fuvg-page .fuvg-header-inner {
    grid-template-columns: 280px minmax(0, 1fr);
  }
  .fuvg-page .fuvg-header .fuvg-brand img {
    height: auto;
    width: 270px;
  }
}

@media (max-width: 720px) {
  .fuvg-channel-page .fuv-channel-topic-index-grid {
    gap: 14px;
  }
  .fuvg-channel-page .fuv-channel-topic-index-grid > a {
    min-height: 0;
    padding: 14px;
  }
  .fuvg-channel-page .fuv-channel-topic-index-grid img {
    height: auto;
  }
  .fuvg-channel-page .fuv-channel-topic-index-grid h2 {
    min-height: 0;
  }
  .fuvg-channel-page .fuv-channel-article-header h1 {
    font-size: clamp(2rem, 9vw, 2.7rem);
  }
}

/* Corrections from the approved activities and channel references. */
.fuvg-activities-page .fuvg-activities-hub-hero,
.fuvg-activity-detail-hero {
  background: var(--logo-navy);
}
.fuvg-about-hero::after,
.fuvg-research-hero::after,
.fuvg-channel-category-hero::after,
.fuvg-activities-hub-hero::after,
.fuvg-activity-detail-hero::after,
.fuvg-theo-hero::after {
  content: none !important;
  display: none !important;
}
.fuv-channel-page-back {
  align-items: center;
  background: var(--sky);
  color: var(--logo-navy);
  display: inline-flex;
  font-family: var(--fuv-font-sans);
  font-size: .72rem;
  font-weight: 800;
  gap: 10px;
  margin-bottom: 28px;
  min-height: 42px;
  padding: 10px 15px;
}
.fuv-channel-page-back:hover {
  background: #fff;
  color: var(--logo-navy);
}
.fuvg-channel-profile-home,
.fuvg-channel-profile-home .fuvg-channel-profile-copy {
  min-height: 440px;
}
.fuvg-channel-profile-home .fuvg-channel-profile-copy {
  padding: 48px;
}
.fuvg-channel-profile-home .fuvg-channel-profile-copy h1,
.fuvg-channel-profile-home .fuvg-channel-profile-copy h2 {
  font-family: var(--fuv-font-sans);
  font-size: clamp(1.55rem, 2vw, 2.45rem);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.1;
  margin: 20px 0 26px;
}
.fuvg-channel-profile-title-line {
  display: block;
  white-space: nowrap;
}
.fuvg-channel-profile-home .fuvg-channel-profile-copy > p {
  font-size: .88rem;
  line-height: 1.65;
  margin-top: 22px;
}
.fuvg-channel-profile-home .fuvg-channel-profile-stats dd {
  font-size: clamp(1.25rem, 1.8vw, 1.8rem);
}

@media (max-width: 900px) {
  .fuvg-channel-profile-home,
  .fuvg-channel-profile-home .fuvg-channel-profile-copy {
    min-height: 400px;
  }
}

@media (max-width: 720px) {
  .fuv-channel-page-back {
    margin-bottom: 22px;
  }
  .fuvg-channel-profile-home {
    min-height: 0;
  }
  .fuvg-channel-profile-home .fuvg-channel-profile-copy {
    min-height: 0;
    padding: calc(66% + 18px) 22px 28px;
  }
  .fuvg-channel-profile-home .fuvg-channel-profile-copy h1,
  .fuvg-channel-profile-home .fuvg-channel-profile-copy h2 {
    font-size: clamp(1.2rem, 6vw, 2rem);
  }
}

/* FUV Channel — navigation typography matched to the FUV Group menu. */
@media (min-width: 1041px) {
  .fuvg-channel-page .fuv-channel-topic-nav {
    min-height: 56px;
  }
  .fuvg-channel-page .fuv-channel-topic-nav > a,
  .fuvg-channel-page .fuv-channel-topic-link,
  .fuvg-channel-page .fuv-channel-topic-toggle {
    font-family: var(--fuv-font-sans);
    font-size: .8125rem;
    font-weight: 700;
    line-height: 1.3;
    min-height: 56px;
  }
  .fuvg-channel-page .fuv-channel-topic-toggle::after {
    font-size: .8125rem;
  }
  .fuvg-channel-page .fuv-channel-mega-menu {
    max-width: 800px;
    padding: 24px;
  }
  .fuvg-channel-page .fuv-channel-mega-grid {
    grid-template-columns: repeat(4, minmax(0, 160px));
    justify-content: start;
  }
  .fuvg-channel-page .fuv-channel-mega-grid img {
    aspect-ratio: 16 / 9;
    height: auto;
    object-fit: cover;
    width: 100%;
  }
  .fuvg-channel-page .fuv-channel-mega-heading > a,
  .fuvg-channel-page .fuv-channel-mega-grid strong {
    font-family: var(--fuv-font-sans);
    font-size: .78rem;
    font-weight: 700;
    line-height: 1.4;
  }
}

@media (max-width: 1040px) {
  .fuvg-channel-page .fuv-channel-mobile-menu > summary,
  .fuvg-channel-page .fuv-channel-mobile-menu > nav > a,
  .fuvg-channel-page .fuv-channel-mobile-menu > nav > details > summary {
    font-size: 1rem;
    line-height: 1.3;
  }
  .fuvg-channel-page .fuv-channel-mobile-menu > nav > details > div a {
    font-size: .78rem;
    line-height: 1.4;
  }
}

/* FUV Academy — course catalogue. */
.fuvg-academy-catalog {
  background: #fff;
  padding: 104px 0 116px;
}
.fuvg-academy-catalog-heading {
  margin-bottom: 44px;
}
.fuvg-academy-catalog-heading h2 {
  color: var(--navy);
  margin: 14px 0 0;
}
.fuvg-academy-catalog-grid {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.fuvg-academy-catalog-grid article {
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  min-height: 285px;
  padding: 30px;
}
.fuvg-academy-catalog-grid h3 {
  color: var(--navy);
  font-size: clamp(1.25rem, 1.8vw, 1.7rem);
  letter-spacing: -.035em;
  line-height: 1.12;
  margin: 34px 0 18px;
}
.fuvg-academy-catalog-grid article > p:not(.fuvg-kicker) {
  color: var(--muted);
  font-size: .86rem;
  line-height: 1.7;
  margin: 0 0 24px;
}
.fuvg-academy-catalog-grid strong {
  border-top: 1px solid var(--line);
  color: var(--navy);
  font-size: 1rem;
  margin-top: auto;
  padding-top: 17px;
}

/* Number labels are removed from all shared FUV Activities submenu cards. */
.fuvg-activity-detail-grid h2 {
  margin-top: 0;
}

@media (max-width: 980px) {
  .fuvg-academy-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .fuvg-academy-catalog {
    padding: 76px 0 84px;
  }
  .fuvg-academy-catalog-grid {
    grid-template-columns: 1fr;
  }
  .fuvg-academy-catalog-grid article {
    min-height: 240px;
    padding: 26px;
  }
}

/* FUV Academy — participation forms. */
.fuvg-seminar-interest {
  border-top: 1px solid var(--line);
  margin-top: 18px;
  padding-top: 16px;
}
.fuvg-seminar-interest summary {
  align-items: center;
  color: var(--navy);
  cursor: pointer;
  display: flex;
  font-size: .78rem;
  font-weight: 850;
  justify-content: space-between;
  list-style: none;
}
.fuvg-seminar-interest summary::-webkit-details-marker {
  display: none;
}
.fuvg-seminar-interest summary::after {
  color: var(--sky);
  content: "+";
  font-size: 1.15rem;
}
.fuvg-seminar-interest[open] summary::after {
  content: "−";
}
.fuvg-seminar-form {
  border-top: 1px solid var(--line);
  margin-top: 16px;
  padding-top: 20px;
}
.fuvg-seminar-form > p {
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.6;
  margin: 0 0 20px;
}
.fuvg-seminar-form-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.fuvg-seminar-form label,
.fuvg-seminar-form legend {
  color: var(--navy);
  font-size: .72rem;
  font-weight: 800;
}
.fuvg-seminar-form-grid label {
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.fuvg-seminar-form-wide {
  grid-column: 1 / -1;
}
.fuvg-seminar-form input[type="text"],
.fuvg-seminar-form input[type="tel"],
.fuvg-seminar-form input[type="email"],
.fuvg-seminar-form select {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 0;
  color: var(--navy);
  font: inherit;
  font-size: .82rem;
  min-height: 44px;
  padding: 10px 12px;
  width: 100%;
}
.fuvg-seminar-form input:focus,
.fuvg-seminar-form select:focus {
  border-color: var(--sky);
  outline: 2px solid rgba(0, 168, 223, .16);
  outline-offset: 1px;
}
.fuvg-seminar-form fieldset {
  border: 0;
  margin: 22px 0 0;
  padding: 0;
}
.fuvg-seminar-form legend {
  margin-bottom: 12px;
}
.fuvg-seminar-form fieldset label {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  line-height: 1.45;
  margin-top: 10px;
}
.fuvg-seminar-form input[type="radio"] {
  accent-color: var(--sky);
  flex: 0 0 auto;
  margin-top: 2px;
}
.fuvg-seminar-form button {
  background: var(--sky);
  border: 0;
  color: var(--navy);
  cursor: pointer;
  font: inherit;
  font-size: .75rem;
  font-weight: 900;
  margin-top: 24px;
  min-height: 46px;
  padding: 12px 16px;
  width: 100%;
}
.fuvg-seminar-form button:hover {
  background: var(--navy);
  color: #fff;
}
.fuvg-seminar-form > small {
  color: var(--muted);
  display: block;
  font-size: .66rem;
  line-height: 1.45;
  margin-top: 10px;
}
.fuvg-seminar-form > p.fuvg-seminar-form-status {
  background: var(--sky-soft);
  color: var(--navy);
  font-size: .72rem;
  font-weight: 750;
  margin: 10px 0 0;
  padding: 12px;
}

@media (max-width: 720px) {
  .fuvg-seminar-form-grid {
    grid-template-columns: 1fr;
  }
  .fuvg-seminar-form-wide {
    grid-column: auto;
  }
}

/* Final alignment: certification card, poem scale and Research organizations. */
.fuvg-activities-hub-card-image.fuvg-activities-certifications-image {
  box-sizing: border-box;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  height: 150px;
  padding: 18px;
}
.fuvg-activities-hub-card-image.fuvg-activities-certifications-image img,
.fuvg-activities-hub-card-image.fuvg-activities-certifications-image svg {
  display: block;
  height: 88px;
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
  width: 100%;
}
.fuvg-home-page .fuvg-gibran blockquote > p:not(.fuvg-kicker),
.fuvg-home-page .fuvg-gibran blockquote > p.fuvg-gibran-emphasis {
  font-size: var(--fuv-type-body);
  line-height: 1.65;
}
.fuvg-research-organizations {
  background: var(--navy-2);
  color: #fff;
  padding: 0 0 96px;
}
.fuvg-research-organizations .fuvg-proof-grid {
  margin: 0;
}

@media (max-width: 720px) {
  .fuvg-activities-hub-card-image.fuvg-activities-certifications-image {
    gap: 7px;
    height: 150px;
    padding: 14px;
  }
  .fuvg-activities-hub-card-image.fuvg-activities-certifications-image img,
  .fuvg-activities-hub-card-image.fuvg-activities-certifications-image svg {
    height: 74px;
  }
  .fuvg-research-organizations {
    padding-bottom: 72px;
  }
}

/* Shared FUV Group footer with privacy and social links. */
.fuvg-page .fuvg-footer-main {
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, .14);
  display: grid;
  gap: 48px;
  grid-template-columns: auto 1fr;
  padding-bottom: 25px;
  padding-top: 30px;
}
.fuvg-page .fuvg-footer-main .fuvg-brand img {
  height: 52px;
  object-fit: contain;
  object-position: left center;
  width: 190px;
}
.fuvg-footer-social {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 28px;
  justify-content: flex-end;
}
.fuvg-footer-social a,
.fuvg-footer-meta a {
  color: #d7e5eb;
  font-size: .72rem;
  font-weight: 800;
}
.fuvg-footer-social a:hover,
.fuvg-footer-meta a:hover {
  color: var(--sky);
}
.fuvg-page .fuvg-footer-meta {
  align-items: center;
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr auto 1fr;
  padding-bottom: 20px;
  padding-top: 16px;
}
.fuvg-page .fuvg-footer-meta p {
  color: #9bb4bf;
  font-size: .7rem;
  margin: 0;
  text-align: left;
}
.fuvg-page .fuvg-footer-meta > span {
  color: #9bb4bf;
  font-size: .7rem;
  justify-self: end;
}

/* Research organizations presented as independent editorial articles. */
.fuvg-research-organizations {
  padding: 88px 0;
}
.fuvg-research-organization-list {
  border-top: 1px solid rgba(255, 255, 255, .18);
}
.fuvg-research-organization-list article {
  border-bottom: 1px solid rgba(255, 255, 255, .18);
  display: grid;
  gap: 70px;
  grid-template-columns: minmax(180px, .42fr) minmax(0, 1.58fr);
  padding: 58px 0;
}
.fuvg-research-organization-list figure {
  align-items: center;
  align-self: start;
  background: #fff;
  display: flex;
  justify-content: center;
  margin: 0;
  min-height: 160px;
  padding: 28px;
}
.fuvg-research-organization-list figure img {
  display: block;
  height: 78px;
  max-width: 100%;
  object-fit: contain;
  width: 100%;
}
.fuvg-research-organization-list h2 {
  color: #fff;
  font-size: clamp(2rem, 3.4vw, 4rem);
  letter-spacing: -.045em;
  line-height: 1;
  margin: 0 0 30px;
}
.fuvg-research-organization-list article p:not(.fuvg-kicker) {
  color: #c0d4dd;
  font-size: .9rem;
  line-height: 1.8;
  margin: 0 0 17px;
  max-width: 890px;
}
.fuvg-research-organization-list article div > a {
  border-top: 1px solid rgba(255, 255, 255, .18);
  color: #fff;
  display: flex;
  font-size: .75rem;
  font-weight: 900;
  justify-content: space-between;
  margin-top: 32px;
  max-width: 890px;
  padding-top: 18px;
}
.fuvg-research-organization-list article div > a span { color: var(--sky); }

/* Four compact Research & Development cards per desktop row. */
.fuvg-research-conference-grid {
  border-left: 1px solid var(--line);
  border-top: 1px solid var(--line);
  gap: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.fuvg-research-conference-card {
  background: #fff;
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  color: var(--navy);
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
  padding: 14px;
  transition: background-color .2s ease, color .2s ease;
}
.fuvg-research-conference-card-top {
  display: flex;
  justify-content: flex-end;
}
.fuvg-research-conference-card-top time {
  color: var(--sky);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
}
.fuvg-research-conference-grid .fuvg-research-conference-card > img {
  background: var(--paper);
  display: block;
  height: 126px;
  margin-top: 10px;
  object-fit: cover;
  object-position: center;
  width: 100%;
}
.fuvg-research-conference-card .fuvg-research-card-image-contain {
  background: #fff;
  object-fit: contain;
  padding: 20px;
}
.fuvg-research-conference-grid .fuvg-research-conference-publication {
  color: var(--sky);
  display: -webkit-box;
  font-size: .56rem;
  font-weight: 900;
  letter-spacing: .05em;
  line-height: 1.4;
  margin: 10px 0 0;
  min-height: 2.8em;
  overflow: hidden;
  text-transform: uppercase;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.fuvg-research-conference-grid .fuvg-research-conference-card h3 {
  color: inherit;
  display: -webkit-box;
  font-size: .92rem;
  line-height: 1.22;
  margin: 10px 0 8px;
  min-height: 3.66em;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.fuvg-research-conference-grid .fuvg-research-conference-summary {
  color: var(--muted);
  display: -webkit-box;
  font-size: .72rem;
  line-height: 1.5;
  margin: 0 0 16px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.fuvg-research-conference-card strong {
  border-top: 1px solid var(--line);
  color: inherit;
  display: flex;
  font-size: .67rem;
  font-weight: 900;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 10px;
}
.fuvg-research-conference-card strong b { color: var(--sky); }
.fuvg-research-conference-card-linked:hover,
.fuvg-research-conference-card-linked:focus-visible {
  background: var(--navy);
  color: #fff;
}
.fuvg-research-conference-card-linked:hover .fuvg-research-conference-summary,
.fuvg-research-conference-card-linked:focus-visible .fuvg-research-conference-summary { color: #bdd1db; }
.fuvg-research-conference-card-linked:hover strong,
.fuvg-research-conference-card-linked:focus-visible strong { border-top-color: rgba(255,255,255,.2); }
.fuvg-research-conference-card-linked:focus-visible { outline: 3px solid var(--sky); outline-offset: -3px; }

/* Research publication detail pages. */
.fuvg-research-entry-hero {
  background: var(--navy);
  color: #fff;
}
.fuvg-research-entry-hero .fuvg-shell { padding-bottom: 96px; padding-top: 86px; }
.fuvg-research-entry-back {
  border-bottom: 1px solid rgba(255, 255, 255, .28);
  color: #fff;
  display: inline-block;
  font-size: .72rem;
  font-weight: 900;
  margin-bottom: 62px;
  padding-bottom: 6px;
}
.fuvg-research-entry-hero h1 {
  font-size: clamp(2.9rem, 6vw, 6.3rem);
  letter-spacing: -.06em;
  line-height: .94;
  margin: 0;
  max-width: 1080px;
}
.fuvg-research-entry-lead {
  color: #c0d4dd;
  font-size: clamp(.95rem, 1.4vw, 1.15rem);
  line-height: 1.75;
  margin: 36px 0 0;
  max-width: 820px;
}
.fuvg-research-entry-content { background: var(--paper); padding: 104px 0 126px; }
.fuvg-research-entry-layout {
  align-items: start;
  display: grid;
  gap: 80px;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
}
.fuvg-research-entry-layout aside {
  background: #fff;
  position: sticky;
  top: 118px;
}
.fuvg-research-entry-layout aside figure {
  background: var(--navy);
  margin: 0;
}
.fuvg-research-entry-layout aside figure img {
  aspect-ratio: 16 / 10;
  display: block;
  object-fit: cover;
  width: 100%;
}
.fuvg-research-entry-layout aside .fuvg-research-entry-figure-contain {
  background: #fff;
  border-bottom: 1px solid var(--line);
  padding: 42px 34px;
}
.fuvg-research-entry-layout aside .fuvg-research-entry-figure-contain img {
  aspect-ratio: 16 / 7;
  object-fit: contain;
}
.fuvg-research-entry-layout dl { margin: 0; padding: 8px 30px 28px; }
.fuvg-research-entry-layout dl div { border-bottom: 1px solid var(--line); padding: 22px 0; }
.fuvg-research-entry-layout dl div:last-child { border-bottom: 0; }
.fuvg-research-entry-layout dt {
  color: var(--sky);
  font-size: .64rem;
  font-weight: 900;
  letter-spacing: .1em;
  margin-bottom: 8px;
  text-transform: uppercase;
}
.fuvg-research-entry-layout dd {
  color: var(--navy);
  font-size: .85rem;
  line-height: 1.55;
  margin: 0;
}
.fuvg-research-entry-layout > article > section {
  border-bottom: 1px solid var(--line);
  padding: 0 0 48px;
}
.fuvg-research-entry-layout > article > section + section { padding-top: 48px; }
.fuvg-research-entry-layout h2 {
  color: var(--navy);
  font-size: clamp(1.65rem, 3vw, 2.8rem);
  letter-spacing: -.04em;
  line-height: 1.05;
  margin: 0 0 24px;
}
.fuvg-research-entry-layout article p:not(.fuvg-kicker) {
  color: var(--muted);
  font-size: .95rem;
  line-height: 1.85;
  margin: 0 0 18px;
}
.fuvg-research-entry-layout article p:last-child { margin-bottom: 0; }
.fuvg-research-entry-sources > div { display: grid; gap: 10px; }
.fuvg-research-entry-sources a {
  align-items: center;
  background: #fff;
  border: 1px solid var(--line);
  color: var(--navy);
  display: flex;
  font-size: .78rem;
  font-weight: 900;
  justify-content: space-between;
  padding: 20px 22px;
}
.fuvg-research-entry-sources a span { color: var(--sky); margin-left: 20px; }
.fuvg-research-entry-sources a:hover,
.fuvg-research-entry-sources a:focus-visible { border-color: var(--sky); }

/* About outreach detail pages. */
.fuvg-research-entry-layout aside .fuvg-outreach-entry-figure {
  align-items: center;
  background: #e7eef1;
  display: flex;
  justify-content: center;
  min-height: 280px;
  overflow: hidden;
}
.fuvg-research-entry-layout aside .fuvg-outreach-entry-figure img {
  aspect-ratio: auto;
  height: auto;
  max-height: 620px;
  object-fit: contain;
  width: 100%;
}
.fuvg-outreach-entry-gallery {
  align-items: stretch;
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.fuvg-outreach-entry-gallery figure { align-items: center; background: #e7eef1; display: flex; justify-content: center; margin: 0; overflow: hidden; }
.fuvg-outreach-entry-gallery figure:only-child { grid-column: 1 / -1; }
.fuvg-outreach-entry-gallery img { display: block; height: auto; max-height: 620px; object-fit: contain; width: 100%; }
.fuvg-outreach-entry-video-embed { aspect-ratio: 16 / 9; background: var(--navy); }
.fuvg-outreach-entry-video-embed iframe { border: 0; display: block; height: 100%; width: 100%; }
.fuvg-outreach-entry-nav {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: 48px;
}
.fuvg-outreach-entry-nav a {
  background: #fff;
  border: 1px solid var(--line);
  color: var(--navy);
  display: flex;
  flex-direction: column;
  min-height: 152px;
  padding: 22px;
  transition: border-color .2s ease, background-color .2s ease;
}
.fuvg-outreach-entry-nav a.is-next { grid-column: 2; text-align: right; }
.fuvg-outreach-entry-nav a:hover,
.fuvg-outreach-entry-nav a:focus-visible { border-color: var(--sky); }
.fuvg-outreach-entry-nav a:focus-visible { outline: 2px solid var(--sky); outline-offset: 2px; }
.fuvg-outreach-entry-nav span {
  color: var(--sky);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .08em;
  margin-bottom: 18px;
  text-transform: uppercase;
}
.fuvg-outreach-entry-nav strong { font-size: .88rem; line-height: 1.35; }
.fuvg-outreach-entry-nav small { color: var(--muted); font-size: .72rem; line-height: 1.5; margin-top: auto; padding-top: 14px; }

/* Privacy policy. */
.fuvg-policy-hero {
  background: var(--navy);
  color: #fff;
}
.fuvg-policy-hero .fuvg-shell { padding-bottom: 88px; padding-top: 92px; }
.fuvg-policy-hero h1 {
  font-size: clamp(3.4rem, 7vw, 6.8rem);
  letter-spacing: -.065em;
  line-height: .92;
  margin: 0 0 26px;
}
.fuvg-policy-hero .fuvg-shell > p:last-child {
  color: #bad1da;
  font-size: .82rem;
  margin: 0;
}
.fuvg-policy-content { background: var(--paper); padding: 86px 0 100px; }
.fuvg-policy-content .fuvg-shell { max-width: 1120px; }
.fuvg-policy-content article {
  border-top: 1px solid var(--line);
  display: grid;
  gap: 54px;
  grid-template-columns: .72fr 1.28fr;
  padding: 34px 0;
}
.fuvg-policy-content article:last-child { border-bottom: 1px solid var(--line); }
.fuvg-policy-content h2 {
  color: var(--navy);
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  line-height: 1.15;
  margin: 0;
}
.fuvg-policy-content p {
  color: var(--muted);
  font-size: .9rem;
  line-height: 1.8;
  margin: 0;
}
.fuvg-policy-content a { border-bottom: 1px solid var(--sky); color: var(--navy); font-weight: 800; }

@media (max-width: 980px) {
  .fuvg-research-conference-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fuvg-research-organization-list article { gap: 38px; grid-template-columns: 1fr; }
  .fuvg-research-organization-list figure { max-width: 360px; }
  .fuvg-research-entry-layout { gap: 42px; grid-template-columns: minmax(230px, .62fr) minmax(0, 1.38fr); }
}

@media (max-width: 720px) {
  .fuvg-page .fuvg-footer-main {
    gap: 25px;
    grid-template-columns: 1fr;
  }
  .fuvg-footer-social {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: start;
  }
  .fuvg-page .fuvg-footer-meta {
    align-items: start;
    gap: 10px;
    grid-template-columns: 1fr;
  }
  .fuvg-page .fuvg-footer-meta > span { justify-self: start; }
  .fuvg-research-organizations { padding: 64px 0; }
  .fuvg-research-organization-list article { padding: 42px 0; }
  .fuvg-research-organization-list figure { min-height: 130px; padding: 22px; }
  .fuvg-research-conference-grid { grid-template-columns: 1fr; }
  .fuvg-research-conference-card .fuvg-research-card-image-contain { padding: 30px; }
  .fuvg-research-entry-hero .fuvg-shell { padding-bottom: 72px; padding-top: 68px; }
  .fuvg-research-entry-back { margin-bottom: 44px; }
  .fuvg-research-entry-content { padding: 72px 0 88px; }
  .fuvg-research-entry-layout { gap: 52px; grid-template-columns: 1fr; }
  .fuvg-research-entry-layout aside { position: static; }
  .fuvg-outreach-entry-gallery { grid-template-columns: 1fr; }
  .fuvg-outreach-entry-nav { grid-template-columns: 1fr; }
  .fuvg-outreach-entry-nav a.is-next { grid-column: auto; text-align: left; }
  .fuvg-policy-hero .fuvg-shell { padding-bottom: 66px; padding-top: 70px; }
  .fuvg-policy-content { padding: 66px 0 78px; }
  .fuvg-policy-content article { gap: 15px; grid-template-columns: 1fr; padding: 28px 0; }
}

/* FUV Group + FUV Channel — single typographic source of truth. */
.fuvg-page.fuvg-page {
  font-family: var(--fuv-font-sans);
  font-size: 16px;
  font-optical-sizing: auto;
  line-height: 1.6;
  text-rendering: optimizeLegibility;
}

.fuvg-page.fuvg-page :where(button, input, select, textarea) {
  font-family: inherit;
}

.fuvg-page.fuvg-page main h1 {
  font-family: var(--fuv-font-sans);
  font-size: var(--fuv-type-page-title);
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: 1.1;
}

.fuvg-page.fuvg-page main h2 {
  font-family: var(--fuv-font-sans);
  font-size: var(--fuv-type-section-title);
  font-weight: 700;
  letter-spacing: -.03em;
  line-height: 1.12;
}

.fuvg-page.fuvg-page main h3 {
  font-family: var(--fuv-font-sans);
  font-size: var(--fuv-type-card-title);
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.2;
}

.fuvg-page.fuvg-page main :where(p, li, dd) {
  font-size: var(--fuv-type-body);
  line-height: 1.65;
}

.fuvg-page.fuvg-page :where(.fuvg-kicker, .contact-kicker) {
  font-family: var(--fuv-font-sans);
  font-size: var(--fuv-type-label) !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  line-height: 1.4 !important;
  text-transform: uppercase;
}

.fuvg-page.fuvg-page .fuvg-activities-hub-grid :where(h2, h3),
.fuvg-page.fuvg-page .fuvg-activity-detail-grid :where(h2, h3),
.fuvg-page.fuvg-page .fuvg-project-menu-card :where(h2, h3),
.fuvg-page.fuvg-page .fuvg-theo-role-grid :where(h2, h3),
.fuvg-page.fuvg-page .fuv-channel-topic-index-grid :where(h2, h3),
.fuvg-page.fuvg-page .fuvg-channel-article-card-grid :where(h2, h3),
.fuvg-page.fuvg-page .fuvg-channel-article-grid :where(h2, h3),
.fuvg-page.fuvg-page .fuvg-academy-catalog-grid :where(h2, h3),
.fuvg-page.fuvg-page .fuvg-ecosystem-grid h3,
.fuvg-page.fuvg-page .fuvg-sector-grid h3,
.fuvg-page.fuvg-page .fuvg-project-grid h3,
.fuvg-page.fuvg-page .fuvg-activity-grid h3,
.fuvg-page.fuvg-page .fuvg-about-award-grid h3,
.fuvg-page.fuvg-page .fuvg-about-outreach-grid h3,
.fuvg-page.fuvg-page .fuvg-research-conference-grid h3,
.fuvg-page.fuvg-page .fuvg-project-card-copy h3,
.fuvg-page.fuvg-page .fuvg-technical-story-card h3 {
  font-family: var(--fuv-font-sans);
  font-size: var(--fuv-type-card-title) !important;
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.2 !important;
}

.fuvg-page.fuvg-page .fuvg-channel-article-card-grid p:not(.fuvg-channel-article-publication),
.fuvg-page.fuvg-page .fuv-channel-topic-index-grid p,
.fuvg-page.fuvg-page .fuvg-research-conference-grid p,
.fuvg-page.fuvg-page .fuvg-about-outreach-grid p {
  font-size: var(--fuv-type-body);
  line-height: 1.65;
}

.fuvg-page.fuvg-page .fuvg-nav a,
.fuvg-page.fuvg-page .fuvg-nav-dropdown summary,
.fuvg-page.fuvg-page .fuv-channel-topic-nav > a,
.fuvg-page.fuvg-page .fuv-channel-topic-link,
.fuvg-page.fuvg-page .fuv-channel-topic-toggle {
  font-family: var(--fuv-font-sans);
  font-size: var(--fuv-type-nav);
  font-weight: 700;
  line-height: 1.2;
}

.fuvg-page.fuvg-page .fuvg-nav-dropdown > div a,
.fuvg-page.fuvg-page .fuv-channel-mega-grid strong,
.fuvg-page.fuvg-page .fuv-channel-mega-heading > a {
  font-family: var(--fuv-font-sans);
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.4;
}

@media (max-width: 1040px) {
  .fuvg-page.fuvg-page .fuvg-mobile-nav summary,
  .fuvg-page.fuvg-page .fuvg-mobile-nav nav a,
  .fuvg-page.fuvg-page .fuv-channel-mobile-menu > summary,
  .fuvg-page.fuvg-page .fuv-channel-mobile-menu > nav > a,
  .fuvg-page.fuvg-page .fuv-channel-mobile-menu > nav > details > summary {
    font-family: var(--fuv-font-sans);
    font-size: var(--fuv-type-nav);
    font-weight: 700;
    line-height: 1.3;
  }

  .fuvg-page.fuvg-page .fuvg-mobile-nav nav .fuvg-mobile-submenu a,
  .fuvg-page.fuvg-page .fuv-channel-mobile-menu > nav > details > div a {
    font-family: var(--fuv-font-sans);
    font-size: .69rem;
    line-height: 1.4;
  }
}

/* Σημαία αγγλικής έκδοσης (ίδια με fuv-group.com) — 25/09/2026 */
.fuvg-page .language-link { display: inline-flex; align-items: center; align-content: center; gap: 9px; color: rgb(212, 229, 236); font-size: 0.7rem; font-weight: 700; min-height: 44px; white-space: nowrap; }
.fuvg-page .language-link svg { flex-shrink: 0; }
@media (max-width: 720px) {
  .fuvg-page .language-link { gap: 5px; font-size: 0.7rem; }
  .fuvg-page .language-link svg { width: 22px; }
}
.fuvg-page .fuvg-header-inner:has(> .language-link) { grid-template-columns: 1fr auto auto; gap: 16px; }
@media (min-width: 1041px) {
  .fuvg-page .fuvg-header-inner:has(> .language-link) { grid-template-columns: 280px minmax(0px, 1fr) auto; gap: 24px; }
}
@media (max-width: 720px) {
  .fuvg-page .fuvg-header-inner:has(> .language-link) { gap: 12px; }
}
@media (max-width: 380px) {
  .fuvg-page .fuvg-header-inner:has(> .language-link) { gap: 8px; }
}

/* Σημαία: μόνο σημαία έως 380px (απόφαση 25/09/2026) */
@media (max-width: 380px) {
  .fuvg-page .language-link { font-size: 0; gap: 0; }
}
