/*
Theme Name: Musikologiamo Theme Editorial
Theme URI: https://www.musikologiamo.it/
Author: Musikologiamo APS
Description: Versione editoriale/culturale per Musikologiamo®. Homepage ridisegnata, magazine, progetti, responsive, Gutenberg-ready.
Version: 1.4.3
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: musikologiamo
License: GNU General Public License v2 or later
*/

:root{
  --mk-bg:#111214;
  --mk-bg-2:#17191c;
  --mk-panel:#1d2024;
  --mk-paper:#e9e4db;
  --mk-text:#f5f1ea;
  --mk-muted:#a9a6a0;
  --mk-line:rgba(255,255,255,.10);
  --mk-copper:#b98555;
  --mk-copper-soft:#d1a274;
  --mk-max:1260px;
  --mk-radius:24px;
  --mk-shadow:0 24px 80px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--mk-bg);color:var(--mk-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.65;-webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
a:hover{color:var(--mk-copper-soft)}
img{max-width:100%;height:auto;display:block}
button,input,textarea{font:inherit}
.mk-wrap{width:min(calc(100% - 36px),var(--mk-max));margin-inline:auto}

/* HEADER */
.mk-site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(17,18,20,.92);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--mk-line)
}
.mk-header-row{min-height:82px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px}
.mk-brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.02em;white-space:nowrap}
.mk-brand .custom-logo{width:auto;max-height:52px}
.mk-brand-word{font-size:1rem}
.mk-curated-nav{display:flex;justify-content:center;gap:23px;align-items:center}
.mk-curated-nav a{font-size:.88rem;color:#ddd8d0;letter-spacing:.02em}
.mk-curated-nav a:hover{color:#fff}
.mk-header-cta{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border-radius:999px;border:1px solid rgba(185,133,85,.55);color:#fff;font-size:.84rem}
.mk-menu-toggle{display:none;background:none;border:1px solid var(--mk-line);color:#fff;border-radius:12px;padding:9px 11px}

/* HERO */
.mk-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--mk-line)}
.mk-hero-inner{min-height:76vh;display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:60px;padding:115px 0 82px}
.mk-eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.22em;color:var(--mk-copper-soft);font-weight:800}
.mk-hero h1{font-size:clamp(3.7rem,8vw,7.7rem);line-height:.88;letter-spacing:-.06em;margin:.22em 0 .18em;max-width:950px}
.mk-hero-sub{font-size:clamp(1.18rem,2.2vw,1.65rem);color:#c7c2ba;max-width:760px;margin:0}
.mk-hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.mk-hero-tags span{padding:8px 12px;border:1px solid var(--mk-line);border-radius:999px;color:#bfbab2;font-size:.78rem}
.mk-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.mk-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;background:var(--mk-paper);color:#151515;font-weight:800;font-size:.88rem}
.mk-btn:hover{background:#fff;color:#111}
.mk-btn--ghost{background:transparent;color:#fff;border:1px solid var(--mk-line)}
.mk-sound-orbit{position:relative;min-height:380px}
.mk-ring,.mk-ring:before,.mk-ring:after{
  position:absolute;border-radius:50%;border:1px solid rgba(185,133,85,.28);content:""
}
.mk-ring{width:330px;height:330px;right:0;bottom:0;animation:mkFloat 9s ease-in-out infinite}
.mk-ring:before{inset:42px}.mk-ring:after{inset:88px}
.mk-wave{position:absolute;right:42px;bottom:128px;width:250px;height:75px;display:flex;align-items:center;justify-content:space-between;gap:5px;opacity:.75}
.mk-wave i{display:block;width:3px;background:linear-gradient(180deg,var(--mk-copper-soft),rgba(185,133,85,.2));border-radius:4px;animation:mkWave 2.4s ease-in-out infinite}
.mk-wave i:nth-child(2n){animation-delay:-.8s}.mk-wave i:nth-child(3n){animation-delay:-1.3s}
@keyframes mkWave{0%,100%{height:18%}50%{height:95%}}
@keyframes mkFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(3deg)}}

/* SECTIONS */
.mk-section{padding:88px 0}
.mk-section--paper{background:var(--mk-paper);color:#1d1d1c}
.mk-section--alt{background:var(--mk-bg-2)}
.mk-section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:36px}
.mk-section-head h2{font-size:clamp(2.2rem,4vw,4.2rem);line-height:.96;letter-spacing:-.045em;margin:.1em 0 0}
.mk-section-head p{max-width:620px;margin:0;color:var(--mk-muted)}
.mk-section--paper .mk-section-head p{color:#68645e}
.mk-intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}
.mk-intro-stat{font-size:clamp(4rem,10vw,8.5rem);line-height:.8;letter-spacing:-.07em;color:var(--mk-copper);font-weight:850}
.mk-intro-copy h2{font-size:clamp(2rem,4vw,4rem);line-height:1;letter-spacing:-.04em;margin:0 0 20px}
.mk-intro-copy p{font-size:1.08rem;color:#4e4a45;max-width:760px}

/* PROJECTS */
.mk-projects{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:20px}
.mk-project{
  position:relative;min-height:430px;padding:30px;border-radius:var(--mk-radius);
  border:1px solid var(--mk-line);overflow:hidden;
  display:flex;flex-direction:column;justify-content:flex-end;
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.00))
}
.mk-project:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 15%,rgba(185,133,85,.18),transparent 35%);opacity:.9}
.mk-project>*{position:relative;z-index:1}
.mk-project h3{font-size:clamp(1.8rem,3vw,3.2rem);line-height:.95;letter-spacing:-.035em;margin:.3em 0}
.mk-project p{color:var(--mk-muted);max-width:480px}
.mk-project a{display:inline-flex;margin-top:16px;color:var(--mk-copper-soft);font-weight:800}
.mk-project--main{background:linear-gradient(180deg,rgba(185,133,85,.10),rgba(255,255,255,.01))}

