/* Mark Italia page, styled on the NatureJAB site tokens (region-2026.css) */
:root{
  --dark-bg:#0D0E0A; --dark-2:#14150F; --card:#1A1B15; --border:#2A2B24;
  --cream:#EDE7D3; --green:#5DBA63; --orange:#FF5B1F; --muted:#A8A393;
  --display:"Archivo Black",sans-serif; --body:"Bitter",Georgia,serif; --mono:"JetBrains Mono",monospace;
}
body{ background:var(--dark-bg); }
#mi-root, #markitalia-root{ background:var(--dark-bg); color:var(--cream); font-family:var(--body); font-size:17px; line-height:1.6; }
.mi-wrap{ max-width:1060px; margin:0 auto; padding:0 20px 64px; }
.mi-sec{ padding:56px 0 8px; border-top:1px solid var(--border); }
.mi-hero{ border-top:none; padding-top:28px; }

/* flyer */
.mi-flyer{ display:block; width:100%; max-width:560px; height:auto; margin:0 auto 32px; border:1px solid var(--border); }

/* eyebrow: hero gets the orange chip, sections get green mono */
.mi-eyebrow{ display:inline-block; font-family:var(--mono); font-weight:700; font-size:12px; letter-spacing:3px; text-transform:uppercase; color:var(--green); margin:0 0 18px; }
.mi-hero .mi-eyebrow{ background:var(--orange); color:var(--dark-bg); padding:7px 12px; }

/* headings */
.mi-h1{ font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:clamp(27px,6.2vw,56px); overflow-wrap:break-word; line-height:1.04; letter-spacing:.5px; color:var(--cream); margin:0 0 14px; text-wrap:balance; }
.mi-h1 .mi-green{ color:var(--green); }
.mi-h1-en{ font-family:var(--mono); font-weight:700; font-size:13px; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); margin:0 0 22px; }
.mi-h2{ font-family:var(--display); font-weight:400; text-transform:uppercase; font-size:clamp(24px,4.5vw,36px); line-height:1.1; color:var(--cream); margin:0 0 6px; }
.mi-en-h{ font-family:var(--mono); font-size:11.5px; font-weight:700; letter-spacing:2.5px; text-transform:uppercase; color:var(--muted); margin:0 0 20px; }
.mi-sub{ max-width:640px; margin:0 0 10px; }
.mi-sub .mi-line{ display:block; }
.mi-sub b{ color:var(--green); }
.mi-line{ margin:0 0 6px; }
.mi-h1 .mi-line{ display:block; margin:0; }

/* buttons */
.mi-btn{ font-family:var(--mono); font-weight:700; font-size:13px; letter-spacing:1.5px; text-transform:uppercase; padding:16px 28px; border:none; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; gap:10px; transition:opacity .15s; color:var(--dark-bg); }
.mi-btn:hover{ opacity:.88; }
.mi-btn-primary{ background:var(--orange); }
.mi-btn-kick{ background:var(--green); }
.mi-btn-ghost{ background:transparent; border:1px solid var(--border); color:var(--muted); font-weight:400; }
.mi-btn-ghost:hover{ border-color:var(--green); color:var(--green); }
.mi-cta-row{ display:flex; flex-wrap:wrap; gap:14px; margin:22px 0 10px; }

/* kick */
.mi-note{ color:var(--cream); margin:0 0 8px; }
.mi-kick .mi-note{ font-family:var(--mono); font-size:12px; color:var(--muted); margin-top:12px; }

