.hero { background:var(--cream); padding:9rem 2.5rem 4rem; }
.hero-inner { max-width:1400px; margin:0 auto; }
.breadcrumb { font-family:var(--f-m); font-size:.65rem; letter-spacing:.2em; text-transform:uppercase; color:var(--gray); margin-bottom:2.5rem; }
.breadcrumb a { color:var(--gray); text-decoration:none; }
.breadcrumb a:hover { color:var(--red); }
.breadcrumb .sep { margin:0 .5rem; opacity:.5; }
.breadcrumb .current { color:var(--ink); }
.hero-eyebrow { font-family:var(--f-m); font-size:.7rem; letter-spacing:.25em; text-transform:uppercase; color:var(--red); margin-bottom:1.75rem; display:flex; align-items:center; gap:.75rem; }
.hero-eyebrow::before { content:''; width:28px; height:1px; background:var(--red); flex-shrink:0; }
.hero-headline { font-family:var(--f-r); font-weight:900; font-size:clamp(2.4rem,7vw,7rem); line-height:1.04; letter-spacing:-.035em; color:var(--ink); max-width:1200px; margin-bottom:2.5rem; }
.hero-headline em { font-style:italic; color:var(--red); }
.hero-sub { font-family:var(--f-r); font-weight:400; font-size:clamp(1rem,1.5vw,1.25rem); line-height:1.7; color:var(--gray); max-width:740px; }
.hero-sub strong { color:var(--ink); font-weight:700; }

/* Story */
.story { background:var(--ink); color:var(--cream); padding:8rem 2.5rem; }
.story-inner { max-width:1100px; margin:0 auto; }
.story-eyebrow { font-family:var(--f-m); font-size:.65rem; letter-spacing:.25em; text-transform:uppercase; color:var(--red); margin-bottom:2rem; display:flex; align-items:center; gap:.75rem; }
.story-eyebrow::before { content:''; width:28px; height:1px; background:var(--red); flex-shrink:0; }
.story-body { font-family:var(--f-r); font-weight:800; font-size:clamp(1.5rem,3.2vw,2.6rem); line-height:1.25; letter-spacing:-.02em; }
.story-body p { margin-bottom:1.75rem; }
.story-body p:last-child { margin-bottom:0; }
.story-body em { font-style:italic; color:var(--teal); }
.story-body .quiet { color:rgba(242,236,224,.45); }

/* Name section — the egg to apples meaning */
.name { background:var(--teal); color:var(--ink); padding:8rem 2.5rem; }
.name-inner { max-width:1100px; margin:0 auto; }
.name-eyebrow { font-family:var(--f-m); font-size:.65rem; letter-spacing:.25em; text-transform:uppercase; color:var(--dark-teal); margin-bottom:2rem; display:flex; align-items:center; gap:.75rem; }
.name-eyebrow::before { content:''; width:28px; height:1px; background:var(--dark-teal); flex-shrink:0; }
.name-latin { font-family:var(--f-r); font-weight:900; font-style:italic; font-size:clamp(2rem,5vw,4.5rem); line-height:1.05; letter-spacing:-.03em; color:var(--white); margin-bottom:1.5rem; }
.name-translation { font-family:var(--f-m); font-size:.8rem; letter-spacing:.15em; text-transform:uppercase; color:var(--dark-teal); margin-bottom:2.5rem; }
.name-body { font-family:var(--f-r); font-weight:400; font-size:1.1rem; line-height:1.75; color:var(--dark-teal); max-width:720px; }
.name-body strong { color:var(--ink); font-weight:700; }

