/*
Theme Name: OndaSuOnda Festival
Theme URI: https://www.ondasuondamusicfestival.com/
Author: OndaSuOnda Music Festival
Description: Il sito OndaSuOnda approvato, con programma 2026, immagini, mappa e contatti già inclusi. Tema autonomo: non richiede Elementor o altri plugin.
Version: 1.0.0
Requires at least: 5.2
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ondasuonda-festival
*/
@font-face{font-family:'Barlow Condensed';font-weight:800;font-display:swap;src:url('assets/barlow-800.ttf') format('truetype');}
@font-face{font-family:'DM Sans';font-weight:400;font-display:swap;src:url('assets/dm-sans-400.ttf') format('truetype');}
@font-face{font-family:Festival;src:local('Barlow Condensed'),local('Impact');font-weight:700 900;font-display:swap}
:root{--ink:#101917;--paper:#f4f1e8;--orange:#fa673c;--line:#d3d5c9;--muted:#57625c;--font-display:'Barlow Condensed',Festival,'Arial Narrow',Impact,sans-serif;--font-body:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:.96;font-family:var(--font-display);font-weight:800}p+p{margin-top:18px}.wrap{width:min(1280px,calc(100% - 100px));margin:auto}.section-space{padding:100px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.15em;color:#e8eee8;line-height:1.5}.eyebrow.dark{color:var(--ink)}.skip-link{position:fixed;left:20px;top:-100px;padding:12px;background:var(--paper);z-index:100}.skip-link:focus{top:15px}.site-header{position:sticky;top:0;z-index:20;background:var(--ink);color:var(--paper);height:82px;display:flex;align-items:center;justify-content:space-between;gap:35px;padding:0 50px;border-bottom:1px solid #ffffff1f}.brand{width:355px;flex-shrink:0}.brand img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:500}.site-header nav a{transition:color .18s}.site-header nav a:hover{color:var(--orange)}.nav-contact{border-bottom:1px solid #7e8881;padding-bottom:4px}.nav-contact span{margin-left:15px}.menu-toggle{display:none}.hero{position:relative;min-height:745px;color:var(--paper);background:#101917;overflow:hidden}.hero-image{position:absolute;right:0;top:0;width:74%;height:100%;object-fit:cover;object-position:58% 48%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#101917 0%,#101917ed 23%,#1019173d 60%,#10191705 85%),linear-gradient(0deg,#101917b3 0%,transparent 35%)}.hero-content{position:relative;padding-top:54px;padding-bottom:112px}.live-dot{display:inline-block;width:7px;height:7px;background:var(--orange);border-radius:50%;margin-right:9px;vertical-align:middle}.hero h1{font-size:clamp(82px,9.9vw,146px);letter-spacing:-.018em;line-height:.89;margin-top:25px}.hero h1 span{color:var(--orange)}.hero-intro{font-size:17px;line-height:1.5;margin:24px 0 26px;color:#e0e4dc}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;font-size:13px;font-weight:700;padding:16px 21px;min-height:53px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-orange{background:var(--orange);color:var(--ink)}.button-orange:hover{background:#ff845d}.button span{font-size:23px;line-height:1}.edition-seal{position:absolute;right:7%;bottom:105px;border-radius:50%;width:148px;height:148px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--paper);color:var(--ink);transform:rotate(9deg);border:1px solid #f4f1e8;outline:1px solid #f4f1e8;outline-offset:7px}.edition-seal strong{font-family:var(--font-display);font-size:73px;line-height:1}.edition-seal span{font-size:10px;letter-spacing:.13em;font-weight:700}.photo-label{position:absolute;right:26px;top:35px;writing-mode:vertical-rl;letter-spacing:.15em;font-size:9px;color:#fff}.hero-bottom{position:absolute;bottom:0;left:0;width:100%;border-top:1px solid #ffffff38;display:flex;align-items:center;justify-content:space-between;padding:22px 50px;font-size:10px;font-weight:600;letter-spacing:.12em}.hero-bottom a{display:flex;align-items:center;gap:25px}.hero-bottom a span{font-size:20px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:48px}h2{font-size:clamp(44px,5vw,70px);letter-spacing:-.014em}.section-heading h2{margin-top:16px}.program-note{font-size:13px;line-height:1.7;min-width:265px}.program-note p{margin-top:13px}.pill{display:inline-block;border:1px solid #94a196;padding:4px 10px;font-size:10px;font-weight:700;letter-spacing:.12em}.muted{color:var(--muted);font-size:13px}.concert{border-top:1px solid var(--line);scroll-margin-top:95px}.concert:last-child{border-bottom:1px solid var(--line)}summary{list-style:none}summary::-webkit-details-marker{display:none}.concert summary{display:grid;grid-template-columns:165px 1fr 65px 35px;align-items:center;gap:30px;padding:27px 0;cursor:pointer}.concert summary:hover h3{color:#b73512}.concert-date{display:flex;align-items:center;gap:18px}.concert-date strong{font-family:var(--font-display);font-size:66px;line-height:1;letter-spacing:-.04em}.concert-date span{font-size:10px;font-weight:700;line-height:1.6;letter-spacing:.04em}.genre{font-size:9px;font-weight:700;letter-spacing:.13em;color:#59665d;display:block;margin-bottom:8px}.concert-title h3{font-size:39px;transition:color .2s}.concert-title p{font-size:12px;margin-top:7px;color:var(--muted)}.concert-time{font-size:12px;color:var(--muted)}.expand{width:34px;height:34px;border:1px solid #abb4aa;border-radius:50%;display:grid;place-items:center;font-size:24px;font-weight:400;line-height:1;transition:transform .2s,background .2s}.concert[open] .expand{transform:rotate(45deg);background:var(--orange);border-color:var(--orange)}.concert-detail{display:grid;grid-template-columns:1fr 1.1fr;gap:45px;align-items:center;padding:12px 0 38px 195px}.concert-detail img{width:100%;height:260px;object-fit:cover}.concert-detail h4{font-size:33px;margin:15px 0}.concert-detail p{font-size:13px}.concert-detail .eyebrow{font-size:9px}.detail-place{border-top:1px solid var(--line);padding-top:14px;font-size:11px!important;color:var(--muted)}.concert-type-art{background:#b8c8bb;padding:30px;font-family:var(--font-display);font-size:67px;line-height:.9;font-weight:800;min-height:260px;display:flex;align-items:center}.concert-type-art.cuba{background:#f0bc5b;font-size:54px}.program-footer{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);margin-top:25px}.program-footer a{color:var(--ink);border-bottom:1px solid #929b8f;padding-bottom:2px}.festival-section{background:var(--orange);position:relative;overflow:hidden}.festival-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:110px}.festival-grid h2{margin-top:23px;font-size:clamp(50px,5.2vw,76px)}.waves{width:100%;max-width:410px;margin-top:30px;height:75px}.festival-copy{padding-top:30px}.festival-copy .lead{font-size:25px;line-height:1.25;font-weight:600;letter-spacing:-.03em;margin-bottom:27px}.festival-copy>p:not(.lead){font-size:14px;max-width:440px}.festival-signature{margin-top:32px;border-top:1px solid #111e1740;padding-top:20px;display:flex;flex-direction:column;gap:2px;font-size:11px}.festival-signature strong{font-size:15px}.place-section{position:relative;min-height:540px;color:var(--paper);background:#164b55}.place-section>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 58%}.place-overlay{position:absolute;inset:0;background:linear-gradient(0deg,#092528df 0%,#09252885 52%,#09252815 100%)}.place-content{position:relative;min-height:540px;display:flex;justify-content:space-between;align-items:flex-end;gap:50px;padding-top:75px;padding-bottom:65px}.place-content h2{font-size:clamp(60px,6vw,90px);margin-top:18px}.place-info{max-width:350px;width:100%}.place-info h3{font-family:var(--font-body);font-size:21px;font-weight:600;line-height:1.3}.place-info p{font-size:14px;margin:12px 0 23px}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#fff}.place-discover{display:block;margin-top:16px;font-size:12px;text-decoration:underline;text-underline-offset:4px}.partners-section{padding:55px 0 60px}.partners{margin-top:30px;display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.partners>div{border-left:1px solid var(--line);padding-left:25px}.partners>div:first-child{border:0;padding:0}.partners span{font-size:8px;letter-spacing:.08em;color:var(--muted);display:block;margin-bottom:10px}.partners strong{font-size:17px;line-height:1.3;font-weight:600}.site-footer{background:var(--ink);color:var(--paper);padding:75px 0 25px}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-bottom:65px}.footer-top h2{margin-top:17px;font-size:clamp(50px,5vw,68px)}.social-link{border-top:1px solid #4b5850;border-bottom:1px solid #4b5850;padding:18px 0;display:flex;align-items:center;justify-content:space-between;font-size:14px}.social-link>span:last-child{font-size:25px;color:var(--orange)}.contact-label{font-size:8px;letter-spacing:.1em;color:#a4b0a7;display:block;margin-top:27px}.email{font-size:15px;display:block;margin-top:5px;overflow-wrap:anywhere}.email span{color:var(--orange);margin-left:10px}.footer-contact p{font-size:11px;color:#a4b0a7;margin-top:13px}.footer-bottom{border-top:1px solid #ffffff26;padding-top:22px;display:flex;justify-content:space-between;gap:25px;font-size:10px;color:#b4bfb5}.footer-bottom>div{display:flex;gap:30px}.text-button{color:inherit;padding:0;border:0;background:none;font-size:inherit}.text-button:hover,.footer-bottom a:hover{color:white}dialog{width:min(600px,calc(100% - 32px));padding:32px;border:1px solid var(--line);background:var(--paper);color:var(--ink);max-height:80vh}dialog::backdrop{background:#05120cba;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.dialog-heading h2{font-family:var(--font-body);font-size:25px;line-height:1.2}.dialog-heading button{font-size:30px;background:none;border:0;color:var(--ink)}dialog p,dialog li{font-size:13px}dialog ul{padding-left:18px}dialog li{margin:10px 0}dialog a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:1600px){.hero-image{width:68%}.hero-content{padding-top:70px}.hero{min-height:820px}.hero h1{font-size:155px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.site-header{padding:0 32px}.brand{width:300px}.site-header nav{gap:20px;font-size:11px}.hero-bottom{padding:20px 32px}.hero{min-height:680px}.hero h1{font-size:110px}.festival-grid{gap:60px}.concert summary{grid-template-columns:135px 1fr 45px 35px;gap:20px}.concert-detail{padding-left:155px;gap:25px}.concert-title h3{font-size:33px}.concert-detail h4{font-size:28px}.section-space{padding:80px 0}.concert-type-art{font-size:48px}.concert-type-art.cuba{font-size:40px}.footer-top{gap:50px}}
@media(max-width:760px){html{scroll-padding-top:75px}.wrap{width:calc(100% - 40px)}.site-header{height:70px;padding:0 20px;gap:15px}.brand{width:235px;max-width:70%}.menu-toggle{display:flex;align-items:center;gap:9px;color:var(--paper);border:0;background:none;font-size:11px;padding:10px 0}.menu-toggle span:last-child{font-size:19px}.site-header nav{display:none;position:absolute;left:0;right:0;top:70px;background:var(--ink);padding:20px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid #ffffff26}.site-header nav.is-open{display:flex}.site-header nav a{padding:14px 0;font-size:15px}.nav-contact{border:0}.hero{min-height:735px}.hero-image{width:100%;object-position:62% center;opacity:.8}.hero-shade{background:linear-gradient(90deg,#101917e8,#10191738),linear-gradient(0deg,#101917 0%,transparent 70%)}.hero-content{padding-top:48px;padding-bottom:108px}.hero h1{font-size:clamp(77px,18vw,114px);margin-top:30px;line-height:.92}.hero-intro{font-size:15px;margin-top:24px}.hero .eyebrow{font-size:9px}.hero .button{font-size:12px;gap:20px}.edition-seal{width:96px;height:96px;right:25px;bottom:102px}.edition-seal strong{font-size:47px}.edition-seal span{font-size:7px}.photo-label{right:10px;top:20px;font-size:7px}.hero-bottom{padding:20px;font-size:8px;gap:15px}.hero-bottom>span:nth-child(2){display:none}.hero-bottom a{gap:15px}.section-space{padding:65px 0}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:51px}.program-note{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:9px 17px;min-width:0}.program-note .pill{grid-column:1/-1;justify-self:start}.program-note p{margin:4px 0 0;font-size:11px}.program-note .muted{font-size:10px}.concert summary{grid-template-columns:72px 1fr 28px;gap:14px;padding:23px 0}.concert-date{display:block}.concert-date strong{font-size:51px}.concert-date span{display:block;font-size:8px;margin-top:3px;line-height:1.5}.concert-title h3{font-size:30px;line-height:1}.genre{font-size:7px;line-height:1.5;letter-spacing:.05em;margin-bottom:7px}.concert-title p{font-size:10px;line-height:1.4;margin-top:7px}.concert-time{display:none}.expand{width:27px;height:27px;font-size:21px}.concert-detail{padding:0 0 28px;grid-template-columns:1fr;gap:23px}.concert-detail img{height:230px}.concert-detail h4{font-size:33px}.concert-type-art{display:none}.program-footer{display:block;font-size:11px;line-height:1.8}.program-footer a{display:table;margin-top:8px}.festival-grid{grid-template-columns:1fr;gap:15px}.festival-grid h2{font-size:56px}.waves{max-width:300px;height:55px;margin-top:25px}.festival-copy{padding-top:10px}.festival-copy .lead{font-size:24px;margin-bottom:23px}.festival-copy>p:not(.lead){font-size:14px}.festival-signature{margin-top:25px}.place-section,.place-content{min-height:620px}.place-content{display:block;padding-top:55px;padding-bottom:45px}.place-content h2{font-size:68px}.place-section>img{object-position:47% center}.place-overlay{background:linear-gradient(0deg,#092528f0,#09252845)}.place-info{margin-top:55px}.place-info h3{font-size:20px}.place-info p{font-size:13px}.partners-section{padding:45px 0}.partners-section .eyebrow{font-size:9px}.partners{grid-template-columns:1fr 1fr;gap:30px 20px}.partners>div,.partners>div:first-child{border:0;border-top:1px solid var(--line);padding:15px 0 0}.partners strong{font-size:15px}.partners span{font-size:7px}.site-footer{padding-top:55px}.footer-top{grid-template-columns:1fr;gap:35px;padding-bottom:40px}.footer-top h2{font-size:58px}.social-link{font-size:13px}.email{font-size:14px}.footer-bottom{flex-direction:column;gap:16px}.footer-bottom>div{justify-content:space-between}.eyebrow{font-size:9px}}
@media(max-width:380px){.hero{min-height:710px}.hero h1{font-size:76px}.edition-seal{bottom:88px;right:22px;width:76px;height:76px}.edition-seal strong{font-size:37px}.edition-seal span{font-size:6px}.concert summary{grid-template-columns:61px 1fr 25px;gap:10px}.concert-title h3{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* WordPress admin bar and standard content pages. */
body.admin-bar .site-header{top:32px}
.wp-content-page{min-height:55vh;max-width:1000px}
.wp-content-page h1{font-size:clamp(42px,6vw,72px);line-height:1.05;margin-bottom:30px}
.wp-content-page h2{font-size:40px;line-height:1.1;margin-bottom:20px}
.wp-content-page article+article{border-top:1px solid var(--line);padding-top:35px;margin-top:35px}
.wp-content-page .entry-content{font-family:var(--font-body);font-size:17px;line-height:1.7}
.wp-content-page .entry-content a{text-decoration:underline}
.wp-content-page .entry-content img{height:auto}
.wp-content-page .button{margin-top:25px}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
@media(max-width:600px){body.admin-bar .site-header{top:0}}