/* MAGAZINE */
.mk-magazine-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:22px}
.mk-feature{
  border-radius:var(--mk-radius);overflow:hidden;border:1px solid var(--mk-line);background:var(--mk-panel)
}
.mk-feature-media{aspect-ratio:16/10;overflow:hidden;background:#202327}
.mk-feature-media img{width:100%;height:100%;object-fit:cover}
.mk-feature-body{padding:26px}
.mk-meta{font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;color:var(--mk-copper-soft);font-weight:800}
.mk-feature h3{font-size:clamp(2rem,3.6vw,3.7rem);line-height:.97;letter-spacing:-.045em;margin:.3em 0}
.mk-feature p{color:var(--mk-muted)}
.mk-side-list{display:grid;gap:16px}
.mk-side-card{display:grid;grid-template-columns:130px 1fr;gap:16px;padding:14px;border-radius:18px;border:1px solid var(--mk-line);background:rgba(255,255,255,.02)}
.mk-side-card img{width:130px;height:100px;object-fit:cover;border-radius:12px}
.mk-side-card h4{margin:.25em 0 0;font-size:1rem;line-height:1.15}
.mk-side-card p{display:none}

/* LANGUAGES */
.mk-languages{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border:1px solid var(--mk-line);border-radius:var(--mk-radius);overflow:hidden}
.mk-language{padding:30px;min-height:150px;background:rgba(255,255,255,.02);border-right:1px solid var(--mk-line);border-bottom:1px solid var(--mk-line)}
.mk-language strong{font-size:1.25rem}.mk-language span{display:block;margin-top:8px;color:var(--mk-muted);font-size:.88rem}

/* CTA */
.mk-cta{padding:86px 0;border-top:1px solid var(--mk-line);background:linear-gradient(180deg,#111214,#0b0c0e)}
.mk-cta-row{display:flex;align-items:end;justify-content:space-between;gap:30px}
.mk-cta h2{font-size:clamp(2.4rem,5vw,5.2rem);line-height:.92;letter-spacing:-.05em;margin:.15em 0 0}

/* CONTENT */
.mk-content{max-width:860px;margin:0 auto;padding:70px 16px}
.mk-content h1{font-size:clamp(2.5rem,6vw,5rem);line-height:.98;letter-spacing:-.045em}
.mk-content p,.mk-content li{color:#d6d1c9}
.mk-content a{text-decoration:underline;text-decoration-color:rgba(185,133,85,.55);text-underline-offset:3px}
.mk-archive-head{padding:70px 0 28px}
.mk-archive-head h1{font-size:clamp(2.5rem,6vw,5rem);line-height:.98;letter-spacing:-.045em;margin:0}
.mk-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mk-card{border:1px solid var(--mk-line);border-radius:20px;overflow:hidden;background:var(--mk-panel)}
.mk-card-media{aspect-ratio:16/10;overflow:hidden;background:#222}
.mk-card-media img{width:100%;height:100%;object-fit:cover}
.mk-card-body{padding:20px}.mk-card h3{font-size:1.35rem;line-height:1.08;margin:.4em 0}.mk-card p{color:var(--mk-muted)}
.mk-pagination{display:flex;justify-content:center;padding:36px 0}

/* FOOTER */
.mk-footer{border-top:1px solid var(--mk-line);padding:50px 0 28px;background:#0b0c0e}
.mk-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:30px}
.mk-footer p,.mk-footer li{color:#93908a;font-size:.9rem}
.mk-footer ul{list-style:none;padding:0;margin:0}
.mk-footer-bottom{border-top:1px solid var(--mk-line);margin-top:32px;padding-top:20px;color:#77736e;font-size:.8rem}
.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}

@media(max-width:1040px){
  .mk-curated-nav{gap:15px}.mk-curated-nav a{font-size:.8rem}
  .mk-projects{grid-template-columns:1fr 1fr}.mk-project--main{grid-column:1/-1}
  .mk-languages{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:860px){
  .mk-header-row{grid-template-columns:auto auto}.mk-header-cta{display:none}.mk-menu-toggle{display:block;justify-self:end}.mk-curated-nav{display:none;grid-column:1/-1;flex-direction:column;align-items:flex-start;padding:18px 0;border-top:1px solid var(--mk-line)}.mk-curated-nav.is-open{display:flex}
  .mk-hero-inner{grid-template-columns:1fr;min-height:auto;padding:100px 0 65px}.mk-sound-orbit{display:none}
  .mk-intro-grid{grid-template-columns:1fr;gap:28px}
  .mk-magazine-grid{grid-template-columns:1fr}
  .mk-card-grid{grid-template-columns:1fr 1fr}
  .mk-footer-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .mk-section{padding:62px 0}.mk-projects{grid-template-columns:1fr}.mk-project--main{grid-column:auto}
  .mk-side-card{grid-template-columns:100px 1fr}.mk-side-card img{width:100px;height:82px}
  .mk-languages{grid-template-columns:1fr}.mk-card-grid{grid-template-columns:1fr}.mk-cta-row{align-items:flex-start;flex-direction:column}
}

/* 1.1.2 stabilization fixes */
.custom-logo-link,.mk-site-header .custom-logo{display:none!important}
.mk-header-row{min-height:72px;grid-template-columns:auto 1fr auto;gap:20px}
.mk-brand-stack{display:flex;flex-direction:column;line-height:1.05}
.mk-brand-mark{font-size:1rem;font-weight:850;letter-spacing:.015em}
.mk-brand-sub{font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:#8f8b85;margin-top:4px}
.mk-hero-inner{min-height:560px;padding:92px 0 64px}
.mk-hero h1{font-size:clamp(3.2rem,7vw,6.4rem)}
.mk-sound-orbit{min-height:300px}
.mk-ring{width:280px;height:280px}
.mk-feature--no-image .mk-feature-body{padding:36px;min-height:320px;display:flex;flex-direction:column;justify-content:flex-end}
.mk-feature--no-image h3{font-size:clamp(2.2rem,4vw,4rem)}
.mk-side-card{min-height:126px}
@media(max-width:860px){.mk-brand-sub{display:none}.mk-hero-inner{min-height:auto;padding:86px 0 54px}}


/* 1.1.3 — TYPOGRAPHY & SUPPORT ALIGNMENT */
:root{--mk-font:"Segoe UI",Arial,Helvetica,sans-serif}
html,body,button,input,textarea,select,.mk-site-header,.mk-hero,.mk-section,.mk-footer{font-family:var(--mk-font)!important}
h1,h2,h3,h4,h5,h6,.mk-brand-mark,.mk-btn,.mk-curated-nav a,.mk-eyebrow,.mk-meta,.mk-language strong{font-family:var(--mk-font)!important}
.mk-hero h1{font-size:clamp(3rem,6.3vw,5.7rem);font-weight:700;letter-spacing:-.035em;line-height:.95}
.mk-hero-sub{font-weight:400;letter-spacing:0}
.mk-section-head h2,.mk-intro-copy h2,.mk-cta h2,.mk-content h1,.mk-archive-head h1{font-weight:700;letter-spacing:-.025em;line-height:1.02}
.mk-project h3,.mk-feature h3,.mk-card h3{font-weight:700;letter-spacing:-.015em}
.mk-intro-stat{font-weight:700;letter-spacing:-.04em}
.mk-brand-mark{font-weight:700;letter-spacing:0}
.mk-brand-sub{font-weight:500;letter-spacing:.055em}
.mk-eyebrow,.mk-meta{font-weight:700;letter-spacing:.14em}
.mk-btn{font-weight:700;letter-spacing:0}
.mk-curated-nav a{font-weight:500;letter-spacing:0}
.mk-cta-copy{max-width:680px;color:var(--mk-muted);font-size:1rem;margin:18px 0 0}
.mk-actions--support{justify-content:flex-end;max-width:520px}
.mk-footer h2,.mk-footer h3{font-family:var(--mk-font)!important;font-weight:700;letter-spacing:0}
.mk-footer h3{font-size:1rem;margin:0 0 13px}
.mk-footer-note{margin-top:12px}
.mk-contact-list{display:grid;gap:8px}
.mk-contact-list a{color:#c9c4bc;text-decoration:none}
.mk-contact-list a:hover{color:var(--mk-copper-soft)}
@media(max-width:860px){.mk-actions--support{justify-content:flex-start;max-width:none}}


/* 1.1.4 — layout corrections */
.mk-intro-year{font-size:clamp(1.15rem,2vw,1.5rem);text-transform:uppercase;letter-spacing:.12em;color:var(--mk-copper);font-weight:700}
.mk-intro-year strong{display:block;font-size:clamp(4.2rem,9vw,7.4rem);line-height:.82;letter-spacing:-.045em;text-transform:none;margin-top:12px}

.mk-projects{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.mk-project,.mk-project--main{aspect-ratio:1/1;min-height:0;padding:28px;justify-content:center;align-items:center;text-align:center}
.mk-project h3{font-size:clamp(1.65rem,2.5vw,2.45rem);line-height:1.02;margin:.45em 0 .35em;max-width:100%;overflow-wrap:anywhere}
.mk-project p{max-width:330px;margin:0 auto;color:var(--mk-muted)}
.mk-project a{justify-content:center;margin-top:20px}

.mk-feature-media{aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;background:#111315;padding:14px}
.mk-feature-media img{width:100%;height:100%;object-fit:contain;object-position:center;background:#111315}

.mk-5x1000-section h2{font-size:clamp(2rem,3.6vw,3.7rem);line-height:1.02;margin:.2em 0 .4em;letter-spacing:-.025em}
.mk-5x1000-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:start}
.mk-5x1000-section p{color:#5d5953}
.mk-small-note{font-size:.92rem}.mk-small-note a{text-decoration:underline;text-underline-offset:3px}
.mk-form-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:22px;padding:26px;box-shadow:0 14px 45px rgba(0,0,0,.08)}
.mk-5x1000-form{display:grid;gap:15px}.mk-5x1000-form label{display:grid;gap:7px;font-size:.86rem;font-weight:700;color:#292724}
.mk-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.mk-5x1000-form input,.mk-5x1000-form textarea{width:100%;border:1px solid #d8d1c8;background:#faf8f4;color:#191817;border-radius:12px;padding:12px 13px;outline:none}
.mk-5x1000-form input:focus,.mk-5x1000-form textarea:focus{border-color:var(--mk-copper)}
.mk-check{grid-template-columns:auto 1fr!important;align-items:start!important;font-weight:500!important}.mk-check input{width:auto;margin-top:3px}
.mk-form-status{padding:12px 14px;border-radius:12px;background:#f3e6d9;color:#4b3422;margin-bottom:15px;font-size:.9rem}.mk-form-status--ok{background:#e6efe8;color:#24432b}

@media(max-width:1040px){.mk-projects{grid-template-columns:repeat(3,minmax(0,1fr))}.mk-project--main{grid-column:auto}}
@media(max-width:860px){.mk-projects{grid-template-columns:1fr}.mk-project,.mk-project--main{aspect-ratio:auto;min-height:330px}.mk-5x1000-grid{grid-template-columns:1fr}.mk-form-row{grid-template-columns:1fr}}


/* 1.1.5 — Pagina Chi siamo */
.mk-about-hero{padding:88px 0 58px;border-bottom:1px solid var(--mk-line);background:linear-gradient(180deg,#121316,#0f1012)}
.mk-about-hero h1{font-size:clamp(3.2rem,7vw,6.4rem);line-height:.95;letter-spacing:-.045em;margin:.18em 0}
.mk-about-lead{font-size:clamp(1.12rem,2vw,1.45rem);max-width:850px;color:#c8c3bc;margin:0}
.mk-about-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:64px;align-items:start}
.mk-about-fact{position:sticky;top:110px;padding:28px;border:1px solid var(--mk-line);border-radius:22px;background:rgba(255,255,255,.025)}
.mk-about-fact strong{display:block;font-size:clamp(3.6rem,8vw,6.5rem);line-height:.85;color:var(--mk-copper-soft);letter-spacing:-.05em}
.mk-about-fact span{display:block;margin-top:14px;color:var(--mk-muted)}
.mk-about-copy h2{font-size:clamp(2rem,4vw,3.8rem);line-height:1;letter-spacing:-.035em;margin:0 0 20px}
.mk-about-copy p{color:#d4cfc7;font-size:1.03rem}
.mk-values{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px}
.mk-value{padding:22px;border:1px solid var(--mk-line);border-radius:18px;background:rgba(255,255,255,.02)}
.mk-value h3{margin:0 0 8px;font-size:1.1rem}.mk-value p{font-size:.92rem;color:var(--mk-muted);margin:0}
.mk-timeline{display:grid;gap:0;border-top:1px solid var(--mk-line)}
.mk-timeline-row{display:grid;grid-template-columns:150px 1fr;gap:26px;padding:24px 0;border-bottom:1px solid var(--mk-line)}
.mk-timeline-year{font-size:1.2rem;font-weight:800;color:var(--mk-copper-soft)}
.mk-timeline-row h3{margin:0 0 7px;font-size:1.25rem}.mk-timeline-row p{margin:0;color:var(--mk-muted)}
.mk-about-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
@media(max-width:820px){.mk-about-grid{grid-template-columns:1fr;gap:30px}.mk-about-fact{position:static}.mk-values{grid-template-columns:1fr}.mk-timeline-row{grid-template-columns:1fr;gap:8px}}


/* === 1.2 FUTURE 30 HERO === */
.mk-hero--future30{
  position:relative;
  min-height:clamp(680px,82vh,860px);
  overflow:hidden;
  border-bottom:1px solid var(--mk-line);
  background:#0b0c0e;
}
.mk-hero-bg{position:absolute;inset:0;z-index:0}
.mk-hero-bg img{
  width:100%;height:100%;object-fit:cover;object-position:center;
  filter:saturate(.9) contrast(1.04) brightness(.72);
}
.mk-hero-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(11,12,14,.96) 0%,rgba(11,12,14,.88) 34%,rgba(11,12,14,.40) 63%,rgba(11,12,14,.18) 100%),
    linear-gradient(180deg,rgba(11,12,14,.18),rgba(11,12,14,.24));
}
.mk-hero-inner--future30{
  position:relative;z-index:2;
  min-height:clamp(680px,82vh,860px);
  display:flex;align-items:center;
  padding:110px 0 80px;
}
.mk-hero-copy{max-width:760px}
.mk-hero--future30 h1{
  font-size:clamp(4rem,7.2vw,7.4rem);
  line-height:.90;
  letter-spacing:-.06em;
  margin:.18em 0 .16em;
  text-wrap:balance;
}
.mk-hero--future30 .mk-hero-sub{
  font-size:clamp(1.25rem,2.1vw,1.8rem);
  color:#e7e0d6;
  max-width:720px;
  margin:0;
}
.mk-anniversary-line{
  display:flex;align-items:center;gap:14px;
  margin-top:26px;
  color:var(--mk-copper-soft);
  text-transform:uppercase;
  letter-spacing:.17em;
  font-size:.76rem;
  font-weight:800;
}
.mk-anniversary-line:before{
  content:"";width:54px;height:1px;background:var(--mk-copper);
}
.mk-anniversary-line strong{font-weight:800;color:#c9996c}
.mk-hero-microcopy{
  margin-top:56px;
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:#96918a;
}
.mk-hero--future30 .mk-hero-tags span{
  background:rgba(14,15,17,.48);
  backdrop-filter:blur(8px);
}
.mk-hero--future30 .mk-btn--ghost{
  background:rgba(10,11,13,.34);
  backdrop-filter:blur(8px);
}
@media(max-width:860px){
  .mk-hero--future30{min-height:660px}
  .mk-hero-inner--future30{min-height:660px;padding:90px 0 60px}
  .mk-hero-overlay{
    background:
      linear-gradient(180deg,rgba(11,12,14,.80) 0%,rgba(11,12,14,.74) 48%,rgba(11,12,14,.88) 100%),
      linear-gradient(90deg,rgba(11,12,14,.93),rgba(11,12,14,.35));
  }
  .mk-hero-bg img{object-position:65% center}
  .mk-hero-microcopy{margin-top:40px}
}
@media(max-width:620px){
  .mk-hero--future30 h1{font-size:clamp(3.2rem,15vw,5rem)}
  .mk-anniversary-line{flex-wrap:wrap;gap:10px}
  .mk-hero-bg img{object-position:72% center}
}


/* === 1.2.1 ROBUST CSS-ONLY FUTURE 30 HERO === */
.mk-hero--css{
  background:
    radial-gradient(circle at 72% 45%, rgba(185,133,85,.11), transparent 26%),
    radial-gradient(circle at 80% 60%, rgba(209,162,116,.06), transparent 24%),
    linear-gradient(135deg,#0b0c0e 0%,#111214 52%,#0b0c0e 100%);
}
.mk-hero--css .mk-hero-bg{display:none!important}
.mk-hero--css .mk-hero-inner--future30{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:60px;
  align-items:center;
}
.mk-visual-system{
  position:relative;
  width:min(42vw,560px);
  aspect-ratio:1/1;
  justify-self:end;
  filter:drop-shadow(0 0 40px rgba(185,133,85,.12));
}
.mk-orbit{
  position:absolute;
  border:1px solid rgba(185,133,85,.28);
  border-radius:50%;
  inset:10%;
  animation:mkOrbitSpin 18s linear infinite;
}
.mk-orbit-2{inset:22%;animation-duration:13s;animation-direction:reverse;border-color:rgba(209,162,116,.22)}
.mk-orbit-3{inset:34%;animation-duration:9s;border-color:rgba(255,255,255,.11)}
.mk-core{
  position:absolute;
  left:50%;top:50%;
  width:92px;height:92px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 45%, rgba(255,240,220,.92), rgba(209,162,116,.58) 30%, rgba(185,133,85,.16) 62%, transparent 72%);
  box-shadow:
    0 0 30px rgba(209,162,116,.36),
    0 0 90px rgba(185,133,85,.20);
  animation:mkCorePulse 3.8s ease-in-out infinite;
}
.mk-spectrum{
  position:absolute;
  left:12%;right:12%;top:50%;
  height:120px;
  transform:translateY(-50%);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:5px;
  opacity:.88;
}
.mk-spectrum i{
  display:block;
  width:3px;
  height:18%;
  border-radius:6px;
  background:linear-gradient(180deg,rgba(255,241,225,.96),rgba(185,133,85,.42));
  animation:mkSpectrum 2.2s ease-in-out infinite;
  box-shadow:0 0 10px rgba(209,162,116,.16);
}
.mk-spectrum i:nth-child(2n){animation-delay:-.35s}
.mk-spectrum i:nth-child(3n){animation-delay:-.75s}
.mk-spectrum i:nth-child(5n){animation-delay:-1.15s}
.mk-node{
  position:absolute;
  width:12px;height:12px;
  border-radius:50%;
  background:var(--mk-copper-soft);
  box-shadow:0 0 0 7px rgba(209,162,116,.06),0 0 24px rgba(209,162,116,.36);
}
.mk-node-a{left:12%;top:26%;animation:mkNodeFloat 5.4s ease-in-out infinite}
.mk-node-b{right:9%;top:34%;animation:mkNodeFloat 6.2s ease-in-out infinite reverse}
.mk-node-c{left:22%;bottom:12%;animation:mkNodeFloat 5.9s ease-in-out infinite .5s}
.mk-node-d{right:18%;bottom:16%;animation:mkNodeFloat 6.5s ease-in-out infinite 1s}
.mk-trail{
  position:absolute;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(185,133,85,.65),transparent);
  transform-origin:left center;
  opacity:.55;
}
.mk-trail-a{width:42%;left:15%;top:26%;transform:rotate(18deg)}
.mk-trail-b{width:38%;left:42%;top:66%;transform:rotate(-28deg)}
.mk-trail-c{width:30%;left:48%;top:35%;transform:rotate(42deg)}
@keyframes mkOrbitSpin{to{transform:rotate(360deg)}}
@keyframes mkCorePulse{0%,100%{transform:translate(-50%,-50%) scale(.96)}50%{transform:translate(-50%,-50%) scale(1.06)}}
@keyframes mkSpectrum{0%,100%{height:16%}50%{height:96%}}
@keyframes mkNodeFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(8px,-10px,0)}}
@media(max-width:980px){
  .mk-hero--css .mk-hero-inner--future30{
    grid-template-columns:1fr;
    gap:22px;
  }
  .mk-visual-system{
    position:absolute;
    right:-90px;
    top:50%;
    transform:translateY(-50%);
    width:460px;
    opacity:.34;
    pointer-events:none;
  }
  .mk-hero-copy{position:relative;z-index:2}
}
@media(max-width:620px){
  .mk-visual-system{right:-170px;width:390px;opacity:.25}
  .mk-hero--css .mk-hero-inner--future30{min-height:650px}
}


/* === 1.2.2 HEADER ANNIVERSARY BADGE === */
.mk-header-row{
  grid-template-columns:auto 1fr auto;
  gap:22px;
}
.mk-header-actions{
  display:flex;
  align-items:center;
  gap:12px;
  justify-self:end;
}
.mk-anniversary-badge{
  position:relative;
  width:62px;
  height:62px;
  flex:0 0 62px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  overflow:visible;
  transform-origin:center;
  animation:mkBadgeFloat 5.8s ease-in-out infinite;
}
.mk-anniversary-badge img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 4px 12px rgba(185,133,85,.22));
  border-radius:50%;
}
.mk-anniversary-glow{
  position:absolute;
  inset:-3px;
  border-radius:50%;
  background:conic-gradient(
    from 0deg,
    transparent 0deg,
    rgba(209,162,116,.0) 255deg,
    rgba(255,223,183,.68) 315deg,
    rgba(209,162,116,.0) 360deg
  );
  filter:blur(5px);
  opacity:.34;
  animation:mkBadgeSweep 6.5s linear infinite;
  pointer-events:none;
  z-index:-1;
}
.mk-anniversary-badge:after{
  content:"";
  position:absolute;
  inset:4px;
  border-radius:50%;
  border:1px solid rgba(209,162,116,.22);
  animation:mkBadgePulse 4.8s ease-in-out infinite;
  pointer-events:none;
}
@keyframes mkBadgeFloat{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-3px) rotate(1.2deg)}
}
@keyframes mkBadgeSweep{
  to{transform:rotate(360deg)}
}
@keyframes mkBadgePulse{
  0%,100%{opacity:.22;transform:scale(.98)}
  50%{opacity:.5;transform:scale(1.04)}
}
@media(max-width:1040px){
  .mk-anniversary-badge{
    width:56px;height:56px;flex-basis:56px;
  }
}
@media(max-width:860px){
  .mk-header-actions{gap:8px}
  .mk-anniversary-badge{
    width:48px;height:48px;flex-basis:48px;
  }
}
@media(max-width:620px){
  .mk-anniversary-badge{
    width:44px;height:44px;flex-basis:44px;
  }
}


/* === 1.2.3 FIX DISTINTIVO 30 ANNI === */
.mk-header-row{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:18px !important;
}
.mk-header-actions{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  justify-self:end !important;
  white-space:nowrap;
}
.mk-anniversary-badge{
  position:relative !important;
  width:58px !important;
  height:58px !important;
  flex:0 0 58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50%;
  animation:mkBadgeFloat 5.8s ease-in-out infinite !important;
}
.mk-anniversary-badge img{
  display:block !important;
  width:58px !important;
  height:58px !important;
  object-fit:contain !important;
  max-width:none !important;
  border-radius:50%;
  filter:drop-shadow(0 3px 10px rgba(185,133,85,.28));
}
.mk-anniversary-glow{
  position:absolute;
  inset:-4px;
  border-radius:50%;
  border:1px solid rgba(209,162,116,.22);
  box-shadow:0 0 15px rgba(209,162,116,.12);
  animation:mkBadgeGlow 4.6s ease-in-out infinite;
  pointer-events:none;
}
@keyframes mkBadgeGlow{
  0%,100%{opacity:.22;transform:scale(.98)}
  50%{opacity:.58;transform:scale(1.05)}
}
@media(max-width:1040px){
  .mk-header-actions{gap:7px !important}
  .mk-anniversary-badge,
  .mk-anniversary-badge img{width:52px !important;height:52px !important}
  .mk-anniversary-badge{flex-basis:52px !important}
}
@media(max-width:860px){
  .mk-header-row{grid-template-columns:1fr auto auto !important}
  .mk-header-cta{display:none !important}
  .mk-anniversary-badge,
  .mk-anniversary-badge img{width:46px !important;height:46px !important}
  .mk-anniversary-badge{flex-basis:46px !important}
}


/* === 1.3 CINEMATIC MOVING HERO === */
.mk-hero--cinematic{
  position:relative;
  min-height:clamp(690px,84vh,900px);
  overflow:hidden;
  border-bottom:1px solid var(--mk-line);
  background:#0b0c0e;
}
.mk-cinematic-media{
  position:absolute;
  inset:0;
  overflow:hidden;
  z-index:0;
}
.mk-cinematic-media img{
  position:absolute;
  inset:-4%;
  width:108%;
  height:108%;
  object-fit:cover;
  object-position:center;
  transform:scale(1.03);
  animation:mkKenBurns 18s ease-in-out infinite alternate;
  filter:saturate(.94) contrast(1.05) brightness(.70);
  will-change:transform;
}
.mk-cinematic-shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(8,9,11,.96) 0%,rgba(8,9,11,.84) 34%,rgba(8,9,11,.36) 62%,rgba(8,9,11,.12) 100%),
    linear-gradient(180deg,rgba(8,9,11,.18),rgba(8,9,11,.26));
}
.mk-cinematic-glow{
  position:absolute;
  border-radius:50%;
  filter:blur(55px);
  opacity:.28;
  mix-blend-mode:screen;
  pointer-events:none;
}
.mk-cinematic-glow-a{
  width:320px;height:320px;
  right:18%;top:24%;
  background:rgba(209,162,116,.38);
  animation:mkGlowFloatA 9s ease-in-out infinite;
}
.mk-cinematic-glow-b{
  width:220px;height:220px;
  right:5%;bottom:12%;
  background:rgba(185,133,85,.26);
  animation:mkGlowFloatB 11s ease-in-out infinite reverse;
}
.mk-cinematic-trail{
  position:absolute;
  height:2px;
  width:42%;
  left:46%;
  background:linear-gradient(90deg,transparent,rgba(255,214,166,.85),rgba(185,133,85,.15),transparent);
  box-shadow:0 0 14px rgba(209,162,116,.34);
  opacity:.40;
  transform-origin:left center;
  pointer-events:none;
}
.mk-trail-one{
  top:38%;
  transform:rotate(8deg);
  animation:mkTrailSweep 8s ease-in-out infinite;
}
.mk-trail-two{
  top:62%;
  transform:rotate(-12deg);
  animation:mkTrailSweep 10s ease-in-out infinite reverse;
}
.mk-hero-inner--cinematic{
  position:relative;
  z-index:2;
  min-height:clamp(690px,84vh,900px);
  display:flex;
  align-items:center;
  padding:110px 0 84px;
}
.mk-hero--cinematic .mk-hero-copy{
  max-width:760px;
}
.mk-hero--cinematic h1{
  font-size:clamp(4rem,7.4vw,7.6rem);
  line-height:.90;
  letter-spacing:-.06em;
  margin:.18em 0 .16em;
  text-shadow:0 2px 18px rgba(0,0,0,.24);
}
.mk-hero--cinematic .mk-hero-sub{
  font-size:clamp(1.25rem,2.1vw,1.85rem);
  color:#eee8df;
  max-width:720px;
}
.mk-hero--cinematic .mk-hero-tags span{
  background:rgba(12,13,15,.44);
  backdrop-filter:blur(8px);
  border-color:rgba(255,255,255,.16);
}
.mk-hero--cinematic .mk-btn--ghost{
  background:rgba(9,10,12,.38);
  backdrop-filter:blur(8px);
}

@keyframes mkKenBurns{
  0%{transform:scale(1.03) translate3d(0,0,0)}
  50%{transform:scale(1.075) translate3d(-1.2%,-.6%,0)}
  100%{transform:scale(1.11) translate3d(-2.2%,-1.1%,0)}
}
@keyframes mkGlowFloatA{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(-28px,18px,0) scale(1.08)}
}
@keyframes mkGlowFloatB{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(24px,-18px,0) scale(1.10)}
}
@keyframes mkTrailSweep{
  0%,100%{opacity:.18;transform:translateX(-2%) rotate(8deg)}
  50%{opacity:.52;transform:translateX(2%) rotate(8deg)}
}

/* keep trail 2 rotation */
.mk-trail-two{transform:rotate(-12deg)}
@keyframes mkTrailSweepTwo{
  0%,100%{opacity:.16;transform:translateX(2%) rotate(-12deg)}
  50%{opacity:.46;transform:translateX(-2%) rotate(-12deg)}
}
.mk-trail-two{animation-name:mkTrailSweepTwo}

@media(max-width:980px){
  .mk-cinematic-shade{
    background:
      linear-gradient(90deg,rgba(8,9,11,.94) 0%,rgba(8,9,11,.74) 52%,rgba(8,9,11,.32) 100%),
      linear-gradient(180deg,rgba(8,9,11,.20),rgba(8,9,11,.32));
  }
  .mk-cinematic-media img{object-position:62% center}
}
@media(max-width:700px){
  .mk-hero--cinematic{min-height:670px}
  .mk-hero-inner--cinematic{min-height:670px;padding:92px 0 64px}
  .mk-cinematic-media img{
    object-position:67% center;
    filter:saturate(.90) contrast(1.03) brightness(.58);
  }
  .mk-cinematic-shade{
    background:
      linear-gradient(180deg,rgba(8,9,11,.64) 0%,rgba(8,9,11,.74) 50%,rgba(8,9,11,.88) 100%),
      linear-gradient(90deg,rgba(8,9,11,.92),rgba(8,9,11,.35));
  }
  .mk-cinematic-trail{display:none}
}
@media (prefers-reduced-motion: reduce){
  .mk-cinematic-media img,
  .mk-cinematic-glow,
  .mk-cinematic-trail{
    animation:none !important;
  }
}


/* === 1.3.1 CHI SIAMO HERO DINAMICA === */
.mk-about-hero--dynamic{
  position:relative;
  overflow:hidden;
  min-height:500px;
  display:flex;
  align-items:center;
  border-bottom:1px solid var(--mk-line);
  background:#0b0c0e;
}
.mk-about-hero-media{
  position:absolute;
  inset:0;
  overflow:hidden;
  z-index:0;
}
.mk-about-hero-media img{
  position:absolute;
  inset:-5%;
  width:110%;
  height:110%;
  object-fit:cover;
  object-position:center 42%;
  transform:scale(1.02);
  animation:mkAboutKenBurns 20s ease-in-out infinite alternate;
  filter:saturate(.92) contrast(1.05) brightness(.54);
  will-change:transform;
}
.mk-about-hero-shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(8,9,11,.94) 0%,rgba(8,9,11,.80) 42%,rgba(8,9,11,.38) 72%,rgba(8,9,11,.22) 100%),
    linear-gradient(180deg,rgba(8,9,11,.18),rgba(8,9,11,.28));
}
.mk-about-hero-glow{
  position:absolute;
  width:340px;
  height:340px;
  right:14%;
  top:18%;
  border-radius:50%;
  background:rgba(209,162,116,.19);
  filter:blur(70px);
  animation:mkAboutGlow 9s ease-in-out infinite;
}
.mk-about-hero-content{
  position:relative;
  z-index:2;
  padding:110px 0 92px;
}
.mk-about-hero--dynamic h1{
  font-size:clamp(3.3rem,6vw,6.4rem);
  line-height:.94;
  letter-spacing:-.055em;
  margin:.18em 0 .18em;
  text-shadow:0 2px 18px rgba(0,0,0,.28);
}
.mk-about-hero--dynamic .mk-about-lead{
  max-width:860px;
  font-size:clamp(1.15rem,2vw,1.55rem);
  color:#e5dfd6;
  text-shadow:0 2px 14px rgba(0,0,0,.22);
}
@keyframes mkAboutKenBurns{
  0%{transform:scale(1.02) translate3d(0,0,0)}
  50%{transform:scale(1.065) translate3d(-1%,-.5%,0)}
  100%{transform:scale(1.10) translate3d(-2%,-1%,0)}
}
@keyframes mkAboutGlow{
  0%,100%{transform:translate3d(0,0,0) scale(1);opacity:.20}
  50%{transform:translate3d(-28px,18px,0) scale(1.08);opacity:.34}
}
@media(max-width:760px){
  .mk-about-hero--dynamic{min-height:440px}
  .mk-about-hero-content{padding:86px 0 70px}
  .mk-about-hero-media img{object-position:62% center;filter:saturate(.90) contrast(1.03) brightness(.46)}
  .mk-about-hero-shade{
    background:
      linear-gradient(180deg,rgba(8,9,11,.58) 0%,rgba(8,9,11,.70) 50%,rgba(8,9,11,.88) 100%),
      linear-gradient(90deg,rgba(8,9,11,.90),rgba(8,9,11,.34));
  }
}
@media (prefers-reduced-motion: reduce){
  .mk-about-hero-media img,
  .mk-about-hero-glow{
    animation:none !important;
  }
}


/* === 1.3.2 MODULO 5x1000 === */
.mk-five-form-wrap{
  width:min(calc(100% - 36px),900px);
  margin:70px auto;
  padding:38px;
  border:1px solid var(--mk-line);
  border-radius:24px;
  background:var(--mk-panel);
}
.mk-five-form-head h2{
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1;
  letter-spacing:-.04em;
  margin:.2em 0 .35em;
}
.mk-five-form-head p{color:var(--mk-muted)}
.mk-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.mk-five-form label{
  display:block;
  margin-bottom:8px;
  font-size:.88rem;
  font-weight:700;
}
.mk-five-form input[type="text"],
.mk-five-form input[type="email"],
.mk-five-form input[type="tel"],
.mk-five-form textarea{
  width:100%;
  border:1px solid var(--mk-line);
  border-radius:14px;
  background:#121417;
  color:var(--mk-text);
  padding:13px 14px;
  outline:none;
}
.mk-five-form input:focus,
.mk-five-form textarea:focus{
  border-color:rgba(209,162,116,.70);
  box-shadow:0 0 0 3px rgba(209,162,116,.08);
}
.mk-form-consent label{
  font-weight:400;
  color:var(--mk-muted);
  display:flex;
  gap:10px;
  align-items:flex-start;
}
.mk-form-small{
  margin-top:14px;
  font-size:.78rem;
  color:var(--mk-muted);
}
.mk-form-notice{
  margin:22px 0;
  padding:14px 16px;
  border-radius:12px;
  border:1px solid var(--mk-line);
}
.mk-form-notice--ok{background:rgba(120,180,120,.08)}
.mk-form-notice--error{background:rgba(200,100,100,.08)}
@media(max-width:680px){
  .mk-five-form-wrap{padding:24px}
  .mk-form-grid{grid-template-columns:1fr}
}


/* === 1.4.0 — HERO MKG ANIMATA: K → MK → MKG === */
.mk-hero--mkg{
  position:relative;
  min-height:clamp(690px,84vh,900px);
  overflow:hidden;
  border-bottom:1px solid var(--mk-line);
  background:#090b0f;
}
.mk-mkg-stage{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  background:#090b0f;
}
.mk-mkg-frame{
  position:absolute;
  inset:0;
  opacity:0;
  animation:mkMkgSequence 12s ease-in-out infinite;
  will-change:opacity,transform;
}
.mk-mkg-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.96) contrast(1.04) brightness(.80);
  transform:scale(1.015);
}
.mk-mkg-frame--1{animation-delay:0s}
.mk-mkg-frame--2{animation-delay:4s}
.mk-mkg-frame--3{animation-delay:8s}

@keyframes mkMkgSequence{
  0%{opacity:0;transform:scale(1.01)}
  8%{opacity:1;transform:scale(1.015)}
  26%{opacity:1;transform:scale(1.025)}
  34%{opacity:0;transform:scale(1.03)}
  100%{opacity:0;transform:scale(1.03)}
}

.mk-mkg-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(7,8,10,.93) 0%,rgba(7,8,10,.82) 31%,rgba(7,8,10,.42) 53%,rgba(7,8,10,.14) 76%,rgba(7,8,10,.08) 100%),
    linear-gradient(180deg,rgba(7,8,10,.10),rgba(7,8,10,.22));
  pointer-events:none;
}
.mk-hero-inner--mkg{
  position:relative;
  z-index:2;
  min-height:clamp(690px,84vh,900px);
  display:flex;
  align-items:center;
  padding:110px 0 84px;
}
.mk-hero--mkg .mk-hero-copy{
  max-width:760px;
}
.mk-hero--mkg h1{
  font-size:clamp(4rem,7.4vw,7.6rem);
  line-height:.90;
  letter-spacing:-.06em;
  margin:.18em 0 .16em;
  text-shadow:0 2px 18px rgba(0,0,0,.30);
}
.mk-hero--mkg .mk-hero-sub{
  font-size:clamp(1.25rem,2.1vw,1.85rem);
  color:#eee8df;
  max-width:720px;
}
.mk-hero--mkg .mk-hero-tags span,
.mk-hero--mkg .mk-btn--ghost{
  background:rgba(10,11,13,.42);
  backdrop-filter:blur(8px);
}
@media(max-width:980px){
  .mk-mkg-overlay{
    background:
      linear-gradient(90deg,rgba(7,8,10,.94) 0%,rgba(7,8,10,.76) 47%,rgba(7,8,10,.28) 100%),
      linear-gradient(180deg,rgba(7,8,10,.14),rgba(7,8,10,.28));
  }
}
@media(max-width:700px){
  .mk-hero--mkg{min-height:670px}
  .mk-hero-inner--mkg{min-height:670px;padding:92px 0 64px}
  .mk-mkg-frame img{
    object-position:center;
    filter:saturate(.92) contrast(1.03) brightness(.62);
  }
  .mk-mkg-overlay{
    background:
      linear-gradient(180deg,rgba(7,8,10,.56) 0%,rgba(7,8,10,.68) 50%,rgba(7,8,10,.90) 100%),
      linear-gradient(90deg,rgba(7,8,10,.92),rgba(7,8,10,.34));
  }
}
@media (prefers-reduced-motion: reduce){
  .mk-mkg-frame{
    animation:none !important;
    opacity:0;
    transform:none;
  }
  .mk-mkg-frame--3{opacity:1}
}


