
.c-open{padding-block:calc(78px + clamp(56px,7vw,110px)) clamp(88px,10vw,150px)}
.c-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(48px,6vw,104px);align-items:center}
.c-grid h1{font-size:clamp(46px,6vw,92px);line-height:.96;margin:26px 0 30px;max-width:13ch}
.c-grid h1 em{display:block;color:var(--acc)}
.c-foot,.foot-note{color:rgba(236,238,240,.7)}
.c-grid p{max-width:56ch}
.c-grid p+p{margin-top:18px}
.c-grid .ctas{display:flex;flex-wrap:wrap;gap:16px;margin-top:38px}
.sig{margin-top:26px;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-3)}
.collage{position:relative;height:clamp(400px,42vw,580px)}
.collage figure{position:absolute;margin:0;background:var(--panel);padding:8px;box-shadow:0 34px 60px -30px rgba(28,32,36,.45);animation:bob 9s ease-in-out infinite alternate}
.collage img{width:100%;height:100%;object-fit:cover}
.collage .a{left:2%;top:0;width:44%;aspect-ratio:3/4;transform:rotate(-2.5deg)}
.collage .b{right:0;top:9%;width:54%;aspect-ratio:4/3;transform:rotate(2deg);animation-delay:-3s}
.collage .c{right:14%;bottom:0;width:48%;aspect-ratio:4/3;transform:rotate(-1deg);animation-delay:-6s}
.stamp{position:absolute;left:0;bottom:4%;z-index:3;width:132px;height:132px;border-radius:50%;display:grid;place-items:center;text-align:center;background:var(--acc-2);color:#fff;font-family:var(--head);font-weight:500;font-size:20px;text-transform:uppercase;letter-spacing:.04em;line-height:1.15;transform:rotate(-10deg);box-shadow:0 0 0 6px #fff,0 0 0 7px var(--acc-hi)}
@media (max-width:960px){.c-grid{grid-template-columns:1fr}.collage{height:clamp(340px,92vw,480px)}}
.marks5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin-top:40px}
.marks5 div{border-left:1px solid var(--line-dark);padding-left:20px}
.marks5 b{display:block;font-family:var(--head);font-weight:500;font-size:clamp(38px,3.6vw,54px);line-height:1;color:var(--acc-hi)}
.marks5 span{display:block;font-size:14px;margin-top:10px;line-height:1.45}
.marks5 b span{display:inline;font-size:inherit;margin:0;line-height:inherit}
.dark .note{margin-top:40px;max-width:70ch}
@media (max-width:960px){.marks5{grid-template-columns:repeat(3,1fr);row-gap:32px}}
@media (max-width:540px){.marks5{grid-template-columns:repeat(2,1fr)}}
.offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,30px);align-items:stretch}
.offer{position:relative;background:var(--panel);border:1px solid var(--line);padding:clamp(40px,4vw,56px) clamp(26px,2.6vw,38px) clamp(28px,3vw,38px);display:flex;flex-direction:column;gap:18px;overflow:hidden;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.offer:hover{transform:translateY(-8px);box-shadow:0 36px 64px -34px rgba(28,32,36,.45)}
.offer .ghostn{position:absolute;right:20px;top:-12px;font-family:var(--head);font-size:140px;line-height:1;color:rgba(255,153,0,.08);pointer-events:none}
.offer h3{font-size:30px;max-width:14ch}
.offer .price{font-family:var(--head);font-size:clamp(46px,4.4vw,62px);line-height:1;color:var(--ink)}
.offer .price small{font-family:var(--sans);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-left:8px}
.offer .sit{font-family:var(--head);font-style:italic;font-size:21px;line-height:1.4;color:var(--ink)}
.offer dl{display:grid;gap:14px;font-size:15.5px;line-height:1.55;flex:1}
.offer dt{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--acc);font-weight:500}
.offer dd{margin-top:3px}
.offer .remit{font-size:14px;color:var(--ink-3);padding-top:14px;border-top:1px solid var(--line)}
.offer.star{border:2px solid transparent;background:linear-gradient(var(--panel),var(--panel)) padding-box,linear-gradient(var(--ang,0deg),var(--acc),var(--acc-hi),var(--acc)) border-box;animation:spin 6s linear infinite}
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes spin{to{--ang:360deg}}
.offer .flag{position:absolute;top:16px;left:clamp(26px,2.6vw,38px);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#fff;background:var(--acc);padding:6px 10px}
.common{margin-top:36px;font-size:15.5px;color:var(--ink-3);max-width:80ch}
@media (max-width:1080px){.offers{grid-template-columns:1fr;max-width:640px}}
a.term{text-decoration:underline dotted;text-underline-offset:4px;text-decoration-color:var(--acc);color:inherit}
a.term:hover{color:var(--acc)}
.offer dt a.term{color:var(--acc)}
.tablewrap{position:relative;overflow-x:auto;border:1px solid var(--line);background:var(--panel)}
table{width:100%;border-collapse:collapse;min-width:720px;font-size:15.5px}
th,td{position:relative;padding:18px 22px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}
th:first-child,td:first-child{text-align:left}
thead th{font-family:var(--head);font-weight:500;font-size:22px;color:var(--ink);line-height:1.15}
thead th small{display:block;font-family:var(--sans);font-size:11.5px;letter-spacing:.16em;color:var(--acc);margin-top:6px}
tbody tr:last-child td{border-bottom:0}
td:nth-child(3),th:nth-child(3){background:rgba(255,153,0,.07)}
.dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--acc)}
.dash{display:inline-block;width:14px;height:1px;background:var(--ink-3);vertical-align:middle}
.vis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px)}
.vbox{border-top:1px solid var(--ink);padding-top:26px}
.vbox svg{width:40px;height:40px;stroke:var(--acc);fill:none;stroke-width:1.2;margin-bottom:18px}
.vbox h3{font-size:25px;margin-bottom:14px}
.vbox ul{list-style:none;display:grid;gap:8px;font-size:15.5px}
.vbox li{padding-left:20px;position:relative}
.vbox li::before{content:"";position:absolute;left:0;top:.75em;width:10px;height:1px;background:var(--acc)}
.reserve{margin-top:44px;padding:20px 26px;border-left:2px solid var(--acc-hi);background:var(--panel);font-size:15px;max-width:84ch}
@media (max-width:960px){.vis{grid-template-columns:1fr}}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,64px);position:relative;padding-top:40px}
.steps::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--line)}
.steps.line::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,var(--acc),var(--acc-hi));transform:scaleX(0);transform-origin:0 50%;transition:transform 2.2s var(--ease)}
.steps.line.in::after{transform:scaleX(1)}
.step{display:grid;gap:12px;align-content:start}
.step b{font-family:var(--head);font-weight:500;font-size:60px;line-height:1;color:var(--acc)}
.step h3{font-size:30px}
@media (max-width:900px){.steps{grid-template-columns:1fr}}
.qgroup+.qgroup{margin-top:clamp(56px,6vw,88px)}
.qgroup h3{margin-bottom:24px;font-size:clamp(26px,2.6vw,34px)}
.faq-list{display:grid;max-width:960px}
details{border-top:1px solid var(--line);transition:background-color .3s var(--ease)}
details:last-child{border-bottom:1px solid var(--line)}
details[open]{background:var(--panel)}
summary{cursor:pointer;list-style:none;padding:20px 10px;font-family:var(--head);font-size:23px;color:var(--ink);display:flex;justify-content:space-between;gap:20px;align-items:center}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--sans);font-size:22px;color:var(--ink-3);transition:transform .3s var(--ease)}
details[open] summary{color:var(--acc)}
details[open] summary::after{transform:rotate(45deg)}
details .ans{padding:0 10px 24px;max-width:70ch;font-size:16px;display:grid;gap:10px;animation:seq .5s var(--ease)}
details .ans .idea{font-family:var(--head);font-style:italic;font-size:21px;color:var(--ink);line-height:1.4}
details[id]{scroll-margin-top:96px}
.c-foot{font-size:15px;max-width:90ch}
.foot-note{margin-top:20px;display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;font-size:14px}
@media (prefers-reduced-motion:reduce){.collage figure,.offer.star{animation:none}}