/* needs list */
.mi-cat-h{ font-family:var(--mono); font-weight:700; font-size:12px; letter-spacing:2.5px; text-transform:uppercase; color:var(--green); margin:30px 0 12px; }
.mi-items{ display:grid; grid-template-columns:1fr; gap:10px; margin:0; padding:0; list-style:none; }
@media (min-width:720px){ .mi-items{ grid-template-columns:1fr 1fr; } }
@media (min-width:1000px){ .mi-items{ grid-template-columns:1fr 1fr 1fr; } }
.mi-item{ background:var(--card); border:1px solid var(--border); padding:12px 14px; display:flex; flex-direction:column; gap:7px; }
.mi-item-head{ display:flex; justify-content:space-between; align-items:center; gap:10px; }
.mi-item-cat{ font-family:var(--mono); font-size:9px; font-weight:700; letter-spacing:1.8px; text-transform:uppercase; color:var(--muted); }
.mi-item-it{ display:block; font-family:var(--body); font-weight:700; font-size:15px; line-height:1.3; color:var(--cream); }
.mi-item-en{ display:block; font-size:12.5px; color:var(--muted); margin-top:1px; }
.mi-item-meta{ font-family:var(--mono); font-size:10.5px; color:var(--muted); margin-top:4px; letter-spacing:.5px; }
.mi-chip{ flex:0 0 auto; font-family:var(--mono); font-size:9.5px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; padding:4px 10px 5px; border:1px solid var(--border); white-space:nowrap; }
.mi-chip-needed{ color:var(--orange); border-color:var(--orange); }
.mi-chip-offered{ color:var(--green); border-color:var(--green); }
.mi-chip-covered{ background:var(--green); border-color:var(--green); color:var(--dark-bg); }

/* form */
.mi-panel{ background:var(--card); border:1px solid var(--border); padding:28px 22px 26px; max-width:640px; }
.mi-form label{ display:block; font-family:var(--mono); font-weight:700; font-size:11px; letter-spacing:1.8px; text-transform:uppercase; color:var(--muted); margin:18px 0 7px; }
.mi-form input:not([type=checkbox]),.mi-form select,.mi-form textarea{ width:100%; box-sizing:border-box; background:var(--dark-2); border:1px solid var(--border); color:var(--cream); font-family:var(--body); font-size:16px; padding:13px 14px; border-radius:0; transition:border-color .15s; -webkit-appearance:none; appearance:none; }
.mi-form select{ background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%); background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%; background-size:6px 6px; background-repeat:no-repeat; }
.mi-form textarea{ min-height:110px; resize:vertical; }
.mi-form input:focus,.mi-form select:focus,.mi-form textarea:focus{ outline:none; border-color:var(--green); }
.mi-grid2{ display:grid; grid-template-columns:1fr; gap:0 16px; }
@media (min-width:560px){ .mi-grid2{ grid-template-columns:1fr 1fr; } }
.mi-check{ display:flex; gap:12px; align-items:flex-start; margin:18px 0 0; }
.mi-check input{ flex:0 0 18px; width:18px; height:18px; margin-top:3px; accent-color:var(--green); }
.mi-check span{ font-family:var(--body); font-weight:400; font-size:14.5px; line-height:1.6; color:#C9C3B2; text-transform:none; letter-spacing:.1px; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; }
.mi-check a{ color:var(--green); }
.mi-submit{ margin-top:24px; width:100%; justify-content:center; font-family:var(--mono); font-weight:700; font-size:14px; letter-spacing:1.5px; text-transform:uppercase; padding:17px 28px; border:none; cursor:pointer; background:var(--orange); color:var(--dark-bg); transition:opacity .15s; }
.mi-submit:hover{ opacity:.88; }
.mi-submit:disabled{ opacity:.55; cursor:default; }
.mi-hp{ position:absolute; left:-9999px; top:-9999px; height:0; overflow:hidden; }
p.mi-status{ font-family:var(--mono); font-size:13px; color:var(--green); margin-top:14px; min-height:1em; }
p.mi-status.err{ color:var(--orange); }
.mi-thanks{ font-size:18px; }
.mi-thanks b{ color:var(--green); }

/* video */
.mi-video{ position:relative; width:100%; aspect-ratio:16/9; background:var(--dark-2); border:1px solid var(--border); }
.mi-video iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }

/* footer */
.mi-foot{ border-top:1px solid var(--border); margin-top:56px; padding-top:24px; font-family:var(--mono); font-size:12.5px; letter-spacing:1px; text-align:left; color:var(--muted); }
.mi-foot a{ color:var(--green); text-decoration:none; }