/* === 1.4.1 — CHI SIAMO: MKG + 1997 ANIMATO === */
.mk-about-hero--mkg{
  position:relative;
  overflow:hidden;
  min-height:clamp(650px,78vh,840px);
  display:flex;
  align-items:center;
  border-bottom:1px solid var(--mk-line);
  background:#080a0e;
}
.mk-about-mkg-media{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
}
.mk-about-mkg-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:61% center;
  transform:scale(1.02);
  animation:mkAboutMkgFloat 16s ease-in-out infinite alternate;
  filter:saturate(.95) contrast(1.05) brightness(.76);
  will-change:transform;
}
.mk-about-mkg-vignette{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(6,7,9,.97) 0%,rgba(6,7,9,.91) 28%,rgba(6,7,9,.66) 46%,rgba(6,7,9,.19) 72%,rgba(6,7,9,.08) 100%),
    linear-gradient(180deg,rgba(5,6,8,.10),rgba(5,6,8,.30));
}
.mk-about-mkg-glow{
  position:absolute;
  width:420px;
  height:420px;
  left:12%;
  top:36%;
  border-radius:50%;
  background:rgba(218,162,105,.16);
  filter:blur(90px);
  animation:mkAboutMkgGlow 7s ease-in-out infinite;
}
.mk-about-hero-layout{
  position:relative;
  z-index:2;
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,760px) 1fr;
  align-items:center;
  padding:112px 0 92px;
}
.mk-about-hero-copy{
  max-width:760px;
}
.mk-about-hero--mkg h1{
  font-size:clamp(4rem,7vw,7rem);
  line-height:.92;
  letter-spacing:-.055em;
  margin:.16em 0 .08em;
  text-shadow:0 3px 24px rgba(0,0,0,.34);
}
.mk-about-hero--mkg .mk-about-lead{
  max-width:720px;
  margin-top:20px;
  color:#ebe6de;
  font-size:clamp(1.12rem,1.8vw,1.5rem);
  line-height:1.52;
  text-shadow:0 2px 16px rgba(0,0,0,.28);
}

