/*
Theme Name: TERRA Editoriale
Description: Home e pagine a blocchi modificabili, navigazione per servizi e archivi originali di TERRA.
Version: 1.6.1
Author: Diego Fontana
Text Domain: terra-editoriale
Requires at least: 6.4
Requires PHP: 7.4
License: GPL-2.0-or-later
*/
@import url('base.css');
.admin-bar .site-header{top:32px}.main-nav ul,.utility-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:25px}.main-nav a{font-size:13px;white-space:nowrap}.main-nav .current-menu-item>a,.utility-nav .current-menu-item>a{color:var(--teal);text-decoration:underline;text-underline-offset:5px}.brand-image .custom-logo-link img{width:245px;max-width:none}.site-main{min-height:55vh}.landing-content>.wp-block-group{margin-block:0}.landing-content .wp-block-group>*{max-width:none}.landing-content .wp-block-image{margin:0}.landing-content .hero-figure{margin-top:16px}.landing-content .hero-art img{width:100%}.hero-figure>.hero-caption{font-size:10px;color:var(--muted);padding-top:12px}.hero-caption a{color:var(--teal)}.landing-content .wp-block-group.wrap{margin-inline:auto}.wp-block-group.service-grid,.wp-block-group.case-grid,.wp-block-group.explore-grid{display:grid}.service h3,.case h3,.explore-card h3{margin-top:0}.case .case-image a{display:block;height:100%}.case .case-image img{height:100%;width:100%}.case .case-category{margin-top:20px}.case h3{font-size:25px;margin-bottom:10px}.case .case-link a,.explore-card .text-link a{text-decoration:none}.about-copy .experience p{margin-bottom:0}.experience .experience-detail{grid-column:2}.landing-content .explore-image{margin-bottom:23px}.explore-image a{display:block;height:100%}.landing-content .explore-image img{width:100%;height:100%}.contact-action p{margin:0!important}.mail-button a{color:var(--ink)}.page-intro{padding-top:65px;padding-bottom:45px}.page-intro h1{font-size:clamp(40px,5vw,66px);max-width:900px}.page-intro .lead{font-size:20px;max-width:760px!important;margin-top:24px;line-height:1.7;color:var(--muted)}.page-section{padding:45px 0 55px;border-top:1px solid var(--line)}.page-section>h2{font-size:34px;margin-bottom:28px}.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.offer-grid h3{font-size:25px;margin-bottom:17px}.offer-grid p{font-size:15px;color:var(--muted);line-height:1.8}.archive-callout{padding:32px;background:var(--soft-green);margin-top:36px!important;border-radius:5px}.archive-callout h3{font-size:27px;margin-bottom:16px}.archive-callout p{margin-top:14px;max-width:750px!important}.archive-callout a{color:var(--teal);text-decoration:underline;text-underline-offset:5px}.content-shell{width:min(820px,calc(100% - 64px));margin:60px auto 80px}.entry-header{margin-bottom:36px}.entry-header h1{font-size:clamp(34px,4vw,54px);overflow-wrap:anywhere}.entry-kicker{font-size:12px;color:var(--teal);margin-bottom:15px}.entry-content{overflow-wrap:anywhere}.entry-content>p,.entry-content>.wp-block-group,.entry-content>figure,.entry-content>ul,.entry-content>ol,.entry-content>div,.entry-content>blockquote{margin-block:22px}.entry-content h2{font-size:32px;margin-block:40px 20px}.entry-content h3{font-size:25px;margin-block:30px 15px}.entry-content p{margin-bottom:20px}.entry-content a:not(.wp-block-button__link){color:var(--teal);text-decoration:underline;text-underline-offset:3px}.entry-content img{max-width:100%;height:auto}.entry-content iframe{max-width:100%}.entry-content figcaption{font-size:12px;color:var(--muted)}.entry-content .aligncenter{margin-inline:auto}.entry-content .wp-caption{max-width:100%}.entry-content .wp-block-image{margin:26px 0}.entry-content .wp-block-embed__wrapper{position:relative}.entry-content .wp-block-columns{gap:35px}.entry-footer{border-top:1px solid var(--line);margin-top:45px;padding-top:20px;font-size:13px}.entry-footer a{color:var(--teal);text-decoration:underline}.post-navigation{margin-top:35px}.nav-links{display:flex;justify-content:space-between;gap:35px}.archive-head{padding:55px 0 35px}.archive-head h1{font-size:48px}.archive-description{max-width:720px;margin-top:20px;color:var(--muted)}.archive-tools{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin:28px 0}.archive-tools a{font-size:13px;border-bottom:1px solid var(--line)}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 30px;padding-bottom:50px}.archive-card figure{aspect-ratio:1.6;background:var(--cream);overflow:hidden;margin-bottom:18px;border-radius:5px}.archive-card img{width:100%;height:100%;object-fit:contain}.archive-card h2{font-size:25px;margin-bottom:14px;line-height:1.25}.archive-card p{font-size:14px;line-height:1.7;color:var(--muted)}.archive-card .entry-kicker{font-size:10px;margin-bottom:10px}.archive-card .text-link{font-size:12px;margin-top:18px}.pagination{padding:15px 0 60px}.pagination .nav-links{justify-content:center;gap:10px}.page-numbers{padding:8px 14px;border:1px solid var(--line);border-radius:4px}.page-numbers.current{background:var(--ink);color:white}.search-form{display:flex;gap:8px;max-width:450px}.search-form label{flex:1}.search-field{background:white;border:1px solid #a4b5aa;border-radius:4px;padding:10px;font:inherit;width:100%}.search-submit{border:0;border-radius:4px;background:var(--ink);color:#fff;padding:10px 16px;cursor:pointer}.footer{flex-wrap:wrap}.footer .footer-secondary{width:100%;display:flex;gap:20px;flex-wrap:wrap}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{clip:auto;width:auto;height:auto;margin:0;padding:12px;background:white;z-index:999}.wp-block-button__link{background:var(--teal);color:white;border-radius:4px;font:inherit;padding:12px 22px}.editor-styles-wrapper{font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper)}
@media(max-width:1000px){.main-nav ul,.utility-nav ul{gap:17px}.main-nav a{font-size:11px}}
@media(max-width:820px){.main-nav ul{flex-direction:column;align-items:flex-start;gap:12px}.main-nav a{font-size:17px}.utility-nav ul{gap:25px}.offer-grid{grid-template-columns:1fr;gap:30px}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-intro{padding-top:40px}.page-intro .lead{font-size:18px}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){.admin-bar .site-header{top:0}.wp-block-group.service-grid,.wp-block-group.case-grid,.wp-block-group.explore-grid{display:flex}.landing-content .hero-figure{margin-top:0}.content-shell{width:calc(100% - 44px);margin-top:36px}.entry-header h1{font-size:36px}.entry-content h2{font-size:28px}.archive-grid{grid-template-columns:1fr;gap:35px}.archive-head h1{font-size:36px}.archive-callout{padding:24px}.page-section{padding-block:32px}.page-section>h2{font-size:29px}.experience .experience-detail{font-size:11px}.hero-figure>.hero-caption{font-size:10px}.nav-links{flex-wrap:wrap}.page-intro h1{font-size:40px}.footer .footer-secondary{gap:14px}}

.terra-brick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:24px}.terra-brick-grid a{display:flex;flex-direction:column;justify-content:flex-end;gap:.65rem}.terra-brick-grid img{width:100%;height:160px;object-fit:contain;background:var(--cream)}.terra-index{padding-inline-start:1.3rem}.terra-index li{margin-bottom:.65rem}.experience .experience-value{display:block}.experience-value p+p{margin-top:.5rem}.experience>div>p:first-child{color:var(--teal)}.experience .experience-value p{color:var(--ink)}.hero-art figure,.case-image figure{margin:0}.hero-figure .hero-caption{font-size:12px}.hero-caption a{margin-left:.5em}.brand-image img{object-fit:initial}.landing-content .case-image figure,.landing-content .explore-image figure{height:100%}.landing-content .hero-art img{object-fit:contain}.landing-content .hero-copy>.text-link,.landing-content .service>.text-link{display:table}.landing-content .wp-block-image img{max-width:100%}@media(max-width:620px){.experience>div{display:block}.experience>div>p:first-child{margin-bottom:.25em}.experience>div+div{margin-top:.65em}}

