/* Direction : lac et brume (base) + pastels par occasion.
   Palette : brume #f2f6f7, lac #276c69, sable #e8d3a2, encre #1c2b2f. Une teinte douce par occasion. */
:root{
  --bg:#f2f6f7; --surface:#fbfdfd; --fg:#1c2b2f; --muted:#566a6e; --line:#d9e4e6;
  --accent:#276c69; --accent-fg:#ffffff; --sand:#e8d3a2; --sand-fg:#2b2312;
  --occ-bg:#dcebec; --occ-strong:#3d8a86;
  --display:"Quicksand","Nunito","Helvetica Neue",Arial,sans-serif;
  --body:"Nunito Sans","Helvetica Neue",Arial,sans-serif;
  --r:20px; color-scheme:light}
@media (prefers-color-scheme:dark){:root{
  --bg:#0f1b1e; --surface:#162529; --fg:#e6eeee; --muted:#9bb1b3; --line:#27393d;
  --accent:#86cfc9; --accent-fg:#0b1a1c; --sand:#e8d3a2; --sand-fg:#2b2312;
  --occ-bg:#1b3234; --occ-strong:#86cfc9; color-scheme:dark}}
/* Teinte par occasion (B) */
.p-couples{--occ-bg:#f7e1e3;--occ-strong:#b5586a}
.p-birthday{--occ-bg:#f7efc9;--occ-strong:#9a7b12}
.p-xmas{--occ-bg:#dcecdf;--occ-strong:#3f7a54}
.p-lastminute{--occ-bg:#dbe9f5;--occ-strong:#3a6fa0}
.p-ideas{--occ-bg:#e6e4f4;--occ-strong:#6a63a8}
.p-exp,.p-cards{--occ-bg:#e0eadf;--occ-strong:#58805a}
@media (prefers-color-scheme:dark){
 .p-couples{--occ-bg:#3a2a2e;--occ-strong:#e6a0ae}
 .p-birthday{--occ-bg:#363220;--occ-strong:#e6cf7a}
 .p-xmas{--occ-bg:#1f342a;--occ-strong:#8cd0a4}
 .p-lastminute{--occ-bg:#1f3243;--occ-strong:#8fc0ec}
 .p-ideas{--occ-bg:#2c2a42;--occ-strong:#b7b0ef}
 .p-exp,.p-cards{--occ-bg:#22352a;--occ-strong:#a0cca2}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(180deg,var(--occ-bg) 0,var(--bg) 460px) no-repeat,var(--bg);color:var(--fg);
 font:400 18px/1.75 var(--body);letter-spacing:.005em;
 padding-inline:max(20px,env(safe-area-inset-left,0px)) max(20px,env(safe-area-inset-right,0px))}
.wrap{max-width:1040px;margin:0 auto}
a{color:var(--accent);text-underline-offset:3px}
a:focus-visible,select:focus-visible{outline:3px solid var(--occ-strong);outline-offset:3px}
::selection{background:var(--occ-strong);color:#fff}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:var(--sand);color:var(--sand-fg);padding:10px 14px;border-radius:10px;z-index:5}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.top{display:flex;align-items:center;justify-content:space-between;gap:10px 28px;flex-wrap:wrap;padding-block:22px}
.logo{font:700 23px var(--display);letter-spacing:.01em;color:var(--fg);text-decoration:none}.logo b{color:var(--accent);font-weight:700}
.top nav{display:flex;gap:4px 22px;flex-wrap:wrap;font:600 15px var(--body)}
.top nav a{color:var(--fg);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
.top nav a:hover{border-bottom-color:var(--occ-strong)}.top nav a[aria-current]{border-bottom-color:var(--occ-strong)}
.lang{display:flex;gap:6px}.lang a{font:700 13px var(--body);letter-spacing:.06em;text-decoration:none;color:var(--fg);border-radius:99px;padding:6px 13px;background:var(--surface);border:1px solid var(--line)}
.lang a[aria-current]{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}
h1{font:700 clamp(34px,5.4vw,58px)/1.1 var(--display);letter-spacing:-.01em;margin:0 0 18px;text-wrap:balance;max-width:19ch}
.article h1{max-width:26ch;font-size:clamp(30px,4.4vw,46px)}
h2{font:700 clamp(24px,3vw,32px)/1.2 var(--display);margin:48px 0 12px;text-wrap:balance}
h3{font:700 21px/1.3 var(--display);margin:0}
.lede{font-size:20px;line-height:1.7;color:var(--muted);max-width:60ch;margin:0 0 28px}
.hero{padding-block:48px 24px;position:relative}
.hero::before{content:"";position:absolute;right:-6%;top:-20px;width:min(46vw,420px);aspect-ratio:1;background:var(--occ-bg);border-radius:62% 38% 55% 45%/48% 58% 42% 52%;opacity:.8;z-index:-1}
section{padding-block:16px 28px}
.finder{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:end;margin:26px 0;box-shadow:0 10px 30px -22px rgba(30,60,64,.45)}
.finder.one{grid-template-columns:minmax(210px,330px) 1fr}
label{display:grid;gap:8px;font:700 13px var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
select{font:400 17px var(--body);padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--bg);color:var(--fg);min-width:0}
.count{margin:0;font-weight:600}
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));margin:22px 0}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:12px;min-width:0}
.card[hidden]{display:none}
.card p{margin:0}.card ul{margin:0;padding-left:20px;color:var(--muted)}.card li{margin-block:2px}.card .cta{margin-top:auto;padding-top:8px}
.tag{align-self:flex-start;font:700 12px var(--body);letter-spacing:.08em;text-transform:uppercase;border-radius:99px;padding:4px 12px;background:var(--occ-bg);color:var(--fg)}
.card[data-type="experience"] .tag{background:#e0eadf}.card[data-type="multi"] .tag{background:#e6e4f4}
.card[data-type="beaute"] .tag{background:#f7e1e3}.card[data-type="culture"] .tag{background:#dbe9f5}
@media (prefers-color-scheme:dark){
 .card[data-type="experience"] .tag{background:#22352a}.card[data-type="multi"] .tag{background:#2c2a42}
 .card[data-type="beaute"] .tag{background:#3a2a2e}.card[data-type="culture"] .tag{background:#1f3243}}
.btn{display:inline-block;background:var(--sand);color:var(--sand-fg);font:700 16px var(--body);text-decoration:none;padding:13px 24px;border-radius:99px;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px -10px rgba(90,70,20,.6)}
.btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.btn.alt{background:transparent;color:var(--accent);border:2px solid var(--accent);padding:11px 22px}
.small{font-size:15px;color:var(--muted);line-height:1.6}
.guides{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(235px,1fr))}
.guide{display:grid;gap:6px;padding:22px;border-radius:var(--r);text-decoration:none;color:var(--fg);background:var(--occ-bg);border:1px solid transparent;transition:transform .15s}
.guide strong{font:700 19px/1.3 var(--display)}.guide span{color:var(--fg);opacity:.78;font-size:16px;line-height:1.5}
.guide:hover{transform:translateY(-2px)}
.g-couples{--occ-bg:#f7e1e3}.g-birthday{--occ-bg:#f7efc9}.g-xmas{--occ-bg:#dcecdf}.g-lastminute{--occ-bg:#dbe9f5}.g-ideas{--occ-bg:#e6e4f4}.g-exp,.g-cards{--occ-bg:#e0eadf}
@media (prefers-color-scheme:dark){.g-couples{--occ-bg:#3a2a2e}.g-birthday{--occ-bg:#363220}.g-xmas{--occ-bg:#1f342a}.g-lastminute{--occ-bg:#1f3243}.g-ideas{--occ-bg:#2c2a42}.g-exp,.g-cards{--occ-bg:#22352a}}
.trust{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:32px;margin-block:36px;display:grid;gap:10px}
.trust h2{margin:0}.trust p{margin:0;max-width:66ch}
.sun{justify-self:start;background:var(--sand);color:var(--sand-fg);font:700 12px var(--body);letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;border-radius:99px}
.crumbs{font-size:14px;color:var(--muted);margin-bottom:16px}.crumbs a{color:var(--muted)}
.article{padding-block:24px 32px}.article p,.article li{max-width:66ch}.article ul{padding-left:22px}
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
table{border-collapse:collapse;width:100%;min-width:620px}th,td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top}
thead th{font:700 13px var(--body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}tr:last-child>*{border-bottom:0}
.xlist{list-style:none;padding:0!important;display:grid;gap:10px;margin:14px 0}
.xp{display:grid;grid-template-columns:1fr auto auto;gap:4px 18px;padding:15px 18px;background:var(--surface);border:1px solid var(--line);border-radius:16px;max-width:none!important;align-items:baseline}
.xp[hidden]{display:none}.xr{color:var(--muted);font-size:15px}.xp-price{font-weight:700;font-variant-numeric:tabular-nums}
@media (max-width:560px){.xp{grid-template-columns:1fr auto}.xr{grid-column:1}.hero::before{opacity:.5}}
.sub{font:700 18px var(--display);margin:22px 0 6px}
.foot{border-top:1px solid var(--line);margin-top:48px;padding-block:26px 44px;color:var(--muted)}.foot p{margin:6px 0}
.root{padding-block:15vh}.langlist{list-style:none;padding:0;display:flex;gap:14px;flex-wrap:wrap}.langlist a{display:block;padding:14px 26px;border-radius:99px;background:var(--surface);border:1px solid var(--line);font-weight:700;text-decoration:none}
@media (prefers-reduced-motion:no-preference){
 .card,.guide,.xp{animation:rise .5s ease both}
 @keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.guide{transition:none}}