.mk-since{
  display:flex;
  align-items:baseline;
  gap:16px;
  margin:10px 0 4px;
}
.mk-since-label{
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.5rem,2.6vw,2.5rem);
  color:#f1e8dc;
  opacity:.94;
}
.mk-year-1997{
  position:relative;
  display:inline-flex;
  align-items:baseline;
  gap:.01em;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(4rem,8vw,7.8rem);
  line-height:.82;
  letter-spacing:-.065em;
  color:#f1b66f;
  filter:drop-shadow(0 0 14px rgba(235,169,95,.26));
}
.mk-year-1997::before,
.mk-year-1997::after{
  content:"";
  position:absolute;
  left:-8%;
  right:-12%;
  top:52%;
  height:1px;
  transform-origin:center;
  border-radius:100%;
  background:linear-gradient(90deg,transparent,rgba(241,182,111,.72),transparent);
  box-shadow:0 0 18px rgba(241,182,111,.45);
  animation:mkYearOrbit 4.8s ease-in-out infinite;
}
.mk-year-1997::after{
  top:61%;
  opacity:.42;
  animation-delay:1.1s;
  transform:rotate(-7deg);
}
.mk-year-1997 span{
  display:inline-block;
  opacity:0;
  transform:translateY(24px) scale(.93);
  animation:mkYearDigitReveal 4.8s cubic-bezier(.2,.72,.22,1) infinite;
  text-shadow:
    0 0 10px rgba(255,197,120,.22),
    0 0 26px rgba(228,155,80,.18);
}
.mk-year-1997 span:nth-child(1){animation-delay:0s}
.mk-year-1997 span:nth-child(2){animation-delay:.15s}
.mk-year-1997 span:nth-child(3){animation-delay:.30s}
.mk-year-1997 span:nth-child(4){animation-delay:.45s}

