@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=Source+Sans+3:wght@400;500;600;700&display=swap');

:root {
  --font-display: "Barlow Condensed", sans-serif;
  --font-body: "Source Sans 3", sans-serif;
  --color-ink: #F2F5FA;
  --color-muted: #AAB6C6;
  --color-surface: #090E17;
  --color-surface-alt: #101927;
  --color-accent: #1769BF;
  --color-accent-pressed: #10569F;
  --color-success: #44A981;
  --color-warning: #E1A34B;
  --color-danger: #D96B68;
  --line: #263448;
  --white: #fff;
  --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
  --space-6: 24px; --space-8: 32px; --space-12: 48px; --space-16: 64px;
  --radius-control: 6px; --radius-card: 12px; --radius-feature: 20px;
  --content-width: 1160px;
  font-family: var(--font-body);
  color: var(--color-ink);
  background: var(--color-surface);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-size: 18px; line-height: 1.45; background: var(--color-surface); }
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 3px solid var(--color-success); outline-offset: 3px; }
.wrap { width: min(calc(100% - 48px), var(--content-width)); margin-inline: auto; }
.skip { position: absolute; top: -100px; left: 16px; z-index: 10; background: white; padding: 12px; }
.skip:focus { top: 16px; }
.topline { height: 4px; background: var(--color-accent); }
.header { border-bottom: 1px solid var(--line); background: var(--color-surface); }
.nav { min-height: 78px; display: flex; justify-content: space-between; align-items: center; gap: 28px; }
.brand { font: 700 28px/1 var(--font-display); text-decoration: none; letter-spacing: .02em; }
.brand span { color: var(--color-accent); }
.navlinks { display: flex; gap: 28px; align-items: center; font-size: 16px; }
.navlinks a { text-decoration: none; }
.navlinks a:hover { text-decoration: underline; text-underline-offset: 4px; }
.button { display: inline-flex; min-height: 48px; padding: 12px 20px; justify-content: center; align-items: center; gap: 8px; border-radius: var(--radius-control); color: var(--white); background: var(--color-accent); border: 1px solid var(--color-accent); font-size: 17px; font-weight: 700; line-height: 1.2; text-decoration: none; transition: background-color 180ms ease, transform 180ms ease; }
.button:hover { background: var(--color-accent-pressed); transform: translateY(-1px); }
.button.secondary { background: transparent; border-color: var(--color-ink); color: var(--color-ink); }
.button.secondary:hover { background: var(--color-surface-alt); }
.eyebrow { display: inline-block; color: var(--color-success); font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
h1,h2,h3 { font-family: var(--font-display); line-height: 1.04; margin: 0; }
h1 { max-width: 760px; font-size: clamp(48px, 7vw, 76px); letter-spacing: -.015em; }
h2 { font-size: clamp(36px, 5vw, 50px); }
h3 { font-size: 29px; }
p { margin: 0; }
.hero { padding: 74px 0 76px; }
.hero-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 50px; align-items: center; }
.hero-copy { display: grid; gap: 22px; }
.hero-copy > p { color: var(--color-muted); max-width: 550px; font-size: 20px; }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 4px; }
.hero-note { font-size: 15px !important; }
.hero-art { min-height: 355px; border-radius: var(--radius-feature); background: #0B1B34; position: relative; overflow: hidden; padding: 24px; display: flex; align-items: end; border: 1px solid #1D3D67; }
.hero-art::before { content: ""; position: absolute; inset: 24px 24px 82px; border: 1px solid #355880; border-radius: 13px; background: #0D1726; box-shadow: 0 12px 38px rgba(0,0,0,.28); }
.hero-art::after { content: ""; position: absolute; width: 112px; height: 112px; right: 58px; top: 55px; border-radius: 50%; background: #173B6D; border: 1px solid #2B5C99; }
.screen-label { position: relative; z-index: 1; max-width: 300px; padding: 20px 22px; background: #111D2E; border-left: 4px solid var(--color-accent); border-radius: 0 var(--radius-card) var(--radius-card) 0; }
.screen-label strong { display: block; font: 600 28px/1.1 var(--font-display); margin-bottom: 6px; }
.screen-label span { font-size: 15px; color: var(--color-muted); }
.section { padding: 76px 0; }
.section.alt { background: var(--color-surface-alt); }
.section-head { display: grid; gap: 14px; max-width: 690px; margin-bottom: 34px; }
.section-head p { color: var(--color-muted); max-width: 620px; }
.plans { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; align-items: stretch; }
.plan { background: var(--color-surface); border: 1px solid var(--line); border-radius: var(--radius-card); padding: 26px; display: flex; flex-direction: column; gap: 18px; }
.plan.featured { border: 2px solid var(--color-success); padding: 25px; }
.plan-kicker { min-height: 21px; color: var(--color-success); font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.plan h3 { font-size: 31px; }
.price { font: 700 46px/.95 var(--font-display); }
.price small { font: 600 17px/1 var(--font-body); color: var(--color-muted); }
.equiv { color: var(--color-muted); font-size: 15px; }
.plan .button { width: 100%; margin-top: auto; }
.plan p { color: var(--color-muted); font-size: 16px; }
.fineprint { color: var(--color-muted); font-size: 14px; margin-top: 16px; }
.steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 30px; }
.step { border-top: 2px solid var(--color-accent); padding-top: 17px; display: grid; gap: 10px; align-content: start; }
.step-number { font: 700 20px/1 var(--font-display); color: var(--color-accent); }
.step h3 { font-size: 26px; }
.step p { color: var(--color-muted); font-size: 16px; }
.guide-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.guide-card { padding: 26px; border: 1px solid var(--line); border-radius: var(--radius-card); background: var(--color-surface); display: grid; gap: 12px; }
.guide-card p { color: var(--color-muted); }
.catalogue-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.catalogue-card { min-height: 186px; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius-card); background: #0D1521; display: flex; flex-direction: column; gap: 12px; }
.catalogue-card .eyebrow { font-size: 12px; }
.catalogue-card h3 { font-size: 27px; }
.catalogue-card p { color: var(--color-muted); font-size: 15px; margin-top: auto; }
.catalogue-note { margin-top: 18px; padding: 16px 18px; border: 1px solid #284466; border-radius: var(--radius-card); background: #101D2D; color: var(--color-muted); font-size: 16px; }
.catalogue-note strong { color: var(--color-ink); }
.catalogue-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 32px; }
.catalogue-nav a { display: inline-flex; min-height: 42px; padding: 9px 15px; align-items: center; border: 1px solid #2B3B50; border-radius: 999px; color: var(--color-ink); text-decoration: none; font-size: 15px; font-weight: 700; }
.catalogue-nav a:hover { border-color: var(--color-accent); background: #142238; }
.channel-groups { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 40px; }
.channel-group { padding: 20px; border-radius: var(--radius-card); border: 1px solid var(--line); background: #0D1521; }
.channel-group h3 { font-size: 24px; margin-bottom: 15px; }
.channel-chips { display: flex; flex-wrap: wrap; gap: 7px; }
.channel-chips span { padding: 6px 10px; border-radius: 4px; background: #17263B; color: #DFE8F5; font-size: 14px; }
.rail-section { scroll-margin-top: 28px; margin-top: 38px; }
.rail-heading { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: 16px; margin-bottom: 18px; }
.rail-heading h3 { font-size: 32px; }
.rail-heading p { max-width: 500px; color: var(--color-muted); font-size: 15px; }
.poster-rail { display: flex; gap: 14px; overflow-x: auto; padding: 2px 2px 14px; scroll-snap-type: x mandatory; }
.poster-card { flex: 0 0 clamp(150px, 17vw, 196px); overflow: hidden; border-radius: 9px; border: 1px solid #26374D; background: #101927; scroll-snap-align: start; }
.poster-card img { display: block; width: 100%; aspect-ratio: 2 / 3; object-fit: cover; background: #142238; }
.poster-meta { padding: 12px 13px 14px; }
.poster-meta span { display: block; color: #84B9F1; font-size: 13px; margin-bottom: 5px; }
.poster-meta strong { display: block; font: 600 21px/1.05 var(--font-display); min-height: 42px; }
.poster-meta a { display: inline-block; margin-top: 11px; color: #A9CEFA; font-size: 14px; font-weight: 700; text-underline-offset: 3px; }
.catalogue-disclaimer { color: var(--color-muted); font-size: 14px; margin-top: 18px; }
.checklist { padding-left: 22px; margin: 4px 0 0; display: grid; gap: 10px; }
.checklist li { padding-left: 4px; }
.faq { display: grid; gap: 10px; max-width: 850px; }
details { background: var(--color-surface); border: 1px solid var(--line); border-radius: var(--radius-card); padding: 17px 20px; }
summary { cursor: pointer; font-weight: 700; }
details p { padding-top: 12px; color: var(--color-muted); }
.contact-band { background: #111D2E; color: var(--color-ink); padding: 48px; border: 1px solid #263A54; border-radius: var(--radius-feature); display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.contact-band p { color: #BAC5D4; max-width: 560px; margin-top: 12px; }
.contact-band h2 { font-size: clamp(34px, 4vw, 44px); }
.contact-band .button { flex-shrink: 0; }
.footer { border-top: 1px solid var(--line); padding: 28px 0; color: var(--color-muted); font-size: 14px; }
.footer-row { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 14px; }
.footer a { text-underline-offset: 3px; }
.notice { padding: 16px 18px; background: #2A2116; border-left: 4px solid var(--color-warning); border-radius: 0 var(--radius-control) var(--radius-control) 0; color: var(--color-ink); font-size: 16px; }
.domain-tag { font-size: 14px; color: var(--color-muted); }
.mobile-toggle { display: none; }
@media (max-width: 760px) {
  .wrap { width: min(calc(100% - 32px), var(--content-width)); }
  .nav { min-height: 68px; flex-wrap: wrap; }
  .mobile-toggle { display: inline-flex; min-width: 48px; min-height: 48px; align-items: center; justify-content: center; border: 1px solid var(--line); border-radius: var(--radius-control); background: transparent; color: var(--color-ink); font-size: 24px; }
  .navlinks { display: none; width: 100%; padding: 0 0 16px; flex-direction: column; align-items: stretch; gap: 0; }
  .navlinks.open { display: flex; }
  .navlinks a { padding: 12px 4px; }
  .navlinks .button { margin-top: 8px; }
  .hero { padding: 50px 0 54px; }
  .hero-grid { grid-template-columns: 1fr; gap: 30px; }
  .hero-art { min-height: 260px; }
  .section { padding: 56px 0; }
  .plans, .steps, .guide-grid, .catalogue-grid, .channel-groups { grid-template-columns: 1fr; }
  .contact-band { padding: 30px 24px; flex-direction: column; align-items: flex-start; }
  .actions .button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } }


/* Direction pratique : vert forêt, sable et lignes de vérification. */
:root { --font-display: 'Trebuchet MS', Arial, sans-serif; --font-body:'Source Sans 3',Arial,sans-serif; --color-ink:#20342B; --color-muted:#5F7167; --color-surface:#F6F5ED; --color-surface-alt:#E8ECE2; --color-accent:#315D48; --color-accent-pressed:#244A37; --color-success:#8C6B37; --line:#C9D2C5; --white:#fff; }
body { background:var(--color-surface); }
.topline { height:5px; background:#315D48; }
.header { background:#F6F5ED; }
.brand { font-family:var(--font-body); font-size:24px; letter-spacing:-.04em; }
.hero { padding:64px 0 72px; background:#E8ECE2; }
.hero-grid { grid-template-columns:1fr .8fr; gap:66px; }
.hero-copy { gap:21px; }
h1 { font-family:var(--font-display); font-size:clamp(44px,5.8vw,68px); letter-spacing:-.055em; line-height:1.02; }
h2,h3 { font-family:var(--font-display); letter-spacing:-.04em; }
.eyebrow { color:#315D48; letter-spacing:.09em; }
.hero-art { min-height:330px; background:#315D48; border:0; border-radius:36% 4px 36% 4px; }
.hero-art::before { inset:34px 38px 86px; border:2px solid #B6C9B7; border-radius:20px 4px 20px 4px; background:#EDF0E8; box-shadow:none; }
.hero-art::after { width:76px; height:76px; background:#AFC4AE; border:10px solid #315D48; right:52px; top:53px; }
.screen-label { background:#F6F5ED; color:var(--color-ink); border-left:4px solid #8C6B37; border-radius:0 8px 8px 0; }
.screen-label span { color:var(--color-muted); }
.section.alt { background:#E8ECE2; }
.plans { gap:12px; }
.plan,.plan.featured { border-radius:4px 16px 4px 16px; background:#FBFAF5; border:1px solid var(--line); padding:24px; }
.plan { border-left:5px solid #A7B9A8; }
.plan.featured { border-left:5px solid var(--color-accent); border-top:1px solid var(--line); }
.plan-kicker { color:var(--color-accent); letter-spacing:.1em; }
.plan .button.secondary { color:var(--color-accent); border-color:var(--color-accent); }
.step { border-top:0; border-left:3px solid #9AAE9D; padding:4px 0 4px 18px; }
.step-number { color:var(--color-accent); }
.guide-grid { gap:0 28px; }
.guide-card { background:transparent; border:0; border-bottom:1px solid var(--line); border-radius:0; padding:22px 8px; }

.catalogue-card,.channel-group,details { background:#FBFAF5; border-color:var(--line); border-radius:4px 14px 4px 14px; }
.catalogue-card { border-left:4px solid #8C6B37; }
.catalogue-note { background:#E8ECE2; border-color:var(--line); border-radius:4px; color:var(--color-muted); }
.catalogue-note strong,.poster-meta span { color:var(--color-accent); }
.catalogue-nav a { border-color:#B9C7B8; color:var(--color-ink); border-radius:4px; }
.catalogue-nav a:hover { border-color:var(--color-accent); background:#E8ECE2; }
.channel-chips span { background:#E2E9DF; color:#284334; }
.poster-card { background:#FBFAF5; border-color:var(--line); }
.poster-meta a { color:var(--color-accent); }
.contact-band { background:#315D48; color:#fff; border:0; border-radius:4px 24px 4px 24px; }
.contact-band p { color:#E5ECE4; }
.notice { background:#F1EADB; color:#372F20; border-left-color:#8C6B37; }
.footer { border-top-color:var(--line); }
.mobile-toggle { border-color:var(--line); color:var(--color-ink); }
a:focus-visible,button:focus-visible,summary:focus-visible { outline-color:#8C6B37; }
@media(max-width:760px) { .hero {padding:50px 0;} .hero-grid {grid-template-columns:1fr;gap:30px;} .hero-art {min-height:255px;} }


/* IPTV Smarter — outil de vérification clair, parcours guidé et fiches pratiques. */
:root { --color-surface:#F6F5ED; --color-surface-alt:#E8ECE2; --color-accent:#315D48; --color-accent-pressed:#244A37; --color-success:#8C6B37; --line:#C9D2C5; --font-display:'Trebuchet MS',Arial,sans-serif; }
.header { border-bottom:3px solid #315D48; }
.brand { font-family:var(--font-body); font-size:22px; text-transform:uppercase; letter-spacing:.06em; }
.hero { background:#E8ECE2; padding:62px 0; }
.hero-grid { grid-template-columns:1.05fr .95fr; gap:40px; }
.hero-art { border-radius:4px 52px 4px 52px; background:#315D48; min-height:350px; }
.hero-art::before { inset:25px 32px 78px; border:0; border-radius:4px 32px 4px 32px; background:repeating-linear-gradient(to bottom,#F6F5ED 0 42px,#E1E8DE 42px 44px); }
.hero-art::after { width:54px; height:54px; right:48px; top:47px; border:6px solid #315D48; background:#AFC4AE; }
.screen-label { background:#F6F5ED; border-left:0; border-top:4px solid #8C6B37; border-radius:0 0 4px 4px; }
h1 { max-width:640px; font-family:'Trebuchet MS',Arial,sans-serif; font-size:clamp(42px,5vw,62px); letter-spacing:-.06em; }
.section { padding:64px 0; }
#verifier .guide-grid { grid-template-columns:1fr; gap:0; border-top:1px solid var(--line); }
#verifier .guide-card { grid-template-columns:56px 220px 1fr; align-items:center; gap:18px; padding:18px 12px; border:0; border-bottom:1px solid var(--line); background:transparent; }
#verifier .guide-card h3 { color:#315D48; font-size:22px; }
#verifier .guide-card p { max-width:610px; }
#questions .guide-card { background:#315D48; color:white; border:0; border-radius:4px 24px 4px 24px; padding:30px; }
#questions .checklist { counter-reset:check; list-style:none; padding:0; gap:0; }
#questions .checklist li { counter-increment:check; display:grid; grid-template-columns:42px 1fr; align-items:center; min-height:56px; border-bottom:1px solid rgba(255,255,255,.24); }
#questions .checklist li::before { content:'0' counter(check); color:#D9C18D; font-weight:700; }
#offre { background:#F6F5ED; }
#offre .plans { grid-template-columns:1fr; gap:0; border-top:2px solid #315D48; }
#offre .plan,#offre .plan.featured { display:grid; grid-template-columns:130px 1fr 150px 1fr 180px; align-items:center; gap:20px; padding:18px 10px; border:0; border-bottom:1px solid var(--line); border-radius:0; background:transparent; }
#offre .plan-kicker { grid-column:1; }
#offre .plan h3 { grid-column:2; grid-row:1; font-size:22px; }
#offre .plan .price { grid-column:3; font-size:34px; }
#offre .plan p { grid-column:4; grid-row:1; }
#offre .plan .button { grid-column:5; grid-row:1; margin:0; }
#offre .plan.featured { border-left:4px solid #315D48; }
#catalogue .channel-groups { grid-template-columns:1fr; gap:0; }
#catalogue .channel-group { display:grid; grid-template-columns:150px 1fr; align-items:start; border:0; border-bottom:1px solid var(--line); border-radius:0; padding:18px 0; background:transparent; }
#catalogue .channel-group h3 { color:#315D48; }
#catalogue .channel-chips span { border-radius:999px; padding:7px 11px; }
#catalogue .poster-rail { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); overflow:visible; gap:12px; }
#catalogue .poster-card { display:grid; grid-template-columns:112px 1fr; align-items:center; flex:none; border-radius:4px 16px 4px 16px; }
#catalogue .poster-card img { height:168px; aspect-ratio:auto; }
#catalogue .poster-meta { padding:14px; }
#catalogue .contact-band { border-radius:4px 24px 4px 24px; }
@media(max-width:760px) {
 .hero {padding:50px 0;} .hero-grid {grid-template-columns:1fr;}
 #verifier .guide-card {grid-template-columns:1fr; gap:6px; padding:20px 4px;}
 #offre .plan,#offre .plan.featured {grid-template-columns:1fr 1fr; gap:10px; padding:20px 12px;}
 #offre .plan-kicker,#offre .plan h3,#offre .plan .price,#offre .plan p,#offre .plan .button {grid-column:auto; grid-row:auto;}
 #offre .plan .button {grid-column:1/-1; width:100%;}
 #catalogue .channel-group {grid-template-columns:1fr; gap:8px;}
 #catalogue .poster-rail {grid-template-columns:1fr;}
 #catalogue .poster-card {grid-template-columns:105px 1fr;}
}
/* Parcours pratique : étapes visibles à gauche, listes pays dépliables à droite. */
.setup-layout{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:1.5rem}.setup-steps{display:grid;gap:.8rem;align-content:start}.setup-steps article{padding:1rem;border-radius:16px;background:#e8efe6;border:1px solid #d2dfd0}.setup-steps article>span{font-size:.75rem;font-weight:800;letter-spacing:.12em;color:#557253}.country-accordions{display:grid;gap:.65rem}.country-disclosure{border:1px solid #d6dfd1;border-radius:14px;background:#fbfcf8;overflow:hidden}.country-disclosure summary{display:flex;align-items:center;gap:.8rem;padding:1rem;cursor:pointer;font-weight:750;list-style:none}.country-disclosure summary small{margin-left:auto;color:#647365}.country-disclosure[open] summary{background:#edf3e9}.country-disclosure .channel-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;padding:0 1rem 1rem;list-style:none}.country-disclosure .channel-list li{padding:.55rem .65rem;border-radius:8px;background:#f0f4ed}.install-note{margin-top:1.4rem;padding:1.2rem;border-radius:16px;background:#e9f0e5}.catalogue-disclaimer{font-size:.9rem;color:#59665a}.tutorial-link{color:#386344;font-weight:750}
@media(max-width:700px){.setup-layout{grid-template-columns:1fr}.country-disclosure .channel-list{grid-template-columns:1fr}}

/* Apple-inspired web polish: restrained glass navigation, readable states, identity-specific accent. */
.header { position: sticky; top: 0; z-index: 50; isolation: isolate; background: transparent; border-bottom: 0; }
.header::before { content: ""; position: absolute; inset: 0; z-index: -1; background: rgba(248, 250, 245, .82); -webkit-backdrop-filter: saturate(165%) blur(18px); backdrop-filter: saturate(165%) blur(18px); border-bottom: 1px solid rgba(86, 127, 91, .20); box-shadow: 0 8px 26px rgba(0,0,0,.06), inset 0 1px rgba(255,255,255,.32); pointer-events: none; }
.header .nav { position: relative; }
.navlinks > a:not(.button) { display: inline-flex; align-items: center; min-height: 44px; padding: .55rem .75rem; border-radius: 999px; transition: background-color 180ms ease, color 180ms ease; }
.navlinks > a:not(.button):hover { background: rgba(86, 127, 91, .20); text-decoration: none; }
.navlinks > .button, .button { min-height: 48px; transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease; }
.button:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(86, 127, 91, .20); }
.button:active { transform: scale(.98); }
/* IPTV Smarter: task-oriented compatibility checker. */
.diagnostic-hero{background:#e9efe8;color:#1f3029;padding:clamp(48px,7vw,88px) 0;border-bottom:1px solid #c7d3c5}.diagnostic-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:clamp(36px,8vw,110px);align-items:center}.diagnostic-copy h1{font-size:clamp(2.8rem,5.2vw,4.7rem);line-height:1.02;letter-spacing:-.05em;max-width:12ch}.diagnostic-copy>p{max-width:50ch;color:#506258;line-height:1.7}.diagnostic-copy .eyebrow{color:#55754f;letter-spacing:.14em}.diagnostic-hero .button{background:#315e48;color:#fff}.diagnostic-hero .hero-note{font-size:.9rem}.diagnostic-card{padding:0 clamp(18px,3vw,32px);border:1px solid #c7d3c5;border-radius:18px;background:#f8faf6;box-shadow:0 20px 55px rgba(44,69,51,.1)}.diagnostic-card-head{display:flex;justify-content:space-between;padding:22px 0;color:#55754f;font-size:.75rem;font-weight:800;letter-spacing:.12em;border-bottom:1px solid #dbe3d8}.diagnostic-card ol{list-style:none;padding:0;margin:0}.diagnostic-card li{display:flex;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid #e0e7dd}.diagnostic-card li>b{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e5eee2;color:#315e48;font-size:.83rem}.diagnostic-card li span{display:grid;gap:4px}.diagnostic-card li strong{font-size:1rem}.diagnostic-card li small{color:#64736a;font-size:.88rem}.diagnostic-card>a{display:block;padding:20px 0;color:#315e48;font-weight:750;text-decoration:none}
@media(max-width:760px){.diagnostic-layout{grid-template-columns:1fr;gap:30px}.diagnostic-copy h1{font-size:clamp(2.7rem,11vw,4rem)}}
:focus-visible { outline: 3px solid #4d7652; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
@media (prefers-contrast: more) { .header::before { background: rgba(248, 250, 245, .96); -webkit-backdrop-filter: none; backdrop-filter: none; } .navlinks > a:not(.button) { text-decoration: underline; text-underline-offset: .18em; } }
