/*
Theme Name: GeneratePress Child - Teradem
Template: generatepress
Author: Teradem
Description: Design "arcade synthwave" (violet near-black / magenta + cyan neon) pour un media gaming/creation indé.
Version: 1.0.0
*/

html:root{
  --bg:#0a0711; --bg2:#100a1d; --panel:#170f2a; --card:#150d24;
  --ink:#f3ecff; --ink-soft:#b6accf; --muted:#7f7597;
  --line:rgba(160,120,255,.14); --line-2:rgba(160,120,255,.07);
  --accent:#ff2e97; --accent-2:#2ce8de; --accent-3:#a06bff;
  --display:'Chakra Petch',system-ui,sans-serif; --body:'Rubik',system-ui,sans-serif; --mono:'Space Mono',ui-monospace,monospace; --pixel:'Press Start 2P',var(--display);
  --wrap:1200px;
}

/* ---------- base ---------- */
html{scroll-behavior:smooth;overflow-x:clip}
body{background:var(--bg)!important;color:var(--ink)!important;font-family:var(--body)!important;font-size:18px;line-height:1.62;-webkit-font-smoothing:antialiased}
/* scanlines CRT + subtle noise */
body::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.5;
  background:repeating-linear-gradient(0deg,rgba(0,0,0,0) 0,rgba(0,0,0,0) 2px,rgba(0,0,0,.16) 3px,rgba(0,0,0,0) 4px)}
body::after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.05;mix-blend-mode:screen;
  background:radial-gradient(60% 40% at 15% 0,var(--accent),transparent 60%),radial-gradient(50% 40% at 90% 20%,var(--accent-2),transparent 60%)}
.site{position:relative;z-index:1;background:transparent!important}
a{color:var(--accent-2);text-decoration:none}
a:hover{color:var(--accent)}
h1,h2,h3,h4,h5,h6,.entry-title{font-family:var(--display)!important;font-weight:700;letter-spacing:.01em;color:var(--ink)!important;line-height:1.08}
.entry-title a{color:var(--ink)!important}.entry-title a:hover{color:var(--accent)!important}
img{height:auto;max-width:100%}
::selection{background:var(--accent);color:#0a0711}
p{color:var(--ink)}

.entry-meta,.posted-on,.byline,.cat-links,.comments-link{font-family:var(--mono)!important;font-size:12px!important;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)!important}
.entry-meta a{color:var(--muted)}.entry-meta a:hover{color:var(--accent-2)}

/* ---------- generic content area ---------- */
.separate-containers .inside-article,.one-container .site-content,.site-content,.content-area,.single .inside-article,.page .inside-article,.single .entry-content{background:transparent!important}
.entry-content{color:var(--ink)}

/* ---------- archive / blog : neon magazine grid ---------- */
.blog .site-main,.archive .site-main,.search-results .site-main{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:16px;max-width:100%}
.blog .site-main>.page-header,.archive .site-main>.page-header,.blog .site-main>.paging-navigation,.archive .site-main>.paging-navigation,.search-results .site-main>.paging-navigation{grid-column:1 / -1}
.blog article,.archive article,.search-results article{margin:0!important}
.blog .inside-article,.archive .inside-article,.search-results .inside-article{
  background:var(--card)!important;border:1px solid var(--line);padding:0!important;overflow:hidden;height:100%;min-width:0;border-radius:12px;
  display:flex;flex-direction:column;transition:transform .25s,border-color .25s,box-shadow .25s}
.blog .inside-article:hover,.archive .inside-article:hover,.search-results .inside-article:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 18px 44px rgba(255,46,151,.18)}
.blog .post-image img,.archive .post-image img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;border-bottom:1px solid var(--line)}
.blog .inside-article .entry-header,.archive .inside-article .entry-header,
.blog .inside-article .entry-summary,.archive .inside-article .entry-summary,
.blog .inside-article .entry-meta,.archive .inside-article .entry-meta,
.blog .inside-article .read-more-container,.archive .inside-article .read-more-container{padding-left:22px;padding-right:22px}
.blog .inside-article .entry-header,.archive .inside-article .entry-header{padding-top:20px}
.blog .entry-title,.archive .entry-title,.search-results .entry-title{font-size:21px;margin:8px 0 10px;overflow-wrap:break-word}
.blog .entry-summary,.archive .entry-summary{color:var(--ink-soft);font-size:15px;flex:1;overflow-wrap:break-word}
.read-more-container{padding-bottom:22px;margin-top:14px}
.read-more-container a,a.read-more{display:inline-block;font-family:var(--display);font-weight:700;font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);border-bottom:2px solid var(--accent);padding-bottom:2px}
.read-more-container a:hover{color:var(--accent)}
.page-header{border-bottom:1px solid var(--line);padding-bottom:14px}
.archive .page-title,.page-header .page-title{font-size:clamp(28px,4vw,44px)}

