/*
Theme Name: Michele Marchioro Chess
Version: 0.1.0
Text Domain: mm-chess-theme
*/

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap');
*{box-sizing:border-box}body{margin:0;background:#dedbd3;color:#20251e;font:15px 'DM Sans',system-ui,sans-serif}button,select,input,textarea{font:inherit}button,select{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #dd9951;outline-offset:3px}.tools{padding:15px 4%;display:flex;flex-wrap:wrap;gap:9px;background:#20241f;color:#fff;align-items:center}.tools strong{margin-right:auto}.tools button,.tools select{background:#343d33;color:white;border:1px solid #777d70;border-radius:6px;padding:8px 10px}.tools button[aria-pressed=true]{background:#f6e9d7;color:#231e17}.frame{--paper:#f8f3e9;--ink:#252a21;--muted:#545b4e;--line:#d7cbbc;--accent:#784a2d;--card:#fffaf2;--hero:#e9dfcb;--hill:#c5b498;--ridge:#ad9b7d;--sq1:#eaddc2;--sq2:#92816a;background:var(--paper);color:var(--ink);max-width:1440px;margin:22px auto;min-height:80vh;box-shadow:0 9px 35px #29281924}.frame.night{--paper:#1b2624;--ink:#f9efe0;--muted:#cbcbbd;--line:#57635b;--accent:#f2bf80;--card:#253530;--hero:#223934;--hill:#35554c;--ridge:#49695e;--sq1:#ead9b8;--sq2:#648076}.night .hero{grid-template-columns:1fr;position:relative;min-height:535px;overflow:hidden}.night .hero .intro{z-index:1;max-width:52%;padding-left:8%;background:linear-gradient(90deg,var(--hero) 68%,transparent)}.night .hero .trail{position:absolute;right:0;bottom:0;width:62%}@container(max-width:560px){.night .hero{min-height:auto}.night .hero .intro{max-width:100%;padding:35px 6% 8px;background:none}.night .hero .trail{position:static;width:100%}}.frame.mobile{max-width:390px}.site{container-type:inline-size}.top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 4%;border-bottom:1px solid var(--line)}.brand{font:27px 'Instrument Serif',Georgia,serif;white-space:nowrap}.nav{display:flex;gap:13px;flex-wrap:wrap}.nav button,.menu summary,.link{color:var(--ink);background:none;border:0;padding:5px 0;text-align:left}.nav button[aria-current=page],.link{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.menu{display:none}.hero{display:grid;grid-template-columns: .88fr 1.12fr;min-height:480px;background:var(--hero);align-items:center}.intro{padding:55px 7% 55px 12%}.label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--accent)}h1,h2,h3{font-family:'Instrument Serif',Georgia,serif;font-weight:400;margin:0}h1{font-size:clamp(47px,6vw,94px);line-height:.95}h2{font-size:39px;line-height:1.05}h3{font-size:29px;line-height:1.1}.sub{font-size:26px;margin:16px 0;color:var(--accent)}p{line-height:1.55}.trail{width:100%;display:block}.trail text{font-family:'DM Sans',system-ui;fill:var(--ink);font-weight:700}.trail .small{font-size:14px}.trail .plate{fill:var(--card);stroke:var(--line)}.trail .marker{fill:var(--card);stroke:var(--accent);stroke-width:3}.wrap{max-width:1150px;margin:auto;padding:38px 5% 56px}.wrap>h1{margin:10px 0 24px}.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.split{display:grid;grid-template-columns:1fr 1fr;gap:24px}.card,.note,.filter,.moves{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:18px}.card p,.muted{color:var(--muted)}.stack{display:grid;gap:12px}.section{margin-top:30px}.action{display:inline-block;background:var(--accent);color:var(--paper);border:0;padding:10px 15px;border-radius:5px;font-weight:700;text-decoration:none}.filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:18px 0}.filter label,form label{display:grid;gap:5px}.filter select,input,textarea{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:8px;border-radius:4px;max-width:100%}.meta{color:var(--muted);font-size:14px}.board{display:grid;grid-template-columns:repeat(8,1fr);aspect-ratio:1;width:100%;max-width:480px;border:1px solid var(--line)}.square{display:grid;place-items:center;color:#231f1b;background:var(--sq1);font:clamp(19px,5cqw,47px) 'Segoe UI Symbol',serif}.square.dark{background:var(--sq2)}.square.last{box-shadow:inset 0 0 0 3px #d2a14a}.controls{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.controls button,.moves button{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:5px;padding:8px 10px}.moves button[aria-current=true]{background:var(--accent);color:var(--paper)}.moves details{margin-top:14px}.note{min-height:94px}.note p{margin:6px 0}.footer{border-top:1px solid var(--line);padding:18px 5%;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.footer a,.card a{color:var(--accent)}.doc li{margin:9px 0}
@container(max-width:860px){.nav{display:none}.menu{display:block}.menu button{display:block}.top{align-items:start}}
@container(max-width:560px){.hero,.split,.cols{grid-template-columns:1fr}.hero{min-height:auto}.intro{padding:35px 6% 8px}.wrap{padding:28px 5% 40px}h1{font-size:52px}.trail .small{font-size:16px}.moves{margin-top:0}.board .square{font-size:8cqw}.filter label{flex:1 1 120px}}
 .frame.night.graphite{--paper:#191b1e;--ink:#f5f4f2;--muted:#c7c8cb;--line:#474b52;--accent:#c5d0de;--card:#23262b;--hero:#1f2227;--hill:#343944;--ridge:#4d5562;--sq1:#e2e6ee;--sq2:#8994a6}.frame.night.ocean{--paper:#111c2b;--ink:#f0f6ff;--muted:#c0cee1;--line:#3c526d;--accent:#a4d8ff;--card:#1b2c42;--hero:#15243a;--hill:#243d5d;--ridge:#416383;--sq1:#dbe8f4;--sq2:#789bbb}.frame.night.plum{--paper:#211a27;--ink:#fff2f7;--muted:#d4c4d1;--line:#624e64;--accent:#fac2ce;--card:#302436;--hero:#291e31;--hill:#47334d;--ridge:#694e70;--sq1:#f2dfe7;--sq2:#a17e9c}.frame.night.ember{--paper:#221d1a;--ink:#fbf2e9;--muted:#d6c6b7;--line:#655044;--accent:#ffc297;--card:#322722;--hero:#2b231f;--hill:#4a3832;--ridge:#765348;--sq1:#f1dfcc;--sq2:#aa806c}.site .top{display:block}.brand{white-space:normal;font-size:clamp(27px,4.5cqw,58px);display:flex;align-items:center;gap:16px;margin-bottom:14px}.avatar{width:58px;height:58px;flex:none;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;background:var(--card);font:18px 'DM Sans',sans-serif;object-fit:cover}.nav{border-top:1px solid var(--line);padding-top:10px}.night .hero{position:static;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:visible}.night .hero .intro{max-width:none;background:none;padding:34px 0 35px 8%}.night .hero .trail{width:100%;position:static}.sub small{font-size:16px;color:var(--ink)}.rank{background:var(--accent);color:var(--paper);border-radius:3px;padding:1px 5px;font-size:12px;font-weight:700}.player{margin:8px 0;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.match{margin-bottom:15px}.footer a{display:inline-block;margin:4px 12px 0 0}.trail .small{font-size:17px}@container(max-width:650px){.night .hero{grid-template-columns:1fr}.night .hero .intro{padding:24px 6% 0}.avatar{width:44px;height:44px}.brand{font-size:29px}.footer{display:grid}.trail .small{font-size:21px}}

.frame.night.ocean .top{background:#284967;color:#f3f9ff}.frame.night.ocean .nav,.frame.night.ocean .menu{background:#203a55;margin:0 -4.35% -17px;padding:13px 4%;border-top:1px solid #526e89}.frame.night.ocean .site>.wrap,.frame.night.ocean .hero+.wrap{--paper:#e6f2ff;--ink:#12293e;--muted:#3b556b;--line:#b7cde1;--accent:#204f76;--card:#f6fbff;background:var(--paper);color:var(--ink);max-width:none}.frame.night.ocean .footer{background:#111c2b}.players{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:17px 0}.players .player{display:block;margin:0;min-width:0}.players .player:last-child{text-align:right}.player>strong{font:clamp(22px,3.3cqw,34px) 'Instrument Serif',Georgia,serif;display:block;overflow-wrap:anywhere}.player-meta{font-size:13px;margin-top:4px}.player-meta .rank{font-size:12px;font-weight:700;background:transparent;color:inherit;padding:0}.game-place{font-weight:700}.game-date{display:grid;gap:3px;margin:6px 0;font-size:13px}.game-opening{font-size:13px;font-style:italic;margin:10px 0}.game-result{background:#172d43;color:#f4faff;font-weight:700;text-align:center;padding:6px 8px;border-radius:4px;margin-top:10px}.card:has(.game-result)>.link{margin-top:6px}

.frame.night.ocean{--red:#a52949;--red-light:#f47c96;--red-deep:#8b2440}.frame.night.ocean .top{background:#e1effb;color:#112940}.brand .avatar{border:2px solid #ad4761;box-shadow:0 0 0 3px #f3f8fc,0 4px 10px #142c3a42}.frame.night.ocean .nav,.frame.night.ocean .menu{--ink:#f3f9ff;--accent:#f9b3c2;color:var(--ink)}.nav button,.menu nav button{padding:8px 10px;border-radius:5px}.nav button:hover,.nav button:focus-visible,.menu nav button:hover,.menu nav button:focus-visible{background:var(--red-deep);color:#fff;text-decoration:none}.menu summary{color:#f3f9ff}.red-accent{color:var(--red-light)}.frame.night.ocean .wrap :is(h1,h2,h3),.game-place{color:var(--red-deep)}.latest-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.game-card{position:relative;min-width:0;display:grid;grid-template-rows:auto 1fr auto auto;gap:8px}.game-card:has(.match-open):hover{border-color:var(--red);box-shadow:0 6px 16px #182b411b}.game-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.game-date{margin:0;text-align:right;justify-items:end}.game-date strong,.date-pill{background:var(--red);color:#fff;border-radius:4px;padding:4px 8px;font-size:12px;white-space:nowrap}.players{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;margin:10px 0;gap:10px}.player>strong{font-size:clamp(21px,3.3cqw,37px);line-height:1}.first-name{display:block;margin-top:3px}.player-meta .rank{background:var(--red);color:#fff;border-radius:3px;padding:2px 5px;font:700 11px Arial,sans-serif;white-space:nowrap}.bolt{color:var(--red)}.game-opening{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:0}.game-opening>a:not(.match-open){position:relative;z-index:2}.match-open{border:1px solid var(--line);border-radius:50%;color:var(--red-deep)!important;background:var(--card);min-width:35px;height:35px;display:grid;place-items:center;text-decoration:none;font-style:normal;font-weight:700;flex:none}.match-open::after{content:"";position:absolute;inset:0;z-index:1}.game-result{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;margin:0}.match .game-result{margin-top:10px}.tournament-card{display:grid;grid-template-columns:clamp(64px,12cqw,126px) minmax(0,1fr);gap:16px;align-items:start}.tournament-art{display:grid;place-items:center;aspect-ratio:1;background:linear-gradient(145deg,#294969,#152e47);color:#e8f3ff;border-radius:6px;font-size:clamp(30px,7cqw,60px)}.tournament-content{display:grid;gap:8px}.tournament-content h3{font-size:clamp(23px,4cqw,34px)}.tournament-when{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.tournament-open{justify-self:start;background:#203d59;color:#fff;padding:8px 12px;border:0;border-radius:5px}.tournament-open:hover{background:var(--red-deep)}.tournament-open span{margin-left:8px}.home-lower{display:grid;gap:24px}.home-lower .stack{margin-top:12px}
@container(max-width:740px){.latest-grid{grid-template-columns:1fr}}@container(max-width:420px){.game-top{font-size:13px}.game-card,.tournament-card{padding:13px}.tournament-card{gap:10px}.players{gap:5px}.player-meta{font-size:12px}}

.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.carousel-buttons{display:flex;gap:8px}.carousel-buttons button{background:#203d59;color:#fff;border:0;border-radius:5px;min-width:40px;min-height:40px;font-weight:700}.carousel-buttons button:hover{background:var(--red-deep)}.latest-carousel{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 20px)/2);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 10px;scrollbar-color:var(--accent) var(--paper)}.latest-carousel>.card{scroll-snap-align:start}.latest-carousel:focus-visible{outline:2px solid var(--accent)}.news-photo{margin:0;min-width:0}.news-photo img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#203d59;border-radius:6px}.news-photo figcaption{font-size:11px;color:var(--muted);margin-top:4px}.news-card .date-pill{justify-self:start}.news-card p{margin:0}.news-detail{max-width:740px}.news-detail .news-photo img{aspect-ratio:16/9}.news-lead{font-size:1.2rem;font-weight:600}@container(max-width:740px){.latest-carousel{grid-auto-columns:100%}}
 .archive-games{padding-inline:2px}.match-event{display:block;color:var(--muted);font-weight:500;margin-top:4px}.match .player>strong{overflow-wrap:normal}.board{grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));max-inline-size:480px;aspect-ratio:1 / 1;line-height:1;container-type:inline-size}.board .square{min-width:0;min-height:0;overflow:hidden;font-size:9cqw;line-height:1}

.study-art{display:grid;place-items:center;min-height:126px;background:repeating-conic-gradient(#e0ebf5 0% 25%,#c1d6eb 0% 50%) 50% / 42px 42px;border-radius:6px;color:#243e5d;font:clamp(33px,8cqw,64px) 'Segoe UI Symbol',serif;letter-spacing:.05em;margin-bottom:14px}.study-card:nth-child(2) .study-art{color:#852940}.study-card:nth-child(3) .study-art{color:#2f5a70}.study-card h2{margin-bottom:7px}.stack .card details{margin-top:14px}.service-card{display:flex;flex-direction:column;min-height:clamp(340px,41cqw,480px);gap:12px}.service-card img{width:100%;aspect-ratio:1.7;max-height:265px;object-fit:cover;border-radius:6px;background:#d4e5f4}.service-card p{margin:0}.service-card>.link{margin-top:auto;align-self:flex-start}.reference-links{display:flex;flex-wrap:wrap;gap:4px 12px;overflow-wrap:anywhere}.contact-form{max-width:650px;margin-top:12px}.contact-form fieldset{border:1px solid var(--line);border-radius:5px}.contact-form fieldset label,.contact-form .consent{display:flex;align-items:center;gap:6px}.contact-form [role=status]:empty{display:none}.news-detail li{margin:6px 0}

.event-facts{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 20px;margin-bottom:25px}.event-place,.event-dates{font:clamp(22px,3.5cqw,38px) 'Instrument Serif',Georgia,serif}.event-dates{text-align:right;color:var(--red-deep)}.event-format{grid-column:1/-1;margin:0}.event-format span{padding:0 4px}.result-summary{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.result-summary>div{display:grid;gap:4px;flex:1 1 150px;padding:11px 15px;background:var(--card);border:1px solid var(--line);border-radius:6px}.result-summary strong{font-size:24px;color:var(--red-deep)}.results-scroll{overflow:auto}.results-scroll table{border-collapse:collapse;width:100%;min-width:490px;background:var(--card)}.results-scroll :is(td,th){padding:8px 10px;text-align:left;border-bottom:1px solid var(--line)}.results-scroll :is(thead,tfoot){background:#203d59;color:#fff}.study-card{padding:0}.study-open{padding:18px!important;display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;gap:12px;text-align:left;border:0;background:none;color:var(--red-deep);padding:0;font:32px 'Instrument Serif',Georgia,serif}.study-open img{grid-column:1/-1;width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:6px;background:#c1d6eb}.study-open:hover .study-arrow{transform:translateX(3px)}.contact-social,.social-icons{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.contact-social{padding:4px 0 16px}.contact-email,.social-icon,.footer a.social-icon{display:inline-flex;align-items:center;justify-content:center;margin:0;min-height:42px;color:#fff;background:#234767;border-radius:10px;text-decoration:none;font-weight:700}.social-icon{width:42px;font-size:20px}.contact-email{gap:8px;padding:0 12px;overflow-wrap:anywhere}.contact-email:hover,.social-icon:hover,.footer a.social-icon:hover{background:#8b2440}.club-band{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:16px;padding:13px 16px;border-radius:8px;background:var(--card);border:1px solid var(--line)}.club-logo{position:relative;display:grid;place-items:center;aspect-ratio:1;background:#d7e7f7;border-radius:9px;font:36px 'Instrument Serif',Georgia,serif}.club-logo img{position:absolute;width:100%;height:100%;object-fit:contain;border-radius:9px;background:#fff}.club-logo img:not([src]){display:none}.club-band p{margin:2px 0 4px}.play-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;align-items:start}.play-photo{margin:12px 0 0}.play-photo img{display:block;width:100%;max-height:490px;object-fit:cover;border-radius:10px}.footer .social-icons{margin-top:8px}@container(max-width:650px){.play-grid{grid-template-columns:1fr}.play-photo img{max-height:320px}.club-band{grid-template-columns:55px minmax(0,1fr);gap:12px}.event-place,.event-dates{font-size:23px}}

.contact-social{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;max-width:960px}.contact-address{display:flex;align-items:center;gap:11px;color:var(--ink);min-width:0;text-decoration:none}.contact-address:hover .address-text{text-decoration:underline}.address-text{display:block;color:var(--accent);overflow-wrap:anywhere}.brand-tile{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:10px;background:#234767;color:white;font-weight:700;font-size:20px}.brand-tile:has(img){background:#fff}.brand-tile img{width:32px;height:32px;object-fit:contain}.footer .social-icon{background:transparent}.contact-section{margin-top:28px}.quarta-logo{position:absolute;inset:0;border-radius:9px;background:#efe6dc url("quarta-dimensione-locandina.png") no-repeat;background-size:475% auto;background-position:50% 0}
@container(max-width:670px){.contact-social{grid-template-columns:minmax(0,1fr)}}
.club-logo{overflow:hidden}.club-logo .cortuso-emblem{transform:scale(1.85);transform-origin:center;inset:0}

.site>main>.wrap,.site>main>.hero+.wrap{background:#e6f2ff;color:#12293e;--ink:#12293e;--muted:#3b556b;--line:#b7cde1;--accent:#204f76;--card:#f6fbff;max-width:none}.top a.brand{color:inherit;text-decoration:none}.top nav ul{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}.top nav li>a{color:inherit}.top .menu ul{display:block}.site>main>.wrap :is(h1,h2,h3){color:var(--red-deep)}
.top nav li>a{display:block;padding:8px 10px;border-radius:5px;text-decoration:none}.top nav li>a:hover,.top nav li>a:focus-visible{background:var(--red-deep);color:white}.card a.tournament-open{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;color:white;text-decoration:none}.date-pill:empty{display:none}
