/* ============================================================
   JET ATLAS — Événements privés (bespoke, `ev-` namespace, 2026 rebuild)
   Luxe · sport · vibrant — Electric Atlas branding:
   white + ink (#0A0A0A) + lime (#DCFF00).
   Mobile-first (~380px single column, centered) → min-width upgrades.
   Arc: cinematic hero w/ stat strip · centered manifesto · asymmetric
   occasion photo-grid · ink adrénaline price tiles · energy-wash steps ·
   ink orchestration (mosaic + services) · lime closer.
   Cormorant / Outfit / Inter / Space Grotesk.
   ============================================================ */

:root {
	--ev-ink:#0A0A0A; --ev-lime:#DCFF00; --ev-paper:#FFFFFF; --ev-paper2:#F5F5F2;
	--ev-line:rgba(10,10,10,.12); --ev-line-d:rgba(255,255,255,.16); --ev-mut:rgba(10,10,10,.58);
	--ev-serif:"Cormorant Garamond",Georgia,serif; --ev-ui:"Outfit",system-ui,sans-serif;
	--ev-body:"Inter",system-ui,sans-serif; --ev-data:"Space Grotesk",system-ui,sans-serif;
	--ev-ease:cubic-bezier(.16,1,.3,1); --ev-wrap:1240px;
}

/* ---- root & resets ---- */
.ev{ background:var(--ev-paper); color:var(--ev-ink); font-family:var(--ev-body); overflow-x:clip; }
.ev *{ box-sizing:border-box; }
.ev h1,.ev h2,.ev h3{ margin:0; } .ev p{ margin:0; }
.ev ul,.ev ol{ margin:0; padding:0; list-style:none; }
.ev img{ display:block; max-width:100%; }
.ev a{ text-decoration:none; }
.ev-wrap{ width:min(100% - 2*clamp(16px,5vw,56px),var(--ev-wrap)); margin-inline:auto; }

