/* ================================================================
   PST&B PUBLIC VISUAL V2.2 — FLAT DESIGN ET CONTRASTE EQUILIBRE
   Couleurs pleines, photos éclaircies, boutons avec rayon de 8 px.
   ================================================================ */

:root {
  --grad: #ff1744;
  --grad-hero: #2d1b69;
  --grad-soft: #f7f5fb;
  --grad-photo: rgba(25, 10, 60, .22);
  --pstb-gradient: #4328e7;
  --button-radius: 8px;
}

/* Ruban supérieur */
.admission-ribbon {
  background: #ff1744 !important;
  background-image: none !important;
}

.admission-ribbon a {
  border: 1px solid rgba(255, 255, 255, .72) !important;
  border-radius: 8px !important;
  color: #ffffff !important;
  background: transparent !important;
  background-image: none !important;
}

.admission-ribbon a:hover {
  color: #ff1744 !important;
  background: #ffffff !important;
}

/* Héros : une seule teinte sombre, placée sous les contenus */
.home-premium-hero,
.home-hero-redesign,
.hero {
  background: #24104f url('../img/tech-campus/pstb-tech-01.png') center / cover no-repeat !important;
  background-image: url('../img/tech-campus/pstb-tech-01.png') !important;
  background-blend-mode: normal !important;
  box-shadow: inset 0 0 0 1000px rgba(24, 9, 55, .34) !important;
}

.small-hero {
  background: #33206b url('../img/tech-campus/pstb-tech-02.png') center / cover no-repeat !important;
  background-image: url('../img/tech-campus/pstb-tech-02.png') !important;
  background-blend-mode: normal !important;
  box-shadow: inset 0 0 0 1000px rgba(24, 9, 55, .32) !important;
}

.home-premium-hero::before,
.home-hero-redesign::before,
.hero::before,
.small-hero::before {
  background: transparent !important;
  background-image: none !important;
}

.home-premium-hero > .container,
.home-hero-redesign > .container,
.hero > .container,
.small-hero > .container {
  position: relative;
  z-index: 1;
}

.home-premium-hero h1,
.home-hero-redesign h1,
.hero h1,
.small-hero h1 {
  color: #ffffff !important;
  text-shadow: 0 2px 14px rgba(18, 7, 42, .30);
}

.small-hero p,
.small-hero .eyebrow {
  color: rgba(255, 255, 255, .92) !important;
}

/* Titres auparavant multicolores */
.grad-text,
.home-premium-title span {
  color: #ff1744 !important;
  background: none !important;
  background-image: none !important;
  background-clip: border-box !important;
  -webkit-background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
}

/* Sections avec photos */
.section-gradient-with-photo,
.action-band {
  background: #4328e7 url('../img/tech-campus/pstb-tech-03.png') center / cover no-repeat !important;
  background-image: url('../img/tech-campus/pstb-tech-03.png') !important;
  background-blend-mode: normal !important;
  box-shadow: inset 0 0 0 1000px rgba(30, 13, 71, .38) !important;
}

.section-gradient-with-photo::before,
.action-band::before,
.abidjan-band::before {
  background: transparent !important;
  background-image: none !important;
}

.pedagogy-human-section,
.home-why-section,
.why-section {
  background: #ffffff !important;
  background-image: none !important;
}

.pedagogy-human-section .human-visual,
.human-visual {
  background: #4328e7 url('../img/tech-campus/pstb-tech-04.png') center / cover no-repeat !important;
  background-image: url('../img/tech-campus/pstb-tech-04.png') !important;
  background-blend-mode: normal !important;
  box-shadow: inset 0 0 0 1000px rgba(30, 13, 71, .20) !important;
}

.human-visual::before,
.human-visual::after,
.pedagogy-human-section::before,
.pedagogy-human-section::after {
  background-image: none !important;
}

.brochure-direct {
  color: #ffffff !important;
  background: #4328e7 !important;
  background-image: none !important;
}

.promo-card { background: #21123f !important; background-image: none !important; }
.quote-card { background: #16121f !important; background-image: none !important; }
.abidjan-band { background: #21123f !important; background-image: none !important; }

.icon-big {
  color: #ffffff !important;
  background: #4328e7 !important;
  background-image: none !important;
}

.program-priority {
  color: #ffffff !important;
  background: #ff1744 !important;
  background-image: none !important;
}

.menu a.active::after,
.home-why-item::before {
  background: #ff1744 !important;
  background-image: none !important;
}

/* Superpositions photo uniformes et plus légères */
.hero-img-main::after,
.home-hero-photo::after,
.home-program-photo::after,
.home-photo-large::after,
.home-photo-small::after,
.campus-photo::after,
.promo-visual::after,
.card-cover-wrap::after,
.image-frame::after,
.pstb-real-photo-frame::after {
  background: rgba(19, 8, 43, .12) !important;
  background-image: none !important;
}

/* Formulaires : barre supérieure pleine */
.form-card::before,
.brochure-form::before {
  background: #ff1744 !important;
  background-image: none !important;
}

/* Boutons moins arrondis */
.btn,
.btn-outline,
.btn-ghost,
.btn-light,
.btn-grad,
.nav-actions a,
.action-item a,
.filters button,
.filter-btn,
button.btn,
a.btn,
input[type='submit'] {
  border-radius: 8px !important;
}

/* Cartes et formulaires plus structurés */
.card,
.form-card,
.brochure-form,
.image-frame,
.pstb-real-photo-frame,
.human-visual,
.home-program-photo,
.home-photo-large,
.home-photo-small,
.program-photo-panel {
  border-radius: 16px !important;
}

.form-card,
.brochure-form {
  border: 1px solid #e6e7ec !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: 0 18px 45px rgba(24, 18, 39, .10) !important;
}

.form-card input,
.form-card select,
.form-card textarea,
.brochure-form input,
.brochure-form select,
.brochure-form textarea {
  border-radius: 8px !important;
}

/* Arrière-plans neutres */
.brochure-request-section {
  background: #f6f7f9 !important;
  background-image: none !important;
}

@media (max-width: 900px) {
  .nav-actions a,
  .btn,
  .btn-outline,
  .btn-ghost,
  .btn-light {
    border-radius: 8px !important;
  }
}
