/* Pages et éléments communs */
.skip-link { position: absolute; top: -100px; left: 16px; padding: 12px 18px; background: var(--cream); color: #111; z-index: 100; }
.skip-link:focus { top: 12px; }
.main-nav a[aria-current="page"] { color: var(--orange); }
.page-intro { padding: 64px clamp(22px, 4vw, 72px); border-bottom: 1px solid var(--line-dark); }
.page-intro h1 { margin: 24px 0; max-width: 1100px; font: 600 clamp(44px, 5.5vw, 82px)/1 "Barlow Condensed", sans-serif; text-transform: uppercase; }
.page-intro h1 em { font-style: normal; color: var(--orange); }
.page-intro p { max-width: 680px; font-size: 16px; line-height: 1.75; color: #b9b3aa; }
.content-split { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; padding: 64px clamp(22px, 4vw, 72px); }
.content-split h2, .contact-preparation h2 { margin: 22px 0; font: 600 clamp(36px, 3.5vw, 54px)/1.05 "Barlow Condensed", sans-serif; text-transform: uppercase; }
.content-copy { align-self: center; max-width: 600px; }
.content-copy p { font-size: 16px; line-height: 1.75; color: #b9b3aa; }
.contact-layout { display: grid; grid-template-columns: 1fr 1fr; background: var(--cream); color: #171715; }
.contact-details, .contact-preparation { padding: 48px clamp(22px, 4vw, 72px); min-width: 0; }
.contact-details { border-right: 1px solid var(--line-light); }
.contact-item { margin-top: 28px; }
.contact-item h2 { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; }
.contact-item a { display: inline-block; padding: 10px 0; font-size: clamp(18px, 2vw, 26px); overflow-wrap: anywhere; }
.contact-item a:hover { color: #a93612; }
.contact-item p, .contact-details > p, .contact-preparation p, .contact-preparation li { font-size: 15px; line-height: 1.75; }
.contact-preparation ul { padding-left: 20px; }
.contact-preparation li { margin-bottom: 10px; }
.site-footer { padding: 48px clamp(22px, 4vw, 72px) 0; background: #090909; border-top: 1px solid var(--line-dark); }
.footer-main { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 40px; padding-bottom: 38px; }
.footer-brand img { width: 220px; max-width: 100%; height: auto; }
.footer-brand p { margin-top: 22px; font-size: 13px; line-height: 1.7; color: #aaa399; }
.footer-brand > span { font-size: 11px; color: #aaa399; }
.footer-nav, .footer-contact { display: flex; flex-direction: column; align-items: flex-start; }
.footer-nav a, .footer-contact a { padding: 12px 0; font-size: 13px; overflow-wrap: anywhere; max-width: 100%; }
.footer-contact p { margin: 0 0 8px; font-size: 16px; }
.footer-contact .footer-cta { color: var(--orange); border-bottom: 1px solid var(--orange); margin-top: 6px; }
.footer-cta span { margin-left: 18px; }
.footer-nav a:hover { color: var(--orange); }
.footer-bottom { border-top: 1px solid var(--line-dark); padding: 20px 0; color: #aaa399; font-size: 11px; }
@media (max-width: 700px) {
 .page-intro { padding-top: 40px; padding-bottom: 40px; }
 .content-split { grid-template-columns: 1fr; gap: 16px; padding-top: 40px; padding-bottom: 40px; }
 .contact-layout { grid-template-columns: 1fr; }
 .contact-details { border-right: 0; border-bottom: 1px solid var(--line-light); }
 .contact-details, .contact-preparation { padding-top: 32px; padding-bottom: 32px; }
 .footer-main { grid-template-columns: 1fr; gap: 28px; }
}