/* Values */
.values { background:var(--cream); padding:8rem 2.5rem; }
.values-inner { max-width:1400px; margin:0 auto; }
.values-header { margin-bottom:3.5rem; max-width:850px; }
.values-eyebrow { font-family:var(--f-m); font-size:.65rem; letter-spacing:.25em; text-transform:uppercase; color:var(--red); margin-bottom:1.5rem; display:flex; align-items:center; gap:.75rem; }
.values-eyebrow::before { content:''; width:28px; height:1px; background:var(--red); flex-shrink:0; }
.values-title { font-family:var(--f-r); font-weight:900; font-size:clamp(2rem,4.5vw,4rem); line-height:1.05; letter-spacing:-.03em; color:var(--ink); }
.values-title em { font-style:italic; color:var(--teal); }
.values-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; }
.value { padding:2.75rem; min-height:300px; display:flex; flex-direction:column; }
.value-num { font-family:var(--f-r); font-weight:900; font-size:2.5rem; line-height:1; letter-spacing:-.04em; margin-bottom:1.25rem; }
.value-name { font-family:var(--f-r); font-weight:800; font-size:1.3rem; line-height:1.15; letter-spacing:-.015em; margin-bottom:.85rem; }
.value-desc { font-family:var(--f-r); font-weight:400; font-size:.9rem; line-height:1.65; margin-top:auto; }
.value.v1 { background:var(--dark-teal); color:var(--cream); }
.value.v1 .value-num { color:var(--teal); }
.value.v2 { background:var(--red); color:var(--cream); }
.value.v2 .value-num { color:rgba(255,255,255,.3); }
.value.v3 { background:var(--ink); color:var(--cream); }
.value.v3 .value-num { color:var(--teal); }
.value .value-desc { opacity:.85; }

/* Team */
.team { background:var(--bone); padding:8rem 2.5rem; }
.team-inner { max-width:1400px; margin:0 auto; }
.team-header { margin-bottom:3.5rem; max-width:850px; }
.team-eyebrow { font-family:var(--f-m); font-size:.65rem; letter-spacing:.25em; text-transform:uppercase; color:var(--red); margin-bottom:1.5rem; display:flex; align-items:center; gap:.75rem; }
.team-eyebrow::before { content:''; width:28px; height:1px; background:var(--red); flex-shrink:0; }
.team-title { font-family:var(--f-r); font-weight:900; font-size:clamp(2rem,4.5vw,4rem); line-height:1.05; letter-spacing:-.03em; color:var(--ink); margin-bottom:1.25rem; }
.team-title em { font-style:italic; color:var(--teal); }
.team-intro { font-family:var(--f-r); font-weight:400; font-size:1.05rem; line-height:1.7; color:var(--gray); max-width:680px; }
.team-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.25rem; margin-top:3rem; }
.member { background:var(--white); border:1px solid rgba(0,0,0,.08); overflow:hidden; }
.member-photo { aspect-ratio:1; background:var(--dark-teal); display:flex; align-items:center; justify-content:center; }
.member-photo span { font-family:var(--f-r); font-weight:900; font-size:3rem; color:rgba(242,236,224,.25); letter-spacing:-.03em; }
.member-info { padding:1.5rem; }
.member-name { font-family:var(--f-r); font-weight:800; font-size:1.1rem; color:var(--ink); letter-spacing:-.015em; margin-bottom:.25rem; }
.member-role { font-family:var(--f-m); font-size:.62rem; letter-spacing:.12em; text-transform:uppercase; color:var(--red); }
.team-note { font-family:var(--f-r); font-weight:400; font-size:.85rem; line-height:1.6; color:var(--gray); margin-top:2rem; font-style:italic; }

/* Stats */
.about-stats { background:var(--dark-teal); color:var(--cream); padding:7rem 2.5rem; }
.about-stats-inner { max-width:1400px; margin:0 auto; }
.about-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(242,236,224,.15); }
.asblk { padding:3rem 2rem; border-right:1px solid rgba(242,236,224,.12); }
.asblk:last-child { border-right:none; }
.asblk-num { font-family:var(--f-r); font-weight:900; font-size:clamp(2.6rem,5vw,5rem); line-height:.9; letter-spacing:-.04em; color:var(--cream); margin-bottom:.5rem; }
.asblk-num .accent { color:var(--teal); }
.asblk-label { font-family:var(--f-r); font-weight:600; font-size:.82rem; line-height:1.4; color:rgba(242,236,224,.6); }

