/* Accueil — rendre les univers immédiatement identifiables et cliquables. */
:root{--aya-rose:#d91f65;--aya-rose-vif:#f23d7c;--aya-rose-clair:#ff78a6;--aya-rose-fonce:#8f164b;--aya-framboise:#b61757;--aya-vieux-rose:#c95f75;--aya-pasteque:#f0526f;--aya-corail:#f0644f;--aya-saumon:#f47f67;--aya-orange:#ff7518;--aya-orange-vif:#ff963f;--aya-orange-fonce:#c84b08;--aya-terracotta:#bd542f;--aya-orange-terre:#a94722;--aya-abricot:#f39a57;--aya-ambre:#df761f;--aya-blanc:#fff;--aya-creme:#fffaf6}
body{background:#fff}
main{background:linear-gradient(180deg,#fff 0%,#fff7f9 46%,#fff6ed 100%)}
.home-hero{position:relative;isolation:isolate;overflow:hidden;min-height:auto;padding:30px 40px 34px;background:linear-gradient(125deg,#fff 0%,#fff0f5 45%,#fff0e5 100%)}
.home-hero::after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background-image:radial-gradient(circle at 18% 22%,rgba(255,255,255,.94) 0 2px,transparent 3px),radial-gradient(circle at 83% 75%,rgba(255,255,255,.82) 0 1px,transparent 2px);background-size:42px 42px,31px 31px;opacity:.5}
.hero-aura{position:absolute;z-index:-1;width:460px;height:460px;border-radius:50%;filter:blur(48px);opacity:.38;pointer-events:none;animation:heroAura 7s ease-in-out infinite alternate}
.aura-rose{top:-210px;left:8%;background:var(--aya-rose-vif)}
.aura-orange{right:5%;bottom:-250px;background:var(--aya-orange-vif);animation-delay:-4s}
.hero-frame{position:relative;width:min(1080px,100%);display:grid;grid-template-columns:230px 2px 1fr;gap:36px;align-items:center;padding:30px 40px;text-align:left;border:1px solid rgba(255,255,255,.88);border-radius:24px;background:rgba(255,255,255,.76);backdrop-filter:blur(18px);box-shadow:0 24px 64px rgba(143,22,75,.11),inset 0 1px 0 #fff;animation:heroReveal .8s cubic-bezier(.2,.75,.25,1) both}
.hero-frame::before{content:"";position:absolute;inset:10px;border:1px solid rgba(217,31,101,.08);border-radius:17px;pointer-events:none}
.hero-frame::after{content:"";position:absolute;inset:1px;z-index:0;overflow:hidden;border-radius:23px;pointer-events:none;background:linear-gradient(110deg,transparent 0%,transparent 40%,rgba(255,255,255,.8) 49%,rgba(255,167,190,.2) 52%,transparent 61%,transparent 100%);background-size:240% 100%;animation:heroShine 6.5s 1.2s ease-in-out infinite}
.home-logo{position:relative;z-index:1;width:220px;margin:0;filter:drop-shadow(0 12px 18px rgba(143,22,75,.08));animation:logoReveal .9s .12s cubic-bezier(.2,.75,.25,1) both,logoFloat 4.8s 1.1s ease-in-out infinite}
.home-hero .rule{position:relative;width:2px;height:150px;margin:0;border-radius:999px;background:linear-gradient(180deg,var(--aya-rose-fonce),var(--aya-rose-vif),var(--aya-orange-vif),var(--aya-orange-terre));background-size:100% 240%;box-shadow:0 0 22px rgba(242,61,124,.22);animation:ruleFlow 4.5s ease-in-out infinite}
.hero-copy{position:relative;z-index:1}
.hero-location{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--aya-framboise);font-family:'JetBrains Mono',monospace;font-size:.67rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.hero-location::before{content:"";width:20px;height:2px;border-radius:4px;background:var(--aya-orange)}
.hero-title{margin:0 0 10px;color:#2e1821;font-size:clamp(1.85rem,3.2vw,2.75rem);font-weight:400;line-height:1.02;letter-spacing:-.025em}
.hero-title em{display:inline-block;color:var(--aya-rose);font-family:inherit;font-style:normal;font-weight:500;letter-spacing:-.015em;background:linear-gradient(90deg,var(--aya-framboise),var(--aya-rose-vif),var(--aya-corail),var(--aya-framboise));background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:titleColorFlow 5s ease-in-out infinite}
.home-hero p.lede{max-width:47ch;margin:0;font-size:.96rem;color:#5a494e}
.hero-actions{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:10px;margin-top:20px}
.hero-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:11px 17px;border:1px solid transparent;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.015em;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.hero-btn:hover,.hero-btn:focus-visible{transform:translateY(-3px)}
.hero-btn-primary{background:linear-gradient(135deg,var(--aya-framboise),var(--aya-rose-vif),var(--aya-corail));background-size:180% 180%;color:#fff;box-shadow:0 11px 25px rgba(182,23,87,.24);animation:ctaGlow 3.8s ease-in-out infinite}
.hero-btn-primary:hover,.hero-btn-primary:focus-visible{box-shadow:0 16px 32px rgba(182,23,87,.32)}
.hero-btn-secondary{border-color:rgba(169,71,34,.24);background:rgba(255,255,255,.82);color:var(--aya-orange-terre)}
.hero-btn-secondary:hover,.hero-btn-secondary:focus-visible{background:#fff;box-shadow:0 12px 26px rgba(169,71,34,.13)}
.hero-btn span{font-size:1rem;transition:transform .25s ease}.hero-btn:hover span,.hero-btn:focus-visible span{transform:translate(3px,-1px)}
.choice-zone{position:relative;max-width:1180px;margin:0 auto;padding:30px 40px 110px}
.choice-zone::before{content:"";position:absolute;inset:0 18px 70px;z-index:0;border:1px solid rgba(217,31,101,.1);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,240,246,.92) 50%,rgba(255,238,221,.94));box-shadow:0 24px 70px rgba(143,22,75,.1)}
.choice-heading,.choice-zone .tab-grid{position:relative;z-index:1}
.choice-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:26px;padding:0 4px 21px;border-bottom:1px solid rgba(20,16,13,.16)}
.choice-kicker{display:block;margin-bottom:8px;color:var(--aya-rose);font-family:'JetBrains Mono',monospace;font-size:.69rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase}
.choice-heading h2{max-width:17ch;font-size:clamp(1.8rem,3.4vw,2.7rem);line-height:1.02}
.choice-hint{display:flex;align-items:center;gap:10px;color:var(--encre-douce);font-size:.8rem;font-weight:500;white-space:nowrap}
.choice-hint::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--aya-orange);box-shadow:0 0 0 0 rgba(255,117,24,.44);animation:choicePulse 2s ease-out infinite}
.choice-zone .tab-grid{padding:0}
.tab-card{min-height:315px;cursor:pointer;border:1px solid rgba(255,255,255,.3);box-shadow:0 16px 34px rgba(20,16,13,.12)}
.tab-card::before{content:"";position:absolute;inset:-45% -70%;z-index:1;pointer-events:none;background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.2) 50%,transparent 58%);transform:translateX(-42%) rotate(3deg);animation:cardShine 6.5s ease-in-out infinite}
.tab-card:nth-child(2)::before{animation-delay:1.1s}.tab-card:nth-child(3)::before{animation-delay:2.2s}.tab-card:nth-child(4)::before{animation-delay:3.3s}
.tab-card:focus-visible{outline:3px solid var(--aya-orange);outline-offset:4px}
.tab-card .tab-arrow{width:48px;height:48px;background:rgba(255,255,255,.12);box-shadow:0 0 0 8px rgba(255,255,255,.06);animation:arrowInvite 2.4s ease-in-out infinite}
.tab-card:nth-child(2) .tab-arrow{animation-delay:.35s}.tab-card:nth-child(3) .tab-arrow{animation-delay:.7s}.tab-card:nth-child(4) .tab-arrow{animation-delay:1.05s}
.tab-card h3{font-size:clamp(1.9rem,3vw,2.35rem)}
.tab-card p{margin-bottom:21px;font-size:.92rem}
.tab-card-cta{position:relative;z-index:3;display:inline-flex;align-items:center;gap:10px;width:fit-content;padding:11px 16px;border:1px solid rgba(255,255,255,.75);border-radius:999px;background:var(--aya-blanc);color:#391121;font-size:.76rem;font-weight:700;letter-spacing:.025em;transition:transform .25s ease,box-shadow .25s ease}
.tab-card-cta svg{transition:transform .25s ease}
.tab-card:hover .tab-card-cta,.tab-card:focus-visible .tab-card-cta{transform:translateY(-2px);box-shadow:0 10px 24px rgba(20,16,13,.22)}
.tab-card:hover .tab-card-cta svg,.tab-card:focus-visible .tab-card-cta svg{transform:translateX(4px)}
@keyframes choicePulse{0%{box-shadow:0 0 0 0 rgba(255,117,24,.5)}70%,100%{box-shadow:0 0 0 10px rgba(255,117,24,0)}}
@keyframes cardShine{0%,62%{transform:translateX(-42%) rotate(3deg)}82%,100%{transform:translateX(42%) rotate(3deg)}}
@keyframes arrowInvite{0%,100%{transform:translate(0,0);box-shadow:0 0 0 8px rgba(255,255,255,.06)}50%{transform:translate(3px,-3px);box-shadow:0 0 0 13px rgba(255,255,255,.02)}}
@keyframes heroReveal{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
@keyframes logoReveal{from{opacity:0;transform:translateX(-18px) scale(.96)}to{opacity:1;transform:none}}
@keyframes logoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes heroAura{0%{transform:translate3d(-8%,-2%,0) scale(.92)}100%{transform:translate3d(16%,9%,0) scale(1.18)}}
@keyframes heroShine{0%,42%{background-position:180% 0}68%,100%{background-position:-70% 0}}
@keyframes titleColorFlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes ctaGlow{0%,100%{background-position:0% 50%;box-shadow:0 11px 25px rgba(182,23,87,.24)}50%{background-position:100% 50%;box-shadow:0 14px 32px rgba(240,100,79,.36)}}
@keyframes ruleFlow{0%,100%{background-position:50% 0}50%{background-position:50% 100%}}
.tab-card.c1{background:linear-gradient(to bottom right,var(--aya-framboise) 0%,var(--aya-rose-vif) 34%,var(--aya-corail) 67%,var(--aya-terracotta) 100%)}
.tab-card.c1 .blob.b1{background:var(--aya-rose-clair)}.tab-card.c1 .blob.b2{background:var(--aya-abricot)}
.tab-card.c1:hover{box-shadow:0 26px 58px rgba(182,23,87,.34)}
.tab-card.c2{background:linear-gradient(to bottom right,var(--aya-orange-terre) 0%,var(--aya-terracotta) 29%,var(--aya-saumon) 61%,var(--aya-vieux-rose) 100%)}
.tab-card.c2 .blob.b1{background:var(--aya-abricot)}.tab-card.c2 .blob.b2{background:var(--aya-rose-clair)}
.tab-card.c2:hover{box-shadow:0 24px 54px rgba(189,84,47,.34)}
.tab-card.c3{background:linear-gradient(to bottom right,var(--aya-ambre) 0%,var(--aya-abricot) 30%,var(--aya-pasteque) 65%,var(--aya-framboise) 100%)}
.tab-card.c3 .blob.b1{background:#ffc080}.tab-card.c3 .blob.b2{background:var(--aya-rose-clair)}
.tab-card.c3:hover{box-shadow:0 24px 54px rgba(240,82,111,.34)}
.tab-card.c4{background:linear-gradient(to bottom right,var(--aya-rose-fonce) 0%,var(--aya-vieux-rose) 28%,var(--aya-corail) 62%,var(--aya-ambre) 100%);background-size:220% 220%}
.tab-card.c4 .blob.b1{background:var(--aya-pasteque)}.tab-card.c4 .blob.b2{background:var(--aya-orange-vif)}
.tab-card.c4:hover{box-shadow:0 26px 58px rgba(201,95,117,.34)}
.floating-booking{background:linear-gradient(135deg,var(--aya-rose-fonce),var(--aya-rose));box-shadow:0 14px 38px rgba(143,22,75,.3)}
.floating-booking::before{background:var(--aya-orange);color:#fff}
footer#contact{position:relative;isolation:isolate;overflow:hidden;margin:0;padding:76px 0 24px;border:0;background:linear-gradient(125deg,#7f123f 0%,var(--aya-framboise) 30%,var(--aya-corail) 67%,var(--aya-orange-terre) 100%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
footer#contact::before{content:"AYA";position:absolute;right:-.03em;bottom:-.2em;z-index:-1;color:rgba(255,255,255,.055);font-family:'Fraunces',serif;font-size:clamp(14rem,31vw,30rem);font-weight:600;line-height:.7;letter-spacing:-.08em;pointer-events:none}
.footer-orb{position:absolute;z-index:-1;width:420px;height:420px;border-radius:50%;filter:blur(52px);opacity:.32;pointer-events:none;animation:footerOrb 8s ease-in-out infinite alternate}
.footer-orb-rose{left:-150px;top:-180px;background:var(--aya-rose-clair)}
.footer-orb-orange{right:-120px;bottom:-210px;background:var(--aya-orange-vif);animation-delay:-3.5s}
footer#contact .footer-main{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);gap:36px 80px;width:min(1120px,calc(100% - 80px));margin:0 auto}
.footer-intro{max-width:670px}
.footer-kicker,.footer-label{display:block;font-family:'JetBrains Mono',monospace;font-size:.65rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.footer-kicker{margin-bottom:14px;color:#ffd9c5}
.footer-intro h2{margin:0;color:#fff;font-size:clamp(2.7rem,5.2vw,5rem);font-weight:400;line-height:.94;letter-spacing:-.035em}
.footer-intro h2 em{color:#ffd1dd;font-style:normal;font-weight:500}
.footer-intro>p{max-width:53ch;margin:20px 0 0;color:rgba(255,255,255,.84);font-size:.96rem;line-height:1.65}
.footer-actions{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:12px}
.footer-btn{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:58px;padding:15px 20px;border:1px solid rgba(255,255,255,.34);border-radius:999px;font-size:.82rem;font-weight:700;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.footer-btn:hover,.footer-btn:focus-visible{transform:translateY(-3px)}
.footer-btn-primary{background:#fff;color:var(--aya-framboise);box-shadow:0 15px 32px rgba(80,10,38,.22)}
.footer-btn-primary:hover,.footer-btn-primary:focus-visible{box-shadow:0 20px 40px rgba(80,10,38,.3)}
.footer-btn-light{background:rgba(255,255,255,.1);color:#fff;backdrop-filter:blur(10px)}
.footer-btn-light:hover,.footer-btn-light:focus-visible{background:rgba(255,255,255,.18)}
.footer-btn span{font-size:1.05rem;transition:transform .25s ease}.footer-btn:hover span,.footer-btn:focus-visible span{transform:translate(3px,-1px)}
.footer-details{grid-column:1/-1;display:grid;grid-template-columns:1.15fr 1fr .75fr;gap:26px;padding:30px 0;border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}
.footer-label{margin-bottom:10px;color:#ffd9c5}
.footer-details p,.footer-details a{color:#fff;font-size:.82rem;line-height:1.55}
.footer-details a{position:relative;width:fit-content}.footer-details a::after{content:"";position:absolute;left:0;right:100%;bottom:-3px;height:1px;background:#fff;transition:right .25s ease}.footer-details a:hover::after,.footer-details a:focus-visible::after{right:0}
.footer-social-block{min-width:0;padding:17px;border:1px solid rgba(255,255,255,.24);border-radius:20px;background:rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.14);backdrop-filter:blur(12px)}
.footer-social-block .footer-label{display:block;margin-bottom:5px;color:#fff;font-size:.72rem;font-weight:800}
.footer-social-intro{max-width:28ch;margin:0 0 13px!important;color:rgba(255,255,255,.78)!important;font-size:.62rem!important;line-height:1.45!important}
.footer-social{display:flex;flex-direction:column;align-items:stretch;gap:10px}
.footer-details .social-link{display:inline-flex;align-items:center;gap:12px;width:100%;min-width:0;padding:14px 16px;border:1px solid rgba(255,255,255,.42);border-radius:16px;color:#fff;font-size:.75rem;font-weight:700;line-height:1;backdrop-filter:blur(10px);transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.footer-details .social-link::after{display:none}
.footer-details .social-link svg{width:27px;height:27px;flex:0 0 27px}
.footer-details .social-link:hover,.footer-details .social-link:focus-visible{transform:translateX(4px);background:#fff;color:var(--aya-framboise);box-shadow:0 10px 24px rgba(80,10,38,.18)}
.footer-details .social-instagram:hover svg,.footer-details .social-instagram:focus-visible svg{color:#d91f65}
.footer-details .social-tiktok:hover svg,.footer-details .social-tiktok:focus-visible svg{color:#1f1720}
.footer-details .social-instagram{position:relative;isolation:isolate;border-color:rgba(255,255,255,.62);background:linear-gradient(115deg,#962fbf 0%,#d62976 42%,#fa7e1e 78%,#feda75 120%);color:#fff;box-shadow:0 14px 32px rgba(112,12,65,.3);overflow:hidden}
.footer-details .social-instagram::before{content:"";position:absolute;z-index:-1;inset:-60% auto -60% -25%;width:115px;border-radius:50%;background:rgba(255,255,255,.55);filter:blur(28px);opacity:.18;transition:opacity .25s ease,transform .35s ease}
.footer-details .social-instagram>svg{color:#fff;filter:drop-shadow(0 2px 5px rgba(73,0,36,.28))}
.footer-details .social-instagram>span{display:grid;gap:3px;line-height:1.05}
.footer-details .social-instagram strong{font-size:.82rem;letter-spacing:.015em}
.footer-details .social-instagram small{font-size:.56rem;font-weight:600;color:rgba(255,255,255,.84);letter-spacing:.015em}
.footer-details .social-instagram>b{margin-left:auto;font-size:1.05rem;font-weight:600;transition:transform .25s ease}
.footer-details .social-instagram:hover,.footer-details .social-instagram:focus-visible{transform:translateY(-3px);background:linear-gradient(115deg,#8726aa,#e12879 45%,#ff842a 82%);color:#fff;box-shadow:0 19px 39px rgba(80,10,38,.4)}
.footer-details .social-instagram:hover::before,.footer-details .social-instagram:focus-visible::before{opacity:.38;transform:scale(1.25)}
.footer-details .social-instagram:hover>b,.footer-details .social-instagram:focus-visible>b{transform:translate(3px,-3px)}
.footer-details .social-tiktok{position:relative;isolation:isolate;background:linear-gradient(125deg,#100c10 0%,#231721 68%,#3b1831 100%);box-shadow:0 14px 30px rgba(30,7,23,.32);overflow:hidden}
.footer-details .social-tiktok::before{content:"";position:absolute;z-index:-1;right:-24px;top:-45px;width:105px;height:105px;border-radius:50%;background:linear-gradient(135deg,#25f4ee,#fe2c55);filter:blur(28px);opacity:.38;transition:opacity .25s ease,transform .35s ease}
.footer-details .social-tiktok>span{display:grid;gap:3px;line-height:1.05}
.footer-details .social-tiktok strong{font-size:.82rem;letter-spacing:.015em}
.footer-details .social-tiktok small{font-size:.56rem;font-weight:600;color:rgba(255,255,255,.72);letter-spacing:.015em}
.footer-details .social-tiktok>b{margin-left:auto;font-size:1.05rem;font-weight:600;transition:transform .25s ease}
.footer-details .social-tiktok:hover,.footer-details .social-tiktok:focus-visible{transform:translateY(-3px);background:linear-gradient(125deg,#090709,#26161f 70%,#4a1936);color:#fff;box-shadow:0 19px 39px rgba(30,7,23,.46)}
.footer-details .social-tiktok:hover::before,.footer-details .social-tiktok:focus-visible::before{opacity:.58;transform:scale(1.2)}
.footer-details .social-tiktok:hover>b,.footer-details .social-tiktok:focus-visible>b{transform:translate(3px,-3px)}
footer#contact .footer-nav{grid-column:1/-1;display:flex;gap:24px;flex-wrap:wrap;padding:0;border:0;color:rgba(255,255,255,.76);font-size:.75rem}
footer#contact .footer-nav a:hover,footer#contact .footer-nav a:focus-visible{color:#fff}
.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.58);font-family:'JetBrains Mono',monospace;font-size:.61rem;letter-spacing:.05em;text-transform:uppercase}
footer#contact .legal-links{position:relative;display:flex;justify-content:center;gap:20px;margin:24px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.55);font-size:.67rem}
footer#contact .legal-links a:hover,footer#contact .legal-links a:focus-visible{color:#fff}
@keyframes footerOrb{0%{transform:translate3d(-8%,0,0) scale(.94)}100%{transform:translate3d(14%,8%,0) scale(1.16)}}
@media(max-width:760px){
  .home-hero{padding:12px}.hero-frame{display:flex;flex-direction:column;gap:0;padding:19px 15px 18px;text-align:center;border-radius:18px}.hero-frame::before{inset:7px;border-radius:13px}.home-logo{width:min(158px,43vw);margin-bottom:0}.home-hero .rule{width:64px;height:2px;margin:9px auto 11px;background:linear-gradient(90deg,var(--aya-rose-fonce),var(--aya-rose-vif),var(--aya-orange-vif),var(--aya-orange-terre));background-size:240% 100%}.hero-location{justify-content:center;margin-bottom:7px;font-size:.56rem;letter-spacing:.09em}.hero-location::before{display:none}.hero-title{font-size:1.55rem;line-height:1.05}.home-hero p.lede{font-size:.78rem;line-height:1.4;max-width:34ch;margin:0 auto}.hero-actions{justify-content:center;gap:8px;margin-top:14px}.hero-btn{min-height:40px;padding:9px 13px;font-size:.66rem}.luxury-marquee{margin-bottom:10px}
  .choice-zone{padding:14px 16px 80px}.choice-zone::before{inset:0 6px 48px}.choice-heading{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:12px;padding-bottom:14px}.choice-heading h2{font-size:1.75rem}.choice-hint{white-space:normal}.choice-zone .tab-grid{gap:14px}
  .tab-card{min-height:260px;padding:26px 24px;border-radius:16px}.tab-card .tab-arrow{top:26px;right:26px;width:44px;height:44px}.tab-card h3{font-size:2rem}.tab-card p{font-size:.87rem;margin-bottom:14px}.tab-card-cta{padding:10px 14px}
  footer#contact{padding:54px 0 22px}footer#contact .footer-main{display:flex;flex-direction:column;gap:28px;width:calc(100% - 32px)}.footer-intro h2{font-size:2.65rem}.footer-intro>p{font-size:.84rem;margin-top:16px}.footer-actions{gap:10px}.footer-btn{min-height:52px;padding:13px 17px}.footer-details{display:grid;grid-template-columns:1fr;gap:22px;padding:24px 0}.footer-social{flex-direction:row;flex-wrap:wrap}.footer-details .social-link{min-width:130px}.footer-bottom{flex-direction:column;gap:7px}.footer-orb{width:300px;height:300px}footer#contact .footer-nav{gap:13px 19px}footer#contact::before{right:-.12em;bottom:.08em;font-size:13rem}
}
@media(prefers-reduced-motion:reduce){.choice-hint::before,.tab-card::before,.tab-card .tab-arrow,.hero-frame,.hero-frame::after,.home-logo,.hero-aura,.home-hero .rule,.hero-title em,.hero-btn-primary,.footer-orb{animation:none!important}}

/* Accès parking en pied d'accueil */
.home-parking-guide{position:relative;display:grid;grid-template-columns:minmax(270px,.72fr) minmax(460px,1.28fr);align-items:center;gap:clamp(34px,6vw,84px);max-width:1180px;margin:0 auto 86px;padding:56px clamp(34px,5vw,70px);overflow:hidden;border:1px solid rgba(217,31,101,.14);border-radius:32px;background:linear-gradient(135deg,#fff 0%,#fff1f6 48%,#ffeadb 100%);box-shadow:0 28px 70px rgba(109,39,62,.12)}
.home-parking-guide::before{content:"";position:absolute;width:300px;height:300px;right:-120px;top:-150px;border-radius:50%;background:rgba(255,117,24,.17);filter:blur(20px)}
.home-parking-copy,.home-parking-plan{position:relative;z-index:1}.home-parking-kicker{display:block;margin-bottom:14px;color:var(--aya-framboise);font-family:'JetBrains Mono',monospace;font-size:.67rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.home-parking-copy h2{margin:0;color:#2e1821;font-size:clamp(2.25rem,4vw,4rem);font-weight:400;line-height:.96}.home-parking-copy h2 em{color:var(--aya-rose);font-style:normal}.home-parking-copy p{margin:20px 0 0;color:#66545a;font-size:.9rem;line-height:1.7}.home-parking-actions{display:flex;flex-direction:column;align-items:flex-start;gap:13px;margin-top:26px}.home-parking-button{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-width:220px;padding:14px 18px;border-radius:999px;background:linear-gradient(135deg,var(--aya-framboise),var(--aya-rose-vif));color:#fff;font-size:.76rem;font-weight:800;box-shadow:0 13px 28px rgba(143,22,75,.24);transition:transform .25s ease,box-shadow .25s ease}.home-parking-button:hover,.home-parking-button:focus-visible{transform:translateY(-3px);box-shadow:0 18px 34px rgba(143,22,75,.32)}.home-parking-detail{color:var(--aya-orange-terre);font-size:.72rem;font-weight:700}.home-parking-plan{margin:0}.home-parking-plan svg{display:block;width:100%;height:auto;border-radius:26px;box-shadow:0 18px 42px rgba(60,35,43,.14)}.home-route-line{fill:none;stroke:url(#home-route-gradient);stroke-width:12;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:18 11;filter:drop-shadow(0 4px 5px rgba(143,22,75,.25));animation:homeRouteFlow 1.1s linear infinite}.home-route-dot{fill:#fff;stroke:#d91f65;stroke-width:6;filter:drop-shadow(0 4px 5px rgba(143,22,75,.34))}.home-plan-step circle{fill:#d91f65;stroke:#fff;stroke-width:3}.home-plan-step text{fill:#fff;font-size:13px;font-weight:800;text-anchor:middle}.home-parking-pin circle{fill:#ef7d30;stroke:#fff;stroke-width:4}.home-parking-pin text{fill:#fff;font-size:28px;font-weight:900;text-anchor:middle}.home-parking-plan figcaption{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:13px;color:#6e5960;font-size:.68rem;line-height:1.55}.home-parking-plan figcaption strong{color:var(--aya-framboise)}
@keyframes homeRouteFlow{to{stroke-dashoffset:-29}}
@media(max-width:820px){.home-parking-guide{grid-template-columns:1fr;margin:0 16px 64px;padding:34px 22px;border-radius:24px}.home-parking-copy{text-align:center}.home-parking-copy p{max-width:48ch;margin-left:auto;margin-right:auto}.home-parking-actions{align-items:center}.home-parking-plan figcaption{justify-content:center}.home-parking-copy h2{font-size:2.6rem}}
@media(max-width:430px){.home-parking-guide{margin-inline:12px;padding:29px 13px 62px}.home-parking-copy h2{font-size:2.2rem}.home-parking-copy p{font-size:.8rem}.home-parking-button{min-width:205px}.home-parking-plan svg{border-radius:18px}.home-parking-plan figcaption{display:grid;grid-template-columns:auto 1fr;text-align:left;font-size:.61rem}}

/* Avis clientes — transition entre l'accès et les réseaux sociaux */
.home-reviews{position:relative;display:grid;grid-template-columns:1.05fr .9fr 1.05fr;align-items:stretch;gap:18px;max-width:1180px;margin:0 auto 86px;padding:24px;overflow:hidden;border:1px solid rgba(217,31,101,.16);border-radius:32px;background:linear-gradient(125deg,#fff7fa 0%,#fff 43%,#fff0e6 100%);box-shadow:0 26px 66px rgba(109,39,62,.11)}
.home-reviews::before{content:"";position:absolute;inset:auto -90px -120px auto;width:280px;height:280px;border-radius:50%;background:rgba(255,117,24,.18);filter:blur(24px)}
.home-reviews-heading,.home-review-score,.home-review-quote{position:relative;z-index:1;border-radius:24px}
.home-reviews-heading{padding:28px 26px;background:linear-gradient(145deg,#ca1655,#ec316e);color:#fff}
.home-reviews-kicker{display:block;margin-bottom:13px;font-family:'JetBrains Mono',monospace;font-size:.64rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;opacity:.82}
.home-reviews-heading h2{margin:0;font-size:clamp(2rem,3.1vw,3.3rem);font-weight:400;line-height:.98}.home-reviews-heading h2 em{color:#ffd6c2;font-style:normal}.home-reviews-heading p{margin:17px 0 22px;max-width:34ch;color:rgba(255,255,255,.85);font-size:.78rem;line-height:1.65}
.home-reviews-link{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid rgba(255,255,255,.52);border-radius:999px;color:#fff;font-size:.7rem;font-weight:800;transition:transform .25s ease,background .25s ease}.home-reviews-link:hover,.home-reviews-link:focus-visible{transform:translateY(-2px);background:#fff;color:#bd174e}
.home-review-scores{display:grid;grid-template-columns:1fr 1fr;gap:14px}.home-review-score{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:22px 16px;border:1px solid rgba(217,31,101,.13);background:#fff;color:#342129;text-align:center;box-shadow:0 12px 30px rgba(78,40,53,.08);transition:transform .25s ease,box-shadow .25s ease}.home-review-score:hover,.home-review-score:focus-visible{transform:translateY(-5px);box-shadow:0 18px 36px rgba(118,35,65,.16)}
.home-review-source{font-family:'JetBrains Mono',monospace;font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#8a6d77}.home-review-score strong{display:block;margin:9px 0 3px;color:#d91f65;font-family:Georgia,serif;font-size:2.45rem;font-weight:400;line-height:1}.home-review-score strong small{font-family:Arial,sans-serif;font-size:.76rem;font-weight:700}.home-review-stars{color:#f1782f;font-size:.86rem;letter-spacing:.05em}.home-review-action{margin-top:13px;color:#8f164b;font-size:.62rem;font-weight:800}.home-review-score.planity strong{color:#ef6f2e}
.home-review-quote{display:flex;flex-direction:column;justify-content:center;margin:0;padding:29px 28px;border:1px solid rgba(239,111,46,.18);background:linear-gradient(145deg,#fff,#fff2e9);color:#3a242c}.home-review-quote-stars{color:#ef702e;font-size:.9rem;letter-spacing:.08em}.home-review-quote p{margin:16px 0;color:#4a3039;font-family:Georgia,serif;font-size:clamp(1.15rem,1.55vw,1.48rem);line-height:1.35}.home-review-quote cite{color:#9b737f;font-size:.63rem;font-style:normal;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:980px){.home-reviews{grid-template-columns:1fr 1fr}.home-review-quote{grid-column:1/-1}.home-review-scores{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.home-reviews{grid-template-columns:1fr;margin:0 16px 64px;padding:16px;border-radius:25px}.home-review-quote{grid-column:auto}.home-reviews-heading{text-align:center}.home-reviews-heading p{margin-left:auto;margin-right:auto}.home-review-scores{gap:10px}.home-review-score{padding:20px 10px}.home-review-score strong{font-size:2.1rem}}
@media(max-width:390px){.home-reviews{margin-inline:12px}.home-review-scores{grid-template-columns:1fr 1fr}.home-review-source{font-size:.58rem}.home-review-score strong{font-size:1.9rem}.home-review-action{font-size:.56rem}.home-review-quote{padding:24px 21px}}
@media(prefers-reduced-motion:reduce){.home-route-line{animation:none}.home-route-dot{display:none}}

/* Accueil : recherche prioritaire et premier écran compact */
.home-service-search{position:relative;z-index:5;width:min(600px,100%);margin-top:18px;text-align:left}
.choice-zone>.home-service-search{width:min(790px,calc(100% - 40px));margin:0 auto 32px;padding:18px 20px 16px;border:1px solid rgba(217,31,101,.14);border-radius:24px;background:linear-gradient(120deg,rgba(255,255,255,.96),rgba(255,241,246,.94) 55%,rgba(255,240,229,.92));box-shadow:0 18px 46px rgba(105,22,53,.1)}
.home-service-search>label{display:block;margin:0 0 8px 3px;color:#681536;font-family:'JetBrains Mono',monospace;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.home-search-field{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;padding:6px 7px 6px 15px;border:1px solid rgba(182,23,87,.24);border-radius:18px;background:#fff;box-shadow:0 15px 35px rgba(105,22,53,.14),inset 0 1px 0 #fff;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.home-service-search:focus-within .home-search-field{border-color:rgba(217,31,101,.58);box-shadow:0 18px 40px rgba(105,22,53,.2),0 0 0 4px rgba(242,61,124,.08);transform:translateY(-1px)}
.home-search-field>svg{width:22px;height:22px;color:var(--aya-rose)}
.home-search-field input{min-width:0;height:44px;border:0;outline:0;background:transparent;color:#2e1821;font:600 .85rem/1.2 Manrope,Arial,sans-serif}
.home-search-field input::placeholder{color:#927982;font-weight:500}
.home-search-field input::-webkit-search-cancel-button{cursor:pointer}
.home-search-field button{min-height:44px;padding:0 18px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--aya-framboise),var(--aya-rose-vif),var(--aya-corail));color:#fff;font:800 .68rem/1 Manrope,Arial,sans-serif;cursor:pointer;box-shadow:0 9px 20px rgba(182,23,87,.22);transition:transform .2s ease,box-shadow .2s ease}
.home-search-field button:hover,.home-search-field button:focus-visible{transform:translateY(-2px);box-shadow:0 13px 25px rgba(182,23,87,.3)}
.home-search-quick{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:8px 3px 0;color:#7a646c;font-size:.58rem}
.home-search-quick>span{font-weight:700}
.home-search-quick button{padding:5px 9px;border:1px solid rgba(169,71,34,.16);border-radius:999px;background:rgba(255,255,255,.66);color:#9d3f28;font:700 .57rem/1 Manrope,Arial,sans-serif;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}
.home-search-quick button:hover,.home-search-quick button:focus-visible{transform:translateY(-1px);background:#fff0e7;color:#7c2d1a}
.home-search-results{position:absolute;left:0;right:0;top:calc(100% + 10px);z-index:30;padding:8px;border:1px solid rgba(83,36,52,.15);border-radius:18px;background:rgba(255,255,255,.98);box-shadow:0 22px 54px rgba(55,20,34,.2);backdrop-filter:blur(16px)}
.home-search-results[hidden]{display:none}
.home-search-results>a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 13px;border-radius:12px;color:#351923;transition:background .2s ease,transform .2s ease}
.home-search-results>a:hover,.home-search-results>a:focus-visible{background:linear-gradient(100deg,#fff0f5,#fff2e7);transform:translateX(2px);outline:0}
.home-search-results>a+ a{border-top:1px solid rgba(83,36,52,.08)}
.home-search-results a span{display:grid;gap:3px}.home-search-results a strong{font-size:.72rem}.home-search-results a small{color:#7a646c;font-size:.58rem}.home-search-results a b{color:var(--aya-rose);font-size:1rem}
.home-search-empty{margin:0;padding:14px;color:#705d64;font-size:.68rem;line-height:1.6}.home-search-empty a{color:var(--aya-rose);font-weight:800}
.hero-explore-link{display:inline-flex;align-items:center;gap:8px;margin-top:10px;color:#8f164b;font-size:.62rem;font-weight:800;letter-spacing:.035em}
.hero-explore-link span{animation:heroExplore 1.7s ease-in-out infinite}
@keyframes heroExplore{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
.home-hero,.home-hero .hero-frame{overflow:visible}

@media(min-width:1181px){
  main{padding-top:92px!important}
  header.topbar{height:92px!important;padding:28px 32px 0!important}
  .home-header-brand img{width:108px;height:48px}
  .desktop-nav{gap:21px;margin-right:24px}
  .desktop-nav a{font-size:.68rem;font-weight:600;color:#75666b}
  header.topbar>.nav-cta{padding:10px 17px!important;font-size:.68rem!important}
  .aya-global-partners.partner-strip--home{padding-block:8px}
  .aya-global-partners.partner-strip--home .partner-label{font-size:.5rem}
  .aya-global-partners.partner-strip--home .partner-logos a{height:40px;padding-block:5px}
  .aya-global-partners.partner-strip--home .partner-logos img{max-height:24px}
  .home-hero{padding:20px 40px 23px}
  .hero-frame{grid-template-columns:185px 2px 1fr;gap:27px;width:min(1000px,100%);padding:24px 31px}
  .home-logo{width:180px}
  .home-hero .rule{height:124px}
  .hero-title{font-size:clamp(1.7rem,2.55vw,2.35rem)}
  .home-hero p.lede{font-size:.86rem}
  .choice-zone{padding-top:21px}
  .choice-heading{margin-bottom:17px;padding-bottom:14px}
  .choice-heading h2{font-size:clamp(1.7rem,2.7vw,2.25rem)}
}
@media(max-width:760px){
  .home-service-search{margin-top:15px}
  .choice-zone>.home-service-search{width:calc(100% - 32px);margin:0 16px 24px;padding:15px 14px 13px;border-radius:20px}
  .home-service-search>label{text-align:left;font-size:.56rem}
  .home-search-field{grid-template-columns:20px minmax(0,1fr);padding:7px 12px;border-radius:15px}
  .home-search-field>svg{width:19px;height:19px}
  .home-search-field input{height:39px;font-size:.75rem}
  .home-search-field button{grid-column:1/-1;width:100%;min-height:39px}
  .home-search-quick{justify-content:center}.home-search-quick>span{width:100%;text-align:center}
  .home-search-results{top:calc(100% + 8px)}
  .hero-explore-link{margin-top:9px}
}
@media(prefers-reduced-motion:reduce){.hero-explore-link span{animation:none}}
