@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#29352f;--red:#832c30;--paper:#fbf8f2;--soft:#eeeae1;--line:#dad8cf;--muted:#646960}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 'DM Sans',Arial,sans-serif}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}button,input,select{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #c08c39;outline-offset:5px}.site-header{min-height:94px;padding:16px 5%;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}.logo img{width:152px;max-height:65px;object-fit:contain;mix-blend-mode:multiply}.site-header nav{display:flex;gap:32px;font-size:13px}.site-header nav a{text-decoration:none}.container{width:min(1180px,88%);margin:auto}.section{padding-top:85px;padding-bottom:85px}.hero{padding-top:70px;padding-bottom:70px;display:grid;grid-template-columns:1.2fr 1fr;gap:75px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.9px;color:var(--red);margin:0 0 20px}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.16;margin:0 0 24px}h1{font-size:clamp(48px,5.2vw,73px);letter-spacing:-2.6px}h2{font-size:clamp(34px,3.5vw,47px);letter-spacing:-1.4px}h3{font-size:27px;letter-spacing:-.4px}em{color:var(--red);font-weight:500}p{margin:0 0 23px}.hero-statement{font-size:21px;line-height:1.55;max-width:560px}.lead{color:var(--muted);max-width:550px}.hero-photo{margin:0;position:relative}.hero-photo img{width:100%;height:560px;object-fit:cover;border-radius:120px 5px 5px 5px}.hero-photo figcaption{background:white;padding:12px 23px;position:absolute;bottom:25px;left:-20px;font-family:Georgia;font-style:italic;font-size:18px;box-shadow:0 6px 25px #00000010}.btn{background:var(--red);color:white;border:0;border-radius:4px;display:inline-flex;gap:22px;justify-content:center;align-items:center;text-decoration:none;padding:14px 22px;font-weight:600;font-size:13px;line-height:1.6;cursor:pointer}.btn:hover{background:#652126}.btn.small{font-size:11px;padding:10px 16px}.btn span{flex-shrink:0}.text-link{color:var(--red);font-size:13px;font-weight:600;display:inline-block}.micro{font-size:12px;color:var(--muted);margin-top:15px;line-height:1.6}.band{display:grid;grid-template-columns:repeat(3,1fr);padding:28px 6%;gap:30px;background:#e9eade;border-block:1px solid #d6dacd}.band div{border-left:1px solid #b9c0ad;padding-left:25px}.band b{font-size:14px}.band span{display:block;font-size:12px;color:var(--muted)}.section-intro{max-width:790px;margin-bottom:38px}.section-intro>p:last-child{color:var(--muted);max-width:700px}.phases{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;padding:0;margin:40px 0;gap:24px}.phases li{padding-top:18px;border-top:1px solid #b8bfad}.phases li>span{display:block;color:var(--red);font-size:11px;margin-bottom:20px}.phases h3{font-size:23px;margin-bottom:13px}.phases p{font-size:13px;color:var(--muted);margin-bottom:14px}.phases small{font-size:10px;color:var(--red)}.pace{padding:25px 30px;background:#efede5;border-left:2px solid #a4ae94}.pace b{font:23px/1.4 Georgia}.pace p{font-size:13px;color:var(--muted);margin:12px 0 0;max-width:950px}.sample{background:#e6e9dd;padding:70px 0 0}.sample-head{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;padding-bottom:45px}.sample-head p{max-width:600px}.cover{border-radius:5px;box-shadow:0 13px 30px #21332815}.tag-row{display:flex;flex-wrap:wrap;gap:8px}.tag-row span{font-size:10px;padding:4px 9px;border:1px solid #bbc4ae;border-radius:20px}.sample-nav{border-top:1px solid #c6ceba;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:20px 0;font-size:12px}.sample-nav a{text-decoration:none}.resource-row{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.resource-copy p{color:var(--muted)}.resource-copy .eyebrow{color:var(--red)}.teacher{border-left:2px solid #b4bfa3;padding:4px 0 4px 18px;font-size:13px;line-height:1.8}.teacher b{color:var(--ink)}.vocab-preview{padding:45px 20px;background:#eef0e5;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;text-align:center;border-radius:8px}.vocab-preview img{width:100%;height:160px;object-fit:contain;mix-blend-mode:multiply}.vocab-preview p{grid-column:1/-1;font:italic 22px Georgia;margin:25px 0 10px}.vocab-preview span{grid-column:1/-1;font-size:12px;color:var(--muted)}.soft{background:#f0ece4}figure{margin:0}figure>img{width:100%;border-radius:6px}figcaption{font-size:11px;color:var(--muted);margin-top:13px}.portrait{max-width:440px;margin:auto;width:100%}.portrait img{max-height:560px;object-fit:cover}.download-list{margin:20px 0 25px;border-top:1px solid #d4d2c6}.download-list a{padding:12px 0;border-bottom:1px solid #d4d2c6;display:flex;justify-content:space-between;font-size:13px;text-decoration:none}.duo{display:grid;grid-template-columns:1fr 1fr;gap:35px}.photo-card{background:#fff;border:1px solid #e0ddd2;border-radius:7px;overflow:hidden}.photo-card>img{width:100%;height:355px;object-fit:cover;object-position:center 35%}.photo-card>div{padding:30px}.photo-card h3{font-size:27px}.photo-card p:not(.eyebrow){font-size:14px;color:var(--muted)}.photo-card .eyebrow{font-size:9px;letter-spacing:1.5px}.photo-card.workbook>img{object-fit:contain;background:#fff;object-position:center}.callout{padding:24px 30px;background:#e9ecdf;margin-top:30px}.callout b{font:italic 23px Georgia}.callout p{font-size:13px;color:var(--muted);margin:12px 0 0}.checks{list-style:none;padding:0;font-size:14px;margin:22px 0}.checks li{padding:8px 0;border-bottom:1px solid #dedace}.checks li:before{content:'✓';color:var(--red);margin-right:12px}.closing{text-align:center;max-width:950px}.closing>p:not(.eyebrow){color:var(--muted);max-width:650px;margin:20px auto 30px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.closing .actions{justify-content:center}footer{padding:35px 6%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:11px}footer p{margin:0;color:var(--muted)}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:15px;z-index:9}.module-heading{max-width:1000px}.module-downloads{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.module-downloads a{padding:25px;background:#e9ecdf;border:1px solid #d1d7c6;text-decoration:none;border-radius:4px}.module-downloads b{font:22px Georgia;display:block}.module-downloads span{font-size:12px;color:var(--muted)}.word-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;margin:30px 0}.word{background:white;border:1px solid var(--line);padding:15px 8px;cursor:pointer;border-radius:5px;color:var(--ink)}.word img{height:120px;width:100%;object-fit:contain}.word span{display:block;font-size:12px;margin-top:8px}.word small{font-size:10px;color:var(--red)}.vocab-links{gap:15px}.audio-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.audio-grid article{padding:25px;background:white;border:1px solid var(--line);border-radius:4px}.audio-grid h3{font-size:22px}audio{width:100%;margin:12px 0 20px}.module-detail{border-top:1px solid var(--line)}.module-detail:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;gap:20px;align-items:center;font-size:17px}summary::-webkit-details-marker{display:none}summary>span{color:var(--red);font-size:12px}summary>b{margin-left:auto;font-weight:400;font-size:24px}details[open] summary>b{transform:rotate(45deg)}.module-detail>div{padding:10px 0 30px}.module-detail>div>img{border:1px solid var(--line);border-radius:4px;width:100%}.teacher-content{max-width:950px;margin:25px auto;font-size:14px;color:var(--muted)}.teacher-content h6{font:24px Georgia;color:var(--ink);margin:20px 0}.teacher-content p{margin-bottom:15px}.exercise-header{max-width:1000px;padding-bottom:40px}.exercise-layout{display:grid;grid-template-columns:220px 1fr;gap:45px;padding-bottom:80px}.exercise-layout aside h2{font-size:24px}.exercise-layout aside nav{display:flex;flex-direction:column;gap:8px}.activity-button{border:1px solid var(--line);padding:10px;text-align:left;color:var(--ink);background:transparent;border-radius:4px;font-size:12px;cursor:pointer}.activity-button[aria-current=true]{background:var(--ink);color:white}.activity-button small{display:block;font-size:10px;opacity:.7}.exercise-form{background:white;padding:30px;border:1px solid var(--line);border-radius:7px;margin-bottom:25px}.exercise-form h2{font-size:30px}.exercise-form .reminder{background:#eef0e7;padding:15px;font-size:13px}.question{padding:18px 0;border-top:1px solid #ebe8df}.question label{font-size:15px;line-height:2.5}.question select{border:1px solid #b5bcae;border-radius:4px;padding:5px 8px;background:white;max-width:155px;margin:0 5px;color:var(--ink)}.feedback{font-size:12px;margin:8px 0 0;color:#506548}.feedback.bad{color:#8e2b30}.question.correct select{border-color:#4f7255}.question.incorrect select{border-color:#a2494c}.result{margin:20px 0;font-weight:600}.exercise-form .actions{margin-top:20px}.btn.secondary{background:#e9ecdf;color:var(--ink)}
@media(min-width:1500px){.hero-photo img{height:620px}}@media(max-width:1000px){.container{width:89%}.hero{gap:35px}.hero-photo img{height:480px}.resource-row{gap:40px}.phases{gap:15px}.phases h3{font-size:20px}.sample-head{gap:35px}.btn{font-size:12px}.word-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.site-header{padding:15px 5%;min-height:80px;gap:15px}.logo img{width:120px}.site-header nav{display:none}.btn.small{font-size:10px;padding:9px 12px;gap:10px}.container{width:88%}.hero{grid-template-columns:1fr;padding-top:45px;padding-bottom:45px;gap:35px}.hero h1{font-size:53px}.hero-statement{font-size:19px}.hero-photo{max-width:440px;margin:auto;width:100%}.hero-photo img{height:400px;border-radius:70px 5px 5px 5px}.hero-photo figcaption{left:-8px;font-size:16px}.band{grid-template-columns:1fr;gap:18px;padding:25px 6%}.section{padding-top:50px;padding-bottom:50px}.phases{grid-template-columns:1fr;margin:30px 0;gap:16px}.phases li{display:grid;grid-template-columns:35px 1fr;gap:0 12px;padding-top:17px}.phases li>span{grid-row:1/4;margin:0}.phases h3{font-size:24px;margin:0 0 8px}.phases p{margin:0 0 6px}.phases small{grid-column:2}.pace{padding:22px}.pace b{font-size:21px}.sample{padding-top:45px}.sample-head{grid-template-columns:1fr;gap:30px}.sample-nav{justify-content:flex-start;gap:15px;font-size:11px}.resource-row{grid-template-columns:1fr;gap:30px}.resource-row.reverse>figure{order:2}.vocab-preview img{height:110px}.duo{grid-template-columns:1fr;gap:25px}.photo-card>img{height:340px}.photo-card>div{padding:25px}.portrait{max-width:390px}.portrait img{max-height:500px}.actions{gap:20px}.closing h2{font-size:34px}footer{flex-direction:column;padding:30px 6%;gap:12px}.module-downloads{grid-template-columns:1fr;gap:12px}.module-downloads a{padding:20px}.audio-grid{grid-template-columns:1fr}.word-grid{grid-template-columns:repeat(2,1fr)}.word img{height:105px}.exercise-layout{grid-template-columns:1fr;gap:25px}.exercise-layout aside nav{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.activity-button{font-size:11px;padding:8px}.exercise-form{padding:20px}.question label{font-size:14px}.question select{max-width:130px}summary{font-size:15px;gap:14px}.module-heading h1{font-size:43px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Afficher les photos en entier, sans couper les appareils. */
.photo-card>img{height:420px;object-fit:contain;object-position:center;background:#f4f1eb;padding:12px}
.photo-card.workbook>img{object-fit:contain;background:#fff}
.portrait img{height:auto;max-height:none;object-fit:contain}
.hero-photo img{object-fit:contain;background:#eeeae1}
@media(max-width:700px){.photo-card>img{height:auto;max-height:440px;object-fit:contain;padding:10px}.portrait img{height:auto;max-height:none}.hero-photo img{height:auto;object-fit:contain}}
/* L’offre gratuite et les cinq étapes sont les repères principaux. */
.hero .eyebrow{font-size:12px;letter-spacing:1.3px;line-height:1.7}
.stage-label{display:flex;align-items:center;gap:18px;color:var(--red)!important;margin:0 0 27px;padding-bottom:18px;border-bottom:2px solid #cbb6a5}
.stage-number{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:62px;height:62px;border-radius:50%;background:var(--red);color:white;font-size:24px;font-weight:700;letter-spacing:0;line-height:1}
.stage-name{font-size:20px;font-weight:700;letter-spacing:1.1px;line-height:1.4}
.phases li>span{font-size:28px;font-weight:700;line-height:1.2;margin-bottom:20px}
.phases h3{font-size:26px}
.sample-head>.eyebrow,.sample-head .eyebrow{font-size:12px;line-height:1.6}
@media(max-width:700px){.hero h1{font-size:46px}.hero .eyebrow{font-size:11px}.stage-label{gap:13px;margin-bottom:24px;padding-bottom:16px}.stage-number{width:50px;height:50px;font-size:21px}.stage-name{font-size:17px;letter-spacing:.65px}.phases li{grid-template-columns:43px 1fr}.phases li>span{font-size:25px;margin:0}.phases h3{font-size:25px}}

/* Les nouveaux portables gardent leur format photo horizontal. */
.photo-card>img[src$="-laptop.webp"]{height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain;padding:0}
.hero-photo>img[src$="-laptop.webp"]{height:auto;max-height:none;aspect-ratio:3/2;object-fit:contain;border-radius:45px 5px 5px 5px}
.hero-photo:has(>img[src$="-laptop.webp"]) figcaption{position:static;display:inline-block;margin:12px 0 0;padding:0;background:none;box-shadow:none;font-size:16px}

/* Bilingual discovery page navigation. */
.header-actions{display:flex;align-items:center;gap:20px}.language-switch{display:flex;align-items:center;gap:8px;font-size:12px;white-space:nowrap}.language-switch a{padding:5px 2px;text-decoration:none;color:var(--muted)}.language-switch a[aria-current="page"]{font-weight:700;color:var(--red);text-decoration:underline;text-underline-offset:5px}.language-note{font-size:12px;color:var(--muted);border-left:2px solid #a4ae94;padding-left:12px}html[lang="en"] .hero h1{font-size:clamp(44px,4.8vw,66px)}
@media(max-width:850px){.site-header>nav{gap:16px}.site-header{gap:15px}.header-actions{gap:12px}}
@media(max-width:700px){.header-actions{gap:12px}.language-switch{font-size:11px;gap:5px}.logo img{width:105px}.site-header{padding-inline:4%;gap:10px}.site-header .btn.small{font-size:10px;padding:9px 10px;gap:8px}html[lang="en"] .hero h1{font-size:43px}}
@media(max-width:370px){.site-header .btn.small span{display:none}.header-actions{gap:8px}.logo img{width:93px}}
