/*
Theme Name: SpecchioUstorio
Description: A — Continuità. Restyling editoriale del laboratorio SpecchioUstorio.it.
Author: SpecchioUstorio
Template: period
Version: 1.2.0
Requires PHP: 7.4
Text Domain: specchioustorio
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{--su-ink:#262727;--su-paper:#f5f5f1;--su-white:#fff;--su-muted:#626661;--su-line:#d8dad4;--su-accent:#75602d;--su-on-dark:#f7f6f1;--su-gutter:24px;--su-ui:'Nunito',sans-serif;--su-reading:'Source Serif 4',Georgia,serif}
.su-newsletter{padding:clamp(20px,4vw,40px);border:1px solid var(--su-line);background:var(--su-white);width:100%;margin-block:24px}
.su-newsletter-page{padding-block:32px 64px}
.su-newsletter-native{width:100%;min-width:0}
.su-newsletter .mailpoet_form{padding:0!important;background:transparent!important;max-width:100%;margin:0!important}
.su-newsletter .mailpoet_paragraph{margin-bottom:16px}
.su-newsletter .mailpoet_text_label{display:block;font:700 15px/1.5 var(--su-ui);margin-bottom:8px}
.su-newsletter input[type=email]{max-width:100%;min-width:0}
.su-newsletter input[type=submit]{min-height:48px;padding:12px 24px;border:1px solid var(--su-ink);background:var(--su-ink);color:var(--su-on-dark);font:700 16px/1.5 var(--su-ui);white-space:normal;cursor:pointer}
.su-newsletter .mailpoet_validate_error,.su-newsletter .mailpoet_error{color:#932e26}
.su-newsletter .mailpoet_validate_success,.su-newsletter .mailpoet_success{color:#286237}
.su-newsletter-unavailable{font-family:var(--su-ui);font-size:16px}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--su-paper);color:var(--su-ink);font:18px/1.6 var(--su-reading);overflow-wrap:break-word}
[hidden]{display:none!important}
img{max-width:100%;height:auto;vertical-align:middle}
svg{max-width:100%}
figure,p,h1,h2,h3,h4,h5,h6,ul,ol{margin-top:0}
p,h1,h2,h3,h4,h5,h6{margin-bottom:0}
h1,h2,h3,h4,h5,h6{font-family:var(--su-ui);font-weight:700;line-height:1.15}
h1{font-size:34px}h2{font-size:32px}h3{font-size:26px}
a{color:inherit;text-decoration:none;text-underline-offset:.18em}
a:hover{text-decoration:underline}
button,input,textarea,select{font:inherit;font-family:var(--su-ui);max-width:100%}
button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}
button,a,input,textarea,summary,select{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid var(--su-accent);outline-offset:4px}
.su-header :focus-visible,.su-footer :focus-visible,.su-archive-invite :focus-visible{outline-color:#e6ce90}
#main:focus{outline:0}
hr{border:0;border-top:1px solid var(--su-line);margin:0;width:100%}
.su-container{width:calc(100% - 2 * var(--su-gutter));max-width:1280px;margin-inline:auto}
.su-stack{display:flex;flex-direction:column;align-items:flex-start;gap:16px;min-width:0}
.su-eyebrow,.su-meta{font:700 12px/17px var(--su-ui);letter-spacing:1.2px;text-transform:uppercase}
.su-eyebrow,.su-accent{color:var(--su-accent)}
.su-meta{color:var(--su-muted)}.su-meta.su-accent{color:var(--su-accent)}
.su-lead{font:18px/27px var(--su-reading);color:var(--su-muted)}
.su-fineprint{font:13px/20px var(--su-ui);color:var(--su-muted)}
.su-fineprint a{text-decoration:underline}
.su-button,.su-text-link{font:700 15px/21px var(--su-ui);min-height:44px;display:inline-flex;align-items:center;gap:12px;padding:12px;text-align:left}
.su-button{border:1px solid var(--su-ink);background:var(--su-ink);color:var(--su-on-dark);min-width:180px}
.su-button:hover{background:var(--su-accent);border-color:var(--su-accent);text-decoration:none}
.su-text-link{border:0;background:none;color:inherit}
.screen-reader-text,.su-skip:not(:focus){position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
.su-skip:focus{position:fixed;z-index:100000;top:12px;left:12px;background:white;color:var(--su-ink);padding:16px;font-family:var(--su-ui)}
.su-header{padding:20px 0 12px;background:var(--su-ink);color:var(--su-on-dark)}
.su-brand{display:block;width:260px;max-width:100%;line-height:1}
.su-brand img{display:block;width:auto;max-width:100%;height:auto}
.su-tagline{font:13px/19px var(--su-ui);margin:8px 0}
.su-nav-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font:700 15px/21px var(--su-ui)}
.su-nav-row button{min-height:44px;border:0;color:inherit;background:transparent;padding:12px}
.su-menu-toggle{margin-right:auto}
.su-search-toggle{margin-left:auto}
#su-navigation{width:100%;order:3}
.su-nav-list,.su-footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.su-nav-list a,.su-footer-links a{display:block;min-height:44px;padding:12px;font:700 15px/21px var(--su-ui)}
.su-nav-list .sub-menu{list-style:none;padding-left:20px;display:block}
.su-js #su-navigation:not(.is-open){display:none}
.su-search-panel{padding:24px 0;max-width:680px}
.su-search-close{margin-top:16px;border:1px solid currentColor;padding:12px;background:none;color:inherit;min-height:44px}
.su-search-form{width:100%;max-width:800px}
.su-search-form label,.su-field label{display:block;font:700 14px/20px var(--su-ui);margin-bottom:8px}
.su-form-row{display:flex;flex-direction:column;gap:12px;width:100%;align-items:stretch}
.su-field{width:100%;max-width:600px}
input[type=email],input[type=search],input[type=text],input[type=url],textarea,select{min-height:48px;background:var(--su-white);border:1px solid var(--su-muted);color:var(--su-ink);border-radius:0;padding:12px;font:16px/22px var(--su-ui);width:100%}
.su-home{display:flex;flex-direction:column;gap:32px;padding-block:28px 24px}
.su-featured{display:flex;flex-direction:column;gap:32px}
.su-hero{display:grid;gap:24px;grid-template-columns:minmax(0,1fr)}
.su-hero-image{aspect-ratio:744/439;display:block;position:relative}
.su-hero-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.su-hero h2{font-size:32px;line-height:36px}
.su-hero-excerpt{font:19px/29px var(--su-reading);color:var(--su-muted)}
.su-section-heading{display:flex;flex-direction:column;gap:16px;align-items:flex-start;margin-bottom:32px}
.su-section-heading h2{line-height:45px}
.su-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:32px 24px;width:100%}
.su-card{min-width:0;display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.su-card-image{width:100%;aspect-ratio:5/3;display:block;position:relative}
.su-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.su-card h2,.su-card h3{font-size:25px;line-height:30px}
.su-excerpt{font:17px/26px var(--su-reading);color:var(--su-muted)}
.su-card-no-image{border-top:1px solid var(--su-line);padding-top:24px}
.su-archive-invite{background:var(--su-ink);color:var(--su-on-dark);padding:24px}
.su-archive-invite .su-eyebrow{color:inherit}
.su-archive-invite h2{font-size:30px;line-height:36px}
.su-author{display:flex;gap:32px;width:100%;flex-direction:column}
.su-author h2{font-size:28px;line-height:39px}
.su-author-home h2{font-size:32px;line-height:37px}
.su-author-image{width:100%;height:220px;object-fit:contain;object-position:left center}
.su-manifesto{font:18px/28px var(--su-reading)}
[aria-invalid=true]{border-color:#9b2923!important}
.su-footer{padding-block:24px;background:var(--su-ink);color:var(--su-on-dark)}
.su-footer .su-stack{gap:20px}
.su-brand-footer{width:240px}
.su-footer p{font:16px/24px var(--su-reading)}
.su-footer small{font:13px/18px var(--su-ui)}
.su-listing{padding-block:24px;display:flex;flex-direction:column;gap:32px}
.su-listing-heading .su-lead{font-size:20px;line-height:30px}
.su-categories{display:flex;flex-direction:column;gap:12px;width:100%}
.su-categories a{min-height:44px;padding:12px;font:700 15px/21px var(--su-ui)}
.su-categories [aria-current]{background:var(--su-ink);color:var(--su-on-dark)}
.su-count{font:700 16px/22px var(--su-ui)}
.su-pagination ul{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:0}
.su-pagination .page-numbers:not(ul){display:inline-flex;min-height:44px;min-width:44px;align-items:center;justify-content:center;padding:10px;font:700 15px/21px var(--su-ui)}
.su-pagination .current{background:var(--su-ink);color:var(--su-on-dark)}
.su-article{display:flex;flex-direction:column;align-items:center;gap:24px;padding-block:24px}
.su-back{align-self:flex-start}
.su-article-heading{max-width:900px;width:100%}
.su-article-heading h1{font-size:32px;line-height:36px}
.su-byline{font:15px/21px var(--su-ui);color:var(--su-muted)}
.su-cover{margin:0;max-width:1040px;width:100%}
.su-cover img{display:block;max-height:760px;width:100%;object-fit:contain}
figcaption,.wp-caption-text{font:13px/18px var(--su-ui);color:var(--su-muted);margin-top:8px}
.su-prose,.su-reading-width{width:100%;max-width:680px}
.su-prose{font:18px/29px var(--su-reading)}
.su-prose>*+*{margin-top:24px}
.su-prose a{text-decoration:underline;overflow-wrap:anywhere}
.su-prose p{margin-bottom:24px}
.su-prose img{object-fit:contain;max-width:100%;height:auto}
.su-prose figure{max-width:100%;margin-inline:0}
.su-prose .wp-block-image{margin-block:24px}
.su-prose .wp-block-image img{height:auto!important;object-fit:contain!important}
.su-prose .wp-block-gallery{display:flex;flex-direction:column;gap:24px}
.su-prose .wp-block-gallery .wp-block-image{width:100%!important;flex:auto!important;margin:0!important}
.su-prose .alignleft,.su-prose .alignright{float:none;margin-inline:auto}
.su-prose .alignwide,.su-prose .alignfull{width:100%;max-width:100%;margin-inline:0}
.su-prose iframe,.su-prose video{max-width:100%;aspect-ratio:16/9;height:auto}
.su-prose blockquote{border-left:3px solid var(--su-accent);margin-inline:0;padding-left:24px;font-style:italic}
.su-prose table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse}
.su-prose th,.su-prose td{border:1px solid var(--su-line);padding:8px}
.su-post-nav{display:grid;gap:16px;border-top:1px solid var(--su-line);margin-top:32px;padding-top:24px;font:700 16px/24px var(--su-ui)}
.su-post-nav a{display:block;min-height:44px;padding-block:12px}
.su-comments{border-top:1px solid var(--su-line);padding-top:32px}
.su-comments h2,.su-comments h3{margin-block:16px}
.su-comments p{margin-block:16px}
.su-comments input[type=submit]{background:var(--su-ink);color:var(--su-on-dark);border:0;min-height:44px;padding:12px 24px}
.su-comments .comment-list{padding-left:20px}
.su-comments .avatar{width:48px;height:48px;border-radius:50%}
/* Existing plugin output retains its own data and settings. */
.su-prose .related-post{font:17px/26px var(--su-reading);border-top:1px solid var(--su-line);padding-top:24px;max-width:100%}
.su-prose .related-post img{object-fit:contain!important;height:auto!important}
.su-prose .related-post a{font-family:var(--su-ui)}
.su-prose .related-post .headline{font:700 28px/36px var(--su-ui)!important;color:var(--su-ink)!important;margin:0 0 24px}
.su-prose .related-post .post-list{display:grid;grid-template-columns:minmax(0,1fr);gap:32px 24px}
.su-prose .related-post .post-list .item{display:flex;flex-direction:column;gap:12px;width:auto;min-width:0;padding:0;margin:0;float:none}
.su-prose .related-post .post-list .item .post_title{font:700 20px/26px var(--su-ui);color:var(--su-ink);text-decoration:none;display:block}
.su-prose .related-post .post-list .item .post_title:hover{text-decoration:underline}
.su-prose .related-post .post-list .item .post_thumb{margin:0;max-height:none}
.su-prose .related-post .post-list .item .post_excerpt{font:17px/26px var(--su-reading);color:var(--su-muted);margin:0}
.su-prose .related-post .post-list .item .read-more{font:700 14px/22px var(--su-ui)}
@media(min-width:700px){
 :root{--su-gutter:40px}
 .su-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .su-prose .related-post .post-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .su-brand{width:340px}.su-tagline{font-size:15px;line-height:22px}
 .su-header{padding-top:24px}
 .su-menu-toggle{display:none}.su-js #su-navigation:not(.is-open){display:block}
 #su-navigation{width:auto;order:0;flex:1}
 .su-nav-list,.su-footer-links{flex-direction:row;flex-wrap:wrap}
 .su-nav-list .sub-menu{padding-left:0}
 .su-form-row{flex-direction:row;align-items:flex-end}
 .su-form-row input[type=search]{flex:1;min-width:0}
 .su-section-heading{flex-direction:row;justify-content:space-between;align-items:center}
 .su-categories{flex-direction:row;flex-wrap:wrap}
 .su-categories a{padding-inline:24px}
 .su-author-home{flex-direction:row}
 .su-author-image{width:240px;height:202px;flex-shrink:0}
 .su-post-nav{grid-template-columns:1fr 1fr}
 .su-home,.su-listing,.su-article{padding-block:40px}
 .su-footer{padding-block:40px}
}
@media(min-width:1200px){
 :root{--su-gutter:80px}
 h1,.su-article-heading h1{font-size:52px;line-height:58px}
 .su-brand{width:420px}.su-brand-footer{width:320px}
 .su-home{padding-block:40px 80px;gap:48px}
 .su-featured{gap:48px}
 .su-hero{grid-template-columns:minmax(0,744fr) minmax(0,488fr);gap:48px}
 .su-hero-no-image{grid-template-columns:1fr}
 .su-hero h2{font-size:46px;line-height:52px}
 .su-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:48px}
 .su-section-heading{margin-bottom:48px}
 .su-archive-invite{padding:40px}.su-archive-invite h2{font-size:40px;line-height:48px}
 .su-footer{padding-block:80px}
 .su-listing,.su-article{padding-block:80px}.su-article{gap:32px}
 .su-prose{font-size:20px;line-height:32px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.su-header,.su-footer,.su-back,.su-post-nav,#wpadminbar{display:none!important}body{background:white;color:black}.su-container{width:100%}.su-article{padding:0}.su-prose{font-size:12pt;line-height:1.5}}

/* Archive filters and editorial paths. */
.su-filters{display:flex;flex-wrap:wrap;align-items:end;gap:20px;margin:32px 0}
.su-filters .su-field{flex:1 1 200px;min-width:0}
.su-filters input,.su-filters select,.su-copy-fallback input{box-sizing:border-box;width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--su-muted);border-radius:0;background:white;color:var(--su-ink);font:inherit}
.su-filters label,.su-copy-fallback label{display:block;font-weight:700;margin-bottom:8px}
.su-filters .su-text-link{min-height:44px;display:inline-flex;align-items:center}
.su-empty{padding:32px 0}
.su-share,.su-related{border-top:1px solid var(--su-line);margin-top:40px;padding-top:32px}
.su-share h2,.su-related>h2{font:700 28px/36px var(--su-ui)}
.su-share-actions{display:flex;flex-wrap:wrap;gap:24px;align-items:center}
.su-share-actions a{display:inline-flex;align-items:center;min-height:44px}
.su-copy-fallback input{font-size:16px}
[hidden]{display:none!important}
@media print{.su-share{display:none!important}}
