/* Noyer chaleureux / mode clair distinct, sans police ou texture distante. */
body{--paper:#281e18;--panel:#35281f;--ink:#f5e9d5;--green:#edc487;--muted:#c9b7a1;--line:#604a37;--wood:#dfb078;--soft:#413124;background:repeating-linear-gradient(92deg,#ffffff02 0 1px,transparent 1px 9px),linear-gradient(110deg,#302117,#211b17);color:var(--ink)}
html[data-theme=light] body{--paper:#fff;--panel:#fff;--ink:#292a2c;--green:#355c4a;--muted:#60666b;--line:#dce1e5;--wood:#79543a;--soft:#f0f3f5;background:#f7f9fb;color:var(--ink)}
.site-header{background:var(--paper)}.topline{background:#1b1410;color:#e1c8a5}.hero-intro,.benefits{color:var(--muted)}.hero h1{letter-spacing:-.05em}.hero-picture{border:1px solid #967049;box-shadow:14px 14px 0 #a6743b20}.button{background:#b77c42;color:#fff!important}.button:hover{background:#925b2f}.button-outline{background:transparent;color:var(--ink)!important;border-color:var(--line)}.button-outline:hover{background:var(--soft)}.button-cream{background:#efdbb7;color:#33251c!important}.button-cream:hover{background:#fff0d7}.path-card:nth-child(2){background:var(--soft);border-color:var(--line)}.piece{color:var(--wood)}.journal-section,.youtube-strip{background:var(--soft)}.article-card,.path-card,.resource-card,.form-panel{box-shadow:0 12px 28px #00000012}.site-footer{background:#1e1712;color:#f5e9d5;border-color:#aa784b}.footer-about>p,.footer-links>a,.footer-bottom,.footer-about p.business{color:#cebaa3}.site-footer .brand img{border-color:#785b43}.footer-cookie{background:none;color:inherit;text-align:left;padding:5px 0;font-size:.8rem;text-decoration:underline}.compact label{color:#ead8c0}.compact .form-note{color:#c7b49e}.compact input,.compact textarea{border-color:#8d725c}.card-image{background:var(--soft)}.tag{color:var(--ink)}.notice{background:var(--soft);color:var(--ink)}
html[data-theme=light] .topline{background:#35483e}html[data-theme=light] .button{background:#355c4a}html[data-theme=light] .button-outline{background:transparent;color:#355c4a!important}html[data-theme=light] .site-footer{background:#283a31}.theme-toggle{min-height:44px}.nav-wrap nav>a[aria-current]{color:var(--green)}
.partners{padding-block:48px 60px}.partners-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}.partners-heading h2{font-size:2rem}.partners-heading p{font-size:.82rem;color:var(--muted);max-width:440px}.partner-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ad-card{border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#392416;box-shadow:0 15px 35px #0002}.ad-label{display:flex;justify-content:space-between;padding:9px 14px;background:var(--panel);color:var(--muted);font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.ad-link{display:block;color:#f8ead8!important}.ad-media{display:block;position:relative;overflow:hidden;background:#1e120d}.ad-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 22%,#ffffff30 46%,transparent 68%);transform:translateX(-135%);transition:transform .85s cubic-bezier(.2,.75,.25,1)}.ad-link:hover .ad-media:after,.ad-link:focus-visible .ad-media:after{transform:translateX(135%)}.ad-media img{width:100%;height:auto;transition:filter .3s}.ad-link:hover img{filter:brightness(1.03) saturate(1.03)}.ad-link:active{transform:scale(.99)}.ad-caption{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px;background:linear-gradient(120deg,#3b2114,#6d3a20)}.ad-caption strong{font:1.2rem Georgia,serif}.ad-caption small{display:block;font-size:.75rem;margin-top:7px;color:#ead3ba}.ad-cta{border:1px solid #d6b48d;border-radius:8px;padding:9px 12px;white-space:nowrap;font-size:.75rem;transition:transform .2s}.ad-link:hover .ad-cta{transform:translateX(2px);background:#fff2}
.newsletter{border-block:1px solid var(--line);background:var(--soft);padding:48px 0}.newsletter-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.newsletter h2{font-size:2.3rem}.newsletter p{color:var(--muted)}.newsletter label{line-height:1.5}.newsletter input[type=checkbox]{width:18px;height:18px;vertical-align:middle}.newsletter .form-note{margin:12px 0;font-size:.77rem}.newsletter input[type=email]{margin-bottom:12px}.newsletter-status{margin-top:12px;font-size:.85rem}
dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:30px;max-width:560px;width:calc(100% - 32px);max-height:85dvh;overflow:auto;box-shadow:0 30px 90px #0007}dialog::backdrop{background:#120d09aa}dialog h2{font-size:2rem}.dialog-close{float:right;border:1px solid var(--line);background:var(--soft);border-radius:50%;width:38px;height:38px;font-size:1.4rem}.cookie-banner{position:fixed;z-index:60;bottom:16px;left:50%;transform:translateX(-50%);width:calc(100% - 32px);max-width:950px;padding:20px 24px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 60px #0006}.cookie-banner p{font-size:.84rem;margin:5px 0 14px}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-actions button{flex:1;min-width:130px;background:var(--soft);color:var(--ink);border:1px solid var(--line);padding:10px;border-radius:7px;font-size:.82rem}.cookie-row{border-block:1px solid var(--line);padding:16px 0;margin-top:-1px}.cookie-row p{font-size:.82rem;color:var(--muted);margin:6px 0}.cookie-row input{width:18px;height:18px;margin:0 10px 0 0}.cookie-save{margin-top:20px}.promo-art{width:100%;border-radius:10px;margin-block:20px}.promo-actions{display:flex;gap:12px;flex-wrap:wrap}.promo-actions button{background:var(--soft);color:var(--ink);border:1px solid var(--line);padding:12px 18px;border-radius:6px}.affiliate-note{font-size:.75rem;color:var(--muted)}[hidden]{display:none!important}.youtube-embed a{display:block;margin-top:16px;font-size:.85rem}
@media(max-width:850px){.newsletter-inner{gap:30px}.ad-caption{display:block}.ad-cta{display:inline-block;margin-top:15px}.partners-heading{display:block}}
@media(max-width:600px){.partner-grid,.newsletter-inner{grid-template-columns:1fr}.partners{padding-block:35px}.partners-heading h2{font-size:1.8rem}.ad-caption{padding:15px}.ad-cta{width:100%;text-align:center}.newsletter{padding:35px 0}.cookie-banner{padding:16px;bottom:8px}.cookie-actions{gap:8px}.cookie-actions button{min-width:95px}dialog{padding:22px}.hero-picture{height:300px}.topline{font-size:.62rem}.site-footer a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.ad-media:after{display:none}.ad-link:active{transform:none}}

.admin-body{--paper:#faf8f3;--panel:#fffdf9;--ink:#242d28;--green:#214c3d;--muted:#6a7169;--line:#e2dfd5;--wood:#936747;--soft:#f0ebe0;background:var(--paper);color:var(--ink)}
.partners{padding-block:28px 38px}.partners-nested{width:100%;margin:0 0 28px;padding-top:0}.partners-heading{margin-bottom:16px}.partners-heading h2{font-size:1.8rem}.partners-heading .eyebrow{margin-bottom:8px}.partners>.affiliate-note{margin:14px 0 0}
#chess-promo{padding:0;width:calc(100% - 32px);max-width:520px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);margin:auto;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
#chess-promo .promo-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px}
#chess-promo .promo-heading .eyebrow{margin:0;font-size:.65rem;line-height:1.4}
#chess-promo .dialog-close{float:none;flex:0 0 38px;line-height:1;display:grid;place-items:center}
#chess-promo>.ad-link{margin:0 20px;border-radius:10px;overflow:hidden}
#chess-promo .ad-media{background:transparent}
#chess-promo .promo-art{display:block;width:100%;height:auto;margin:0;border-radius:0;object-fit:contain}
#chess-promo .promo-copy{padding:22px 24px 24px}
#chess-promo h2{font-size:clamp(1.6rem,4vw,2rem);line-height:1.15;margin:0 0 12px;text-wrap:balance}
#chess-promo .promo-copy>p:not(.affiliate-note){font-size:.95rem;line-height:1.6;margin:0 0 20px;color:var(--muted)}
#chess-promo .promo-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#chess-promo .promo-actions>*{min-height:46px;padding:11px 12px;font-size:.82rem;line-height:1.4;text-align:center}
#chess-promo .affiliate-note{font-size:.7rem;line-height:1.55;margin:16px 0 0}
@media(max-width:480px){#chess-promo .promo-heading{padding:10px 14px}#chess-promo>.ad-link{margin-inline:14px}#chess-promo .promo-copy{padding:18px}#chess-promo .promo-actions{grid-template-columns:1fr}#chess-promo .affiliate-note{margin-top:12px}.partners-heading h2{font-size:1.6rem}}