@keyframes mkYearDigitReveal{
  0%,8%{opacity:0;transform:translateY(24px) scale(.93);filter:blur(6px)}
  18%,72%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
  82%,100%{opacity:.92;transform:translateY(0) scale(1);filter:blur(0)}
}
@keyframes mkYearOrbit{
  0%{opacity:0;transform:translateX(-5%) scaleX(.72) rotate(4deg)}
  24%{opacity:.75;transform:translateX(0) scaleX(1) rotate(4deg)}
  64%{opacity:.34;transform:translateX(2%) scaleX(1.03) rotate(4deg)}
  100%{opacity:0;transform:translateX(7%) scaleX(.82) rotate(4deg)}
}
@keyframes mkAboutMkgFloat{
  0%{transform:scale(1.02) translate3d(0,0,0)}
  100%{transform:scale(1.07) translate3d(-1.2%,-.6%,0)}
}
@keyframes mkAboutMkgGlow{
  0%,100%{opacity:.18;transform:translate3d(0,0,0) scale(1)}
  50%{opacity:.34;transform:translate3d(28px,-12px,0) scale(1.08)}
}

/* Animazione secondaria del 1997 nella scheda "Nati a Rieti" */
.mk-year-card{
  display:inline-flex !important;
  gap:.01em;
}
.mk-year-card span{
  display:inline-block;
  animation:mkYearCardPulse 3.8s ease-in-out infinite;
}
.mk-year-card span:nth-child(2){animation-delay:.08s}
.mk-year-card span:nth-child(3){animation-delay:.16s}
.mk-year-card span:nth-child(4){animation-delay:.24s}
@keyframes mkYearCardPulse{
  0%,100%{transform:translateY(0);text-shadow:none}
  45%{transform:translateY(-4px);text-shadow:0 0 16px rgba(209,162,116,.30)}
}

