/* Copie légère de /assets/phare-appel.css (commentaires retirés) — tools/prod-css-purge.mjs — source-sha1:ccaf47a3d49b620fb10e7d54c010a842a617a4d8 — ne pas éditer, relancer l'outil. */
.ap-bande{padding-block: var(--e-respire, clamp(56px, 5.6vw, 108px)); overflow-x: clip;}
.ap-cadre{--ap-nuit: #0B0D10;
    --ap-encre: #0A0A0A;
    --ap-doux: #5F5F5F;
    --ap-rayon: 28px;
    --ap-rayon-encoche: 22px;
    --ap-marge: clamp(20px, 3.2vw, 48px);
    --ap-e: cubic-bezier(0.22, 0.68, 0.24, 1);
    
    --ap-fleche: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M204,64V168a12,12,0,0,1-24,0V93L72.49,200.49a12,12,0,0,1-17-17L163,76H88a12,12,0,0,1,0-24H192A12,12,0,0,1,204,64Z'/%3E%3C/svg%3E");
    
    --ap-fond: var(--rs-fond, var(--e-papier, #FFFFFF));

    
    --ap-ondes: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 600' preserveAspectRatio='xMidYMid slice'%3E%3Cg fill='none' stroke='white' stroke-opacity='.16' vector-effect='non-scaling-stroke'%3E%3Cpath vector-effect='non-scaling-stroke' d='M-40 4C260-106 540 114 820 14S1160-116 1240-46'/%3E%3Cpath vector-effect='non-scaling-stroke' d='M-40 80C260-30 540 190 820 90S1160-40 1240 30'/%3E%3Cpath vector-effect='non-scaling-stroke' d='M-40 156C260 46 540 266 820 166S1160 36 1240 106'/%3E%3Cpath vector-effect='non-scaling-stroke' d='M-40 232C260 122 540 342 820 242S1160 112 1240 182'/%3E%3Cpath vector-effect='non-scaling-stroke' d='M-40 308C260 198 540 418 820 318S1160 188 1240 258'/%3E%3Cpath vector-effect='non-scaling-stroke' d='M-40 384C260 274 540 494 820 394S1160 264 1240 334'/%3E%3Cpath vector-effect='non-scaling-stroke' d='M-40 460C260 350 540 570 820 470S1160 340 1240 410'/%3E%3Cpath vector-effect='non-scaling-stroke' d='M-40 536C260 426 540 646 820 546S1160 416 1240 486'/%3E%3Cpath vector-effect='non-scaling-stroke' d='M-40 612C260 502 540 722 820 622S1160 492 1240 562'/%3E%3C/g%3E%3C/svg%3E");
    
    --ap-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23g)'/%3E%3C/svg%3E");

    position: relative;
    margin-inline: auto;
    text-align: left;}
.epure-gris > .ap-cadre{--ap-fond: var(--e-papier-gris, #EFEFF3);}
.ap-cadre:not(.ap-cadre--dedans) > .ap-encoche{position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    gap: clamp(4px, 0.4vw, 6px);
    margin: 0;
    padding: clamp(10px, 0.9vw, 14px) clamp(24px, 2.4vw, 36px) clamp(16px, 1.5vw, 22px) clamp(14px, 1.3vw, 22px);
    border-bottom-right-radius: var(--ap-rayon-encoche);
    background: var(--ap-fond);
    color: var(--ap-encre);}
.ap-cadre:not(.ap-cadre--dedans) > .ap-encoche::before,.ap-cadre:not(.ap-cadre--dedans) > .ap-encoche::after{content: "";
    position: absolute;
    width: var(--ap-rayon-encoche);
    height: var(--ap-rayon-encoche);
    
    background: radial-gradient(circle at 100% 100%, transparent calc(var(--ap-rayon-encoche) - 0.5px), var(--ap-fond) var(--ap-rayon-encoche));}
.ap-cadre:not(.ap-cadre--dedans) > .ap-encoche::before{top: 0; left: calc(100% - 1px);}
.ap-cadre:not(.ap-cadre--dedans) > .ap-encoche::after{top: calc(100% - 1px); left: 0;}
.ap-cadre.est-decoupe > .ap{z-index: 1;
    box-shadow: none;
    -webkit-mask: var(--ap-masque) 0 0 / 100% 100% no-repeat;
            mask: var(--ap-masque) 0 0 / 100% 100% no-repeat;}
.ap-cadre.est-decoupe > .ap-encoche{background: transparent;}
.ap-cadre.est-decoupe > .ap-encoche::before,.ap-cadre.est-decoupe > .ap-encoche::after{display: none;}
.ap-cadre.est-decoupe::before{content: "";
    position: absolute;
    z-index: 0;
    inset: calc(-1 * var(--ap-ombre-marge, 150px));
    background: var(--ap-ombre) 0 0 / 100% 100% no-repeat;
    pointer-events: none;}
.ap-encoche-v{display: block;
    font-family: var(--font-nav);
    font-size: clamp(32px, 2.8vw, 44px);
    font-weight: 500;
    line-height: 0.9;
    letter-spacing: -0.045em;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;}
.ap-encoche-v :is(i, small){font-size: 0.6em;
    font-style: normal;
    font-weight: 500;
    letter-spacing: -0.02em;
    color: var(--ap-doux);}
.ap-encoche-l{font-family: var(--font-nav);
    font-size: clamp(15px, 1.25vw, 19px);
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -0.018em;
    color: #3A3A3A;
    white-space: nowrap;}
.ap-cadre--dedans > .ap-encoche{position: absolute;
    z-index: 3;
    top: clamp(24px, 2.6vw, 38px);
    left: var(--ap-marge);
    display: flex;
    flex-direction: column;
    gap: clamp(5px, 0.5vw, 7px);
    margin: 0;
    color: #FFFFFF;
    pointer-events: none;}
.ap-cadre--dedans .ap-encoche-v :is(i, small),.ap-cadre--dedans .ap-encoche-l{color: rgba(255, 255, 255, 0.66);}
.ap{container: ap / inline-size;
    position: relative;
    isolation: isolate;
    overflow: clip;
    display: grid;
    grid-template-rows: 1fr auto;
    border-radius: var(--ap-rayon);
    
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 2px 4px rgba(10, 10, 10, 0.08),
        0 34px 68px -34px rgba(10, 10, 10, 0.5),
        0 50px 90px -50px rgba(123, 45, 59, 0.5);
    background-color: var(--ap-nuit);
    background-image:
        radial-gradient(60% 95% at 92% 112%, rgba(123, 45, 59, 0.9), transparent 62%),
        radial-gradient(42% 60% at 6% -10%, rgba(232, 96, 122, 0.26), transparent 64%);
    color: #FFFFFF;}
.ap::before{content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image: var(--ap-grain);
    background-size: 160px;
    opacity: 0.2;
    mix-blend-mode: overlay;
    pointer-events: none;}
.ap-ondes{position: absolute;
    inset: 0;
    z-index: -1;
    background-image: var(--ap-ondes);
    background-size: cover;
    background-position: center;
    -webkit-mask-image: radial-gradient(ellipse 44% 30% at 50% 38%, rgba(0, 0, 0, 0.25), #000 100%);
            mask-image: radial-gradient(ellipse 44% 30% at 50% 38%, rgba(0, 0, 0, 0.25), #000 100%);
    pointer-events: none;}
.ap-corps{display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: clamp(118px, 10.5vw, 160px) var(--ap-marge) clamp(56px, 6vw, 96px);
    text-align: center;}
.ap .ap-t{max-width: 13ch;
    margin: 0;
    font-family: var(--font-nav);
    font-size: clamp(36px, 5.2vw, 84px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -0.05em;
    color: #FFFFFF;
    text-wrap: balance;}
.ap .ap-s{max-width: 46ch;
    margin: clamp(16px, 1.6vw, 22px) 0 0;
    font-family: var(--font-nav);
    font-size: clamp(15px, 1.15vw, 18px);
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.72);
    text-wrap: pretty;}
.ap-actions{display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-top: clamp(28px, 3vw, 42px);}
.ap .ap-btn{position: relative;
    isolation: isolate;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    height: 56px;
    border-radius: 999px;
    font-family: var(--font-nav);
    font-size: 15.5px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.012em;
    text-decoration: none;
    white-space: nowrap;
    transition: translate .2s var(--ap-e), box-shadow .25s var(--ap-e), background-color .25s var(--ap-e);}
.ap .ap-btn:hover{translate: 0 -1px;}
.ap .ap-btn:active{translate: 0 0; transition-duration: .06s;}
.ap .ap-btn--plein{padding: 0 8px 0 26px;
    background: #FFFFFF;
    color: var(--ap-encre);
    box-shadow:
        inset 0 -1px 0 rgba(10, 10, 10, 0.08),
        0 14px 32px -16px rgba(0, 0, 0, 0.9);}
.ap .ap-btn--plein:hover{box-shadow:
        inset 0 -1px 0 rgba(10, 10, 10, 0.08),
        0 18px 38px -14px rgba(0, 0, 0, 0.95),
        0 10px 40px -18px rgba(232, 96, 122, 0.45);}
.ap .ap-btn--verre{padding: 0 26px 0 8px; color: #FFFFFF;}
.ap-btn-ico{position: relative;
    display: block;
    flex: none;
    width: 40px;
    height: 40px;
    overflow: clip;
    border-radius: 50%;}
.ap-fleche{background: var(--ap-encre); color: #FFFFFF;}
.ap-fleche::before,.ap-fleche::after{content: "";
    position: absolute;
    inset: 0;
    width: 16px;
    height: 16px;
    margin: auto;
    background: currentColor;
    -webkit-mask: var(--ap-fleche) center / contain no-repeat;
            mask: var(--ap-fleche) center / contain no-repeat;
    transition: translate .5s var(--ap-e);}
.ap-fleche::after{translate: -26px 26px;}
.ap-btn:is(:hover, :focus-visible) .ap-fleche::before{translate: 26px -26px;}
.ap-btn:is(:hover, :focus-visible) .ap-fleche::after{translate: 0 0;}
.ap-combine{background: rgba(255, 255, 255, 0.12);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.28), inset 0 0 0 1px rgba(255, 255, 255, 0.08);}
.ap-combine::before{content: "";
    position: absolute;
    inset: 0;
    width: 18px;
    height: 18px;
    margin: auto;
    background: #FFFFFF;
    -webkit-mask: var(--i-telephone) center / contain no-repeat;
            mask: var(--i-telephone) center / contain no-repeat;
    transition: rotate .45s var(--ap-e);}
.ap-btn:is(:hover, :focus-visible) .ap-combine::before{rotate: -14deg;}
.ap-num{font-variant-numeric: tabular-nums; letter-spacing: 0.005em;}
.ap-pied{--ap-gouttiere: clamp(56px, 7vw, 110px);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 0 calc(var(--ap-gouttiere) + clamp(16px, 1.6vw, 24px)) 0 var(--ap-marge);
    border-top: 1px solid rgba(255, 255, 255, 0.2);}
.ap .ap-pied-t{margin: 0;
    padding: 20px 0;
    font-family: var(--font-nav);
    font-size: 12.5px;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.66);}
.ap .ap-pied-liens{display: flex;
    flex: none;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 14px 0;}
.ap-pied::before{content: "";
    position: absolute;
    top: -2000px;
    bottom: 0;
    right: var(--ap-gouttiere);
    width: 1px;
    background: rgba(255, 255, 255, 0.2);
    pointer-events: none;}
.ap-pied::after{content: "";
    position: absolute;
    top: -4px;
    right: calc(var(--ap-gouttiere) - 3px);
    width: 7px;
    height: 7px;
    background: #FFFFFF;
    pointer-events: none;}
.ap .ap-pill{position: relative;
    isolation: isolate;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 38px;
    padding: 0 16px 0 12px;
    border-radius: 999px;
    font-family: var(--font-nav);
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -0.008em;
    color: #FFFFFF;
    text-decoration: none;
    white-space: nowrap;}
.ap .ap-pill:hover{translate: 0 -1px;}
.ap-ico{flex: none;
    width: 15px;
    height: 15px;
    background: currentColor;
    opacity: 0.72;
    -webkit-mask: var(--ico) center / contain no-repeat;
            mask: var(--ico) center / contain no-repeat;
    transition: opacity .2s var(--ap-e);}
.ap-pill:is(:hover, :focus-visible) .ap-ico{opacity: 1;}
.ap-ico--question{--ico: var(--i-enveloppe);}
.ap-ico--cabinet{--ico: var(--i-mallette);}
.ap :is(.ap-btn, .ap-pill):focus-visible{outline: 2px solid #FFFFFF; outline-offset: 3px;}
.ap-verre{--ap-teinte: saturate(1.8) brightness(1.12);
    background-color: rgba(255, 255, 255, 0.07);
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0) 62%);
    -webkit-backdrop-filter: blur(14px) var(--ap-teinte);
            backdrop-filter: blur(14px) var(--ap-teinte);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.42),
        inset 0 -1px 0 rgba(255, 255, 255, 0.1),
        inset 0 -12px 20px -14px rgba(255, 255, 255, 0.3),
        0 12px 30px -16px rgba(0, 0, 0, 0.9);
    transition: translate .2s var(--ap-e), background-color .25s var(--ap-e);}
.ap-verre::before{content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    padding: 1px;
    border-radius: inherit;
    background: linear-gradient(128deg,
        rgba(255, 255, 255, 0.78) 0%,
        rgba(255, 255, 255, 0.14) 30%,
        rgba(255, 255, 255, 0.04) 58%,
        rgba(255, 255, 255, 0.42) 100%);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
    pointer-events: none;}
.ap-verre:is(:hover, :focus-visible){background-color: rgba(255, 255, 255, 0.14);}
.ap-pill.ap-verre{--ap-teinte: saturate(0.55) brightness(1.04);
    background-color: rgba(255, 255, 255, 0.1);}
.ap-pill.ap-verre:is(:hover, :focus-visible){background-color: rgba(255, 255, 255, 0.17);}
@media (prefers-reduced-transparency: reduce){
.ap-verre{-webkit-backdrop-filter: none;
                backdrop-filter: none;
        background-color: #24262B;}
}
@container ap (max-width: 720px){
.ap-pied{flex-direction: column;
        align-items: flex-start;
        gap: 0;
        padding: 0 var(--ap-marge);}
.ap .ap-pied-t{padding: 18px 0 4px;}
.ap .ap-pied-liens{padding: 10px 0 20px;}
.ap-pied::before{display: none;}
.ap-pied::after{right: auto; left: calc(var(--ap-marge) - 3px);}
}
@container ap (max-width: 560px){
.ap-actions{gap: 10px;}
.ap .ap-btn{height: 52px;}
.ap .ap-btn--plein{gap: 12px; padding: 0 6px 0 22px; font-size: 15px;}
.ap .ap-btn--verre{width: 52px; padding: 0; justify-content: center;}
.ap .ap-btn--verre .ap-combine{width: 52px; height: 52px; background: none; box-shadow: none;}
.ap .ap-btn--verre .ap-combine::before{width: 20px; height: 20px;}
.ap .ap-btn--verre .ap-num{position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;}
}
@container ap (max-width: 340px){
.ap-actions{gap: 8px;}
.ap .ap-btn{height: 48px;}
.ap .ap-btn--plein{gap: 10px; padding: 0 6px 0 18px; font-size: 14.5px;}
.ap .ap-btn--plein .ap-fleche{width: 36px; height: 36px;}
.ap .ap-btn--verre,.ap .ap-btn--verre .ap-combine{width: 48px; height: 48px;}
}
@media (prefers-reduced-motion: reduce){
.ap-fleche::before,.ap-fleche::after,.ap-combine::before{transition: none;}
}
