/* Project/event modes share the original visual identity. */
.project-hero .hero-inner { align-items:center; min-height:700px; }
.project-hero .hero-actions { display:flex; flex-wrap:wrap; gap:14px; }
.project-hero .hero-copy h1 { font-size:clamp(60px,6.2vw,100px); }
.project-hero-aside { min-width:0; display:flex; flex-direction:column; gap:28px; }
.project-hero-aside .hero-scientific-card { width:100%; margin:0; background:var(--blue-950); }
.project-hero-visual { position:relative; min-height:420px; display:grid; place-items:center; }
.project-value-disc { width:min(100%,390px); aspect-ratio:1; border-radius:50%; background:#ffe0d3; color:var(--blue-950); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:22px; text-align:center; }
.project-value-disc>span { max-width:85%; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; }
.project-value-disc strong { font-family:var(--ugpls-font-heading,Arial,sans-serif); font-size:clamp(38px,3.2vw,52px); line-height:1.02; text-transform:uppercase; }
.project-value-tag { position:absolute; background:var(--paper); color:var(--ink); padding:17px 25px; font-weight:700; font-size:18px; box-shadow:0 10px 24px #002c4833; }
.project-value-tag-one { top:24px; left:0; transform:rotate(-7deg); }
.project-value-tag-two { right:0; bottom:10px; background:var(--coral); color:white; transform:rotate(5deg); }
.project-value-tag-three { bottom:74px; left:-10px; transform:rotate(-4deg); }
.project-home h2 { font-size:clamp(32px,4vw,58px); line-height:1.04; max-width:840px; }
.project-purpose-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:38px; }
.project-purpose-card { border-top:2px solid var(--blue-950); padding:28px 0 0; }
.project-purpose-number { color:var(--coral); font-family:var(--ugpls-font-heading,Arial,sans-serif); font-size:42px; }
.project-purpose-card h3 { font-size:25px; line-height:1.15; margin:20px 0 16px; }
.project-purpose-card p { line-height:1.7; max-width:36ch; }
.project-section-head { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:56px; margin-bottom:36px; }
.project-history .project-section-head { display:flex; justify-content:space-between; align-items:end; }
.project-impact-card { display:grid; grid-template-columns:1fr 1fr; gap:60px; background:var(--blue-950); color:white; padding:54px; border-radius:22px; }
.project-impact-card h2 { color:white; }
.project-impact-card p:not(.section-kicker) { font-size:19px; line-height:1.7; margin-bottom:26px; }
.project-join { border-top:1px solid #062d4126; }
.project-join p:not(.section-kicker) { line-height:1.7; margin-bottom:26px; }
.project-join .project-section-head { margin-bottom:0; }
.ugpls-home-project .site-header:not(.scrolled) { color:white; background:transparent; }
.ugpls-home-project .site-header:not(.scrolled) .brand-title,
.ugpls-home-project .site-header:not(.scrolled) .main-nav a { color:white; }
.date-card.is-pending .date-days { font-size:clamp(34px,4vw,54px); letter-spacing:-.03em; }
.date-card.is-pending .date-days strong { font-size:inherit; }
@media(max-width:980px) {
 .project-hero .hero-inner { min-height:0; gap:32px; padding-bottom:70px; }
 .project-hero-aside { width:min(100%,460px); margin:auto; gap:24px; }
 .project-hero-visual { min-height:390px; width:min(100%,460px); margin:auto; }
 .project-purpose-grid { gap:24px; }
 .project-impact-card { padding:35px; gap:32px; }
 .project-section-head { gap:28px; }
}
@media(max-width:640px) {
 .project-hero .hero-copy h1 { font-size:clamp(54px,13vw,76px); }
 .project-hero-visual { min-height:350px; padding:15px; }
 .project-value-disc { max-width:290px; }
 .project-value-disc strong { font-size:38px; }
 .project-value-tag { padding:12px 16px; font-size:15px; }
 .project-value-tag-one { left:8px; top:15px; }
 .project-value-tag-three { left:0; bottom:62px; }
 .project-value-tag-two { bottom:0; right:2px; }
 .project-purpose-grid,.project-section-head,.project-impact-card { grid-template-columns:1fr; }
 .project-history .project-section-head { display:block; }
 .project-history .project-section-head>.text-link { margin-top:22px; display:inline-block; }
 .project-purpose-card p { max-width:none; }
 .project-impact-card { padding:28px; border-radius:15px; gap:24px; }
 .project-impact-card p:not(.section-kicker) { font-size:17px; }
 .project-hero .hero-bottom p { font-size:11px; }
 .project-home .hero-actions .button { width:100%; text-align:center; justify-content:center; }
}