@media(max-width:900px){
  .mk-about-hero-layout{
    grid-template-columns:1fr;
  }
  .mk-about-mkg-media img{
    object-position:67% center;
  }
  .mk-about-mkg-vignette{
    background:
      linear-gradient(90deg,rgba(6,7,9,.96) 0%,rgba(6,7,9,.85) 48%,rgba(6,7,9,.31) 100%),
      linear-gradient(180deg,rgba(5,6,8,.12),rgba(5,6,8,.38));
  }
}
@media(max-width:650px){
  .mk-about-hero--mkg{min-height:650px}
  .mk-about-hero-layout{padding:88px 0 64px}
  .mk-about-mkg-media img{
    object-position:72% center;
    filter:saturate(.92) contrast(1.03) brightness(.58);
  }
  .mk-about-mkg-vignette{
    background:
      linear-gradient(180deg,rgba(6,7,9,.52) 0%,rgba(6,7,9,.67) 44%,rgba(6,7,9,.92) 100%),
      linear-gradient(90deg,rgba(6,7,9,.94),rgba(6,7,9,.30));
  }
  .mk-since{gap:10px;flex-wrap:wrap}
  .mk-since-label{width:100%}
}
@media (prefers-reduced-motion: reduce){
  .mk-about-mkg-media img,
  .mk-about-mkg-glow,
  .mk-year-1997::before,
  .mk-year-1997::after,
  .mk-year-1997 span,
  .mk-year-card span{
    animation:none !important;
  }
  .mk-year-1997 span{opacity:1;transform:none;filter:none}
}


