:root {
  --navy: #021a2f;
  --navy-2: #062943;
  --navy-3: #0b3c61;
  --gold: #bc8230;
  --gold-2: #e0b463;
  --ink: #10263c;
  --muted: #5b6977;
  --line: #dce3e8;
  --soft: #f5f7f8;
  --radius: 14px;
  --shadow: 0 22px 70px rgba(2, 26, 47, .12);
}

body { font-size: 17px; line-height: 1.68; }
.narrow { width:min(1180px, calc(100vw - clamp(40px, 8vw, 140px))); }
.wide-container,
.container,
.breadcrumbs,
.footer-grid,
.footer-bottom { width: min(1640px, calc(100vw - clamp(40px, 6vw, 112px))); max-width: none; margin-inline: auto; }
.header-inner { width: min(1760px, calc(100vw - clamp(28px, 4vw, 76px))); max-width: none; padding: 1rem 0; }
.topline { padding: .28rem 1rem; font-size: .66rem; letter-spacing: .2em; }
.site-header { box-shadow: 0 1px 0 rgba(255,255,255,.08); }
.brand-mark { width: 52px; height: 52px; color: var(--gold-2); border-width: 2px; }
.brand strong { font-size: 1.5rem; }
.brand small { font-size: .66rem; }
.main-nav { gap: clamp(.9rem, 1.55vw, 1.9rem); }
.main-nav a { font-size: .84rem; }
.header-cta { padding: .82rem 1.2rem; }
.breadcrumbs { padding: 1rem 0; }
.section { padding: clamp(5.5rem, 7vw, 8rem) 0; }
.section-sm { padding: 4rem 0; }
h2 { font-size: clamp(2.45rem, 3.5vw, 4.45rem); }
.section-head { align-items: flex-end; margin-bottom: 2.8rem; }
.section-head .lead { max-width: 880px; }
.lead { max-width: 900px; }
.eyebrow { letter-spacing: .18em; }

