/* 1.7.35: «Vitrine» portal layout (includes/portal-showcase.php), on top of tenant.css. Colours from the academy:
   --tp primary (dark teal for the demo academy), --ta accent (amber). Inter for text, Playfair Display for the h1 only. */
body.tp--showcase{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:#f4f7f7;color:#14272b}
.tp--showcase .tp-wrap{padding:0 16px}
.sc-wrap{max-width:1200px;margin:0 auto;padding:0 16px}
/* 1. hero: full-bleed photo, dark-teal gradient from the left (contrast measured: see portal-showcase.php) */
.sc-hero{position:relative;min-height:78vh;display:flex;align-items:center;color:#fff;background:var(--tp);overflow:hidden;isolation:isolate}
.sc-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 50%;z-index:-2}
.sc-hero--jpg{background:var(--tp) var(--sc-hero) 62% 50%/cover no-repeat}
.sc-hero__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,38,44,.94) 0%,rgba(7,38,44,.88) 36%,rgba(7,38,44,.55) 58%,rgba(7,38,44,0) 82%)}
.sc-hero--plain .sc-hero__shade{background:radial-gradient(900px 500px at 85% 0,rgba(255,255,255,.08),transparent)}
.sc-hero__in{width:100%;padding-top:56px;padding-bottom:56px}
.sc-hero__in>*{max-width:600px}
.sc-kicker{margin:0 0 10px;color:#ffc95c;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:13px}
.sc-h1{font-family:'Playfair Display',Georgia,'Times New Roman',serif;font-weight:700;font-size:clamp(36px,5.4vw,64px);line-height:1.06;margin:0 0 12px;letter-spacing:-.01em}
.sc-tag{font-size:clamp(19px,2.2vw,24px);font-weight:600;margin:0 0 12px}
.sc-lead{font-size:17px;line-height:1.6;margin:0 0 24px;color:#eaf2f3}
.sc-cta{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 28px}
.sc-cta .tp-btn{min-height:48px;display:inline-flex;align-items:center}
.tp--showcase .tp-btn:focus-visible,.sc-dept:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px var(--tp)}
.sc-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.sc-chip{display:flex;align-items:baseline;gap:8px;padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:14px;color:#fff}
.sc-chip b{font-size:20px;color:#ffc95c}   /* light amber: AA over the photo (the brand amber is 3.7:1 there) */
@media (min-width:901px) and (max-width:1180px){.sc-hero__shade{background:linear-gradient(90deg,rgba(7,38,44,.94) 0%,rgba(7,38,44,.9) 50%,rgba(7,38,44,.62) 72%,rgba(7,38,44,0) 92%)}}
@media (max-width:900px){
  .sc-hero{min-height:70vh;align-items:flex-end}
  .sc-hero__img{object-position:72% 50%}
  .sc-hero--jpg{background-position:72% 50%}
  .sc-hero__shade{background:linear-gradient(180deg,rgba(7,38,44,.45) 0%,rgba(7,38,44,.88) 30%,rgba(7,38,44,.95) 100%)}
  .sc-hero__in{padding-top:120px;padding-bottom:32px}
  .sc-lead{font-size:16px}
}
/* sections */
.sc-sec{padding:64px 0}
.sc-h2{font-size:clamp(24px,3vw,32px);margin:0 0 24px;color:var(--tp);font-weight:800;letter-spacing:-.01em;line-height:1.2}
/* 2. departments */
.sc-dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.sc-dept{display:flex;flex-direction:column;gap:6px;padding:18px;border-radius:14px;background:#fff;border:1px solid #d6e2e3;text-decoration:none;color:#14272b;transition:transform .15s,box-shadow .15s,border-color .15s}
.sc-dept:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(14,59,67,.12);border-color:var(--ta)}
.sc-dept__ico{color:var(--tp);background:#fdf1d8;border-radius:10px;padding:8px;width:44px;height:44px}
.sc-dept h3{margin:6px 0 0;font-size:17px}
.sc-dept p{margin:0;font-size:14px;line-height:1.45;color:#45585c;flex:1}
.sc-dept__go{font-size:14px;font-weight:700;color:#0b5560}
/* 3. numbers */
.sc-stats{background:var(--tp);color:#fff}
.sc-stats .sc-h2{color:#fff}
.sc-stat-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.sc-stat{padding:20px;border-radius:14px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16)}
.sc-stat__v{display:flex;align-items:baseline;gap:4px;font-size:clamp(34px,4vw,46px);font-weight:800;line-height:1;color:var(--ta);font-variant-numeric:tabular-nums}
.sc-stat__v span{font-size:.5em}
.sc-stat__l{display:block;margin-top:8px;font-size:14px;color:#d8e6e8}
.sc-stat--leader{display:flex;align-items:center;gap:14px}
.sc-stat__name{display:block;font-weight:700;font-size:18px}
.sc-av{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:#fff;font-weight:700;font-size:12px;flex:none}
.sc-av--lg{width:52px;height:52px;font-size:18px}
/* 4. field teams */
.sc-split__in{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.sc-split__img{width:100%;height:auto;border-radius:18px;box-shadow:0 18px 40px rgba(14,59,67,.18);display:block}
.sc-split__p{font-size:17px;line-height:1.65;color:#33484c;margin:0 0 20px}
.sc-bullets{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.sc-bullets li{display:flex;gap:12px;align-items:flex-start;line-height:1.45}
.sc-bullets__i{flex:none;width:28px;height:28px;border-radius:50%;background:var(--ta);color:#14272b;display:inline-flex;align-items:center;justify-content:center;font-weight:800}
.sc-bullets span{color:#33484c}.sc-bullets b{color:#14272b}
@media (max-width:900px){.sc-split__in{grid-template-columns:1fr;gap:24px}.sc-sec{padding:44px 0}}
/* 5. catalogue */
.sc-cat{padding-top:8px}
.tp--showcase .tp-head h2{color:var(--tp)}
/* 6. footer */
.sc-foot .tp-demo-note{opacity:.85}
@media (prefers-reduced-motion:reduce){.sc-dept,.tp--showcase .tp-btn{transition:none}.sc-dept:hover{transform:none}}