/* === 1.4.2 — FIX MOBILE HOMEPAGE === */
html, body{
  max-width:100%;
  overflow-x:hidden;
}

@media (max-width:700px){
  .mk-hero--mkg{
    min-height:auto;
    overflow:hidden;
  }

  .mk-hero-inner--mkg{
    min-height:760px;
    padding:86px 0 62px;
    align-items:center;
  }

  .mk-hero--mkg .mk-hero-copy{
    width:100%;
    max-width:100%;
    min-width:0;
  }

  .mk-hero--mkg h1{
    font-size:clamp(3rem,12.8vw,4.4rem);
    line-height:.95;
    letter-spacing:-.055em;
    max-width:100%;
    white-space:normal;
    overflow-wrap:anywhere;
    word-break:normal;
    hyphens:none;
    margin:.22em 0 .18em;
  }

  .mk-hero--mkg .mk-hero-sub{
    font-size:clamp(1.03rem,4.5vw,1.3rem);
    line-height:1.4;
    max-width:100%;
  }

  .mk-hero--mkg .mk-eyebrow{
    font-size:.72rem;
    line-height:1.5;
    letter-spacing:.13em;
    max-width:100%;
  }

  .mk-hero-tags{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:10px !important;
    max-width:100%;
    overflow:visible !important;
  }

  .mk-hero-tags span{
    flex:0 0 auto;
    white-space:nowrap;
    font-size:.86rem;
    padding:10px 14px;
  }

  .mk-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    max-width:100%;
  }

  .mk-actions .mk-btn{
    width:auto;
    min-width:0;
    max-width:100%;
    padding:15px 20px;
    white-space:normal;
    text-align:center;
  }

  .mk-mkg-frame img{
    object-position:58% center;
  }
}

