:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#10263f;background:#f4f7f8}*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:20;background:white;padding:12px}.top{height:76px;display:flex;align-items:center;gap:30px;padding:0 max(24px,calc((100vw - 1240px)/2));background:#fff;border-bottom:1px solid #dfe7e9;position:sticky;top:0;z-index:10}.brand{text-decoration:none;font-weight:800;font-size:23px;display:flex;align-items:center;gap:10px;white-space:nowrap;line-height:1}.brand small{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#6f8493;margin-top:6px}.brandmark{background:#10263f;color:#efc78e;border-radius:12px;width:38px;height:38px;display:grid;place-items:center;font-size:23px}nav{display:flex;gap:3px;align-items:center;overflow-x:auto;white-space:nowrap}nav a{text-decoration:none;font-size:13px;font-weight:650;color:#526b7c;padding:10px 11px;border-radius:9px}nav a:hover,nav a.active{background:#eaf2f2;color:#0d595b}.menu{display:none}main{max-width:1240px;margin:auto;padding:26px 24px 70px}.hero{display:grid;grid-template-columns:1fr 340px;background:#10263f;border-radius:22px;overflow:hidden;min-height:175px;color:white}.hero-copy{padding:28px 34px}.eyebrow{color:#e8bd82;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.16em}.hero h1{font-size:clamp(26px,3vw,38px);line-height:1.1;letter-spacing:-.035em;margin:9px 0}.hero p{color:#d6e2e8;margin:0;max-width:650px;line-height:1.5;font-size:14px}.hero img{width:100%;height:100%;object-fit:cover;object-position:55% 55%}.layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:22px;margin-top:24px}.panel,.aside,.card,.empty,.notice{background:white;border:1px solid #e0e8e9;border-radius:16px;box-shadow:0 5px 22px #0d274009}.panel{padding:26px}.aside{padding:21px;align-self:start}.aside h3{margin:0 0 10px;font-size:16px}.aside p,.muted{color:#607585;font-size:13px;line-height:1.5}.aside a{display:block;margin:10px 0;color:#0a6265;font-size:13px;font-weight:700}.sectiontitle{font-size:22px;letter-spacing:-.03em;margin:0 0 7px}.lead{color:#617788;font-size:14px;margin:0 0 22px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.action{border:1px solid #dfe8e9;background:white;border-radius:15px;text-align:left;padding:19px;text-decoration:none;transition:transform .2s,box-shadow .2s}.action:hover{transform:translateY(-2px);box-shadow:0 12px 25px #09294017}.action b{display:block;margin:9px 0 4px}.action span{color:#617788;font-size:13px;line-height:1.4}.icon{font-size:23px}.filters,.formgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.formgrid.two{grid-template-columns:repeat(2,1fr)}label{display:block;font-size:12px;color:#355163;font-weight:750;margin-bottom:6px}input,select,textarea{width:100%;border:1px solid #cad9dc;border-radius:10px;background:#fff;padding:11px 12px;color:#10263f;min-height:43px}textarea{min-height:85px;resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid #d4a863;outline-offset:2px}.field{margin-bottom:14px}.primary,.secondary,.danger{border:0;border-radius:10px;padding:11px 16px;font-weight:800;font-size:13px;min-height:43px}.primary{background:#0a6668;color:white}.primary:hover{background:#074f51}.secondary{background:#e9f2f2;color:#0b5d60}.danger{background:#fce9e7;color:#a3483b}.form-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:8px}.results{display:grid;gap:12px;margin-top:20px}.card{padding:19px;display:flex;justify-content:space-between;gap:16px;align-items:center}.card h3{margin:0 0 7px;font-size:17px}.card p{margin:3px 0;color:#617788;font-size:13px}.card .meta{color:#0a6668;font-weight:750}.tag{display:inline-block;background:#edf4f3;color:#176469;border-radius:20px;padding:5px 9px;font-size:11px;font-weight:750;margin:2px 4px 2px 0}.tag.gold{background:#fff3df;color:#986417}.card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.card-actions a{text-decoration:none}.empty,.notice{padding:19px;color:#526a79;font-size:14px;line-height:1.5}.notice{background:#f6fbfa;border-color:#cfe4e2}.notice strong{color:#154f51}.subtle{font-size:12px;color:#718595}.switches{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.switches label{display:flex;gap:6px;align-items:center;margin:0}.switches input{width:auto;min-height:0}.linkrow{display:flex;gap:9px;flex-wrap:wrap;margin-top:11px}.linkrow a{display:inline-flex;padding:10px 13px;border:1px solid #cbdcde;border-radius:9px;text-decoration:none;font-size:13px;font-weight:800;color:#0a6265}.message-list{max-height:220px;overflow:auto;background:#f5f8f8;border-radius:12px;padding:13px;margin-bottom:13px}.bubble{padding:9px 12px;border-radius:11px;background:white;margin:7px 0;max-width:85%;font-size:13px}.bubble.me{margin-left:auto;background:#dff0ed}.divider{border:0;border-top:1px solid #e3eaec;margin:22px 0}footer{border-top:1px solid #e0e8e9;padding:22px 24px;color:#7b8c99;display:flex;justify-content:space-between;font-size:12px;max-width:1240px;margin:auto}.career-name{font-weight:800}.tiny{font-size:11px;color:#728999}@media(max-width:980px){.top{height:auto;min-height:68px;display:block;padding:15px 20px}.brand{display:inline-flex}.menu{display:block;float:right;background:#eaf2f2;border:0;border-radius:8px;padding:9px 13px;color:#0b5c60;font-weight:750}nav{display:none;white-space:normal;flex-wrap:wrap;padding-top:15px}nav.open{display:flex}.layout{grid-template-columns:1fr}.aside{order:2}.hero{grid-template-columns:1fr 35%}}@media(max-width:650px){main{padding:14px 14px 50px}.hero{display:block}.hero-copy{padding:22px}.hero img{height:110px;display:block;object-position:50% 53%}.grid,.filters,.formgrid,.formgrid.two{grid-template-columns:1fr}.panel{padding:19px}.card{display:block}.card-actions{justify-content:flex-start;margin-top:12px}footer{display:block}footer span{display:block;margin:5px 0}}

