/*
Theme Name: Cesare Rossi (child di Twenty Twenty-Five)
Template: twentytwentyfive
Version: 1.0.3
Description: Identità visiva di cesarerossi.online: tono sobrio per Professional, tono giocoso per il resto.
Text Domain: cesarerossi
*/
:root{--cr-bg:#FFF1CF;--cr-ink:#12233B;--cr-paper:#FFFDF7;--cr-c1:#7BD8C6;--cr-c2:#FF8FA3;--cr-c3:#FFB627;--cr-on1:#12233B;--cr-on2:#12233B;--cr-on3:#12233B;--cr-accent:#8C1D40;--cr-hero-bg:transparent;--cr-hero-ink:#12233B;--cr-bw:3px;--cr-rad:18px;--cr-sh:6px 6px 0 var(--cr-ink);--cr-r1:-.8deg;--cr-r2:.6deg;--cr-r3:-.5deg;--cr-head:"Fraunces",Georgia,serif;--cr-body:"DM Sans",system-ui,sans-serif;--cr-hw:900}
@media (prefers-color-scheme:dark){:root{--cr-bg:#101826;--cr-ink:#FFF1CF;--cr-hero-ink:#FFF1CF;--cr-accent:#FF8FA3}}
body:has(.tone-sober){--cr-bg:#F7F3EC;--cr-ink:#1D232B;--cr-paper:#FFFFFF;--cr-c1:#0F2A43;--cr-c2:#6E1F2B;--cr-c3:#EADFCB;--cr-on1:#F7F3EC;--cr-on2:#FBF1EF;--cr-on3:#1D232B;--cr-accent:#6E1F2B;--cr-hero-bg:#0F2A43;--cr-hero-ink:#F7F3EC;--cr-bw:1px;--cr-rad:4px;--cr-sh:none;--cr-r1:0deg;--cr-r2:0deg;--cr-r3:0deg;--cr-head:"Playfair Display",Georgia,serif;--cr-body:"Inter",system-ui,sans-serif;--cr-hw:700}
@media (prefers-color-scheme:dark){body:has(.tone-sober){--cr-bg:#111922;--cr-ink:#ECE6DA;--cr-paper:#1C2733;--cr-c3:#1C2733;--cr-on3:#ECE6DA;--cr-accent:#D9A441}}
body{background:var(--cr-bg);color:var(--cr-ink);font-family:var(--cr-body);font-size:18px}
.cr-page h1,.cr-page h2,.cr-page h3,.cr-page blockquote{font-family:var(--cr-head);font-weight:var(--cr-hw);line-height:1.1;color:inherit}
.cr-page h1,.cr-h1{font-size:clamp(2.6rem,7vw,5rem)}
.cr-page h2{font-size:clamp(2rem,4.5vw,3.2rem)}
.cr-night{color:var(--cr-accent)}
.cr-sec{padding:4.5rem 1.5rem;max-width:1120px;margin-inline:auto}
.cr-sec>*{max-width:none}
.cr-hero{background:var(--cr-hero-bg);color:var(--cr-hero-ink);padding:3.5rem 1.5rem 4rem}
.cr-hero>*{max-width:1120px;margin-inline:auto}
.cr-lead{font-size:1.25rem;max-width:36em!important}
.cr-card{border:var(--cr-bw) solid var(--cr-ink);border-radius:var(--cr-rad);box-shadow:var(--cr-sh);padding:1.8rem 1.6rem;height:100%}
.cr-card h3{font-size:1.8rem;margin:0 0 .4rem}
.cr-a1{background:var(--cr-c1);color:var(--cr-on1);transform:rotate(var(--cr-r1))}
.cr-a2{background:var(--cr-c2);color:var(--cr-on2);transform:rotate(var(--cr-r2))}
.cr-a3{background:var(--cr-c3);color:var(--cr-on3);transform:rotate(var(--cr-r3))}
.cr-a1 a,.cr-a2 a{color:inherit}
.cr-ico{font-size:1.8rem;margin:0}.cr-lado{font-weight:700;margin-top:0}
.cr-peek{background:var(--cr-paper);color:#12233B;border:2px dashed currentColor;border-radius:12px;padding:.6rem .9rem;font-size:.95rem}
body:has(.tone-sober) .cr-peek{color:var(--cr-ink)}
.cr-go{font-weight:700}
.cr-areas,.cr-areas2{gap:1.75rem}
.cr-menu{background:var(--cr-paper);color:#12233B;transform:rotate(2deg);padding:1.8rem}
.cr-menu h2{text-align:center;font-size:2rem!important;margin:0}
.cr-menu-sub,.cr-menu-foot{text-align:center;font-size:.95rem;opacity:.8}
.cr-menu-foot{border-top:2px dashed #12233B;padding-top:.8rem;margin-top:1rem}
.cr-menu .cr-menu-row{display:flex;align-items:baseline;gap:.5rem;margin:0 0 .8rem;max-width:none}
.cr-menu-row>*{margin:0!important}
.cr-menu-row>p:first-child{order:1;font-family:var(--cr-head);font-weight:600;white-space:nowrap}
.cr-menu-row::before{content:"";order:2;flex:1;border-bottom:3px dotted #12233B;opacity:.35;transform:translateY(-4px)}
.cr-menu-row>p:last-child{order:3;font-weight:700;font-size:.95rem;text-align:right}
.cr-stickers{display:flex;flex-wrap:wrap;gap:.8rem 1rem;justify-content:center;padding:0 1.5rem 1rem;max-width:1120px;margin-inline:auto}
.cr-stickers>*{margin:0!important}
.cr-sticker{border:var(--cr-bw) solid var(--cr-ink);border-radius:99px;padding:.3rem 1.1rem;font-weight:700;box-shadow:3px 3px 0 var(--cr-ink);color:#12233B}
.cr-s1,.cr-s5{background:#FFB627;transform:rotate(-2deg)}.cr-s2{background:#7BD8C6;transform:rotate(1.5deg)}.cr-s3{background:#FF8FA3;transform:rotate(-1deg)}.cr-s4{background:#FFFDF7;transform:rotate(2deg)}
.cr-blob{aspect-ratio:1;max-width:300px;background:var(--cr-c2);color:#12233B;border-radius:58% 42% 52% 48%/50% 56% 44% 50%;display:grid;place-items:center;text-align:center;padding:2rem;font-weight:700;border:var(--cr-bw) solid var(--cr-ink)}
.cr-about{gap:3.5rem;align-items:center}
.cr-latest{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.75rem}
.cr-latest li{background:var(--cr-paper);color:#12233B;border:var(--cr-bw) solid var(--cr-ink);border-radius:var(--cr-rad);box-shadow:var(--cr-sh);padding:1.4rem}
body:has(.tone-sober) .cr-latest li{color:var(--cr-ink)}
.cr-latest a{font-family:var(--cr-head);font-weight:var(--cr-hw);font-size:1.3rem;text-decoration:none;color:inherit}
.cr-latest a:hover{text-decoration:underline;text-underline-offset:4px}
.cr-manifesto blockquote{font-size:clamp(1.8rem,4.4vw,3rem);text-align:center;border:0;padding:0;max-width:21em;margin-inline:auto}
.cr-manifesto cite{display:block;margin-top:1rem;font:500 1rem var(--cr-body);font-style:normal}
.cr-cta{background:var(--cr-accent);color:#FFF1CF;text-align:center;padding:3.5rem 2rem;transform:none}
.cr-cta .wp-block-buttons{justify-content:center}
.cr-small{font-size:.9rem;opacity:.85}
.cr-btn-amber .wp-block-button__link,.cr-btn-paper .wp-block-button__link{border:var(--cr-bw) solid var(--cr-ink);border-radius:99px;font-weight:700;padding:.8rem 1.5rem;box-shadow:4px 4px 0 var(--cr-ink);transition:transform .12s,box-shadow .12s;color:#12233B}
body:has(.tone-sober) .cr-btn-amber .wp-block-button__link,body:has(.tone-sober) .cr-btn-paper .wp-block-button__link{border-radius:4px;box-shadow:none}
.cr-btn-amber .wp-block-button__link{background:#FFB627}
body:has(.tone-sober) .cr-btn-amber .wp-block-button__link{background:#D9A441}
.cr-btn-paper .wp-block-button__link{background:#FFFDF7}
.cr-btn-amber .wp-block-button__link:hover,.cr-btn-paper .wp-block-button__link:hover{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--cr-ink)}
.cr-page a:focus-visible{outline:3px solid var(--cr-accent);outline-offset:3px}
@media (max-width:781px){.cr-sec{padding:3rem 1.25rem}.cr-menu{transform:rotate(1deg)}}
@media (prefers-reduced-motion:reduce){.wp-block-button__link{transition:none!important}}

/* v1.0.1: hero più arioso, niente parole spezzate */
.cr-page :is(h1,h2,h3){overflow-wrap:normal;word-break:normal;hyphens:manual;text-wrap:balance}
.cr-page p{text-wrap:pretty}
.cr-hero .cr-h1{font-size:clamp(2.2rem,4.4vw,3.6rem);line-height:1.08}
.cr-hero-cols{align-items:center!important;gap:3rem}
.cr-hero-cols>.wp-block-column:first-child{flex-basis:58%!important}
.cr-hero-cols>.wp-block-column:last-child{flex-basis:42%!important}
.cr-card.cr-menu{height:auto;align-self:center}
.cr-menu-sub{margin-bottom:1.2rem!important}
.cr-menu-row::before{min-width:1rem}
.cr-menu-row>p:last-child{max-width:60%;font-size:.9rem}
.cr-lead{max-width:32em!important}
.cr-hero .wp-block-buttons{gap:.8rem}
.cr-btn-amber .wp-block-button__link,.cr-btn-paper .wp-block-button__link{padding:.7rem 1.3rem}

/* v1.0.2: menù leggibile a qualsiasi larghezza (voce sopra, descrizione sotto) */
.cr-menu .cr-menu-row{display:block!important;margin:0 0 .9rem!important;padding-bottom:.8rem;border-bottom:2px dotted rgba(18,35,59,.3);max-width:none!important}
.cr-menu .cr-menu-row::before{content:none!important;display:none!important}
.cr-menu .cr-menu-row>p{max-width:none!important;width:auto!important;text-align:left!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:manual!important;margin:0!important;order:0!important}
.cr-menu .cr-menu-row>p:first-child{font-size:1.2rem;line-height:1.2}
.cr-menu .cr-menu-row>p:last-child{font-size:1rem;font-weight:700;margin-top:.15rem!important}
.cr-menu .cr-menu-sub{white-space:normal}

/* v1.0.3: foto di Dot nella bio */
.cr-dotcols{gap:2.5rem;margin:1.5rem 0}
.cr-dot{margin:0}
.cr-dot img{display:block;width:100%;height:auto;max-width:320px;margin-inline:auto}
.cr-dot{background:var(--cr-c3);color:var(--cr-on3);border:var(--cr-bw) solid var(--cr-ink);border-radius:var(--cr-rad);box-shadow:var(--cr-sh);padding:1.2rem 1.2rem .8rem;transform:rotate(1.2deg)}
.cr-dot figcaption{text-align:center;font-weight:700;font-size:.95rem;margin-top:.6rem;color:inherit}
@media (max-width:781px){.cr-dot{transform:none}.cr-dot img{max-width:240px}}