@media (max-width:430px){
  .mk-hero-inner--mkg{
    min-height:720px;
    padding-top:78px;
  }

  .mk-hero--mkg h1{
    font-size:clamp(2.55rem,11.7vw,3.35rem);
    letter-spacing:-.045em;
  }

  .mk-hero-tags span{
    font-size:.8rem;
    padding:9px 12px;
  }

  .mk-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .mk-actions .mk-btn{
    width:100%;
  }
}


/* === 1.4.3 — MOBILE REGISTERED FIX === */
.mk-hero-title{
  display:inline-flex;
  flex-wrap:nowrap;
  align-items:flex-start;
  gap:.015em;
  max-width:100%;
  white-space:nowrap;
}
.mk-hero-title .mk-hero-name{
  display:inline-block;
  min-width:0;
}
.mk-hero-registered{
  display:inline-block;
  flex:0 0 auto;
  font-size:.34em;
  line-height:1;
  position:relative;
  top:.10em;
  margin-left:.03em;
  letter-spacing:0;
}
@media(max-width:700px){
  .mk-hero--mkg h1.mk-hero-title{
    font-size:clamp(2.55rem,11.2vw,3.45rem);
    line-height:.95;
    letter-spacing:-.045em;
    white-space:nowrap;
    overflow:visible;
    overflow-wrap:normal;
    word-break:keep-all;
  }
  .mk-hero-title .mk-hero-name{
    letter-spacing:inherit;
  }
  .mk-hero-registered{
    font-size:.25em;
    top:.08em;
    margin-left:.04em;
  }
}
@media(max-width:390px){
  .mk-hero--mkg h1.mk-hero-title{
    font-size:clamp(2.35rem,10.8vw,3rem);
  }
  .mk-hero-registered{
    font-size:.23em;
  }
}