.collage figure{border-radius:22px}
.collage .a{border-radius:999px 999px 22px 22px}
.collage figure img{border-radius:16px}
.collage .a img{border-radius:999px 999px 16px 16px}
.offer{border-radius:24px}
.offer .flag{border-radius:999px}
.offer .price{font-family:var(--head);font-weight:500}
.offer .price .cur{font-size:.42em;letter-spacing:.08em;margin-right:6px;vertical-align:.7em;color:var(--acc)}
.offer .sit{font-family:var(--sans);font-style:normal;font-size:18px}
.marks5 b{font-family:var(--head)}
.marks5 b small{font-size:.45em;margin-left:3px}
.step b{font-family:var(--head)}
details .ans .idea{font-family:var(--head);font-style:normal;font-weight:500}
summary{font-family:var(--head);font-weight:500}
thead th{font-family:var(--head)}
.tablewrap{border-radius:22px}
.reserve{border-radius:0 16px 16px 0}
.c-grid h1{font-size:clamp(46px,5.6vw,88px)}

/* identité */
.offer .price,.marks5 b,.step b{font-family:var(--head);font-weight:400}
details .ans .idea{font-family:var(--head);font-style:italic;font-weight:400}
summary{font-family:var(--head);font-weight:400}
thead th{font-family:var(--head);font-weight:400}
.stamp{font-family:var(--head);font-style:italic;text-transform:none;font-size:21px;background:var(--acc)}
.nav.solid .logo .wm{color:var(--ink)}
.offer .price{font-size:clamp(40px,3.4vw,54px);white-space:nowrap;flex-wrap:nowrap}
.offer .price small{white-space:nowrap}
@media (max-width:1180px) and (min-width:961px){.offer .price{font-size:40px}}

/* Stern : compléments */
.c-grid h1{font-weight:300}
.c-grid h1 em{font-family:var(--it);font-style:italic;color:var(--acc-t)}
.collage figure{background:#fff}
.collage .vit{width:100%;height:100%;border-radius:16px}
.collage .a .vit{border-radius:999px 999px 16px 16px}
.collage .vit img{padding:8%}
.stamp{background:var(--acc);color:var(--ink);font-family:var(--it);box-shadow:0 0 0 6px var(--steel-0),0 0 0 7px var(--acc)}
.marks5 b small{color:var(--acc)}
.offer .ghostn{font-family:var(--head);font-weight:300}
.offer .flag{background:var(--acc);color:var(--ink);font-family:var(--head);font-weight:500}
.offer dt{font-family:var(--head);font-weight:500;color:var(--acc-t)}
.offer .price .cur{color:var(--acc-t)}
.offer.star{background:linear-gradient(var(--panel),var(--panel)) padding-box,linear-gradient(var(--ang,0deg),var(--acc),var(--logo),var(--acc)) border-box}
.dot{background:var(--acc)}
.step b{color:var(--acc-t);font-weight:300}
a.term{text-decoration-color:var(--acc)}
.offer dt a.term{color:var(--acc-t)}
details[open] summary{color:var(--acc-t)}
summary{font-weight:400}
.reserve{border-left-color:var(--acc)}
.sig a{color:var(--acc-t)}
.c-foot,.foot-note{color:rgba(236,238,240,.72)}
.foot-note a{color:rgba(236,238,240,.85)}
