/* Final client refinements — typography, scale, card layout and CTA clarity */
:root{
  --serif:'Montserrat',Arial,sans-serif;
}
body{font-size:15px;line-height:1.62}
.display,.display em,.service-card h3,.price-card h3,.process-item h3,.trust-item strong,.info-card h3,.detail-card h3,.contact-card h2,.service-summary-card h2,.formation-method-card h3,.formation-about__copy h2,.formation-community__copy h2,.testimonial-video blockquote{font-family:var(--sans);font-style:normal}
.display{font-weight:600;letter-spacing:-.035em;line-height:1.1}
.hero-copy h1{font-size:clamp(2.05rem,4.2vw,4.15rem);max-width:680px}
.hero-copy .lead{font-size:1rem;max-width:590px;margin:20px 0 26px}
.page-hero h1{font-size:clamp(2.05rem,4.5vw,4.2rem)}
.page-hero .lead,.lead{font-size:1rem}
.section{padding:80px 0}.section--tight{padding:58px 0}
.section-head h2{font-size:clamp(1.85rem,3.4vw,2.85rem)}
.service-card h3{font-size:1.25rem}.service-card p{font-size:.86rem}
.price-card h3{font-size:1.22rem}.price{font-size:1.75rem}
.process-item h3,.feature-row h3{font-size:1rem}
.nav-links a{font-size:.68rem}.btn{font-size:.69rem;min-height:48px}
.footer-links,.site-footer p{font-size:.82rem}
.brand img{width:240px;max-height:56px}
.hero-art .landscape{object-position:78% center}

/* Cash school method cards: numbers can never overlap the copy. */
.formation-method-card{padding:28px;display:grid;grid-template-columns:58px minmax(0,1fr);grid-template-rows:auto auto;column-gap:18px;align-content:start;min-height:230px}
.formation-method-card__number{position:static;grid-column:1;grid-row:1 / span 2;align-self:start;font-family:var(--sans);font-size:1.45rem;font-weight:700;line-height:1;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold),var(--gold-2));color:var(--blue-dark);box-shadow:0 10px 24px rgba(255,202,40,.22)}
.formation-method-card h3{grid-column:2;grid-row:1;margin:2px 0 10px;font-size:1.2rem;line-height:1.25;position:relative;z-index:2}
.formation-method-card p{grid-column:2;grid-row:2;font-size:.86rem;position:relative;z-index:2}

/* Prices intentionally not displayed for BCB INVEST. */
.btn-note{display:block;margin:9px 0 0;text-align:center;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.03em}
.btn-note--light{color:rgba(255,255,255,.78);text-align:left;margin-left:4px}

/* Full simulator embedded in Prévoyance page. */
.embedded-simulator{overflow:hidden}.embedded-simulator__heading{margin-bottom:34px}.embedded-simulator .simulator-shell{margin-top:0}

@media(max-width:940px){.brand img{width:205px}.section{padding:68px 0}}
@media(max-width:600px){body{font-size:14px}.hero-copy h1{font-size:clamp(1.9rem,9vw,2.8rem)}.page-hero h1{font-size:clamp(1.9rem,9vw,2.9rem)}.section-head h2{font-size:clamp(1.65rem,8vw,2.3rem)}.formation-method-card{grid-template-columns:1fr;padding:24px}.formation-method-card__number{grid-column:1;grid-row:1;margin-bottom:16px}.formation-method-card h3{grid-column:1;grid-row:2}.formation-method-card p{grid-column:1;grid-row:3}.brand img{width:185px}}

/* Reduce inline-sized headings and landing-page typography consistently. */
h2.display[style],h3.display[style]{font-size:clamp(1.8rem,3.3vw,2.75rem)!important}
.formation-hero__copy h1{font-size:clamp(2.05rem,4.4vw,4rem)!important}
.formation-about__copy h2,.formation-community__copy h2{font-size:clamp(1.8rem,3.2vw,2.7rem)!important}
.formation-hero__lead{font-size:1rem}
.formation-method-card__number{transform:none!important}

/* 2026-07 — Compact typography and supplied brand assets */
html{font-size:15px}
body{font-size:14px;line-height:1.56}
p,li,label,input,textarea,select{font-size:.94em}

/* Keep the supplied wide wordmark clear without enlarging the navigation. */
.brand{min-width:245px}
.brand img{width:250px;max-height:42px;object-fit:contain}
.footer-brand img{width:250px;max-height:42px;object-fit:contain}

/* More compact page hierarchy. */
.hero-copy h1{font-size:clamp(1.8rem,3.55vw,3.45rem);line-height:1.08;max-width:610px}
.hero-copy .lead{font-size:.92rem;line-height:1.62;max-width:560px;margin:17px 0 23px}
.page-hero h1{font-size:clamp(1.8rem,3.7vw,3.55rem);line-height:1.08}
.page-hero .lead,.lead{font-size:.92rem;line-height:1.62}
.section-head h2{font-size:clamp(1.6rem,2.75vw,2.35rem);line-height:1.14}
h2.display[style],h3.display[style]{font-size:clamp(1.58rem,2.7vw,2.3rem)!important}
.formation-hero__copy h1{font-size:clamp(1.85rem,3.65vw,3.35rem)!important}
.formation-about__copy h2,.formation-community__copy h2{font-size:clamp(1.55rem,2.65vw,2.25rem)!important}
.formation-hero__lead{font-size:.92rem}

/* Cards, prices and feature copy. */
.service-card h3,.price-card h3,.formation-method-card h3{font-size:1.08rem}
.service-card p,.formation-method-card p,.info-card p,.detail-card p,.feature-row p{font-size:.8rem;line-height:1.6}
.price-card h3{font-size:1.08rem}.price{font-size:1.55rem}
.process-item h3,.feature-row h3,.trust-item strong{font-size:.92rem}
.process-item p,.trust-item p{font-size:.76rem;line-height:1.52}
.comparison-card h2{font-size:2.45rem}
.simulator-teaser h3{font-size:clamp(1.55rem,2.5vw,2.35rem)}
.simulator-teaser__numbers strong{font-size:1.25rem}
.simulator-heading h2{font-size:1.72rem}
.result-capital{font-size:clamp(2.25rem,4.4vw,4.45rem)}

/* Navigation and controls remain readable but visually lighter. */
.nav{height:74px}
.nav-links{gap:23px}
.nav-links a{font-size:.65rem}
.btn{font-size:.66rem;min-height:44px;padding:12px 20px}
.eyebrow{font-size:.65rem}
.footer-links,.site-footer p{font-size:.76rem}
.footer-title,.footer-bottom{font-size:.64rem}

/* Use the supplied Geneva / France–Switzerland photograph without distortion. */
.hero-art .landscape{object-position:78% center;filter:saturate(1.04) contrast(1.03) brightness(.86)}

@media(max-width:940px){
  .brand img{width:215px}.brand{min-width:210px}
  .nav{height:70px}
}
@media(max-width:600px){
  html{font-size:14.5px}
  body{font-size:13.5px}
  .brand img{width:188px;max-height:34px}
  .hero-copy h1{font-size:clamp(1.72rem,8.2vw,2.5rem)}
  .page-hero h1{font-size:clamp(1.72rem,8.2vw,2.55rem)}
  .section-head h2{font-size:clamp(1.5rem,7.2vw,2rem)}
  .btn{font-size:.68rem;min-height:43px}
}

@media(max-width:820px){.hero-art .landscape{object-position:72% center}}
@media(max-width:540px){.hero-art .landscape{object-position:70% center}}