/* CTA */
.cta-section { background:var(--red); color:var(--cream); padding:8rem 2.5rem; position:relative; overflow:hidden; }
.cta-section::before { content:''; position:absolute; top:-40%; right:-10%; width:600px; height:600px; border-radius:50%; background:rgba(0,0,0,.12); pointer-events:none; }
.cta-inner { max-width:1100px; margin:0 auto; position:relative; z-index:1; }
.cta-eyebrow { font-family:var(--f-m); font-size:.7rem; letter-spacing:.25em; text-transform:uppercase; color:rgba(242,236,224,.6); margin-bottom:2rem; display:flex; align-items:center; gap:.75rem; }
.cta-eyebrow::before { content:''; width:28px; height:1px; background:rgba(242,236,224,.6); flex-shrink:0; }
.cta-title { font-family:var(--f-r); font-weight:900; font-size:clamp(2.8rem,8vw,8rem); line-height:.95; letter-spacing:-.035em; margin-bottom:2rem; }
.cta-title em { font-style:italic; }
.cta-body { font-family:var(--f-r); font-weight:400; font-size:1.05rem; line-height:1.7; color:rgba(242,236,224,.85); max-width:580px; margin-bottom:3rem; }
.cta-contact { display:flex; gap:3rem; padding-top:2rem; border-top:1px solid rgba(242,236,224,.25); flex-wrap:wrap; }
.cci { display:flex; flex-direction:column; gap:.25rem; }
.cci-label { font-family:var(--f-m); font-size:.55rem; letter-spacing:.22em; text-transform:uppercase; color:rgba(242,236,224,.55); }
.cci-val { font-family:var(--f-r); font-weight:700; font-size:1rem; color:var(--cream); text-decoration:none; }
.cci-val:hover { text-decoration:underline; }

footer { background:var(--ink); color:var(--cream); padding:2rem 2.5rem; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; }
.footer-logo { display:flex; align-items:center; gap:.55rem; text-decoration:none; }
.footer-logo img { width:22px; opacity:.55; }
.footer-logo-text { font-family:var(--f-r); font-weight:700; font-size:.8rem; color:rgba(242,236,224,.45); }
.footer-links { display:flex; gap:1.5rem; flex-wrap:wrap; }
.footer-link { font-family:var(--f-r); font-weight:500; font-size:.6rem; letter-spacing:.15em; text-transform:uppercase; color:rgba(242,236,224,.4); text-decoration:none; }
.footer-link:hover { color:var(--cream); }
.footer-copy { font-family:var(--f-m); font-size:.58rem; letter-spacing:.1em; color:rgba(242,236,224,.3); }

@media (max-width:1024px) {
  .values-grid { grid-template-columns:1fr; }
  .team-grid { grid-template-columns:1fr 1fr; }
  .about-stats-grid { grid-template-columns:1fr 1fr; }
  .asblk:nth-child(2) { border-right:none; }
  .asblk:nth-child(1),.asblk:nth-child(2) { border-bottom:1px solid rgba(242,236,224,.12); }
}
@media (max-width:768px) {
  nav { padding:1rem 1.5rem; }
  .nav-right { display:none; }
  .hamburger { display:block; }
  .hero { padding:7rem 1.5rem 3.5rem; }
  .hero-headline { font-size:clamp(2rem,9vw,3.4rem); line-height:1.1; }
  .story,.name,.values,.team,.about-stats { padding:4.5rem 1.5rem; }
  .story-body { font-size:clamp(1.3rem,5vw,1.7rem); }
  .team-grid { grid-template-columns:1fr 1fr; }
  .about-stats-grid { grid-template-columns:1fr 1fr; }
  .asblk { padding:2rem 1.25rem; }
  .cta-section { padding:6rem 1.5rem; }
  .cta-contact { gap:1.75rem; }
  footer { padding:1.5rem; flex-direction:column; align-items:flex-start; }
}
@media (max-width:420px) {
  .team-grid { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
body.menu-open { overflow:hidden; }