@media (prefers-reduced-motion: reduce){ .mi-bar-fill{ transition:none; } }

.mi-h1-en .mi-line{ display:block; margin:0 0 2px; }

/* Kick live banner */
.mi-kick-banner{ display:flex; align-items:center; gap:16px; background:#0A0A08; border:1px solid #53FC18; padding:20px 22px; text-decoration:none; transition:background .15s, box-shadow .15s; }
.mi-kick-banner:hover{ background:#101209; box-shadow:0 0 0 1px #53FC18; }
.mi-kick-live{ display:inline-flex; align-items:center; gap:8px; font-family:var(--mono); font-weight:700; font-size:11px; letter-spacing:2px; color:#53FC18; border:1px solid #53FC18; padding:6px 10px; flex:0 0 auto; }
.mi-dot{ width:8px; height:8px; border-radius:50%; background:#53FC18; animation:miPulse 1.6s ease-in-out infinite; }
@keyframes miPulse{ 0%,100%{ opacity:1; } 50%{ opacity:.25; } }
.mi-kick-text{ flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:3px; }
.mi-kick-h{ font-family:var(--display); text-transform:uppercase; font-size:clamp(16px,3.6vw,24px); line-height:1.15; color:var(--cream); }
.mi-kick-sub{ font-family:var(--mono); font-size:11px; letter-spacing:1.6px; text-transform:uppercase; color:var(--muted); }
.mi-kick-logo{ display:inline-flex; align-items:center; gap:8px; flex:0 0 auto; }
.mi-kick-k{ display:block; image-rendering:pixelated; }
.mi-kick-word{ font-family:var(--display); font-size:20px; letter-spacing:1px; color:#53FC18; }
@media (max-width:560px){ .mi-kick-banner{ flex-wrap:wrap; } .mi-kick-live{ order:1; } .mi-kick-logo{ order:2; margin-left:auto; } .mi-kick-text{ order:3; flex-basis:100%; } }
@media (prefers-reduced-motion: reduce){ .mi-dot{ animation:none; } }

/* Plastolene journey band (ported from /hub links-page) */
.lkpj-wrap{ position:relative; height:250px; overflow:hidden; background:var(--dark-bg); border-top:1px solid #1D1E17; border-bottom:1px solid #1D1E17; margin:26px 0 30px; }
.lkpj-canvas{ position:absolute; inset:0; z-index:0; }
.lkpj-wrap::after{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg,#0D0E0A 0%,rgba(13,14,10,0) 10%,rgba(13,14,10,0) 90%,#0D0E0A 100%); }
.lkpj-label{ position:absolute; top:15px; left:18px; z-index:2; font-family:var(--display); font-size:13px; font-weight:400; text-transform:uppercase; letter-spacing:1.6px; color:#F3EFE3; opacity:0; transition:opacity .7s; white-space:nowrap; }
.lkpj-label.show{ opacity:1; }
.lkpj-sub{ position:absolute; top:36px; left:18px; z-index:2; font-family:var(--mono); font-size:10px; font-weight:600; letter-spacing:1.8px; text-transform:uppercase; color:var(--green); opacity:0; transition:opacity .7s; white-space:nowrap; }
.lkpj-sub.show{ opacity:.85; }

/* fund the build */
.mi-fund{ max-width:640px; }
.mi-fund-nums{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; margin-bottom:10px; }
.mi-fund-raised{ font-family:var(--display); font-size:clamp(34px,7vw,52px); line-height:1; color:var(--green); font-variant-numeric:tabular-nums; }
.mi-fund-goal{ font-family:var(--mono); font-size:13px; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); }
.mi-fund-pct{ margin-left:auto; font-family:var(--mono); font-weight:700; font-size:15px; color:var(--cream); font-variant-numeric:tabular-nums; }
.mi-bar{ position:relative; background:var(--dark-2); border:1px solid var(--border); height:26px; overflow:hidden; }
.mi-bar-fill{ position:relative; height:100%; width:0; background:linear-gradient(90deg,var(--green),#8FD16A); }
.mi-bar-fill::after{ content:""; position:absolute; inset:0; background:repeating-linear-gradient(135deg,rgba(13,14,10,.18) 0 10px,transparent 10px 20px); background-size:28px 28px; animation:miStripes 1.1s linear infinite; }
@keyframes miStripes{ to{ background-position:28px 0; } }
.mi-tick{ position:absolute; top:0; bottom:0; width:1px; background:var(--border); }
.mi-fund-meta{ font-family:var(--mono); font-size:12px; letter-spacing:1px; color:var(--muted); margin:10px 0 0; min-height:1em; text-transform:uppercase; }
.mi-fund-note{ font-size:14px; color:var(--muted); margin:14px 0 0; }
.mi-fund-note.mi-en{ margin-top:2px; }
.mi-fund .mi-btn{ margin-top:20px; }
@media (prefers-reduced-motion: reduce){ .mi-bar-fill::after{ animation:none; } }

/* footer */
.mi-foot-grid{ display:grid; grid-template-columns:1fr; gap:28px 32px; margin-bottom:28px; }
@media (min-width:720px){ .mi-foot-grid{ grid-template-columns:1.3fr 1fr 1fr 1.3fr; } }
.mi-foot-col{ display:flex; flex-direction:column; gap:9px; }
.mi-foot-logo{ font-family:var(--display); font-size:18px; letter-spacing:1px; color:var(--cream); }
.mi-foot-brand p{ margin:0; font-family:var(--body); font-size:13.5px; line-height:1.55; color:var(--muted); letter-spacing:0; text-transform:none; }
.mi-foot-h{ font-family:var(--mono); font-weight:700; font-size:10.5px; letter-spacing:2px; text-transform:uppercase; color:var(--green); margin-bottom:2px; }
.mi-foot-h2{ margin-top:12px; }
.mi-foot-col a{ font-family:var(--body); font-size:14px; color:var(--cream); text-decoration:none; letter-spacing:0; text-transform:none; }
.mi-foot-col a:hover{ color:var(--green); }
.mi-foot-legal{ border-top:1px solid var(--border); padding-top:18px; font-family:var(--mono); font-size:11px; letter-spacing:1px; color:var(--muted); }
.mi-foot-legal a{ color:var(--muted); }

/* hero grid + bracket frame + caption + stat band */
.mi-hero-grid{ display:grid; grid-template-columns:1fr; gap:34px; align-items:start; }
@media (min-width:900px){ .mi-hero-grid{ grid-template-columns:1fr 1.15fr; } .mi-hero-media{ order:2; } .mi-hero-copy{ order:1; padding-top:18px; } }
.mi-frame{ position:relative; padding:14px; }
.mi-frame .mi-flyer{ margin:0; border:none; }
.mi-corner{ position:absolute; width:18px; height:18px; border:1px solid var(--green); }
.mi-c-tl{ top:0; left:0; border-right:none; border-bottom:none; }
.mi-c-tr{ top:0; right:0; border-left:none; border-bottom:none; }
.mi-c-bl{ bottom:0; left:0; border-right:none; border-top:none; }
.mi-c-br{ bottom:0; right:0; border-left:none; border-top:none; }
.mi-cap{ font-family:var(--mono); font-size:10px; letter-spacing:2px; color:var(--muted); margin:10px 2px 0; }
.mi-statband{ display:grid; grid-template-columns:repeat(2,1fr); border:1px solid var(--border); background:var(--dark-2); margin-top:38px; }
@media (min-width:720px){ .mi-statband{ grid-template-columns:repeat(4,1fr); } }
.mi-stat{ padding:18px 16px 16px; border-right:1px solid var(--border); border-bottom:1px solid var(--border); }
.mi-stat:last-child{ border-right:none; }
@media (max-width:719px){ .mi-stat:nth-child(2n){ border-right:none; } .mi-stat:nth-child(n+3){ border-bottom:none; } }
@media (min-width:720px){ .mi-stat{ border-bottom:none; } }
.mi-stat-n{ display:block; font-family:var(--display); font-size:clamp(26px,4.5vw,40px); line-height:1; color:var(--green); font-variant-numeric:tabular-nums; }
.mi-stat-l{ display:block; font-family:var(--mono); font-size:10px; letter-spacing:1.6px; text-transform:uppercase; color:var(--muted); margin-top:7px; }

/* build log */
.mi-updates-list{ max-width:720px; }
.mi-update{ display:flex; gap:18px; padding:18px 0; border-bottom:1px solid var(--border); }
.mi-update:last-child{ border-bottom:none; }
.mi-update-date{ flex:0 0 64px; font-family:var(--mono); font-weight:700; font-size:12px; letter-spacing:1.5px; text-transform:uppercase; color:var(--orange); padding-top:3px; }
.mi-update-h{ font-family:var(--body); font-weight:700; font-size:17px; color:var(--cream); margin:0 0 6px; }
.mi-update-body p{ margin:0 0 4px; font-size:14.5px; color:var(--muted); }

/* instagram carousel */
.mi-media-track{ display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory; padding:4px 2px 14px; -webkit-overflow-scrolling:touch; scrollbar-color:var(--green) var(--dark-2); }
.mi-media-item{ flex:0 0 min(78vw,330px); scroll-snap-align:start; background:var(--card); border:1px solid var(--border); padding:10px 10px 12px; }
.mi-media-item .instagram-media{ min-width:0 !important; width:100% !important; margin:0 0 8px !important; }
.mi-media-link{ display:block; font-family:var(--mono); font-size:11px; letter-spacing:1.2px; text-transform:uppercase; color:var(--green); text-decoration:none; padding:4px 4px 0; }
.mi-media-link:hover{ color:var(--cream); }

/* availability date range */
.mi-avail-cap{ display:block; font-family:var(--mono); font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); margin:0 0 5px; }
.mi-avail-grid div{ min-width:0; }
.mi-form input[type=date]{ color-scheme:dark; min-height:48px; }

.mi-video-desc{ max-width:760px; font-size:14.5px; color:var(--muted); margin:14px 0 0; }
.mi-video-desc.mi-en{ margin-top:4px; }

.mi-strap{ font-family:var(--display); text-transform:uppercase; font-size:clamp(17px,2.6vw,24px); line-height:1.3; color:var(--cream); margin:4px 0 14px; max-width:640px; }

/* EN lines as digital captions in brand green: delineates the two languages */
.mi-en{ font-family:var(--mono); font-size:13px; line-height:1.6; letter-spacing:.4px; color:var(--green); }
.mi-sub.mi-en{ font-size:12.5px; }
.mi-fund-note.mi-en, .mi-video-desc.mi-en, .mi-note.mi-en{ color:var(--green); }
.mi-item-en{ font-family:var(--mono); font-size:10.5px; letter-spacing:.3px; color:var(--green); }
.mi-h1-en, .mi-en-h{ color:var(--green); }
.mi-update-body p.mi-en{ color:var(--green); font-size:12px; }
.mi-foot-brand p.mi-en{ font-family:var(--mono); font-size:11.5px; color:var(--green); }
.mi-btn-sponsor{ background:transparent; border:1px solid var(--orange); color:var(--orange); font-weight:400; }
.mi-btn-sponsor:hover{ background:var(--orange); color:#0D0E0A; }
.mi-brands{ background:var(--dark-2); }
.mi-jump{ position:sticky; top:0; z-index:40; display:flex; gap:4px; overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; background:var(--dark-bg); border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:10px 16px; }
.mi-jump::-webkit-scrollbar{ display:none; }
.mi-jump a{ flex:0 0 auto; font-family:var(--mono); font-size:11px; letter-spacing:.6px; text-transform:uppercase; color:var(--green); text-decoration:none; padding:7px 12px; border:1px solid var(--border); border-radius:999px; white-space:nowrap; }
.mi-jump a:hover{ border-color:var(--green); }
.mi-sec, .mi-hero{ scroll-margin-top:64px; }
html{ scroll-behavior:smooth; }
