/* Pages intérieures : même identité, compositions propres à chaque parcours. */
.g-page{padding:35px 24px 65px;background:#f5f1e8;color:#153578;overflow:hidden}.g-back{display:inline-flex;align-items:center;min-height:44px;font-size:11px;color:#677182;text-decoration:none;margin-bottom:30px}.g-page h1,.g-memories h1{font-family:Georgia;font-weight:400;font-size:46px;line-height:1.03;letter-spacing:-.055em;margin:0 0 25px}.g-page h1 em,.g-page h2 em{font-weight:400;color:#a51f2d}.g-page h2{font-family:Georgia;font-weight:400;font-size:33px;line-height:1.08;letter-spacing:-.045em;margin:0 0 20px}.g-page header>p:not(.eyebrow){font-size:13px;line-height:1.9;color:#606674;max-width:420px}.g-page .eyebrow{font-size:8px;letter-spacing:.15em;margin-bottom:23px}.g-buy-hero{display:grid;gap:35px;align-items:center}.g-buy-hero header>.button{margin-top:13px}.g-invitation{margin:0;background:#faf7f0;border:1px solid #c5a05a50;position:relative;box-shadow:9px 12px 0 #e9e1d3}.g-invitation-photo{position:relative;overflow:hidden;aspect-ratio:1.65}.g-invitation-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s}.g-invitation-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#10244caa)}.g-invitation-photo>span{position:absolute;z-index:1;left:22px;bottom:20px;color:#f5f1e8;font-family:Georgia;font-style:italic;font-size:23px;line-height:1.1;max-width:230px}.g-invitation figcaption{padding:25px}.g-invitation figcaption>img{width:170px;height:auto;margin-bottom:23px}.g-invitation-facts{display:grid;gap:15px}.g-invitation-facts p{font-size:13px;margin:0;line-height:1.5}.g-invitation-facts small{display:block;font-family:DM,Arial,sans-serif;font-size:9px;color:#766347;margin-top:5px;font-weight:400;letter-spacing:0}.g-invitation-facts .g-price{font-family:Georgia;font-size:30px;letter-spacing:-.035em}.g-imagined{display:block;font-size:7px;color:#706a60;margin-top:20px}.g-buy-contact{margin-top:75px;scroll-margin-top:0}.g-contact-grid{display:grid;gap:18px;margin-top:30px}.g-contact-grid .contact-choice{padding:23px;border:1px solid #c5a05a45;background:#faf7f0;transition:background .3s,border-color .3s}.g-contact-grid .contact-choice:hover{border-color:#c5a05a;background:#f5eee0}.g-contact-grid .contact-choice>strong{font-size:15px}.g-contact-grid .contact-choice a{font-size:11px;padding:11px 7px;min-height:46px;background:transparent}.g-note{font-size:10px;line-height:1.8;color:#706a60;margin:22px 0 0;max-width:690px}.g-next-step{display:flex;flex-wrap:wrap;gap:20px;align-items:center;padding-top:35px;margin-top:50px;border-top:1px solid #c5a05a70}.g-step-number{font-family:Georgia;font-size:60px;color:#c5a05a;line-height:1}.g-next-step h2{font-size:30px;margin:0}.g-next-step .eyebrow{margin-bottom:10px}.g-next-step .button{width:100%;justify-content:space-between}.g-info-heading{margin-bottom:38px}.g-info-layout{display:grid;gap:40px}.g-location{position:relative;background:#10244c;color:#f5f1e8;overflow:hidden;border-radius:2px 65px 2px 2px;box-shadow:9px 12px 0 #e9e1d3}.g-location-art{height:185px;position:relative;color:#c5a05a60;overflow:hidden;border-bottom:1px solid #c5a05a30}.g-location-art svg{width:100%;height:100%;object-fit:cover;stroke-dasharray:1400;animation:location-trace 2.5s ease both}.g-location-art .g-pin{stroke:#dfc38c}.g-location-art>span{position:absolute;right:22px;top:22px;font-size:8px;line-height:1.7;letter-spacing:.1em;color:#c6d0e4}.g-location-copy{padding:28px}.g-location-copy .eyebrow{color:#dfc38c}.g-location-copy h2{font-size:36px;color:#f5f1e8}.g-location-copy h2 em{color:#dfc38c}.g-location-copy>p{font-size:12px;line-height:1.9;color:#d1d9e7}.g-location-hint{display:block;font-size:8px;color:#b6c1d8;margin-top:20px}.map-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.map-choices a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:12px 14px;border:1px solid #15357835;color:#153578;text-decoration:none;font-size:11px;transition:background .3s,translate .3s}.map-choices a:hover{background:#e9e1d3;translate:0 -2px}.g-location .map-choices a{border-color:#c5a05a80;color:#f5f1e8;background:#ffffff04}.g-location .map-choices a:hover{background:#ffffff12}.map-choice-label{font-size:10px!important;color:#766347;margin-top:20px!important;margin-bottom:0!important}.m-location .map-choices{margin-top:12px}.g-practical{display:grid;gap:30px}.g-practical article{border-top:1px solid #c5a05a60;padding-top:24px}.g-info-number{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.13em;color:#766347;margin-bottom:18px}.g-practical h2{font-size:29px}.g-practical p{font-size:12px;line-height:1.8;color:#606674}.g-practical p strong{color:#153578;font-weight:600}.g-info-contacts{border-top:1px solid #c5a05a50;margin-top:65px;padding-top:40px}.g-memories{min-height:calc(100svh - 80px);padding:24px 24px 80px;background:#10244c;color:#f5f1e8;position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column}.g-memories .g-back{color:#c6d0e4;align-self:start;z-index:2}.g-memory-content{position:relative;z-index:2;text-align:center;max-width:850px;margin:auto;padding:45px 0 15px}.g-memory-content .eyebrow{color:#dfc38c;font-size:8px;letter-spacing:.2em}.g-memory-content h1{font-size:48px;margin:27px 0}.g-memory-content h1 em{color:#dfc38c}.g-memory-content>p{color:#c6d0e4;line-height:1.8;font-size:13px}.g-memory-symbol{display:block;color:#dfc38c;font-size:39px;animation:memory-breathe 7s ease-in-out infinite}.g-memory-status{display:flex;align-items:center;justify-content:center;gap:10px;margin:30px 0 14px;font-size:11px;line-height:1.6}.g-memory-status>span{width:5px;height:5px;background:#dfc38c;border-radius:50%;flex-shrink:0}.g-memory-content>small{display:block;font-size:9px;color:#aebbd4;line-height:1.8;max-width:330px;margin:auto}.g-memory-content>.button{margin-top:33px;background:none;min-width:220px}.g-memory-orbits{position:absolute;inset:0;pointer-events:none;z-index:-1;display:grid;place-items:center}.g-memory-orbits i{position:absolute;width:520px;height:520px;border:1px solid #c5a05a24;border-radius:50%;transform:rotate(-22deg);animation:memory-orbit 14s ease-in-out infinite}.g-memory-orbits i:nth-child(2){width:640px;height:400px;animation-delay:-4s}.g-memory-orbits i:nth-child(3){width:800px;height:680px;animation-delay:-8s}.g-memory-words{position:absolute;top:28%;left:-25px;right:-25px;font-family:Georgia;font-size:100px;font-style:italic;line-height:1.25;letter-spacing:-.06em;color:#ffffff03;text-align:center;z-index:-1;pointer-events:none}
@keyframes location-trace{from{stroke-dashoffset:1400;opacity:.1}to{stroke-dashoffset:0;opacity:1}}@keyframes memory-breathe{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}@keyframes memory-orbit{0%,100%{transform:rotate(-22deg) scale(1);opacity:.5}50%{transform:rotate(-15deg) scale(1.04);opacity:1}}
@media(min-width:700px){.g-page{padding:40px 7vw 90px}.g-page h1{font-size:clamp(50px,5.5vw,84px)}.g-page h2{font-size:clamp(34px,3.8vw,55px)}.g-back{margin-bottom:40px}.g-buy-hero{grid-template-columns:1fr .9fr;gap:9vw}.g-buy-hero header>p:not(.eyebrow){font-size:15px}.g-invitation{max-width:650px;transform:rotate(1.5deg);transition:transform .7s}.g-invitation:hover{transform:rotate(0)}.g-invitation figcaption{padding:32px}.g-invitation-facts{grid-template-columns:1fr 1fr;align-items:start;gap:20px}.g-invitation-facts .g-price{font-size:35px}.g-buy-contact{margin-top:100px}.g-contact-grid{grid-template-columns:repeat(3,1fr);gap:20px}.g-contact-grid .contact-choice>strong{font-size:clamp(12px,1.2vw,18px)}.g-next-step{gap:30px;margin-top:75px;padding-top:45px}.g-next-step .button{width:auto;margin-left:auto;min-width:230px}.g-next-step h2{font-size:40px}.g-step-number{font-size:95px}.g-info-heading{max-width:1000px;margin-bottom:55px}.g-info-layout{grid-template-columns:1fr .95fr;gap:8vw;align-items:start}.g-location{position:sticky;top:110px;border-radius:2px 100px 2px 2px}.g-location-art{height:260px}.g-location-copy{padding:38px}.g-location-copy h2{font-size:52px}.g-location-copy>p{font-size:14px}.g-practical h2{font-size:36px}.g-practical p{font-size:14px}.g-info-contacts{margin-top:95px;padding-top:55px}.g-memories{padding:30px 7vw 75px}.g-memory-content h1{font-size:clamp(66px,7.2vw,110px)}.g-memory-content>p{font-size:16px}.g-memory-words{font-size:clamp(150px,16vw,260px);top:22%}.g-memory-orbits i{width:780px;height:780px}.g-memory-orbits i:nth-child(2){width:1000px;height:640px}.g-memory-orbits i:nth-child(3){width:1300px;height:980px}}
@media(min-width:700px) and (max-width:1000px){.g-contact-grid{grid-template-columns:1fr}.g-buy-hero{gap:5vw}.g-info-layout{gap:5vw}.g-location-copy{padding:25px}.g-location-copy h2{font-size:39px}.g-invitation-facts{grid-template-columns:1fr}.map-choices{grid-template-columns:1fr}}
@media(max-width:359px){.g-page{padding-left:20px;padding-right:20px}.g-page h1{font-size:40px}.map-choices a{padding:11px;font-size:10px}.g-location-copy{padding:23px}.g-memory-content h1{font-size:43px}}
@media(prefers-reduced-motion:reduce){.g-memory-symbol,.g-memory-orbits i,.g-location-art svg{animation:none}.g-invitation,.g-invitation-photo img,.map-choices a,.g-contact-grid .contact-choice{transition:none}.g-invitation{transform:none}.map-choices a:hover{translate:none}}

/* Fiche adresse : hiérarchie lisible, repère distinct des informations pratiques. */
.g-location{background:#faf7f0;color:#153578;border:1px solid #c5a05a55;border-radius:0;box-shadow:none}
.g-address-head{padding:30px;position:relative;background:#e9e1d3;border-bottom:1px solid #c5a05a55;overflow:hidden}
.g-address-head .eyebrow{display:block;color:#766347;margin-bottom:28px}
.g-address-head>p{font-family:Georgia;font-size:48px;line-height:1.05;letter-spacing:-.04em;margin:0 0 25px}
.g-address-head>p em{color:#a51f2d}.g-address-city{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#766347}
.g-address-pin{position:absolute;right:30px;top:60px;width:52px;color:#a51f2d}.g-address-pin svg{width:100%;height:auto}
.g-location-copy{padding:30px}.g-location-copy .eyebrow{color:#766347}.g-location-copy h2{color:#153578;font-size:38px;margin-bottom:16px}.g-location-copy>p{color:#606674}.g-location-hint{color:#766347;line-height:1.7;font-size:10px}
.g-location .map-choices a{color:#153578;border-color:#15357840;background:transparent}.g-location .map-choices a:hover{background:#e9e1d3}
@media(min-width:700px){.g-address-head{padding:38px}.g-address-head>p{font-size:64px}.g-address-pin{right:38px;top:68px;width:65px}.g-location-copy{padding:38px}}
.team-access .text-link{display:inline-block;margin-top:18px}.team-access input[type=password]{width:100%}

/* Contrôles de mot de passe : cible tactile et libellé accessibles. */
.password-field{margin-bottom:20px}.password-field>label{display:block;margin-bottom:8px}.password-control{position:relative}.password-control input{width:100%;padding-right:56px!important;margin:0}.password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:10px;background:transparent;border:0;color:#183578;cursor:pointer;border-radius:4px}.password-toggle svg{display:block;width:24px;height:24px}.password-toggle:hover{background:#18357810}.password-toggle:focus-visible{outline:2px solid #183578;outline-offset:1px}
