:root{--blue:#1c3d7f;--sky:#5da8d1;--ink:#243e62;--muted:#5d6e82;--pale:#f3f8fb;--line:#dce7ee;--grey:#687684}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:white;font:16px/1.65 Quicksand,Arial,sans-serif}a{color:inherit}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--sky);outline-offset:5px}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.site-header{display:flex;align-items:center;gap:25px;min-height:100px;padding:20px max(4vw,20px);border-bottom:1px solid var(--line);background:#fffffff5;position:relative;z-index:20}.brand{display:block;flex-shrink:0;line-height:0}.brand img{display:block;width:210px;height:auto}.site-header nav{display:flex;gap:27px;margin-left:auto;align-items:center}.site-header nav a{text-decoration:none;white-space:nowrap;font-size:14px;padding:8px 0;position:relative}.site-header nav a[aria-current=page]:after{content:'';height:2px;background:var(--sky);position:absolute;bottom:1px;left:0;right:0}.site-header nav .nav-contact{border:1px solid var(--blue);padding:5px 17px;border-radius:30px}.site-header #language{background:none;border:0;color:var(--blue);font-size:12px;font-weight:700;border-left:1px solid var(--line);padding-left:20px}#menu-toggle{display:none}.wrap{width:min(1160px,90%);margin:auto}.section{padding:72px 0}.pale{background:var(--pale)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Comfortaa,Arial,sans-serif;font-weight:400;line-height:1.28;color:var(--blue)}h1{font-size:clamp(32px,4.2vw,55px);letter-spacing:-.025em}h2{font-size:clamp(25px,2.7vw,36px);margin-bottom:24px}h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;font-weight:600;line-height:1.15;color:var(--blue);margin-bottom:16px}.eyebrow{display:block;color:var(--muted);font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;margin-bottom:18px}.hero{position:relative;isolation:isolate;background:var(--blue);color:white;padding:90px 0 78px;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#122e55e6,#16365dbb),url('https://almanta.io/almanta-media/2025/09/Airport-1.jpg') center/cover;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:url('/almanta-assets/20261014/assets/vague2.png') right bottom/cover no-repeat;opacity:.18;z-index:-1;pointer-events:none}.hero h1{color:white;max-width:800px;margin-bottom:24px}.hero .eyebrow{color:#bee1f4}.hero .lead{color:white;max-width:760px}.lead{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(25px,2.5vw,33px);line-height:1.3;margin-bottom:24px}.hero .intro{max-width:690px;color:#e1edf7}.hero-foot{margin-top:60px;padding-top:22px;border-top:1px solid #ffffff30;display:flex;gap:35px;font-size:12px;letter-spacing:.03em}.button{display:inline-flex;align-items:center;gap:20px;text-decoration:none;border:1px solid var(--blue);border-radius:30px;padding:10px 22px;color:var(--blue);font-size:14px;transition:background .2s,color .2s}.button:hover{background:var(--blue);color:white}.button:after{content:'↗';font-size:17px}.button.white{border-color:#ffffff99;color:white}.button.white:hover{color:var(--blue);background:white}.actions{display:flex;gap:15px;flex-wrap:wrap}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-head h2{margin-bottom:0}.section-head p{max-width:480px;margin-bottom:0}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.domain{display:block;text-decoration:none;position:relative;border-top:1px solid var(--line);padding:28px 0 10px}.domain .symbol{height:46px;width:46px;object-fit:contain;margin-bottom:20px}.domain h3{font-size:30px}.domain p{color:var(--muted);font-size:15px;max-width:340px}.text-link{font-size:13px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--sky);padding-bottom:4px}.domain:hover .text-link{color:var(--sky)}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.photo{width:100%;height:460px;object-fit:cover;display:block}.service-item{padding:20px 0;border-bottom:1px solid var(--line)}.service-item h3{margin-bottom:8px}.service-item p{margin-bottom:0;font-size:15px;color:var(--muted)}.page-title{background:var(--blue) url('/almanta-assets/20261014/assets/Vague-title.png') right bottom/auto 100% no-repeat;color:white;padding:57px 0 50px}.page-title h1{font-size:clamp(31px,3.5vw,46px);color:white;margin-bottom:18px}.page-title .lead{max-width:820px;margin:0}.page-title .eyebrow{color:#bde0f0}.subnav{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:40px}.subnav a{border:1px solid var(--line);padding:9px 16px;border-radius:30px;text-decoration:none;font-size:13px}.subnav a[aria-current=page]{background:var(--blue);border-color:var(--blue);color:white}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.detail-card{background:white;padding:28px;border:1px solid var(--line);border-radius:4px}.detail-card h3{font-size:26px}.detail-card p,.detail-card li{font-size:15px;color:var(--muted)}.detail-card p:last-child{margin-bottom:0}.detail-card ul{padding-left:20px;margin-bottom:0}.note{border-left:3px solid var(--sky);background:var(--pale);padding:15px 20px;font-size:13px;margin:30px 0}.section .note:first-child{margin-top:0}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:15px}.process article{border-top:2px solid var(--sky);padding-top:22px}.process .step{font-size:11px;color:var(--muted)}.process h3{font-size:25px;margin-top:10px}.process p{font-size:14px;color:var(--muted)}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.person{border:1px solid var(--line);background:white;padding:38px}.person-top{display:flex;gap:20px;align-items:center;margin-bottom:28px}.monogram{width:80px;height:80px;border-radius:50%;display:grid;place-items:center;font-family:'Cormorant Garamond',serif;font-size:34px;background:var(--pale);color:var(--blue);flex-shrink:0}.person h2{font-size:26px;margin-bottom:8px}.person .region{font-weight:600;font-size:14px;color:var(--blue)}.person h3{font-size:25px}.person p{font-size:15px;color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.tags span{background:var(--pale);padding:4px 12px;border-radius:20px;font-size:12px}.cta{text-align:center;padding:70px 5%;background:url('/almanta-assets/20261014/assets/vague2.png') center/cover,var(--pale)}.cta p{max-width:750px;margin:0 auto 25px}.cta h2{margin-bottom:18px}footer{background:var(--blue) url('/almanta-assets/20261014/assets/vagues.png') left bottom/auto 100% no-repeat;color:white;padding:48px 0 22px}footer .foot-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:50px}footer .foot-logo{filter:brightness(0) invert(1);width:165px;height:auto;margin-bottom:20px}footer h3{color:white;font-size:25px}footer p,footer a{font-size:14px;color:#d5e4f1}footer a{text-decoration:none}footer nav{display:grid;gap:7px}.foot-bottom{border-top:1px solid #ffffff30;margin-top:38px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#b9cfe0}.legend{display:flex;gap:24px;flex-wrap:wrap;font-size:13px;margin-bottom:25px}.legend span{display:flex;gap:8px;align-items:center}.dot{width:9px;height:9px;border-radius:50%;background:var(--blue);display:inline-block}.dot.grey{background:var(--grey)}.map{position:relative;width:100%;margin:0 auto 30px;isolation:isolate}.map-image{display:block;width:100%;height:auto}.pin{position:absolute;transform:translate(-50%,-50%);padding:0;width:26px;height:26px;background:transparent;border:0;z-index:2}.pin:before{content:'';display:block;position:absolute;left:8px;top:8px;width:10px;height:10px;border:1px solid white;border-radius:50%;background:var(--grey);box-shadow:0 1px 4px #0004}.pin.almanta:before{background:var(--blue)}.pin.almanta:after{content:'';position:absolute;inset:8px;border-radius:50%;border:1px solid var(--blue);animation:pulse 2.6s ease-out infinite}.pin[aria-expanded=true]{z-index:5}.pin[aria-expanded=true]:before{outline:3px solid #5da8d166}.tooltip{position:absolute;width:280px;max-width:90vw;background:white;box-shadow:0 5px 28px #1c3d7f25;border:1px solid var(--line);border-radius:7px;z-index:10;padding:17px 19px;font-size:13px;line-height:1.5;transform:translate(-50%,-100%);margin-top:-18px}.tooltip[hidden]{display:none}.tooltip strong{font-size:14px;color:var(--blue);display:block;margin-bottom:7px}.tooltip p{margin:0 0 8px}.tooltip .category{font-size:11px;color:var(--muted);margin:4px 0 8px}.tooltip hr{border:0;border-top:1px solid var(--line);margin:10px 0}.tooltip .close{position:absolute;right:7px;top:4px;background:white;border:0;color:var(--muted);font-size:18px;line-height:1}.map-hint{font-size:12px;color:var(--muted)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.filters button{padding:7px 17px;border:1px solid var(--line);border-radius:30px;color:var(--blue);background:white;font-size:13px}.filters button[aria-pressed=true]{background:var(--blue);color:white}.reference-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.reference-list details{border:1px solid var(--line);border-left:3px solid var(--grey);border-radius:3px;align-self:start;background:white}.reference-list details.almanta{border-left-color:var(--blue)}.reference-list summary{padding:16px;font-size:14px;font-weight:600;cursor:pointer}.reference-list .ref-body{padding:0 17px 16px;font-size:13px}.reference-list .category{font-size:11px;color:var(--muted);margin-bottom:7px}.reference-list p{margin-bottom:8px}.reference-list hr{border:0;border-top:1px solid var(--line)}.reference-list strong{display:block;margin-bottom:5px}.contact-box{padding:36px;border:1px solid var(--line)}.contact-box a{font-size:22px;overflow-wrap:anywhere}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.plain-list{padding-left:20px}.plain-list li{margin:9px 0}.welcome-copy{max-width:780px}.back-link{font-size:13px;display:inline-block;margin-bottom:25px}.home-team{display:flex;gap:35px;margin:25px 0}.home-team strong{display:block}.home-team span{display:block;font-size:13px;color:var(--muted)}@keyframes pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(3);opacity:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pin.almanta:after{animation:none}}
@media(max-width:1000px){.site-header{gap:16px}.brand img{width:165px}.site-header nav{gap:15px}.site-header nav a{font-size:12px}.split{gap:35px}.reference-list{grid-template-columns:1fr 1fr}.person{padding:25px}}
@media(max-width:760px){.site-header{min-height:78px;padding:14px 5%;gap:15px}.brand img{width:155px}#menu-toggle{display:block;margin-left:auto;border:0;background:none;color:var(--blue);font-size:12px}#menu-toggle span{font-size:22px;margin-left:7px}.site-header #language{padding-left:14px}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 5% 25px;border-bottom:1px solid var(--line);box-shadow:0 10px 20px #0001}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:5px}.site-header nav a{font-size:16px;padding:10px}.site-header nav .nav-contact{margin-top:10px;text-align:center}.hero{padding:60px 0 40px}.hero h1{font-size:34px}.hero-foot{margin-top:40px;gap:15px;flex-wrap:wrap;font-size:10px}.section{padding:48px 0}.section-head{display:block}.section-head h2{margin-bottom:20px}.grid3,.split,.detail-grid,.team-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.grid3{gap:15px}.photo{height:300px}.reverse .photo{order:2}.process{grid-template-columns:1fr 1fr}.page-title{padding:40px 0}.page-title .lead{font-size:27px}.person h2{font-size:24px}.person-top{gap:15px}.monogram{width:65px;height:65px}.cta{padding:50px 5%}footer .foot-grid{grid-template-columns:1fr;gap:25px}.foot-bottom{flex-direction:column;gap:10px}.reference-list{grid-template-columns:1fr}.tooltip{position:relative!important;left:auto!important;top:auto!important;transform:none;margin:15px 0 0;width:100%;max-width:none}.map{overflow:visible}.map-hint{margin-bottom:20px}.legend{gap:10px;flex-direction:column}.home-team{flex-direction:column;gap:15px}.contact-box{padding:25px}.contact-box a{font-size:19px}}
.map-stage{position:relative}
/* Clients are Almanta references; retain the original colours of each identity. */
.client-band{padding:0 0 55px;background:#fff}
.client-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:38px}
.client-heading .eyebrow{font-size:10px;margin-bottom:10px}
.client-heading h2{font-size:clamp(24px,2.3vw,30px);margin:0}
.client-rail{overflow:hidden;overflow:clip;margin-top:24px;padding:8px 0}
.client-track{display:flex;width:max-content;animation:client-scroll 48s linear infinite}
.client-group{display:flex;align-items:center;flex-shrink:0}
.client-logo{width:205px;height:104px;padding:10px 27px;display:flex;align-items:center;justify-content:center;flex-shrink:0;text-decoration:none;border-radius:4px}
.client-logo img{display:block;max-width:100%;max-height:78px;width:auto;height:auto;object-fit:contain}
.client-logo-wide{width:290px;padding:10px 18px}
.client-logo-wide img{max-height:100px}
.client-logo:focus-visible{outline-offset:-4px}
.client-rail:hover .client-track,.client-rail:focus-within .client-track{animation-play-state:paused}
@keyframes client-scroll{to{transform:translateX(-50%)}}
@media(max-width:760px){.client-band{padding-bottom:36px}.client-heading{padding-top:28px;gap:16px;align-items:flex-end}.client-heading h2{font-size:24px}.client-heading .eyebrow{font-size:9px}.client-rail{margin-top:16px}.client-logo{width:175px;height:94px;padding:10px 22px}.client-logo img{max-height:72px}.client-logo-wide{width:255px;padding:10px 15px}.client-logo-wide img{max-height:92px}}
@media(prefers-reduced-motion:reduce){.client-track{animation:none;width:100%}.client-group{width:100%;flex-wrap:wrap;justify-content:center}.client-group[aria-hidden]{display:none}}
.shared-systems{display:grid;grid-template-columns:1.65fr 1fr;align-items:center;gap:38px;margin-top:32px;padding:28px 32px;background:var(--pale);border-left:3px solid var(--sky)}.shared-systems h3{font-size:26px}.shared-systems p{font-size:15px;margin-bottom:0}.shared-systems ul{margin:0;padding-left:20px;font-size:14px}.shared-systems li{margin:10px 0}.team-intro{max-width:960px;margin:0 0 38px;font-size:17px;line-height:1.7}@media(max-width:760px){.shared-systems{grid-template-columns:1fr;gap:15px;padding:23px}.team-intro{font-size:16px;margin-bottom:28px}}

.profile-summary .person-top{margin-bottom:0}

/* Photography complements the original illustrations and brand assets. */
.domain{border:0;padding:0 0 12px;overflow:hidden}
.domain-photo{display:block;width:100%;height:195px;object-fit:cover;object-position:center 62%;border-radius:3px;margin-bottom:24px}
.domain-copy{padding:0 3px}
.shared-visual img{display:block;width:100%;height:175px;object-fit:cover;border-radius:3px;margin-bottom:16px}
.expertise-photos{display:grid;gap:24px;margin:0 0 35px}
.photo-pair{grid-template-columns:1.35fr 1fr}
.expertise-photos figure{margin:0;min-width:0}
.expertise-photos img{display:block;width:100%;height:280px;object-fit:cover;object-position:center 60%;border-radius:3px}
.photo-wide img{height:350px;object-position:center 68%}
.expertise-photos figcaption{padding-top:12px;font-size:12px;color:var(--muted)}
.photo-credits{margin-top:15px;font-size:11px;color:#b9cfe0}
.photo-credits summary{cursor:pointer;width:fit-content}
.photo-credits p,.photo-credits a{font-size:11px;margin:10px 0 0;color:#d5e4f1}
.photo-credits a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.domain-photo{height:210px;margin-bottom:22px}.grid3{gap:32px}.shared-visual img{height:190px}.photo-pair{grid-template-columns:1fr}.expertise-photos{gap:22px}.expertise-photos img,.photo-wide img{height:230px}}

/* Original Almanta / Enfold visual treatment, from its public custom.css.
   Keep the transparent artwork at native size; enlarging it breaks the wave join. */
:root{--pale:#f5f5f5;--footer-blue:#223f7e}
.site-header{min-height:90px;padding:16px max(4vw,20px);background:#fff;border-bottom:0;transition:background-color .4s ease-in-out,color .4s ease-in-out,box-shadow .4s ease-in-out}
.site-header nav a{font-size:14px}
.brand img{transition:filter .4s ease-in-out}
.page-home .site-header{background:transparent;color:#fff}
.page-home .site-header .brand img{filter:brightness(0) invert(1)}
.page-home .site-header nav .nav-contact{border-color:#fff}
.page-home .site-header #language{color:#fff;border-color:#ffffff60}
.hero{margin-top:-90px;min-height:max(548px,43.333vw);padding:110px 0 55px;display:flex;align-items:center;justify-content:center;text-align:center;background:#1b395f;isolation:isolate;overflow:hidden}
.hero:before,.hero:after{content:none}
.hero-image{position:absolute;inset:0;z-index:-1;display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1)}
.hero-ready .hero-image{animation:original-hero-zoom 3s 1 ease-in-out both}
.hero-mark{position:absolute;right:calc(5% + 50px);bottom:-10px;width:167px;height:155px;object-fit:contain;pointer-events:none}
.hero-caption{position:relative;max-width:850px;width:54%;margin:auto}
.hero h1{font-size:48px;font-weight:300;line-height:1.08;letter-spacing:0;max-width:750px;margin:0 auto 24px}
.hero .lead{font-size:32px;font-weight:500;line-height:1.2;max-width:800px;margin:0 auto 22px}
.hero .intro{font-size:19px;line-height:1.4;color:#fff;max-width:800px;margin:0 auto 28px}
.hero .actions{justify-content:center}
.hero-ready h1{animation:original-caption-top .5s 1 ease-out both}
.hero-ready .hero-caption-content{animation:original-caption-bottom .5s 1 ease-out both}
.button{font-size:16px;line-height:1.4;padding:6px 13px 8px;border-radius:50px;gap:0;transition:opacity .4s ease-in-out,background-color .4s ease-in-out,color .4s ease-in-out}
.button:after{content:none}
.button:hover{opacity:.8;background:transparent;color:var(--blue)}
.button.white{border-color:#fff;color:#fff}
.button.white:hover{background:transparent;color:#fff}
.page-title{background:#f5f5f5 url('/almanta-assets/20261014/assets/vagues-bleues-original.png') no-repeat right bottom;background-size:auto;color:var(--blue);padding:50px 0 57px}
.page-title h1{color:var(--blue);font-size:36px;font-weight:300;letter-spacing:0;margin-bottom:14px}
.page-title .lead{font-size:26px;line-height:1.15;max-width:720px}
.page-title .eyebrow{color:var(--muted)}
.cta{background:#fff url('/almanta-assets/20261014/assets/vague2.png') no-repeat left bottom;background-size:auto;text-align:center;padding:55px 0 0;min-height:270px}
.cta-copy{min-height:215px;padding:0 20% 35px}
.cta h2{font-size:28px;line-height:1.1;font-weight:400;letter-spacing:0;margin:0 0 17px}
.cta p{font-size:16px;line-height:1.5;max-width:none;margin:0 0 24px}
footer#footer{background:none;padding:0;color:var(--blue)}
.brand-footer{position:relative;height:359px;padding:15px 0 30px;display:flex;align-items:center;background-image:url('/almanta-assets/20261014/assets/vagues.png'),url('/almanta-assets/20261014/assets/traits.png');background-repeat:no-repeat,no-repeat;background-position:top left,87% 205px;background-size:contain,auto;background-color:var(--footer-blue);color:#fff}
.original-footer-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0;width:calc(100% - 100px);max-width:1500px}
.footer-contact{margin:30px 0 30px 35px}
footer .footer-contact h3{font-family:Comfortaa,Arial,sans-serif;font-size:28px;font-weight:300;line-height:1.1;color:#fff;margin:0 0 17px}
footer .footer-address{font-family:'Cormorant Garamond',Georgia,serif;font-size:21px;line-height:24px;color:#fff;padding-left:30px;background:url('/almanta-assets/20261014/assets/geoloc.png') no-repeat left top;margin:0 0 18px}
footer .footer-email{padding-left:30px;background:url('/almanta-assets/20261014/assets/Enveloppe.png') no-repeat left 4px;margin:0}
footer .footer-email a{font-size:16px;color:#fff;text-decoration:none}
.footer-social{position:absolute;top:123px;right:85px;padding:0;text-align:right}
.footer-social img{display:inline-block;width:43px;height:43px}
.footer-social a{display:inline-block;transition:opacity .4s ease-in-out}
.footer-social a:hover{opacity:.7}
.footer-socket{background:#fff;padding:12px 0;color:var(--blue);text-align:center}
.footer-legal{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 13px;font-size:13px}
.footer-legal a{font-size:13px;color:var(--blue)}
.photo-credits{margin-top:9px;color:var(--muted)}
.photo-credits summary{margin:auto}
.photo-credits p,.photo-credits a{color:var(--muted)}
#back-to-top{position:fixed;right:50px;bottom:50px;z-index:30;width:50px;height:50px;padding:14px;border:0;border-radius:50%;color:white;background:#39a8df;opacity:0;visibility:hidden;transition:opacity .3s ease-out,visibility .3s ease-out}
#back-to-top.visible{opacity:1;visibility:visible;animation:original-pop .3s 1 cubic-bezier(.175,.885,.32,1.275)}
#back-to-top svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}
.motion-pending{opacity:0}
.motion-visible{animation:original-fade-in 1.5s 1 ease-out both}
@keyframes original-hero-zoom{from{transform:scale(1)}to{transform:scale(1.25)}}
@keyframes original-caption-top{from{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes original-caption-bottom{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes original-fade-in{from{opacity:0}to{opacity:1}}
@keyframes original-pop{from{transform:scale(.8)}to{transform:scale(1)}}
@media(max-width:1150px){.hero-caption{width:90%}.hero h1{font-size:35px}.hero .lead{font-size:27px}.hero-mark{right:4%}.site-header nav{gap:18px}.site-header nav a{font-size:13px}}
@media(max-width:1071px){.brand-footer{background-size:cover,auto}}
@media(max-width:989px){.cta-copy{padding-left:4%;padding-right:4%}.hero-mark{right:0}}
@media(max-width:760px){
 .site-header{min-height:78px;padding:14px 5%;gap:15px}
 .page-home .site-header{background:#fff;color:var(--blue)}
 .page-home .site-header .brand img{filter:none}
 .page-home .site-header #language{color:var(--blue);border-color:var(--line)}
 .page-home .site-header nav .nav-contact{border-color:var(--blue)}
 .hero{margin-top:0;min-height:360px;padding:42px 0}
 .hero-caption{width:90%;max-width:none}
 .hero h1{font-size:27px;line-height:1.15;margin-bottom:18px}
 .hero .lead{font-size:24px;line-height:1.15;margin-bottom:18px}
 .hero .intro{font-size:16px;margin-bottom:22px}
 .hero-mark{display:none}
 .page-title{padding:36px 0;background-size:auto 100%}
 .page-title h1{font-size:30px}
 .page-title .lead{font-size:24px;max-width:95%}
 .cta{min-height:0;padding-top:55px}
 .cta-copy{min-height:0;padding:20px 4% 30px}
 .cta h2{font-size:27px}
 .cta p{font-size:16px}
 .brand-footer{height:auto;min-height:300px;display:block;padding:25px 0 30px;background-image:url('/almanta-assets/20261014/assets/traits.png');background-position:bottom right;background-size:auto}
 .original-footer-grid{width:93%;grid-template-columns:1fr}
 .footer-contact{margin:20px 0 24px 18px}
 .footer-social{position:static;padding:0 0 0 18px;text-align:left}
 .footer-address{padding-right:10px}
 #back-to-top{right:20px;bottom:20px;width:42px;height:42px;padding:10px}
}
@media(prefers-reduced-motion:reduce){
 .hero-ready .hero-image{animation:none;transform:scale(1.25)}
 .hero-ready h1,.hero-ready .hero-caption-content,.motion-visible,#back-to-top.visible{animation:none}
 .motion-pending{opacity:1}
 .site-header,.brand img,.button,.footer-social a,#back-to-top{transition:none}
}

/* Language flags reused from the original Almanta site. */
.site-header #language{display:inline-flex;align-items:center;justify-content:center;min-height:44px;flex-shrink:0}
.language-flag{display:block;width:18px;height:12px}

/* Original page preloader: 80px Almanta mark, 20px ring and a white fade. */
.page-loader{position:fixed;inset:0;z-index:1000000;display:grid;place-items:center;background:#fff;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s ease,visibility 0s linear .4s}
.page-loader.is-loading{opacity:1;visibility:visible;pointer-events:auto;transition:none}
.page-loader-content{text-align:center}
.page-loader-content img{display:block;width:80px;height:80px;object-fit:contain;margin:0 auto 20px}
.page-loader-ring{display:block;width:20px;height:20px;margin:0 auto;border:2px solid #1c3d7f;border-left-color:#f5f5f5;border-radius:50%}
.page-loader.is-loading .page-loader-ring{animation:original-loader-spin .8s linear infinite}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes original-loader-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.page-loader{transition:none}.page-loader.is-loading .page-loader-ring{animation:none}}

/* A restrained blue/white rhythm, using the original Almanta panel colour. */
.blue-panel{background:var(--footer-blue);color:#e7eef7;padding:40px;border:0}
.blue-panel h2,.blue-panel h3,.blue-panel strong{color:#fff}
.blue-panel .eyebrow{color:#c4deef}
.blue-panel .button{border-color:#ffffffb3;color:#fff}
.blue-panel .button:hover{background:#fff;color:var(--blue)}
.blue-panel a:focus-visible{outline-color:#fff}
.blue-panel p:last-child{margin-bottom:0}
.feature-split{gap:0;align-items:stretch}
.feature-split>.photo{height:100%;min-height:460px;object-fit:cover}
.feature-split>.blue-panel{padding:40px 42px}
.home-services{padding-top:0;padding-bottom:0}
.home-services .service-item{padding:16px 0;border-color:#ffffff30}
.home-services .service-item h3{font-size:27px;margin-bottom:7px}
.home-services .service-item p{color:#e7eef7}
.home-services .blue-panel h2{margin-bottom:14px}
.shared-systems.blue-panel{padding:32px;border:0;gap:40px}
.shared-systems.blue-panel .shared-visual img{border-radius:0}
.service-row{padding:45px 0;border-bottom:1px solid var(--line)}
.service-row:first-child{padding-top:0}
.service-row:last-child{border:0;padding-bottom:0}
.service-row.blue-panel{padding:38px 40px;margin:0;border:0;gap:45px}
.service-row.blue-panel .note{background:#ffffff0d;color:#e7eef7;border-left-color:var(--sky);margin-bottom:0}
.service-row.blue-panel .lead{margin-bottom:0}
.approach-split{gap:0;align-items:stretch;background:#fff}
.approach-split>.blue-panel{display:flex;flex-direction:column;justify-content:center;padding:40px}
.approach-split h2{margin-bottom:0}
.approach-copy{padding:38px 40px}
.approach-copy p:last-child{margin-bottom:0}
.mission-support{padding-top:12px;padding-bottom:30px}
.mission-support .blue-panel{padding:38px 40px}
.contact-box.blue-panel{align-self:start}
.contact-box.blue-panel hr{border-color:#ffffff30!important}
@media(max-width:1000px) and (min-width:761px){.feature-split>.blue-panel,.approach-split>.blue-panel,.approach-copy{padding:30px}.feature-split h2{font-size:28px}}
@media(max-width:760px){
 .blue-panel,.feature-split>.blue-panel,.shared-systems.blue-panel,.service-row.blue-panel,.approach-split>.blue-panel,.approach-copy,.mission-support .blue-panel{padding:28px 24px}
 .feature-split,.approach-split{gap:0}
 .feature-split>.photo{height:260px;min-height:0}
 .shared-systems.blue-panel{gap:24px}
 .service-row{padding:34px 0}
 .service-row.blue-panel{gap:18px}
 .approach-split h2{font-size:27px}
 .mission-support{padding-top:0;padding-bottom:16px}
}

/* CV-based biographies, aligned with the existing profile cards. */
.profile-bio{margin-top:26px;padding-top:23px;border-top:1px solid var(--line)}
.profile-bio p{line-height:1.75;margin-bottom:18px}
.profile-bio p:last-child{margin-bottom:0}
.home-services .service-item h3{font-size:26px}
/* Keep the five service families compact and aligned with the existing panels. */
.home-services .service-item{padding:13px 0}
.services-intro{max-width:880px;margin:0 0 44px}
.services-list .service-row{align-items:start}
.services-list .service-row h2{font-size:clamp(25px,2.6vw,34px)}
@media(max-width:760px){.services-intro{margin-bottom:32px}.home-services .service-item{padding:14px 0}}
@media(max-width:760px){.profile-bio{margin-top:22px;padding-top:20px}}

/* Leadership and expert profiles share the same typography and visual identity. */
.person .person-name{font-family:Comfortaa,Arial,sans-serif;font-size:26px;font-weight:400;line-height:1.28;margin-bottom:8px}
.team-experts{margin-top:56px;padding-top:48px;border-top:1px solid var(--line)}
.expert-profile{display:grid;grid-template-columns:1fr 1.35fr;align-items:start;gap:40px}
.expert-profile .profile-bio{margin-top:0;padding:0 0 0 36px;border-top:0;border-left:1px solid var(--line)}
@media(max-width:960px){.expert-profile{grid-template-columns:1fr;gap:26px}.expert-profile .profile-bio{padding:23px 0 0;border-left:0;border-top:1px solid var(--line)}}
@media(max-width:760px){.person .person-name{font-size:24px}.team-experts{margin-top:38px;padding-top:34px}.expert-profile{gap:22px}}

/* A shared composition for each technical expertise. */
.domain-overview-media{margin:0 0 42px}
.domain-overview-media img{width:100%;height:310px;display:block;object-fit:cover;border-radius:3px;object-position:center 60%}
.domain-overview-media[data-domain="cote-piste"] img{object-position:center 46%}
.domain-overview-media[data-domain="energie"] img{object-position:center 68%}
.domain-overview-media figcaption{margin-top:12px;color:var(--muted);font-size:12px}
.expertise-content{padding-top:45px;padding-bottom:38px}
.expertise-content .subnav{margin-bottom:28px}
.expertise-content h2{font-size:28px}
.expertise-content .section-head{margin-bottom:26px}
.expertise-content .detail-card{border-radius:0;padding:28px 30px;border:0;border-top:2px solid var(--sky);background:var(--pale)}
.expertise-content .detail-card h3{font-size:27px}
.expertise-content .detail-grid{gap:24px}
.expertise-content .note{margin:25px 0 0}

/* Architectural line drawings, with real text and keyboard-operable controls. */
.airport-overview{padding-top:8px;padding-bottom:64px}
.airport-overview .section-head{align-items:start;margin-bottom:26px}
.airport-overview .section-head p{max-width:410px;font-size:15px;color:var(--muted)}
.airport-overview .eyebrow{margin-bottom:12px}
.airport-overview h2{font-size:30px}
.airport-diagram{border-top:1px solid var(--line)}
.airport-zones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;position:relative;background:linear-gradient(#fff,#f3f8fb)}
.airport-zone{position:relative;min-width:0;padding:0 24px 26px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--blue);text-align:left;transition:background .22s}
.airport-zone:last-child{border-right:0}
.airport-zone:hover,.airport-zone[aria-pressed="true"]{background:#eaf3f8}
.airport-zone:focus-visible{outline-offset:-4px;z-index:2}
.airport-scene{display:block;width:100%;height:244px;transition:transform .3s ease;overflow:visible}
.airport-zone:hover .airport-scene{transform:translateY(-4px)}
.scene-ground{fill:#e6eff4;stroke:none}
.scene-fill{fill:#fff}
.scene-roof{fill:#f0f7fa}
.scene-glass{fill:#cde8f2}
.scene-grid{stroke:#77abc3;stroke-width:1}
.scene-solar{fill:#295488;stroke:#1c3d7f}
.scene-solar+.scene-grid{stroke:#a2d4e7}
.scene-road{stroke:#d0e0e9;stroke-width:13}
.scene-road-mark{stroke:#fff;stroke-width:1.2;stroke-dasharray:7 6}
.scene-car{fill:#7baccc;stroke:#467ba5}
.scene-tree{stroke:#79a5ad;fill:#e2eeec}
.scene-light{fill:#58add4;stroke:#fff;stroke-width:1}
.scene-runway{fill:#294f79;stroke:none}
.scene-runway-mark{stroke:#fff;stroke-width:1.7;stroke-dasharray:12 9}
.scene-threshold{stroke:#fff;stroke-width:2}
.scene-taxiway{stroke:#cbdce7;stroke-width:10;fill:none;stroke-linejoin:round}
.scene-taxi-mark{stroke:#77aec7;stroke-width:1;fill:none}
.scene-plane{fill:#fff;stroke:#1c3d7f;stroke-width:1.5}
.airport-zone-name{display:flex;align-items:center;justify-content:space-between;gap:10px;font:23px/1.3 Comfortaa,Arial,sans-serif;margin-bottom:7px}
.zone-indicator{font:22px/1 Quicksand,Arial,sans-serif;color:var(--sky);transition:transform .25s}
.airport-zone[aria-pressed="true"] .zone-indicator{transform:rotate(45deg)}
.airport-zone-caption{display:block;color:var(--muted);font-size:12px}
.airport-backbone{background:var(--blue);color:#fff;padding:22px 30px 26px;position:relative}
.airport-backbone:before{content:'';position:absolute;top:-10px;left:16.66%;width:66.67%;height:10px;border-left:1px solid var(--sky);border-right:1px solid var(--sky)}
.airport-backbone:after{content:'';position:absolute;top:-10px;left:50%;height:10px;border-left:1px solid var(--sky)}
.backbone-label{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:#c5e3f0;margin-bottom:17px}
.backbone-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.backbone-links a{color:#fff;text-decoration:none;font-size:13px;display:flex;gap:10px;align-items:center;line-height:1.5}
.backbone-links a:hover{text-decoration:underline;text-underline-offset:4px}
.backbone-links a>span{font:23px/1 Arial,sans-serif;color:#a9d4ea}
.airport-area-detail{padding:30px 32px;background:#f3f8fb;display:grid;grid-template-columns:1fr 1.6fr;gap:42px;min-height:199px;border-bottom:1px solid var(--line)}
.airport-area-detail h3{font-size:29px;margin-bottom:0}
.airport-area-detail p{font-size:14px;line-height:1.75;margin-bottom:16px}
.airport-area-detail ul{display:flex;flex-wrap:wrap;gap:7px 18px;padding:0;margin:0;list-style:none;font-size:11px;color:var(--blue)}
.airport-area-detail li:before{content:'·';color:var(--sky);margin-right:7px;font-weight:bold}
.expertise-overview-cards{padding-bottom:48px}
.expertise-overview-cards .note{margin-bottom:0}
@media(max-width:1000px){.airport-zone{padding-left:18px;padding-right:18px}.airport-scene{height:218px}.airport-zone-name{font-size:21px}.airport-area-detail{gap:28px}}
@media(max-width:760px){
 .expertise-content{padding-top:30px;padding-bottom:30px}
 .domain-overview-media{margin-bottom:32px}.domain-overview-media img{height:220px}.domain-overview-media figcaption{font-size:11px}
 .expertise-content h2{font-size:25px}.expertise-content .detail-card{padding:24px}.expertise-content .detail-grid{gap:18px}
 .airport-overview{padding-top:0;padding-bottom:42px}.airport-overview h2{font-size:26px}.airport-overview .section-head p{max-width:none;font-size:14px}
 .airport-zones{grid-template-columns:1fr}
 .airport-zone{padding:12px 20px 12px 126px;min-height:120px;border-right:0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}
 .airport-scene{position:absolute;left:5px;top:0;width:118px;height:116px}
 .airport-zone-name{font-size:20px;margin-bottom:8px}.airport-zone-caption{font-size:11px;line-height:1.6}
 .airport-backbone{padding:23px}.airport-backbone:before,.airport-backbone:after{display:none}
 .backbone-links{grid-template-columns:1fr;gap:16px}.backbone-label{margin-bottom:20px}.backbone-links a{font-size:13px}
 .airport-area-detail{grid-template-columns:1fr;padding:25px 23px;gap:16px;min-height:0}.airport-area-detail h3{font-size:27px}.airport-area-detail .eyebrow{font-size:10px;margin-bottom:10px}.airport-area-detail p{font-size:14px}
 .airport-area-detail ul{gap:7px 15px}.expertise-overview-cards{padding-bottom:40px}
}
@media(prefers-reduced-motion:reduce){.airport-zone,.airport-scene,.zone-indicator{transition:none}.airport-zone:hover .airport-scene{transform:none}}

.domain-overview-media img{margin-bottom:0}
.zone-indicator{display:block;width:9px;height:9px;border:1px solid var(--sky);border-radius:50%;flex-shrink:0}
.airport-zone[aria-pressed="true"] .zone-indicator{transform:none;background:var(--blue);border-color:var(--blue)}

/* Shared identities connect the photo cards and the airport diagram. */
.expertise-icon{display:block;width:30px;height:30px;flex-shrink:0;color:var(--sky)}
.domain-copy>.expertise-icon{width:38px;height:38px;margin:0 0 20px}
.backbone-links a{gap:14px}
.backbone-links a>.expertise-icon{width:27px;height:27px;color:#b9ddec}
.backbone-links a>span{font:13px/1.5 Quicksand,Arial,sans-serif;color:#fff}
.airport-area-detail{display:block;padding:30px 32px 32px;min-height:0}
.area-summary{display:grid;grid-template-columns:1fr 1.6fr;gap:42px;align-items:start}
.area-summary>p{margin-bottom:0}
.area-expertise-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:28px;border-top:1px solid var(--line);padding-top:23px}
.area-expertise-link{display:flex;gap:12px;align-items:flex-start;text-decoration:none;padding:0 20px;border-right:1px solid var(--line);min-width:0}
.area-expertise-link:first-child{padding-left:0}
.area-expertise-link:last-child{padding-right:0;border-right:0}
.area-expertise-link>.expertise-icon{width:23px;height:23px;margin-top:2px}
.area-expertise-link>span:not(.area-link-arrow){min-width:0}
.area-expertise-link strong{font-size:12px;line-height:1.5;display:block;font-weight:600;margin-bottom:7px;color:var(--blue)}
.area-expertise-link strong+span{display:block;font-size:11px;line-height:1.7;color:var(--muted)}
.area-link-arrow{color:var(--sky);margin-left:auto;font-size:17px;line-height:1.5}
.area-expertise-link:hover strong{text-decoration:underline;text-underline-offset:3px}
.area-expertise-link:hover .area-link-arrow{color:var(--blue)}
@media(max-width:1000px){.area-summary{gap:28px}.area-expertise-link{padding:0 12px;gap:9px}}
@media(max-width:760px){
 .airport-area-detail{padding:25px 23px}
 .area-summary{grid-template-columns:1fr;gap:16px}
 .area-expertise-links{grid-template-columns:1fr;gap:0;margin-top:23px;padding-top:0}
 .area-expertise-link,.area-expertise-link:first-child,.area-expertise-link:last-child{padding:18px 0;border-right:0;border-bottom:1px solid var(--line);gap:13px}
 .area-expertise-link:last-child{border-bottom:0;padding-bottom:0}
 .area-expertise-link strong{font-size:13px;margin-bottom:3px}
 .area-expertise-link strong+span{font-size:12px}
}

/* Expertise details unfold in place, beneath the airport diagram. */
button.domain{font:inherit;color:inherit;text-align:left;width:100%;background:transparent;border:0;cursor:pointer}
.domain[aria-expanded="true"] .text-link{color:var(--blue);border-bottom-width:2px}
.backbone-links button{display:flex;align-items:center;gap:14px;border:0;padding:0;background:transparent;text-align:left;color:#fff;line-height:1.5;font-size:13px}
.backbone-links button>.expertise-icon{width:27px;height:27px;color:#b9ddec}
.backbone-links button>span{font:13px/1.5 Quicksand,Arial,sans-serif}
.backbone-links button:hover>span,.backbone-links button[aria-expanded="true"]>span{text-decoration:underline;text-underline-offset:4px}
button.area-expertise-link{font:inherit;text-align:left;background:transparent;border:0;border-right:1px solid var(--line);width:100%;color:var(--ink)}
button.area-expertise-link:last-child{border-right:0}
.area-expertise-link[aria-expanded="true"] strong{text-decoration:underline;text-underline-offset:3px}
.inline-expertise[hidden]{display:none}
.inline-expertise{scroll-margin-top:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:40px}
.inline-expertise-heading{padding:35px 0;background:var(--pale)}
.inline-expertise-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.inline-expertise-toolbar .eyebrow{margin:0}
.inline-expertise-toolbar button{border:1px solid var(--line);border-radius:24px;padding:5px 14px;color:var(--blue);font-size:12px;background:#fff;display:flex;align-items:center;gap:14px}
.inline-expertise-toolbar button span{font-size:20px;line-height:1}
.inline-expertise h2[tabindex]{font-size:32px;margin-bottom:17px}
.inline-expertise h2[tabindex]:focus{outline:none}
.inline-expertise-heading .lead{font-size:26px;max-width:860px;margin:0}
.inline-expertise .subnav button{border:1px solid var(--line);padding:9px 16px;border-radius:30px;font-size:13px;color:var(--blue);background:white}
.inline-expertise .subnav button[aria-expanded="true"]{color:white;border-color:var(--blue);background:var(--blue)}
.inline-expertise .mission-support{padding-bottom:38px}
@media(max-width:760px){
 button.area-expertise-link{border-right:0;border-bottom:1px solid var(--line)}
 button.area-expertise-link:last-child{border-bottom:0}
 .inline-expertise-heading{padding:28px 0}.inline-expertise h2[tabindex]{font-size:27px}.inline-expertise-heading .lead{font-size:24px}
 .inline-expertise-toolbar{margin-bottom:20px}.inline-expertise .mission-support{padding-bottom:25px}
}

/* The airport diagram is now the entry point to the expertise page. */
.page-title+.airport-overview{padding-top:50px}
.domain-overview-media[data-domain="cote-piste"] img{object-position:center bottom}
.domain-photo[src="/almanta-assets/20261014/airfield-lighting-led.jpg"]{object-position:center bottom}
.airfield-photo-credit{display:block;font-size:10px;margin-top:6px;line-height:1.7}
.airfield-photo-credit a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:760px){.page-title+.airport-overview{padding-top:32px}}

/* A single contextual panel joins the selected airport area to its expertise. */
.unified-expertise-panel{position:relative;background:var(--blue);color:#fff;border-bottom:0;padding:32px}
.unified-expertise-panel:before{content:'';position:absolute;top:-10px;left:16.66%;width:66.67%;height:10px;border-left:1px solid var(--sky);border-right:1px solid var(--sky)}
.unified-expertise-panel:after{content:'';position:absolute;top:-10px;left:50%;height:10px;border-left:1px solid var(--sky)}
.unified-expertise-panel .eyebrow{color:#bddded}
.unified-expertise-panel h3{color:#fff}
.unified-expertise-panel .area-summary>p{color:#e1edf5}
.unified-expertise-panel .area-expertise-links{border-color:#ffffff30;margin-top:25px;padding-top:16px}
.unified-expertise-panel .area-expertise-link{color:#fff;border-color:#ffffff30;padding-top:9px;padding-bottom:9px;transition:background .2s}
.unified-expertise-panel .area-expertise-link strong{color:#fff;font-size:13px}
.unified-expertise-panel .area-expertise-link strong+span{color:#d8e8f3;font-size:12px}
.unified-expertise-panel .expertise-icon,.unified-expertise-panel .area-link-arrow{color:#aed9ee}
.unified-expertise-panel .area-expertise-link:hover,.unified-expertise-panel .area-expertise-link[aria-expanded="true"]{background:#ffffff0b}
.unified-expertise-panel .area-expertise-link:hover .area-link-arrow{color:#fff}
.unified-expertise-panel .area-expertise-link:focus-visible{outline-color:#fff;outline-offset:3px}
@media(max-width:760px){
 .unified-expertise-panel{padding:27px 23px}
 .unified-expertise-panel:before,.unified-expertise-panel:after{display:none}
 .unified-expertise-panel .area-expertise-links{padding-top:0;margin-top:23px}
 .unified-expertise-panel .area-expertise-link{padding:18px 0;border-color:#ffffff30}
 .unified-expertise-panel .area-expertise-link:last-child{padding-bottom:0}
}
@media(prefers-reduced-motion:reduce){.unified-expertise-panel .area-expertise-link{transition:none}}

/* Context photographs follow the airport area, without moving the controls. */
.airport-context-photo{position:relative;margin:30px -32px -32px;overflow:hidden;background:#173250;isolation:isolate}
.airport-context-photo img{display:block;width:100%;height:360px;object-fit:cover;object-position:center;animation:airport-photo-reveal .45s ease-out both}
.airport-context-photo[data-area-photo="airside"] img{object-position:center 72%}
.airport-context-photo[data-area-photo="landside"] img{object-position:center 62%}
.airport-context-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:44px 28px 20px;display:flex;justify-content:space-between;align-items:end;gap:20px;color:#fff;background:linear-gradient(transparent,#102641cf);font-size:13px;line-height:1.5}
.airport-context-photo small{font-size:10px;color:#e1edf5;white-space:nowrap}
.domain-overview-media[data-domain="cote-piste"] img,.domain-photo[src="/almanta-assets/20261014/airfield-lighting-dusk.jpg"]{object-position:center 72%}
@keyframes airport-photo-reveal{from{opacity:.4}to{opacity:1}}
@media(max-width:760px){.airport-context-photo{margin:25px -23px -27px}.airport-context-photo img{height:240px}.airport-context-photo figcaption{padding:40px 20px 16px;display:block;font-size:12px}.airport-context-photo small{display:block;font-size:9px;margin-top:4px}}
@media(prefers-reduced-motion:reduce){.airport-context-photo img{animation:none}}

.airport-context-photo[data-area-photo="terminal"] img{object-position:center bottom}

/* Contextual details stay visually attached to the airport diagram. */
.airport-overview:has(+.inline-expertise:not([hidden])){padding-bottom:0}
.inline-expertise{width:min(1160px,90%);margin:0 auto 40px;border:1px solid var(--line);border-top:0;scroll-margin-top:20px;background:#fff}
.context-detail-shell{padding:30px 32px 10px}
.context-detail-shell .inline-expertise-toolbar{margin-bottom:20px;gap:15px}
.context-detail-shell .inline-expertise-toolbar .eyebrow{line-height:1.7;letter-spacing:.09em}
.context-selectors{padding:18px 0 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:30px;display:grid;gap:12px}
.context-selector-row{display:flex;align-items:center;gap:16px}
.context-selector-row>span{min-width:67px;font-size:11px;color:var(--muted)}
.context-pills{display:flex;flex-wrap:wrap;gap:8px}
.context-pills button{background:#fff;border:1px solid var(--line);border-radius:24px;color:var(--blue);font-size:12px;padding:6px 14px;line-height:1.55;transition:background .2s,color .2s}
.context-pills button:hover{background:var(--pale)}
.context-pills button[aria-pressed="true"],.context-pills button[aria-expanded="true"]{background:var(--blue);border-color:var(--blue);color:#fff}
.context-detail-intro{display:grid;grid-template-columns:1fr 1.15fr;gap:38px;align-items:center;margin-bottom:28px}
.context-detail-intro .lead{font-size:25px;line-height:1.4;margin-bottom:0}
.context-detail-intro h2{font-size:30px;line-height:1.3}
.context-detail-photo{margin:0;min-width:0}
.context-detail-photo img{width:100%;height:265px;object-fit:cover;display:block;animation:airport-photo-reveal .35s ease-out both;background:var(--pale)}
.context-detail-photo figcaption{font-size:9px;color:var(--muted);line-height:1.6;margin-top:6px}
.context-detail-photo a{text-underline-offset:2px}
.context-content-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:38px;margin-bottom:28px}
.context-content-grid article{border-top:1px solid var(--line);padding-top:22px}
.context-content-grid .eyebrow{margin-bottom:12px;color:var(--blue)}
.context-content-grid p,.context-content-grid li{font-size:14px;line-height:1.8;color:var(--muted)}
.context-content-grid p{margin-bottom:0}
.context-content-grid ul{margin:0;padding-left:18px}
.context-content-grid li+li{margin-top:7px}
.context-interfaces{background:var(--blue);color:#fff;padding:24px 26px;margin-bottom:24px}
.context-interfaces h3{font-size:26px;color:#fff;margin-bottom:18px}
.context-interfaces>div{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.context-interfaces button{border:0;background:transparent;padding:0;display:flex;align-items:flex-start;gap:14px;text-align:left;color:#fff}
.context-interfaces .expertise-icon{color:#b9ddec;width:24px;height:24px}
.context-interfaces button>span:last-child{margin-left:auto;color:#b9ddec}
.context-interfaces strong{font-size:13px;display:block;margin-bottom:6px}
.context-interfaces strong+span{font-size:12px;line-height:1.7;color:#dceaf4;display:block}
.context-interfaces button:hover strong{text-decoration:underline;text-underline-offset:3px}
.context-service-link{font-size:12px;color:var(--muted);line-height:1.8}
.context-service-link a{color:var(--blue);white-space:nowrap;text-underline-offset:3px}
@media(max-width:760px){
 .context-detail-shell{padding:24px 20px 7px}
 .context-detail-shell .inline-expertise-toolbar{align-items:flex-start}
 .context-detail-shell .inline-expertise-toolbar .eyebrow{font-size:9px}
 .context-detail-shell .inline-expertise-toolbar button{white-space:nowrap;padding:4px 10px;gap:8px;font-size:11px}
 .context-selector-row{display:block}.context-selector-row>span{display:block;margin-bottom:7px;font-size:10px}
 .context-pills{gap:6px}.context-pills button{font-size:11px;padding:6px 10px}
 .context-detail-intro,.context-content-grid{grid-template-columns:1fr;gap:24px}
 .context-detail-intro h2{font-size:26px}.context-detail-intro .lead{font-size:22px}
 .context-detail-photo img{height:210px}.context-detail-photo figcaption{font-size:8px}
 .context-content-grid p,.context-content-grid li{font-size:13px}
 .context-interfaces{padding:22px 20px}.context-interfaces>div{grid-template-columns:1fr;gap:22px}
 .context-interfaces h3{font-size:24px}.context-service-link a{white-space:normal}
}
@media(prefers-reduced-motion:reduce){.context-detail-photo img{animation:none}.context-pills button{transition:none}}

/* Airport scopes are readable directly, with the three area selectors only. */
.area-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:26px;padding-top:24px;border-top:1px solid #ffffff30}
.area-scope{padding:0 24px;border-right:1px solid #ffffff30;min-width:0}
.area-scope:first-child{padding-left:0}.area-scope:last-child{padding-right:0;border-right:0}
.area-scope h4{display:flex;align-items:center;gap:12px;margin:0 0 14px;color:#fff;font:600 15px/1.5 Quicksand,Arial,sans-serif}
.area-scope .expertise-icon{width:24px;height:24px;flex-shrink:0;color:#aed9ee}
.airport-area-detail .area-scope ul{display:block;list-style:none;padding:0;margin:0;font-size:13px;line-height:1.75;color:#e0edf5}
.airport-area-detail .area-scope li{position:relative;padding-left:13px}
.airport-area-detail .area-scope li+li{margin-top:9px}
.airport-area-detail .area-scope li:before{content:'·';position:absolute;left:0;margin:0;color:#aed9ee}
@media(max-width:1000px){.area-scope{padding:0 16px}.area-scope h4{font-size:14px;gap:9px}.airport-area-detail .area-scope ul{font-size:12px}}
@media(max-width:760px){.area-scope-grid{grid-template-columns:1fr;gap:22px;margin-top:24px;padding-top:24px}.area-scope,.area-scope:first-child,.area-scope:last-child{padding:0;border:0}.area-scope h4{font-size:15px;margin-bottom:10px;gap:12px}.airport-area-detail .area-scope ul{font-size:13px}.airport-area-detail .area-scope li+li{margin-top:6px}}

/* Optional details replace the photograph, using the existing scope columns. */
.area-scope-toggle{display:block;width:100%;height:100%;border:0;border-radius:3px;background:transparent;padding:10px 9px;margin:-10px -9px;text-align:left;color:#fff;font:inherit;box-sizing:content-box;transition:background .2s,box-shadow .2s}
.area-scope-toggle:hover{background:#ffffff0b}
.area-scope-toggle[aria-expanded="true"]{background:#ffffff12;box-shadow:inset 0 -2px 0 #aed9ee}
.area-scope-toggle:focus-visible{outline-color:#fff;outline-offset:3px}
.scope-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px;color:#fff;font:600 15px/1.5 Quicksand,Arial,sans-serif}
.scope-toggle-mark{margin-left:auto;flex-shrink:0;color:#aed9ee;font-size:19px;font-weight:400}
.scope-items{display:block;color:#e0edf5;font-size:13px;line-height:1.75}
.scope-item{display:block;position:relative;padding-left:13px}.scope-item+.scope-item{margin-top:9px}
.scope-item:before{content:'·';position:absolute;left:0;color:#aed9ee}
.scope-compact-detail{display:grid;grid-template-columns:0.9fr 1.1fr;gap:32px;align-items:center;margin:30px -32px -32px;padding:28px 32px;min-height:360px;background:var(--pale);color:var(--ink)}
.scope-compact-detail .context-detail-photo{margin:0;min-width:0}
.scope-compact-detail .context-detail-photo img{display:block;width:100%;height:270px;object-fit:cover;animation:airport-photo-reveal .3s ease-out both}
.scope-compact-detail .context-detail-photo figcaption{font-size:9px;color:var(--muted);line-height:1.6;margin-top:6px}
.unified-expertise-panel .scope-compact-copy h4{font:400 24px/1.35 Comfortaa,Arial,sans-serif;color:var(--blue);margin:0 0 12px}
.airport-area-detail .scope-compact-copy p{font-size:14px;line-height:1.7;color:var(--ink);margin:0 0 13px}
.airport-area-detail .scope-compact-copy ul{display:block;margin:0;padding-left:18px;list-style:disc;color:var(--muted);font-size:13px;line-height:1.65}
.airport-area-detail .scope-compact-copy li+li{margin-top:6px}
.airport-area-detail .scope-compact-copy li:before{content:none}
@media(max-width:1000px){.scope-heading{font-size:14px;gap:9px}.scope-items{font-size:12px}.scope-compact-detail{gap:25px;grid-template-columns:.85fr 1.15fr}.unified-expertise-panel .scope-compact-copy h4{font-size:22px}}
@media(max-width:760px){.scope-heading{font-size:15px;margin-bottom:10px;gap:12px}.scope-items{font-size:13px}.scope-item+.scope-item{margin-top:6px}.area-scope-toggle{padding:9px 8px;margin:-9px -8px}.scope-compact-detail{grid-template-columns:1fr;gap:22px;margin:25px -23px -27px;padding:23px;min-height:0}.scope-compact-detail .context-detail-photo img{height:200px}.scope-compact-detail .context-detail-photo figcaption{font-size:8px}.airport-area-detail .scope-compact-copy p{font-size:13px}.airport-area-detail .scope-compact-copy ul{font-size:12px;line-height:1.75}.unified-expertise-panel .scope-compact-copy h4{font-size:22px}}
@media(prefers-reduced-motion:reduce){.area-scope-toggle{transition:none}.scope-compact-detail .context-detail-photo img{animation:none}}

.area-scope-toggle{display:flex;flex-direction:column;justify-content:flex-start}.area-scope-toggle .scope-heading{width:100%}


/* Keep the three airport areas compact, especially on shorter screens. */
.airport-overview .section-head{margin-bottom:22px}
@media(min-width:761px){
 .airport-scene{height:192px}
 .airport-zone{padding-bottom:20px}
}
@media(min-width:761px) and (max-height:800px){
 .airport-scene{height:148px}
 .airport-zone{padding-bottom:16px}
 .airport-zone-name{font-size:21px;margin-bottom:5px}
 .airport-overview .section-head{margin-bottom:18px}
 .airport-overview .eyebrow{margin-bottom:8px}
 .scope-compact-detail{min-height:310px;padding-top:22px;padding-bottom:22px}
 .scope-compact-detail .context-detail-photo img{height:230px}
 .airport-context-photo img{height:300px}
}
@media(max-width:760px){
 .airport-overview .section-head{margin-bottom:20px}
 .airport-zone{min-height:100px;padding:10px 18px 10px 108px}
 .airport-scene{left:5px;top:0;width:100px;height:98px}
 .airport-zone-name{font-size:18px;margin-bottom:5px}
}



/* A warm accent identifies Almanta assignments across the references page. */
:root{--project-accent:#e56d24}
.legend .dot:not(.grey){background:var(--project-accent)}
.pin.almanta:before{background:var(--project-accent);box-shadow:0 0 0 1px #fff,0 1px 4px #0004}
.pin.almanta:after{border-color:var(--project-accent)}
.pin.almanta[aria-expanded=true]:before{outline-color:#e56d2466}
.reference-list details.almanta{border-left-color:var(--project-accent)}

.airport-area-detail .scope-compact-copy .scope-delivery{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--line)}

/* Regional reference lists retain individual project disclosures. */
.reference-region{margin-top:34px}
.reference-region+.reference-region{margin-top:42px}
.reference-region-title{display:flex;align-items:center;gap:20px;font:400 25px/1.4 Comfortaa,Arial,sans-serif;margin:0 0 22px}
.reference-region-title:after{content:'';height:1px;flex:1;min-width:20px;background:var(--line)}
@media(max-width:760px){.reference-region-title{font-size:22px;gap:14px;margin-bottom:18px}.reference-region+.reference-region{margin-top:34px}}

/* Harmonised team portraits */
.person-portrait{display:block;width:112px;height:112px;flex:0 0 112px;object-fit:cover;object-position:center;border-radius:50%;background:#e8e8e8;filter:grayscale(1)}
.person-top>div{min-width:0}
@media(max-width:760px){.person.profile-summary{padding:26px}.person-portrait{width:88px;height:88px;flex-basis:88px}}

.legal-content{max-width:900px}.legal-content h3{margin-top:32px}.legal-content h3:first-child{margin-top:0}.legal-content p{max-width:850px}
