:root{
  --case-night:#0d2025;
  --case-deep:#102d33;
  --case-teal:#1d6f78;
  --case-teal-soft:#bfe6e2;
  --case-amber:#f0a44b;
  --case-amber-soft:#ffd9a8;
  --case-ivory:#f6f1e8;
  --case-paper:#fffaf2;
  --case-ink:#17282d;
  --case-muted:#5c6d70;
}
.case-page{background:var(--case-ivory);color:var(--case-ink)}
.case-header{position:fixed;inset:0 0 auto;z-index:80;background:linear-gradient(180deg,rgba(8,20,24,.96),rgba(8,20,24,.78));border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px)}
.case-nav-wrap{height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.case-brand img{height:44px;width:auto}.case-nav{background:rgba(24,52,58,.72)}
.case-hero{padding-top:92px;background:radial-gradient(circle at 82% 18%,rgba(240,164,75,.20),transparent 18%),radial-gradient(circle at 10% 20%,rgba(75,185,184,.12),transparent 20%),linear-gradient(180deg,#0d2025 0%,#123139 100%);color:#f5fbfa;overflow:hidden}
.case-hero-grid{min-height:760px;display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center;padding:72px 0 54px}.case-kicker,.case-eyebrow{margin:0 0 18px;font:700 11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase}.case-kicker{color:var(--case-teal-soft)}.case-eyebrow{color:var(--case-teal)}
.case-hero h1{margin:0;max-width:700px;font-family:var(--serif);font-size:clamp(64px,8vw,112px);font-weight:400;line-height:.84;letter-spacing:-.065em;color:#f8fcfb}.case-hero h1 em{display:inline-block;margin-top:8px;color:var(--case-amber-soft);font-style:normal}.case-hook{max-width:680px;margin:28px 0 0;color:#f7e8cf;font-family:var(--serif);font-size:25px;line-height:1.35}.case-intro{max-width:720px;margin:20px 0 0;color:#d8e9e8;font-size:18px;line-height:1.7}.case-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.case-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;font-weight:800;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.case-button:hover{transform:translateY(-1px)}.case-button-primary{background:linear-gradient(180deg,#f3b15e,#e59434);color:#173039;box-shadow:0 16px 34px rgba(240,164,75,.20)}.case-button-ghost{color:#eefaf8;border:1px solid rgba(191,230,226,.25);background:rgba(255,255,255,.07)}.case-button-light{background:#fff8ec;color:#143038}
.case-duration{display:flex;align-items:baseline;gap:12px;margin-top:24px}.case-duration span{font-family:var(--serif);font-size:26px;color:#fff5e6}.case-duration small{color:#9fc2c0;font-size:13px}
.case-hero-art{position:relative;min-height:560px}.clock-orbit{position:absolute;inset:30px 20px 70px 30px;border:1px solid rgba(191,230,226,.18);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 28px rgba(255,255,255,.02),0 40px 90px rgba(0,0,0,.24)}.clock-orbit::before,.clock-orbit::after{content:"";position:absolute;background:rgba(191,230,226,.12)}.clock-orbit::before{width:1px;height:76%;left:50%;top:12%}.clock-orbit::after{height:1px;width:76%;top:50%;left:12%}.clock-time{position:relative;z-index:2;font-family:var(--serif);font-size:clamp(78px,9vw,132px);line-height:1;color:#ffd79c;letter-spacing:-.08em;text-shadow:0 24px 40px rgba(0,0,0,.22)}.clock-caption{position:absolute;z-index:2;right:12%;bottom:17%;font:700 10px/1.5 var(--mono);letter-spacing:.18em;color:#a9d6d2;text-align:right}.clock-mark{position:absolute;width:10px;height:10px;border-radius:50%;background:#f0a44b;box-shadow:0 0 0 8px rgba(240,164,75,.10)}.m1{top:7%;left:50%}.m2{right:7%;top:50%}.m3{bottom:7%;left:50%}.m4{left:7%;top:50%}
.dossier-slip{position:absolute;left:0;bottom:24px;width:300px;padding:20px 22px;border-radius:22px;background:#fff9ef;color:#173039;box-shadow:0 24px 60px rgba(0,0,0,.22);transform:rotate(-3deg)}.dossier-slip span{display:block;margin-bottom:18px;font:700 10px/1 var(--mono);letter-spacing:.14em;color:#1d6f78}.dossier-slip strong{display:block;font-family:var(--serif);font-size:30px;font-weight:400}.dossier-slip p{margin:8px 0 0;color:#617175;line-height:1.45}.case-seal{position:absolute;right:0;top:56px;padding:10px 14px;border:1px solid rgba(240,164,75,.45);border-radius:8px;color:#ffd9a8;font:700 10px/1 var(--mono);letter-spacing:.14em;transform:rotate(4deg)}
.case-hero-line{min-height:62px;padding:12px 28px;display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;background:#f0a44b;color:#163039;font:800 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase}.case-hero-line i{width:5px;height:5px;border-radius:50%;background:#163039;opacity:.45}
.case-section{padding:110px 0}.case-story{background:#f6f1e8}.case-story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.case-section-title h2,.case-section-head h2,.no-spoiler-copy h2,.checkout-summary h2,.case-final h2{margin:0;font-family:var(--serif);font-size:clamp(46px,6vw,80px);font-weight:400;line-height:.95;letter-spacing:-.05em}.case-story-copy{padding-top:32px}.case-big-copy{margin:0 0 22px;font-family:var(--serif);font-size:32px;line-height:1.28;color:#173039}.case-story-copy>p:not(.case-big-copy){font-size:18px;line-height:1.75;color:#55666a}.case-story-copy blockquote{margin:38px 0 0;padding:26px 28px;border-left:4px solid #f0a44b;background:#fffaf2;border-radius:0 22px 22px 0;font-family:var(--serif);font-size:27px;line-height:1.3;color:#16343a}
.case-immersion{background:linear-gradient(180deg,#e9f0ed,#eef2ef)}.case-section-head{max-width:900px}.case-section-head>p:last-child{max-width:760px;margin:20px 0 0;font-size:18px;line-height:1.7;color:#52656a}.case-formats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:46px}.case-format{min-height:350px;padding:26px;border-radius:28px;background:#fff;border:1px solid rgba(23,40,45,.08);box-shadow:0 18px 42px rgba(17,28,31,.07)}.format-mark{width:74px;height:74px;border-radius:24px;display:flex;align-items:center;justify-content:center;margin-bottom:34px;background:#14353b;color:#f8e3bd;font-family:var(--serif);font-size:24px}.format-letter{background:#f0a44b;color:#173039;font-family:var(--sans);font-size:30px}.format-mission{background:#1d6f78;color:white;font-family:var(--sans);font-size:40px}.case-format>span{font:700 10px/1 var(--mono);letter-spacing:.13em;color:#1d6f78}.case-format h3{margin:10px 0 12px;font-family:var(--serif);font-size:34px;font-weight:400;line-height:1}.case-format p{margin:0;color:#5a6b6f;line-height:1.65}.case-thread{margin-top:22px;padding:34px;border-radius:30px;background:#14353b;color:#eef9f8;display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center}.case-thread .case-eyebrow{color:#9dd7d3}.thread-copy h3{margin:0;font-family:var(--serif);font-size:42px;font-weight:400;line-height:1}.thread-copy p:last-child{color:#c6dddb;line-height:1.65}.thread-visual{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.thread-visual span{padding:10px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(191,230,226,.12);font:700 9px/1 var(--mono);letter-spacing:.1em}.thread-visual b{flex:1;min-width:18px;height:1px;background:linear-gradient(90deg,#67c9c5,#f0a44b)}
.case-no-spoiler{background:#fffaf2}.no-spoiler-grid{display:grid;grid-template-columns:.4fr 1.6fr;gap:50px;align-items:start}.no-spoiler-number{font-family:var(--serif);font-size:220px;line-height:.75;color:#e0ebe8;letter-spacing:-.08em}.no-spoiler-copy{max-width:820px}.no-spoiler-copy p:last-child{max-width:760px;font-size:19px;line-height:1.75;color:#586a6e;margin-top:24px}
.checkout-section{background:radial-gradient(circle at 85% 10%,rgba(240,164,75,.14),transparent 20%),linear-gradient(180deg,#112b31,#0d2025);color:#edf9f7}.checkout-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:70px;align-items:start}.checkout-summary .case-eyebrow{color:#9ed9d5}.checkout-summary h2{color:#f8fcfb}.checkout-lead{max-width:620px;font-size:18px;line-height:1.7;color:#bfd7d5}.order-card{margin-top:34px;padding:26px;border-radius:28px;background:rgba(255,255,255,.07);border:1px solid rgba(191,230,226,.13)}.order-top{display:flex;justify-content:space-between;gap:20px;font:700 10px/1 var(--mono);letter-spacing:.12em;color:#9ed9d5}.order-top strong{font-family:var(--serif);font-size:36px;font-weight:400;color:#ffd9a8;letter-spacing:-.03em}.order-card h3{margin:18px 0 6px;font-family:var(--serif);font-size:36px;font-weight:400}.order-card p{margin:0;color:#b8d0ce}.order-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.order-meta span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.08);font-size:12px;color:#e5f2f1}.checkout-reassurance{display:grid;gap:14px;margin-top:28px}.checkout-reassurance>div{display:grid;grid-template-columns:28px 1fr;gap:12px}.checkout-reassurance span{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f0a44b;color:#163039;font-weight:900}.checkout-reassurance p{margin:0;color:#bdd4d2;line-height:1.45}.checkout-reassurance strong{color:#f4fbfa}
.checkout-panel{padding:30px;border-radius:34px;background:#fffaf2;color:#173039;box-shadow:0 34px 80px rgba(0,0,0,.25)}.checkout-panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid rgba(23,40,45,.10)}.checkout-panel-head span{font:700 10px/1 var(--mono);letter-spacing:.13em;color:#1d6f78}.checkout-panel-head strong{font-family:var(--serif);font-size:36px;font-weight:400;color:#173039}.investigation-form{display:grid;gap:16px;margin-top:24px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field-pair-small{grid-template-columns:.65fr 1.35fr}.investigation-form label{display:grid;gap:8px;font-weight:800;font-size:13px;color:#2b4248}.investigation-form input,.investigation-form select{width:100%;min-height:50px;padding:0 14px;border:1px solid rgba(23,40,45,.14);border-radius:14px;background:white;color:#173039;outline:none}.investigation-form input:focus,.investigation-form select:focus{border-color:#1d6f78;box-shadow:0 0 0 3px rgba(29,111,120,.10)}.form-divider{display:flex;align-items:center;gap:12px;margin:8px 0 0;color:#698084;font:700 9px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase}.form-divider::after{content:"";flex:1;height:1px;background:rgba(23,40,45,.10)}.gift-code-box{margin-top:6px;padding:18px;border-radius:20px;background:#edf4f1;border:1px dashed rgba(29,111,120,.24)}.gift-code-box label small{font-weight:500;color:#6a7c80}.gift-code-box p{margin:8px 0 0;color:#607479;font-size:12px}.consent-line{grid-template-columns:18px 1fr!important;align-items:start!important;gap:10px!important;font-weight:500!important;line-height:1.45}.consent-line input{width:18px;height:18px;min-height:0;margin-top:2px}.consent-line span{color:#53666b!important}.consent-line a{text-decoration:underline}.checkout-button{min-height:58px;margin-top:4px;padding:0 20px;border:0;border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(180deg,#1d6f78,#15545d);color:#f7fffe;font-weight:800;cursor:pointer;box-shadow:0 15px 30px rgba(29,111,120,.18)}.checkout-button strong{font-family:var(--serif);font-size:24px;font-weight:400;color:#ffd9a8}.checkout-button:disabled{opacity:.58;cursor:wait}.checkout-status{min-height:22px;margin:0;text-align:center;font-size:13px}.checkout-status.error{color:#a43d47}.checkout-status.success{color:#1d6f78}.checkout-fineprint{margin:0;text-align:center;color:#748589;font-size:11px;line-height:1.5}.checkout-success{text-align:center;padding:44px 10px 22px}.success-mark{width:66px;height:66px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 22px;background:#dff3ef;color:#176b72;font-size:30px;font-weight:900}.checkout-success h3{font-family:var(--serif);font-size:38px;font-weight:400;margin:0}.checkout-success p{max-width:540px;margin:14px auto 28px;color:#5d7175}.hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.case-final{padding:100px 0;background:#f0a44b;color:#153039}.case-final-inner{text-align:center}.case-final-inner>span{font:800 10px/1 var(--mono);letter-spacing:.14em}.case-final h2{max-width:900px;margin:22px auto 30px}.case-final .case-button-light{background:#153039;color:white}.case-footer{background:#0a171b}
@media(max-width:1024px){.case-hero-grid,.case-story-grid,.checkout-grid{grid-template-columns:1fr}.case-hero-art{min-height:500px}.case-story-grid,.checkout-grid{gap:42px}.case-formats{grid-template-columns:1fr}.case-format{min-height:auto}.case-thread{grid-template-columns:1fr}.no-spoiler-grid{grid-template-columns:1fr}.no-spoiler-number{font-size:120px}}
@media(max-width:820px){.case-nav{position:fixed;top:86px;left:24px;right:24px;display:none;flex-direction:column;align-items:stretch;padding:16px;border-radius:22px;background:#102a30}.case-nav.open{display:flex}.case-hero-grid{min-height:auto;padding-top:58px}.case-hero h1{font-size:clamp(58px,15vw,86px)}.case-hero-art{min-height:430px}.clock-orbit{inset:20px 0 70px}.dossier-slip{width:260px}.case-story-grid{gap:28px}.case-section{padding:82px 0}.case-formats{margin-top:34px}.no-spoiler-number{font-size:90px}.field-pair,.field-pair-small{grid-template-columns:1fr}.checkout-panel{padding:22px}.thread-visual b{display:none}}
@media(max-width:560px){.case-nav-wrap{height:82px}.case-brand img{height:38px}.case-hero{padding-top:82px}.case-hero-grid{padding-top:44px}.case-hook{font-size:21px}.case-intro{font-size:16px}.case-hero-actions{display:grid}.case-button{width:100%}.case-hero-art{min-height:360px}.clock-time{font-size:82px}.clock-caption{display:none}.dossier-slip{left:6px;bottom:0;width:230px;padding:17px}.dossier-slip strong{font-size:25px}.case-seal{top:28px;right:0}.case-hero-line{justify-content:flex-start}.case-section-title h2,.case-section-head h2,.no-spoiler-copy h2,.checkout-summary h2,.case-final h2{font-size:clamp(42px,12vw,58px)}.case-big-copy{font-size:27px}.case-story-copy blockquote{font-size:23px}.case-thread{padding:24px}.thread-copy h3{font-size:34px}.checkout-panel-head strong{font-size:30px}.order-top strong{font-size:30px}}
.investigation-form label:has(input[required], select[required], textarea[required]) > span::after {
  content: " *";
  color: #c94b4b;
}
/* === Final act / 90 minutes === */
.case-finale-act{
  position:relative;
  padding:120px 0 105px;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 12%, rgba(240,164,75,.18), transparent 23%),
    radial-gradient(circle at 12% 80%, rgba(97,207,201,.10), transparent 22%),
    linear-gradient(180deg,#102930 0%, #0a1b20 100%);
  color:#eff9f8;
}
.case-finale-act::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;
  background:repeating-linear-gradient(90deg,transparent 0 79px,rgba(255,255,255,.018) 80px);
}
.finale-act-grid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:72px;align-items:center}
.finale-act-copy .case-eyebrow{color:#9ed9d5}
.finale-time{display:inline-flex;margin:6px 0 22px;padding:10px 14px;border:1px solid rgba(240,164,75,.28);border-radius:999px;background:rgba(240,164,75,.08);color:#ffd59d;font:800 11px/1 var(--mono);letter-spacing:.16em}
.finale-act-copy h2{margin:0;font-family:var(--serif);font-size:clamp(48px,6.3vw,84px);font-weight:400;line-height:.92;letter-spacing:-.055em;color:#f8fcfb}
.finale-act-copy h2 em{display:block;margin-top:12px;color:#f0a44b;font-style:normal}
.finale-lead{max-width:760px;margin:30px 0 0;color:#c6dddb;font-size:20px;line-height:1.72}
.finale-punch{max-width:720px;margin:20px 0 0;padding-left:20px;border-left:3px solid #f0a44b;color:#f5e7cf;font-family:var(--serif);font-size:27px;line-height:1.42}
.finale-act-visual{display:grid;gap:18px}
.finale-clock{position:relative;min-height:310px;border-radius:50%;aspect-ratio:1/1;max-width:390px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 45%,rgba(240,164,75,.13),transparent 46%),rgba(255,255,255,.035);border:1px solid rgba(191,230,226,.14);box-shadow:inset 0 0 0 18px rgba(255,255,255,.018),0 28px 70px rgba(0,0,0,.22)}
.finale-clock::before,.finale-clock::after{content:"";position:absolute;left:50%;top:50%;transform-origin:50% 100%;width:2px;border-radius:4px;background:#f0a44b}
.finale-clock::before{height:105px;transform:translate(-50%,-100%) rotate(18deg)}
.finale-clock::after{height:78px;background:#80d5d0;transform:translate(-50%,-100%) rotate(156deg)}
.finale-clock-small{font:800 9px/1 var(--mono);letter-spacing:.17em;color:#a4d7d4}
.finale-clock strong{margin-top:10px;font-family:var(--serif);font-size:110px;font-weight:400;line-height:.8;color:#fff3df;letter-spacing:-.07em}
.finale-clock b{margin-top:13px;font:800 10px/1 var(--mono);letter-spacing:.22em;color:#f0a44b}
.finale-clock i{position:absolute;width:12px;height:12px;border-radius:50%;background:#f0a44b;box-shadow:0 0 0 7px rgba(240,164,75,.10)}
.finale-pressure{display:grid;gap:10px}
.finale-pressure>div{display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:start;padding:15px 16px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(191,230,226,.09)}
.finale-pressure span{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f0a44b;color:#173039;font:900 10px/1 var(--mono)}
.finale-pressure p{margin:0;color:#bad3d1;line-height:1.42;font-size:14px}
.finale-pressure strong{color:#f6fbfa;font-size:15px}
.finale-act-line{position:relative;margin-top:62px;padding:22px 26px;border-radius:22px;display:flex;align-items:center;gap:18px;background:rgba(255,255,255,.055);border:1px solid rgba(191,230,226,.10);font:800 11px/1.2 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:#a8cfcc}
.finale-act-line b{flex:1;height:1px;background:linear-gradient(90deg,#67c9c5,#f0a44b)}
.finale-act-line strong{color:#ffd59d}

@media(max-width:1024px){.finale-act-grid{grid-template-columns:1fr;gap:48px}.finale-clock{max-width:350px}}
@media(max-width:820px){.case-finale-act{padding:90px 0 80px}.finale-act-line{flex-direction:column;align-items:flex-start}.finale-act-line b{width:100%;flex:none}.finale-lead{font-size:18px}.finale-punch{font-size:24px}}
@media(max-width:560px){.case-finale-act{padding:76px 0 68px}.finale-clock{min-height:280px}.finale-clock strong{font-size:92px}.finale-act-copy h2{font-size:clamp(42px,12vw,58px)}.finale-punch{font-size:22px}}

/* === Sous-site navigation premium v13 === */

.case-header{
  background:linear-gradient(180deg,rgba(7,20,24,.96),rgba(10,27,32,.90));
  border-bottom:1px solid rgba(191,230,226,.10);
  box-shadow:0 14px 34px rgba(3,12,15,.16);
}
.case-nav-wrap{height:96px;gap:22px}
.case-brand-cluster{display:flex;align-items:center;gap:16px;min-width:0}
.case-brand{display:flex;align-items:center;flex:0 0 auto}
.case-brand img{height:42px;width:auto;filter:drop-shadow(0 8px 16px rgba(0,0,0,.22))}
.case-dossier-label{
  position:relative;display:flex;flex-direction:column;gap:5px;min-width:0;padding-left:17px;
  border-left:1px solid rgba(191,230,226,.14)
}
.case-dossier-label span{font:800 8px/1 var(--mono);letter-spacing:.17em;color:#7fc8c4}
.case-dossier-label strong{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f1f8f7;font-family:var(--serif);font-size:16px;font-weight:400;line-height:1}
.case-nav{
  display:flex;align-items:center;gap:4px;padding:7px;
  border-radius:999px;background:rgba(20,53,59,.72);
  border:1px solid rgba(191,230,226,.12);box-shadow:0 12px 28px rgba(0,0,0,.14)
}
.case-nav>a{padding:10px 11px;border-radius:999px;color:#d8e9e7;font-size:12px;font-weight:700;white-space:nowrap;transition:background .18s ease,color .18s ease,transform .18s ease}
.case-nav>a:hover{background:rgba(255,255,255,.07);color:#fff}
.case-nav .case-nav-home{color:#99c2bf}
.case-nav .case-nav-cta{
  display:flex;align-items:center;gap:10px;margin-left:3px;padding:10px 12px 10px 15px;
  background:linear-gradient(180deg,#f1ae58,#e6973a);color:#173039!important;
  box-shadow:0 8px 18px rgba(240,164,75,.17)
}
.case-nav .case-nav-cta:hover{background:linear-gradient(180deg,#f6bb6d,#eba047);transform:translateY(-1px)}
.case-nav-cta strong{padding-left:10px;border-left:1px solid rgba(23,48,57,.18);font-family:var(--serif);font-size:17px;font-weight:400}

@media(max-width:1120px){
  .case-dossier-label strong{max-width:150px}
  .case-nav>a{padding:9px 8px;font-size:11px}
  .case-nav .case-nav-home{display:none}
}
@media(max-width:900px){
  .case-dossier-label{display:none}
}
@media(max-width:820px){
  .case-nav-wrap{height:82px}
  .case-brand img{height:38px}
  .case-nav{
    position:fixed;top:88px;left:20px;right:20px;display:none;flex-direction:column;align-items:stretch;
    gap:4px;padding:12px;border-radius:22px;background:rgba(10,35,40,.98);
    border:1px solid rgba(191,230,226,.14);box-shadow:0 24px 50px rgba(0,0,0,.30)
  }
  .case-nav.open{display:flex}
  .case-nav>a{padding:12px 14px;text-align:left;font-size:13px}
  .case-nav .case-nav-home{display:block}
  .case-nav .case-nav-cta{margin:5px 0 0;justify-content:space-between;padding:12px 14px 12px 16px}
}
/* =========================================================
   AFFAIRE — INTRODUCTION DU SCÉNARIO
   ========================================================= */

.case-story-section {
  position: relative;
  padding: 120px 0 110px;
  overflow: hidden;

  background:
    radial-gradient(
      circle at 8% 12%,
      rgba(29, 111, 120, 0.05),
      transparent 26%
    ),
    #f3f5f2;

  color: #14252b;
}


/* =========================================================
   PREMIÈRE PARTIE
   ========================================================= */

.case-story-opening {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr);
  gap: clamp(50px, 7vw, 90px);
  align-items: start;
}


/* TITRE */

.case-story-title {
  max-width: 690px;
}

.case-story-title .case-eyebrow {
  margin: 0 0 24px;

  font-family: var(--mono);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;

  letter-spacing: .15em;
  text-transform: uppercase;

  color: #1d6f78;
}

.case-story-title h2 {
  margin: 0;

  font-family: var(--serif);
  font-size: clamp(48px, 5.4vw, 78px);
  font-weight: 400;

  line-height: .98;
  letter-spacing: -.052em;

  color: #17292f;
}

.case-story-title h2 em {
  display: block;

  margin-top: 5px;

  font-style: normal;
  color: #1d6f78;
}


/* TEXTE */

.case-story-text {
  padding-top: 46px;
}

.case-story-text p {
  max-width: 590px;

  margin: 0 0 21px;

  font-size: 17px;
  line-height: 1.75;

  color: #56686e;
}

.case-story-text .case-story-lead {
  margin-bottom: 28px;

  font-size: 20px;
  line-height: 1.62;

  color: #293e45;
}


/* =========================================================
   RUPTURE / MENACE
   ========================================================= */

.case-threat-band {
  position: relative;

  margin: 86px 0 72px;
  padding: 46px 0;

  overflow: hidden;

  background:
    radial-gradient(
      circle at 88% -30%,
      rgba(240, 164, 75, .22),
      transparent 36%
    ),
    radial-gradient(
      circle at 4% 120%,
      rgba(86, 188, 181, .10),
      transparent 34%
    ),
    linear-gradient(
      120deg,
      #10272d 0%,
      #14343b 100%
    );
}

.case-threat-band::before {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      90deg,
      rgba(255,255,255,.018),
      transparent 35%,
      rgba(255,255,255,.015)
    );
}

.case-threat-inner {
  position: relative;
  z-index: 1;

  display: grid;
  grid-template-columns: minmax(300px, .72fr) minmax(0, 1.28fr);
  gap: clamp(45px, 7vw, 90px);

  align-items: center;
}


/* HEURES */

.case-threat-hours {
  display: flex;
  align-items: center;
  gap: 19px;

  white-space: nowrap;

  font-family: var(--serif);
  font-size: clamp(42px, 5.1vw, 70px);
  font-weight: 400;

  line-height: .9;
  letter-spacing: -.045em;

  color: #ffd89e;
}

.case-threat-hours i {
  display: block;
  flex: 0 0 34px;

  height: 1px;

  background: rgba(255, 255, 255, .28);
}


/* CITATION */

.case-threat-inner blockquote {
  position: relative;

  max-width: 720px;

  margin: 0;
  padding: 0;

  border: 0;

  font-family: var(--serif);
  font-size: clamp(23px, 2.5vw, 35px);
  font-weight: 400;
  font-style: italic;

  line-height: 1.38;
  letter-spacing: -.02em;

  color: #f4f8f7;
}

.case-threat-inner blockquote::before {
  content: "";

  position: absolute;

  left: -30px;
  top: 4px;
  bottom: 4px;

  width: 2px;

  background: #e8a450;
}


/* =========================================================
   FIN DE L'INTRO
   ========================================================= */

.case-story-ending {
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  gap: clamp(50px, 7vw, 90px);

  align-items: end;
}

.case-story-ending-copy {
  max-width: 520px;

  margin: 0;

  font-size: 18px;
  line-height: 1.72;

  color: #53656b;
}


/* APPEL FINAL */

.case-story-call {
  position: relative;

  padding: 5px 0 5px 34px;

  border-left: 2px solid #e5a653;
}

.case-story-call span {
  display: block;

  margin-bottom: 10px;

  font-size: 15px;
  line-height: 1.5;

  color: #62747a;
}

.case-story-call strong {
  display: block;

  font-family: var(--serif);
  font-size: clamp(38px, 4.2vw, 60px);
  font-weight: 400;

  line-height: .98;
  letter-spacing: -.04em;

  color: #1d6f78;
}


/* =========================================================
   ANIMATION
   ========================================================= */

.case-story-section .reveal {
  opacity: 0;
  transform: translateY(18px);

  transition:
    opacity .7s ease,
    transform .7s ease;
}

.case-story-section .reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.case-story-section .delay-1 {
  transition-delay: .1s;
}


/* =========================================================
   TABLETTE
   ========================================================= */

@media (max-width: 980px) {

  .case-story-section {
    padding: 95px 0 90px;
  }

  .case-story-opening {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .case-story-text {
    padding-top: 0;
  }

  .case-story-text p {
    max-width: 720px;
  }

  .case-threat-inner {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .case-threat-inner blockquote {
    max-width: 760px;

    padding-left: 28px;
  }

  .case-threat-inner blockquote::before {
    left: 0;
  }

  .case-story-ending {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .case-story-ending-copy {
    max-width: 720px;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 680px) {

  .case-story-section {
    padding: 72px 0 70px;
  }

  .case-story-title .case-eyebrow {
    margin-bottom: 18px;
  }

  .case-story-title h2 {
    font-size: clamp(42px, 12vw, 58px);
  }

  .case-story-text .case-story-lead {
    font-size: 18px;
  }

  .case-story-text p {
    font-size: 16px;
    line-height: 1.7;
  }

  .case-threat-band {
    margin: 56px 0;
    padding: 38px 0 42px;
  }

  .case-threat-inner {
    gap: 30px;
  }

  .case-threat-hours {
    gap: 13px;

    font-size: clamp(38px, 12vw, 54px);
  }

  .case-threat-hours i {
    flex-basis: 22px;
  }

  .case-threat-inner blockquote {
    padding-left: 22px;

    font-size: clamp(22px, 6.4vw, 28px);
  }

  .case-story-ending-copy {
    font-size: 16px;
  }

  .case-story-call {
    padding-left: 22px;
  }

  .case-story-call strong {
    font-size: clamp(38px, 11vw, 50px);
  }
}