/* articles « Idées et conseils » */
.art{max-width:760px;margin:0 auto;padding:30px 18px 20px}
.art h1{font-size:clamp(36px,6vw,64px);text-align:left;margin:20px 0 14px;max-width:none}
.art .chapo{font-size:20px;color:var(--ink2)}
.art h2{font-size:clamp(26px,3.6vw,38px);margin:42px 0 12px;scroll-margin-top:90px}
.art h3{font-size:22px;margin:26px 0 10px}
.art p{font-size:18px}
.art .intro{color:var(--ink2);margin:0 0 14px}
.art ul.msgs{padding:0;list-style:none;display:grid;gap:10px;margin:0}
.art ul.msgs li{padding:16px 20px;border-radius:22px;font-size:18px;position:relative}
.art ol,.art ul:not(.msgs){font-size:18px;color:var(--ink2)}
.art figure{margin:28px 0;border-radius:26px;overflow:hidden}
.art figure a{display:block}
.art figure img{width:100%;height:auto;display:block;border-radius:26px;box-shadow:0 24px 50px -24px rgba(40,40,110,.55);transition:transform .3s cubic-bezier(.3,1.9,.5,1)}
.art figure a:hover img{transform:scale(1.015)}
.art figcaption{font-size:14px;color:var(--mute);text-align:center;margin-top:10px}
.art table{width:100%;border-collapse:collapse;font-size:16px;margin:10px 0 20px;border-radius:18px;overflow:hidden}
.art th,.art td{padding:10px 12px;text-align:left;border-bottom:1px solid rgba(22,23,43,.08)}
.art th{background:rgba(255,255,255,.7);font-weight:800}
.art td{background:rgba(255,255,255,.45)}
.sommaire{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;padding:14px 18px;border-radius:22px;margin:22px 0 6px;font-size:15px}
.sommaire b{width:100%;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--mute)}
.sommaire a{color:var(--gum-violet,#7B5CF0);font-weight:700;text-decoration:none}
.conseil,.vraie{padding:20px 22px;border-radius:24px;margin:28px 0}
.conseil b,.vraie b{display:block;font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--mute);margin-bottom:4px}
.conseil p,.vraie p{margin:0 0 6px}
.vraie .btn{margin-top:10px}
.art details{padding:16px 20px;border-radius:22px;margin:10px 0}
.art details summary{font-weight:800;cursor:pointer;font-size:18px}
.art details p{margin:10px 0 0;color:var(--ink2)}
.essai{margin:44px 0 10px;border-radius:34px;padding:26px;text-align:center}
.essai .field{max-width:520px;margin:14px auto}
.retour{display:inline-block;margin-top:6px;font-weight:700;color:var(--gum-violet,#7B5CF0);text-decoration:none}
.liees{margin:40px 0 10px}
.liees h2{font-size:26px;margin:0 0 12px}
.liees a{display:block;padding:16px 20px;border-radius:22px;margin:8px 0;font-weight:800;color:var(--ink);text-decoration:none}
.liees a:after{content:" →";color:var(--mute)}
/* page « Toutes les idées » */
.idees-liste{max-width:1100px;margin:0 auto;padding:30px 18px}
.idees-liste h1{text-align:center}
.idees-cat{margin:34px 0 10px}
.idees-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.idees-grille a{display:flex;gap:12px;align-items:center;padding:12px;border-radius:22px;text-decoration:none;color:var(--ink);font-weight:800;font-size:16px;line-height:1.25}
.idees-grille img{width:56px;height:70px;object-fit:cover;border-radius:12px;flex:none}
/* pages « Cartes par occasion » */
.art.occ{max-width:980px}
.art.occ>p,.art.occ>.chapo,.art.occ>ul.msgs,.art.occ>details,.art.occ>.liees,.art.occ>h2{max-width:760px}
.essai-haut{margin:26px 0 8px;max-width:760px}
.essai-haut .aide{font-size:15px;color:var(--mute);margin:10px 0 0}
.occ-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin:6px 0 10px}
.occ-carte{position:relative;display:block;border-radius:20px;overflow:hidden;text-decoration:none;box-shadow:0 18px 36px -20px rgba(40,40,110,.55);transition:transform .3s cubic-bezier(.3,1.9,.5,1)}
.occ-carte img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block}
.occ-carte span{position:absolute;left:8px;bottom:8px;padding:4px 10px;border-radius:99px;background:rgba(255,255,255,.82);backdrop-filter:blur(6px);font-size:12px;font-weight:800;color:var(--ink)}
.occ-carte:hover{transform:translateY(-4px) rotate(-1deg)}
@media (max-width:520px){.occ-grille{grid-template-columns:repeat(2,1fr);gap:10px}}