/* Keep the editorial typography independent of historic plugin font rules. */
body .site-main h1,body .site-main h2,body .site-main h3{font-family:Onest,Inter,Arial,sans-serif!important;text-transform:none!important;color:var(--ink)}
body .site-main p,body .site-main li{font-family:Inter,Arial,sans-serif!important}
.home .landing-content>.sharedaddy,.page .entry-content>.sharedaddy{display:none}
.terra-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 24px;align-items:start;margin:28px 0 45px}.terra-card{min-width:0;border-top:1px solid var(--line);padding-top:12px}.terra-card a,.reader .terra-card a,.entry-content .terra-card a{display:block;color:var(--ink);text-decoration:none}.terra-cover{background:#eeede7;aspect-ratio:3/2;overflow:hidden}.terra-cover img,.entry-content .terra-cover img{display:block;width:100%;height:100%;object-fit:cover}.terra-card h3,.reader .terra-card h3,.entry-content .terra-card h3{font-size:clamp(18px,1.6vw,24px);line-height:1.25;letter-spacing:-.025em;margin:14px 0 6px}.terra-card a:hover h3{color:var(--teal);text-decoration:underline;text-underline-offset:3px}.terra-card p,.reader .terra-card p,.entry-content .terra-card p{font-size:14px;line-height:1.55;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.reader:has(.terra-cards),.content-shell:has(.terra-cards){width:min(1184px,calc(100% - 64px))}.reader:has(.terra-cards)>p,.content-shell:has(.terra-cards) .entry-content>p{max-width:800px}.terra-all a{color:var(--teal);text-decoration:underline;text-underline-offset:4px}.terra-all{margin:20px 0}.terra-card a:focus-visible{outline:2px solid var(--teal);outline-offset:4px}@media(max-width:980px){.terra-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.terra-cards{grid-template-columns:minmax(0,1fr);gap:28px}.reader:has(.terra-cards),.content-shell:has(.terra-cards){width:calc(100% - 40px)}}
.terra-books{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:2.5rem 1.5rem;align-items:start}.terra-book figure{margin:0!important}.terra-book figure a{display:block}.terra-book figure img{width:100%;height:245px;object-fit:contain}.terra-book h2{margin:.8rem 0 .3rem;font-size:1.45rem}.terra-book p{margin:.2rem 0;line-height:1.45}.contact .terra-other{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1.3rem 0 0;font-size:1.1rem}.contact .terra-other a{color:inherit;text-underline-offset:.22em}
.models-grid,.terra-brick-grid.models-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem 1rem}.models-grid>a,.terra-brick-grid.models-grid>a{display:block;min-width:0;text-decoration:none}.models-grid img,.terra-brick-grid.models-grid img,.models-grid canvas{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;display:block;margin:0}.models-grid canvas+img{display:none!important}.models-grid span{display:block;font-weight:650;margin:.6rem 0 .25rem;text-decoration:underline;text-underline-offset:.18em}.models-grid p{font-size:.96rem;line-height:1.45;margin:.3rem 0;font-weight:400}.fennec-photo,.wp-block-image.fennec-photo{margin:1rem 0;max-width:420px}.fennec-photo img{width:100%;height:auto;display:block}
@media(max-width:980px){.models-grid,.terra-brick-grid.models-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.models-grid,.terra-brick-grid.models-grid{grid-template-columns:1fr}}
.terra-portals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;margin-top:3rem;padding-top:2.6rem;border-top:1px solid rgba(255,255,255,.3)}
.terra-portal{display:grid;grid-template-columns:42% 1fr;align-items:center;gap:1.5rem;min-width:0}
.terra-portal figure{margin:0!important;overflow:hidden}.terra-portal figure a{display:block}.terra-portal figure img{width:100%;height:220px;object-fit:contain;display:block}
.terra-portal:nth-child(2) figure img{object-fit:cover;border-radius:2px}
.contact .terra-portal h2{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.12;margin:0 0 .8rem}.contact .terra-portal a{color:inherit;text-decoration:none}.contact .terra-portal p{font-size:1rem;line-height:1.55;margin:0;max-width:26ch}.terra-portal a:hover{text-decoration:underline;text-underline-offset:.2em}
.terra-contributions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.terra-narrative{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.terra-contribution{border-top:1px solid #b9c5bb;padding-top:1.2rem}.terra-contribution h3{font-size:1.5rem;margin-top:0}.terra-contribution p{font-size:1rem;line-height:1.6}
.terra-type-cover{display:flex;align-items:center;justify-content:center;background:#dce7df;padding:1.4rem;color:#174c43}.terra-type-cover span{font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.2;font-weight:650;overflow-wrap:anywhere;text-align:center}
.reader>.wp-block-image img,.entry-content>.wp-block-image img{max-height:850px;width:auto;max-width:100%;object-fit:contain}
@media(max-width:980px){.terra-portals{gap:2rem}.terra-portal{grid-template-columns:1fr;gap:1rem}.terra-portal figure img{height:200px}.terra-portal:nth-child(2) figure img{object-fit:contain}.terra-portal p{max-width:none}.terra-narrative{grid-template-columns:1fr}}
@media(max-width:620px){.terra-portals,.terra-contributions{grid-template-columns:1fr}.terra-portal{grid-template-columns:38% 1fr;gap:1rem}.terra-portal figure img{height:165px}.contact .terra-portal h2{font-size:1.75rem}}

.terra-extra-cover{height:250px;display:flex;justify-content:flex-start;margin:0 0 24px}.terra-extra-cover img{height:100%;width:auto;max-width:100%;object-fit:contain}.terra-kit-callout{background:#e2ece6;padding:22px 28px;border-left:4px solid #007f75;margin:20px 0 36px}.terra-kit-badge{display:inline-block;font-size:14px;font-weight:600;color:#007369;background:#e2ece6;padding:7px 12px;border-radius:3px}.terra-physical-kits{background:#e8ece4;padding:36px;margin:36px 0 60px}.terra-kit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.terra-kit-grid img{width:100%;aspect-ratio:1;object-fit:contain;background:#f4f2eb}.terra-kit-grid h3{font-size:20px}.terra-kit-grid p{font-size:15px}@media(max-width:700px){.terra-kit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.terra-physical-kits{padding:20px}}

.terra-kit-grid img,.terra-kit-grid canvas{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;display:block}.terra-kit-grid canvas+img{display:none!important}

/* Explicit contrast for headings inside the green contact band. */
.contact h2,.contact h3,.contact .terra-portal h2 a{color:#f5f3e9;}
