/* ============================================================
   ECLISSI — main.css · COLLAGE REBUILD
   refs: JADED LONDON · Energy Orange · Anti Desi · Y2K · Patrua
============================================================ */

/* ---------- 1. RESET ---------- */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:'Inter',sans-serif;font-weight:400;color:var(--cream);background:var(--graphite);overflow-x:hidden}
img,video{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;background:none;border:none;cursor:pointer;color:inherit}
ul{list-style:none}

/* ---------- 2. VARIABLES ---------- */
:root{
  --graphite:#161413;
  --burgundy:#7A2D2A;
  --terracotta:#B34E43;
  --pink:#E5C8C0;
  --ivory:#DAD7B8;
  --olive:#7A8060;
  --cream:#F2EDE2;

  --f-heavy:'Bricolage Grotesque', 'Anton', 'Inter', sans-serif;
  --f-serif:'Cormorant Garamond', serif;
  --f-sans:'Space Grotesk', 'Inter', sans-serif;
  --f-mono:'JetBrains Mono', monospace;
  --f-hand:'Caveat', cursive;

  --ease:cubic-bezier(0.16, 1, 0.3, 1);
  --ease-mask:cubic-bezier(0.77, 0, 0.175, 1);
}

/* dot pattern background utility (from "what a shame" ref) */
.dot-bg{background-image:radial-gradient(rgba(229,200,192,0.18) 1px, transparent 1px);background-size:14px 14px}
.dot-bg-dark{background-image:radial-gradient(rgba(58,54,51,0.16) 1px, transparent 1px);background-size:14px 14px}

/* ---------- 3. TYPOGRAPHY ---------- */
.mono{font-family:var(--f-mono);font-size:11px;letter-spacing:0.25em;text-transform:uppercase;font-weight:400}
.mono-sm{font-family:var(--f-mono);font-size:9px;letter-spacing:0.3em;text-transform:uppercase}
.serif-italic{font-family:var(--f-serif);font-style:italic}
.hand{font-family:var(--f-hand);font-weight:400}
.heavy{font-family:var(--f-heavy);font-weight:400;letter-spacing:-0.02em;line-height:0.85;text-transform:uppercase}

/* ---------- 4. PRELOADER — auto-fade via CSS, no JS dependency ---------- */
.preloader{position:fixed;inset:0;z-index:10000;background:var(--graphite);display:flex;flex-direction:column;align-items:center;justify-content:center;animation:preloader-auto-hide 2.6s ease-in-out forwards}
.preloader__title{font-family:var(--f-heavy);color:var(--pink);font-size:clamp(80px,16vw,220px);letter-spacing:0.04em;line-height:0.85;text-transform:uppercase}
.preloader__bar{width:240px;height:1px;background:rgba(229,200,192,0.2);margin-top:32px;overflow:hidden}
.preloader__bar::after{content:'';display:block;height:100%;background:var(--pink);width:0;animation:fill 2.2s var(--ease) forwards}
.preloader.hidden{opacity:0;pointer-events:none;visibility:hidden}
@keyframes fill{to{width:100%}}
@keyframes preloader-auto-hide{
  0%, 75% {opacity:1;visibility:visible}
  100% {opacity:0;visibility:hidden;pointer-events:none}
}

/* ---------- 5. FLY CURSOR (PNG fly — global) ---------- */
@media(min-width:1024px){
  body{cursor:none}
  .cursor{display:none}
  .fly-cursor{
    position:fixed;
    left:0;top:0;
    width:56px;height:auto;
    z-index:9999;
    pointer-events:none;
    transform:translate(-50%,-50%);
    transition:width .4s var(--ease), filter .35s var(--ease);
    filter:drop-shadow(0 3px 6px rgba(0,0,0,0.45));
  }
  .fly-cursor__img{
    width:100%;height:auto;display:block;
    transform-origin:50% 50%;
  }
  /* FLAP & SHAKE only when over .flytrap (caught) */
  .fly-cursor.is-flapping{
    width:80px;
    filter:drop-shadow(0 5px 10px rgba(0,0,0,0.55));
  }
  .fly-cursor.is-flapping .fly-cursor__img{
    animation:fly-panic 0.12s ease-in-out infinite alternate;
  }
  @keyframes fly-panic{
    0%{transform:translate(0,0) rotate(-3deg) scaleY(1)}
    100%{transform:translate(0.5px,-0.5px) rotate(3deg) scaleY(0.92)}
  }
}
@media(max-width:1023px){
  .fly-cursor{display:none}
}

/* ---------- 6. NAV ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:20px 60px;color:var(--cream);transition:transform .5s var(--ease)}
.nav.hidden{transform:translateY(-100%)}
.nav__logo{display:flex;align-items:center;gap:12px}
.nav__logo img{width:64px;height:64px;display:block;object-fit:contain;filter:drop-shadow(0 0 12px rgba(229,200,192,0.35))}
.nav__menu{display:flex;gap:36px}
.nav__menu a{font-family:'Inter',sans-serif;font-size:13px;letter-spacing:0.22em;text-transform:uppercase;position:relative;padding-bottom:4px;color:rgba(178,180,184,0.7);font-weight:500}
.nav__menu a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:0.5px;background:rgba(178,180,184,0.85);transition:width .4s var(--ease)}
.nav__menu a:hover{color:rgba(220,222,225,0.95)}
.nav__menu a:hover::after{width:100%}
.nav__handle{font-family:'Inter',sans-serif;font-size:12px;letter-spacing:0.18em;color:rgba(178,180,184,0.78);font-weight:500;text-transform:uppercase}
.nav__burger{display:none;flex-direction:column;gap:5px;padding:6px}
.nav__burger span{width:22px;height:0.5px;background:var(--cream)}

@media(max-width:1023px){
  .nav{padding:14px 20px}
  .nav__menu,.nav__handle{display:none}
  .nav__burger{display:flex}
}

/* ============================================================
   HERO MEGA — JADED LONDON × video bg
============================================================ */
.hero{position:relative;aspect-ratio:21/9;min-height:auto;height:auto;background:var(--graphite);overflow:hidden;display:flex;flex-direction:column;padding:75px 40px 40px}
@media(max-width:1023px){.hero{aspect-ratio:auto;min-height:80vh}}

/* full-bleed video or photo background */
.hero__bg-video,.hero__bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;z-index:1;opacity:1}
.hero__bg-overlay{display:none}

/* soft pink glow behind dark pearl logo */
.hero__glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:80vw;max-width:1100px;height:60vh;background:radial-gradient(ellipse at center,rgba(229,200,192,0.28) 0%,rgba(229,200,192,0.14) 40%,transparent 70%);z-index:2;pointer-events:none;filter:blur(20px)}

