.home-travel-link,.program-venue-link{display:block;width:fit-content;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:5px;line-height:1.6;margin-top:24px;color:#375767}
.skip-link{position:absolute;top:-100px;left:16px;z-index:1000;padding:12px 20px;background:#375767;color:white}.skip-link:focus{top:8px}
#travel{max-width:1320px;padding-top:48px}.travel-intro{max-width:900px;margin-bottom:30px}.travel-intro .eyebrow{margin-bottom:18px}.travel-intro h1{font-size:clamp(42px,5.5vw,76px);line-height:1.07;max-width:850px}.travel-intro>p:last-child{font-size:17px;max-width:680px}
.ceremony-card{background:#e0ebed;border:1px solid #b9cdd2;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;padding:32px 36px}.ceremony-card h2{font:400 36px 'Playfair Display',Georgia,serif;letter-spacing:-.035em;margin:12px 0}.ceremony-card p{font-size:15px;line-height:1.6;max-width:670px}.ceremony-card>div>strong{display:block;margin-top:20px;font-size:15px}.ceremony-times{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:12px;align-items:center}.ceremony-times strong{padding:10px 14px;background:#375767;color:#fff;font-size:16px}.ceremony-times span{font-size:15px;font-weight:600}.venue-address{margin-bottom:0}.ceremony-actions{display:flex;flex-direction:column;justify-content:center;gap:13px;align-items:stretch;min-width:210px}.ceremony-actions .guide-link{text-align:center}.ceremony-actions .button{gap:10px}.ceremony-actions #copy-status{margin:0;font-size:13px;max-width:240px}
.friday-note{border-left:3px solid #955b53;padding:4px 0 4px 17px;font-size:15px;line-height:1.65;margin:22px 0 30px;max-width:760px}.travel-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:70px}.travel-shortcuts a{display:flex;align-items:center;justify-content:space-between;min-height:54px;border:1px solid #c6cdca;padding:13px 16px;font-weight:600;font-size:14px;line-height:1.45;background:#fffcf8}.travel-shortcuts a::after{content:'↓';margin-left:8px;color:#955b53}.travel-shortcuts a:hover{border-color:#375767;background:#eaf1f3}
.guide-section{scroll-margin-top:24px;padding-top:10px;margin-bottom:68px}.guide-heading{display:flex;align-items:baseline;gap:18px;border-top:1px solid #c9ccc6;padding-top:27px}.guide-heading h2{font:400 clamp(30px,3.6vw,47px) 'Playfair Display',Georgia,serif;letter-spacing:-.04em;line-height:1.15;margin:0 0 18px}.section-lead{max-width:790px;font-size:18px;line-height:1.65;margin:0 0 24px}.booking-note{display:flex;align-items:baseline;gap:6px 18px;flex-wrap:wrap;background:#ecdfce;border-left:3px solid #955b53;padding:18px 22px;margin:22px 0 25px;font-size:14px;line-height:1.6}.booking-note strong{color:#7c463e}.booking-note p{margin:0;flex:1 1 420px}.guide-link{border:0;background:none;padding:8px 0;color:#375767;font:600 14px 'DM Sans',Arial,sans-serif;text-decoration:underline;text-underline-offset:4px;line-height:1.5;text-align:left;display:inline-block}.guide-link:hover{color:#7c463e}.zone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.zone-card{display:flex;flex-direction:column;background:#fffcf8;border:1px solid #cad4ca;padding:25px 26px;scroll-margin-top:24px;min-width:0}.zone-card.selected{outline:3px solid #2d735a;outline-offset:-3px;background:#edf3eb}.zone-top{display:flex;align-items:center;gap:14px}.zone-letter{display:grid;place-items:center;width:38px;height:38px;background:#e2ecdf;border:1px solid #8ea88d;font-size:18px;font-weight:700;color:#285840;flex-shrink:0}.zone-label{font-size:10px;font-weight:700;letter-spacing:.14em;color:#4e6b55}.zone-card h3{font:400 29px 'Playfair Display',Georgia,serif;line-height:1.2;letter-spacing:-.03em;margin:18px 0 10px}.zone-card p{font-size:15px;line-height:1.65;margin:0 0 13px}.zone-route{font-weight:500;border-top:1px solid #dde1d9;padding-top:14px}.zone-actions{display:flex;align-items:flex-start;flex-wrap:wrap;gap:4px 22px;margin-top:auto}.zone-actions .guide-link{min-height:44px}.guide-note{font-size:14px;line-height:1.65;color:#53615f;max-width:920px}.map-disclosure{margin:10px 0 20px;background:#375767;color:#fff;border-color:#375767}.map-disclosure:hover{background:#264858}.map-disclosure[aria-expanded=true]{display:none}.paris-map-section{scroll-margin-top:24px;margin-top:20px}.paris-map-header h3{font:400 31px 'Playfair Display',Georgia,serif;line-height:1.2;letter-spacing:-.03em;margin:0 0 10px}.map-presets{display:flex;gap:8px;flex-wrap:wrap;padding:0 28px 18px}.map-presets [aria-pressed=true]{background:#375767;color:#fff;border-color:#375767}.map-airport-choice{padding:0 28px 18px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:14px}.map-transport-actions .map-button{font-size:13px;border-color:#aab5af}.map-transport-actions [aria-pressed=true]{background:#e6eee3;color:#285840;border-color:#537759}#map-zones-toggle[aria-pressed=true]{background:#f7e8e9;border-color:#ad626a;color:#7a303a}.paris-map{height:510px}.guide-map-legend{padding:18px 28px;color:#3c4a50}.guide-map-legend p{margin:0 0 10px;font-size:13px;line-height:1.6}.guide-map-legend .legend-green{font-weight:700;color:#285840}.guide-map-legend .legend-red{font-weight:600;color:#873842}.guide-map-legend small{display:block;margin:-6px 0 14px 16px;font-size:11px;line-height:1.5}.line-nine{display:inline-grid;place-items:center;background:#cfca4b;color:#252925;width:25px;height:25px;border-radius:50%;margin-right:6px}.map-selection{margin:0;padding:0 28px 16px;font-size:14px;font-weight:700;color:#285840}.map-selection:empty{display:none}.zone-map-marker{display:grid;place-items:center}.zone-map-marker span{display:block;background:#285840;color:white;border:2px solid #fff;border-radius:4px;font-size:13px;font-weight:700;padding:6px 8px;box-shadow:0 2px 5px #0003;white-space:nowrap}.guide-station-label{font:600 12px 'DM Sans',Arial,sans-serif;padding:3px 5px;border-color:#758073;border-radius:2px;box-shadow:0 1px 3px #0002}.map-hint{font-size:13px}.map-status{z-index:470}.leaflet-popup-content a{color:#375767;text-decoration:underline;text-underline-offset:3px;display:inline-block;padding:6px 0}.leaflet-container a.leaflet-popup-close-button{width:36px;height:36px;line-height:36px}.leaflet-control-attribution{overflow-wrap:anywhere}
.arrival-modes{display:flex;gap:10px;margin-bottom:22px}.arrival-modes [aria-pressed=true]{background:#375767;color:#fff;border-color:#375767}.arrival-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.arrival-card{padding:26px;background:#fffcf8;border:1px solid #cbd2d0;min-width:0}.arrival-card h3,.day-grid h3{font:400 29px 'Playfair Display',Georgia,serif;letter-spacing:-.025em;line-height:1.25;margin:14px 0}.arrival-card p,.day-grid p,#arrival-train p,.faq-section p{font-size:15px;line-height:1.7}.arrival-card .guide-link{display:block;width:fit-content;margin-top:4px}.beauvais-note{border-left:3px solid #955b53;padding:12px 17px;background:#f0e2dc;font-size:14px;line-height:1.6;margin-top:22px}.select-label{display:block;font-size:14px;font-weight:700;margin:22px 0 9px}select{border:1px solid #9daea9;min-height:46px;padding:10px 13px;background:#fffcf8;color:#3c4a50;font:inherit;max-width:100%}.guide-actions{display:flex;flex-wrap:wrap;gap:8px 22px}.day-sequence{padding:19px 22px;background:#e0ebed;font-size:16px;font-weight:600;line-height:1.9}.day-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:32px}.after-card{background:#ece4d8;padding:10px 24px 24px}.guide-section details{border-top:1px solid #cbd1ca;padding:17px 0}.guide-section details:last-child{border-bottom:1px solid #cbd1ca}.guide-section summary{cursor:pointer;font-size:15px;font-weight:600;line-height:1.6;padding:6px 0;min-height:40px}.guide-section details p{margin:10px 0 14px;max-width:850px}.faq-section .source-details{margin-top:28px}.source-details .guide-link{display:block}.guide-heading h2:focus,.ceremony-card h2:focus{outline-offset:8px}#travel :where(a,button,summary){overflow-wrap:anywhere}.travel-shortcuts a,.zone-card,.arrival-card{min-width:0}
@media(min-width:761px){#map-return{flex-shrink:0}.map-disclosure{display:none}}
@media(max-width:1050px){.ceremony-card{grid-template-columns:1fr;gap:20px}.ceremony-actions{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:center}.ceremony-actions .guide-link{padding:12px}.ceremony-actions #copy-status{flex-basis:100%;max-width:none}.travel-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.day-grid{grid-template-columns:1fr 1fr;gap:20px}}
@media(max-width:760px){#travel{padding-top:30px}.travel-intro{margin-bottom:24px}.travel-intro h1{font-size:43px}.travel-intro .eyebrow{font-size:10px}.travel-intro>p:last-child{font-size:16px}.ceremony-card{padding:24px 22px}.ceremony-card h2{font-size:31px}.ceremony-card p{font-size:14px}.ceremony-times{gap:12px}.ceremony-times strong{font-size:15px}.ceremony-actions{gap:10px}.ceremony-actions .button,.ceremony-actions .map-button{width:100%;justify-content:center}.ceremony-actions .guide-link{padding-left:0}.friday-note{font-size:14px}.travel-shortcuts{gap:8px;margin-bottom:42px}.travel-shortcuts a{font-size:13px;padding:11px;min-height:58px}.guide-heading{padding-top:23px;gap:12px}.guide-heading h2{font-size:32px}.section-lead{font-size:16px}.zone-grid,.arrival-grid,.day-grid{grid-template-columns:1fr}.zone-card{padding:22px}.zone-card h3{font-size:27px}.zone-card p{font-size:14px}.booking-note{padding:16px 18px}.guide-section{margin-bottom:46px}.paris-map-header{padding:20px;gap:14px}.paris-map-header h3{font-size:28px}.paris-map-header p{font-size:14px}.paris-map-header #map-return{width:100%}.map-presets,.map-transport-actions{padding-left:16px;padding-right:16px;gap:7px}.map-presets .map-button{font-size:12px;padding:10px;flex:1 1 auto}.map-transport-actions .map-button{padding:10px;font-size:12px}.map-airport-choice{padding-left:16px;padding-right:16px}.paris-map{height:420px;touch-action:pan-y}.map-disclosure{width:100%}.guide-map-legend{padding:16px}.guide-map-legend .line-legend{font-size:12px}.map-selection{padding:0 16px 16px}.map-hint{padding:0 16px 18px}.arrival-card{padding:22px}.day-sequence{font-size:14px;padding:16px 20px}.guide-actions{gap:4px 16px}.guide-section summary{font-size:14px}.main-nav{gap:10px;justify-content:space-between}.main-nav a{font-size:11px}.language-switch button{min-width:32px;min-height:40px}}
@media(max-width:360px){.main-nav{gap:7px}.main-nav a{font-size:10px}.page-shell{padding-left:16px;padding-right:16px}.travel-intro h1{font-size:38px}.ceremony-card{padding:21px 18px}.ceremony-times{align-items:flex-start;flex-direction:column}.zone-actions{gap:0}.guide-heading h2{font-size:29px}.paris-map{height:380px}}

.route-planner{padding:24px;background:#e8eeeb;border:1px solid #c6d3cc;margin:24px 0;scroll-margin-top:24px;display:grid;grid-template-columns:1fr auto;gap:16px 20px;align-items:end}.route-planner h3{font:400 28px 'Playfair Display',Georgia,serif;letter-spacing:-.025em;margin:0;grid-column:1/-1}.route-planner p{grid-column:1/-1;margin:0;font-size:14px;line-height:1.6}.route-planner .field{min-width:0}.route-planner .field:has(select){grid-column:1/-1}.route-planner select{width:100%}.route-planner .button{height:50px;white-space:nowrap}@media(max-width:760px){.route-planner{grid-template-columns:1fr;padding:20px}.route-planner .button{width:100%;justify-content:center}}