/* archive header banner (#23) */
.tdm-archead{position:relative;grid-column:1 / -1;border:1px solid var(--line);border-radius:14px;overflow:hidden;padding:38px 30px;margin-bottom:4px;background:var(--bg2)}
.tdm-archead .img{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.22;z-index:0}
.tdm-archead::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,var(--bg2));z-index:1}
.tdm-archead>*{position:relative;z-index:2}
.tdm-archead .k{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2)}
.tdm-archead h1{font-size:clamp(28px,4.5vw,46px);margin:8px 0 0}

/* ---------- single / page ---------- */
.single .entry-header,.page:not(.home) .entry-header{max-width:820px;margin:0 auto;padding:24px 0 6px}
.single .entry-title,.page .entry-title{font-size:clamp(30px,5vw,54px);margin:10px 0 16px;line-height:1.06}
.single .post-image,.single .featured-image{margin:26px auto;max-width:980px}
.single .post-image img{width:100%;max-height:540px;object-fit:cover;border:1px solid var(--line);border-radius:12px}
.single .entry-content,.page:not(.home) .entry-content{max-width:760px;margin:0 auto;font-family:var(--body);font-size:19px;line-height:1.8;color:#ddd6ee}
.single .entry-content p{margin:0 0 1.3em}
.single .entry-content h2{font-size:29px;margin:1.6em 0 .5em;color:var(--ink)}
.single .entry-content h3{font-size:23px;margin:1.4em 0 .4em;color:var(--ink)}
.single .entry-content a,.page .entry-content a{color:var(--accent-2);text-decoration:underline;text-underline-offset:2px}
.entry-content blockquote{border-left:3px solid var(--accent);background:var(--bg2);margin:1.6em 0;padding:.9em 1.3em;color:var(--ink);border-radius:0 10px 10px 0}
.single .entry-content img{border:1px solid var(--line);border-radius:10px}
.single .entry-meta{justify-content:center;text-align:center}

/* content contrast (legal/old pages) */
.page:not(.home) .entry-content,.single .entry-content,
.page:not(.home) .entry-content p,.single .entry-content p,
.page:not(.home) .entry-content li,.single .entry-content li,
.page:not(.home) .entry-content td,.page:not(.home) .entry-content address,
.page:not(.home) .entry-content div,.page:not(.home) .entry-content span:not(.tag){color:#ddd6ee!important}
.entry-content strong,.entry-content b,.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4{color:#fff!important}

/* ---------- comments (dark) ---------- */
.comments-area,#comments,.comment-respond,#respond,ol.comment-list,.comment-list li,article.comment-body{background:transparent!important}
.comments-title,.comment-reply-title,#reply-title{color:var(--ink)!important;font-family:var(--display)!important}
.comment-list .comment-body,.comment-list li article{background:var(--card)!important;border:1px solid var(--line)!important;border-radius:12px!important;padding:20px!important;margin-bottom:14px}
.comment-content,.comment-content p,.comment-list{color:var(--ink-soft)!important}
.comment-author .fn,.comment-author .fn a,.comment-reply-link{color:var(--accent-2)!important}
.comment-author .says,.comment-meta,.comment-metadata,.comment-metadata a{color:var(--muted)!important;font-family:var(--mono)!important;font-size:12px!important}
.comment-form label{color:var(--ink-soft)!important}
.comment-respond .comment-notes,.comment-form-cookies-consent label{color:var(--muted)!important}

/* ---------- buttons / forms ---------- */
.button,button,input[type=submit],.wp-block-button__link,.wp-element-button,.wpcf7-submit{
  background:var(--accent)!important;color:#0a0711!important;border:none!important;border-radius:8px!important;
  font-family:var(--display)!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.03em;font-size:14px;padding:13px 24px;transition:transform .2s,box-shadow .25s;cursor:pointer}
.button:hover,.wp-block-button__link:hover,.wp-element-button:hover,.wpcf7-submit:hover{transform:translateY(-2px);box-shadow:0 0 22px rgba(255,46,151,.5)}
input[type=text],input[type=email],input[type=search],input[type=url],input[type=tel],textarea,select{background:var(--panel)!important;color:var(--ink)!important;border:1px solid var(--line)!important;font-family:var(--body);border-radius:8px;padding:11px 13px}
input:focus,textarea:focus{outline:none;border-color:var(--accent-2)!important;box-shadow:0 0 0 3px rgba(44,232,222,.15)}
input::placeholder,textarea::placeholder{color:var(--muted)}

/* ---------- pagination ---------- */
.paging-navigation,.pagination{margin-top:30px;max-width:100%;overflow:hidden}
.nav-links{margin-top:30px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;max-width:100%}
.nav-links a,.page-numbers{font-family:var(--display);font-weight:700;border:1px solid var(--line);padding:8px 14px;color:var(--ink);background:var(--card);white-space:nowrap;border-radius:6px}
.page-numbers.current{background:var(--accent);color:#0a0711;border-color:var(--accent)}
.nav-links a:hover{border-color:var(--accent-2);color:var(--accent-2)}

/* ---------- Easy TOC (dark) ---------- */
.ez-toc-container,#ez-toc-container,div.ez-toc-v2#ez-toc-container,nav#ez-toc-container{background:var(--card)!important;border:1px solid var(--line)!important;box-shadow:none!important;border-radius:12px!important}
#ez-toc-container .ez-toc-title,.ez-toc-title{color:var(--ink)!important;font-family:var(--display)!important;text-transform:uppercase;letter-spacing:.04em}
#ez-toc-container a,.ez-toc-container a,#ez-toc-container .ez-toc-list a{color:var(--ink-soft)!important}
#ez-toc-container a:hover,.ez-toc-container a:hover{color:var(--accent-2)!important}
#ez-toc-container .ez-toc-title-toggle a,.ez-toc-toggle i{color:var(--ink-soft)!important}

/* ---------- cookie banner (CookieYes fallback / #cookie-banner) ---------- */
#cookie-banner,.cky-consent-container{font-family:var(--body)!important}
#cookie-banner{background:var(--bg2)!important;color:var(--ink-soft)!important;border-top:1px solid var(--line)!important}
#cookie-banner a{color:var(--accent-2)!important}


.tam-topbar{position:sticky;top:0;z-index:200;background:rgba(10,7,17,.97);backdrop-filter:blur(11px);border-bottom:1px solid var(--line)}
.tam-topbar::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent-3),var(--accent-2))}
.tam-headnav-inner{max-width:var(--wrap);margin:0 auto;padding:0 30px;height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative}
.tam-identity{display:flex;align-items:center;gap:11px;font-family:var(--display)!important;font-weight:700;font-size:22px;letter-spacing:.02em;color:var(--ink)!important}
.tam-identity:hover{color:var(--ink)!important}
.tam-identity .tam-mk{width:30px;height:30px;border:1.6px solid var(--accent);border-radius:7px;display:grid;place-items:center;flex:0 0 auto;box-shadow:0 0 12px rgba(255,46,151,.5),inset 0 0 8px rgba(255,46,151,.3)}
.tam-identity .tam-mk::before{content:"";width:9px;height:9px;background:var(--accent-2);border-radius:1px;box-shadow:0 0 10px var(--accent-2)}
.tam-identity .tam-bt em{font-style:normal;color:var(--accent)}
.tam-navmenu{display:flex;align-items:center;gap:22px;flex-wrap:nowrap}
.tam-navlist{display:flex;gap:18px;list-style:none;margin:0;padding:0;align-items:center;flex-wrap:nowrap}
.tam-navlist li{margin:0;position:relative}
.tam-navlist a{font-family:var(--display);font-weight:600;font-size:14.5px;color:var(--ink-soft);transition:color .2s;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em}
.tam-navlist a:hover,.tam-navlist .current-menu-item>a,.tam-navlist .current_page_item>a,.tam-navlist .current-menu-parent>a{color:var(--accent-2)}
.tam-navlist .sub-menu{display:none;position:absolute;top:100%;left:0;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px;min-width:210px;z-index:50;box-shadow:0 20px 44px rgba(0,0,0,.6)}
.tam-navlist li:hover>.sub-menu{display:block}
.tam-navlist .sub-menu a{display:block;padding:8px 12px;font-weight:500;font-size:13.5px;text-transform:none;letter-spacing:0}
.tam-navlist .sub-menu a:hover{color:var(--accent)}
.tam-toggle{display:none;background:none;border:1px solid var(--line);border-radius:8px;width:42px;height:42px;color:var(--ink);font-size:18px;cursor:pointer}
@media (max-width:900px){
  .tam-navmenu{display:none}
  .tam-toggle{display:block}
  .tam-navmenu.open{display:flex;flex-direction:column;align-items:flex-start;position:absolute;top:72px;left:0;right:0;background:var(--bg2);border-bottom:1px solid var(--line);padding:20px 30px;gap:14px;max-height:80vh;overflow-y:auto}
  .tam-navmenu.open .tam-navlist{flex-direction:column;align-items:flex-start;gap:12px;width:100%}
  .tam-navmenu.open .tam-navlist .sub-menu{display:block;position:static;border:none;border-left:2px solid var(--accent);background:transparent;border-radius:0;padding:4px 0 4px 14px;margin:4px 0 6px;min-width:0;box-shadow:none}
  .tam-navmenu.open .tam-navlist .sub-menu a{padding:6px 0;font-size:13.5px}
}
@media (max-width:480px){
  .tam-headnav-inner{padding:0 18px}
  .tam-identity{font-size:18px}
  .tam-identity .tam-mk{width:26px;height:26px}
}


.tam-foot{background:#070510;border-top:2px solid transparent;border-image:linear-gradient(90deg,var(--accent),var(--accent-3),var(--accent-2)) 1;margin-top:60px}
.tam-foot-inner{max-width:var(--wrap);margin:0 auto;padding:54px 30px 28px;display:flex;justify-content:space-between;gap:50px;flex-wrap:wrap}
.tam-foot-mark{max-width:340px}
.tam-foot-mark .tam-identity{font-size:21px;color:var(--ink)!important}
.tam-foot-mark p{color:var(--ink-soft);font-size:14.5px;margin-top:16px;line-height:1.55}
.tam-foot-cols{display:flex;gap:54px;flex-wrap:wrap}
.tam-foot-cols h5{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);margin:0 0 14px}
.tam-foot-cols a,.tam-foot-cols span{display:block;color:var(--ink-soft);font-size:14.5px;padding:4px 0;text-decoration:none}
.tam-foot-cols a:hover{color:var(--accent)}
.tam-foot-legal{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:22px 30px;border-top:1px solid var(--line);color:var(--muted);font-size:12.5px;max-width:var(--wrap);margin:0 auto}
.tam-foot-legal a{color:var(--muted)}.tam-foot-legal a:hover{color:var(--accent-2)}
.tam-foot-legal .tam-mono{font-family:var(--mono)}


/* full-width home : neutraliser le conteneur GP */
.home #page,.home #content,.home .site-content{max-width:100%!important;padding:0!important}
.home .content-area,.home .site-main,.home #primary{max-width:100%!important;width:100%!important;padding:0!important;margin:0!important;display:block!important;float:none!important}
.home .site-main>*{margin:0!important}
.home .inside-article,.home .entry-content,.home article{padding:0!important;margin:0!important;border:0!important;background:transparent!important}
.tam-home{position:relative;z-index:1}
.tam-shell{max-width:var(--wrap);margin:0 auto;padding:0 30px}
.tam-mono{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

/* hero */
.tam-masthead{position:relative;padding:96px 0 76px;overflow:hidden}
.tam-masthead .heroimg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;opacity:.5;
  -webkit-mask-image:radial-gradient(120% 90% at 70% 10%,#000,transparent 72%);mask-image:radial-gradient(120% 90% at 70% 10%,#000,transparent 72%)}
.tam-masthead::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,7,17,.35),var(--bg) 92%)}
.tam-masthead .gl{position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(var(--line-2) 1px,transparent 1px) 0 0/100% 46px,linear-gradient(90deg,var(--line-2) 1px,transparent 1px) 0 0/46px 100%;
  -webkit-mask-image:radial-gradient(120% 80% at 50% 100%,#000,transparent 75%);mask-image:radial-gradient(120% 80% at 50% 100%,#000,transparent 75%)}
.tam-lede-inner{position:relative;z-index:3;max-width:var(--wrap);margin:0 auto;padding:0 30px}
.tam-kick{display:inline-flex;align-items:center;gap:9px;margin-bottom:22px;font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);border:1px solid var(--line);border-radius:999px;padding:7px 15px;background:rgba(44,232,222,.05)}
.tam-kick .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent);animation:csp 2s infinite}
@keyframes csp{0%,100%{opacity:1}50%{opacity:.3}}
.tam-masthead h1{font-family:var(--display);font-weight:700;font-size:clamp(38px,6.4vw,76px);line-height:1.02;letter-spacing:0;margin:0 0 22px;color:var(--ink);max-width:16ch;text-shadow:0 0 40px rgba(255,46,151,.25)}
.tam-masthead h1 em{font-style:normal;color:var(--accent);text-shadow:0 0 24px rgba(255,46,151,.6)}
.tam-masthead h1 i{font-style:normal;color:var(--accent-2)}
.tam-lede{font-size:clamp(17px,2vw,21px);color:var(--ink-soft);max-width:52ch;margin:0 0 32px;line-height:1.55}
.tam-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.tam-link2{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:14.5px;padding:14px 26px;border-radius:9px;background:var(--accent);color:#0a0711;display:inline-flex;gap:9px;align-items:center;transition:transform .18s,box-shadow .25s}
.tam-link2:hover{transform:translateY(-2px);box-shadow:0 0 26px rgba(255,46,151,.55);color:#0a0711}
.tam-link2.ghost{background:transparent;color:var(--ink);border:1px solid var(--accent-2)}
.tam-link2.ghost:hover{border-color:var(--accent-2);box-shadow:0 0 22px rgba(44,232,222,.3);color:var(--accent-2)}

/* section heads */
.tam-sec{padding:76px 0}
.tam-sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.tam-sec-head .k{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2)}
.tam-sec-head h2{font-family:var(--display);font-weight:700;font-size:clamp(26px,4vw,42px);letter-spacing:.01em;margin:8px 0 0;color:var(--ink)}
.tam-sec-head .more{font-family:var(--display);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink);border-bottom:2px solid var(--accent);padding-bottom:3px}
.tam-sec-head .more:hover{color:var(--accent)}

