:root{--green:#133f34;--ink:#1c302a;--lime:#d3e79a;--line:#dce1dd;--muted:#5e6b64}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #75a939;outline-offset:5px}header{height:100px;padding:0 5%;display:flex;align-items:center;gap:36px;background:white}header nav{display:flex;gap:30px;margin-left:auto;font-size:14px}.brand{font-size:30px;font-weight:900;letter-spacing:-1.6px;line-height:1;display:inline-block;white-space:nowrap}.brand span{color:#71a044}.brand small{display:block;font-size:9px;letter-spacing:2.8px;margin-top:8px;font-weight:500}.button{display:inline-block;background:var(--green);color:white;padding:15px 24px;font-weight:600;font-size:14px;border:1px solid transparent;border-radius:2px}.button:hover{background:#24614e}.button.light{background:var(--lime);color:var(--green)}.button.light:hover{background:#e2f3b6}.small{padding:12px 18px}.hero{height:620px;min-height:520px;position:relative;color:white;background:var(--green)}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 50%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,31,27,.85),rgba(9,31,27,.4) 60%,rgba(9,31,27,.12))}.hero-content{position:absolute;top:75px;left:7%;right:7%}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin:0 0 26px}.green{color:#507740}h1{font-size:clamp(52px,6.5vw,88px);letter-spacing:-3px;line-height:1.03;margin:0 0 28px;font-weight:500}h1 em{font-family:Georgia,serif;color:var(--lime);font-weight:400}p{font-size:16px} .hero-content>p:not(.eyebrow){font-size:18px;line-height:1.7;margin-bottom:30px}.hero-bottom{position:absolute;bottom:25px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px;border-top:1px solid #ffffff55;padding-top:20px}.wrap{max-width:1280px;margin:auto;padding-left:6%;padding-right:6%}.intro{padding-top:95px;padding-bottom:85px}.intro-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:65px}h2{font-size:clamp(30px,3vw,44px);font-weight:500;letter-spacing:-1.4px;line-height:1.18;margin:0 0 26px}.intro-grid p{margin:0 0 18px;color:var(--muted)}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px}.benefits>div{border-top:1px solid var(--line);padding-top:20px}.benefits span{color:#759864;font-size:13px}.benefits h3{font-size:19px;margin:12px 0}.benefits p{color:var(--muted);font-size:15px;max-width:290px}.programmes{background:#f1f4ef;padding:82px 0 90px}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:35px}.section-head h2{margin-bottom:0}.section-head>p{font-size:14px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:white;display:flex;flex-direction:column}.card-image{height:225px;position:relative;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover img{transform:scale(1.035)}.badge{background:white;color:var(--green);padding:7px 10px;font-size:10px;letter-spacing:.7px;font-weight:700;position:absolute;left:16px;top:16px}.card-body{padding:26px;display:flex;flex-direction:column;flex:1}.location{font-size:11px;letter-spacing:1.3px;color:#60804b;margin:0 0 12px;font-weight:700}.card h3{font-size:25px;letter-spacing:-.8px;line-height:1.2;margin:0 0 16px}.card-body>p:not(.location){color:var(--muted);font-size:14px;margin-top:0}.card .price{font-size:12px!important;border-top:1px solid var(--line);padding-top:16px;margin-top:auto!important}.text-button{padding:0;background:none;border:0;text-align:left;color:var(--green);font-weight:600;font-size:14px;text-decoration:underline;text-underline-offset:6px}.text-button:hover{color:#709b45}.upcoming-top{height:225px;position:relative;background:var(--green);color:var(--lime);padding:30px}.upcoming-top .badge{background:var(--lime)}.roman{font:100px/1 Georgia,serif;text-align:right;margin-top:12px;opacity:.7}.upcoming-top>p{font-size:11px;letter-spacing:2px;position:absolute;bottom:14px}.references{padding-top:90px;padding-bottom:90px}.reference-list{margin-top:45px}.reference-list>.reference-item{display:grid;grid-template-columns:30px 1.3fr 1fr auto;gap:20px;align-items:center;padding:26px 0;border-top:1px solid var(--line)}.reference-list>.reference-item:last-child{border-bottom:1px solid var(--line)}.reference-list>.reference-item:hover{background:#f5f7f2}.reference-list h3{font-size:20px;font-weight:500;margin:0}.reference-list p{font-size:14px;color:var(--muted);margin:0}.reference-list span{font-size:12px;color:#68825d}.visit{text-decoration:underline;text-underline-offset:5px}.contact{background:var(--green);color:white;padding:75px 0}.contact .eyebrow{color:var(--lime)}.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:70px}.contact h2{font-size:46px}.contact p{color:#d0ddd4}.contact-links{display:flex;align-items:flex-start;flex-direction:column;gap:14px}.contact-links .phone{font-size:35px;letter-spacing:1px}.contact-links .button{margin-top:15px}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:40px;padding-bottom:40px}footer p{font-size:12px;color:var(--muted)}footer .brand{font-size:24px}footer .brand small{font-size:8px;letter-spacing:1.9px}dialog{border:none;padding:45px;max-width:680px;width:calc(100% - 32px);max-height:85vh;color:var(--ink);box-shadow:0 20px 100px #0004}dialog::backdrop{background:#061e19aa}dialog h2{font-size:35px}.close{position:absolute;right:15px;top:8px;background:transparent;border:0;font-size:30px;color:var(--green)}dialog .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}dialog img{width:100%;max-height:260px;object-fit:cover;margin-bottom:25px}dialog li{margin-bottom:10px}@media(max-width:950px){header{padding:20px 5%;height:auto;flex-wrap:wrap;gap:20px}header nav{order:3;width:100%;justify-content:center}header>.button{margin-left:auto}.hero{height:580px}.intro-grid{gap:30px}.cards{gap:14px}.card-body{padding:20px}.card h3{font-size:22px}.reference-list>.reference-item{grid-template-columns:25px 1fr auto}.reference-list p{display:none}footer{flex-wrap:wrap}.contact-grid{gap:25px}.contact-links .phone{font-size:28px}}@media(max-width:650px){header .brand{font-size:25px}header>.button{font-size:12px;padding:10px}header nav{gap:24px;font-size:13px}.hero{height:560px}.hero-content{top:60px}.hero-content>.eyebrow{font-size:10px;letter-spacing:1.4px}h1{font-size:57px;letter-spacing:-2px}.hero-content>p:not(.eyebrow){font-size:16px}.hero-bottom{font-size:9px;flex-direction:column;gap:8px}.wrap{padding-left:7%;padding-right:7%}.intro,.references{padding-top:60px;padding-bottom:60px}.intro-grid,.benefits,.cards,.contact-grid{grid-template-columns:1fr}.benefits{gap:15px;margin-top:25px}.benefits p{max-width:none}.section-head{display:block}.section-head>p{margin-top:20px}.programmes{padding:60px 0}.cards{gap:25px}.card-image,.upcoming-top{height:250px}.card-body{padding:28px}.reference-list>.reference-item{grid-template-columns:20px 1fr;gap:12px}.reference-list h3{font-size:18px}.reference-list .visit{grid-column:2}.contact h2{font-size:38px}.contact{padding:60px 0}.contact-links{margin-top:15px}footer{align-items:flex-start;gap:20px}footer p{width:43%}dialog{padding:35px 24px}dialog h2{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Programme L’Armailler */
.programme-intro{padding-top:38px;padding-bottom:0}.back-link{display:inline-block;font-size:14px;text-decoration:underline;text-underline-offset:5px;margin-bottom:44px;color:var(--muted)}.programme-intro h1{font-size:clamp(45px,6vw,76px);color:var(--green);margin-bottom:24px}.programme-intro h1 em{color:#61823d}.programme-lead{display:flex;justify-content:space-between;gap:28px;align-items:center;margin-bottom:40px}.programme-lead p{color:var(--muted);font-size:18px}.document-nav{display:flex;gap:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;font-size:14px}.document-nav a:hover{text-decoration:underline}.programme-doc{padding-top:60px;padding-bottom:60px}.programme-doc .section-head{align-items:center}.programme-doc h2{font-size:34px}.document-preview{display:block;background:white;border:1px solid var(--line)}.document-preview img{width:100%;height:auto;display:block}.document-preview:focus-visible{outline:3px solid var(--green)}.plan-section{background:#f1f4ef}.document-note{font-size:13px;color:var(--muted);margin-bottom:0}.programme-page .contact-links span{font-size:14px;color:#d0ddd4}@media(max-width:650px){.programme-intro{padding-top:24px}.back-link{margin-bottom:30px}.programme-lead{display:block}.programme-lead .button{margin-top:12px}.document-nav{flex-wrap:wrap;gap:14px 24px}.programme-doc{padding-top:38px;padding-bottom:38px}.programme-doc .section-head .text-button{display:inline-block;margin-top:20px}.programme-doc h2{font-size:29px}}

.programme-location{margin:22px 0 0;padding-top:16px;border-top:1px solid var(--line)}.programme-location p{font-size:14px;line-height:1.6;margin:0 0 8px;color:var(--muted)}.programme-location a{font-size:14px}.programme-intro>.programme-location{max-width:680px;margin-top:28px}

.document-nav{flex-wrap:wrap}.video-player{aspect-ratio:16/9;background:#102c23;overflow:hidden}.video-player iframe,.video-launch{display:block;width:100%;height:100%;border:0}.video-launch{position:relative;padding:0;cursor:pointer;background:#102c23;color:white}.video-launch img{display:block;width:100%;height:100%;object-fit:cover;filter:brightness(.65)}.video-launch-label{position:absolute;inset:0;display:flex;gap:15px;align-items:center;justify-content:center;font-size:clamp(18px,3vw,28px);font-weight:600}.video-launch-label>span{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--green);font-size:24px}.video-launch:focus-visible{outline:4px solid var(--lime);outline-offset:-4px}.video-launch:hover img{filter:brightness(.8)}