/* Homepage — composition fidèle à la maquette A */
.hero-premium { min-height: clamp(700px, 47vw, 865px); display: grid; background: #031a2e; }
.hero-premium::before { background:
  linear-gradient(90deg, rgba(2,24,43,.96) 0%, rgba(2,24,43,.75) 28%, rgba(2,24,43,.08) 58%, rgba(2,24,43,.04) 100%),
  url('../img/hero-animaux-premium.webp') center center / cover no-repeat;
}
.hero-premium::after { content: ''; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 -110px 110px rgba(0,12,25,.12); }
.hero-premium .hero-inner { z-index: 1; width: min(1740px, calc(100vw - clamp(40px, 6vw, 110px))); padding: 5rem 0 5.5rem; grid-template-columns: minmax(510px, .72fr) 1.28fr; }
.hero-premium .hero-copy { grid-column: 1; padding: 0; max-width: 650px; }
.hero-premium h1 { font-size: clamp(4.25rem, 5.25vw, 6.65rem); line-height: .96; letter-spacing: -.045em; margin: .55rem 0 1.5rem; text-wrap: balance; }
.hero-premium .eyebrow { color: var(--gold-2); max-width: 500px; }
.hero-premium .lead { max-width: 560px; font-size: 1.06rem; line-height: 1.65; color: #d8e2e9; }
.hero-tagline { margin: 0 0 .35rem; color: #fff; font-weight: 750; }
.species-switch { display: inline-flex; gap: .2rem; margin: 1.45rem 0 .25rem; padding: .22rem; background: #fff; border-radius: 999px; }
.species-switch a { min-width: 105px; padding: .55rem 1.2rem; text-align: center; color: var(--navy); border-radius: 999px; text-decoration: none; font-weight: 750; font-size: .9rem; }
.species-switch a:hover { background: #f2e7d2; color: var(--navy); }
.hero-premium .hero-actions { margin: .75rem 0 .65rem; }
.hero-premium .btn { min-width: 250px; padding: .98rem 1.45rem; }
.hero-micro { margin: 0; color: #c6d3dd; font-size: .75rem; }
.hero-badge { position: absolute; right: 0; top: 4.5rem; width: 190px; padding: 1.25rem .8rem; text-align: center; border-block: 1px solid rgba(224,180,99,.45); color: #fff; text-transform: uppercase; letter-spacing: .08em; font-family: var(--serif); }
.hero-badge::before, .hero-badge::after { content: '❧'; position: absolute; top: 34%; color: var(--gold-2); font-size: 1.4rem; }
.hero-badge::before { left: -4px; transform: rotate(-40deg); }
.hero-badge::after { right: -4px; transform: rotate(40deg); }
.hero-badge span, .hero-badge strong, .hero-badge small { display: block; }
.hero-badge span { font-size: .88rem; }
.hero-badge strong { color: var(--gold-2); font-size: 1.2rem; }
.hero-badge small { margin-top: .22rem; font: .66rem var(--sans); letter-spacing: .15em; }

.home-proof { width: 100%; display: grid; grid-template-columns: repeat(5, 1fr); padding: 1.75rem clamp(34px, 5vw, 92px); background: #fff; box-shadow: 0 14px 50px rgba(2,26,47,.08); }
.home-proof-item { display: grid; grid-template-columns: 54px 1fr; align-items: center; gap: 1rem; padding: .55rem clamp(1rem, 2vw, 2.2rem); border-right: 1px solid var(--line); }
.home-proof-item:last-child { border-right: 0; }
.proof-icon { width: 48px; height: 48px; display: grid; place-items: center; color: var(--gold); border: 1px solid #d4ad6d; border-radius: 50%; font-size: 1.7rem; }
.home-proof-item strong, .home-proof-item b, .home-proof-item small { display: block; }
.home-proof-item strong { color: var(--navy); font: 500 2rem/1 var(--serif); }
.home-proof-item b { color: var(--navy); line-height: 1.25; }
.home-proof-item small { margin-top: .2rem; color: var(--muted); font-size: .74rem; line-height: 1.35; }

.home-comparison { background: linear-gradient(180deg, #fff 0%, #fbfaf8 100%); }
.comparison-premium { border-radius: 10px; box-shadow: 0 16px 55px rgba(12,35,57,.07); }
.comparison-premium .comparison { min-width: 1160px; }
.comparison-premium th { padding: 1.2rem 1.15rem; background: #f7f6f3; color: var(--navy); font-family: var(--serif); font-size: .9rem; }
.comparison-premium td { padding: 1.25rem 1.15rem; }
.comparison-premium td:first-child { white-space: nowrap; }
.rank { width: 30px; height: 30px; display: inline-grid; place-items: center; margin-right: .75rem; border-radius: 50%; background: #ecdfc7; color: #8b6020; font-size: .78rem; }
.status-dot { width: 7px; height: 7px; display: inline-block; margin-right: .5rem; border-radius: 50%; background: var(--gold); }
.table-cta { display: inline-flex; padding: .58rem .85rem; border-radius: 5px; background: var(--navy); color: #fff; text-decoration: none; white-space: nowrap; font-size: .82rem; font-weight: 750; }
.table-cta:hover { color: #fff; background: var(--gold); }
.comparison-foot { display: flex; justify-content: space-between; gap: 2rem; padding: 1.1rem .3rem 0; color: var(--muted); font-size: .82rem; }
.comparison-foot a { font-weight: 750; text-decoration: none; }

.observatory-home { background: radial-gradient(circle at 82% 10%, #0b385d 0, transparent 35%), var(--navy); }
.btn-outline-light { background: transparent; color: #fff; border-color: var(--gold-2); box-shadow: none; }
.metric-panels { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.35rem; }
.metric-card { min-height: 280px; padding: 1.7rem; border-radius: 10px; background: #fff; color: var(--ink); }
.metric-card > p { margin: 0; color: var(--navy); font: 500 1.08rem var(--serif); }
.metric-card > strong { display: block; margin: .7rem 0 -.55rem; color: var(--navy); font: 500 2.8rem var(--serif); }
.metric-card > strong small { font: .8rem var(--sans); color: var(--muted); }
.metric-card > small { display: block; margin-top: 1.15rem; color: var(--muted); }
.mini-bars { height: 125px; display: flex; align-items: end; gap: 10px; border-bottom: 1px solid #ccd5dc; }
.mini-bars i { flex: 1; background: linear-gradient(#e5c17d,#b87b26); border-radius: 5px 5px 0 0; }
.mini-bars .h42 { height:42%; }.mini-bars .h55 { height:55%; }.mini-bars .h68 { height:68%; }.mini-bars .h72 { height:72%; }.mini-bars .h88 { height:88%; }
.horizontal-metrics { display: grid; gap: .72rem; margin-top: 1.3rem; }
.horizontal-metrics span { display: grid; grid-template-columns: 110px 1fr; gap: .7rem; align-items: center; font-size: .76rem; }
.horizontal-metrics i { height: 9px; display: block; border-radius: 99px; background: linear-gradient(90deg,#b97d27,#e7c98f); }
.horizontal-metrics i { width:75%; }
.line-chart { height: 155px; position: relative; display: grid; grid-template-columns: repeat(4,1fr); align-items: end; margin-top: 1rem; border-bottom: 1px solid #ccd5dc; background: linear-gradient(to bottom,transparent 32%,#eef1f3 33%,transparent 34%,transparent 65%,#eef1f3 66%,transparent 67%); }
.line-chart::before { content:''; position:absolute; left:9%; right:9%; bottom:53%; height:3px; transform:skewY(-13deg); background:linear-gradient(90deg,#0c436a,#dbad5d); }
.line-chart span { position:relative; padding-bottom:.35rem; text-align:center; font-size:.7rem; color:var(--muted); }
.line-chart span::before { content:''; position:absolute; left:50%; bottom:54px; width:9px; height:9px; border-radius:50%; background:var(--gold); }
.donut-wrap { display:grid; grid-template-columns:130px 1fr; gap:1rem; align-items:center; margin-top:2.2rem; }
.donut { width:124px; height:124px; border-radius:50%; background:conic-gradient(var(--navy) 0 65%,var(--gold) 65% 90%,#e4e8eb 90%); position:relative; }
.donut::after { content:''; position:absolute; inset:30px; border-radius:50%; background:#fff; }
.donut-wrap ul { list-style:none; margin:0; padding:0; font-size:.74rem; }
.donut-wrap li { margin:.55rem 0; white-space:nowrap; }
.donut-wrap li i { width:8px; height:8px; display:inline-block; margin-right:.45rem; border-radius:50%; }
.c1 { background:var(--navy); }.c2 { background:var(--gold); }.c3 { background:#d9e0e5; }

.editorial-grid { display:grid; grid-template-columns:1fr 1fr 1.18fr; gap:0; align-items:stretch; }
.editorial-column { padding:1rem clamp(2rem, 3vw, 4rem) 1rem 0; }
.editorial-column + .editorial-column { padding-left:clamp(2rem, 3vw, 4rem); border-left:1px solid var(--line); }
.editorial-column h2, .method-card h2 { font-size:clamp(2.35rem,3vw,3.6rem); }
.icon-list { list-style:none; padding:0; margin:2rem 0; }
.icon-list li { display:grid; grid-template-columns:40px 1fr; gap:.85rem; margin:1.15rem 0; }
.icon-list li > span { width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--gold); color:var(--gold); border-radius:50%; font-weight:800; }
.icon-list strong,.icon-list small { display:block; }
.icon-list small { color:var(--muted); line-height:1.45; }
.person-card { display:flex; align-items:center; gap:1rem; margin:1.2rem 0; }
.person-avatar { width:62px; height:62px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:#e4d3b3; color:var(--navy); font:700 1rem var(--serif); border:4px solid #f6f0e6; }
.person-avatar.person-open { background:var(--navy); color:var(--gold-2); }
.person-card strong,.person-card small { display:block; }
.person-card small { color:var(--muted); }
.text-link { display:inline-flex; margin-top:1rem; font-weight:800; text-decoration:none; }
.method-card { padding:clamp(2.2rem,3.5vw,4.5rem); border-radius:10px; background:linear-gradient(140deg,#062b4a,var(--navy)); color:#fff; }
.method-card h2 { color:#fff; }
.method-card > p:not(.eyebrow) { color:#cbd8e2; }
.method-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:2rem 0; }
.method-grid span { display:grid; grid-template-columns:40px 1fr; gap:.7rem; align-items:center; font-size:.84rem; }
.method-grid i { width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--gold); border-radius:50%; color:var(--gold-2); font-style:normal; font-size:.68rem; }
.light-link { color:var(--gold-2); }
.guide-grid { gap:1.5rem; }
.guide-card { border-radius:10px; }
.guide-card img { aspect-ratio:16/8.5; }
.guide-card .card-body { padding:1.6rem; }
.guide-card h3 { font-size:1.55rem; }
.faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 2rem; }
.faq-grid details { border-top:1px solid var(--line); padding:1.15rem .2rem; }
.faq-grid details:nth-last-child(-n+2) { border-bottom:1px solid var(--line); }
.faq-grid summary { cursor:pointer; color:var(--navy); font-weight:750; }

/* Pages internes — largeur, densité et hiérarchie */
.article-hero { padding:clamp(4.2rem,6vw,7rem) 0 clamp(3.5rem,5vw,6rem); background:linear-gradient(120deg,#edf2f5 0%,#fff 62%); overflow:hidden; }
.article-hero .layout { grid-template-columns:minmax(0,1.15fr) minmax(430px,.68fr); gap:clamp(3.5rem,6vw,7.5rem); }
.article-hero h1 { max-width:1050px; font-size:clamp(3.2rem,4.5vw,5.5rem); }
.article-hero .layout > div > .lead { max-width:920px; }
.article-hero img { aspect-ratio:5/4; min-height:430px; max-height:620px; border-radius:18px; }
.compare-hero img { object-position:72% center; }
.content-layout { grid-template-columns:minmax(0,1fr) 370px; gap:clamp(3.5rem,5vw,6rem); }
.prose { min-width:0; }
.prose > .notice:first-child { font-size:1.06rem; padding:1.5rem 1.7rem; }
.prose h2 { margin-top:3.6rem; font-size:clamp(2.2rem,2.6vw,3.2rem); }
.prose h3 { font-size:1.7rem; }
.prose p,.prose li { max-width:94ch; }
.prose table { font-size:.95rem; }
.prose th,.prose td { padding:1rem 1.1rem; }
.toc { top:1.5rem; padding:1.6rem; border-radius:10px; box-shadow:0 14px 42px rgba(2,26,47,.07); }
.toc h2 { font-size:1.05rem; }
.toc a { padding:.55rem 0; border-bottom:1px solid #edf0f2; }
.profile-points { grid-template-columns:repeat(3,1fr); }
.profile-point { min-height:125px; padding:1.35rem; }
.source-list { margin-top:3.5rem; padding:2rem; }
.directory { grid-template-columns:repeat(5,1fr); gap:1.15rem; }
.directory-card { min-height:104px; padding:1rem; border-radius:10px; }
.directory-card:hover { transform:translateY(-2px); box-shadow:0 12px 35px rgba(2,26,47,.09); }
.grid-2,.grid-3,.grid-4 { gap:1.5rem; }
.card { border-radius:12px; }
.card-body { padding:1.7rem; }
.calculator { grid-template-columns:1.15fr .85fr; gap:2.5rem; }
.internal-proof { border-block:1px solid var(--line); background:#fff; box-shadow:0 12px 38px rgba(2,26,47,.05); }
.internal-proof > div { display:grid; grid-template-columns:repeat(4,1fr); }
.internal-proof > div > div { min-height:112px; padding:1.45rem clamp(1.2rem,2.2vw,2.4rem); border-right:1px solid var(--line); }
.internal-proof > div > div:last-child { border-right:0; }
.internal-proof small,.internal-proof strong { display:block; }
.internal-proof small { color:var(--gold); font-size:.68rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.internal-proof strong { margin-top:.35rem; color:var(--navy); font:500 1.15rem/1.25 var(--serif); }
.decision-cards { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin:2.5rem 0 3.5rem; }
.decision-cards article { padding:1.3rem; border:1px solid var(--line); border-radius:10px; background:#fff; }
.decision-cards article > span { display:grid; place-items:center; width:34px; height:34px; margin-bottom:1rem; border-radius:50%; background:var(--navy); color:var(--gold-2); font-size:.7rem; font-weight:800; }
.decision-cards strong { display:block; color:var(--navy); }
.decision-cards p { margin:.45rem 0 0; color:var(--muted); font-size:.86rem; line-height:1.5; }
.scenario-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:2rem 0 3.5rem; }
.scenario-grid article { padding:1.45rem; background:var(--navy); color:#fff; border-radius:10px; }
.scenario-grid small,.scenario-grid strong,.scenario-grid span { display:block; }
.scenario-grid small { color:var(--gold-2); font-size:.68rem; letter-spacing:.12em; text-transform:uppercase; }
.scenario-grid strong { margin:.4rem 0; font:500 1.15rem var(--serif); }
.scenario-grid span { color:#c9d5de; font-size:.82rem; }
.life-timeline { display:grid; grid-template-columns:repeat(3,1fr); margin:2rem 0 3.5rem; border-block:1px solid var(--line); }
.life-timeline > div { padding:1.5rem; border-right:1px solid var(--line); }
.life-timeline > div:last-child { border-right:0; }
.life-timeline small,.life-timeline strong { display:block; }
.life-timeline small { color:var(--gold); font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.life-timeline strong { margin:.35rem 0; color:var(--navy); font-family:var(--serif); }
.life-timeline p { margin:0; font-size:.86rem; color:var(--muted); }
.breed-gallery { display:grid; grid-template-columns:1.25fr .75fr .75fr; gap:1rem; margin:1.8rem 0 3.5rem; }
.breed-gallery figure { margin:0; overflow:hidden; border-radius:10px; background:var(--navy); }
.breed-gallery img { width:100%; height:290px; object-fit:cover; }
.breed-gallery figure:first-child img { height:390px; }
.breed-gallery figure:not(:first-child) { align-self:end; }
.breed-gallery figcaption { padding:.65rem .8rem; color:#d8e2e9; font-size:.72rem; }
.toc-verdict { padding:1rem 0; margin:.5rem 0; border-block:1px solid var(--line); }
.toc-verdict small,.toc-verdict strong { display:block; }
.toc-verdict small { margin-top:.5rem; color:var(--gold); font-size:.65rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.toc-verdict strong { color:var(--navy); font-size:.85rem; }
.toc > .btn { margin-top:1rem; color:var(--navy); }
.document-dashboard { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin:2.5rem 0 3.5rem; }
.document-dashboard article { min-height:150px; padding:1.3rem; border:1px solid var(--line); border-top:3px solid var(--gold); border-radius:8px; }
.document-dashboard strong,.document-dashboard small,.doc-state { display:block; }
.document-dashboard strong { margin:.8rem 0 .3rem; color:var(--navy); font:500 1.15rem var(--serif); }
.document-dashboard small { color:var(--muted); line-height:1.4; }
.doc-state { color:#8b6020; font-size:.66rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.history-panel { display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; margin:1.5rem 0 3rem; }
.history-panel > div { padding:1.6rem; border-radius:10px; background:var(--soft); }
.history-panel time,.history-panel > div > span { color:var(--gold); font-size:.7rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.history-panel strong { display:block; margin:.45rem 0; color:var(--navy); font:500 1.25rem var(--serif); }
.history-panel p { margin:0; color:var(--muted); font-size:.9rem; }
.question-list { margin:1.2rem 0 3rem; border-bottom:1px solid var(--line); }
.question-list details { padding:1.1rem 0; border-top:1px solid var(--line); }
.question-list summary { cursor:pointer; color:var(--navy); font-weight:750; }
.journey-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); border-radius:10px; overflow:hidden; }
.journey-grid article { padding:1.8rem; border-right:1px solid var(--line); }
.journey-grid article:last-child { border-right:0; }
.journey-grid article > span { color:var(--gold); font-size:.72rem; font-weight:800; }
.journey-grid h2 { margin:.45rem 0; font-size:1.65rem; }
.journey-grid p { margin:0; color:var(--muted); font-size:.9rem; }
.answer-panel { scroll-margin-top:2rem; padding:2.2rem; margin-bottom:2rem; border-radius:10px; background:linear-gradient(135deg,var(--navy),#0a3b61); color:#fff; }
.answer-panel > span { color:var(--gold-2); font-size:.7rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.answer-panel h2 { margin:.55rem 0 .7rem; color:#fff; font-size:clamp(2rem,2.5vw,3rem); }
.answer-panel p { margin:.3rem 0 1rem; max-width:90ch; color:#eef3f6; font-size:1.12rem; }
.answer-panel small { color:#b9c9d4; }
.article-tools-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin:2rem 0 3.5rem; }
.article-tools-grid article { padding:1.3rem; border:1px solid var(--line); border-radius:9px; }
.article-tools-grid article > span { color:var(--gold); font-size:.7rem; font-weight:800; }
.article-tools-grid strong { display:block; margin:.45rem 0; color:var(--navy); }
.article-tools-grid p { margin:0; color:var(--muted); font-size:.84rem; line-height:1.45; }
.formula-panel { display:grid; grid-template-columns:1.1fr 1.25fr auto; gap:2rem; align-items:center; margin:4rem 0; padding:2.3rem; border-radius:10px; background:var(--navy); color:#fff; }
.formula-panel h2 { margin:.2rem 0 .5rem; color:#fff; font-size:2rem; }
.formula-panel p { margin:0; color:#c8d5de; font-size:.88rem; }
.formula { display:flex; align-items:center; gap:.65rem; flex-wrap:wrap; }
.formula span,.formula strong { padding:.55rem .7rem; border-radius:6px; background:rgba(255,255,255,.1); font-size:.78rem; }
.formula strong { background:var(--gold); color:var(--navy); }
.formula b { color:var(--gold-2); }
.trust-strip > div { padding:1.7rem clamp(2rem,5vw,5.5rem); }
.footer-grid { grid-template-columns:1.7fr repeat(3,1fr); }
.site-footer { padding-inline:0; }

@media (max-width: 1320px) {
  .home-proof { grid-template-columns:repeat(3,1fr); }
  .home-proof-item:nth-child(3) { border-right:0; }
  .home-proof-item:nth-child(-n+3) { border-bottom:1px solid var(--line); }
  .metric-panels { grid-template-columns:repeat(2,1fr); }
  .editorial-grid { grid-template-columns:1fr 1fr; }
  .method-card { grid-column:1/-1; margin-top:3rem; }
  .directory { grid-template-columns:repeat(4,1fr); }
  .article-hero .layout { grid-template-columns:1.15fr .85fr; gap:3rem; }
  .decision-cards { grid-template-columns:repeat(2,1fr); }
  .document-dashboard { grid-template-columns:repeat(2,1fr); }
  .article-tools-grid { grid-template-columns:repeat(2,1fr); }
  .formula-panel { grid-template-columns:1fr; }
}

@media (max-width: 1100px) {
  .wide-container,.container,.breadcrumbs,.footer-grid,.footer-bottom { width:min(100% - 42px, 960px); }
  .hero-premium .hero-inner { width:min(100% - 42px,960px); grid-template-columns:1fr; padding-bottom:3.5rem; }
  .hero-premium::before { background:linear-gradient(90deg,rgba(2,24,43,.98) 0%,rgba(2,24,43,.78) 55%,rgba(2,24,43,.2) 100%),url('../img/hero-animaux-premium.webp') 62% center/cover no-repeat; }
  .hero-badge { display:none; }
  .grid-4,.directory { grid-template-columns:repeat(2,1fr); }
  .content-layout { grid-template-columns:1fr; }
  .toc { position:static; order:-1; }
}

@media (max-width: 760px) {
  .wide-container,.container,.breadcrumbs,.footer-grid,.footer-bottom { width:calc(100% - 32px); }
  .section { padding:4.2rem 0; }
  .header-inner { width:calc(100% - 28px); }
  .hero-premium { min-height:760px; align-items:end; }
  .hero-premium::before { background:linear-gradient(0deg,#031a2e 10%,rgba(3,26,46,.92) 48%,rgba(3,26,46,.06) 76%),url('../img/hero-animaux-premium.webp') 70% top/auto 55% no-repeat; }
  .hero-premium .hero-inner { width:calc(100% - 32px); display:block; padding:18.5rem 0 2.5rem; }
  .hero-premium h1 { font-size:3.55rem; }
  .hero-premium .hero-copy { max-width:none; }
  .home-proof { grid-template-columns:1fr 1fr; padding:1rem 16px; }
  .home-proof-item { border-bottom:1px solid var(--line); }
  .home-proof-item:nth-child(even) { border-right:0; }
  .home-proof-item:last-child { grid-column:1/-1; border-bottom:0; }
  .metric-panels,.editorial-grid,.faq-grid { grid-template-columns:1fr; }
  .editorial-column,.editorial-column + .editorial-column { padding:2rem 0; border-left:0; border-bottom:1px solid var(--line); }
  .method-card { grid-column:auto; margin-top:2rem; }
  .faq-grid details:nth-last-child(-n+2) { border-bottom:0; }
  .faq-grid details:last-child { border-bottom:1px solid var(--line); }
  .comparison-foot { display:block; }
  .comparison-foot a { display:block; margin-top:.6rem; }
  .article-hero .layout { grid-template-columns:1fr; }
  .article-hero h1 { font-size:3rem; }
  .article-hero img { min-height:260px; max-height:360px; }
  .profile-points,.grid-2,.grid-3,.grid-4,.directory,.calculator,.decision-cards,.scenario-grid,.life-timeline,.breed-gallery,.document-dashboard,.history-panel,.article-tools-grid,.journey-grid { grid-template-columns:1fr; }
  .journey-grid article { border-right:0; border-bottom:1px solid var(--line); }
  .journey-grid article:last-child { border-bottom:0; }
  .internal-proof > div { grid-template-columns:1fr 1fr; }
  .internal-proof > div > div:nth-child(even) { border-right:0; }
  .internal-proof > div > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .breed-gallery figure,.breed-gallery figure:not(:first-child) { align-self:auto; }
  .breed-gallery img,.breed-gallery figure:first-child img { height:260px; }
  .life-timeline > div { border-right:0; border-bottom:1px solid var(--line); }
  .life-timeline > div:last-child { border-bottom:0; }
  .method-grid { grid-template-columns:1fr; }
}

@media (max-width: 430px) {
  .hero-premium h1 { font-size:3.05rem; }
  .species-switch { display:flex; }
  .species-switch a { min-width:0; flex:1; }
  .home-proof { grid-template-columns:1fr; }
  .home-proof-item,.home-proof-item:nth-child(3) { grid-column:auto; border-right:0; border-bottom:1px solid var(--line); }
  .home-proof-item:last-child { grid-column:auto; }
  .metric-panels { grid-template-columns:1fr; }
  .donut-wrap { grid-template-columns:110px 1fr; }
  .donut { width:104px; height:104px; }
}