.hero img{min-height:0}.reference-section a{overflow-wrap:anywhere}.reference-section .card>div{min-width:0}.reference-section .card>.secondary{flex-shrink:0}.card h3{overflow-wrap:anywhere}@media(max-width:650px){.hero img{height:155px;object-position:50% 35%}.reference-section .card>.secondary{display:inline-block;margin-top:12px}}

button:disabled{opacity:.45;cursor:default}.hero img{max-height:230px;align-self:stretch}.filters>div,.formgrid>.field{min-width:0}.card>.secondary{display:inline-block}.hero-copy{min-width:0}.reference-section .lead{line-height:1.6}@media(max-width:650px){.card>.secondary{margin-top:12px}.hero img{max-height:155px}}

.card a.secondary{display:inline-block;margin-top:8px}.card p.tiny{font-size:11px;line-height:1.5}.card>div{min-width:0}

.hero[data-page="collegues"] img,.hero[data-page="profil"] img,.hero[data-page="messages"] img{object-position:50% 0%}

.sources-page .card{margin:14px 0}.sources-page .panel p{line-height:1.6}

.savingCorrection input{max-width:220px}.savingCorrection>div{flex:1}.panel details p{line-height:1.6}.panel>a.secondary{display:inline-block;margin:10px 0}

#suggestionSection,#economiesSection{scroll-margin-top:90px}

@media(min-width:981px) and (max-width:1350px){.top{gap:18px}nav a{padding:10px 7px;font-size:12px}}

