
:root{--navy:#071a4e;--blue:#1259bd;--sky:#3b8ded;--red:#e21b23;--red-deep:#a60c22;--cream:#fff8ed;--mist:#eef5fd;--ink:#10203e;--muted:#52617b;--white:#fff;--line:#dce5f1;--radius:24px;--shadow:0 18px 48px rgba(7,26,78,.15)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,"Noto Sans SC","Microsoft Yahei",sans-serif;color:var(--ink);line-height:1.6;background:#fff}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,92%);margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:1000;background:#fff;padding:10px 14px;border-radius:12px}.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(11px)}.nav{min-height:154px;display:flex;align-items:flex-start;gap:22px;padding:12px 0}.brand{flex:0 0 310px;display:flex;align-items:center;height:126px}.brand img{width:310px;height:126px;object-fit:contain}.menu{display:flex;flex:1;flex-wrap:wrap;gap:12px 18px;justify-content:center;align-content:center;align-items:center;min-height:126px;font-size:1.16rem;line-height:1.08;font-weight:900;color:var(--navy);white-space:normal}.menu a{padding:3px 0}.langs{padding-top:24px}.menu a:hover{color:var(--red)}.langs{display:flex;gap:7px}.lang{padding:9px 11px;border:1px solid var(--line);border-radius:999px;font-size:.84rem;font-weight:900;background:#fff}.lang.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.hero{min-height:684px;position:relative;color:#fff;overflow:hidden;background:linear-gradient(120deg,rgba(4,15,56,.96),rgba(10,45,111,.88) 60%,rgba(34,112,215,.72)),url('images/hero-original.jpeg') center/cover}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 84% 16%,rgba(226,27,35,.82),transparent 22%),radial-gradient(circle at 82% 90%,rgba(255,255,255,.18),transparent 25%)}.hero-grid{position:relative;z-index:2;min-height:684px;display:grid;grid-template-columns:1.18fr .82fr;gap:42px;align-items:center}.hero-copy{padding:94px 0}.eyebrow{display:inline-flex;padding:7px 13px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);border-radius:999px;font-weight:850;font-size:.9rem;margin-bottom:18px}.hero h1{font-size:clamp(3rem,7.5vw,6.5rem);letter-spacing:-.065em;line-height:.9;margin:0 0 22px}.hero h2{font-size:clamp(1.4rem,3vw,2.35rem);line-height:1.13;margin:0 0 17px}.hero p{font-size:1.11rem;max-width:700px;color:rgba(255,255,255,.92);margin:0 0 28px}.actions{display:flex;flex-wrap:wrap;gap:12px}.btn{padding:14px 20px;border-radius:999px;display:inline-flex;justify-content:center;align-items:center;font-weight:900;transition:.18s}.btn.primary{background:var(--red);color:#fff;box-shadow:0 10px 24px rgba(226,27,35,.35)}.btn.primary:hover{transform:translateY(-2px);background:#bf1021}.btn.light{background:#fff;color:var(--navy)}.btn.outline{border:2px solid currentColor}.hero-logo-card{background:#fff;padding:22px 28px 26px;border:6px solid rgba(255,255,255,.22);border-radius:28px;box-shadow:0 28px 66px rgba(0,0,0,.31)}.hero-logo-card img{width:100%;max-height:385px;object-fit:contain}.hero-logo-card p{text-align:center;color:var(--navy);font-weight:850;margin:14px 0 0;font-size:.94rem}
section{padding:88px 0}.soft{background:var(--mist)}.cream{background:var(--cream)}.contrast{background:linear-gradient(135deg,var(--navy),#0d3f9b 57%,#2982dc);color:#fff}.title{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.045em;line-height:1.04;margin:0 0 15px;color:var(--navy)}.contrast .title{color:#fff}.red{color:var(--red)}.intro{max-width:840px;font-size:1.08rem;color:var(--muted);margin:0 0 34px}.contrast .intro{color:rgba(255,255,255,.87)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.photo-panel{min-height:410px;border-radius:var(--radius);box-shadow:var(--shadow);background:linear-gradient(0deg,rgba(7,26,78,.08),rgba(7,26,78,.04)),url('https://images.unsplash.com/photo-1544717305-2782549b5136?auto=format&fit=crop&w=1600&q=85') center/cover}.feature{display:flex;gap:11px;margin:15px 0;font-weight:760;color:var(--navy)}.tick{color:var(--red);font-weight:950}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card-body{padding:23px}.kicker{font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--red);font-weight:950;margin-bottom:8px}.card h3{font-size:1.34rem;color:var(--navy);line-height:1.15;margin:0 0 10px}.card p{margin:0;color:var(--muted)}.service-img{height:210px;background-size:cover;background-position:center}/* Service visuals — deliberately selected to make each offer immediately identifiable */
.english,.french,.chinese{position:relative}.english{background-image:url('images/service-english.jpg');background-position:center}.french{background-image:url('images/service-french-expats.jpg');background-position:center}.coach{background-image:url('images/service-coaching.jpg');background-position:center}.chinese{background-image:url('images/service-mandarin.jpg')!important;background-color:#f4e7cd;background-position:center;background-size:cover;background-repeat:no-repeat}.stage{background-image:url('images/service-holiday-workshops.jpg');background-position:center}
/* Consistent language badges — shown only on the six service cards, not on the detailed sections */
.grid-3 .english:after,.grid-3 .french:after,.grid-3 .chinese:after{position:absolute;right:12px;top:12px;background:rgba(7,26,78,.94);color:#fff;padding:7px 10px;border:2px solid #fff;border-radius:999px;font-weight:950;font-size:.75rem;letter-spacing:.04em;box-shadow:0 5px 14px rgba(0,0,0,.22);white-space:nowrap}.grid-3 .english:after{content:'🇬🇧  ANGLAIS'}.grid-3 .french:after{content:'🇫🇷  F.L.E / F.L.S'}.grid-3 .chinese:after{content:'🇨🇳  MANDARIN'}
/* Brittany: stone house, hydrangeas and local atmosphere */
.immersion{background-image:url('images/service-immersive-stay.jpg');background-position:center}.link{display:inline-flex;margin-top:15px;color:var(--red);font-weight:950}.link:hover{text-decoration:underline}.detail{display:grid;grid-template-columns:.88fr 1.12fr;margin-top:26px}.detail .visual{min-height:320px;background-size:cover;background-position:center}.detail .content{padding:34px}.detail .content h3{font-size:1.72rem;color:var(--navy);line-height:1.14;margin:0 0 12px}.chips{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.chip{background:var(--mist);color:var(--navy);padding:7px 10px;border-radius:999px;font-size:.85rem;font-weight:850}.formats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.format{padding:23px;border-radius:18px;background:#fff;border:1px solid var(--line)}.format strong{display:block;color:var(--navy);margin-bottom:7px}.format span{color:var(--muted)}
.map-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:30px;align-items:center}.map-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:#e7f0dd}.map-card img{width:100%;height:auto;display:block;object-fit:contain}.map-note{display:flex;gap:12px;padding:16px;background:#fff;color:var(--ink);border-left:6px solid var(--red);border-radius:15px;box-shadow:0 10px 25px rgba(0,0,0,.12)}.map-note p{margin:3px 0 0;color:var(--muted)}.map-note strong{color:var(--navy)}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:21px}.price-card{background:#fff;padding:29px;border-radius:var(--radius);box-shadow:var(--shadow);border-top:8px solid var(--blue)}.price-card.featured{border-top-color:var(--red)}.price-card h3{margin:0 0 10px;color:var(--navy)}.price{font-size:1.48rem;color:var(--red);font-weight:950;margin:12px 0}.price-card ul{padding-left:20px;color:var(--muted)}.price-card li{margin:7px 0}.sap{margin-top:38px;background:#fff;display:grid;grid-template-columns:210px 1fr;gap:28px;padding:30px;border-radius:var(--radius);box-shadow:var(--shadow);align-items:center}.sap img{width:170px;justify-self:center}.sap h3{color:var(--navy);font-size:1.66rem;margin:0 0 10px}.sap p{color:var(--muted);margin:0 0 10px}.legal-box{background:#fff8f8;border:1px solid #f2caca;color:#69242c;padding:15px;border-radius:15px;font-size:.93rem;font-weight:700}
.bio{display:grid;grid-template-columns:160px 1fr;gap:24px;padding:28px;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow)}.bio img{height:160px;width:160px;object-fit:cover;border-radius:20px}.bio h3{font-size:1.5rem;line-height:1.1;color:var(--navy);margin:0 0 8px}.bio p{margin:0;color:var(--muted)}.role{color:var(--red);font-weight:950;margin:0 0 10px}.skills{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.skills span{background:var(--mist);color:var(--navy);font-size:.8rem;font-weight:850;padding:6px 9px;border-radius:999px}.brittany-strip{margin-top:35px;border-radius:var(--radius);min-height:270px;box-shadow:var(--shadow);background:linear-gradient(90deg,rgba(7,26,78,.64),rgba(7,26,78,.05)),url('https://images.unsplash.com/photo-1627712737079-16f10ef9991d?auto=format&fit=crop&w=1800&q=85') center/cover;display:flex;align-items:end;padding:28px;color:#fff}.brittany-strip div{max-width:560px}.brittany-strip h3{font-size:2rem;line-height:1.05;margin:0 0 8px}.brittany-strip p{margin:0;color:rgba(255,255,255,.9)}
.contact-grid{display:grid;grid-template-columns:1fr .9fr;gap:28px;align-items:start}.contact-form{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:29px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:6px;margin-bottom:14px}.field label{font-size:.89rem;font-weight:850;color:var(--navy)}.field input,.field select,.field textarea{width:100%;padding:12px 13px;border:1px solid #cad7e8;border-radius:12px;font:inherit;color:var(--ink);background:#fff}.field textarea{min-height:130px;resize:vertical}.robot{display:flex;gap:10px;align-items:center;font-size:.9rem;color:var(--muted);margin:8px 0 16px}.contact-side{background:linear-gradient(135deg,var(--navy),#0d3d99);color:#fff;padding:31px;border-radius:var(--radius);box-shadow:var(--shadow)}.contact-side h3{font-size:1.8rem;line-height:1.08;margin:0 0 12px}.contact-side p{color:rgba(255,255,255,.88)}.contact-list{display:grid;gap:12px;margin-top:20px;font-weight:800}.social{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:10px 13px;border:1px solid rgba(255,255,255,.32);border-radius:999px}.map-route{margin-top:28px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);height:390px}.map-route iframe{border:0;width:100%;height:100%}.route-action{display:flex;justify-content:center;margin-top:16px}.footer{background:#061432;color:rgba(255,255,255,.8);padding:42px 0 26px}.foot-grid{display:grid;grid-template-columns:1.2fr .9fr 1.15fr;gap:27px}.footer img{width:185px}.footer h4{color:#fff;margin:0 0 10px}.footer p,.footer li{font-size:.91rem;color:rgba(255,255,255,.75)}.footer ul{list-style:none;padding:0;margin:0}.footer li{margin:6px 0}.copyright{border-top:1px solid rgba(255,255,255,.14);padding-top:16px;margin-top:25px;font-size:.84rem;color:rgba(255,255,255,.62)}
@media(max-width:1080px){.menu{display:none}.nav{justify-content:space-between;align-items:center;min-height:92px;padding:8px 0}.brand{flex:0 0 auto;height:75px}.brand img{width:200px;height:75px}.hero-grid{grid-template-columns:1fr}.hero-logo-card{display:none}.grid-3,.price-grid{grid-template-columns:1fr 1fr}.detail,.sap,.map-layout,.contact-grid{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){section{padding:62px 0}.grid-2,.grid-3,.formats,.price-grid,.foot-grid,.field-grid{grid-template-columns:1fr}.hero,.hero-grid{min-height:625px}.hero-copy{padding:72px 0}.brand img{width:145px}.lang{font-size:.7rem;padding:7px}.bio{grid-template-columns:1fr}.bio img{width:135px;height:135px}.detail .content{padding:25px}.service-img{height:185px}.map-card img{height:330px}}

.linkedin{display:inline-flex;align-items:center;gap:8px;margin-top:15px;padding:8px 12px;border-radius:999px;background:#0A66C2;color:#fff;font-weight:900;font-size:.85rem}.linkedin:hover{background:#084f96}.linkedin b{font-size:1rem}.map-route{height:470px}.map-route iframe{filter:saturate(.95)}
@media(max-width:1250px){.nav{min-height:148px}.brand{flex-basis:270px}.brand img{width:270px;height:112px}.menu{font-size:1.02rem;gap:11px 15px}.langs{gap:4px}.lang{padding:7px 8px;font-size:.75rem}}

/* Version V9: approved local service images */
.grid-3 .service-img{background-position:center center}.detail .service-img{background-position:center center}

/* Social links */
.social-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.social-row .social{margin-top:0}.social.instagram{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);border-color:rgba(255,255,255,.45)}.footer-social{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.footer-social a{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:8px 11px;font-size:.86rem;font-weight:850;color:#fff}.footer-social a:hover{background:rgba(255,255,255,.11)}
