:root { --body: SLText,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; --display: SLDisplay,var(--body); color-scheme: light; scroll-padding-top: 16px; }
*, ::before, ::after { box-sizing: border-box; }
body.st { margin: 0px; min-width: 0px; background: var(--paper,#fff); color: var(--ink,#17252e); font: 400 16px/1.56 var(--body); text-rendering: optimizelegibility; -webkit-font-smoothing: antialiased; }
body.st h1, body.st h2, body.st h3 { font-family: var(--display); text-wrap: balance; }
body.st h1 { font-size: clamp(28px, 3vw, 38px); line-height: 1.13; letter-spacing: -0.035em; }
body.st h2 { font-size: clamp(21px, 2.3vw, 29px); line-height: 1.22; letter-spacing: -0.028em; }
body.st h3 { font-size: clamp(17px, 1.55vw, 20px); line-height: 1.34; letter-spacing: -0.012em; }
body.st a { color: inherit; text-underline-offset: 0.22em; }
body.st :is(a, button, summary, input, select):focus-visible { outline: rgb(44, 131, 214) solid 3px; outline-offset: 4px; }
body.st img, body.st picture { display: block; max-width: 100%; }
body.st figure { margin: 0px; }
body.st :is(button, input, select) { font: inherit; }
body.st summary, body.st button { cursor: pointer; }
.st .st-btn, .st .st-submit { display: inline-flex; align-items: center; justify-content: center; gap: 0.6rem; min-height: 44px; padding: 11px 18px; border: 0px; border-radius: 8px; font-family: var(--body); font-size: 15px; font-weight: 700; text-align: center; line-height: 1.3; text-decoration: none; background: var(--button,#163545); color: var(--on-button,#fff); cursor: pointer; }
.st .st-btn:hover, .st .st-submit:hover { filter: brightness(0.93); }
.st .st-skip { position: absolute; top: 0px; left: 1rem; z-index: 1000; transform: translateY(-125%); background: rgb(255, 255, 255); color: rgb(22, 36, 45); padding: 8px 16px; }
.st .st-skip:focus { transform: none; }
.st .st-inner-wrap, .st .st-legal { width: min(1120px, 100% - 48px); margin-inline: auto; }
.st .st-crumb { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; padding: 19px 0px 13px; font-size: 13px; color: var(--muted); line-height: 1.4; }
.st .st-crumb a { text-decoration: none; }
.st .st-crumb a:hover { text-decoration: underline; }
.st .st-intro { display: grid; grid-template-columns: minmax(0px, 1.45fr) minmax(235px, 0.75fr); gap: clamp(26px, 4.8vw, 65px); align-items: center; margin-bottom: 26px; padding-block: 16px 27px; border-bottom: 1px solid var(--line); }
.st .st-intro :is(h1, p) { margin: 0px 0px 14px; }
.st .st-intro h1 { max-width: 26ch; }
.st .st-intro p { max-width: 66ch; color: var(--muted); }
.st .st-intro .st-photo { width: 100%; position: relative; overflow: hidden; border-radius: 12px; }
.st .st-intro .st-photo img { width: 100%; height: clamp(170px, 17vw, 228px); object-fit: cover; }
.st .st-intro figcaption { position: absolute; right: 7px; bottom: 7px; background: rgba(19, 28, 35, 0.85); color: rgb(255, 255, 255); font: 500 11px/1.4 var(--body); padding: 3px 6px; border-radius: 3px; }
.st .st-intro.st-no-photo { grid-template-columns: 1fr; }
.st .st-overline { display: block; margin: 0px 0px 9px; color: var(--brand); font-size: 12px; font-weight: 750; letter-spacing: 0.07em; text-transform: uppercase; }
.st .st-layout { display: grid; grid-template-columns: minmax(0px, 1fr) minmax(206px, 248px); gap: clamp(26px, 5.5vw, 84px); align-items: start; margin-bottom: 48px; }
.st .st-toc { position: sticky; top: 18px; border-left: 2px solid var(--line); padding: 8px 0px 10px 17px; }
.st .st-toc b { display: block; font-family: var(--display); font-size: 17px; margin-bottom: 8px; }
.st .st-toc a { display: block; font-size: 14px; text-decoration: none; padding: 0.35rem 0px; line-height: 1.45; }
.st .st-toc a:hover { text-decoration: underline; }
.st .st-copy { min-width: 0px; overflow-wrap: break-word; }
.st .st-copy :is(h2, h3, p) { margin-top: 0px; }
.st .st-copy p { line-height: 1.68; margin-bottom: 0.8rem; max-width: 73ch; }
.st .st-copy > section { margin: 0px; padding: 21px 0px; border-top: 1px solid var(--line); }
.st .st-copy > section:first-child { padding-top: 4px; border-top: none; }
.st .st-copy section h2 { font-size: clamp(21px, 2vw, 26px); margin: 0px 0px 0.65em; }
.st .st-copy p:last-child { margin-bottom: 0px; }
.st .st-copy small, .st .st-copy .eyebrow { font-size: 12px; color: var(--muted); }
.st .st-copy .directory, .st .st-copy .resource-grid, .st .st-copy .stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 8px; }
.st .st-copy .directory a, .st .st-copy .resource, .st .st-copy .stats > div { background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 12px; overflow-wrap: anywhere; }
.st .st-copy .directory a { text-decoration: none; }
.st .st-copy .directory a:hover { text-decoration: underline; }
.st .st-copy .stats strong, .st .st-copy .stats span { display: block; }
.st .st-copy .stats strong { font-size: 22px; }
.st .st-copy details { border-top: 1px solid var(--line); padding: 13px 0px; }
.st .st-copy summary { font-weight: 700; }
.st .st-copy table { width: 100%; border-collapse: collapse; font-size: 14px; }
.st .st-copy td, .st .st-copy th { padding: 9px 8px; text-align: left; border-bottom: 1px solid var(--line); overflow-wrap: anywhere; }
.st .st-legal { padding: 30px 0px 50px; max-width: 790px; }
.st .st-legal h1 { margin: 0px 0px 22px; }
.st .st-legal h2 { font-size: 22px; margin: 24px 0px 8px; }
.st .st-legal p { margin: 0px 0px 14px; line-height: 1.7; }
.st .st-request-wrap { width: min(860px, 100% - 40px); margin: clamp(28px, 5vw, 64px) auto; display: grid; grid-template-columns: minmax(0px, 1fr) minmax(174px, 0.48fr); gap: clamp(22px, 4vw, 52px); align-items: start; }
.st .st-request-wrap h1 { margin: 0px 0px 12px; }
.st .st-request-wrap p { color: var(--muted); font-size: 15px; max-width: 58ch; line-height: 1.65; }
.st .st-request-wrap form { margin-top: 20px; }
.st .st-request-wrap label { display: block; font-weight: 700; font-size: 14px; margin-bottom: 6px; }
.st .st-request-wrap input[type="email"] { width: 100%; min-height: 46px; padding: 10px 12px; color: var(--ink); background: var(--paper); border: 1px solid var(--muted); border-radius: 6px; }
.st .st-request-wrap button { margin-top: 12px; }
.st .st-request-wrap aside { padding: 18px; border-radius: 10px; background: var(--surface); border: 1px solid var(--line); }
.st .st-request-wrap aside strong { font-family: var(--display); font-size: 17px; }
.st .st-request-wrap aside p { font-size: 14px; margin-bottom: 0px; }




.st .st-intro.st-no-photo { grid-template-columns: 1fr; }
@media (max-width: 760px) {.st .st-inner-wrap, .st .st-legal { width: calc(100% - 36px); }
.st .st-intro, .st .st-layout { display: block; }
.st .st-intro .st-photo { margin-top: 18px; }
.st .st-intro img { max-height: 180px; }
.st .st-toc { display: none; }
.st .st-request-wrap { display: block; }
.st .st-request-wrap aside { margin-top: 22px; }
.st .st-copy td, .st .st-copy th { padding: 7px 3px; font-size: 13px; }
.st .st-layout { margin-bottom: 30px; }}

.st-nord { --ink: #142a38; --muted: #51646e; --brand: #006e65; --paper: #fff; --surface: #eef6f5; --line: #dce7e6; --button: #047269; --on-button: #fff; --a-heading: #102e39; }

:is(.st-gironde, .st-nord, .st-aquitaine) .sa-wrap { width: min(1192px, 100% - clamp(36px, 8vw, 128px)); margin-inline: auto; }
:is(.st-gironde, .st-nord, .st-aquitaine) :is(.sa-head, .sa-foot, main) { font-family: var(--body,system-ui),Arial,sans-serif; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-head-row { display: flex; align-items: center; justify-content: space-between; gap: clamp(14px, 3vw, 45px); min-height: 62px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-brand { display: inline-flex; align-items: center; gap: 9px; color: inherit; text-decoration: none; white-space: nowrap; letter-spacing: -0.055em; font-size: 21px; font-weight: 490; line-height: 1; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-brand strong { font-weight: 760; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mark { display: grid; place-items: center; flex: 0 0 auto; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mark svg { width: 29px; height: 29px; display: block; }
:is(.st-gironde, .st-nord, .st-aquitaine) :is(.sa-tools, .sa-links, .aq-navigation, .no-navigation) { display: flex; align-items: center; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-links { gap: clamp(16px, 2.1vw, 32px); }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-links a { font-size: 13px; line-height: 1.2; color: inherit; text-decoration: none; font-weight: 580; padding: 14px 2px; white-space: nowrap; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-links a:hover { text-decoration: underline; text-underline-offset: 5px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-top-go { display: inline-flex; align-items: center; justify-content: center; gap: 9px; text-decoration: none; font-weight: 650; font-size: 13px; white-space: nowrap; min-height: 39px; padding: 9px 15px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-arr { display: inline-block; width: 16px; height: 16px; flex-shrink: 0; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mobile { display: none; position: relative; color: var(--ink); }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mobile summary { display: flex; align-items: center; justify-content: center; gap: 5px; list-style: none; min-height: 40px; padding: 5px 4px; font-size: 13px; font-weight: 650; cursor: pointer; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mobile summary::-webkit-details-marker { display: none; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mobile nav { position: absolute; right: 0px; top: calc(100% + 4px); z-index: 8; min-width: 190px; background: rgb(255, 255, 255); color: rgb(30, 41, 51); border: 1px solid rgb(222, 221, 225); border-radius: 10px; padding: 6px; box-shadow: rgba(13, 20, 36, 0.11) 0px 8px 28px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mobile nav a { display: block; padding: 11px 13px; text-decoration: none; font-weight: 600; font-size: 14px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-small { font-size: 12px; line-height: 1.4; color: var(--brand); font-weight: 680; letter-spacing: 0.025em; }
:is(.st-gironde, .st-nord, .st-aquitaine) main :is(h1, h2, h3) { font-family: var(--display,system-ui),Arial,sans-serif; letter-spacing: -0.045em; color: var(--a-heading); margin: 0px 0px 0.5em; line-height: 1.14; text-wrap: balance; }
:is(.st-gironde, .st-nord, .st-aquitaine) main h2 { font-size: clamp(22px, 2.05vw, 29px); }
:is(.st-gironde, .st-nord, .st-aquitaine) main h3 { font-size: clamp(18px, 1.45vw, 21px); }
:is(.st-gironde, .st-nord, .st-aquitaine) .st-home p { color: var(--muted); }
:is(.st-gironde, .st-nord, .st-aquitaine) :is(.gi-main, .no-main, .aq-main) p { font-size: 15px; line-height: 1.6; margin: 0px 0px 1.1rem; max-width: 70ch; color: var(--muted); }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-foot { margin-top: 40px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-foot nav a { font-weight: 510; text-decoration: none; color: inherit; font-size: 13px; line-height: 1.45; display: block; padding: 4px 0px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-foot nav a:hover { text-decoration: underline; text-underline-offset: 3px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-foot h2 { font: 700 13px/1.3 var(--body,system-ui),sans-serif; color: inherit; margin: 0px 0px 8px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-foot p { font-size: 14px; line-height: 1.5; margin: 12px 0px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-foot-legal { display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; flex-wrap: wrap; font-size: 11px; line-height: 1.55; padding: 15px 0px 18px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-credit { max-width: 64ch; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-credit a { text-decoration: underline; text-underline-offset: 2px; color: inherit; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-sources { font-size: 13px; padding: 15px 0px; border-top: 1px solid var(--line); margin: 0px; }
:is(.st-gironde, .st-nord, .st-aquitaine) :is(.sa-sources, .gi-faq details, .no-faq details, .aq-faq details) summary { font-weight: 620; cursor: pointer; line-height: 1.4; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-sources > div { padding: 16px 0px 0px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .st-photo { position: relative; margin: 0px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .st-photo picture { display: block; width: 100%; height: 100%; }
:is(.st-gironde, .st-nord, .st-aquitaine) .st-photo img { display: block; max-width: 100%; width: 100%; height: 100%; object-fit: cover; }
:is(.st-gironde, .st-nord, .st-aquitaine) .st-photo figcaption { position: absolute; bottom: 12px; right: 13px; padding: 4px 8px; font: 550 10px/1.35 var(--body,system-ui),sans-serif; color: rgb(255, 255, 255); background: rgba(16, 32, 32, 0.65); border-radius: 4px; text-align: right; }
:is(.st-gironde, .st-nord, .st-aquitaine) .st-btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 43px; padding: 10px 17px; font-size: 14px; font-weight: 680; line-height: 1.25; text-decoration: none; color: var(--on-button); background: var(--button); }
:is(.st-gironde, .st-nord, .st-aquitaine) .st-btn::after { content: "↗"; font: 600 15px / 1 system-ui; }









































.st-nord .no-header { background: rgb(20, 42, 55); color: rgb(246, 251, 251); }
.st-nord .no-navigation { gap: clamp(25px, 4vw, 65px); }
.st-nord .sa-mark { background: rgb(134, 217, 195); color: rgb(12, 66, 58); border-radius: 8px; }
.st-nord .sa-mark svg { width: 30px; height: 30px; }
.st-nord .sa-top-go { background: rgb(235, 251, 246); color: rgb(18, 62, 52); border-radius: 6px; }
.st-nord .no-start { background: linear-gradient(100deg, rgb(234, 246, 243), rgb(245, 249, 247)); border-bottom: 1px solid rgb(221, 234, 230); }
.st-nord .no-start-inner { display: grid; grid-template-columns: minmax(0px, 1fr) minmax(0px, 0.85fr); align-items: center; gap: clamp(24px, 5vw, 72px); padding-block: clamp(21px, 2.5vw, 36px); }
.st-nord .no-chip { font-size: 12px; font-weight: 640; color: rgb(26, 102, 90); display: inline-flex; align-items: center; gap: 6px; }
.st-nord .no-chip i { width: 8px; height: 8px; border: 2px solid rgb(64, 163, 138); border-radius: 50%; }
.st-nord .no-start h1 { font-size: clamp(28px, 2.6vw, 37px); max-width: 22ch; line-height: 1.12; margin: 12px 0px; }
.st-nord .no-start p { max-width: 55ch; }
.st-nord .no-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; }
.st-nord .st-btn { border-radius: 6px; }
.st-nord .no-actions > a:not(.st-btn) { display: inline-flex; align-items: center; gap: 0.3em; color: rgb(23, 101, 88); text-decoration: none; font-size: 13px; font-weight: 650; }
.st-nord .no-image .st-photo { height: clamp(216px, 19vw, 278px); border-radius: 14px 38px 14px 14px; overflow: hidden; }
.st-nord .no-guide-head h2, .st-nord .no-faq h2 { margin-top: 7px; }
.st-nord .no-guides { padding-block: clamp(28px, 3.7vw, 51px); }
.st-nord .no-guides-grid { display: grid; grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 17px; margin-top: 20px; }
.st-nord .no-guides-grid article { border: 1px solid rgb(217, 227, 226); padding: clamp(16px, 1.6vw, 24px); border-radius: 12px; background: white; }
.st-nord .no-symbol { width: 36px; height: 36px; display: grid; place-items: center; background: rgb(233, 245, 241); color: var(--brand); border-radius: 9px; margin-bottom: 16px; }
.st-nord .no-guides-grid p { font-size: 14px; margin: 0px; }
.st-nord .no-bottom { display: grid; grid-template-columns: 1.4fr 0.9fr; gap: clamp(20px, 3vw, 44px); padding-block: 16px 40px; }
.st-nord .no-places { display: grid; grid-template-columns: 1fr 1fr; column-gap: 18px; }
.st-nord .no-places a { font-size: 13px; color: var(--ink); text-decoration: none; border-bottom: 1px solid var(--line); padding: 9px 0px; }
.st-nord .no-faq { align-self: start; border-radius: 13px; background: rgb(241, 247, 245); padding: 22px; }
.st-nord .no-faq details { padding: 12px 0px; border-top: 1px solid rgb(204, 223, 216); }
.st-nord .no-faq details p { padding-top: 11px; }
.st-nord .no-footer { background: rgb(21, 44, 57); color: rgb(240, 250, 247); }
.st-nord .no-foot-top, .st-nord .no-foot-menus { display: flex; align-items: center; justify-content: space-between; gap: 22px; flex-wrap: wrap; }
.st-nord .no-foot-top { padding: 25px 0px; }
.st-nord .no-foot-top p { color: rgb(197, 220, 219); margin: 0px; flex: 1 1 0%; }
.st-nord .no-foot-action { display: inline-flex; align-items: center; gap: 7px; color: rgb(199, 250, 231); text-decoration: none; font-size: 13px; font-weight: 650; }
.st-nord .no-foot-menus { border-block: 1px solid rgb(54, 81, 91); padding: 14px 0px; }
.st-nord .no-foot-menus nav { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.st-nord .sa-foot-legal { color: rgb(191, 206, 207); }


































@media (max-width: 780px) {:is(.st-gironde, .st-nord, .st-aquitaine) .sa-links { display: none; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mobile { display: block; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-head-row { min-height: 58px; gap: 8px; }
:is(.st-gironde, .st-nord, .st-aquitaine) :is(.sa-tools, .aq-navigation) { gap: 9px; }
.st-nord .sa-mobile summary { color: rgb(239, 250, 246); }


.st-nord .no-guides-grid { gap: 10px; }
.st-nord .no-guides-grid article { padding: 16px; }
}
@media (max-width: 620px) {:is(.st-gironde, .st-nord, .st-aquitaine) .sa-wrap { width: calc(100% - 36px); }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-brand { font-size: 18px; gap: 5px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-top-go { min-height: 35px; padding: 7px 10px; gap: 4px; font-size: 12px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-top-go svg { display: none; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-foot-legal { display: block; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-credit { margin-top: 7px; }


















.st-nord .no-start-inner { grid-template-columns: 1fr; gap: 17px; padding-block: 22px 18px; }
.st-nord .no-start h1 { font-size: 28px; max-width: 24ch; margin: 9px 0px; }
.st-nord .no-start p { font-size: 14px; }
.st-nord .no-image .st-photo { height: 132px; border-radius: 8px 25px 8px 8px; }
.st-nord .no-actions { gap: 10px; }
.st-nord .no-actions > a:not(.st-btn) { font-size: 12px; }
.st-nord .no-guides-grid, .st-nord .no-bottom { grid-template-columns: 1fr; }
.st-nord .no-guides-grid article { display: grid; grid-template-columns: 34px 1fr; gap: 3px 10px; }
.st-nord .no-guides-grid .no-symbol { height: 31px; width: 31px; margin: 0px; grid-row: 1 / 3; }
.st-nord .no-guides-grid h3 { font-size: 17px; margin: 0px 0px 3px; }
.st-nord .no-foot-top, .st-nord .no-foot-menus { gap: 12px; }
.st-nord .no-foot-top p { flex: 0 0 100%; }











}
@media (max-width: 365px) {:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mobile summary span { display: none; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mobile summary { width: 32px; }
:is(.st-gironde, .st-nord, .st-aquitaine) .sa-mobile summary::after { content: "Menu"; position: absolute; clip-path: inset(50%); }}