/*
Theme Name: caffècorretto
Description: Portfolio editoriale per exhibit design, interior design e cultural management. Tema classico con progetti dinamici, font locali e identità warm grey.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.1
Author: caffècorretto
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: caffecorretto
Tags: portfolio, custom-logo, custom-menu, featured-images, theme-options, translation-ready, wide-blocks
*/

@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/manrope-latin.woff2') format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/instrument-serif-latin.woff2') format('woff2')}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url('assets/fonts/instrument-serif-italic-latin.woff2') format('woff2')}

.brand-mark--custom{width:90px;max-height:82px}.brand-mark--custom img{object-fit:contain;filter:none}.brand-mark--warm{mix-blend-mode:normal}.brand-descriptor{max-width:190px}.primary-menu,.footer-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:30px}.primary-menu a{display:block;padding:8px 0}.primary-menu a:hover,.primary-menu .current-menu-item>a{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.footer-menu{flex-wrap:wrap;gap:12px 20px;font-size:11px}.site-footer>p{max-width:280px;white-space:pre-line}.primary-nav a:focus-visible,.project-filters a:focus-visible{outline:2px solid var(--warm);outline-offset:5px}
.project-filters{flex-wrap:wrap}.project-filters a{display:inline-block;padding:7px 0;font-size:11px;border-bottom:1px solid transparent;color:var(--muted)}.project-filters a[aria-current=true]{color:var(--ink);border-color:var(--ink)}.project-filters a:hover{color:var(--ink)}.project-grid .project-card--portrait .project-image{aspect-ratio:3/4}.project-grid .project-card--square .project-image{aspect-ratio:1}.project-grid .project-card--square .project-image>img{object-fit:contain}.project-grid .project-card--square .project-image:hover>img{transform:none}.project-grid .project-card--landscape .project-image{aspect-ratio:1.25}.project-grid .project-card{min-width:0}.project-grid .project-card h3,.feature-caption h2{overflow-wrap:anywhere}.project-grid.is-filtered .project-card{padding-top:0!important}.project-card>p{line-height:1.85}.project-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;width:100%;height:100%;padding:30px;background:#e5e0d8;color:var(--warm);font-size:12px;text-align:center}.project-placeholder>span:first-child{font-family:var(--serif);font-size:80px;line-height:1}.feature-image .project-placeholder{min-height:320px}.feature-caption .caption-link{flex-shrink:0}.feature-credit{max-width:90ch}.portfolio-empty{padding:80px 42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative}.portfolio-empty .empty-mark{display:block;color:var(--warm);font-family:var(--serif);font-size:80px;line-height:1;margin-bottom:30px}.portfolio-empty h2{font-family:var(--serif);font-size:clamp(38px,4vw,62px);line-height:1.1;max-width:720px}.portfolio-empty>p:not(.eyebrow){font-size:14px;max-width:55ch;margin:22px 0 28px;color:var(--muted)}.portfolio-empty .eyebrow{margin-bottom:18px}.hero:has(.portfolio-empty){padding-bottom:100px}.filter-empty{padding:25px 0;color:var(--muted)}
.project-header{padding-top:48px;padding-bottom:45px}.project-back{margin-bottom:56px;gap:17px}.project-header>.eyebrow{margin-bottom:22px;color:var(--muted)}.project-header h1{max-width:1180px;font-size:clamp(46px,6.3vw,100px);line-height:1.05;letter-spacing:-.055em;overflow-wrap:anywhere}.project-deck{font-size:19px;line-height:1.65;max-width:780px;margin-top:30px;color:var(--muted)}.project-cover>img{width:100%;height:auto;max-height:1000px;object-fit:contain;object-position:center;background:transparent}.project-cover figcaption,.project-gallery figcaption{font-size:11px;color:var(--muted);line-height:1.8;padding-top:14px}.project-body{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,.8fr);gap:110px;padding-top:64px;padding-bottom:68px}.project-description{min-width:0}.project-information{border-top:1px solid var(--line);padding-top:22px;align-self:start}.project-information h2{margin:0 0 25px}.project-information dl{margin:0;display:grid;grid-template-columns:minmax(80px,1fr) minmax(0,1.6fr);gap:16px 20px;font-size:12px;line-height:1.8}.project-information dt{color:var(--muted)}.project-information dd{margin:0;overflow-wrap:anywhere}.project-terms{display:flex;flex-wrap:wrap;gap:6px 12px}.project-terms a{text-decoration:underline;text-underline-offset:4px}.project-gallery{display:grid;gap:52px;padding-bottom:70px}.project-gallery figure{margin:0}.project-gallery img{width:100%;height:auto;max-height:1200px;object-fit:contain}.project-gallery a:focus-visible{display:block}.project-navigation{padding-bottom:25px}.project-navigation .nav-links{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--line);padding-top:30px}.project-navigation .nav-next{text-align:right;grid-column:2}.project-navigation .nav-subtitle{display:block;font-size:10px;color:var(--muted);margin-bottom:8px}.project-navigation .nav-title{font-size:19px;line-height:1.35}.project-navigation a:hover .nav-title{text-decoration:underline;text-underline-offset:5px}.project-archive{padding-top:66px;padding-bottom:90px}.archive-header{margin-bottom:60px}.archive-header>.eyebrow{color:var(--muted);margin-bottom:24px}.archive-header h1{font-size:clamp(52px,6.5vw,96px);line-height:1.05;letter-spacing:-.055em}.archive-header h1 em{color:var(--warm)}.archive-header .project-filters{margin-top:34px}.archive-description{margin-top:25px;max-width:720px}.project-grid--archive{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:65px}.project-grid--archive .project-card{padding-top:0!important}
.entry-shell{padding-top:62px;padding-bottom:90px;min-height:60vh}.entry-header{max-width:980px;margin-bottom:42px}.entry-header>.eyebrow{margin-bottom:20px;color:var(--muted)}.entry-header h1,.entry-shell>h1{font-size:clamp(46px,6vw,88px);line-height:1.08;letter-spacing:-.05em;overflow-wrap:anywhere}.entry-meta{margin-top:20px;color:var(--muted);font-size:11px}.entry-thumbnail{margin-bottom:40px}.entry-thumbnail img{width:100%;height:auto;max-height:760px;object-fit:contain}.entry-content{font-size:16px;line-height:1.9;overflow-wrap:anywhere}.entry-content>*{margin-top:0;margin-bottom:1.6em}.entry-content>:last-child{margin-bottom:0}.entry-content h2{font-size:clamp(32px,3.4vw,48px);line-height:1.15;letter-spacing:-.04em;margin-top:1.35em}.entry-content h3{font-size:27px;line-height:1.3;margin-top:1.4em;letter-spacing:-.025em}.entry-content h4{font-size:20px;line-height:1.4;margin-top:1.4em}.entry-content a{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.entry-content ul,.entry-content ol{padding-left:1.5em}.entry-content li+li{margin-top:.5em}.entry-content blockquote{border-left:2px solid var(--warm);padding:5px 0 5px 26px;margin-left:0;color:var(--warm);font-family:var(--serif);font-size:29px;line-height:1.45}.entry-content table{border-collapse:collapse;max-width:100%}.entry-content td,.entry-content th{border:1px solid var(--line);padding:10px 14px}.entry-content pre{overflow:auto;padding:20px;background:#e9e4dc;white-space:pre-wrap;font-size:13px}.entry-content iframe,.entry-content video{max-width:100%}.entry-content figure{margin-left:0;margin-right:0}.entry-content figcaption,.wp-caption-text{font-size:12px;line-height:1.65;color:var(--muted);margin-top:10px}.entry-content .aligncenter{margin-left:auto;margin-right:auto}.entry-content .alignleft{float:left;margin-right:24px}.entry-content .alignright{float:right;margin-left:24px}.entry-content::after{content:'';display:table;clear:both}.entry-content .wp-block-button__link{text-decoration:none;font-family:var(--sans);border-radius:0;background:var(--warm);color:#fff}.entry-content .wp-block-image img{height:auto}.entry-content .wp-block-gallery{margin-top:30px;margin-bottom:30px}.generic-content{max-width:900px}.generic-content .alignwide{max-width:100%}.generic-content .alignfull{max-width:100%}.entry-list{display:grid;gap:50px}.entry-list .entry-summary{border-top:1px solid var(--line);padding-top:30px;max-width:960px}.entry-summary h2{font-size:34px;line-height:1.2;letter-spacing:-.04em;margin-bottom:14px}.entry-summary h2 a:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.entry-summary>p{color:var(--muted);font-size:14px;max-width:720px}.entry-summary .text-link{margin-top:22px}.entry-summary .entry-meta{margin-top:10px;margin-bottom:20px}.entry-summary .summary-image{display:block;max-width:680px;margin-bottom:25px}.entry-summary .summary-image img{width:100%;height:auto}.navigation.pagination{margin-top:60px;border-top:1px solid var(--line);padding-top:28px}.pagination .nav-links{display:flex;align-items:center;flex-wrap:wrap;gap:13px}.pagination .page-numbers{display:block;min-width:36px;text-align:center;padding:7px 10px}.pagination .current{background:var(--warm);color:#fff}.page-links{display:flex;gap:13px;margin-top:35px;font-size:13px}.no-results>p{max-width:640px;margin:24px 0}.search-form{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-top:24px}.search-form label{display:block;flex:1;max-width:540px;min-width:160px}.search-field,.comment-form input:not([type=submit]):not([type=checkbox]),.comment-form textarea,.post-password-form input[type=password]{width:100%;font:inherit;border:1px solid var(--line);border-radius:0;padding:12px;background:transparent;color:var(--ink)}.search-submit,.comment-form input[type=submit],.post-password-form input[type=submit]{font:inherit;background:var(--warm);color:#fff;border:0;padding:14px 24px;cursor:pointer}.search-submit:hover,.comment-form input[type=submit]:hover{background:var(--ink)}input:focus-visible,textarea:focus-visible{outline:2px solid var(--warm);outline-offset:3px}.not-found .error-number{font-family:var(--serif);font-size:80px;color:var(--warm);margin-bottom:20px}.not-found .text-link{margin-top:20px}.comments-area{max-width:900px;border-top:1px solid var(--line);margin-top:65px;padding-top:35px}.comments-title,.comment-reply-title{font-size:27px;line-height:1.3;margin-bottom:25px}.comment-list{list-style:none;padding:0}.comment-list .children{list-style:none;border-left:1px solid var(--line);margin-left:12px;padding-left:24px}.comment-body{padding:20px 0;border-bottom:1px solid var(--line)}.comment-author{display:flex;gap:12px;align-items:center;font-size:13px}.comment-author img{border-radius:50%}.comment-metadata,.comment-reply-link{font-size:11px;color:var(--muted)}.comment-content{margin-top:15px}.comment-form p{margin:0 0 20px}.comment-form label{display:block;font-size:12px;margin-bottom:7px}.comment-form-cookies-consent{display:flex;align-items:flex-start;gap:12px}.comment-form-cookies-consent label{line-height:1.6}.form-allowed-tags{font-size:11px}.bypostauthor>.comment-body{border-left:2px solid var(--warm);padding-left:20px}.sticky .entry-summary{border-top-color:var(--warm)}

@media(min-width:1101px){.project-grid:not(.is-filtered):not(.project-grid--archive)>.project-card:nth-child(2){padding-top:80px}.project-grid--expanded:not(.is-filtered)>.project-card:nth-child(3n+2){padding-top:80px}.project-grid--expanded:not(.is-filtered)>.project-card:nth-child(3n){padding-top:160px}.project-grid--expanded:not(.is-filtered){row-gap:75px}}
@media(max-width:1100px){.project-body{gap:55px}.primary-menu{gap:22px}.brand-mark--custom{width:80px}}
@media(max-width:760px){.brand-mark--custom{width:68px}.brand-descriptor{max-width:150px}.primary-menu{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%}.primary-menu>li{width:100%}.primary-menu a{display:block}.ccw-js .site-header.menu-open .primary-nav{display:flex}.ccw-theme .project-card{padding-top:0!important}.hero:has(.portfolio-empty){padding-bottom:55px}.portfolio-empty{padding:45px 0}.feature-caption .caption-link{font-size:0}.feature-caption .caption-link span{font-size:26px}.project-header{padding-top:30px;padding-bottom:30px}.project-back{margin-bottom:37px}.project-header h1{font-size:clamp(37px,9vw,60px);letter-spacing:-.045em}.project-header>.eyebrow{margin-bottom:17px;font-size:9px}.project-deck{font-size:15px;margin-top:22px}.project-cover figcaption,.project-gallery figcaption{font-size:10px}.project-body{grid-template-columns:1fr;gap:35px;padding-top:35px;padding-bottom:40px}.entry-content{font-size:14px;line-height:1.9}.project-information dl{font-size:11px;grid-template-columns:1fr 1.7fr}.project-gallery{gap:32px;padding-bottom:45px}.project-navigation .nav-links{gap:25px}.project-navigation .nav-title{font-size:15px}.project-navigation .nav-subtitle{font-size:9px}.project-archive{padding-top:42px;padding-bottom:55px}.archive-header{margin-bottom:40px}.archive-header h1{font-size:48px}.archive-header .project-filters{margin-top:26px}.project-grid--archive{grid-template-columns:1fr;gap:44px}.entry-shell{padding-top:40px;padding-bottom:55px}.entry-header{margin-bottom:30px}.entry-header h1,.entry-shell>h1{font-size:42px}.entry-summary h2{font-size:28px}.entry-content blockquote{font-size:25px}.entry-content h2{font-size:31px}.entry-content h3{font-size:25px}.footer-menu{order:3;width:calc(100% - 50px);font-size:10px}.site-footer>p{max-width:none}.search-form{align-items:stretch;flex-direction:column}.search-form label{max-width:none}.search-submit{align-self:flex-start}.project-information{margin-top:8px}}
@media(max-width:760px){html:not(.ccw-js) .site-header{height:auto;min-height:106px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px;gap:12px}html:not(.ccw-js) .primary-nav{display:flex;position:static;padding:8px 0 0;border:0;flex-wrap:wrap;gap:4px 18px;width:100%;background:transparent}html:not(.ccw-js) .primary-nav a{font-size:13px}html:not(.ccw-js) .primary-nav .nav-contact{justify-content:start;gap:12px}html:not(.ccw-js) .primary-menu{flex-direction:row;flex-wrap:wrap;gap:4px 18px}html:not(.ccw-js) .primary-menu>li{width:auto}}