/* category cards (image chips) */
.tam-cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tam-rubric{position:relative;border:1px solid var(--line);border-radius:14px;padding:26px 22px;min-height:150px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;transition:.25s;background:var(--card)}
.tam-rubric .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.34;z-index:0;transition:.35s}
.tam-rubric::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(10,7,17,.2),var(--card));z-index:1}
.tam-rubric>*{position:relative;z-index:2}
.tam-rubric:hover{transform:translateY(-4px);border-color:var(--accent)}
.tam-rubric:hover .bg{opacity:.5;transform:scale(1.06)}
.tam-rubric .n{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--accent-2)}
.tam-rubric h3{font-family:var(--display);font-weight:700;font-size:20px;color:#fff;margin:8px 0 4px;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.tam-rubric .c{color:var(--ink-soft);font-size:13px}

/* latest-articles grid */
.tam-set{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tam-acard{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s;min-width:0}
.tam-acard:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 18px 40px rgba(255,46,151,.18)}
.tam-acard .img{height:172px;background-size:cover;background-position:center;border-bottom:1px solid var(--line)}
.tam-acard .body{padding:20px;display:flex;flex-direction:column;flex:1}
.tam-acard .tag{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-2);margin-bottom:10px}
.tam-acard h3{font-family:var(--display);font-weight:700;font-size:19px;color:var(--ink);margin:0 0 10px;line-height:1.2;overflow-wrap:break-word}
.tam-acard h3 a{color:var(--ink)}.tam-acard h3 a:hover{color:var(--accent)}
.tam-acard .ex{color:var(--ink-soft);font-size:14.5px;flex:1;overflow-wrap:break-word}
.tam-acard .meta{font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase;margin-top:14px}

