/* Page stratégique sommeil — extension de l'interface Santé et du langage graphique /math/. */
.sleep-hero{position:relative;overflow:hidden;padding:54px 0 42px;background:radial-gradient(circle at 86% 12%,rgba(255,163,0,.25),transparent 27%),linear-gradient(135deg,#101722 0%,#172539 55%,#30220d 100%);color:#fff}
.sleep-hero:after{content:"";position:absolute;right:-130px;top:-190px;width:430px;height:430px;border:60px solid rgba(255,163,0,.10);border-radius:50%;pointer-events:none}
.sleep-hero-intro{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);gap:34px;align-items:center}
.sleep-hero .health-kicker{color:#ffc559}.sleep-hero h1{max-width:900px;margin:12px 0 15px;color:#fff;font-size:clamp(40px,6vw,70px);line-height:1.02;letter-spacing:-.055em}.sleep-hero-lead{max-width:860px;margin:0;color:#e2e9f3;font-size:clamp(18px,2vw,23px);line-height:1.55}.sleep-hero-answer{max-width:880px;margin:20px 0 0;padding:16px 18px;border-left:4px solid #ffa300;border-radius:0 14px 14px 0;background:rgba(255,255,255,.08);color:#edf3fa;line-height:1.55}.sleep-hero-answer strong{color:#ffc559}
.sleep-hero-visual{overflow:hidden;border:1px solid rgba(255,195,81,.30);border-radius:24px;background:#080b10;box-shadow:0 25px 60px rgba(0,0,0,.32)}.sleep-hero-visual img{display:block;width:100%;height:auto}.sleep-visual-copy{padding:16px 18px;color:#d5deea;font-size:13px}.sleep-visual-copy strong{display:block;margin-bottom:3px;color:#ffc559;font-size:15px}
.sleep-calculator-shell{position:relative;z-index:2;margin-top:34px}.sleep-calculator{padding:0!important;border:1px solid #ffc760;border-radius:26px;background:#fff;color:#17243a;box-shadow:0 28px 70px rgba(0,0,0,.28)}.sleep-calculator-inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:0}.sleep-calc-form{padding:clamp(24px,4vw,40px);border-right:1px solid #eadfca}.sleep-calc-result{display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,4vw,40px);background:linear-gradient(145deg,#fff9ed,#fff)}.sleep-calc-heading h2{margin:7px 0 6px;font-size:clamp(25px,3vw,36px);line-height:1.16;letter-spacing:-.035em}.sleep-calc-heading p{margin:0;color:#5d6877}
.sleep-mode-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:22px 0 18px;padding:5px;border-radius:14px;background:#eef1f5}.sleep-mode-tabs label{position:relative}.sleep-mode-tabs input{position:absolute;opacity:0;pointer-events:none}.sleep-mode-tabs span{display:flex;height:100%;align-items:center;justify-content:center;padding:11px 8px;border:1px solid transparent;border-radius:10px;color:#4d5a6d;font-size:13px;font-weight:850;text-align:center;cursor:pointer}.sleep-mode-tabs input:checked+span{border-color:#ffc964;background:#fff;color:#784600;box-shadow:0 5px 12px rgba(26,33,47,.08)}.sleep-mode-tabs input:focus-visible+span{outline:3px solid rgba(255,163,0,.35);outline-offset:2px}
.sleep-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sleep-field{display:flex;flex-direction:column;gap:6px}.sleep-field-wide{grid-column:1/-1}.sleep-field label,.sleep-field>span{color:#29394e;font-size:13px;font-weight:850}.sleep-field small{color:#717b89;font-size:12px;line-height:1.4}.sleep-field input,.sleep-field select{width:100%;min-height:49px;padding:10px 12px;border:1px solid #bfc9d6;border-radius:11px;background:#fff;color:#17243a;font:inherit}.sleep-field input:focus,.sleep-field select:focus{border-color:#ffa300;outline:none;box-shadow:0 0 0 4px rgba(255,163,0,.15)}
.sleep-time-shortcuts{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.sleep-time-shortcuts button{padding:6px 9px;border:1px solid #e3c78f;border-radius:99px;background:#fffaf0;color:#724700;font-size:12px;font-weight:800;cursor:pointer}.sleep-time-shortcuts button:hover{border-color:#ffa300;background:#fff1ce}
.sleep-advanced{margin-top:14px;border:1px solid #e1e5eb;border-radius:12px;background:#fbfcfd}.sleep-advanced summary{padding:12px 14px;color:#38475b;font-size:13px;font-weight:850;cursor:pointer}.sleep-advanced-inner{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:0 14px 14px}.sleep-duration-mode .sleep-advanced-inner{grid-template-columns:1fr}.sleep-submit{width:100%;margin-top:17px;padding:14px 18px;border:0;border-radius:12px;background:#ffa300;color:#16120b;font-size:16px;font-weight:900;cursor:pointer;box-shadow:0 10px 22px rgba(255,163,0,.25)}.sleep-submit:hover{background:#f09400}.sleep-now-action{display:block;margin:12px auto 0;padding:7px 10px;border:0;background:transparent;color:#724700;font-size:13px;font-weight:850;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.sleep-privacy{margin:8px 0 0;color:#6d7785;font-size:12px;text-align:center}
.sleep-calc-result .health-result{margin:0;padding:0;border:0;background:transparent}.sleep-calc-result .health-result-primary{font-size:clamp(29px,4vw,48px)}.sleep-calc-result .health-result-grid{grid-template-columns:1fr}.sleep-calc-result .health-result-item{border-color:#f0d59e;background:#fff}.sleep-result-help{margin:0 0 16px;padding:11px 13px;border-radius:11px;background:#172539;color:#e6edf5;font-size:13px}.sleep-result-help strong{color:#ffc559}.sleep-copy-result{align-self:flex-start;margin-top:16px;padding:9px 12px;border:1px solid #d6b46f;border-radius:9px;background:#fffaf0;color:#724700;font-size:13px;font-weight:850;cursor:pointer}.sleep-copy-result:hover{border-color:#ffa300;background:#fff3d5}
.sleep-main{padding-bottom:56px}.sleep-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:28px;align-items:start;padding-top:38px}.sleep-primary{display:grid;gap:24px;min-width:0}.sleep-section{padding:clamp(24px,4vw,42px);border:1px solid #e3e6ee;border-radius:24px;background:#fff;box-shadow:0 10px 30px rgba(20,36,55,.055)}.sleep-section h2{margin:7px 0 10px;color:#14253a;font-size:clamp(27px,3vw,39px);line-height:1.15;letter-spacing:-.035em}.sleep-section h3{color:#21334a}.sleep-section p,.sleep-section li{color:#4e5d71}.sleep-answer-box{padding:18px;border-left:4px solid #ffa300;border-radius:0 14px 14px 0;background:#fff7e7}.sleep-answer-box p{margin:0;color:#3c4b60;font-size:17px}.sleep-answer-box strong{color:#754500}
.sleep-table-wrap{overflow-x:auto;margin-top:20px}.sleep-table{width:100%;border-collapse:collapse;font-size:14px}.sleep-table th,.sleep-table td{padding:11px 12px;border-bottom:1px solid #e5e8ed;text-align:left;vertical-align:top}.sleep-table th{background:#fff4da;color:#654000;font-weight:850}.sleep-table tbody tr:hover{background:#fffdf8}.sleep-table caption{margin-bottom:10px;color:#526174;font-weight:750;text-align:left}.sleep-table-note{margin:12px 0 0;color:#687486!important;font-size:13px}
.sleep-key-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.sleep-key-card{padding:17px;border:1px solid #e1e5eb;border-radius:15px;background:#fffdfa}.sleep-key-card strong{display:block;color:#754500;font-size:18px}.sleep-key-card p{margin:5px 0 0;font-size:14px}.sleep-formula{display:block;margin:16px 0;padding:14px 16px;border-radius:12px;background:#172539;color:#fff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:800}.sleep-formula em{color:#ffc559;font-style:normal}
.sleep-cycle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.sleep-cycle-card{padding:16px;border-top:4px solid #ffa300;border-radius:12px;background:#f7f8fa}.sleep-cycle-card span{color:#754500;font-size:12px;font-weight:900;text-transform:uppercase}.sleep-cycle-card h3{margin:6px 0;font-size:18px}.sleep-cycle-card p{margin:0;font-size:13px}
.sleep-warning{border-color:#edcfcf;background:#fffafa}.sleep-warning .health-eyebrow{color:#8f2929}.sleep-warning .health-eyebrow:before{background:#b83a3a}.sleep-alert-list{display:grid;gap:9px;margin:16px 0 0;padding-left:20px}.sleep-alert-list strong{color:#7e2828}
.sleep-sources{display:grid;gap:12px;margin:18px 0 0;padding:0;list-style:none}.sleep-sources li{padding:14px 15px;border:1px solid #e2e6eb;border-radius:12px;background:#fbfcfd}.sleep-sources a{font-weight:850;text-decoration:underline;text-underline-offset:3px}.sleep-sources span{display:block;margin-top:3px;color:#6a7585;font-size:12px}.sleep-faq{display:grid;gap:10px}.sleep-faq details{border:1px solid #e1e5eb;border-radius:13px;background:#fff}.sleep-faq summary{padding:15px 17px;color:#21354c;font-weight:850;cursor:pointer}.sleep-faq p{margin:0;padding:0 17px 17px}.sleep-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sleep-related a{display:flex;flex-direction:column;min-height:125px;padding:15px;border:1px solid #e2e6eb;border-radius:13px;background:#fffdfa}.sleep-related a:hover{border-color:#ffa300;text-decoration:none}.sleep-related strong{color:#203149}.sleep-related span{margin-top:5px;color:#697587;font-size:13px}
.sleep-sidebar{position:sticky;top:92px;display:grid;gap:15px}.sleep-sidebar section{padding:20px;border:1px solid #e2e6eb;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(20,36,55,.05)}.sleep-sidebar h2{margin:0 0 9px;color:#203149;font-size:18px}.sleep-sidebar p{margin:0;color:#5b6879;font-size:14px}.sleep-editorial{display:grid;gap:9px;margin-top:12px}.sleep-editorial div{display:flex;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid #edf0f3;font-size:12px}.sleep-editorial span{color:#748092}.sleep-editorial strong{color:#26384d;text-align:right}.sleep-side-cta{display:inline-flex;margin-top:12px;padding:9px 11px;border-radius:9px;background:#ffa300;color:#1c1710!important;font-weight:850;text-decoration:none}.sleep-ad{min-height:120px;margin:0}.sleep-change-log{margin-top:18px;padding-top:16px;border-top:1px solid #e3e6eb;color:#687486;font-size:13px}
.sleep-dossier-hero{padding-bottom:54px}.sleep-dossier-cta{display:inline-flex;margin-top:22px;padding:12px 16px;border-radius:11px;background:#ffa300;color:#17130d!important;font-weight:900;text-decoration:none}.sleep-dossier-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.sleep-dossier-cards article{padding:17px;border:1px solid #e2e6eb;border-radius:14px;background:#fffdfa}.sleep-dossier-cards strong{display:block;color:#754500;font-size:21px}.sleep-dossier-cards span{color:#647083;font-size:13px}.sleep-myth{padding:19px;border:1px solid #f0cf91;border-radius:15px;background:#fff7e7}.sleep-myth strong{color:#754500}
@media(max-width:1050px){.sleep-hero-intro,.sleep-calculator-inner,.sleep-layout{grid-template-columns:1fr}.sleep-calc-form{border-right:0;border-bottom:1px solid #eadfca}.sleep-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sleep-hero{padding-top:42px}.sleep-hero-intro{gap:24px}.sleep-hero h1{font-size:41px}.sleep-calculator-shell{margin-top:24px}.sleep-fields,.sleep-advanced-inner{grid-template-columns:1fr}.sleep-field-wide{grid-column:auto}.sleep-mode-tabs{grid-template-columns:1fr}.sleep-key-grid,.sleep-related,.sleep-dossier-cards{grid-template-columns:1fr}.sleep-cycle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sleep-sidebar{grid-template-columns:1fr}.sleep-layout{padding-top:20px}.sleep-section{padding:22px;border-radius:18px}.sleep-table{min-width:620px}}
@media(max-width:450px){.sleep-cycle-grid{grid-template-columns:1fr}.sleep-calc-form,.sleep-calc-result{padding:20px}.sleep-hero-visual{border-radius:18px}}