/* top row corner labels */
.hero__row{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:6;gap:24px}
.hero__row--bottom{align-items:flex-end;margin-top:auto}
.hero__corner{font-family:'Italiana','Playfair Display',serif;font-size:18px;letter-spacing:0.18em;text-transform:uppercase;color:#0E0C0B;line-height:1.5;max-width:320px;font-weight:400}
.hero__corner--right{text-align:right}
.hero__corner b{font-weight:400;color:#0E0C0B;display:block;margin-bottom:6px;letter-spacing:0.22em;font-size:14px;font-family:'Italiana',serif;font-style:normal;text-transform:uppercase}

/* center block (wordmark + concept) — group lifted to top, above eyes */
.hero__center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:relative;z-index:5;padding:0;min-height:50vh;gap:0}

/* TOP-LEFT (just under the nav): ECLISSI text wordmark + sub */
.hero__center-left{
  position:absolute;
  left:60px;top:75px; /* nav ends ~55px, +0.5cm gap */
  transform:none;
  z-index:6;
  display:flex;flex-direction:column;
  align-items:flex-start;
  gap:14px;
  width:auto;
  pointer-events:none;
  max-width:60vw;
}
.hero__brand-text{
  font-family:'Italiana','Playfair Display','Bodoni Moda',serif;
  font-weight:400;
  font-size:clamp(80px, 11vw, 180px);
  letter-spacing:0.02em;
  line-height:0.9;
  text-transform:uppercase;
  margin:0;
  background:linear-gradient(110deg,
    #F2C5C8 0%,
    #FFE0DC 12%,
    #E8B8C5 24%,
    #FFEFEC 36%,
    #F5C8D0 48%,
    #FFE5E0 60%,
    #E8B8C5 72%,
    #FFDFDC 84%,
    #F2C5C8 100%);
  background-size:280% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 6s linear infinite;
  filter:drop-shadow(0 4px 22px rgba(0,0,0,0.5)) drop-shadow(0 0 22px rgba(242,175,194,0.32));
}
.hero__sub-top{
  display:block;
  font-family:'Italiana',serif;
  font-weight:400;
  font-size:clamp(14px, 1.3vw, 22px);
  letter-spacing:0.52em;
  text-transform:uppercase;
  line-height:1;
  color:rgba(245,238,228,0.78);
  text-shadow:0 0 10px rgba(229,200,192,0.28), 0 1px 4px rgba(0,0,0,0.5);
  padding-left:0.52em;
}
.hero__tooth{display:none}
.hero__flower-wrap, .hero__flower-logo{display:none}

@media(max-width:1023px){
  .hero__center-left{left:24px;top:64px;max-width:84vw}
  .hero__brand-text{font-size:clamp(54px,15vw,90px)}
  .hero__sub-top{font-size:12px;letter-spacing:0.4em}
}
@keyframes tooth-top-bite{
  0%,100%   {transform:translateY(-22%) rotate(-4deg) scaleY(1)}
  44%,56%   {transform:translateY(0%) rotate(2deg) scaleY(1.05)}
}
@keyframes tooth-bot-bite{
  0%,100%   {transform:translateY(22%) rotate(4deg) scaleY(1)}
  44%,56%   {transform:translateY(0%) rotate(-2deg) scaleY(1.05)}
}

/* old CSS-glass title kept for fallback compatibility (hidden) */
.hero__glass-title{
  display:none;
  font-family:'Playfair Display',serif;
  font-weight:900;
  font-size:clamp(56px,8.5vw,150px);
  line-height:0.95;
  letter-spacing:-0.01em;
  text-transform:uppercase;
  text-align:center;
  margin:0;
  position:relative;
  color:rgba(255,255,255,0.13);
  -webkit-text-stroke:0.7px rgba(255,255,255,0.82);
  text-stroke:0.7px rgba(255,255,255,0.82);
  animation:eclissi-pulse 3.6s ease-in-out infinite
}
.hero__glass-title::after{
  content:attr(data-text);
  position:absolute;
  left:0;right:0;top:0;
  background:linear-gradient(100deg,
    transparent 5%,
    rgba(229,200,192,0.55) 18%,
    rgba(255,255,255,0.95) 28%,
    rgba(229,200,192,0.6) 38%,
    transparent 48%,
    rgba(255,210,220,0.45) 58%,
    rgba(255,255,255,0.85) 68%,
    rgba(229,200,192,0.5) 76%,
    transparent 88%);
  background-size:320% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  pointer-events:none;
  animation:eclissi-shine 5s linear infinite;
  mix-blend-mode:screen
}
.hero__glass-title::before{
  content:attr(data-text);
  position:absolute;
  left:0;right:0;top:0;
  background:linear-gradient(80deg,
    transparent 20%,
    rgba(255,255,255,0.4) 45%,
    rgba(255,200,215,0.55) 55%,
    transparent 75%);
  background-size:280% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  pointer-events:none;
  animation:eclissi-shine-2 7s linear infinite;
  mix-blend-mode:screen
}
@keyframes eclissi-pulse{
  0%,100%{filter:drop-shadow(0 0 14px rgba(229,200,192,0.35)) drop-shadow(0 0 5px rgba(255,255,255,0.4))}
  50%{filter:drop-shadow(0 0 36px rgba(229,200,192,0.7)) drop-shadow(0 0 14px rgba(255,255,255,0.65))}
}
@keyframes eclissi-shine{
  0%{background-position:-220% 0}
  100%{background-position:220% 0}
}
@keyframes eclissi-shine-2{
  0%{background-position:220% 0}
  100%{background-position:-220% 0}
}

/* SUB STUDIO OF AI VISUAL — light cream glass, smaller, no animation */
.hero__glass-sub{
  display:block;
  text-align:center;
  margin-top:10px;
  font-family:'Italiana',serif;
  font-weight:400;
  font-size:clamp(16px,2vw,32px);
  letter-spacing:0.46em;
  text-transform:uppercase;
  line-height:1;
  color:rgba(255,255,255,0.55);
  text-shadow:0 0 12px rgba(229,200,192,0.3),0 1px 4px rgba(0,0,0,0.3)
}
.hero__wordmark-sub{display:block;text-align:center;margin-top:-60px;font-family:'Archivo Black','Anton',sans-serif;font-weight:400;font-size:clamp(14px,1.7vw,26px);letter-spacing:0.08em;color:rgba(70,62,56,0.78);text-transform:uppercase;line-height:0.95;text-shadow:0 1px 0 rgba(255,255,255,0.05),0 -1px 0 rgba(0,0,0,0.5),0 3px 8px rgba(0,0,0,0.45);-webkit-mask-image:linear-gradient(to bottom,black 25%,transparent 100%);mask-image:linear-gradient(to bottom,black 25%,transparent 100%)}
/* fallback text wordmark if image fails */
.hero__mega{text-align:center;font-family:var(--f-heavy);font-size:clamp(64px,15vw,220px);line-height:0.85;color:var(--cream);letter-spacing:-0.02em;text-transform:uppercase}
.hero__mega .italic-row{font-family:var(--f-heavy);font-weight:400;text-transform:uppercase;letter-spacing:-0.02em;color:var(--pink);font-size:0.55em;line-height:1;display:block;margin-top:8px}

/* concept tag under wordmark */
.hero__concept{margin-top:14px;font-family:'Italiana',serif;font-size:14px;letter-spacing:0.42em;color:#0E0C0B;text-transform:uppercase;text-align:center;font-weight:400}
.hero__concept em{font-style:normal;color:#0E0C0B}

/* hero editorial subtitle — Italiana editorial serif black */
.hero__editorial-cap{font-family:'Italiana',serif;font-size:20px;line-height:1.5;color:#0E0C0B;max-width:380px;letter-spacing:0.14em;text-transform:uppercase;font-weight:400}
.hero__editorial-cap b{font-family:'Italiana',serif;font-weight:400;font-size:14px;letter-spacing:0.22em;color:#0E0C0B;text-transform:uppercase;display:block;margin-bottom:6px}

/* Big Screen style mini-card slider in bottom-right */
.hero__minicard{position:absolute;right:40px;bottom:40px;display:flex;flex-direction:column;gap:14px;align-items:flex-end;z-index:8}
.hero__minicard-photo{width:170px;height:230px;overflow:hidden;border:0.5px solid var(--pink);background:var(--graphite);position:relative}
.hero__minicard-photo img,.hero__minicard-photo video{width:100%;height:100%;object-fit:cover;display:block}
.hero__minicard-photo::after{content:'';position:absolute;top:14px;left:14px;width:30px;height:30px;border-radius:50%;background:var(--pink);opacity:0;transition:opacity .4s}
.hero__minicard-dots{display:flex;gap:6px;align-items:center;font-family:var(--f-sans);font-size:11px;letter-spacing:0.2em;color:var(--cream);font-weight:500}
.hero__minicard-dots .dot{width:18px;height:1px;background:var(--cream);opacity:0.4}
.hero__minicard-dots .dot.active{background:var(--pink);opacity:1;width:30px;height:2px}
.hero__minicard-meta{font-family:var(--f-sans);font-size:11px;letter-spacing:0.2em;color:var(--pink);font-weight:500;text-transform:uppercase}

@media(max-width:1023px){
  .hero{padding:80px 20px 320px}
  .hero__row{flex-direction:column;gap:14px}
  .hero__row--bottom{gap:32px}
  .hero__corner--right{text-align:left}
  .hero__center{padding:40px 0;min-height:40vh}
  .hero__editorial-cap{font-size:15px}
  .hero__minicard{right:20px;bottom:24px}
  .hero__minicard-photo{width:130px;height:170px}
}

/* ============================================================
   TAPE MARQUEE — three scotch ribbons, tight stack, slight angles
============================================================ */
/* single horizontal ribbon hugging the bottom edge of video, no gap */
.hero__tapes{position:absolute;left:0;right:0;bottom:0;height:48px;z-index:6;pointer-events:none;overflow:hidden;background-image:url('../assets/logo/tape-1-clean.png');background-size:auto 280%;background-repeat:repeat-x;background-position:0 center;opacity:0.65;animation:tape-scroll-a 60s linear infinite}
.tape{display:none}
@keyframes tape-scroll-a{from{background-position:0 center}to{background-position:-2216px center}}
@media(max-width:1023px){.hero__tapes{height:36px;bottom:-2px;background-size:auto 260%}}

/* barcode strip below marquee */
.barcode-row{background:var(--graphite);padding:8px 40px;display:flex;justify-content:space-between;align-items:center;border-bottom:0.5px solid rgba(229,200,192,0.15)}
.barcode-row span{font-family:var(--f-mono);font-size:9px;letter-spacing:0.3em;color:var(--pink);text-transform:uppercase}
.barcode-row svg{height:24px;width:auto;opacity:0.8}

/* ============================================================
   MANIFESTO v22 — editorial pink scatter · ref photo 2
============================================================ */
.manifesto{
  position:relative;
  background:#050505;
  color:#F2EDE2;
  width:100%;
  min-height:1100px;
  padding:54px 60px 80px;
  overflow:hidden;
  display:grid;
  grid-template-columns:42fr 58fr;
  gap:48px;
  align-items:start;
  isolation:isolate;
}

/* full-bleed bg photo: dried flowers + cobweb + mp3 player */
.m-bg{
  position:absolute;inset:0;
  pointer-events:none;z-index:1;
  background-image:url('../assets/logo/manifesto-bg-v2.png.png');
  background-size:100% 100%;
  background-position:center center;
  background-repeat:no-repeat;
  opacity:1;
}

/* texture: soft vignette over the bg, behind text */
.m-vignette{
  position:absolute;inset:0;
  pointer-events:none;z-index:2;
  background:
    radial-gradient(ellipse at 22% 50%, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.2) 35%, transparent 65%),
    radial-gradient(ellipse at 50% 50%, transparent 35%, rgba(0,0,0,0.45) 100%);
}

/* decorative thin line + sparkle + circle target */
.m-deco{position:absolute;z-index:4;pointer-events:none}
.m-deco-1{left:39%;top:6%;height:320px;width:auto;opacity:0.9}

/* top mini-menu */
.m-topmenu{
  position:absolute;
  top:34px;left:60px;
  z-index:6;
  display:flex;gap:24px;
  font-family:'Inter',sans-serif;font-weight:500;
  font-size:12px;letter-spacing:0.24em;
  text-transform:uppercase;color:#A8A8A8;
}
.m-topmenu::before{
  content:'✦';color:#F2AFC2;font-size:14px;
  margin-right:4px;letter-spacing:0;
}
.m-section-num{
  position:absolute;
  top:34px;right:60px;
  z-index:6;
  font-family:'Inter',sans-serif;font-weight:500;
  font-size:12px;letter-spacing:0.24em;
  text-transform:uppercase;color:#A8A8A8;
}

/* LEFT 42% — text */
.m-text{
  position:relative;z-index:5;
  grid-column:1;
  display:flex;flex-direction:column;
  justify-content:flex-start;
  padding-top:40px;
  padding-bottom:0;
  gap:0;
  max-width:680px;
}

.m-title{
  font-family:'Playfair Display',serif;
  margin:0 0 40px 0;
  line-height:0.95;
  letter-spacing:-0.02em;
}
.m-title-eclissi{
  display:block;
  font-weight:700;
  font-size:clamp(64px, 5.6vw, 104px);
  letter-spacing:-0.025em;
  margin-bottom:14px;
  line-height:1;
  background:linear-gradient(110deg,
    #E5DCE8 0%,
    #FFFFFF 14%,
    #DCE5E8 28%,
    #FFFFFF 42%,
    #E8DDE6 56%,
    #FFFFFF 70%,
    #DCE5E8 84%,
    #E5DCE8 100%);
  background-size:280% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 8s linear infinite;
}
.m-title-rest{
  display:block;
  font-weight:400;
  font-size:clamp(36px, 3.3vw, 62px);
  letter-spacing:-0.012em;
  line-height:1.05;
  background:linear-gradient(110deg,
    #DCE5E8 0%,
    #FFFFFF 18%,
    #E5DCE8 36%,
    #FFFFFF 54%,
    #DCE5E8 72%,
    #FFFFFF 90%,
    #DCE5E8 100%);
  background-size:260% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 10s linear infinite;
}
.m-title-rest em{
  font-style:italic;
  font-weight:400;
  background:linear-gradient(110deg,
    #F2AFC2 0%,
    #FFDFE5 30%,
    #FFC8D5 50%,
    #FFDFE5 70%,
    #F2AFC2 100%);
  background-size:280% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 6s linear infinite;
}

/* body — pearl white iridescent text + pink pearl emphasis */
.m-body{
  font-family:'Inter',sans-serif;
  font-weight:500;
  font-size:21px;
  line-height:1.85;
  max-width:640px;
}
.m-body p{
  display:flex;
  gap:18px;
  margin:0 0 32px 0;
  align-items:flex-start;
}
.m-body p:last-child{margin-bottom:0}
.m-body p > span:not(.m-bullet){
  display:inline-block;
  font-weight:500;
  background:linear-gradient(110deg,
    #DCE5E8 0%,
    #FFFFFF 20%,
    #E5DCE8 40%,
    #FFFFFF 60%,
    #DCE5E8 80%,
    #FFFFFF 100%);
  background-size:260% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 11s linear infinite;
}
.m-body em{
  font-style:normal;
  font-weight:600;
  background:linear-gradient(110deg,
    #F2AFC2 0%,
    #FFDFE5 30%,
    #FFC8D5 50%,
    #FFDFE5 70%,
    #F2AFC2 100%);
  background-size:280% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 6s linear infinite;
}
.m-bullet,
.m-body p > span.m-bullet{
  flex-shrink:0;
  display:inline-block;
  font-size:16px;
  line-height:1;
  margin-top:8px;
  width:18px;
  text-align:center;
  font-weight:400;
  background:linear-gradient(110deg,
    #F2AFC2 0%,
    #FFDFE5 50%,
    #F2AFC2 100%);
  background-size:240% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 5s linear infinite;
}

/* QUOTE — Playfair italic + pink ( ) braces */
.m-quote{
  font-family:'Playfair Display',serif;
  font-style:italic;font-weight:400;
  font-size:32px;line-height:1.3;
  margin:40px 0 0 0;
  max-width:640px;
  letter-spacing:-0.005em;
  display:flex;
  align-items:center;
  gap:20px;
}
.m-quote-body{
  flex:1;
  background:linear-gradient(110deg,
    #DCE5E8 0%,
    #FFFFFF 25%,
    #E5DCE8 50%,
    #FFFFFF 75%,
    #DCE5E8 100%);
  background-size:260% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 9s linear infinite;
}
.m-quote em{
  font-style:italic;
  background:linear-gradient(110deg,
    #F2AFC2 0%,
    #FFDFE5 30%,
    #FFC8D5 50%,
    #FFDFE5 70%,
    #F2AFC2 100%);
  background-size:280% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 6s linear infinite;
}
.m-quote-brace{
  font-family:'Playfair Display',serif;
  font-style:normal;font-weight:400;
  font-size:74px;
  line-height:0.8;
  flex-shrink:0;
  background:linear-gradient(110deg,
    #F2AFC2 0%,
    #FFE0E5 30%,
    #FFC8D5 50%,
    #FFE0E5 70%,
    #F2AFC2 100%);
  background-size:260% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:pearl-shimmer 7s linear infinite;
}

/* footer-line: 3 strings + ✦ separators */
.m-footer-line{
  position:absolute;
  left:60px;right:60px;
  bottom:32px;
  display:flex;
  gap:36px;
  justify-content:space-between;
  align-items:center;
  font-family:'Inter',sans-serif;
  font-weight:400;
  font-size:13px;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:#777;
  z-index:6;
}
.m-fl-text{flex-shrink:0}
.m-fl-sep{color:#F2AFC2;opacity:0.85;font-size:13px;flex-shrink:0}

/* RIGHT 58% — editorial scatter collage */
.m-collage{
  position:relative;z-index:4;
  grid-column:2;
  width:100%;
  min-height:920px;
  align-self:stretch;
  height:100%;
}

/* polaroid base — same dark graphite shimmer as .dcard in directions */
.m-pol{
  position:absolute;margin:0;
  padding:14px 14px 44px;
  box-shadow:0 30px 40px rgba(0,0,0,0.55),
             inset 0 0 0 0.5px rgba(255,255,255,0.22);
  transition:transform .5s var(--ease), box-shadow .5s var(--ease), z-index .1s;
  background:linear-gradient(115deg,
    #4A4548 0%,
    #6E5D62 10%,
    #5A5F58 20%,
    #7D6068 30%,
    #5C5852 40%,
    #75606A 50%,
    #565F55 60%,
    #7A5E62 70%,
    #524E4A 80%,
    #6E6160 90%,
    #4A4548 100%);
  background-size:320% 320%;
  animation:pearl-shimmer 7s linear infinite;
  isolation:isolate;
}
.m-pol::before{
  content:'';
  position:absolute;inset:0;
  pointer-events:none;
  background:linear-gradient(135deg,
    rgba(255,235,235,0.4) 0%,
    transparent 14%,
    rgba(200,160,180,0.35) 28%,
    transparent 42%,
    rgba(160,200,170,0.3) 56%,
    transparent 70%,
    rgba(220,180,180,0.4) 84%,
    rgba(255,240,235,0.4) 100%);
  background-size:280% 280%;
  mix-blend-mode:overlay;
  animation:pearl-shimmer 6s linear infinite reverse;
  z-index:1;
}
.m-pol img{
  width:100%;display:block;object-fit:cover;
  aspect-ratio:3/4;
  object-position:center 15%;
  position:relative;z-index:2;
}
.m-pol-num{
  position:absolute;top:18px;left:0;right:0;
  text-align:center;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;letter-spacing:0.28em;color:#F2EDE2;
  text-transform:uppercase;z-index:3;
  background:rgba(74,69,72,0.78);padding:3px 0;
  pointer-events:none;
}
.m-pol:hover{
  transform:rotate(0deg) scale(1.04)!important;
  z-index:30;
  box-shadow:0 38px 60px rgba(0,0,0,0.6),
             inset 0 0 0 0.5px rgba(255,255,255,0.3);
}

/* archive figure (former text card now uses regular photo) */
.m-pol-archive-card{display:none}

/* 8 polaroids editorial scatter — bigger, tighter, fit in 680px collage */
/* polaroids — spread out, no clumps, fill empty space under quote */
.m-pol-1{width:230px;top:0;left:0;transform:rotate(-6deg);z-index:5}
.m-pol-2{width:240px;top:6px;left:42%;transform:rotate(4deg);z-index:6}
.m-pol-3{width:220px;top:24px;right:0;transform:rotate(-3deg);z-index:5}
.m-pol-4{width:230px;top:280px;left:14%;transform:rotate(-5deg);z-index:7}
.m-pol-5{width:225px;top:296px;left:44%;transform:rotate(3deg);z-index:6}
.m-pol-5 img{aspect-ratio:3/4.2}
.m-pol-6{width:230px;top:310px;right:14%;transform:rotate(-4deg);z-index:7}
.m-pol-7{width:215px;top:280px;right:-2%;transform:rotate(6deg);z-index:5}
.m-pol-archive{width:210px;top:330px;left:-3%;transform:rotate(-8deg);z-index:5}
.m-pol-8{width:225px;top:580px;left:36%;transform:rotate(5deg);z-index:7}
.m-pol-9{width:215px;top:600px;right:4%;transform:rotate(-4deg);z-index:6}
.m-pol-10{width:200px;top:600px;left:-2%;transform:rotate(6deg);z-index:5}

/* PORTFOLIO button — PNG pill from Алёна, bottom-center, overlaps polaroids */
.m-portfolio-btn{
  position:absolute;
  z-index:14;
  left:38%;
  bottom:0;
  width:300px;
  display:block;
  text-decoration:none;
  filter:drop-shadow(0 20px 36px rgba(242,175,194,0.28));
  transition:transform .35s var(--ease), filter .35s var(--ease);
}
.m-portfolio-btn img{
  width:100%;height:auto;display:block;
}
.m-portfolio-btn:hover{
  transform:translateY(-3px);
  filter:drop-shadow(0 28px 52px rgba(242,175,194,0.42));
}

/* tablet & mobile */
@media(max-width:1023px){
  .manifesto{
    grid-template-columns:1fr;
    padding:60px 24px 80px;
    gap:40px;
    min-height:auto;
    aspect-ratio:auto;
  }
  .m-topmenu{position:static;margin-bottom:18px;padding:0}
  .m-section-num{display:none}
  .m-deco-1{display:none}
  .m-bg{opacity:0.7}
  .m-text{padding-top:0;max-width:none}
  .m-title-eclissi{font-size:clamp(48px,11vw,72px);margin-bottom:10px}
  .m-title-rest{font-size:clamp(26px,6.5vw,38px)}
  .m-body{font-size:16px;line-height:1.65}
  .m-body p{margin-bottom:18px}
  .m-quote{font-size:22px;margin-top:36px;gap:12px}
  .m-quote-brace{font-size:54px}
  .m-collage{min-height:auto;display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-bottom:80px}
  .m-pol-1,.m-pol-2,.m-pol-3,.m-pol-4,.m-pol-5,.m-pol-6,.m-pol-7,.m-pol-archive{
    position:static;width:100%;
    transform:none;
  }
  .m-pol-archive{display:none}
  .m-portfolio-btn{
    position:static;
    margin:24px auto 0;
    display:inline-flex;
    grid-column:1/-1;
    justify-self:center;
    left:auto;bottom:auto;
  }
  .m-footer-line{
    position:static;
    flex-direction:column;
    gap:10px;
    margin-top:32px;
    text-align:left;
    align-items:flex-start;
  }
  .m-fl-sep{display:none}
}

/* === LEFT === */
.m-col--left{display:flex;flex-direction:column;gap:18px;max-width:280px}

.m-side-text{display:flex;flex-direction:column;gap:4px;font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:500;letter-spacing:0.04em;color:rgba(26,14,12,0.78);line-height:1.5}
.m-side-text span{display:block}
.m-side-text span:nth-child(odd){opacity:0.92}
.m-side-text span:nth-child(even){opacity:0.55}
.m-side-text span:nth-child(3n){opacity:0.32}
.m-side-text b{font-weight:700;color:#1a0e0c}
.m-side-text--top{margin-bottom:8px}

/* boxes image — transparent, no frame */
.m-box-img{width:100%;max-width:320px;height:auto;display:block;object-fit:contain}

/* services pills below pantone (left top block) */
.m-services-pills{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:0}
.m-services-pills li{font-family:'Inter',sans-serif;font-size:14px;font-weight:600;letter-spacing:-0.005em;color:#1a0e0c;padding:10px 0;border-bottom:0.5px solid rgba(26,14,12,0.18);position:relative;padding-left:18px}
.m-services-pills li::before{content:'◆';position:absolute;left:0;color:var(--burgundy);font-size:9px;top:14px}
.m-services-pills li:last-child{border-bottom:none}

/* (legacy duplicate rules removed — were overriding text colors) */

/* repeating MOOD IN COLOR top right */
.m-mood-col{position:absolute;top:0;right:0;display:flex;flex-direction:column;gap:4px;font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:500;letter-spacing:0.18em;color:rgba(26,14,12,0.65);text-transform:uppercase;line-height:1.6;z-index:3;text-align:right}
.m-mood-col span:nth-child(odd){opacity:0.9}
.m-mood-col span:nth-child(even){opacity:0.55}
.m-mood-col span:nth-child(3n){opacity:0.3}
.m-mood-col b{font-weight:700;color:#1a0e0c}

/* photo collage — clean grid on dark */
.m-mb-collage{position:relative;width:100%;height:100%;min-height:680px;z-index:2}
.m-mb-collage img{position:absolute;object-fit:cover;box-shadow:0 14px 28px rgba(0,0,0,0.4);transition:transform .5s var(--ease);border:0.5px solid rgba(229,200,192,0.08)}
.m-mb-collage img:hover{transform:scale(1.06) rotate(0)!important;z-index:20;box-shadow:0 24px 48px rgba(0,0,0,0.6)}
.mb-1{top:0;left:6%;width:240px;aspect-ratio:3/4;transform:rotate(-3deg);z-index:4}
.mb-2{top:30px;right:8%;width:220px;aspect-ratio:3/4;transform:rotate(4deg);z-index:5}
.mb-3{top:200px;left:30%;width:240px;aspect-ratio:1/1;transform:rotate(-2deg);z-index:6}
.mb-4{top:220px;left:0;width:200px;aspect-ratio:3/4;transform:rotate(3deg);z-index:3}
.mb-5{top:280px;right:0;width:230px;aspect-ratio:1/1;transform:rotate(-4deg);z-index:4}
.mb-6{top:400px;left:14%;width:200px;aspect-ratio:3/4;transform:rotate(2deg);z-index:5}
.mb-7{top:430px;right:18%;width:240px;aspect-ratio:4/3;transform:rotate(-3deg);z-index:6}
.mb-8{bottom:30px;left:32%;width:200px;aspect-ratio:3/4;transform:rotate(3deg);z-index:5}
.mb-9{bottom:0;right:0;width:200px;aspect-ratio:1/1;transform:rotate(-2deg);z-index:4}

/* dove icon (replaces cherries) */
.m-mb-dove{position:absolute;bottom:140px;right:0;width:90px;height:auto;z-index:6;transform:rotate(-8deg);filter:drop-shadow(0 6px 14px rgba(0,0,0,0.2))}

/* services bullet list */
.m-services-list{position:absolute;left:0;bottom:80px;font-family:'JetBrains Mono',monospace;font-size:12px;line-height:1.85;color:#1a0e0c;letter-spacing:0.04em;z-index:5}
.m-services-list p{display:flex;gap:8px}
.m-services-list span{color:var(--burgundy);font-weight:700}

/* corner reference mark */
.m-mb-corner{position:absolute;right:0;bottom:24px;width:30px;height:30px;border-right:0.5px solid #1a0e0c;border-bottom:0.5px solid #1a0e0c;z-index:3}
.m-mb-corner::before{content:'';position:absolute;left:-40px;bottom:0;width:30px;height:0.5px;background:#1a0e0c}

/* closing quote */
.m-mb-roar{position:absolute;right:0;bottom:0;font-family:'JetBrains Mono',monospace;font-size:13px;line-height:1.4;color:#1a0e0c;text-align:right;font-weight:500;margin:0;z-index:5}
.m-mb-roar b{font-weight:700}

@media(max-width:1023px){
  .manifesto{grid-template-columns:1fr;padding:48px 24px;gap:40px;min-height:auto}
  .m-pantone{max-width:none}
  .m-pantone__swatch{aspect-ratio:auto;height:240px}
  .m-col--right{min-height:480px}
  .m-mb-corner{display:none}
}

/* ============================================================
   SERVICES — pills row + 6 numbered cards (per ref photo 3)
============================================================ */
.services{background:#0E0C0B;padding:50px 60px 0;position:relative;overflow:hidden}

.services__row{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;padding:24px 0 30px;border-bottom:0.5px solid rgba(229,200,192,0.15)}
.services__row .diamond{color:var(--pink);font-size:14px;line-height:1}
.services__row .srv-pill{font-family:'Inter',sans-serif;font-size:clamp(15px,1.4vw,22px);font-weight:500;letter-spacing:-0.005em;color:var(--cream);white-space:nowrap}

.services__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border-top:0.5px solid rgba(229,200,192,0.15)}
.srv-card{padding:36px 24px 50px;border-right:0.5px solid rgba(229,200,192,0.15);min-height:160px;display:flex;flex-direction:column;justify-content:space-between;transition:background .3s var(--ease)}
.srv-card:hover{background:rgba(229,200,192,0.04)}
.srv-card:last-child{border-right:none}
.srv-num{font-family:'Inter',sans-serif;font-size:13px;font-weight:400;color:rgba(229,200,192,0.65);letter-spacing:0.02em}
.srv-card h4{font-family:'Inter',sans-serif;font-size:clamp(16px,1.4vw,22px);font-weight:600;color:var(--cream);margin:0;letter-spacing:-0.01em}

@media(max-width:1023px){
  .services{padding:36px 20px 0}
  .services__row{gap:14px;font-size:13px}
  .services__row .srv-pill{font-size:14px}
  .services__grid{grid-template-columns:1fr 1fr}
  .srv-card{border-right:0.5px solid rgba(229,200,192,0.15);border-bottom:0.5px solid rgba(229,200,192,0.15);min-height:120px}
  .srv-card:nth-child(2n){border-right:none}
  .srv-card:nth-last-child(-n+2){border-bottom:none}
}

/* concentric decorative circles */
.m-circles{position:absolute;left:50%;top:55%;transform:translate(-50%,-50%);width:140%;height:auto;z-index:1;pointer-events:none}

/* left tag pills */
.m-tag{position:absolute;z-index:5;font-family:'Inter',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:rgba(26,14,12,0.55);padding:9px 22px;border:0.5px solid rgba(26,14,12,0.35);border-radius:100px;background:rgba(245,239,230,0.7);backdrop-filter:blur(4px)}
.m-tag--1{top:200px;left:10%}
.m-tag--2{top:430px;left:18%}
.m-tag--3{top:200px;right:14%}
.m-tag--4{top:430px;right:8%}

/* script word — handwritten, top center over photo */
.m-script{position:absolute;top:185px;left:50%;transform:translateX(-50%) rotate(-3deg);font-family:'Caveat',cursive;font-weight:700;font-size:clamp(80px,11vw,180px);line-height:1;color:var(--burgundy);z-index:6;margin:0;white-space:nowrap;text-shadow:0 4px 12px rgba(122,45,42,0.18)}

/* main manifesto text block — left of huge ECLISSI, below center */
.m-text-block{position:absolute;left:7%;bottom:200px;max-width:340px;z-index:5;display:flex;flex-direction:column;gap:18px}
.m-text-title{font-family:'Inter',sans-serif;font-weight:600;font-size:clamp(11px,0.95vw,13px);line-height:1.5;color:var(--burgundy);letter-spacing:0.18em;text-transform:uppercase;margin:0;border-top:0.5px solid rgba(122,45,42,0.4);border-bottom:0.5px solid rgba(122,45,42,0.4);padding:14px 0}
.m-text-title em{font-style:normal;color:#1a0e0c;font-weight:600}
.m-text-body{font-family:'Cormorant Garamond',serif;font-size:clamp(17px,1.4vw,21px);line-height:1.55;color:rgba(26,14,12,0.86);font-weight:400;margin:0}
.m-text-body em{font-style:italic;color:var(--burgundy);font-weight:500}

/* center main photo */
.m-center-photo{position:relative;z-index:4;margin:0;width:340px;height:480px;left:50%;top:280px;transform:translateX(-50%);position:absolute}
.m-center-photo img{width:100%;height:100%;object-fit:cover;display:block;box-shadow:0 22px 50px rgba(0,0,0,0.18)}

/* CTA button (pink filled pill) */
.m-cta-btn{position:absolute;left:50%;bottom:-26px;transform:translateX(-50%);background:var(--burgundy);color:var(--cream);font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:0.32em;text-transform:uppercase;padding:18px 32px;text-decoration:none;border-radius:100px;white-space:nowrap;box-shadow:0 12px 28px rgba(122,45,42,0.4);transition:transform .35s var(--ease),background .35s var(--ease)}
.m-cta-btn:hover{background:#1a0e0c;transform:translateX(-50%) scale(1.05)}

/* side cards (left + right) */
.m-side{position:absolute;z-index:5;width:200px;display:flex;flex-direction:column;gap:12px}
.m-side--left{top:300px;left:7%}
.m-side--right{top:300px;right:7%}
.m-side-img{position:relative;margin:0;width:100%;height:160px;overflow:hidden}
.m-side-img img{width:100%;height:100%;object-fit:cover;display:block}
.m-side-cap{font-family:'Inter',sans-serif;font-size:13px;line-height:1.45;color:rgba(26,14,12,0.7);font-weight:400;max-width:200px}

/* pink pill on side images (like BOOTS $890) */
.m-pill-pink{position:absolute;top:14px;right:-18px;background:var(--burgundy);color:var(--cream);font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase;padding:9px 18px;border-radius:100px;text-decoration:none;white-space:nowrap;box-shadow:0 8px 18px rgba(122,45,42,0.35);display:inline-flex;align-items:center;gap:6px;transition:transform .3s var(--ease)}
.m-pill-pink:hover{transform:scale(1.06)}
.m-side--right .m-pill-pink{right:auto;left:-18px}

/* huge bottom brand wordmark — heavy bold, peeking from bottom */
.m-huge{position:absolute;left:0;right:0;bottom:0;text-align:center;font-family:'Archivo Black','Anton',sans-serif;font-weight:400;font-size:clamp(140px,22vw,360px);line-height:0.85;letter-spacing:-0.03em;color:#1a0e0c;text-transform:uppercase;margin:0;z-index:2;pointer-events:none;white-space:nowrap;overflow:hidden}

@media(max-width:1023px){
  .manifesto{min-height:auto;padding:0 0 60px}
  .m-thumbs{grid-template-columns:repeat(3,1fr);height:90px}
  .m-thumbs img{height:90px}
  .m-thumbs img:nth-child(n+4){display:none}
  .m-tag,.m-script,.m-side,.m-text-block{position:static;transform:none;width:auto;display:inline-block;margin:8px}
  .m-tag--1,.m-tag--2,.m-tag--3,.m-tag--4{display:none}
  .m-script{display:block;text-align:center;font-size:48px;margin:24px 0}
  .m-text-block{display:block;width:90%;max-width:none;margin:32px auto;padding:0 20px}
  .m-center-photo{position:static;transform:none;width:80%;max-width:340px;height:380px;margin:24px auto 60px}
  .m-side{position:static;width:80%;max-width:280px;margin:24px auto}
  .m-side-img{height:200px}
  .m-pill-pink{position:static;display:inline-flex;margin-top:8px;right:auto;left:auto}
  .m-side--right .m-pill-pink{left:auto}
  .m-huge{font-size:64px;position:relative;padding-top:24px}
}

/* repeating newspaper bg text */
.m-newspaper{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:40px 60px;font-family:'Inter',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.22em;text-transform:uppercase;color:rgba(229,200,192,0.08);line-height:1.4;white-space:nowrap;overflow:hidden;pointer-events:none;z-index:0}
.m-newspaper span{display:block}

/* LEFT */
.m-left{position:relative;z-index:2;display:flex;flex-direction:column;gap:32px;align-self:center}
/* legacy .m-title/.m-body/.m-portfolio-btn rules removed — they were overriding the new manifesto v22+ styles */
.m-tags-row{display:flex;flex-direction:column;gap:8px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.32em;color:rgba(229,200,192,0.75);text-transform:uppercase}

/* RIGHT — stage with scattered photos + bouncing words */
.m-stage{position:relative;z-index:2;width:100%;height:100%;min-height:780px;overflow:hidden}

/* scattered photos — small, varied angles */
.m-ph{position:absolute;object-fit:cover;box-shadow:0 12px 26px rgba(0,0,0,0.45);transition:transform .5s var(--ease),box-shadow .5s var(--ease);cursor:pointer}
.m-ph:hover{transform:scale(1.08) rotate(0)!important;box-shadow:0 18px 38px rgba(0,0,0,0.6);z-index:20}
.m-ph-1{top:1%;left:3%;width:230px;aspect-ratio:3/4;transform:rotate(-3deg);z-index:5}
.m-ph-2{top:5%;left:38%;width:200px;aspect-ratio:1/1;transform:rotate(4deg);z-index:6}
.m-ph-3{top:8%;right:3%;width:240px;aspect-ratio:3/4;transform:rotate(-2deg);z-index:5}
.m-ph-4{top:42%;left:0;width:260px;aspect-ratio:4/3;transform:rotate(3deg);z-index:7}
.m-ph-5{top:48%;left:36%;width:210px;aspect-ratio:3/4;transform:rotate(-4deg);z-index:6}
.m-ph-6{top:44%;right:1%;width:220px;aspect-ratio:3/4;transform:rotate(2deg);z-index:6}
.m-ph-7{bottom:1%;left:14%;width:230px;aspect-ratio:1/1;transform:rotate(5deg);z-index:5}
.m-ph-8{bottom:1%;right:12%;width:240px;aspect-ratio:3/4;transform:rotate(-3deg);z-index:6}

/* bouncing words — text only, no border, no background */
.m-stage .pill{position:absolute;top:0;left:0;display:inline-block;color:rgba(229,200,192,0.62);font-family:'Inter',sans-serif;font-size:13px;font-weight:500;letter-spacing:0.06em;white-space:nowrap;will-change:transform;pointer-events:none;text-transform:lowercase;z-index:8;text-shadow:0 1px 4px rgba(0,0,0,0.6)}
.m-stage .pill:nth-child(odd){color:rgba(255,255,255,0.55)}
.m-stage .pill:nth-child(3n){color:rgba(229,200,192,0.78);font-style:italic;font-family:'Cormorant Garamond',serif;font-size:15px}
.m-stage .pill:nth-child(5n){color:rgba(122,45,42,0.85);font-weight:600}

@media(max-width:1023px){
  .manifesto{grid-template-columns:1fr;padding:60px 20px;gap:32px}
  .m-stage{min-height:480px}
  .m-ph{width:90px!important;aspect-ratio:1!important}
  .m-stage .pill{font-size:11px}
}

/* ===== LEFT ===== */
.m-left{position:relative;z-index:2;display:flex;flex-direction:column;gap:18px;max-width:280px}

.m-pantone{display:flex;flex-direction:column;background:#F2EDE2;border:0.5px solid #1a0e0c}
.m-pantone__swatch{aspect-ratio:1;background:#E5C8C0;position:relative}
.m-pantone__top{position:absolute;top:14px;left:14px;font-family:'Inter',sans-serif;font-size:10px;letter-spacing:0.18em;color:#1a0e0c;text-transform:uppercase;font-weight:500;display:flex;align-items:center;gap:6px}
.m-pantone__top svg{width:16px;height:16px}
.m-pantone__code{position:absolute;bottom:14px;left:14px;font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:0.14em;color:#1a0e0c}
.m-pantone__name{padding:14px 16px;background:#7A2D2A;color:#F2EDE2;font-family:'Inter',sans-serif;font-size:14px;font-weight:600;letter-spacing:0.18em;text-transform:uppercase}

.m-power{display:flex;flex-direction:column;gap:4px;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:#7A2D2A;line-height:1.6}
.m-power span{opacity:0.75}
.m-power span:nth-child(2n){opacity:0.45}
.m-power span:nth-child(3n){opacity:0.2}

/* ===== CENTER ===== */
.m-center{position:relative;z-index:2;display:flex;flex-direction:column;gap:22px;padding-top:8px}

.m-title{font-family:'Inter',sans-serif;font-weight:800;font-size:clamp(40px,4.4vw,68px);line-height:0.95;color:#1a0e0c;letter-spacing:-0.02em;margin:0}
.m-tagline{font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:0.16em;color:rgba(26,14,12,0.55);text-transform:uppercase;font-weight:400}

/* legacy .m-body (JetBrains 13px) removed — was overriding manifesto v22+ */

.m-bullets{font-family:'JetBrains Mono',monospace;font-size:12px;line-height:1.85;color:#1a0e0c;letter-spacing:0.04em;margin-top:8px}
.m-bullets p{display:flex;gap:8px}
.m-bullets span{color:#7A2D2A;font-weight:600}

/* ===== RIGHT ===== */
.m-right{position:relative;z-index:2;min-height:560px}

.m-splatter{position:absolute;left:-8%;top:0;width:120%;height:100%;z-index:1;pointer-events:none}

.m-mood-col{position:absolute;top:0;right:-10px;display:flex;flex-direction:column;gap:6px;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:0.28em;color:rgba(26,14,12,0.32);text-transform:uppercase;line-height:1.6;z-index:3;writing-mode:horizontal-tb;text-align:right}

.m-collage{position:relative;width:100%;height:100%;z-index:2}
.m-collage img{position:absolute;object-fit:cover;box-shadow:0 12px 28px rgba(0,0,0,0.18);transition:transform .5s var(--ease)}
.mc-1{top:0;left:8%;width:170px;aspect-ratio:3/4;transform:rotate(-2deg)}
.mc-2{top:30px;right:18%;width:140px;aspect-ratio:3/4;transform:rotate(3deg);z-index:3}
.mc-3{top:240px;left:0;width:200px;aspect-ratio:4/5;transform:rotate(-3deg);z-index:2}
.mc-4{bottom:0;right:8%;width:180px;aspect-ratio:5/4;transform:rotate(2deg)}
.m-collage img:hover{transform:scale(1.05) rotate(0)}

.m-dots{position:absolute;right:0;top:42%;display:flex;flex-direction:column;gap:8px;z-index:4}
.m-dots span{width:14px;height:14px;border-radius:50%;display:block;box-shadow:0 2px 6px rgba(0,0,0,0.2)}

/* corner reference mark like in Luminous Blue ref */
.m-corner-mark{position:absolute;right:60px;bottom:60px;width:24px;height:24px;border-right:0.5px solid #1a0e0c;border-bottom:0.5px solid #1a0e0c;z-index:2}
.m-corner-mark::before{content:'';position:absolute;left:-30px;bottom:0;width:20px;height:0.5px;background:#1a0e0c}

@media(max-width:1023px){
  .manifesto{padding:48px 20px 60px;grid-template-columns:1fr;gap:32px}
  .m-pantone{max-width:none}
  .m-pantone__swatch{aspect-ratio:auto;height:200px}
  .m-right{min-height:auto;height:560px}
  .m-corner-mark{display:none}
}

.m-num{grid-column:1;grid-row:1;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:0.32em;color:rgba(229,200,192,0.6);text-transform:uppercase;align-self:start}

.m-tl-text{grid-column:1/3;grid-row:1;font-family:'Cormorant Garamond',serif;font-size:32px;line-height:1.1;color:var(--cream);font-weight:400;margin-top:30px;align-self:start}
.m-tl-text em{font-style:italic;color:var(--pink)}

.m-tr-tags{grid-column:3;grid-row:1;font-family:'Inter',sans-serif;font-size:13px;font-weight:500;letter-spacing:0.3em;text-transform:uppercase;color:var(--burgundy);text-align:right;align-self:start;margin-top:30px}

.m-left-photo{grid-column:1;grid-row:2;align-self:end;margin:0;display:flex;flex-direction:column;gap:14px;transform:rotate(-3deg);transform-origin:center bottom;max-width:280px;justify-self:end}
.m-left-photo img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;box-shadow:0 12px 28px rgba(0,0,0,0.5)}
.m-left-photo figcaption{display:flex;flex-direction:column;gap:6px;transform:rotate(3deg)}
.m-left-photo figcaption em{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:13px;color:var(--cream);font-weight:400}
.m-left-photo figcaption span{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--olive);letter-spacing:0.18em;text-transform:lowercase}

.m-main-photo{grid-column:2;grid-row:2;margin:0;position:relative;display:flex;justify-content:center;align-self:center}
.m-main-photo img{height:65vh;width:auto;max-width:100%;object-fit:contain;display:block}
/* legacy .m-portfolio-btn (burgundy) removed */

.m-right-photo{grid-column:3;grid-row:2;align-self:end;margin:0;display:flex;flex-direction:column;gap:14px;transform:rotate(2deg);transform-origin:center bottom;max-width:240px;justify-self:start}
.m-right-photo img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;box-shadow:0 12px 28px rgba(0,0,0,0.5)}
.m-right-photo figcaption{display:flex;flex-direction:column;gap:6px;transform:rotate(-2deg)}
.m-right-photo figcaption em{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:13px;color:var(--cream);font-weight:400}
.m-right-photo figcaption span{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--olive);letter-spacing:0.18em;text-transform:lowercase}

.m-br-text{grid-column:3;grid-row:3;font-family:'Inter',sans-serif;font-size:15px;font-weight:400;line-height:1.6;color:var(--cream);max-width:320px;justify-self:end;text-align:right}

.m-bottom-strip{grid-column:1/-1;grid-row:4;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:0.32em;color:var(--olive);text-transform:uppercase;text-align:center;padding-top:24px;border-top:0.5px solid rgba(122,128,96,0.25);margin-top:14px}

@media(max-width:1023px){
  .manifesto{padding:48px 20px 30px;grid-template-columns:1fr;grid-template-rows:auto auto auto auto auto auto auto auto;gap:24px;min-height:auto}
  .m-num{grid-column:1;grid-row:1}
  .m-tl-text{grid-column:1;grid-row:2;font-size:24px;margin-top:0}
  .m-tr-tags{grid-column:1;grid-row:3;text-align:left;margin-top:0}
  .m-main-photo{grid-column:1;grid-row:4}
  .m-main-photo img{height:auto;max-height:60vh;width:100%;object-fit:cover}
  .m-left-photo{grid-column:1;grid-row:5;justify-self:center;max-width:60%;transform:rotate(-2deg)}
  .m-right-photo{grid-column:1;grid-row:6;justify-self:center;max-width:60%;transform:rotate(2deg)}
  .m-br-text{grid-column:1;grid-row:7;text-align:left;justify-self:start;max-width:none}
  .m-bottom-strip{grid-column:1;grid-row:8}
}

.manifesto__body{display:grid;grid-template-columns:0.9fr 1.2fr 1fr;gap:48px;max-width:1440px;margin:0 auto;align-items:stretch}

/* left big hero photo */
.manifesto__hero-img{position:relative;width:100%;aspect-ratio:3/4;overflow:hidden;background:#0E0C0B}
.manifesto__hero-img img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(0.92) contrast(1.04)}
.manifesto__hero-cap{position:absolute;bottom:14px;left:14px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:0.28em;color:rgba(242,237,226,0.85);text-transform:uppercase}

/* center text block */
.manifesto__text-block{display:flex;flex-direction:column;justify-content:center;gap:30px}
.manifesto__lead{font-family:'Playfair Display',serif;font-weight:400;font-size:clamp(32px,3.6vw,56px);line-height:1.05;color:var(--cream);letter-spacing:-0.01em}
.manifesto__lead em{font-style:italic;color:var(--pink);font-weight:500}
.manifesto__text{font-family:'Cormorant Garamond',serif;font-size:clamp(18px,1.4vw,22px);line-height:1.55;color:rgba(242,237,226,0.85);font-weight:400}
.manifesto__text em{font-style:italic;color:var(--pink)}
.manifesto__text p+p{margin-top:8px}
.manifesto__sign{font-family:'Cormorant Garamond',serif;font-size:clamp(15px,1.15vw,18px);line-height:1.5;color:rgba(229,200,192,0.78);font-weight:400;border-top:0.5px solid rgba(229,200,192,0.25);padding-top:18px;margin-top:14px}
.manifesto__sign em{font-style:italic;color:var(--pink)}

/* pantone card */
.pantone{position:relative;display:flex;flex-direction:column;background:var(--cream);border:0.5px solid var(--graphite);max-width:280px}
.pantone__swatch{aspect-ratio:1;background:var(--pink);position:relative}
.pantone__swatch::after{content:'';position:absolute;inset:0;background-image:linear-gradient(135deg,transparent 48%,var(--cream) 48%,var(--cream) 52%,transparent 52%);opacity:0}
.pantone__top{position:absolute;top:14px;left:14px;font-family:var(--f-mono);font-size:9px;letter-spacing:0.2em;color:var(--graphite);text-transform:uppercase}
.pantone__top svg{width:18px;height:18px;display:inline-block;vertical-align:middle;margin-right:6px}
.pantone__code{position:absolute;bottom:14px;left:14px;font-family:var(--f-mono);font-size:14px;letter-spacing:0.18em;color:var(--graphite)}
.pantone__name{padding:14px;background:var(--burgundy);color:var(--cream);font-family:var(--f-mono);font-size:13px;letter-spacing:0.2em;text-transform:uppercase}

/* repeating power-surge column */
.power-col{display:flex;flex-direction:column;gap:6px;margin-top:32px;font-family:var(--f-mono);font-size:11px;letter-spacing:0.32em;color:var(--pink);text-transform:uppercase;opacity:0.65}
.power-col span:nth-child(odd){color:var(--cream);opacity:0.4}
.power-col span:nth-child(2n){opacity:0.25}

/* manifesto center column */
.manifesto__lead{font-family:var(--f-serif);font-size:clamp(36px,4.8vw,64px);line-height:0.95;color:var(--cream);font-weight:500;margin-bottom:32px}
.manifesto__lead em{font-style:italic;color:var(--pink)}
.manifesto__lead-sub{font-family:var(--f-mono);font-size:11px;letter-spacing:0.3em;color:var(--pink);text-transform:uppercase;margin-bottom:16px}
.manifesto__text{font-family:var(--f-mono);font-size:13px;line-height:1.8;color:var(--cream);max-width:480px}
.manifesto__text p+p{margin-top:14px}

/* tints/hues bullets */
.manifesto__hues{margin-top:24px;font-family:var(--f-mono);font-size:11px;letter-spacing:0.18em;color:var(--cream);text-transform:uppercase;line-height:1.9}
.manifesto__hues p::before{content:'•  ';color:var(--pink)}

/* right collage */
.manifesto__collage{position:relative;height:100%;min-height:560px}
.manifesto__collage img{position:absolute;object-fit:cover;box-shadow:0 14px 30px rgba(0,0,0,0.4);transition:transform .6s var(--ease)}
.manifesto__collage img:hover{transform:scale(1.04) rotate(0)}
.mc-1{top:0;right:8%;width:62%;aspect-ratio:3/4;transform:rotate(3deg)}
.mc-2{top:34%;left:0;width:54%;aspect-ratio:3/4;transform:rotate(-4deg);z-index:2}
.mc-3{bottom:0;right:0;width:60%;aspect-ratio:4/3;transform:rotate(2deg)}

/* "MOOD IN COLOR" repeating right vertical */
.manifesto__sidewords{position:absolute;top:80px;right:18px;font-family:var(--f-mono);font-size:10px;letter-spacing:0.3em;color:var(--pink);text-transform:uppercase;line-height:2;opacity:0.55;writing-mode:horizontal-tb;text-align:right}

/* watercolor brush stroke under collage */
.manifesto__brush{position:absolute;width:380px;height:220px;right:-40px;bottom:30px;background:radial-gradient(ellipse at center,rgba(179,78,67,0.5),transparent 70%);filter:blur(20px);pointer-events:none;z-index:0}

/* rose icon overlay */
.manifesto__rose{position:absolute;right:6%;top:48%;width:160px;z-index:5;transform:rotate(-12deg);opacity:0.95}
.manifesto__rose img{width:100%}

/* handwritten note overlay */
.handwritten-note{font-family:var(--f-hand);font-size:32px;color:var(--burgundy);line-height:1;transform:rotate(-4deg);position:absolute}

@media(max-width:1023px){
  .manifesto{padding:48px 20px 60px}
  .manifesto__num{margin-bottom:24px}
  .manifesto__body{grid-template-columns:1fr;gap:28px}
  .manifesto__hero-img{aspect-ratio:4/5;max-height:400px}
  .manifesto__lead{font-size:clamp(28px,7vw,40px)}
  .manifesto__collage{height:auto;min-height:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .manifesto__collage img{position:static;width:100%;aspect-ratio:3/4;transform:none}
  .mc-3{grid-column:span 2;aspect-ratio:5/3}
}

/* ============================================================
   FEATURED COLLAGE — "what a shame" anti-design
============================================================ */
.featured{position:relative;min-height:100vh;background:var(--graphite);padding:80px 60px;overflow:hidden}
.featured.dot-bg{}

.featured__core{position:relative;max-width:1400px;margin:0 auto;height:80vh;min-height:600px}

.featured__main-img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:100%;width:auto;max-width:60%;object-fit:contain;z-index:2;filter:drop-shadow(0 14px 40px rgba(0,0,0,0.4))}

/* word fragments scattered (different colors) */
.frag{position:absolute;font-family:var(--f-heavy);text-transform:uppercase;line-height:0.9;letter-spacing:-0.01em;z-index:5}
.frag--1{top:6%;left:4%;font-size:clamp(50px,7vw,110px);color:var(--cream)}
.frag--2{top:18%;left:18%;font-size:clamp(40px,5vw,80px);color:var(--pink);background:var(--graphite);padding:4px 14px}
.frag--3{top:34%;right:6%;font-size:clamp(50px,8vw,130px);color:var(--graphite);background:var(--cream);padding:6px 18px;transform:rotate(-2deg)}
.frag--4{bottom:32%;left:8%;font-size:clamp(36px,5vw,76px);color:var(--burgundy);font-family:var(--f-serif);font-style:italic;font-weight:500;text-transform:none;letter-spacing:0}
.frag--5{bottom:18%;right:12%;font-size:clamp(60px,9vw,160px);color:var(--terracotta);text-decoration:line-through;text-decoration-thickness:4px}
.frag--6{bottom:6%;left:24%;font-size:clamp(36px,4vw,60px);color:var(--pink);background:var(--burgundy);padding:6px 18px}

/* BLAH BLAH BLAH background text */
.featured__blah{position:absolute;font-family:var(--f-heavy);font-size:clamp(60px,8vw,120px);color:rgba(229,200,192,0.06);text-transform:uppercase;line-height:0.85;z-index:1;letter-spacing:0.04em;pointer-events:none}
.featured__blah--1{top:12%;left:0;transform:rotate(-4deg)}
.featured__blah--2{bottom:14%;right:0;transform:rotate(3deg)}

/* "Don't believe everything" sticker */
.sticker-quote{position:absolute;bottom:8%;right:8%;background:var(--cream);color:var(--graphite);padding:16px 22px;font-family:var(--f-mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;line-height:1.5;border:0.5px solid var(--graphite);max-width:200px;transform:rotate(4deg);z-index:6;box-shadow:0 8px 24px rgba(0,0,0,0.3)}

/* hand icon overlay */
.featured__hand{position:absolute;left:6%;bottom:8%;width:160px;z-index:6;transform:rotate(15deg)}
.featured__hand img{width:100%}

/* (legacy tape-sticker class removed — was conflicting with tape-marquee) */

/* corner labels of section */
.featured__top{position:absolute;top:32px;left:40px;font-family:var(--f-mono);font-size:10px;letter-spacing:0.32em;color:var(--pink);text-transform:uppercase;z-index:8}
.featured__top b{color:var(--cream);font-weight:400;display:block}
.featured__motion{position:absolute;top:32px;right:40px;font-family:var(--f-mono);font-size:10px;letter-spacing:0.32em;color:var(--pink);text-transform:uppercase;z-index:8}
.featured__motion::before{content:'▸ ';margin-right:4px}

@media(max-width:1023px){
  .featured{padding:48px 16px;min-height:auto}
  .featured__core{height:auto;min-height:auto;display:flex;flex-direction:column;gap:20px}
  .featured__main-img{position:static;transform:none;max-width:100%;height:auto;margin:0 auto}
  .frag{position:static;transform:none;display:inline-block;margin:4px}
  .featured__blah{display:none}
  .featured__hand{display:none}
  .sticker-quote{position:static;transform:none;margin:20px auto;display:block}
}

/* ============================================================
   THREE DIRECTIONS — three mini-moodboards (DARK)
============================================================ */
.directions{background:var(--graphite);padding:120px 40px;color:var(--cream);position:relative;overflow:hidden}
.directions__head{max-width:1440px;margin:0 auto 64px;display:flex;justify-content:space-between;align-items:flex-end}
.directions__title{font-family:var(--f-heavy);font-size:clamp(56px,8vw,120px);color:var(--cream);text-transform:uppercase;line-height:0.85;letter-spacing:-0.02em}
.directions__title em{font-family:var(--f-serif);font-style:italic;color:var(--pink);font-weight:400;text-transform:none}
.directions__sub{font-family:var(--f-mono);font-size:10px;letter-spacing:0.3em;color:var(--pink);text-transform:uppercase;text-align:right;line-height:1.8}
.directions__sub b{color:var(--cream);font-weight:400}

.directions__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1440px;margin:0 auto}

.dirboard{position:relative;background:var(--cream);min-height:680px;padding:32px;border:0.5px solid var(--graphite);overflow:hidden;transition:transform .8s var(--ease)}
.dirboard:hover{transform:translateY(-8px)}

.dirboard--01{background:var(--pink)}
.dirboard--02{background:var(--ivory)}
.dirboard--03{background:var(--burgundy);color:var(--cream);border-color:var(--cream)}
.dirboard--03 .dirboard__num,.dirboard--03 .dirboard__link{color:var(--pink);border-color:var(--pink)}

.dirboard__num{font-family:var(--f-mono);font-size:10px;letter-spacing:0.3em;color:var(--burgundy);text-transform:uppercase;margin-bottom:24px;display:flex;justify-content:space-between}

.dirboard__photo{position:relative;width:100%;height:280px;overflow:hidden;margin-bottom:20px;border:0.5px solid var(--graphite)}
.dirboard__photo img,.dirboard__photo video{width:100%;height:100%;object-fit:cover}
.dirboard__photo .photo-tape{position:absolute;top:-8px;right:30px;background:var(--cream);width:70px;height:20px;transform:rotate(2deg);border:0.5px solid var(--graphite)}

.dirboard__icon{position:absolute;top:26px;right:26px;width:80px;z-index:3}
.dirboard__icon img{width:100%}

.dirboard__title{font-family:var(--f-heavy);font-size:clamp(40px,4vw,64px);text-transform:uppercase;line-height:0.85;letter-spacing:-0.01em;margin-bottom:16px}
.dirboard__title em{font-family:var(--f-serif);font-style:italic;font-weight:400;text-transform:none;color:var(--burgundy)}
.dirboard--03 .dirboard__title em{color:var(--pink)}

.dirboard__desc{font-family:var(--f-mono);font-size:11px;line-height:1.8;letter-spacing:0.05em;margin-bottom:20px;max-width:300px}
.dirboard__link{font-family:var(--f-mono);font-size:10px;letter-spacing:0.3em;text-transform:uppercase;border-bottom:0.5px solid var(--burgundy);padding-bottom:4px;color:var(--burgundy);display:inline-block}

.dirboard__handnote{font-family:var(--f-hand);font-size:30px;color:var(--burgundy);transform:rotate(-3deg);position:absolute;top:340px;right:24px;line-height:1;pointer-events:none}
.dirboard--03 .dirboard__handnote{color:var(--pink)}

.dirboard__star{position:absolute;font-family:var(--f-hand);font-size:48px;color:var(--terracotta);line-height:1}

/* tape sticker on dirboard */
.dirboard__tape{position:absolute;font-family:var(--f-mono);font-size:9px;letter-spacing:0.25em;text-transform:uppercase;padding:5px 12px;color:var(--cream);background:var(--graphite);transform:rotate(-3deg)}

@media(max-width:1023px){
  .directions{padding:60px 20px}
  .directions__grid{grid-template-columns:1fr;gap:16px}
  .dirboard{min-height:580px}
}

/* ============================================================
   SELECTED WORKS — scattered moodboard
============================================================ */
.gallery{background:var(--graphite);padding:120px 40px 160px;position:relative;overflow:hidden}
.gallery__head{max-width:1440px;margin:0 auto 80px;display:flex;justify-content:space-between;align-items:flex-end;position:relative;z-index:5}
.gallery__title{font-family:var(--f-heavy);font-size:clamp(80px,12vw,200px);color:var(--cream);text-transform:uppercase;line-height:0.85;letter-spacing:-0.02em}
.gallery__title em{font-family:var(--f-serif);font-style:italic;color:var(--pink);font-weight:400;text-transform:none}
.gallery__meta{font-family:var(--f-mono);font-size:10px;letter-spacing:0.3em;color:var(--pink);text-transform:uppercase;line-height:1.8;text-align:right}

.gallery__board{position:relative;max-width:1440px;margin:0 auto;min-height:1400px}

.gallery__photo{position:absolute;background:var(--cream);padding:8px 8px 32px;box-shadow:0 14px 40px rgba(0,0,0,0.45);transition:transform .6s var(--ease);z-index:3}
.gallery__photo:hover{transform:translateY(-6px) rotate(0deg) !important;z-index:10}
.gallery__photo img,.gallery__photo video{width:100%;height:100%;object-fit:cover;display:block}
.gallery__photo .photo-cap{position:absolute;bottom:6px;left:8px;font-family:var(--f-hand);font-size:18px;color:var(--graphite);line-height:1}
.gallery__photo .photo-num{position:absolute;top:14px;left:14px;font-family:var(--f-mono);font-size:9px;letter-spacing:0.25em;color:var(--graphite);background:var(--cream);padding:2px 6px;z-index:2}

.gp-1{top:40px;left:2%;width:280px;height:340px;transform:rotate(-3deg)}
.gp-2{top:140px;left:24%;width:340px;height:240px;transform:rotate(2deg);padding-bottom:8px}
.gp-3{top:60px;right:24%;width:240px;height:300px;transform:rotate(-2deg)}
.gp-4{top:220px;right:2%;width:300px;height:200px;transform:rotate(4deg)}
.gp-5{top:480px;left:8%;width:260px;height:340px;transform:rotate(2deg)}
.gp-6{top:420px;left:32%;width:300px;height:380px;transform:rotate(-3deg)}
.gp-7{top:520px;right:14%;width:280px;height:220px;transform:rotate(3deg)}
.gp-8{top:780px;right:2%;width:320px;height:240px;transform:rotate(-1deg)}
.gp-9{top:880px;left:4%;width:240px;height:300px;transform:rotate(-4deg)}
.gp-10{top:920px;left:30%;width:340px;height:260px;transform:rotate(2deg)}
.gp-11{top:1080px;right:20%;width:260px;height:180px;transform:rotate(-2deg)}

/* video frame as monitor (Gropcore ref) */
.gallery__photo--video{padding:18px 18px 44px;background:var(--olive)}
.gallery__photo--video::before{content:'▸ MOTION';position:absolute;top:6px;left:18px;font-family:var(--f-mono);font-size:8px;letter-spacing:0.25em;color:var(--cream)}

/* big roman numerals scattered */
.gallery__roman{position:absolute;font-family:var(--f-serif);font-style:italic;font-weight:400;line-height:1;color:var(--pink);opacity:0.18;pointer-events:none}
.gallery__roman--1{top:40px;left:50%;font-size:240px}
.gallery__roman--2{top:600px;right:6%;font-size:180px;color:var(--terracotta)}
.gallery__roman--3{top:1100px;left:30%;font-size:220px}

/* repeating mood-in-color text */
.gallery__sidewords{position:absolute;top:40%;right:6px;font-family:var(--f-mono);font-size:10px;letter-spacing:0.3em;color:var(--pink);text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);opacity:0.5;line-height:2;text-align:right}

/* handwritten captions floating */
.gallery__hand{position:absolute;font-family:var(--f-hand);font-size:42px;color:var(--terracotta);line-height:1;transform:rotate(-3deg);z-index:6}
.gallery__hand--1{top:380px;left:48%}
.gallery__hand--2{top:760px;left:6%;color:var(--pink)}

/* tape stickers throughout */
.gallery__tape{position:absolute;background:var(--burgundy);color:var(--cream);font-family:var(--f-mono);font-size:9px;letter-spacing:0.25em;padding:6px 16px;text-transform:uppercase;transform:rotate(-3deg);z-index:7;box-shadow:0 6px 18px rgba(0,0,0,0.3)}

/* star scribbles */
.gallery__star{position:absolute;font-family:var(--f-hand);color:var(--pink);line-height:1;z-index:6;pointer-events:none}

@media(max-width:1023px){
  .gallery{padding:60px 20px}
  .gallery__head{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:48px}
  .gallery__board{min-height:auto;display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .gallery__photo{position:static;transform:none !important;width:100%;height:240px;padding:6px 6px 28px}
  .gallery__photo:hover{transform:none !important}
  .gallery__roman,.gallery__hand,.gallery__sidewords{display:none}
  .gallery__tape{position:static;display:inline-block;margin:4px}
}

/* ============================================================
   FULL-WIDTH WORK + QUOTE
============================================================ */
.fullwork{position:relative;height:100vh;min-height:680px;background:var(--graphite);overflow:hidden}
.fullwork__media{position:absolute;inset:0}
.fullwork__media img,.fullwork__media video{width:100%;height:100%;object-fit:cover}
.fullwork__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(58,54,51,0.7) 0%,rgba(58,54,51,0.2) 60%,transparent 100%)}
.fullwork__content{position:absolute;left:60px;top:50%;transform:translateY(-50%);max-width:780px;color:var(--cream);z-index:2}
.fullwork__sub{font-family:var(--f-mono);font-size:11px;letter-spacing:0.32em;color:var(--pink);text-transform:uppercase;margin-bottom:24px;display:block}
.fullwork__title{font-family:var(--f-heavy);font-size:clamp(56px,9vw,140px);line-height:0.88;color:var(--cream);text-transform:uppercase;letter-spacing:-0.02em}
.fullwork__title em{font-family:var(--f-serif);font-style:italic;color:var(--pink);font-weight:400;text-transform:none}

.fullwork__credits{position:absolute;bottom:40px;right:60px;font-family:var(--f-mono);font-size:10px;letter-spacing:0.3em;color:var(--cream);text-align:right;text-transform:uppercase;line-height:1.8;z-index:3}

@media(max-width:1023px){
  .fullwork__content{left:24px;right:24px;max-width:none}
  .fullwork__credits{right:24px;bottom:24px}
}

/* ============================================================
   ABOUT MOODBOARD
============================================================ */
.about{background:var(--burgundy);color:var(--cream);padding:140px 60px;position:relative;overflow:hidden}
.about__head{display:flex;justify-content:space-between;align-items:flex-end;max-width:1440px;margin:0 auto 80px}
.about__title{font-family:var(--f-heavy);font-size:clamp(80px,12vw,200px);text-transform:uppercase;line-height:0.85;letter-spacing:-0.02em;color:var(--cream)}
.about__title em{font-family:var(--f-serif);font-style:italic;color:var(--pink);font-weight:400;text-transform:none}
.about__sub{font-family:var(--f-mono);font-size:10px;letter-spacing:0.3em;color:var(--pink);text-transform:uppercase;line-height:1.8;text-align:right}

.about__body{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;max-width:1440px;margin:0 auto;align-items:center;position:relative;z-index:2}

.about__polaroids{position:relative;height:520px}
.about__polaroid{position:absolute;background:var(--cream);padding:8px 8px 36px;box-shadow:0 14px 40px rgba(0,0,0,0.4);width:200px;height:260px}
.about__polaroid img{width:100%;height:100%;object-fit:cover}
.about__polaroid .polaroid-cap{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-family:var(--f-hand);font-size:20px;color:var(--graphite);line-height:1}
.ap-1{top:0;left:0;transform:rotate(-5deg)}
.ap-2{top:60px;left:40%;transform:rotate(3deg);z-index:2}
.ap-3{top:180px;left:60%;transform:rotate(-2deg)}

.about__copy p{font-family:var(--f-mono);font-size:13px;line-height:1.8;color:var(--cream);max-width:520px}
.about__copy p+p{margin-top:18px}
.about__quote{font-family:var(--f-serif);font-style:italic;font-size:clamp(28px,3.2vw,40px);line-height:1.3;color:var(--pink);padding-left:32px;border-left:0.5px solid var(--pink);margin-top:40px;max-width:500px}
.about__link{font-family:var(--f-mono);font-size:10px;letter-spacing:0.3em;text-transform:uppercase;border-bottom:0.5px solid var(--pink);padding-bottom:4px;color:var(--pink);display:inline-block;margin-top:32px}

.about__hand-ic{position:absolute;right:6%;top:24%;width:140px;z-index:3;transform:rotate(8deg);opacity:0.95}
.about__hand-ic img{width:100%}

@media(max-width:1023px){
  .about{padding:64px 20px}
  .about__head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:48px}
  .about__body{grid-template-columns:1fr;gap:48px}
  .about__polaroids{height:auto;display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
  .about__polaroid{position:static;width:42%;height:200px}
  .about__hand-ic{display:none}
}

/* ============================================================
   CTA — pink dominant collage
============================================================ */
.cta{background:var(--pink);color:var(--graphite);padding:140px 60px;text-align:center;position:relative;overflow:hidden}
.cta__title{font-family:var(--f-heavy);font-size:clamp(72px,11vw,180px);line-height:0.85;color:var(--graphite);text-transform:uppercase;letter-spacing:-0.02em;max-width:1100px;margin:0 auto;position:relative;z-index:3}
.cta__title em{font-family:var(--f-serif);font-style:italic;color:var(--burgundy);font-weight:400;text-transform:none;letter-spacing:-0.01em}
.cta__sub{font-family:var(--f-mono);font-size:13px;letter-spacing:0.32em;color:var(--burgundy);text-transform:uppercase;margin-top:32px;position:relative;z-index:3}
.cta__buttons{display:flex;gap:18px;justify-content:center;margin-top:56px;flex-wrap:wrap;position:relative;z-index:3}

.btn{font-family:var(--f-mono);font-size:11px;letter-spacing:0.32em;text-transform:uppercase;padding:20px 36px;transition:all .4s var(--ease);display:inline-flex;align-items:center;gap:10px;position:relative}
.btn--primary{background:var(--graphite);color:var(--cream)}
.btn--primary:hover{background:var(--burgundy)}
.btn--outline{border:0.5px solid var(--graphite);color:var(--graphite)}
.btn--outline:hover{background:var(--graphite);color:var(--cream)}
.btn .btn-tape{position:absolute;top:-12px;right:-12px;background:var(--terracotta);font-size:9px;letter-spacing:0.2em;padding:3px 8px;color:var(--cream);transform:rotate(-6deg)}

.cta__rose{position:absolute;left:6%;bottom:10%;width:160px;z-index:2;transform:rotate(-12deg);opacity:0.95}
.cta__rose img{width:100%}
.cta__hand{position:absolute;right:8%;top:18%;width:140px;z-index:2;transform:rotate(20deg);opacity:0.95}
.cta__hand img{width:100%}

/* removed broken .cta__brush rule */

/* ============================================================
   RESTORED CSS — missing rules for workflow, eye-block, dirs-v2, cta, footer, about, flytrap
============================================================ */

/* WORKFLOW — 21:9 PNG infographic */
.workflow{position:relative;width:100%;background:#050505;overflow:hidden;display:block;line-height:0}
.workflow__img{width:100%;height:auto;display:block;object-fit:cover;user-select:none;pointer-events:none}

/* EYE-BLOCK — 3 venus flytraps row */
.eye-block{position:relative;width:100%;background:#050505;overflow:hidden;padding:30px 0 90px;isolation:isolate}
.eye-row{position:relative;z-index:3;display:flex;justify-content:center;align-items:center;gap:0;width:100%;margin:0 auto}
.eye-wrap{position:relative;flex:1 1 0;min-width:0;aspect-ratio:1536/1024;margin:0;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 30px 60px rgba(0,0,0,0.6));transition:transform .5s var(--ease)}
.eye-wrap:hover{transform:translateY(-4px)}
.eye-frame{position:relative;z-index:1;width:100%;height:auto;display:block;pointer-events:none;filter:drop-shadow(0 4px 18px rgba(0,0,0,0.5))}
.eye-video{position:absolute;left:50%;top:46%;width:34%;aspect-ratio:1/1;transform:translate(-50%,-50%);object-fit:cover;object-position:center 18%;border-radius:50%;z-index:3;background:#0a0606;box-shadow:0 0 30px rgba(0,0,0,0.8) inset,0 0 0 2px rgba(255,255,255,0.05);cursor:pointer}
.eye-play{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:66px;height:66px;border-radius:50%;background:rgba(255,255,255,0.2);backdrop-filter:blur(6px);border:0.6px solid rgba(255,255,255,0.55);z-index:6;cursor:pointer;transition:background .3s,transform .3s,opacity .3s;display:flex;align-items:center;justify-content:center;padding:0;opacity:0}
.eye-play::after{content:'';width:0;height:0;border-left:16px solid rgba(255,255,255,0.95);border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:5px}
.eye-wrap:hover .eye-play,.eye-wrap.is-paused .eye-play{opacity:1}
.eye-cap{position:absolute;left:0;right:0;bottom:-8px;text-align:center;font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(13px,1vw,17px);letter-spacing:0.36em;text-transform:uppercase;color:#E8D6CA;z-index:4;pointer-events:none;user-select:none}
@media(max-width:1023px){.eye-block{padding:50px 20px}.eye-row{flex-direction:column;gap:40px}.eye-wrap{width:min(90vw,520px);max-width:none}}

/* DIRECTIONS v2 — cinematic editorial */
.dirs-v2{position:relative;background:#070707;color:rgba(255,255,255,0.92);width:100%;padding:30px 28px 32px;overflow:hidden;isolation:isolate}
.dirs-v2__noise{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:0.06;mix-blend-mode:overlay}
.dirs-v2__top{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:flex-start;font-family:'Inter',sans-serif;font-size:11px;letter-spacing:0.3em;text-transform:uppercase;color:rgba(255,255,255,0.7)}
.dirs-v2__nav{display:flex;align-items:center;gap:32px}
.dirs-v2__star{color:#F2AFC2;font-size:14px;letter-spacing:0;margin-right:4px}
.dirs-v2__nav a{color:inherit;text-decoration:none;transition:color .3s}
.dirs-v2__nav a:hover{color:#F2AFC2}
.dirs-v2__meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:10px;letter-spacing:0.28em;color:rgba(255,255,255,0.55);text-align:right}
.dirs-v2__masthead{position:relative;z-index:3;margin-top:8px;margin-bottom:-80px;display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.dirs-v2__brand{font-family:'Italiana','Playfair Display',serif;font-weight:400;font-size:clamp(96px,11vw,180px);line-height:0.88;letter-spacing:0.02em;margin:0;text-transform:uppercase;background:linear-gradient(110deg,#C5B8B5 0%,#E0D5D2 14%,#B8C5B5 28%,#F0E0DC 42%,#D8C5C0 56%,#C0CCC0 70%,#E8D5D2 84%,#C5B8B5 100%);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:pearl-shimmer 8s linear infinite}
.dirs-v2__brand-sub{font-family:'Inter',sans-serif;font-size:12px;font-weight:400;letter-spacing:0.46em;color:rgba(232,214,202,0.65);text-transform:uppercase;margin-left:8px}
.dirs-v2__cards{position:relative;z-index:3;display:flex;justify-content:center;align-items:flex-end;gap:18px;margin:0 auto;width:100%;flex-wrap:wrap}
.dcard{position:relative;flex:1 1 360px;min-width:0;max-width:540px;padding:26px 26px 22px;display:flex;flex-direction:column;text-decoration:none;color:inherit;overflow:hidden;transition:transform .5s,box-shadow .5s;box-shadow:0 18px 40px rgba(0,0,0,0.45);cursor:none}
.dcard:hover{transform:translateY(-4px);box-shadow:0 26px 56px rgba(0,0,0,0.6)}
.dcard--school,.dcard--studio,.dcard--journal{color:#F2EDE2;position:relative;background:linear-gradient(115deg,#4A4548 0%,#6E5D62 10%,#5A5F58 20%,#7D6068 30%,#5C5852 40%,#75606A 50%,#565F55 60%,#7A5E62 70%,#524E4A 80%,#6E6160 90%,#4A4548 100%);background-size:320% 320%;animation:pearl-shimmer 7s linear infinite;isolation:isolate}
.dcard--school{height:780px}
.dcard--studio{height:920px}
.dcard--journal{height:820px}
.dcard__head{position:relative;z-index:4;display:flex;justify-content:space-between;align-items:flex-start;font-family:'Inter',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.28em;text-transform:uppercase;margin-bottom:14px;gap:14px;color:rgba(242,237,226,0.78)}
.dcard__num{opacity:0.72}.dcard__id{flex:1;opacity:0.85}.dcard__br{opacity:0.7;text-align:right}
.dcard__img-wrap--top{position:relative;z-index:3;width:calc(100% + 52px);margin:0 -26px 14px -26px;aspect-ratio:1/1;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,0.3)}
.dcard__img-wrap--top img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block;transition:transform .6s}
.dcard__img-wrap--bottom{position:relative;z-index:3;width:calc(100% + 52px);margin:0 -26px -22px -26px;flex:1 1 auto;min-height:340px;overflow:hidden}
.dcard__img-wrap--bottom img{width:100%;height:100%;object-fit:cover;object-position:center 35%;display:block}
.dcard__title{position:relative;z-index:4;font-family:'Playfair Display',serif;font-weight:400;font-size:clamp(46px,4.5vw,78px);line-height:0.95;margin:0 0 12px 0;letter-spacing:-0.02em}
.dcard__title-main{display:block;font-weight:400}
.dcard__title-em{display:block;font-style:italic;font-weight:400;font-size:0.82em;margin-top:2px;letter-spacing:-0.01em}
.dcard__desc{position:relative;z-index:4;font-family:'Inter',sans-serif;font-size:14px;line-height:1.55;margin:0 0 28px 0;max-width:300px;opacity:0.82;color:#F2EDE2}
.dcard__cta{position:relative;z-index:4;display:inline-block;font-family:'Inter',sans-serif;font-size:11px;font-weight:500;letter-spacing:0.28em;text-transform:uppercase;text-decoration:none;color:inherit;padding-bottom:6px;border-bottom:0.5px solid currentColor;align-self:flex-start;transition:opacity .3s,transform .3s}
.dcard__cta:hover{opacity:0.7;transform:translateX(4px)}
.dcard__year{position:absolute;left:36px;bottom:32px;z-index:4;font-family:'Inter',sans-serif;font-size:11px;letter-spacing:0.28em;color:rgba(242,237,226,0.55)}
.dcard__diagram{position:absolute;right:-20%;bottom:-20%;width:340px;height:340px;z-index:1;opacity:0.35;pointer-events:none}
.dirs-v2__bottom{position:relative;z-index:3;margin-top:60px;padding-top:24px;border-top:0.5px solid rgba(255,255,255,0.18);display:flex;justify-content:space-between;align-items:center;font-family:'Inter',sans-serif;font-size:11px;font-weight:400;letter-spacing:0.28em;text-transform:uppercase;color:rgba(255,255,255,0.5)}
@media(max-width:1023px){.dirs-v2__cards{flex-direction:column}.dcard{max-width:none;min-height:auto}}

/* ABOUT — 21:9 PNG */
.about-img{position:relative;width:100%;background:#050505;overflow:hidden;display:block;line-height:0}
.about-img__pic{width:100%;height:auto;display:block;object-fit:cover;user-select:none;pointer-events:none}

/* CTA-IMG — living poster */
.cta-img{position:relative;width:100%;aspect-ratio:2048/768;overflow:hidden;background:#050505;display:block;line-height:0;isolation:isolate}
.cta-img__pic{width:100%;height:100%;display:block;object-fit:cover;object-position:center;user-select:none;pointer-events:none;animation:cta-breathe 5s ease-in-out infinite;transform-origin:50% 50%}
@keyframes cta-breathe{0%,100%{transform:scale(1.0);filter:brightness(1) saturate(1)}50%{transform:scale(1.025);filter:brightness(1.1) saturate(1.18) hue-rotate(3deg)}}
.cta-img__shimmer{position:absolute;inset:0;pointer-events:none;z-index:2;background:linear-gradient(115deg,transparent 0%,rgba(255,210,230,0.1) 42%,rgba(220,180,230,0.14) 50%,rgba(255,210,230,0.1) 58%,transparent 100%);background-size:280% 100%;mix-blend-mode:screen;animation:cta-shimmer 8s linear infinite}
@keyframes cta-shimmer{0%{background-position:-50% 0%}100%{background-position:150% 0%}}
.cta-img__btn{position:absolute;width:13%;aspect-ratio:1/0.55;z-index:4;border-radius:50%/60%;cursor:pointer;background:radial-gradient(ellipse,rgba(255,180,210,0) 0%,transparent 100%);transition:background .35s;animation:jelly-pulse 2s ease-in-out infinite}
.cta-img__btn--1{left:35%;top:64%;animation-delay:0s}
.cta-img__btn--2{left:52%;top:64%;animation-delay:1s}
.cta-img__btn:hover{background:radial-gradient(ellipse,rgba(255,200,220,0.6) 0%,rgba(255,180,210,0.3) 50%,transparent 80%)}
@keyframes jelly-pulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(255,180,210,0)}50%{transform:scale(1.08) translate(0,-4px);box-shadow:0 0 40px 12px rgba(255,180,210,0.25)}}

/* FOOTER-IMG */
.footer-img{position:relative;width:100%;height:400px;overflow:hidden;background:#050505;display:block;line-height:0}
.footer-img__pic{width:100%;height:auto;min-height:100%;display:block;object-fit:cover;object-position:center;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);user-select:none;pointer-events:none}
.footer-img__link{position:absolute;display:block;background:transparent;cursor:pointer;z-index:3;transition:background .3s;border-radius:4px}
.footer-img__link:hover{background:rgba(255,200,220,0.22);box-shadow:0 0 24px 6px rgba(255,200,220,0.32)}
.footer-img__link--nav1{left:38%;top:18%;width:12%;height:13%}
.footer-img__link--nav2{left:38%;top:32%;width:10%;height:13%}
.footer-img__link--nav3{left:38%;top:46%;width:10%;height:13%}
.footer-img__link--nav4{left:38%;top:60%;width:11%;height:13%}
.footer-img__link--nav5{left:38%;top:74%;width:10%;height:13%}
.footer-img__link--c1{left:60%;top:32%;width:14%;height:13%}
.footer-img__link--c2{left:60%;top:46%;width:12%;height:13%}
.footer-img__link--c3{left:60%;top:60%;width:24%;height:13%}

/* FLYTRAP — fixed CTA */
.flytrap{position:fixed;right:24px;bottom:24px;width:360px;height:auto;z-index:900;text-decoration:none;cursor:none;filter:drop-shadow(0 26px 52px rgba(0,0,0,0.6)) drop-shadow(0 0 22px rgba(122,45,42,0.35));transition:filter .4s,transform .4s}
.flytrap__img{width:100%;height:auto;display:block;transform-origin:50% 62%;animation:flytrap-bite 4.6s cubic-bezier(0.68,-0.55,0.27,1.55) infinite}
.flytrap:hover .flytrap__img{animation-duration:1.6s}
@keyframes flytrap-bite{0%,38%,66%,100%{transform:scaleY(1) scaleX(1)}46%{transform:scaleY(0.78) scaleX(1.03)}52%{transform:scaleY(0.42) scaleX(1.06)}58%{transform:scaleY(0.78) scaleX(1.03)}}
@media(max-width:1023px){.flytrap{width:220px;right:14px;bottom:14px}}


/* ============================================================
   MOBILE FIXES — manifesto, directions, eye, footer stacking
============================================================ */
@media(max-width:1023px){
  /* MANIFESTO — single column on mobile */
  .manifesto{
    grid-template-columns:1fr !important;
    padding:48px 20px 60px !important;
    gap:32px !important;
    min-height:auto !important;
  }
  .m-text{padding-top:30px !important;max-width:none !important}
  .m-title-eclissi{font-size:clamp(54px,12vw,80px) !important}
  .m-title-rest{font-size:clamp(28px,7vw,42px) !important}
  .m-body{font-size:17px !important;line-height:1.7 !important}
  .m-quote{font-size:24px !important;margin-top:24px !important}
  .m-quote-brace{font-size:48px !important}
  .m-collage{min-height:auto !important;display:grid !important;grid-template-columns:1fr 1fr !important;gap:14px !important;padding-bottom:24px !important}
  .m-pol-1,.m-pol-2,.m-pol-3,.m-pol-4,.m-pol-5,.m-pol-6,.m-pol-7,.m-pol-8,.m-pol-9,.m-pol-10,.m-pol-archive{
    position:static !important;
    width:100% !important;
    transform:none !important;
    top:auto !important;left:auto !important;right:auto !important;
  }
  .m-footer-line{
    position:static !important;
    flex-direction:column !important;
    gap:8px !important;
    margin-top:28px !important;
    align-items:flex-start !important;
  }
  .m-fl-sep{display:none !important}
  .m-portfolio-btn{
    position:static !important;
    width:240px !important;
    margin:20px auto 0 !important;
    grid-column:1/-1 !important;
  }
  .m-deco-1{display:none !important}
  .m-topmenu,.m-section-num{position:static !important;margin-bottom:0 !important}

  /* DIRECTIONS — stacked single-column cards */
  .dirs-v2{padding:36px 20px 32px !important}
  .dirs-v2__top{flex-direction:column !important;gap:14px !important;align-items:flex-start !important}
  .dirs-v2__meta{align-items:flex-start !important;text-align:left !important}
  .dirs-v2__brand{font-size:clamp(64px,17vw,110px) !important}
  .dirs-v2__masthead{margin-bottom:24px !important;margin-top:0 !important}
  .dirs-v2__cards{flex-direction:column !important;gap:18px !important;align-items:stretch !important}
  .dcard{
    width:100% !important;
    max-width:none !important;
    flex:1 1 auto !important;
    height:auto !important;
    min-height:520px !important;
    padding:24px 22px !important;
  }
  .dcard--school,.dcard--studio,.dcard--journal{
    height:auto !important;
    min-height:520px !important;
  }
  .dcard__title{font-size:clamp(40px,10vw,64px) !important}
  .dirs-v2__bottom{flex-direction:column !important;gap:10px !important;align-items:flex-start !important;text-align:left !important;margin-top:32px !important}

  /* EYE-BLOCK — 3 mucholovki в столбик */
  .eye-row{flex-direction:column !important;gap:30px !important}
  .eye-wrap{width:min(92vw,520px) !important;flex:none !important}

  /* FOOTER — keep image, scale link zones */
  .footer-img{height:260px !important}

  /* FLYTRAP — smaller, doesn't cover content */
  .flytrap{width:160px !important;right:12px !important;bottom:12px !important}

  /* CTA — smaller breath, scale full width */
  .cta-img__btn{width:18% !important}
}

/* ============================================================
   FINAL OVERRIDES — directions overlap, footer aspect, mobile manifesto
============================================================ */

/* DIRECTIONS — убираем negative margin что заводил карточки под ECLISSI */
.dirs-v2__masthead{margin-bottom:24px !important;margin-top:0 !important}
.dirs-v2{padding-top:40px !important}

/* FOOTER — aspect-ratio вместо фикс height чтобы ALL RIGHTS не обрезалось */
.footer-img{
  height:auto !important;
  aspect-ratio:1942/809;
}
.footer-img__pic{
  position:relative !important;
  left:auto !important;top:auto !important;
  transform:none !important;
  width:100% !important;height:auto !important;min-height:0 !important;
}

/* MANIFESTO mobile — гарантированно single column */
@media(max-width:1023px){
  .manifesto{
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto !important;
    gap:24px !important;
    padding:40px 18px 50px !important;
  }
  .m-text{
    grid-column:1 !important;
    grid-row:1 !important;
    padding-top:24px !important;
    max-width:100% !important;
  }
  .m-collage{
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
    min-height:auto !important;
  }
  .m-pol{
    position:static !important;
    width:100% !important;
    transform:none !important;
    aspect-ratio:auto !important;
  }
  .m-title-eclissi{font-size:14vw !important;line-height:0.95 !important;margin-bottom:8px !important}
  .m-title-rest{font-size:7vw !important;line-height:1.1 !important}
  .m-body{font-size:16px !important;line-height:1.7 !important;max-width:none !important}
  .m-body p{margin-bottom:18px !important;gap:10px !important}
  .m-quote{font-size:22px !important;margin-top:24px !important;gap:10px !important}
  .m-quote-brace{font-size:42px !important}
  .m-footer-line{
    position:static !important;
    flex-direction:column !important;
    gap:6px !important;
    margin-top:24px !important;
    align-items:flex-start !important;
    font-size:11px !important;
    letter-spacing:0.2em !important;
  }
  .m-topmenu,.m-section-num{position:static !important;font-size:10px !important}
  .m-section-num{margin-top:8px !important}
  .m-portfolio-btn{
    position:static !important;
    width:200px !important;
    margin:18px auto 0 !important;
    grid-column:1/-1 !important;
  }
  .m-deco{display:none !important}
}

/* ============================================================
   COMPACT FINAL — about/cta/footer короче без пустых пространств
============================================================ */
.about-img{
  height:clamp(420px, 32vw, 580px) !important;
  aspect-ratio:auto !important;
  overflow:hidden !important;
}
.about-img__pic{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}

.cta-img{
  height:clamp(360px, 28vw, 480px) !important;
  aspect-ratio:auto !important;
}
.cta-img__pic{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}

.footer-img{
  height:clamp(280px, 22vw, 400px) !important;
  aspect-ratio:auto !important;
}
.footer-img__pic{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  width:100% !important;
  height:auto !important;
  min-height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}

@media(max-width:1023px){
  .about-img{height:clamp(280px, 50vw, 380px) !important}
  .cta-img{height:clamp(240px, 50vw, 360px) !important}
  .footer-img{height:clamp(200px, 50vw, 320px) !important}
}

/* ============================================================
   MOBILE: картинки целиком без обрезки, читаемо
============================================================ */
@media(max-width:1023px){
  /* WORKFLOW — full image, natural height */
  .workflow{height:auto !important}
  .workflow__img{width:100% !important;height:auto !important;object-fit:contain !important;display:block !important}

  /* ABOUT — full image */
  .about-img{height:auto !important;aspect-ratio:auto !important}
  .about-img__pic{width:100% !important;height:auto !important;object-fit:contain !important;display:block !important;position:static !important;transform:none !important}

  /* CTA — full image, natural */
  .cta-img{height:auto !important;aspect-ratio:auto !important}
  .cta-img__pic{
    width:100% !important;height:auto !important;
    object-fit:contain !important;
    position:static !important;
    transform:none !important;
    animation:none !important;
  }
  .cta-img__shimmer{display:none !important}

  /* FOOTER — full image */
  .footer-img{height:auto !important;aspect-ratio:auto !important}
  .footer-img__pic{
    width:100% !important;height:auto !important;
    position:static !important;
    transform:none !important;
    object-fit:contain !important;
    min-height:0 !important;
  }

  /* EYE-BLOCK — 3 мухоловки в столбик */
  .eye-block{padding:30px 0 !important}
  .eye-row{flex-direction:column !important;gap:20px !important;align-items:center !important}
  .eye-wrap{width:96vw !important;max-width:none !important;flex:none !important;aspect-ratio:1536/1024 !important}

  /* MANIFESTO polaroid — крупные фото */
  .m-collage{grid-template-columns:1fr 1fr !important;gap:10px !important}
  .m-pol{padding:8px 8px 18px !important}
  .m-pol-num{font-size:8px !important;letter-spacing:0.18em !important;padding:2px 0 !important;top:10px !important}
  .m-pol img{aspect-ratio:3/4 !important}
}

/* HERO — на mobile не cropped */
@media(max-width:1023px){
  .hero{aspect-ratio:auto !important;min-height:auto !important;height:auto !important}
  .hero__bg-video{position:relative !important;height:auto !important;width:100% !important}
  .hero__center-left{position:absolute !important;left:20px !important;top:60px !important}
  .hero__brand-text{font-size:14vw !important}
}

/* ============================================================
   MOBILE POLISH — gaps, polaroid column, dcard heights
============================================================ */
@media(max-width:1023px){
  /* убрать gap'ы между секциями */
  section,.footer-img{margin:0 !important}
  body{overflow-x:hidden}

  /* HERO compact, не растягиваться */
  .hero{aspect-ratio:9/14 !important;min-height:auto !important;height:auto !important;overflow:hidden !important}
  .hero__bg-video{position:absolute !important;top:0;left:0;width:100% !important;height:100% !important;object-fit:cover !important;object-position:center !important}
  .hero__center-left{position:absolute !important;left:20px !important;top:80px !important;z-index:6}
  .hero__brand-text{font-size:18vw !important;line-height:0.95 !important}
  .hero__sub-top{font-size:11px !important;letter-spacing:0.32em !important}

  /* MANIFESTO — polaroids в 1 колонку, крупно */
  .manifesto{padding:36px 16px 48px !important;gap:24px !important}
  .m-collage{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .m-pol{padding:10px 10px 22px !important}
  .m-pol img{aspect-ratio:4/5 !important;width:100% !important;height:auto !important}
  .m-pol-num{font-size:9px !important}
  .m-portfolio-btn{width:180px !important}
  .m-footer-line{font-size:10px !important;letter-spacing:0.18em !important}

  /* DIRECTIONS cards — auto height, padding меньше */
  .dirs-v2{padding:32px 18px 32px !important}
  .dcard{min-height:auto !important;height:auto !important;padding:22px 20px !important;margin-top:0 !important}
  .dcard--school,.dcard--studio,.dcard--journal{min-height:auto !important;height:auto !important}
  .dcard__img-wrap--top,.dcard__img-wrap--bottom{aspect-ratio:4/5 !important;min-height:0 !important;flex:none !important;width:calc(100% + 40px) !important;margin:0 -20px 14px -20px !important}
  .dcard__title{font-size:48px !important;line-height:0.95 !important;margin-bottom:8px !important}
  .dcard__title-em{font-size:0.78em !important}
  .dcard__desc{font-size:13px !important;margin-bottom:18px !important;max-width:none !important}
  .dcard__cta{font-size:10px !important}
  .dirs-v2__brand{font-size:18vw !important;line-height:0.9 !important}
  .dirs-v2__bottom{font-size:9px !important;letter-spacing:0.18em !important;flex-direction:column !important;gap:6px !important;align-items:flex-start !important}

  /* EYE-BLOCK compact */
  .eye-block{padding:24px 0 !important}
  .eye-row{gap:14px !important}
  .eye-wrap{width:96vw !important}
  .eye-cap{font-size:11px !important;letter-spacing:0.22em !important}

  /* WORKFLOW — full image */
  .workflow{height:auto !important}
  .workflow__img{width:100% !important;height:auto !important;display:block !important}

  /* FLYTRAP — мельче */
  .flytrap{width:130px !important;right:10px !important;bottom:10px !important}
}

/* ============================================================
   FINAL FINAL FIXES — desktop cards smaller, hero mobile correct
============================================================ */

/* DESKTOP — directions cards EBOSS smaller */
.dcard--school{height:580px !important}
.dcard--studio{height:680px !important}
.dcard--journal{height:620px !important}

/* MOBILE — Hero proper sizing */
@media(max-width:1023px){
  .hero{aspect-ratio:auto !important;height:auto !important;min-height:auto !important;padding:0 !important;position:relative !important}
  .hero__bg-video{position:relative !important;width:100% !important;height:auto !important;display:block !important;object-fit:contain !important}
  .hero__center-left{position:absolute !important;left:18px !important;top:60px !important;z-index:10;max-width:80vw !important}
  .hero__brand-text{font-size:13vw !important;line-height:0.95 !important;letter-spacing:0.02em !important}
  .hero__sub-top{font-size:10px !important;letter-spacing:0.28em !important}
  .hero__tapes{display:none !important}

  /* MANIFESTO — single column, no overlap with eye */
  .manifesto{
    display:block !important;
    padding:32px 16px 40px !important;
    position:relative;
  }
  .m-text{padding-top:20px !important;display:block !important}
  .m-collage{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    margin-top:24px !important;
    min-height:0 !important;
  }
  .m-pol{position:static !important;width:100% !important;transform:none !important;top:auto !important;left:auto !important;right:auto !important}

  /* DIRECTIONS — карточки меньше, фото 1:1 */
  .dcard__img-wrap--top,.dcard__img-wrap--bottom{aspect-ratio:1/1 !important}
  .dcard{min-height:0 !important;height:auto !important}
  .dcard--school,.dcard--studio,.dcard--journal{min-height:0 !important;height:auto !important;padding:20px !important}
}

/* ============================================================
   PICTURE element fix + manifesto polaroid kill absolute pos on mobile
============================================================ */
.workflow picture{display:block;width:100%;line-height:0}
.workflow__img{display:block;width:100%;height:auto}

@media(max-width:1023px){
  /* PURE STACK для manifesto polaroid'ов — никаких overflow и абсолютов */
  .m-collage{
    display:block !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    position:relative !important;
  }
  .m-pol,
  .m-pol-1,.m-pol-2,.m-pol-3,.m-pol-4,.m-pol-5,
  .m-pol-6,.m-pol-7,.m-pol-8,.m-pol-9,.m-pol-10,.m-pol-archive{
    position:relative !important;
    top:auto !important;left:auto !important;right:auto !important;bottom:auto !important;
    transform:none !important;
    width:88vw !important;
    max-width:none !important;
    margin:14px auto !important;
    aspect-ratio:auto !important;
  }
  .m-pol img{
    position:relative !important;
    width:100% !important;
    height:auto !important;
    aspect-ratio:4/5 !important;
    object-fit:cover !important;
  }
}

/* MOBILE: polaroid manifesto в 2 колонки + picture support */
.about-img picture,.cta-img picture,.footer-img picture,.workflow picture{display:block;width:100%;line-height:0}
.about-img picture img,.cta-img picture img,.footer-img picture img,.workflow picture img{width:100%;height:auto;display:block}

@media(max-width:1023px){
  /* polaroid 2 в ряд */
  .m-collage{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    width:100% !important;
  }
  .m-pol{
    width:100% !important;
    margin:0 !important;
    padding:6px 6px 16px !important;
  }
  .m-pol-num{font-size:8px !important;letter-spacing:0.16em !important;top:8px !important;padding:2px 0 !important}
  .m-pol img{aspect-ratio:3/4 !important}

  /* Mobile pictures — auto natural height */
  .about-img,.cta-img,.footer-img,.workflow{height:auto !important;aspect-ratio:auto !important}
  .about-img__pic,.cta-img__pic,.footer-img__pic,.workflow__img{
    width:100% !important;height:auto !important;
    position:static !important;transform:none !important;
    object-fit:contain !important;min-height:0 !important;
  }
  .cta-img__shimmer{display:none !important}
}

/* ============================================================
   PORTFOLIO BUTTON visible on desktop + FLY-CURSOR force show
============================================================ */
.m-collage{position:relative}
.m-portfolio-btn{
  position:absolute !important;
  z-index:50 !important;
  left:50% !important;
  bottom:-30px !important;
  transform:translateX(-50%) !important;
  width:280px !important;
  display:block !important;
  text-decoration:none !important;
  filter:drop-shadow(0 18px 30px rgba(0,0,0,0.5)) drop-shadow(0 0 18px rgba(242,175,194,0.3));
  transition:transform .35s var(--ease);
}
.m-portfolio-btn img{width:100% !important;height:auto !important;display:block !important}
.m-portfolio-btn:hover{transform:translateX(-50%) translateY(-4px) !important}

/* FLY-CURSOR — force show on desktop, mouse-follow */
@media(min-width:1024px){
  body{cursor:none !important}
  .fly-cursor{
    position:fixed !important;
    left:0;top:0;
    width:54px;height:auto;
    z-index:9999 !important;
    pointer-events:none !important;
    transform:translate(-50%,-50%);
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
  }
  .fly-cursor__img{
    width:100% !important;
    height:auto !important;
    display:block !important;
    filter:drop-shadow(0 3px 6px rgba(0,0,0,0.5));
  }
}

@media(max-width:1023px){
  .m-portfolio-btn{
    position:static !important;
    transform:none !important;
    width:200px !important;
    margin:24px auto 0 !important;
    grid-column:1/-1 !important;
    left:auto !important;bottom:auto !important;
  }
  .m-portfolio-btn:hover{transform:translateY(-2px) !important}
  .fly-cursor{display:none !important}
}

/* ============================================================
   PEARL SHIMMER на manifesto тексте (force всех элементов)
============================================================ */
.m-title-eclissi,
.m-title-rest,
.m-body p > span:not(.m-bullet),
.m-quote-body,
.m-quote-brace,
.m-bullet,
.m-body em,
.m-quote em,
.m-title-rest em{
  background-clip:text !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
}

.m-title-eclissi{
  background:linear-gradient(110deg,#E5DCE8,#FFFFFF,#DCE5E8,#FFFFFF,#E8DDE6,#FFFFFF,#DCE5E8,#E5DCE8) !important;
  background-size:280% 100% !important;
  animation:pearl-shimmer 8s linear infinite !important;
}
.m-title-rest{
  background:linear-gradient(110deg,#DCE5E8,#FFFFFF,#E5DCE8,#FFFFFF,#DCE5E8,#FFFFFF,#DCE5E8) !important;
  background-size:260% 100% !important;
  animation:pearl-shimmer 10s linear infinite !important;
}
.m-title-rest em,
.m-body em,
.m-quote em{
  background:linear-gradient(110deg,#F2AFC2,#FFDFE5,#FFC8D5,#FFDFE5,#F2AFC2) !important;
  background-size:280% 100% !important;
  animation:pearl-shimmer 6s linear infinite !important;
  font-style:italic !important;
}
.m-body p > span:not(.m-bullet){
  background:linear-gradient(110deg,#DCE5E8,#FFFFFF,#E5DCE8,#FFFFFF,#DCE5E8,#FFFFFF) !important;
  background-size:260% 100% !important;
  animation:pearl-shimmer 11s linear infinite !important;
}
.m-bullet,
.m-body p > span.m-bullet{
  background:linear-gradient(110deg,#F2AFC2,#FFDFE5,#F2AFC2) !important;
  background-size:240% 100% !important;
  animation:pearl-shimmer 5s linear infinite !important;
}
.m-quote-body{
  background:linear-gradient(110deg,#DCE5E8,#FFFFFF,#E5DCE8,#FFFFFF,#DCE5E8) !important;
  background-size:260% 100% !important;
  animation:pearl-shimmer 9s linear infinite !important;
}
.m-quote-brace{
  background:linear-gradient(110deg,#F2AFC2,#FFE0E5,#FFC8D5,#FFE0E5,#F2AFC2) !important;
  background-size:260% 100% !important;
  animation:pearl-shimmer 7s linear infinite !important;
}

/* ============================================================
   FIX: body+quote — solid pearl color (gradient на multiline ломал)
============================================================ */
.m-body p > span:not(.m-bullet),
.m-quote-body{
  background:none !important;
  background-image:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:#F2EDE2 !important;
  color:#F2EDE2 !important;
  animation:none !important;
}
.m-body em,
.m-quote em{
  background:none !important;
  background-image:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:#F2AFC2 !important;
  color:#F2AFC2 !important;
  font-style:italic !important;
  font-weight:600 !important;
  animation:none !important;
}
.m-bullet{
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:#F2AFC2 !important;
  color:#F2AFC2 !important;
  animation:none !important;
}
.m-quote-brace{
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:#F2AFC2 !important;
  color:#F2AFC2 !important;
  animation:none !important;
}

/* PORTFOLIO btn — правый нижний угол с overlap на последнее фото */
.m-portfolio-btn{
  position:absolute !important;
  z-index:50 !important;
  right:8% !important;
  bottom:40px !important;
  left:auto !important;
  transform:none !important;
  width:260px !important;
}
.m-portfolio-btn:hover{transform:translateY(-4px) !important}
@media(max-width:1023px){
  .m-portfolio-btn{
    position:static !important;
    right:auto !important;
    bottom:auto !important;
    width:180px !important;
    margin:20px auto 0 !important;
    grid-column:1/-1 !important;
  }
}

/* HERO — убрать poster (если используется) */
.hero__bg-video{background:#050505}

/* ============================================================
   FIX: убрать background-clip text с заголовков (не работает на multi-line)
============================================================ */
.m-title-eclissi{
  background:none !important;
  background-image:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:#F2AFC2 !important;
  color:#F2AFC2 !important;
  animation:none !important;
  text-shadow:0 0 18px rgba(242,175,194,0.32);
}
.m-title-rest{
  background:none !important;
  background-image:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:#F2EDE2 !important;
  color:#F2EDE2 !important;
  animation:none !important;
}
.m-title-rest em{
  background:none !important;
  background-image:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:#F2AFC2 !important;
  color:#F2AFC2 !important;
  animation:none !important;
  font-style:italic !important;
}

/* ============================================================
   FLY-CURSOR — force visible always on desktop, portfolio btn fixed pos
============================================================ */
.fly-cursor{
  position:fixed !important;
  left:50%;top:50%;
  width:60px;
  height:auto;
  z-index:99999 !important;
  pointer-events:none !important;
  transform:translate(-50%,-50%);
  display:block;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,0.5));
}
.fly-cursor__img{
  width:100% !important;
  height:auto !important;
  display:block;
}
@media(min-width:1024px){body{cursor:none}}
@media(max-width:1023px){.fly-cursor{display:none !important}}

/* PORTFOLIO btn — fixed within manifesto, центр-низ */
.m-portfolio-btn{
  position:absolute !important;
  z-index:50 !important;
  left:50% !important;
  bottom:-20px !important;
  right:auto !important;
  transform:translateX(-50%) !important;
  width:240px !important;
}
.m-portfolio-btn:hover{transform:translateX(-50%) translateY(-4px) !important}
@media(max-width:1023px){
  .m-portfolio-btn{
    position:static !important;
    transform:none !important;
    left:auto !important;bottom:auto !important;
    width:180px !important;
    margin:24px auto 0 !important;
    grid-column:1/-1 !important;
  }
}

/* ============================================================
   FINAL fixes: flytrap mobile ×5, cursor:none force, manifesto pearl
============================================================ */

/* Force native cursor hidden on ALL viewports — let only fly-cursor be the cursor */
html,body,a,button,*{cursor:none !important}
@media(max-width:1023px){
  html,body,a,button,*{cursor:auto !important}
}

/* FLYTRAP — 5× bigger on mobile */
@media(max-width:1023px){
  .flytrap{
    width:280px !important;
    right:10px !important;
    bottom:10px !important;
  }
}

/* MANIFESTO ECLISSI title — pearl gradient через CSS background-clip (single-line aware) */
.m-title-eclissi{
  background:linear-gradient(110deg,#F2C5C8,#FFFFFF,#FFE0DC,#F2AFC2,#FFC8D5,#FFFFFF,#F2C5C8) !important;
  background-size:300% 100% !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
  animation:pearl-shimmer 7s linear infinite !important;
  display:inline-block !important;
}

/* ============================================================
   FINAL: bullet точки, fly-cursor cleanup, portfolio btn mobile
============================================================ */

/* Bullets — pink круглая точка с pearl gradient */
.m-bullet,
.m-body p > span.m-bullet{
  font-size:20px !important;
  line-height:1 !important;
  color:#F2AFC2 !important;
  -webkit-text-fill-color:#F2AFC2 !important;
  background:none !important;
  animation:none !important;
  text-shadow:0 0 8px rgba(242,175,194,0.6);
  display:inline-block !important;
  margin-top:6px !important;
}

/* Fly-cursor — убрать translate(-50%,-50%) поскольку JS уже center'ит через .style.left/top */
.fly-cursor{
  transform:none !important;
  margin-left:-30px !important;
  margin-top:-30px !important;
}

/* Mobile fly-cursor — full hide on touch devices */
@media(max-width:1023px){
  .fly-cursor{display:none !important}
  html,body,a,button,*{cursor:auto !important}
}

/* PORTFOLIO btn mobile — прямо после полароидов внутри collage */
@media(max-width:1023px){
  .m-portfolio-btn{
    position:relative !important;
    display:block !important;
    width:220px !important;
    margin:18px auto 0 !important;
    grid-column:1/-1 !important;
    z-index:5 !important;
    left:auto !important;
    bottom:auto !important;
    top:auto !important;
    right:auto !important;
    transform:none !important;
  }
}