/* Contextual housing image with the existing general aviation illustration retained. */
.hero .aviation-detail{display:flex;align-items:center;gap:12px;margin-top:17px;max-width:360px;color:#d6e2e8;font-size:12px;line-height:1.4}
.hero .aviation-detail img{width:100px;height:58px;min-width:100px;object-fit:cover;object-position:center;border-radius:8px}
.hero[data-page="logements"]>img{max-height:none;object-position:50% 55%}
@media(min-width:981px){.hero{grid-template-columns:minmax(0,1fr) 42%}}
@media(max-width:650px){.hero[data-page="logements"]>img{height:180px;max-height:180px}.hero .aviation-detail img{height:58px}}

.home-language{display:flex;gap:12px;align-items:center;justify-content:flex-end;margin-bottom:18px}.home-language label{margin:0}.home-language select{width:auto}.hero[data-page="accueil"]{grid-template-columns:minmax(0,38%) minmax(0,62%)}.hero[data-page="accueil"]>img{height:auto;max-height:none;aspect-ratio:1.5;object-fit:contain}.hero[data-page="accueil"] .hero-copy{align-self:center}.hero[data-page="accueil"] h1{font-size:clamp(28px,3vw,40px)}
@media(max-width:650px){.hero[data-page="accueil"]{display:block}.hero[data-page="accueil"]>img{height:auto;max-height:none}.home-language{justify-content:flex-start;flex-wrap:wrap}}

/* Compact home: retain the whole satellite image and expose the main choices. */
@media(min-width:981px){.hero[data-page="accueil"]{grid-template-columns:minmax(0,1fr) 38%;height:180px;min-height:180px}.hero[data-page="accueil"]>img{height:180px;max-height:180px;aspect-ratio:auto;object-fit:contain}.hero[data-page="accueil"] .hero-copy{padding:18px 26px}.hero[data-page="accueil"] h1{font-size:32px}.airshow+.layout{margin-top:12px}.airshow+.layout .panel{padding:20px}.airshow+.layout .home-language{float:right;margin:0 0 8px 12px;gap:7px;font-size:11px}.airshow+.layout .home-language select{min-height:32px;padding:5px 8px}.airshow+.layout .home-language label{font-size:11px}.airshow+.layout .lead{max-width:90%;margin-bottom:16px}.airshow+.layout .grid{clear:both}.airshow+.layout .action{padding:14px}}
@media(min-width:651px) and (max-width:980px){.hero[data-page="accueil"]{grid-template-columns:minmax(0,1fr) 42%}.hero[data-page="accueil"]>img{height:200px;max-height:200px;aspect-ratio:auto;object-fit:contain}}

.text-hero{display:block;min-height:0;height:auto}.member-photo{max-width:220px;max-height:160px;object-fit:contain;border-radius:12px}.housing-actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.trust-form{padding:14px;border:1px solid #dbe3e6;border-radius:12px;margin:12px 0}footer{flex-wrap:wrap}footer p{margin:0;flex-basis:100%}.estimate{padding:14px;background:#edf5f3;border-radius:10px}.top nav{flex-wrap:wrap}.partner-box.placement-logements,.partner-box.placement-base,.partner-box.placement-formation{border:2px solid #aac9c4}

/* Long trip title remains legible; wrap navigation instead of shrinking type. */
#nav a[href='#trajets']{max-width:210px;white-space:normal;line-height:1.35}.filters .field{min-width:0}.filters .tiny.field{grid-column:1/-1}[hidden]{display:none!important}@media(max-width:980px){#nav a[href='#trajets']{max-width:none}}
.home-more{margin-top:1.5rem}.home-more summary{cursor:pointer;font-weight:700;margin-bottom:1rem}.home-more .grid{margin-top:1rem}
.nav-more{position:relative;color:inherit}.nav-more summary{cursor:pointer;padding:10px 12px}.nav-more div{position:absolute;z-index:10;right:0;min-width:230px;background:#fff;box-shadow:0 8px 24px #10263f33;border-radius:8px;padding:8px;display:grid}.nav-more a{display:block;padding:9px 12px}.nav-more:not([open]) div{display:none}
.planner-card,.planner-event{display:block;margin:18px 0}.planner-card h3,.planner-event h4{margin:0 0 14px}.planner-card .formgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.planner-card .formgrid button{justify-self:start}.planner-card .tiny{display:block;margin-top:12px;line-height:1.5}.planner-event .notice{margin:12px 0;padding:14px}.planner-event>button{margin-top:12px}@media(max-width:650px){.planner-card .formgrid{grid-template-columns:1fr}}

/* Home readability and wider sharing illustration, retaining the banner height. */
#main[data-page="accueil"] .hero>img{object-fit:contain;object-position:center;aspect-ratio:auto}
#main[data-page="accueil"] .hero p{font-size:16px;color:#edf3f6;line-height:1.55}
#main[data-page="accueil"] .action b{font-size:17px;line-height:1.4}
#main[data-page="accueil"] .action span{font-size:15px;line-height:1.5;color:#425969}
#main[data-page="accueil"] .aside p{font-size:14px;line-height:1.6;color:#425969}
#main[data-page="accueil"] .aside a{font-size:14px;line-height:1.5;color:#155759}
#main[data-page="accueil"] .aside h3{font-size:18px}
#main[data-page="accueil"] .home-language label{font-size:13px;color:#344e60}
#main[data-page="accueil"] .home-language select{font-size:14px}
#main[data-page="accueil"] .airshow-heading{font-size:13px;color:#425969}
#main[data-page="accueil"] .airshow-replay{color:#425969}
#main[data-page="accueil"] .action{border-color:#cedbdf}
#main[data-page="accueil"] a:focus-visible{outline:3px solid #127b80;outline-offset:3px}
@media(min-width:981px){#main[data-page="accueil"] .hero{grid-template-columns:minmax(0,1fr) 44%;height:180px;min-height:180px}#main[data-page="accueil"] .hero>img{height:180px;max-height:180px}#main[data-page="accueil"] .hero h1{font-size:34px}}
@media(min-width:651px) and (max-width:980px){#main[data-page="accueil"] .hero{grid-template-columns:minmax(0,1fr) 46%}#main[data-page="accueil"] .hero>img{height:200px;max-height:200px}}
@media(max-width:650px){#main[data-page="accueil"] .hero>img{height:155px;max-height:155px;width:100%}#main[data-page="accueil"] .hero h1{font-size:30px}}

/* Give the emblem the available banner width while keeping the slogan visible. */
@media(min-width:981px){#main[data-page="accueil"] .hero{grid-template-columns:minmax(330px,39%) minmax(0,61%)}#main[data-page="accueil"] .hero .hero-copy{padding:16px 22px}#main[data-page="accueil"] .hero h1{font-size:32px}#main[data-page="accueil"] .hero>img{object-fit:fill}#main[data-page="accueil"] .hero p{font-size:15px}}
@media(min-width:651px) and (max-width:980px){#main[data-page="accueil"] .hero{grid-template-columns:minmax(0,43%) minmax(0,57%)}#main[data-page="accueil"] .hero .hero-copy{padding:18px}#main[data-page="accueil"] .hero h1{font-size:28px}}

/* Explanatory strip under the navigation, followed by the photographic banner. */
.home-emblem{margin:0 0 16px;border:1px solid #52697a;border-radius:18px;overflow-x:auto;background:#e3ebec}
.home-emblem img{display:block;width:100%;height:auto;min-width:800px}
#main[data-page="accueil"] .hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;height:210px;min-height:210px}
#main[data-page="accueil"] .hero .hero-copy{padding:22px 28px}
#main[data-page="accueil"] .hero h1{font-size:clamp(28px,3vw,36px)}
#main[data-page="accueil"] .hero>img{height:210px;max-height:210px;width:100%;object-fit:contain;background:#10263f;aspect-ratio:auto}
@media(max-width:650px){#main[data-page="accueil"] .hero{grid-template-columns:minmax(0,1fr) 38%;height:auto;min-height:175px}#main[data-page="accueil"] .hero .hero-copy{padding:18px 14px}#main[data-page="accueil"] .hero h1{font-size:26px}#main[data-page="accueil"] .hero p{font-size:14px}#main[data-page="accueil"] .hero>img{height:100%;max-height:none}.home-emblem{border-radius:12px}}

/* Compact slogan banner; the aircraft photograph fills the space beside the title. */
#main[data-page="accueil"] .hero{grid-template-columns:minmax(0,46%) minmax(0,54%);height:145px;min-height:145px}
#main[data-page="accueil"] .hero .hero-copy{padding:16px 24px}
#main[data-page="accueil"] .hero h1{font-size:clamp(26px,2.6vw,34px);line-height:1.15;margin:8px 0}
#main[data-page="accueil"] .hero>img{height:145px;max-height:145px;object-fit:cover;object-position:center 43%}
@media(max-width:650px){#main[data-page="accueil"] .hero{grid-template-columns:minmax(0,48%) minmax(0,52%);height:125px;min-height:125px}#main[data-page="accueil"] .hero .hero-copy{padding:12px}#main[data-page="accueil"] .hero h1{font-size:23px}#main[data-page="accueil"] .hero>img{height:125px;max-height:125px}}

/* The slogan and explanatory artwork form a single identity block. */
.home-emblem{overflow:hidden;background:linear-gradient(110deg,#d9e7ef,#f4e7ce);border:1px solid #9aadb8}
.home-slogan{margin:0;padding:24px 20px 12px;text-align:center;font-size:clamp(28px,3.4vw,44px);font-weight:850;line-height:1.16;letter-spacing:-.035em;color:#10283f}
.home-slogan span{display:inline-block}
.home-slogan span+span{color:#795019}
.home-emblem-scroll{overflow-x:auto}
.home-emblem img{width:100%;height:auto;min-width:800px}
@media(max-width:650px){.home-slogan{padding:20px 14px 10px;font-size:30px}}

.home-companion{margin:0;padding:22px 16px 0;text-align:center;color:#10283f;font-size:clamp(19px,2vw,25px);font-weight:650;letter-spacing:.01em;line-height:1.3}
.home-companion+.home-slogan{padding-top:8px}

/* Prominent editorial lettering for the home introduction. */
.home-companion{padding:25px 24px 4px;font-family:Georgia,"Palatino Linotype",Palatino,serif;font-style:italic;font-weight:700;font-size:clamp(27px,3.1vw,40px);line-height:1.25;letter-spacing:-.025em;color:#174e68;text-wrap:balance;text-shadow:0 1px 0 #ffffffb3}
@media(max-width:650px){.home-companion{padding:20px 16px 4px;font-size:28px}}

/* Strong, legible navigation on the home page. */
#main[data-page="accueil"] .home-navigation-title{clear:both;margin:14px 0 20px;font-size:27px;line-height:1.25;color:#10283f;font-weight:800;letter-spacing:-.02em}
#main[data-page="accueil"] .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#main[data-page="accueil"] .action{position:relative;display:block;padding:22px 24px 52px;min-height:180px;background:#edf5f8;border:2px solid #7896a7;border-radius:16px;box-shadow:0 3px 9px #10283f0b}
#main[data-page="accueil"] .action:nth-child(2n){background:#fbf5e8;border-color:#ac915b}
#main[data-page="accueil"] .action b{font-size:23px;line-height:1.25;font-weight:800;color:#10283f;margin:12px 0 9px}
#main[data-page="accueil"] .action span{font-size:17px;line-height:1.5;color:#294658}
#main[data-page="accueil"] .action .icon{font-size:26px;color:#10283f;background:#fff;width:48px;height:48px;display:grid;place-items:center;border-radius:12px;border:1px solid #a5bbc6}
#main[data-page="accueil"] .action::after{content:'Ouvrir →';position:absolute;left:24px;bottom:17px;font-size:16px;font-weight:750;color:#164f6b}
#main[data-page="accueil"] [lang="en"] .action::after{content:'Open →'}
#main[data-page="accueil"] .action:hover{border-color:#174e68;box-shadow:0 8px 18px #10283f22;transform:translateY(-2px)}
#main[data-page="accueil"] .home-more{margin-top:22px}
#main[data-page="accueil"] .home-more>summary{padding:17px 20px;border:2px solid #7896a7;border-radius:12px;background:#edf5f8;color:#10283f;font-size:20px;font-weight:750;cursor:pointer}
#main[data-page="accueil"] .home-more[open]>.grid{margin-top:18px}
body:has(#main[data-page="accueil"]) #nav a,body:has(#main[data-page="accueil"]) #nav summary{font-size:16px;font-weight:750;color:#203f54;padding:12px}
body:has(#main[data-page="accueil"]) #nav a.active{background:#163e56;color:white;border-radius:9px}
@media(max-width:650px){#main[data-page="accueil"] .grid{grid-template-columns:1fr;gap:14px}#main[data-page="accueil"] .action{min-height:0;padding:18px 20px 48px}#main[data-page="accueil"] .action b{font-size:22px}#main[data-page="accueil"] .action::after{left:20px}#main[data-page="accueil"] .home-navigation-title{font-size:25px}}

/* Branding above navigation; actionable content has its own white navigation boundary. */
.home-presentation{max-width:1240px;margin:0 auto;padding:18px 24px 20px}
.home-presentation[hidden]{display:none}
.home-presentation .home-emblem{margin:0}
.home-presentation .airshow{margin:12px 0 0}
.home-presentation+.top{border-top:1px solid #bacbd5;box-shadow:0 3px 12px #10283f0d}
body:has(#homePresentation:not([hidden])) #main{padding-top:20px}
body:has(#homePresentation:not([hidden])) #main .layout{margin-top:0}
.home-presentation .airshow-heading,.home-presentation .airshow-replay{color:#425969;font-size:13px}
@media(max-width:650px){.home-presentation{padding:12px 14px 16px}}

/* Brand and navigation precede the home presentation and stay at the viewport top. */
.top{position:sticky;top:0;z-index:10;border-bottom:1px solid #bacbd5;box-shadow:0 3px 12px #10283f0d}
.home-presentation{padding-top:20px;padding-bottom:16px}

/* The aircraft belong to the identity banner, in a compact lane clear of the text. */
.home-presentation .home-emblem .airshow{margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;height:90px}
.home-presentation .home-emblem .airshow-sky{height:90px}
.home-presentation .home-emblem .airshow-heading{padding:0 10px;font-size:11px}
.home-presentation .home-emblem .airshow-replay{font-size:11px;padding:5px 8px}
@media(max-width:650px){.home-presentation .home-emblem .airshow,.home-presentation .home-emblem .airshow-sky{height:100px}}

/* Aircraft flank the slogan within dedicated side spaces. */
.home-slogan-row{position:relative;min-height:110px;display:flex;align-items:center;justify-content:center}
.home-slogan-row .home-slogan{position:relative;z-index:1;padding:12px 250px;font-size:clamp(25px,2.8vw,36px);pointer-events:none}
.home-presentation .home-emblem .home-slogan-row .airshow{position:absolute;inset:0;height:110px;overflow:hidden}
.home-presentation .home-emblem .home-slogan-row .airshow-sky{height:110px}
.home-slogan-row .airshow-heading{top:auto;bottom:0}
@media(max-width:900px){.home-slogan-row .home-slogan{padding:12px 210px;font-size:27px}}
@media(max-width:700px){.home-slogan-row .home-slogan{padding:14px 20%;font-size:24px}.home-slogan-row{min-height:110px}}

/* Contextual section scenes: preserve the complete image and readable headings. */
#main .hero[data-page]:not([data-page="accueil"]){display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:center;min-height:0;max-height:none;gap:24px;padding:20px 24px;}
#main .hero[data-page]:not([data-page="accueil"])>.hero-copy{padding:0;min-width:0;}
#main .hero[data-page]:not([data-page="accueil"])>img{width:100%;height:240px;min-height:0;max-height:none;object-fit:contain;border-radius:14px;}
@media(max-width:700px){#main .hero[data-page]:not([data-page="accueil"]){grid-template-columns:1fr;gap:12px;padding:18px;}#main .hero[data-page]:not([data-page="accueil"])>img{height:auto;max-height:220px;}}

/* Essential home actions, with planning at the right edge. */
#main[data-page="accueil"] .layout{grid-template-columns:minmax(0,1fr)}
#main[data-page="accueil"] .home-navigation{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
#main[data-page="accueil"] .home-navigation .action[href="#planning"]{background:#edeafa;border-color:#8272b0}
#main[data-page="accueil"] .home-navigation .action[href="#planning"] .icon{color:#4b357c;border-color:#b4a6d2}
#main[data-page="accueil"] .home-navigation .action[href="#planning"]::after{color:#4b357c}
#main[data-page="accueil"] .layout>.aside{width:100%;box-sizing:border-box}
footer .subscription-note{font-size:12px;line-height:1.6;color:#526675;margin:12px 0;order:2}
@media(max-width:650px){#main[data-page="accueil"] .home-navigation{grid-template-columns:1fr}}

/* High-visibility home dashboard, scoped below the presentation. */
#main[data-page="accueil"] .panel{border:2px solid #bdccd7;padding:24px;background:#fff}
#main[data-page="accueil"] .home-language{margin-bottom:8px}
#main[data-page="accueil"] .home-language select{border:2px solid #526c80;font-weight:700;color:#142f46}
#main[data-page="accueil"] .home-navigation-title{font-size:30px;margin:8px 0 18px}
#main[data-page="accueil"] .home-navigation .action{min-height:168px;padding:18px 22px 45px;background:#123d59;border:2px solid #123d59;box-shadow:0 5px 0 #09283c}
#main[data-page="accueil"] .home-navigation .action[href="#trajets"]{background:#09635d;border-color:#09635d;box-shadow:0 5px 0 #06443f}
#main[data-page="accueil"] .home-navigation .action[href="#planning"]{background:#594186;border-color:#594186;box-shadow:0 5px 0 #372652}
#main[data-page="accueil"] .home-navigation .action b{font-size:25px;color:#fff;margin:8px 0}
#main[data-page="accueil"] .home-navigation .action span{color:#fff;font-size:17px}
#main[data-page="accueil"] .home-navigation .action::after{color:#fff;font-size:17px}
#main[data-page="accueil"] .home-navigation .action .icon{width:38px;height:38px;font-size:24px;background:#fff;border:0}
#main[data-page="accueil"] .home-services{margin-top:28px;padding-top:20px;border-top:2px solid #cedbe4}
#main[data-page="accueil"] .home-services h2{font-size:23px;color:#142f46;margin:0 0 14px;font-weight:800}
#main[data-page="accueil"] .home-services-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#main[data-page="accueil"] .home-services-grid .action{min-height:116px;padding:14px 16px 32px;border:2px solid #7792a6;border-left:6px solid #234b66;background:#f0f5f9;border-radius:12px;box-shadow:0 3px 0 #d4dfe7}
#main[data-page="accueil"] .home-services-grid .icon{float:left;margin:0 9px 6px 0;width:29px;height:29px;font-size:22px;border:0;background:transparent}
#main[data-page="accueil"] .home-services-grid .action b{font-size:20px;line-height:1.25;margin:2px 0 9px;color:#12344d}
#main[data-page="accueil"] .home-services-grid .action span{display:block;clear:both;font-size:15px;color:#304b60;line-height:1.4}
#main[data-page="accueil"] .home-services-grid .action::after{left:auto;right:14px;bottom:8px;content:'→';font-size:23px;color:#12344d}
#main[data-page="accueil"] .action:hover{filter:brightness(1.08);outline:2px solid #173b55;outline-offset:3px}
#main[data-page="accueil"] .action:focus-visible{outline:4px solid #bd7905;outline-offset:5px}
#main[data-page="accueil"] .layout>.aside{padding:16px 22px;background:#f3f6f8;border-color:#beced9}
#main[data-page="accueil"] .aside p{margin:6px 0}
@media(max-width:950px){#main[data-page="accueil"] .home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#main[data-page="accueil"] .home-navigation .action b{font-size:22px}}
@media(max-width:650px){#main[data-page="accueil"] .panel{padding:16px}#main[data-page="accueil"] .home-navigation .action{min-height:0;padding:16px 18px 40px}#main[data-page="accueil"] .home-navigation .action .icon{float:left;margin-right:12px}#main[data-page="accueil"] .home-navigation .action span{display:block;clear:both}#main[data-page="accueil"] .home-navigation-title{font-size:26px}#main[data-page="accueil"] .home-services-grid .action b{font-size:18px}}
@media(max-width:380px){#main[data-page="accueil"] .home-services-grid{grid-template-columns:1fr}}
#main[data-page="accueil"] .home-navigation .action[href="#planning"]::after{color:#fff}
@media(min-width:951px){#main[data-page="accueil"] .home-language{float:right;margin:0 0 14px 18px}#main[data-page="accueil"] .home-navigation-title{clear:none;min-height:44px;display:flex;align-items:center}#main[data-page="accueil"] .home-navigation{clear:both}}

/* Language choice at the top right, alongside the main navigation. */
.header-language{margin-left:auto;flex-shrink:0}
.header-language .home-language{margin:0;float:none;display:block}
.header-language label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.header-language select{width:auto;min-height:42px;border:2px solid #526c80;background:#f4f8fb;color:#173e59;font-size:15px;font-weight:750;padding:8px 10px;border-radius:10px}
body:not(:has(#main[data-page="accueil"])) .header-language{display:none}
@media(max-width:1100px) and (min-width:981px){.top{flex-wrap:wrap;height:auto;min-height:74px;padding-top:10px;padding-bottom:10px;gap:12px}.header-language{margin-left:auto}}
@media(max-width:980px){.top{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.top .brand{margin-right:auto}.top .menu{float:none;order:2}.top .header-language{order:1;margin-left:0}.top nav{order:3;width:100%}}
@media(max-width:480px){.top .header-language select{font-size:13px;padding:7px 5px}.top{column-gap:8px}.top .brand small{font-size:8px}.top .brand{font-size:18px}}

/* Small, consistent cartoon illustrations; labels remain the main navigation cue. */
#main[data-page="accueil"] .illustrated-action .icon{float:none;display:block;width:76px;height:64px;margin:0 0 8px;padding:0;border:0;border-radius:12px;background:#fff9eb}
#main[data-page="accueil"] .illustrated-action .icon img{display:block;width:100%;height:100%;object-fit:contain}
#main[data-page="accueil"] .home-navigation .illustrated-action{padding-top:16px}
#main[data-page="accueil"] .home-navigation .illustrated-action .icon{width:94px;height:68px;background:#fff9eb}
#main[data-page="accueil"] .home-services-grid .illustrated-action{display:grid;grid-template-columns:58px minmax(0,1fr);column-gap:10px;row-gap:8px;align-content:start;align-items:center}
#main[data-page="accueil"] .home-services-grid .illustrated-action .icon{width:58px;height:52px;margin:0;background:#fff9eb}
#main[data-page="accueil"] .home-services-grid .illustrated-action b{margin:0;font-size:19px;overflow-wrap:normal}
#main[data-page="accueil"] .home-services-grid .illustrated-action span{grid-column:1/-1;margin:0}
@media(max-width:650px){#main[data-page="accueil"] .home-navigation .illustrated-action .icon{float:none;margin:0 0 8px}#main[data-page="accueil"] .home-services-grid .illustrated-action{grid-template-columns:1fr;gap:7px}#main[data-page="accueil"] .home-services-grid .illustrated-action b{font-size:18px}}

/* Repeat each category illustration next to its page title, without enlarging the hero. */
.page-title-row{display:flex;align-items:center;gap:16px;min-width:0}
.page-title-row h1{flex:1;min-width:0;margin:0}
#main .hero .page-category-logo{flex:0 0 72px;width:72px;height:60px;max-height:60px;object-fit:contain;padding:4px;background:#fff9eb;border:1px solid #e3d9c2;border-radius:12px;box-sizing:border-box}
@media(max-width:650px){.page-title-row{gap:12px}#main .hero .page-category-logo{flex-basis:58px;width:58px;height:52px;max-height:52px;padding:3px}}

.trip-affiliate-footer{flex-basis:100%;padding:14px 0;margin-bottom:14px;border-bottom:1px solid #d6e0e5}.trip-affiliate-footer a{display:inline-block;color:#164f6b;font-size:14px;font-weight:750}.trip-affiliate-footer small{display:block;max-width:850px;margin-top:6px;color:#526675;font-size:12px;line-height:1.5}
