:root{--ink:#10314f;--navy:#075a8c;--deep:#082c46;--rust:#9a6a48;--sand:#f3f6f8;--paper:#fff;--line:#d8e2e8;--white:#fff;--muted:#5b7080;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #b98a68;outline-offset:4px}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-60px;z-index:100;background:#fff;padding:12px 18px}.skip-link:focus{top:16px}.eyebrow{margin:0 0 16px;color:var(--rust);font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.notice{background:var(--deep);color:#e8f2f7;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.notice__inner{height:34px;display:flex;align-items:center;justify-content:space-between}.notice a{text-decoration:underline;text-underline-offset:3px}.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-main{min-height:88px;display:flex;align-items:center;gap:35px}.brand{display:inline-flex;align-items:center;gap:13px;margin-right:auto}.brand strong,.brand small{display:block}.brand strong{font-family:"Source Serif 4",serif;font-size:1.18rem}.brand small{color:var(--muted);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.desktop-nav{display:flex;gap:27px}.desktop-nav a{font-size:.86rem;font-weight:600}.desktop-nav a:hover{color:var(--navy)}.header-contact{padding:10px 15px;border-left:1px solid var(--line);font-size:.82rem;font-weight:700}.mobile-nav{display:none}.hero{overflow:hidden;border-bottom:1px solid var(--line);background:#fff}.hero__grid{min-height:590px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:72px}.hero__copy{padding:70px 0}.hero h1,.section h2,.contact h2{font-family:"Source Serif 4",Georgia,serif;font-weight:600;letter-spacing:-.045em;line-height:.98}.hero h1{margin:0;font-size:clamp(3.25rem,6vw,5.8rem)}.hero h1 em{color:var(--navy);font-weight:600}.hero__lead{max-width:610px;margin:30px 0 0;color:#4e6678;font-size:1.15rem}.hero__actions{display:flex;align-items:center;gap:25px;margin-top:38px}.button{display:inline-flex;align-items:center;gap:28px;padding:14px 20px;font-weight:700;font-size:.84rem}.button--primary{background:var(--navy);color:#fff}.button--primary:hover{background:var(--deep)}.button--text{padding-inline:0;border-bottom:1px solid var(--ink)}.hero__identity{position:relative;isolation:isolate;min-height:400px;border-left:1px solid var(--line);overflow:hidden;display:flex;align-items:flex-end;padding:36px}.hero__identity:before{content:"";position:absolute;inset:0;z-index:-2;background-color:#d9eef8;background-image:url("/images/avion-bouy-reference.jpg");background-repeat:no-repeat;background-size:1705px 300px;background-position:center 24px;filter:saturate(.8) contrast(1.05)}.hero__identity:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,0) 24%,rgba(255,255,255,.2) 48%,rgba(255,255,255,.96) 79%),linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,0) 65%)}.hero__aviation-label{padding-left:19px;border-left:3px solid var(--rust)}.hero__aviation-label span{display:block;color:var(--rust);font-size:.68rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.hero__aviation-label strong{display:block;margin:2px 0 -3px;font-family:"Source Serif 4",Georgia,serif;color:var(--navy);font-size:3.9rem;line-height:1}.hero__aviation-label p{margin:0;color:var(--ink);font-size:.76rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.quick-access{background:var(--navy);color:white}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr)}.quick-grid a{min-height:142px;padding:25px 24px;border-right:1px solid rgba(255,255,255,.22);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px}.quick-grid a:first-child{border-left:1px solid rgba(255,255,255,.22)}.quick-grid a:hover{background:var(--deep)}.quick-number{align-self:start;color:#a8ccdf;font-size:.68rem}.quick-grid strong{font-family:"Source Serif 4",serif;font-size:1.12rem;line-height:1.18}.section{padding:110px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:45px}.section h2{margin:0;font-size:clamp(2.5rem,4.5vw,4.4rem)}.section-heading>a{font-size:.82rem;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:5px}.news-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:55px}.news-card--featured{display:grid;grid-template-columns:1fr 1fr;min-height:440px;background:white;border:1px solid var(--line)}.news-card__visual{background:var(--navy);color:white;display:grid;place-items:center;padding:30px;overflow:hidden}.news-card__visual span{font-family:"Source Serif 4",serif;font-size:3.1rem;line-height:.82;transform:rotate(-7deg);border:1px solid rgba(255,255,255,.6);padding:35px 22px;box-shadow:12px 12px 0 var(--rust)}.news-card__body{padding:38px;display:flex;flex-direction:column}.meta{color:var(--rust);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.news-card h3,.news-list h3{font-family:"Source Serif 4",serif;line-height:1.12}.news-card h3{font-size:2rem;margin:9px 0 18px}.news-card__body>p:not(.meta){color:var(--muted)}.news-card__body>a{margin-top:auto;font-weight:700;font-size:.83rem}.news-list article{position:relative;padding:4px 45px 25px 0;margin-bottom:25px;border-bottom:1px solid var(--line)}.news-list h3{font-size:1.35rem;margin:7px 0}.news-list article>p:not(.meta){color:var(--muted);font-size:.88rem}.news-list article>a{position:absolute;right:0;top:44%;font-size:1.3rem}.section--sand{background:var(--sand)}.split-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:50px}.split-heading>p{max-width:500px;color:var(--muted);font-size:1.05rem}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbd8df;border-left:1px solid #cbd8df}.services-grid a{position:relative;min-height:245px;padding:28px;border-right:1px solid #cbd8df;border-bottom:1px solid #cbd8df;transition:background .2s,color .2s}.services-grid a:hover{background:var(--navy);color:#fff}.services-grid span{font-size:.68rem;color:var(--rust)}.services-grid h3{font-family:"Source Serif 4",serif;font-size:1.6rem;margin:40px 0 10px}.services-grid p{color:var(--muted);font-size:.88rem;max-width:280px}.services-grid a:hover p{color:#d6e8f1}.services-grid b{position:absolute;right:28px;top:24px;font-weight:400}.commune__grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.commune__visual{min-height:590px;background:var(--navy);position:relative;color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.commune__visual:before{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.3);border-radius:50%}.commune__visual:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(255,255,255,.12);border-radius:50%}.commune__visual strong{font-family:"Source Serif 4",serif;font-size:6.5rem;letter-spacing:-.08em;z-index:1}.commune__visual small{letter-spacing:.25em;z-index:1}.horizon{position:absolute;left:0;right:0;bottom:23%;height:1px;background:var(--rust)}.commune__copy>p:not(.eyebrow){color:var(--muted);font-size:1.02rem;max-width:510px}.button--outline{margin-top:20px;border:1px solid var(--ink)}.button--outline:hover{background:var(--ink);color:#fff}.documents{border-top:1px solid var(--line)}.document-list{border-top:1px solid var(--line)}.document-list a{display:grid;grid-template-columns:70px 1fr auto;gap:25px;align-items:center;padding:25px 8px;border-bottom:1px solid var(--line)}.document-list a:hover{background:#f8fbfc;padding-inline:20px}.doc-type{color:var(--rust);font-size:.67rem;font-weight:700}.document-list strong,.document-list small{display:block}.document-list strong{font-family:"Source Serif 4",serif;font-size:1.2rem}.document-list small{color:var(--muted)}.local-life{background:#eaf3f7}.local-life__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.local-links{border-top:1px solid #bdd0da}.local-links a{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;padding:22px 4px;border-bottom:1px solid #bdd0da}.local-links span{font-family:"Source Serif 4",serif;font-size:1.25rem}.local-links small{color:var(--muted)}.contact{background:var(--navy);color:white;padding:100px 0;border-top:6px solid var(--rust)}.contact .eyebrow{color:#d7bca8}.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact h2{font-size:clamp(3rem,5vw,5rem);margin:0}.button--light{margin-top:35px;background:#fff;color:var(--navy)}.contact__details{display:grid;grid-template-columns:1fr 1fr;gap:25px 50px}.contact__details div:last-child{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.35);padding-top:22px}.contact__details h3{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.contact__details p{font-family:"Source Serif 4",serif;font-size:1.1rem}.contact__details a{text-decoration:underline;text-underline-offset:4px}.site-footer{background:var(--deep);color:#d9e7ee;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:55px}.footer-grid h3{color:#9ab8c9;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.footer-grid p,.footer-grid a{display:block;font-size:.84rem;line-height:1.8}.footer-bottom{display:flex;justify-content:space-between;margin-top:55px;padding-top:20px;border-top:1px solid #31536a;color:#89a8b9;font-size:.7rem}

@media(max-width:960px){.desktop-nav,.header-contact{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{cursor:pointer;font-weight:700;list-style:none}.mobile-nav>div{position:absolute;right:0;top:38px;width:230px;background:var(--paper);border:1px solid var(--line);padding:10px}.mobile-nav a{display:block;padding:12px}.hero__grid{grid-template-columns:1fr;gap:0}.hero__identity{min-height:300px;border-left:0;border-top:1px solid var(--line);padding:60px 30px}.quick-grid{grid-template-columns:1fr 1fr}.quick-grid a:nth-child(3){border-left:1px solid rgba(255,255,255,.18);border-top:1px solid rgba(255,255,255,.18)}.quick-grid a:nth-child(4){border-top:1px solid rgba(255,255,255,.18)}.news-grid,.commune__grid,.contact__grid{grid-template-columns:1fr}.news-card--featured{grid-template-columns:1fr 1fr}.services-grid{grid-template-columns:1fr 1fr}.local-life__grid{grid-template-columns:1fr;gap:50px}.footer-grid{grid-template-columns:1fr 1fr}.contact__details{margin-top:20px}}
@media(max-width:640px){.container{width:min(calc(100% - 28px),var(--max))}.notice__inner{font-size:.6rem}.header-main{min-height:73px}.brand strong{font-size:1rem}.hero__grid{min-height:0}.hero__copy{padding:60px 0}.hero h1{font-size:3.1rem}.hero__lead{font-size:1rem}.hero__actions{align-items:flex-start;flex-direction:column}.hero__identity{padding-left:25px}.hero__year{font-size:7rem}.quick-grid{grid-template-columns:1fr}.quick-grid a{min-height:100px;border-left:1px solid rgba(255,255,255,.18);border-top:1px solid rgba(255,255,255,.18)}.section{padding:75px 0}.section-heading,.split-heading{display:block}.section-heading>a{display:inline-block;margin-top:25px}.split-heading>p{margin-top:25px}.news-card--featured{grid-template-columns:1fr}.news-card__visual{min-height:290px}.news-card__body{min-height:350px;padding:28px}.news-list{margin-top:15px}.services-grid{grid-template-columns:1fr}.commune__grid{gap:50px}.commune__visual{min-height:400px}.commune__visual strong{font-size:4.5rem}.local-life__grid{gap:35px}.local-links a{grid-template-columns:1fr auto}.local-links small{grid-column:1/-1}.contact{padding:75px 0}.contact__grid{gap:40px}.contact__details{grid-template-columns:1fr}.contact__details div:last-child{grid-column:auto}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Une identité sœur de Cuperly, adaptée au patrimoine aéronautique de Bouy. */
body{font-family:"Avenir Next",Avenir,"Segoe UI",sans-serif}
.hero h1,.section h2,.contact h2,.brand strong,.quick-grid strong,.news-card h3,.news-list h3,.services-grid h3,.commune__visual strong,.document-list strong,.local-links span{font-family:inherit}
.site-header{box-shadow:0 1px 0 rgba(16,49,79,.08),0 12px 36px rgba(16,49,79,.045)}
.desktop-nav a{border-radius:999px;padding:8px 11px;transition:background .2s,color .2s}
.desktop-nav a:hover{background:#eaf4f9}
.header-contact{border-left:0;border-radius:999px;background:#eaf4f9;padding:11px 18px}
.brand__crest{display:block;width:50px;height:55px;object-fit:contain;flex:0 0 auto}
.brand--footer .brand__crest{width:56px;height:62px;padding:5px;border-radius:14px;background:#fff;box-shadow:0 10px 26px rgba(0,0,0,.16)}
.mobile-nav>div{border-radius:20px;box-shadow:0 18px 50px rgba(16,49,79,.12)}
.button{border-radius:999px;transition:transform .2s,background .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px)}
.button--primary{box-shadow:0 14px 30px rgba(3,38,61,.28)}
.button--text{border-radius:999px;border:1px solid rgba(255,255,255,.55);padding:13px 20px}

.hero{position:relative;isolation:isolate;overflow:hidden;border:0;padding-bottom:118px;color:#fff;background:radial-gradient(circle at 88% 14%,rgba(255,255,255,.08) 0 130px,transparent 131px),linear-gradient(118deg,#082c46 0%,#075a8c 72%,#176f9b 100%)}
.hero:before,.hero:after{content:"";position:absolute;z-index:0;pointer-events:none;border-radius:50% 50% 0 0/100% 100% 0 0;left:-4%;width:108%}
.hero:before{height:62px;bottom:61px;background:var(--rust);transform:rotate(-1.2deg) translateX(-2%)}
.hero:after{height:116px;bottom:-46px;background:#fff;transform:rotate(1deg) translateX(2%)}
.hero__grid{position:relative;z-index:1;min-height:650px;grid-template-columns:1.05fr .95fr;gap:80px;padding-top:35px}
.hero__copy{padding:68px 0 78px}
.hero .eyebrow{color:#d9bba5}
.hero h1{max-width:720px;color:#fff;font-size:clamp(3.4rem,5.8vw,5.75rem);font-weight:800;letter-spacing:-.055em;line-height:.98}
.hero h1 em{color:#d9b095;font-style:normal;font-weight:800}
.hero__lead{max-width:620px;color:rgba(255,255,255,.82);font-size:1.18rem}
.hero__identity{position:relative;min-height:445px;border:1px solid rgba(255,255,255,.28);border-radius:47% 53% 46% 54%/35% 39% 61% 65%;background:#f8fbfc;box-shadow:0 30px 80px rgba(1,27,45,.32);padding:38px;overflow:hidden}
.hero__identity:before{inset:0;background-color:#edf7fb;background-image:url("/images/avion-bouy-reference.jpg");background-repeat:no-repeat;background-size:980px 173px;background-position:66% 34px;filter:saturate(.88) contrast(1.04)}
.hero__identity:after{inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 23%,rgba(255,255,255,.42) 48%,rgba(255,255,255,.98) 70%)}
.hero__aviation-label{position:relative;margin-left:70px;border-left:4px solid var(--rust);border-radius:0 18px 18px 0;background:rgba(255,255,255,.84);padding:14px 20px 16px;backdrop-filter:blur(7px)}
.hero__aviation-label strong{font-family:inherit;color:var(--navy);font-size:4rem;font-weight:800;letter-spacing:-.06em;margin:2px 0 8px}
.hero__aviation-label p{color:var(--ink)}

.quick-access{position:relative;z-index:4;margin-top:-108px;padding:0 0 62px;background:transparent}
.quick-access .container{overflow:visible;border-radius:0;background:transparent;box-shadow:none}
.quick-grid{grid-template-columns:repeat(4,1fr);gap:16px}
.quick-grid a,.quick-grid a:first-child{min-height:118px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);padding:18px;box-shadow:0 14px 38px rgba(16,49,79,.09);transition:transform .2s,box-shadow .2s}
.quick-grid a:hover{background:#fff;box-shadow:0 22px 50px rgba(16,49,79,.15);transform:translateY(-4px)}
.quick-number{align-self:auto;display:grid;place-items:center;width:48px;height:48px;border-radius:15px 15px 15px 5px;background:var(--navy);color:#fff;font-size:.72rem;font-weight:800}
.quick-grid a:nth-child(2) .quick-number{background:#287da8}
.quick-grid a:nth-child(3) .quick-number{background:var(--rust)}
.quick-grid a:nth-child(4) .quick-number{background:var(--deep)}
.quick-copy{min-width:0}
.quick-grid strong,.quick-grid small{display:block}
.quick-grid strong{font-size:.98rem;line-height:1.25}
.quick-grid small{margin-top:3px;color:var(--muted);font-size:.74rem;line-height:1.3}
.quick-grid a>span:last-child{color:var(--navy);font-size:1.15rem}

.section{padding:105px 0}
.section h2{font-weight:800;letter-spacing:-.05em;line-height:1.04}
.section-heading>a{color:var(--navy);border:0}
.news-card--featured{overflow:hidden;border-radius:30px;box-shadow:0 16px 48px rgba(16,49,79,.08)}
.news-card__visual span{border-radius:34% 66% 43% 57%/54% 39% 61% 46%;font-weight:800}
.news-card h3,.news-list h3{font-weight:750}
.news-list{display:grid;gap:13px}
.news-list article{margin:0;padding:22px 52px 22px 24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(16,49,79,.035)}
.news-list article>a{right:22px;color:var(--navy)}

.section--sand{position:relative;overflow:hidden;margin-inline:18px;border-radius:72px;background:linear-gradient(145deg,#f0f6f8,#f8fafb)}
.section--sand:before,.section--sand:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.section--sand:before{width:340px;height:340px;right:-155px;top:-165px;border:1px solid rgba(7,90,140,.11)}
.section--sand:after{width:150px;height:150px;left:5%;bottom:-90px;background:rgba(154,106,72,.07)}
.section--sand .container{position:relative;z-index:1}
.services-grid{gap:20px;border:0}
.services-grid a{min-height:235px;border:1px solid #dce6eb;border-radius:26px;background:#fff;box-shadow:0 12px 34px rgba(16,49,79,.045)}
.services-grid a:hover{border-color:var(--navy)}
.services-grid h3{font-weight:750}

.commune__visual{border-radius:46% 54% 48% 52%/31% 36% 64% 69%;box-shadow:0 28px 70px rgba(7,90,140,.18)}
.button--outline{border-radius:999px}
.document-list{display:grid;gap:13px;border-top:0}
.document-list a{border:1px solid var(--line);border-radius:18px;padding:23px 24px;background:#fff}
.document-list a:hover{padding-inline:31px;border-color:#b9ced9;background:#f7fbfd}
.local-life{position:relative;overflow:hidden;margin-inline:18px;border-radius:72px}
.local-life:before{content:"";position:absolute;width:390px;height:390px;right:-170px;bottom:-210px;border:1px solid rgba(7,90,140,.13);border-radius:50%}
.local-life:after{content:"";position:absolute;width:160px;height:160px;right:5%;top:-90px;background:rgba(255,255,255,.38);border-radius:50%}
.local-life__grid{position:relative;z-index:1}
.local-links{display:grid;gap:8px;border-top:0}
.local-links a{border:0;border-radius:18px;padding:19px 20px}
.local-links a:hover{background:rgba(255,255,255,.7)}

.contact{position:relative;overflow:hidden;margin:18px;border:0;border-radius:72px;background:radial-gradient(circle at 93% 18%,transparent 0 105px,rgba(255,255,255,.09) 106px 107px,transparent 108px),radial-gradient(circle at 8% 88%,rgba(154,106,72,.3) 0 58px,transparent 59px),var(--navy)}
.contact:before{content:"";position:absolute;top:-54px;left:-6%;width:72%;height:88px;border-radius:0 0 50% 50%;background:#eaf3f7;pointer-events:none}
.contact__grid{position:relative;z-index:1}
.site-footer{position:relative;margin-top:18px;border-radius:72px 72px 0 0}

@media(max-width:1100px){.quick-grid{grid-template-columns:1fr 1fr}.quick-grid a:nth-child(3),.quick-grid a:nth-child(4){border-top:1px solid var(--line)}.hero__grid{gap:45px}.hero h1{font-size:clamp(3.2rem,6vw,4.8rem)}}
@media(max-width:960px){.hero{padding-bottom:100px}.hero__grid{grid-template-columns:1fr;gap:0;padding-top:0}.hero__copy{padding-bottom:35px}.hero__identity{min-height:340px;border-radius:38px}.hero__aviation-label{margin-left:0}.quick-access{margin-top:-88px}.section--sand,.local-life,.contact{margin-inline:10px;border-radius:46px}.services-grid{gap:16px}.contact:before{width:90%}}
@media(max-width:640px){.brand__crest{width:43px;height:48px}.hero{padding-bottom:84px}.hero__copy{padding:56px 0 30px}.hero h1{font-size:3.05rem}.hero__identity{min-height:315px;border-radius:30px;padding:32px 22px}.hero__identity:before{background-size:720px 127px;background-position:72% 30px}.hero__aviation-label strong{font-size:3.2rem}.quick-access{margin-top:-65px}.quick-grid{grid-template-columns:1fr}.quick-grid a{min-height:96px}.quick-grid a:nth-child(n){border:1px solid var(--line)}.news-card--featured{border-radius:26px}.section--sand,.local-life,.contact{margin-inline:6px;border-radius:32px}.services-grid a{border-radius:22px}.commune__visual{border-radius:42% 58% 45% 55%/37% 43% 57% 63%}.site-footer{border-radius:40px 40px 0 0}}

/* Pages intérieures */
.desktop-nav{gap:10px}
.desktop-nav a.active,.header-contact.active{color:var(--navy);background:#eaf4f9}
.page-hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:radial-gradient(circle at 86% 12%,rgba(255,255,255,.08) 0 118px,transparent 119px),linear-gradient(118deg,var(--deep),var(--navy));padding:82px 0 120px}
.page-hero:before,.page-hero:after{content:"";position:absolute;z-index:-1;left:-4%;width:108%;border-radius:50% 50% 0 0/100% 100% 0 0;pointer-events:none}
.page-hero:before{height:58px;bottom:30px;background:var(--rust);transform:rotate(-1deg)}
.page-hero:after{height:72px;bottom:-34px;background:#fff;transform:rotate(1deg)}
.page-hero--compact{padding-bottom:105px}
.page-hero--aviation{background:radial-gradient(circle at 86% 18%,rgba(255,255,255,.1) 0 145px,transparent 146px),linear-gradient(118deg,#082c46,#08679c)}
.page-hero__content{position:relative;z-index:1}
.page-hero .eyebrow{color:#d9bba5;margin-top:42px}
.page-hero h1{max-width:900px;margin:0;color:#fff;font-size:clamp(3.5rem,7vw,6.6rem);font-weight:800;letter-spacing:-.065em;line-height:.88}
.page-hero__content>p:last-child{max-width:680px;margin:28px 0 0;color:rgba(255,255,255,.82);font-size:1.18rem}
.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;color:rgba(255,255,255,.64);font-size:.75rem}
.breadcrumb a{color:#fff;text-decoration:underline;text-underline-offset:4px}
.page-section{padding-top:92px}
.narrow-container{max-width:920px}
.section--soft{position:relative;overflow:hidden;margin-inline:18px;border-radius:72px;background:linear-gradient(145deg,#f0f6f8,#f8fafb)}
.section--soft:after{content:"";position:absolute;right:-150px;bottom:-210px;width:380px;height:380px;border:1px solid rgba(7,90,140,.1);border-radius:50%;pointer-events:none}
.section--soft>.container{position:relative;z-index:1}
.section-intro{max-width:500px;margin:0;color:var(--muted)}

.content-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.content-card-item{min-height:320px;display:flex;flex-direction:column;padding:30px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 14px 38px rgba(16,49,79,.06)}
.content-card-item time{color:var(--muted);font-size:.78rem}
.content-card-item h2{margin:22px 0 12px;font-size:1.65rem;letter-spacing:-.035em;line-height:1.1}
.content-card-item>p:not(.meta){color:var(--muted)}
.content-card-item>a{margin-top:auto;color:var(--navy);font-weight:750}
.empty-state{grid-column:1/-1;display:flex;align-items:flex-start;gap:22px;padding:30px;border:1px solid var(--line);border-radius:24px;background:#f7fafb}
.empty-state>span{display:grid;place-items:center;flex:0 0 auto;width:54px;height:54px;border-radius:16px 16px 16px 5px;background:var(--navy);color:#fff;font-size:.72rem;font-weight:800}
.empty-state h2{margin:0 0 8px;font-size:1.35rem}.empty-state p{margin:0 0 10px;color:var(--muted)}.empty-state a{color:var(--navy);font-weight:750}
.pagination{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:42px;padding-top:24px;border-top:1px solid var(--line);font-size:.82rem}.pagination a{color:var(--navy);font-weight:750}.pagination span{color:var(--muted)}
.article-page__inner{max-width:820px}.article-lead{color:var(--navy);font-size:1.45rem;font-weight:650;line-height:1.5}.prose{color:var(--muted);font-size:1.03rem;line-height:1.8}.prose h2{color:var(--ink);font-size:2.25rem}.prose a{color:var(--navy);text-decoration:underline;text-underline-offset:4px}.back-link{display:inline-block;margin-top:45px;color:var(--navy);font-weight:750}
.document-list--page{gap:16px}.document-list--page a{min-height:92px}.document-list--page .empty-state{border:0}

.two-column-page{display:grid;grid-template-columns:.82fr 1.18fr;gap:100px;align-items:start}
.sticky-intro{position:sticky;top:150px}.sticky-intro h2{margin:0;font-size:clamp(2.4rem,4.6vw,4.2rem);font-weight:800;letter-spacing:-.05em;line-height:1.02}
.prose--large{font-size:1.13rem}.prose--large>p:first-child{margin-top:0;color:var(--ink);font-size:1.26rem}
.notice-card{margin-top:30px;padding:25px 27px;border-left:4px solid var(--rust);border-radius:0 20px 20px 0;background:#f1f6f8}.notice-card strong{display:block;color:var(--ink);font-size:1.08rem}.notice-card p{margin:8px 0 10px}.notice-card a{font-size:.88rem;font-weight:750;text-decoration:none}
.info-grid{display:grid;gap:22px}.info-grid--three{grid-template-columns:repeat(3,1fr)}
.info-card{min-height:220px;padding:28px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 12px 34px rgba(16,49,79,.045)}
.info-card>span{display:grid;place-items:center;width:48px;height:48px;border-radius:15px 15px 15px 5px;background:#e8f3f8;color:var(--navy);font-size:.69rem;font-weight:800}.info-card h3{margin:28px 0 8px;font-size:1.4rem}.info-card p{margin:0;color:var(--muted)}.info-card a{color:var(--navy);font-weight:700}

.service-directory{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.service-directory>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;min-height:108px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(16,49,79,.04);transition:transform .2s,box-shadow .2s}.service-directory>a:hover{transform:translateY(-3px);box-shadow:0 17px 38px rgba(16,49,79,.1)}.service-directory strong,.service-directory small{display:block}.service-directory small{margin-top:3px;color:var(--muted)}.service-directory b{color:var(--navy);font-size:1.2rem;font-weight:500}
.service-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px 16px 16px 5px;background:var(--navy);color:#fff;font-size:.7rem;font-weight:850}.service-icon--rust{background:var(--rust)}
.link-panels{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.link-panels a{display:flex;min-height:130px;flex-direction:column;justify-content:space-between;padding:23px;border:1px solid var(--line);border-radius:20px;background:#fff;text-decoration:none}.link-panels strong{color:var(--ink)}.link-panels span{color:var(--navy);font-size:.82rem;font-weight:750}
.emergency-section{color:#fff;background:var(--deep)}.emergency-section .eyebrow{color:#d9bba5}.emergency-section h2{color:#fff}.emergency-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.emergency-grid article{padding:24px 15px;border:1px solid rgba(255,255,255,.16);border-radius:20px;text-align:center;background:rgba(255,255,255,.05)}.emergency-grid strong,.emergency-grid span{display:block}.emergency-grid strong{font-size:2.7rem;line-height:1}.emergency-grid span{margin-top:9px;color:#c6dce8;font-size:.78rem}.notice-card--light{border-left-color:#d3a887;background:rgba(255,255,255,.08)}.notice-card--light strong{color:#fff}.notice-card--light p{color:#c6dce8}

.feature-panel{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:80px}.feature-panel__mark{min-height:480px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:46% 54% 48% 52%/32% 36% 64% 68%;background:var(--navy);color:#fff;box-shadow:0 28px 70px rgba(7,90,140,.18)}.feature-panel__mark span{text-transform:uppercase;letter-spacing:.2em}.feature-panel__mark strong{font-size:4.4rem;line-height:.85;letter-spacing:-.07em}.feature-panel__copy h2{margin:0 0 25px;font-size:clamp(2.7rem,5vw,4.8rem);font-weight:800;letter-spacing:-.055em;line-height:1}.feature-panel__copy>p:not(.eyebrow){color:var(--muted);font-size:1.12rem}
.contact-list{margin:32px 0 0}.contact-list div{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:13px 0;border-top:1px solid var(--line)}.contact-list dt{color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.contact-list dd{margin:0;font-weight:700}.contact-list a{color:var(--navy)}
.association-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.association-grid article{min-height:210px;padding:25px;border:1px solid var(--line);border-radius:24px;background:#fff}.association-grid span{display:grid;place-items:center;width:45px;height:45px;border-radius:14px 14px 14px 4px;background:#e8f3f8;color:var(--navy);font-size:.67rem;font-weight:850}.association-grid h3{margin:24px 0 7px;font-size:1.2rem}.association-grid p{margin:0;color:var(--muted)}.data-note{margin-top:24px;color:var(--muted);font-size:.78rem}
.event-section{color:#fff;background:var(--navy)}.event-section .eyebrow{color:#d9bba5}.event-section h2{color:#fff}.event-list-page{display:grid;gap:12px}.event-list-page article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;padding:19px 22px;border:1px solid rgba(255,255,255,.18);border-radius:20px}.event-list-page time{display:grid;place-items:center;width:60px;height:60px;border-radius:17px 17px 17px 5px;background:#fff;color:var(--navy);line-height:1}.event-list-page time strong{font-size:1.5rem}.event-list-page time span{font-size:.68rem;text-transform:uppercase}.event-list-page h3{margin:0}.event-list-page p{margin:4px 0 0;color:#c6dce8}.event-list-page>a{font-weight:750}.empty-state--dark{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06)}.empty-state--dark h2{color:#fff}.empty-state--dark p{color:#c6dce8}.empty-state--dark a{color:#fff}

.village-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:105px}.village-facts article{padding:26px;border:1px solid var(--line);border-radius:22px;background:#fff}.village-facts strong,.village-facts span{display:block}.village-facts strong{color:var(--navy);font-size:2.1rem;letter-spacing:-.045em}.village-facts span{color:var(--muted);font-size:.8rem}.source-link{font-size:.88rem}
.aviation-story{position:relative;overflow:hidden;background:#edf5f8}.aviation-story:after{content:"";position:absolute;right:-180px;bottom:-220px;width:500px;height:500px;border:1px solid rgba(7,90,140,.12);border-radius:50%}.aviation-story__grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.aviation-story__visual{min-height:570px;display:flex;flex-direction:column;justify-content:center;padding:65px;border-radius:49% 51% 44% 56%/38% 40% 60% 62%;background:linear-gradient(145deg,var(--deep),var(--navy));color:#fff;box-shadow:0 28px 70px rgba(7,90,140,.18)}.aviation-story__visual span{color:#d9b095;font-size:1rem;letter-spacing:.2em}.aviation-story__visual strong{font-size:4rem;letter-spacing:-.06em;line-height:.88}.aviation-story__visual small{margin-top:20px;letter-spacing:.18em;text-transform:uppercase}.aviation-story__copy h2{margin:0 0 30px;font-size:clamp(2.8rem,5vw,4.8rem);font-weight:800;letter-spacing:-.055em;line-height:1}.aviation-story__copy>p:not(.eyebrow){color:var(--muted);font-size:1.1rem}.source-links{display:grid;gap:8px;margin-top:28px}.source-links a{color:var(--navy);font-size:.82rem;font-weight:750}

.contact-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-page-card{min-height:460px;padding:45px;border:1px solid var(--line);border-radius:34px;background:#fff}.contact-page-card--primary{color:#fff;background:var(--navy);border-color:var(--navy)}.contact-page-card .eyebrow{color:var(--rust)}.contact-page-card--primary .eyebrow{color:#d9bba5}.contact-page-card h2{margin:0 0 35px;font-size:3.2rem;letter-spacing:-.05em}.contact-page-card address{font-style:normal;font-size:1.2rem}.contact-page-card--primary>p:not(.eyebrow){font-size:1.16rem}.contact-page-card--primary a{text-decoration:underline;text-underline-offset:4px}.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}.button--glass{color:#fff;border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.08)}.hours-list{margin-top:30px}.hours-list div{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid var(--line)}.hours-list span{color:var(--muted)}

.legal-layout{display:grid;grid-template-columns:260px 1fr;gap:90px;align-items:start}.legal-nav{position:sticky;top:150px;display:grid;border:1px solid var(--line);border-radius:20px;padding:10px}.legal-nav a{padding:13px 14px;border-radius:12px;font-size:.86rem;font-weight:700}.legal-nav a:hover{background:#eaf4f9;color:var(--navy)}.legal-content{max-width:800px}.legal-content section{padding:0 0 70px;margin-bottom:70px;border-bottom:1px solid var(--line);scroll-margin-top:130px}.legal-content h2{margin-top:0;color:var(--ink);font-size:2.8rem;letter-spacing:-.05em}

@media(max-width:1160px){.desktop-nav{gap:2px}.desktop-nav a{font-size:.78rem;padding-inline:8px}.header-main{gap:18px}.header-contact{font-size:.76rem}}
@media(max-width:960px){.content-card-grid{grid-template-columns:1fr 1fr}.two-column-page,.feature-panel,.aviation-story__grid{grid-template-columns:1fr;gap:50px}.sticky-intro{position:static}.info-grid--three,.association-grid{grid-template-columns:1fr 1fr}.emergency-grid{grid-template-columns:repeat(3,1fr)}.village-facts{grid-template-columns:1fr 1fr;margin-bottom:75px}.feature-panel__mark,.aviation-story__visual{min-height:420px}.contact-page-grid{grid-template-columns:1fr}.contact-page-card{min-height:0}.legal-layout{grid-template-columns:1fr;gap:45px}.legal-nav{position:static;grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.page-hero{padding:55px 0 95px}.page-hero .eyebrow{margin-top:30px}.page-hero h1{font-size:3.45rem}.page-hero__content>p:last-child{font-size:1rem}.page-section{padding-top:68px}.section--soft{margin-inline:6px;border-radius:32px}.content-card-grid,.info-grid--three,.service-directory,.association-grid,.link-panels,.village-facts{grid-template-columns:1fr}.content-card-item{min-height:270px}.pagination{align-items:flex-start;flex-direction:column}.two-column-page{gap:35px}.sticky-intro h2{font-size:2.7rem}.prose--large{font-size:1.03rem}.emergency-grid{grid-template-columns:1fr 1fr}.feature-panel__mark,.aviation-story__visual{min-height:360px;padding:38px;border-radius:34px}.feature-panel__mark strong,.aviation-story__visual strong{font-size:3.25rem}.feature-panel__copy h2,.aviation-story__copy h2{font-size:2.8rem}.contact-list div{grid-template-columns:1fr;gap:4px}.event-list-page article{grid-template-columns:auto 1fr}.event-list-page article>a{grid-column:2}.contact-page-card{padding:30px 24px;border-radius:26px}.contact-page-card h2{font-size:2.7rem}.legal-nav{grid-template-columns:1fr}.legal-content h2{font-size:2.4rem}.empty-state{padding:22px}.document-list--page a{grid-template-columns:52px 1fr auto;padding-inline:18px}}