/* CTA band */
.tam-cta-band{border:1px solid var(--line);border-radius:20px;padding:56px;text-align:center;position:relative;overflow:hidden;
  background:radial-gradient(120% 140% at 50% -20%,rgba(255,46,151,.18),transparent 60%),radial-gradient(100% 120% at 100% 120%,rgba(44,232,222,.12),transparent 60%),var(--bg2)}
.tam-cta-band .k{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2)}
.tam-cta-band h2{font-family:var(--display);font-weight:700;font-size:clamp(26px,4.4vw,46px);color:var(--ink);margin:12px 0 14px}
.tam-cta-band p{color:var(--ink-soft);max-width:52ch;margin:0 auto 28px}

/* reveal */
.rv{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.d1{transition-delay:.06s}.d2{transition-delay:.12s}.d3{transition-delay:.18s}.d4{transition-delay:.24s}.d5{transition-delay:.3s}.d6{transition-delay:.36s}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .tam-cats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tam-set{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:768px){
  body{font-size:17px}
  .blog .site-main,.archive .site-main,.search-results .site-main,.tam-set,.tam-cats{grid-template-columns:1fr}
  .tam-masthead{padding:70px 0 56px}
  .tam-sec{padding:56px 0}
  .tam-cta-band{padding:36px 22px}
}