/* ---- primitives ---- */
.ev-dot{ width:8px; height:8px; border-radius:50%; background:var(--ev-lime); box-shadow:0 0 0 4px rgba(220,255,0,.22); flex:0 0 auto; }
/* pill eyebrows — lime (dark bands / hero), ghost (light bands), ink (lime closer) */
.ev-pill{ display:inline-flex; align-items:center; gap:9px; padding:9px 18px; border-radius:999px; background:var(--ev-lime); color:var(--ev-ink); font-family:var(--ev-ui); font-size:11px; font-weight:600; letter-spacing:2.2px; text-transform:uppercase; box-shadow:0 10px 26px -12px rgba(220,255,0,.55); }
.ev-pill i{ font-size:11px; }
.ev-pill--ghost{ background:transparent; color:var(--ev-ink); border:1px solid var(--ev-line); box-shadow:none; }
.ev-pill--ink{ background:var(--ev-ink); color:var(--ev-lime); box-shadow:0 14px 30px -16px rgba(10,10,10,.55); }
/* serif headline — lime underline on light, lime italic on dark */
.ev-h2{ font-family:var(--ev-serif); font-weight:500; font-size:clamp(34px,4.8vw,62px); line-height:1.08; letter-spacing:-.015em; color:var(--ev-ink); }
.ev-h2 em{ font-style:italic; text-decoration:underline; text-decoration-color:var(--ev-lime); text-decoration-thickness:.1em; text-underline-offset:.07em; }
.ev-h2--light{ color:#fff; }
.ev-h2--light em{ color:var(--ev-lime); text-decoration:none; }
/* dark-section titles must beat the theme's base heading colour */
.ev-hero__title,.ev-occ__title,.ev-adr__name,.ev-orch__title{ color:#fff; }

/* ---- buttons ---- */
.ev-btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:15px 28px; border-radius:999px; border:1px solid transparent; font-family:var(--ev-ui); font-size:12.5px; font-weight:600; letter-spacing:1.6px; text-transform:uppercase; text-decoration:none; cursor:pointer; white-space:nowrap; transition:background .35s var(--ev-ease),color .35s var(--ev-ease),border-color .35s var(--ev-ease),transform .35s var(--ev-ease),box-shadow .35s var(--ev-ease); }
.ev-btn:hover,.ev-btn:focus{ text-decoration:none; }
.ev-btn i{ font-size:1em; transition:transform .35s var(--ev-ease); } .ev-btn:hover i{ transform:translateX(3px); }
.ev-btn--lg{ padding:18px 38px; font-size:13px; }
/* NB: `.ev` prefix (0,2,0) so variant colours own rest AND hover — base.css `a:hover{color:var(--ja-ink)}` (0,1,1) can never outrank them. */
.ev .ev-btn--lime{ background:var(--ev-lime); color:var(--ev-ink); box-shadow:0 14px 30px -16px rgba(220,255,0,.6); }
.ev .ev-btn--lime:hover{ background:#e7ff3a; color:var(--ev-ink); transform:translateY(-3px); box-shadow:0 22px 46px -16px rgba(220,255,0,.9); }
.ev .ev-btn--glass{ background:rgba(255,255,255,.1); color:#fff; border-color:rgba(255,255,255,.4); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.ev .ev-btn--glass:hover{ background:#fff; color:var(--ev-ink); border-color:#fff; transform:translateY(-2px); }
.ev .ev-btn--ink{ background:var(--ev-ink); color:#fff; }
.ev .ev-btn--ink:hover{ color:var(--ev-lime); transform:translateY(-3px); box-shadow:0 18px 38px -18px rgba(10,10,10,.5); }
.ev .ev-btn--line{ background:transparent; color:var(--ev-ink); border-color:rgba(10,10,10,.42); }
.ev .ev-btn--line:hover{ background:var(--ev-ink); color:#fff; border-color:var(--ev-ink); transform:translateY(-2px); }

/* ---- reveal (gated by .ev-js so content stays visible without JS) ---- */
.ev-js .ev-reveal{ opacity:0; transform:translateY(28px); transition:opacity .8s var(--ev-ease),transform .8s var(--ev-ease); }
.ev-reveal.is-in{ opacity:1; transform:none; }

/* =========================================================
   HERO — full-bleed image, centered content, in-hero stat strip
   ========================================================= */
.ev-hero{ position:relative; min-height:100svh; display:flex; flex-direction:column; padding:130px 0 34px; color:#fff; overflow:hidden; isolation:isolate; }
.ev-hero__bg{ position:absolute; inset:0; z-index:-1; width:100%; height:100%; object-fit:cover; }
.ev-hero__veil{ position:absolute; inset:0; z-index:0; background:linear-gradient(180deg,rgba(10,10,10,.56),rgba(10,10,10,.46) 42%,rgba(10,10,10,.92)); }
.ev-hero__glow{ position:absolute; inset:0; z-index:0; background:radial-gradient(52% 42% at 50% 88%,rgba(220,255,0,.2),transparent 62%); mix-blend-mode:screen; pointer-events:none; }
.ev-hero__inner{ position:relative; z-index:1; flex:1; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; max-width:840px; }
.ev-hero__title{ font-family:var(--ev-serif); font-weight:500; font-size:clamp(36px,6.4vw,78px); line-height:1.02; letter-spacing:-.02em; margin-top:24px; padding-bottom:.05em; text-shadow:0 2px 30px rgba(10,10,10,.5); }
.ev-hero__title em{ font-style:italic; color:var(--ev-lime); }
.ev-hero__sub{ margin-top:clamp(24px,3.2vw,34px); max-width:56ch; font-size:clamp(15px,1.5vw,18px); line-height:1.65; color:rgba(255,255,255,.9); text-shadow:0 1px 14px rgba(10,10,10,.55); }
.ev-hero__cta{ display:flex; flex-wrap:wrap; justify-content:center; gap:14px; margin-top:34px; }
/* stat strip — hairline top, Space Grotesk figures, lime captions */
.ev-hero__stats{ position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:22px 16px; margin-top:clamp(38px,6vh,64px); padding-top:clamp(22px,3vh,30px); border-top:1px solid var(--ev-line-d); text-align:center; }
.ev-stat{ display:flex; flex-direction:column; align-items:center; gap:2px; }
.ev-stat__c{ font-family:var(--ev-ui); font-size:10.5px; font-weight:600; letter-spacing:1.8px; text-transform:uppercase; color:var(--ev-lime); }
.ev-stat__n{ font-family:var(--ev-data); font-weight:600; font-size:clamp(34px,4.4vw,54px); line-height:1.05; letter-spacing:-.02em; color:#fff; }
.ev-stat__l{ font-family:var(--ev-ui); font-size:12px; letter-spacing:.4px; color:rgba(255,255,255,.72); }

/* =========================================================
   MANIFESTO — centered editorial statement (white)
   ========================================================= */
.ev-mani{ padding:clamp(84px,11vw,150px) 0; }
.ev-mani__inner{ display:flex; flex-direction:column; align-items:center; text-align:center; max-width:900px; }
.ev-mani__text{ margin-top:clamp(26px,3.4vw,38px); font-family:var(--ev-serif); font-weight:500; font-size:clamp(24px,3.4vw,42px); line-height:1.32; letter-spacing:-.01em; color:var(--ev-ink); }
.ev-mani__text em{ font-style:italic; text-decoration:underline; text-decoration-color:var(--ev-lime); text-decoration-thickness:.09em; text-underline-offset:.08em; }
.ev-mani__tags{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:clamp(28px,3.4vw,40px); }
.ev-mani__tags li{ display:inline-flex; align-items:center; gap:9px; padding:10px 18px; border:1px solid var(--ev-line); border-radius:999px; font-family:var(--ev-ui); font-size:12px; font-weight:600; letter-spacing:.6px; color:var(--ev-ink); background:var(--ev-paper); transition:background .35s var(--ev-ease),border-color .35s var(--ev-ease),transform .35s var(--ev-ease),box-shadow .35s var(--ev-ease); }
.ev-mani__tags li:hover{ background:var(--ev-lime); border-color:var(--ev-lime); transform:translateY(-3px); box-shadow:0 14px 28px -14px rgba(220,255,0,.7); }

/* =========================================================
   OCCASIONS — asymmetric photo grid, lime index (paper2)
   ========================================================= */
.ev-occ{ background:var(--ev-paper2); padding:clamp(80px,10vw,140px) 0; }
.ev-occ__head{ display:flex; flex-direction:column; align-items:center; gap:18px; text-align:center; margin-bottom:clamp(34px,4vw,54px); }
.ev-occ__head .ev-h2{ margin-top:16px; }
.ev-occ__lead{ max-width:52ch; font-size:15px; line-height:1.7; color:var(--ev-mut); }
.ev-occ__grid{ display:grid; grid-template-columns:1fr; gap:16px; }
.ev-occ__card{ position:relative; min-height:min(88vw,340px); border-radius:20px; overflow:hidden; isolation:isolate; display:flex; flex-direction:column; justify-content:flex-end; padding:clamp(20px,2.4vw,30px); text-align:left; transition:transform .5s var(--ev-ease),box-shadow .5s var(--ev-ease); }
.ev-occ__img{ position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover; transition:transform .9s var(--ev-ease); }
.ev-occ__card::before{ content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(10,10,10,.24) 0%,rgba(10,10,10,.06) 32%,rgba(10,10,10,.88)); transition:background .5s var(--ev-ease); }
.ev-occ__card:hover{ transform:translateY(-6px); box-shadow:0 34px 60px -30px rgba(10,10,10,.5); }
.ev-occ__card:hover .ev-occ__img{ transform:scale(1.06); }
.ev-occ__card:hover::before{ background:linear-gradient(180deg,rgba(10,10,10,.16) 16%,rgba(10,10,10,.92)); }
/* lime energy-bar sweeps across the base on hover (SPORT) */
.ev-occ__card::after{ content:""; position:absolute; left:0; bottom:0; z-index:3; height:3px; width:100%; background:var(--ev-lime); box-shadow:0 0 16px rgba(220,255,0,.75); transform:scaleX(0); transform-origin:left; transition:transform .55s var(--ev-ease); }
.ev-occ__card:hover::after{ transform:scaleX(1); }
.ev-occ__idx{ position:absolute; top:16px; left:16px; z-index:2; padding:6px 11px; border-radius:10px; background:var(--ev-lime); color:var(--ev-ink); font-family:var(--ev-data); font-size:13px; font-weight:700; letter-spacing:1.6px; box-shadow:0 10px 24px -10px rgba(220,255,0,.7); }
.ev-occ__ico{ position:absolute; top:20px; right:20px; z-index:2; font-size:19px; color:var(--ev-lime); filter:drop-shadow(0 4px 12px rgba(10,10,10,.6)); transition:transform .5s var(--ev-ease); }
.ev-occ__card:hover .ev-occ__ico{ transform:translateY(-3px) scale(1.12); }
.ev-occ__body{ position:relative; z-index:2; transition:transform .5s var(--ev-ease); }
.ev-occ__card:hover .ev-occ__body{ transform:translateY(-4px); }
.ev-occ__title{ font-family:var(--ev-serif); font-weight:500; font-size:clamp(26px,2.6vw,36px); line-height:1.05; }
.ev-occ__desc{ margin-top:9px; max-width:52ch; font-size:14px; line-height:1.55; color:rgba(255,255,255,.82); }

/* =========================================================
   ADRÉNALINE — ink band, price tiles (Space Grotesk figures)
   ========================================================= */
.ev-adr{ position:relative; background:var(--ev-ink); color:#fff; padding:clamp(84px,10vw,140px) 0; overflow:hidden; }
.ev-adr__glow{ position:absolute; inset:0; background:radial-gradient(50% 40% at 15% 0%,rgba(220,255,0,.1),transparent 60%),radial-gradient(44% 36% at 92% 100%,rgba(220,255,0,.08),transparent 60%); pointer-events:none; }
.ev-adr__head{ position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; text-align:center; max-width:760px; margin:0 auto clamp(36px,4.4vw,56px); }
.ev-adr__head .ev-h2{ margin-top:18px; }
.ev-adr__sub{ margin-top:clamp(20px,2.6vw,28px); max-width:58ch; font-size:clamp(15px,1.5vw,17px); line-height:1.7; color:rgba(255,255,255,.82); }
.ev-adr__grid{ position:relative; z-index:1; display:grid; grid-template-columns:1fr; gap:14px; }
.ev-adr__tile{ position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px; padding:clamp(24px,2.6vw,32px) 20px; border-radius:18px; background:rgba(255,255,255,.045); border:1px solid var(--ev-line-d); overflow:hidden; transition:transform .45s var(--ev-ease),border-color .45s var(--ev-ease),background .45s var(--ev-ease),box-shadow .45s var(--ev-ease); }
.ev-adr__tile::after{ content:""; position:absolute; left:0; bottom:0; height:3px; width:100%; background:var(--ev-lime); box-shadow:0 0 14px rgba(220,255,0,.75); transform:scaleX(0); transform-origin:left; transition:transform .5s var(--ev-ease); }
.ev-adr__tile:hover{ transform:translateY(-6px); border-color:rgba(220,255,0,.45); background:rgba(255,255,255,.07); box-shadow:0 30px 54px -30px rgba(0,0,0,.8); }
.ev-adr__tile:hover::after{ transform:scaleX(1); }
/* lime rounded-square icon tile, ink glyph (site signature) */
.ev-adr__ico{ width:56px; height:56px; display:grid; place-items:center; border-radius:15px; background:var(--ev-lime); color:var(--ev-ink); font-size:21px; box-shadow:0 16px 32px -14px rgba(220,255,0,.55); transition:transform .45s var(--ev-ease); }
.ev-adr__tile:hover .ev-adr__ico{ transform:translateY(-4px) rotate(-4deg); }
.ev-adr__name{ font-family:var(--ev-ui); font-size:13px; font-weight:600; letter-spacing:1.6px; text-transform:uppercase; line-height:1.4; }
.ev-adr__price{ display:flex; align-items:baseline; justify-content:center; gap:7px; font-family:var(--ev-data); font-weight:600; font-size:clamp(30px,3.2vw,40px); line-height:1; letter-spacing:-.02em; color:#fff; }
.ev-adr__price small{ font-family:var(--ev-ui); font-size:11px; font-weight:600; letter-spacing:1.8px; text-transform:uppercase; color:var(--ev-lime); }
.ev-adr__foot{ position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; gap:20px; margin-top:clamp(30px,3.6vw,44px); text-align:center; }
.ev-adr__note{ display:inline-flex; align-items:center; gap:10px; font-family:var(--ev-ui); font-size:13px; letter-spacing:.4px; color:rgba(255,255,255,.72); }
.ev-adr__note i{ color:var(--ev-lime); }

/* =========================================================
   STEPS — energy wash (pale lime→white), floating white cards
   ========================================================= */
.ev-steps{ background:linear-gradient(180deg,rgba(220,255,0,.18),rgba(220,255,0,.05) 44%,var(--ev-paper) 86%); padding:clamp(84px,10vw,140px) 0; }
.ev-steps__head{ display:flex; flex-direction:column; align-items:center; text-align:center; max-width:640px; margin:0 auto clamp(36px,4.4vw,54px); }
.ev-steps__head .ev-h2{ margin-top:16px; }
.ev-steps__grid{ display:grid; grid-template-columns:1fr; gap:16px; counter-reset:ev-step; }
.ev-step{ position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px; padding:clamp(28px,3vw,38px) clamp(20px,2.4vw,30px); border-radius:22px; background:var(--ev-paper); border:1px solid var(--ev-line); box-shadow:0 26px 54px -34px rgba(10,10,10,.28); overflow:hidden; transition:transform .45s var(--ev-ease),box-shadow .45s var(--ev-ease); }
.ev-step::after{ content:""; position:absolute; left:0; top:0; height:3px; width:100%; background:var(--ev-lime); box-shadow:0 0 12px rgba(220,255,0,.7); transform:scaleX(0); transform-origin:left; transition:transform .5s var(--ev-ease); }
.ev-step:hover{ transform:translateY(-6px); box-shadow:0 36px 64px -34px rgba(10,10,10,.36); }
.ev-step:hover::after{ transform:scaleX(1); }
.ev-step__num{ width:52px; height:52px; display:grid; place-items:center; border-radius:14px; background:var(--ev-lime); color:var(--ev-ink); font-family:var(--ev-data); font-size:17px; font-weight:700; letter-spacing:1px; box-shadow:0 14px 28px -12px rgba(220,255,0,.6); transition:transform .45s var(--ev-ease); }
.ev-step:hover .ev-step__num{ transform:scale(1.08) rotate(-4deg); }
.ev-step__title{ font-family:var(--ev-serif); font-weight:600; font-size:clamp(22px,2vw,27px); }
.ev-step__desc{ max-width:38ch; font-size:14.5px; line-height:1.62; color:var(--ev-mut); }
.ev .ev-steps__note{ display:flex; align-items:center; gap:14px; max-width:680px; margin:clamp(72px,8vw,104px) auto 0; padding:16px 28px; border-radius:16px; background:var(--ev-ink); color:#fff; font-family:var(--ev-ui); font-size:clamp(14px,1.5vw,16.5px); font-weight:600; line-height:1.45; letter-spacing:.3px; text-align:left; box-shadow:0 24px 50px -24px rgba(10,10,10,.62); }
.ev-steps__note i{ width:42px; height:42px; display:grid; place-items:center; border-radius:12px; background:var(--ev-lime); color:var(--ev-ink); font-size:17px; flex:0 0 auto; box-shadow:0 12px 24px -10px rgba(220,255,0,.7); }

/* =========================================================
   ORCHESTRATION — ink band, photo mosaic + service tiles
   ========================================================= */
.ev-orch{ background:var(--ev-ink); color:#fff; padding:clamp(84px,10vw,140px) 0; }
.ev-orch__head{ display:flex; flex-direction:column; align-items:center; gap:18px; text-align:center; margin-bottom:clamp(32px,4vw,50px); }
.ev-orch__head .ev-h2{ margin-top:16px; }
.ev-orch__lead{ max-width:54ch; font-size:15px; line-height:1.7; color:rgba(255,255,255,.78); }
.ev-orch__mosaic{ display:grid; grid-template-columns:1fr; gap:14px; margin-bottom:clamp(34px,4vw,52px); }
.ev-orch__ph{ position:relative; margin:0; border-radius:18px; overflow:hidden; isolation:isolate; }
.ev-orch__ph img{ width:100%; height:min(64vw,260px); object-fit:cover; transition:transform .9s var(--ev-ease); }
.ev-orch__ph::before{ content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,transparent 46%,rgba(10,10,10,.72)); pointer-events:none; }
.ev-orch__ph:hover img{ transform:scale(1.06); }
.ev-orch__cap{ position:absolute; left:14px; bottom:14px; z-index:2; display:inline-flex; align-items:center; gap:9px; padding:8px 15px; border-radius:999px; background:var(--ev-lime); color:var(--ev-ink); font-family:var(--ev-ui); font-size:11.5px; font-weight:600; letter-spacing:1.6px; text-transform:uppercase; box-shadow:0 12px 26px -12px rgba(220,255,0,.7); }
.ev-orch__cap span{ font-family:var(--ev-data); font-weight:700; }
.ev-orch__grid{ display:grid; grid-template-columns:1fr; gap:14px; }
.ev-orch__svc{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:14px; padding:clamp(22px,2.4vw,28px); border-radius:18px; background:rgba(255,255,255,.045); border:1px solid var(--ev-line-d); transition:transform .45s var(--ev-ease),border-color .45s var(--ev-ease),background .45s var(--ev-ease); }
.ev-orch__svc:hover{ transform:translateY(-5px); border-color:rgba(220,255,0,.4); background:rgba(255,255,255,.07); }
.ev-orch__ico{ width:52px; height:52px; display:grid; place-items:center; border-radius:14px; background:var(--ev-lime); color:var(--ev-ink); font-size:19px; flex:0 0 auto; box-shadow:0 14px 30px -14px rgba(220,255,0,.55); transition:transform .45s var(--ev-ease); }
.ev-orch__svc:hover .ev-orch__ico{ transform:translateY(-3px) rotate(-4deg); }
.ev-orch__title{ font-family:var(--ev-serif); font-weight:600; font-size:clamp(20px,1.8vw,24px); }
.ev-orch__desc{ margin-top:6px; font-size:14px; line-height:1.6; color:rgba(255,255,255,.72); }

/* =========================================================
   CLOSER — lime full-bleed CTA (final section before ja-horizon)
   ========================================================= */
.ev-closer{ position:relative; background:var(--ev-lime); color:var(--ev-ink); padding:clamp(90px,12vw,150px) 0; overflow:hidden; text-align:center; }
.ev-closer__glow{ position:absolute; inset:0; background:radial-gradient(52% 62% at 50% 0%,rgba(255,255,255,.55),transparent 62%); mix-blend-mode:soft-light; pointer-events:none; animation:ev-glow 5.5s ease-in-out infinite; }
@keyframes ev-glow{ 0%,100%{ opacity:.7; transform:scale(1); } 50%{ opacity:1; transform:scale(1.06); } }
.ev-closer__inner{ position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; max-width:780px; }
.ev-closer__inner .ev-closer__title{ margin-top:clamp(22px,3vw,30px); font-family:var(--ev-serif); font-weight:500; font-size:clamp(44px,8vw,104px); line-height:1.02; letter-spacing:-.02em; color:var(--ev-ink); padding-bottom:.05em; }
.ev-closer__title em{ font-style:italic; text-decoration:underline; text-decoration-color:rgba(10,10,10,.85); text-decoration-thickness:.05em; text-underline-offset:.06em; }
.ev-closer__inner .ev-closer__sub{ margin-top:clamp(24px,3vw,32px); max-width:54ch; font-size:clamp(15px,1.5vw,18px); line-height:1.7; color:rgba(10,10,10,.82); }
.ev-closer__cta{ display:flex; flex-wrap:wrap; justify-content:center; gap:14px; margin-top:clamp(34px,4.6vw,46px); }

/* ---- contact form (on the lime closer) ---- */
.ev-form-wrap{ position:relative; z-index:1; width:100%; max-width:640px; margin:clamp(30px,4vw,42px) auto 0; text-align:left; }
.ev-form__notice{ display:flex; align-items:center; gap:10px; margin:0 0 18px; padding:14px 18px; border-radius:14px; font-family:var(--ev-ui); font-size:14px; font-weight:600; letter-spacing:.2px; }
.ev-form__notice i{ font-size:1.05em; }
.ev-form__notice--ok{ background:var(--ev-ink); color:var(--ev-lime); }
.ev-form__notice--err{ background:#fff; color:#b3261e; border:1px solid rgba(179,38,30,.4); }
.ev-form{ background:var(--ev-paper); border-radius:22px; padding:clamp(22px,3vw,34px); box-shadow:0 34px 70px -34px rgba(10,10,10,.45); border:1px solid rgba(10,10,10,.06); }
.ev-form__row{ display:grid; grid-template-columns:1fr; gap:16px; margin-bottom:16px; }
.ev-field{ display:flex; flex-direction:column; gap:7px; margin-bottom:16px; }
.ev-form__row .ev-field{ margin-bottom:0; }
.ev-field__lb{ font-family:var(--ev-ui); font-size:12px; font-weight:600; letter-spacing:.6px; text-transform:uppercase; color:var(--ev-ink); }
.ev-field__lb em{ font-style:normal; color:#b3261e; }
.ev-field__lb small{ text-transform:none; letter-spacing:0; font-weight:500; color:var(--ev-mut); }
.ev-field input,.ev-field select,.ev-field textarea{ width:100%; font-family:var(--ev-body); font-size:15px; color:var(--ev-ink); background:var(--ev-paper2); border:1px solid var(--ev-line); border-radius:12px; padding:13px 15px; transition:border-color .3s var(--ev-ease),box-shadow .3s var(--ev-ease),background .3s var(--ev-ease); }
.ev-field textarea{ resize:vertical; min-height:104px; }
.ev-field input:focus,.ev-field select:focus,.ev-field textarea:focus{ outline:none; background:#fff; border-color:var(--ev-ink); box-shadow:0 0 0 4px rgba(220,255,0,.45); }
.ev-form__foot{ display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin-top:22px; }
.ev-form__hint{ display:inline-flex; align-items:center; gap:8px; font-family:var(--ev-ui); font-size:12px; letter-spacing:.3px; color:var(--ev-mut); }
.ev-form__hint i{ color:var(--ev-ink); }
.ev-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

/* =========================================================
   RESPONSIVE — mobile-first upgrades
   ========================================================= */
@media (min-width:560px){
	.ev-adr__grid{ grid-template-columns:repeat(2,1fr); }
}
@media (min-width:680px){
	.ev-occ__grid{ grid-template-columns:repeat(2,1fr); }
	.ev-occ__card{ min-height:360px; }
	.ev-occ__card:nth-child(1){ grid-column:1 / -1; min-height:400px; }
	.ev-orch__mosaic{ grid-template-columns:repeat(3,1fr); }
	.ev-orch__ph img{ height:clamp(190px,24vw,280px); }
	.ev-orch__grid{ grid-template-columns:repeat(2,1fr); }
	.ev-orch__svc{ flex-direction:row; align-items:flex-start; text-align:left; }
	.ev-adr__foot{ flex-direction:row; justify-content:space-between; text-align:left; }
	.ev-form__row{ grid-template-columns:1fr 1fr; gap:18px; margin-bottom:16px; }
}
@media (min-width:900px){
	.ev-hero__stats{ grid-template-columns:repeat(3,1fr); }
	.ev-steps__grid{ grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,26px); }
	.ev-occ__head{ flex-direction:row; align-items:flex-end; justify-content:space-between; text-align:left; gap:40px; }
	.ev-occ__lead{ max-width:38ch; padding-bottom:6px; }
	.ev-orch__head{ flex-direction:row; align-items:flex-end; justify-content:space-between; text-align:left; gap:40px; }
	.ev-orch__lead{ max-width:40ch; padding-bottom:6px; }
}
@media (min-width:1024px){
	.ev-adr__grid{ grid-template-columns:repeat(3,1fr); }
	.ev-orch__grid{ grid-template-columns:repeat(3,1fr); }
}
@media (min-width:1100px){
	/* asymmetric editorial grid: big feature + companion, then a trio */
	.ev-occ__grid{ grid-template-columns:repeat(6,1fr); gap:18px; }
	.ev-occ__card{ grid-column:span 2; min-height:380px; }
	.ev-occ__card:nth-child(1){ grid-column:span 4; min-height:440px; }
	.ev-occ__card:nth-child(2){ grid-column:span 2; min-height:440px; }
}

/* ---- reduced motion ---- */
@media (prefers-reduced-motion:reduce){
	.ev-js .ev-reveal{ opacity:1; transform:none; transition:none; }
	.ev-closer__glow{ animation:none; }
	.ev-occ__img,.ev-orch__ph img,.ev-adr__tile,.ev-step,.ev-occ__card,.ev-orch__svc,.ev-btn{ transition:none; }
}


/* ---- Mobile hero: trim content + spacing so the background shows (2026-07) ---- */
@media (max-width: 700px) {
  .ev-hero { padding: 94px 0 22px; }
  .ev-hero__title { margin-top: 14px; }
  .ev-hero__sub { margin-top: 14px; max-width: 42ch; font-size: 14.5px; line-height: 1.55; }
  .ev-hero__cta { margin-top: 22px; gap: 10px; }
  .ev-hero__stats { gap: 14px 12px; margin-top: 24px; padding-top: 16px; }
}
