:root{--bg:#f6f4f0;--ink:#0a0a0a;--muted:#817c74;--line:#dedad3;--display:'Archivo',sans-serif;--serif:'Newsreader',serif;--statement:'Unbounded',sans-serif;--gutter:clamp(1.25rem,4vw,4rem);--pad:clamp(5rem,11vw,10rem);--ease:cubic-bezier(.65,0,.35,1)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--serif);overflow-x:hidden}img,video{display:block;width:100%}a{color:inherit;text-decoration:none}button{background:none;border:0}.ambient-holo{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden;opacity:.45;mix-blend-mode:multiply}.holo-blob{position:absolute;width:46vw;height:46vw;border-radius:50%;filter:blur(95px);opacity:.55}.holo-blob-1{left:-12%;top:-8%;background:#a8ddff;animation:drift1 24s ease-in-out infinite alternate}.holo-blob-2{right:-15%;top:28%;background:#ffc2e3;animation:drift2 28s ease-in-out infinite alternate}.holo-blob-3{left:24%;bottom:-16%;background:#ffe6a0;animation:drift3 22s ease-in-out infinite alternate}@keyframes drift1{to{transform:translate(10vw,9vh) scale(1.15)}}@keyframes drift2{to{transform:translate(-9vw,8vh) scale(.9)}}@keyframes drift3{to{transform:translate(7vw,-8vh) scale(1.1)}}
.site-header,main,footer{position:relative;z-index:1}.site-header{position:fixed;top:0;left:0;width:100%;z-index:50;background:rgba(246,244,240,.84);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:.3s}.site-header.is-scrolled{border-color:var(--line)}.header-inner{padding:1.35rem var(--gutter);display:flex;justify-content:space-between;align-items:center}.header-logo{font-family:var(--display);font-size:1.18rem;font-weight:900;letter-spacing:-.055em}.header-nav{display:flex;gap:2.4rem}.nav-link{font-family:var(--display);font-size:.78rem;letter-spacing:.09em}.menu-toggle{display:none;width:28px}.menu-toggle span{display:block;height:1px;background:#000;margin:6px 0}
.hero{min-height:100svh;display:grid;place-items:center;text-align:center;padding:0 var(--gutter)}.hero-content{display:flex;flex-direction:column;align-items:center}.hero-brand-lockup{animation:heroIn 1s cubic-bezier(.2,1.3,.3,1) both}.hero-brand-lockup h1{font-family:var(--display);font-size:clamp(5rem,20vw,13rem);font-weight:900;line-height:.82;letter-spacing:-.065em}.hero-studio{font-family:var(--display);font-size:clamp(.95rem,2vw,1.8rem);font-weight:900;letter-spacing:.3em;padding-left:.3em;margin-top:1.15rem}.hero-subtitle{font-family:var(--statement);font-size:clamp(.7rem,1.3vw,1rem);letter-spacing:.16em;margin-top:3rem;animation:heroIn .9s .25s both}@keyframes heroIn{from{opacity:0;transform:translateY(35px) scale(.9)}to{opacity:1;transform:none}}
.intro,.work,.more-motion,.services,.about{padding:var(--pad) var(--gutter)}.intro-inner{max-width:880px;margin:auto;text-align:center}.intro-statement{font-family:var(--statement);font-size:clamp(1.6rem,4vw,2.9rem);font-weight:800;line-height:1.15}.intro-description{max-width:620px;margin:2rem auto 0;color:var(--muted);font-size:1.1rem}[data-reveal]{opacity:0;transform:translateY(50px) scale(.97);transition:opacity .75s var(--ease),transform .9s cubic-bezier(.2,1.2,.3,1)}[data-reveal].is-visible{opacity:1;transform:none}
.eyebrow{font-family:var(--display);font-size:.7rem;letter-spacing:.15em;color:var(--muted);text-transform:uppercase}.work-header{margin-bottom:6rem}.work-header h2,.more-heading h2{font-family:var(--display);font-size:clamp(3.3rem,10vw,8.5rem);font-weight:900;line-height:.82;letter-spacing:-.065em;margin-top:1rem}.case-study+.case-study{margin-top:11rem}.case-heading{display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;align-items:end;margin-bottom:2.4rem}.case-number{font-family:var(--display);font-size:.8rem;color:var(--muted)}.case-heading h3{font-family:var(--display);font-size:clamp(2rem,4vw,3.2rem);font-weight:900;line-height:.95}.case-heading p{color:var(--muted);font-style:italic}.case-heading>a{font-family:var(--display);font-size:.78rem;letter-spacing:.08em}
.beyond-opening{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:1.4rem;border:1px solid var(--line);padding:1.5rem;background:rgba(255,255,255,.4);backdrop-filter:blur(8px);margin-bottom:3rem}.beyond-logo{width:120px;border-radius:50%}.beyond-opening h4,.carousel-copy h4,.brand-world-copy h4,.closing-copy h4{font-family:var(--display);font-weight:900;font-size:clamp(1.9rem,4vw,3.6rem);line-height:.92;letter-spacing:-.04em;margin-top:.6rem}.beyond-stage{display:grid;gap:clamp(2.2rem,5vw,4rem)}.piece{background:rgba(255,255,255,.52);border:1px solid var(--line);box-shadow:0 28px 80px rgba(0,0,0,.1);overflow:hidden}.piece figcaption{padding:.85rem 1rem;font-family:var(--display);font-size:.7rem;letter-spacing:.12em;color:var(--muted)}.piece-selectividad{width:min(88%,980px);transform:rotate(-1.3deg)}.piece-classes{width:min(55%,430px);justify-self:end;transform:rotate(1.8deg)}.video-piece{width:min(42%,360px)}.video-one{justify-self:end}.video-two{justify-self:start}.video-three{justify-self:end}.phone-frame{padding:10px;background:#111;border-radius:28px}.phone-frame video{aspect-ratio:9/16;object-fit:cover;border-radius:19px;background:#111}
.carousel-showcase{border:1px solid var(--line);background:rgba(255,255,255,.48);padding:1.25rem;box-shadow:0 28px 80px rgba(0,0,0,.08)}.carousel-copy{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding:1rem 0 1.6rem}.carousel-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.carousel-strip figure{position:relative;overflow:hidden;background:#eee}.carousel-strip figure:nth-child(1){transform:translateY(12px) rotate(-1.5deg)}.carousel-strip figure:nth-child(2){transform:translateY(-8px)}.carousel-strip figure:nth-child(3){transform:translateY(14px) rotate(1.5deg)}.carousel-strip span{position:absolute;left:10px;bottom:10px;background:#000;color:white;padding:.35rem .55rem;font-family:var(--display);font-size:.7rem}.travel-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.piece-shift{transform:translateY(55px) rotate(1.2deg)}.brand-world{display:grid;grid-template-columns:.8fr 1.2fr;gap:1.2rem;align-items:center;border:1px solid var(--line);background:rgba(255,255,255,.45);padding:1rem}.brand-world-copy{padding:1.2rem}.beyond-closing{position:relative;min-height:620px;display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:2rem;border:1px solid var(--line);padding:1.5rem;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.65),rgba(213,229,255,.6),rgba(255,213,234,.5));box-shadow:0 28px 90px rgba(0,0,0,.1)}.video-close{width:min(100%,340px);z-index:2}.closing-copy{position:relative;z-index:3}.closing-copy p{max-width:42ch;margin-top:1rem;color:var(--muted)}.orbit-rocket{position:absolute;width:min(31vw,320px);right:-2%;bottom:3%;transform:rotate(8deg);animation:floatOrbit 5s ease-in-out infinite}@keyframes floatOrbit{50%{transform:translate(-20px,-18px) rotate(2deg)}}
.solturf-stage{display:block;position:relative;min-height:min(78vh,750px);overflow:hidden;background:linear-gradient(145deg,#143617,#080808 48%,#274f2a);color:white;border:1px solid #192b1b}.solturf-stage:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:50px 50px}.solturf-word{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--display);font-size:clamp(4.5rem,16vw,12rem);font-weight:900;letter-spacing:-.08em}.mini,.solturf-bottom{position:absolute;font-family:var(--display);font-size:.7rem;letter-spacing:.12em}.mini-a{left:6%;top:8%}.mini-b{right:7%;top:12%}.mini-c{left:9%;bottom:15%}.solturf-bottom{left:6%;right:6%;bottom:5%;display:flex;justify-content:space-between}
.more-motion{border-top:1px solid var(--line);position:relative}.more-heading{max-width:1000px;margin-bottom:6rem}.more-heading p{max-width:520px;color:var(--muted);margin-top:1.5rem}.more-grid{display:grid;grid-template-columns:.95fr .7fr .85fr;gap:2rem;align-items:center}.more-left{width:100%;transform:rotate(-2deg) translateY(20px)}.more-right{width:100%;transform:rotate(2deg) translateY(-20px)}.more-copy strong{display:block;font-family:var(--display);font-size:clamp(2.7rem,6vw,5rem);line-height:.84;letter-spacing:-.05em;margin-top:.7rem}
.section-title{font-family:var(--display);font-size:clamp(2.7rem,7vw,5rem);font-weight:900;letter-spacing:-.03em}.services{border-top:1px solid var(--line)}.services ul{margin-top:3rem}.services li{border-bottom:1px solid var(--line);padding:1.5rem 0;font-family:var(--display);font-size:clamp(1.4rem,4vw,2.4rem);font-weight:700;display:flex;gap:2rem}.services li:first-child{border-top:1px solid var(--line)}.services li span{font-size:.8rem;color:var(--muted);font-weight:400}.about-inner{max-width:780px;margin:auto;text-align:center}.about p{font-size:1.35rem;line-height:1.6;margin-top:2rem}.contact{min-height:90svh;background:#111;color:white;display:grid;place-items:center;text-align:center;padding:var(--pad) var(--gutter)}.contact h2{font-family:var(--display);font-size:clamp(3rem,8vw,7rem);font-weight:900;line-height:.9;letter-spacing:-.05em}.contact a{display:inline-block;margin-top:3rem;font-family:var(--display);letter-spacing:.08em;border-bottom:1px solid white;padding-bottom:.3rem}footer{background:#111;color:#aaa;padding:2rem var(--gutter);text-align:center;font-family:var(--display);font-size:.75rem}footer div{margin-top:.5rem}
@media(max-width:900px){.menu-toggle{display:block;position:relative;z-index:60}.header-nav{position:fixed;top:0;right:0;height:100svh;width:min(80vw,360px);background:var(--bg);flex-direction:column;justify-content:center;align-items:flex-start;padding:2rem;transform:translateX(100%);transition:.5s var(--ease)}.header-nav.is-open{transform:none}.nav-link{font-size:1.25rem}.case-heading{grid-template-columns:1fr}.carousel-copy{display:block}.carousel-copy h4{margin-top:1rem}.travel-grid,.brand-world,.beyond-closing,.more-grid{grid-template-columns:1fr}.video-piece,.piece-classes,.piece-selectividad{width:min(100%,430px);justify-self:center}.piece-shift{transform:none}.orbit-rocket{position:relative;right:auto;bottom:auto;width:min(70vw,300px);margin:-1rem auto 0}.beyond-closing{min-height:auto}.closing-copy{padding-bottom:1rem}.more-copy{text-align:center}}
@media(max-width:650px){.carousel-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1rem}.carousel-strip figure{min-width:82vw;scroll-snap-align:center;transform:none!important}.beyond-opening{grid-template-columns:1fr}.beyond-logo{width:90px}.hero-subtitle{font-size:.65rem;letter-spacing:.1em}.work-header h2,.more-heading h2{font-size:clamp(3rem,15vw,4.8rem)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


/* --- v4 fix: reels visibles y juntos --- */
.reels-wall{border:1px solid var(--line);background:rgba(255,255,255,.50);padding:1.25rem;box-shadow:0 28px 80px rgba(0,0,0,.08)}
.reels-wall-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding:1rem 0 1.4rem}.reels-wall-head h4{font-family:var(--display);font-weight:900;font-size:clamp(1.9rem,4vw,3.6rem);line-height:.92;letter-spacing:-.04em}
.reels-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}
.reel-tile{background:rgba(255,255,255,.62);border:1px solid var(--line);box-shadow:0 18px 40px rgba(0,0,0,.08);overflow:hidden}
.reel-tile:nth-child(1){transform:rotate(-1.5deg)}.reel-tile:nth-child(2){transform:translateY(18px) rotate(1.4deg)}.reel-tile:nth-child(3){transform:translateY(-12px) rotate(.8deg)}.reel-tile:nth-child(4){transform:rotate(-.9deg)}
.reel-tile figcaption{padding:.85rem 1rem;font-family:var(--display);font-size:.7rem;letter-spacing:.12em;color:var(--muted)}
.beyond-closing{min-height:320px;grid-template-columns:1fr;place-items:center;text-align:center;padding:2rem}
.beyond-closing .closing-copy{max-width:680px}.beyond-closing .closing-copy p{margin-left:auto;margin-right:auto}
.beyond-closing .orbit-rocket{position:relative;right:auto;bottom:auto;width:min(260px,55vw);margin-top:1rem}
@media(max-width:900px){.reels-wall-head{display:block}.reels-wall-head h4{margin-top:1rem}}
@media(max-width:650px){.reels-grid{grid-template-columns:1fr}.reel-tile{transform:none!important}.reels-wall{padding:1rem}}


/* ================================================================
   BEYOND — HOME TEASER + DEDICATED CASE STUDY
   ================================================================ */
.beyond-teaser-card{
  display:grid;
  grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);
  gap:clamp(2rem,5vw,5rem);
  min-height:650px;
  padding:clamp(1.5rem,3vw,2.5rem);
  border:1px solid var(--line);
  background:rgba(255,255,255,.46);
  box-shadow:0 28px 80px rgba(0,0,0,.08);
  overflow:hidden;
  align-items:stretch
}
.beyond-teaser-copy{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:2rem;
  padding:clamp(.4rem,1vw,1rem) 0
}
.beyond-teaser-copy h4{
  font-family:var(--display);
  font-size:clamp(2.4rem,5vw,5rem);
  font-weight:900;
  line-height:.88;
  letter-spacing:-.055em;
  margin-top:1rem
}
.beyond-teaser-copy>p{
  max-width:36ch;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.5
}
.beyond-teaser-cta{
  width:max-content;
  font-family:var(--display);
  font-size:.75rem;
  letter-spacing:.1em;
  border-bottom:1px solid var(--ink);
  padding-bottom:.35rem
}
.beyond-teaser-media{
  position:relative;
  min-height:580px
}
.beyond-teaser-media figure{
  position:absolute;
  overflow:hidden;
  background:#eee;
  box-shadow:0 18px 48px rgba(0,0,0,.12);
  transition:transform .7s var(--ease)
}
.beyond-teaser-media img{height:100%;object-fit:cover}
.teaser-main{
  inset:5% 16% 10% 3%;
  transform:rotate(-1deg)
}
.teaser-video{
  width:min(31%,240px);
  right:0;
  top:4%;
  z-index:4;
  background:transparent!important;
  box-shadow:none!important
}
.teaser-small{
  width:30%;
  aspect-ratio:4/5;
  bottom:0;
  z-index:3
}
.teaser-small-a{left:2%;transform:rotate(2.4deg)}
.teaser-small-b{right:2%;transform:rotate(-2deg)}
.beyond-teaser-card:hover .teaser-main{transform:rotate(-.4deg) scale(1.012)}
.beyond-teaser-card:hover .teaser-video{transform:translateY(-8px)}
.beyond-teaser-card:hover .teaser-small-a{transform:rotate(1deg) translateY(-6px)}
.beyond-teaser-card:hover .teaser-small-b{transform:rotate(-1deg) translateY(-8px)}

.case-page .site-header{background:rgba(246,244,240,.9)}
.case-hero{
  min-height:92svh;
  padding:clamp(8rem,15vw,12rem) var(--gutter) clamp(5rem,9vw,8rem);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  border-bottom:1px solid var(--line)
}
.case-back{
  width:max-content;
  font-family:var(--display);
  font-size:.72rem;
  letter-spacing:.11em
}
.case-hero-grid{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:end;
  gap:3rem;
  margin-top:clamp(5rem,10vw,9rem)
}
.case-hero h1{
  font-family:var(--display);
  font-size:clamp(4.8rem,14vw,12rem);
  font-weight:900;
  line-height:.78;
  letter-spacing:-.075em
}
.case-hero-meta{
  text-align:right;
  padding-bottom:.7rem
}
.case-hero-meta p{
  color:var(--muted);
  font-size:1.05rem;
  line-height:1.55;
  margin-bottom:1.4rem
}
.case-hero-meta a{
  font-family:var(--display);
  font-size:.72rem;
  letter-spacing:.1em;
  border-bottom:1px solid var(--ink);
  padding-bottom:.25rem
}
.case-hero-intro{
  max-width:760px;
  margin-top:5rem;
  font-size:clamp(1.35rem,2.5vw,2.2rem);
  line-height:1.18
}
.case-content{
  padding:var(--pad) var(--gutter)
}
.case-content .beyond-full-case{
  margin:0 auto;
  max-width:1400px
}
.case-content .beyond-opening{
  margin-bottom:clamp(4rem,8vw,7rem)
}
.case-next{
  min-height:55svh;
  padding:var(--pad) var(--gutter);
  border-top:1px solid var(--line);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:1.3rem
}
.case-next a{
  font-family:var(--display);
  font-size:clamp(2.5rem,7vw,6.5rem);
  font-weight:900;
  line-height:.9;
  letter-spacing:-.055em
}

@media(max-width:900px){
  .beyond-teaser-card{grid-template-columns:1fr;min-height:0}
  .beyond-teaser-media{min-height:620px}
  .case-hero-grid{grid-template-columns:1fr}
  .case-hero-meta{text-align:left}
}
@media(max-width:650px){
  .beyond-teaser-media{min-height:480px}
  .teaser-main{inset:4% 10% 12% 0}
  .teaser-video{width:36%;right:0}
  .teaser-small{width:38%}
  .case-hero{min-height:88svh}
  .case-hero h1{font-size:clamp(4rem,19vw,6rem)}
}


/* ================================================================
   SOLTURF — EDITORIAL CAMPAIGN ASSETS
   ================================================================ */
.solturf-editorial-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(1.2rem,3vw,2.4rem);
  margin-top:clamp(2rem,5vw,4rem);
  align-items:start
}
.solturf-editorial-card{
  overflow:hidden;
  border:1px solid var(--line);
  background:rgba(255,255,255,.45);
  box-shadow:0 26px 70px rgba(0,0,0,.10)
}
.solturf-editorial-card img{
  width:100%;
  height:auto;
  display:block;
  object-fit:cover
}
.solturf-editorial-card-a{
  transform:translateY(36px) rotate(-1.2deg)
}
.solturf-editorial-card-b{
  transform:rotate(1.15deg)
}
.solturf-editorial-card{
  transition:transform .7s var(--ease), box-shadow .7s var(--ease)
}
.solturf-editorial-card:hover{
  transform:translateY(-6px) rotate(0deg) scale(1.012);
  box-shadow:0 34px 90px rgba(0,0,0,.13)
}

@media(max-width:800px){
  .solturf-editorial-grid{grid-template-columns:1fr}
  .solturf-editorial-card-a,
  .solturf-editorial-card-b{transform:none}
}


/* ================================================================
   SOLTURF LOGO HEADING
   ================================================================ */
.solturf-heading{
  align-items:center;
}
.solturf-heading-main{
  display:flex;
  flex-direction:column;
  gap:.9rem;
}
.solturf-logo-heading{
  width:min(100%, 430px);
  height:auto;
  display:block;
}
.solturf-heading-main p{
  margin:0;
}
@media(max-width:650px){
  .solturf-logo-heading{
    width:min(82vw, 320px);
  }
}


/* ================================================================
   SOLTURF STAGE — USE REAL LOGO INSTEAD OF WORD
   ================================================================ */
.case-solturf .solturf-stage{
  overflow:hidden;
}
.case-solturf .solturf-stage-center{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(4rem,8vw,6rem) clamp(3rem,8vw,7rem);
  z-index:2;
}
.case-solturf .solturf-stage-logo{
  width:min(84%, 900px);
  height:auto;
  display:block;
  filter:drop-shadow(0 10px 34px rgba(0,0,0,.18));
}
.case-solturf .mini,
.case-solturf .solturf-bottom{
  z-index:3;
}
.case-solturf .solturf-bottom{
  position:absolute;
  left:6%;
  right:6%;
  bottom:5%;
  display:flex;
  justify-content:space-between;
  gap:1.25rem;
  flex-wrap:wrap;
}
@media(max-width:900px){
  .case-solturf .solturf-stage-logo{width:min(88%, 640px)}
}
@media(max-width:640px){
  .case-solturf .solturf-stage-center{
    padding:4rem 1.4rem 5rem;
  }
  .case-solturf .solturf-stage-logo{
    width:min(92%, 460px);
  }
  .case-solturf .solturf-bottom{
    gap:.8rem;
  }
}


/* ================================================================
   SOLTURF — HEADING RESET + HOLOGRAPHIC PADEL PANEL
   ================================================================ */
.solturf-heading-main h3{
  font-family:var(--display);
  font-size:clamp(2.6rem,6vw,6rem);
  font-weight:900;
  line-height:.9;
  letter-spacing:-.05em;
  margin:0;
}
.solturf-heading-main p{margin:0}

/* Override the Solturf stage with a holographic verdous / padel vibe */
.case-solturf .solturf-stage{
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(1200px 520px at 10% 10%, rgba(115,255,173,.18), transparent 48%),
    radial-gradient(900px 520px at 85% 82%, rgba(102,255,120,.22), transparent 42%),
    radial-gradient(700px 420px at 70% 28%, rgba(42,211,255,.10), transparent 32%),
    linear-gradient(115deg, #04110a 0%, #072512 22%, #0b3618 48%, #163f1d 72%, #27522a 100%);
  border:1px solid rgba(255,255,255,.06);
}
.case-solturf .solturf-stage::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
  background-size: 50px 50px, 50px 50px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.95), rgba(0,0,0,.75));
  z-index:0;
  pointer-events:none;
}
.case-solturf .solturf-stage::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(180,255,214,.04), transparent 26%, rgba(95,255,149,.03) 48%, transparent 66%, rgba(90,226,255,.03)),
    radial-gradient(500px 180px at 50% 105%, rgba(181,255,92,.16), transparent 60%);
  mix-blend-mode:screen;
  z-index:1;
  pointer-events:none;
}
/* hint of padel court lines */
.case-solturf .solturf-stage-center::before{
  content:"";
  position:absolute;
  inset:14% 8%;
  border:1.5px solid rgba(230,255,236,.12);
  border-radius:4px;
  z-index:-1;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.03);
}
.case-solturf .solturf-stage-center::after{
  content:"";
  position:absolute;
  top:14%;
  bottom:14%;
  left:50%;
  width:1.5px;
  transform:translateX(-50%);
  background:rgba(230,255,236,.10);
  z-index:-1;
}
.case-solturf .solturf-stage-logo{
  filter:
    drop-shadow(0 12px 40px rgba(0,0,0,.22))
    drop-shadow(0 0 24px rgba(188,255,108,.07));
}


/* ================================================================
   SOLTURF — PREMIUM / ELEGANT PANEL OVERRIDE
   ================================================================ */
.case-solturf .solturf-stage{
  background:
    radial-gradient(900px 420px at 18% 18%, rgba(149, 255, 196, .10), transparent 48%),
    radial-gradient(760px 380px at 82% 82%, rgba(120, 255, 170, .08), transparent 44%),
    radial-gradient(520px 260px at 70% 30%, rgba(145, 214, 255, .05), transparent 38%),
    linear-gradient(135deg, #06110b 0%, #0a1911 28%, #102117 56%, #17291d 78%, #1f3324 100%);
  border:1px solid rgba(255,255,255,.07);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 22px 70px rgba(0,0,0,.14);
}

.case-solturf .solturf-stage::before{
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 50px 50px, 50px 50px;
  opacity:.42;
}

.case-solturf .solturf-stage::after{
  background:
    linear-gradient(125deg,
      rgba(255,255,255,.025) 0%,
      transparent 22%,
      rgba(166,255,216,.045) 46%,
      transparent 63%,
      rgba(190,223,255,.03) 100%);
  mix-blend-mode:screen;
  opacity:.72;
}

/* remove the obvious padel-court feel */
.case-solturf .solturf-stage-center::before,
.case-solturf .solturf-stage-center::after{
  display:none;
}

.case-solturf .solturf-stage-logo{
  filter:
    drop-shadow(0 14px 38px rgba(0,0,0,.22))
    drop-shadow(0 0 14px rgba(212,255,230,.04));
}

.case-solturf .mini,
.case-solturf .solturf-bottom span{
  color:rgba(255,255,255,.94);
  letter-spacing:.12em;
}

.case-solturf .solturf-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:1rem;
}

@media(max-width:640px){
  .case-solturf .solturf-bottom{
    padding-top:.8rem;
  }
}


/* ================================================================
   SOLTURF — REFERENCE STYLE / PREMIUM HERO PANEL
   ================================================================ */
.case-solturf .solturf-stage-refined{
  position:relative;
  min-height:clamp(360px, 48vw, 520px);
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(300px, 42%);
  align-items:center;
  gap:clamp(1rem, 3vw, 2rem);
  padding:clamp(1.8rem, 4vw, 3.5rem);
  overflow:hidden;
  background:#08110b;
  border:1px solid rgba(255,255,255,.06);
  box-shadow:0 26px 80px rgba(0,0,0,.16);
}
.case-solturf .solturf-stage-refined:hover{
  transform:none;
}
.case-solturf .solturf-stage-bg,
.case-solturf .solturf-stage-overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.case-solturf .solturf-stage-bg{
  background:
    linear-gradient(90deg, rgba(4,11,7,.92) 0%, rgba(6,14,9,.84) 34%, rgba(7,17,10,.40) 58%, rgba(7,17,10,.18) 100%),
    url('../images/solturf-hero-bg.jpg') center center / cover no-repeat;
  filter:saturate(.88) brightness(.64) blur(.2px);
  transform:scale(1.03);
}
.case-solturf .solturf-stage-overlay{
  background:
    radial-gradient(900px 380px at 15% 8%, rgba(215,174,83,.12), transparent 45%),
    radial-gradient(700px 300px at 85% 18%, rgba(157,224,104,.08), transparent 40%),
    linear-gradient(135deg, rgba(255,255,255,.025), transparent 35%, rgba(255,255,255,.01) 100%);
  mix-blend-mode:screen;
}
.case-solturf .solturf-stage-copy,
.case-solturf .solturf-stage-brand{
  position:relative;
  z-index:2;
}
.case-solturf .solturf-stage-copy{
  max-width:630px;
}
.case-solturf .solturf-kicker{
  display:flex;
  align-items:center;
  gap:.8rem;
  margin-bottom:1.1rem;
  color:#d8b15a;
  font-size:.9rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:600;
}
.case-solturf .solturf-kicker-line{
  width:40px;
  height:1px;
  background:#d8b15a;
  display:inline-block;
}
.case-solturf .solturf-stage-headline{
  margin:0;
  color:#f5f1e8;
  font-family:Georgia, "Times New Roman", serif;
  font-size:clamp(2.5rem, 5vw, 4.8rem);
  line-height:.95;
  letter-spacing:-.04em;
  font-weight:500;
}
.case-solturf .solturf-stage-headline span{
  display:block;
  color:#d8b15a;
}
.case-solturf .solturf-stage-text{
  margin:1.35rem 0 0;
  max-width:560px;
  color:rgba(245,241,232,.92);
  font-size:clamp(1rem, 1.5vw, 1.35rem);
  line-height:1.45;
}
.case-solturf .solturf-stage-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:1.1rem 1.6rem;
  margin-top:2rem;
}
.case-solturf .solturf-btn-primary{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.9rem;
  background:#d8b15a;
  color:#1f1a12;
  padding:1rem 1.4rem;
  border-radius:10px;
  font-weight:700;
  letter-spacing:.03em;
  box-shadow:0 10px 30px rgba(0,0,0,.18);
}
.case-solturf .solturf-btn-primary strong{
  font-size:1.15em;
}
.case-solturf .solturf-btn-video{
  display:inline-flex;
  align-items:center;
  gap:.9rem;
  color:#f5f1e8;
  font-weight:600;
  letter-spacing:.02em;
}
.case-solturf .solturf-play-circle{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(216,177,90,.72);
  color:#d8b15a;
  font-size:1rem;
  padding-left:2px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
}
.case-solturf .solturf-stage-brand{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:1rem;
}
.case-solturf .solturf-stage-logo{
  width:min(100%, 500px);
  height:auto;
  display:block;
  filter:
    drop-shadow(0 16px 38px rgba(0,0,0,.28))
    drop-shadow(0 4px 10px rgba(0,0,0,.18));
}

@media (max-width: 980px){
  .case-solturf .solturf-stage-refined{
    grid-template-columns:1fr;
    min-height:auto;
    padding:1.4rem;
  }
  .case-solturf .solturf-stage-bg{
    background:
      linear-gradient(180deg, rgba(4,11,7,.90) 0%, rgba(6,14,9,.84) 45%, rgba(7,17,10,.46) 100%),
      url('../images/solturf-hero-bg.jpg') center center / cover no-repeat;
  }
  .case-solturf .solturf-stage-copy{
    max-width:none;
  }
  .case-solturf .solturf-stage-brand{
    justify-content:flex-end;
  }
  .case-solturf .solturf-stage-logo{
    width:min(82%, 400px);
  }
}

@media (max-width: 640px){
  .case-solturf .solturf-kicker{
    font-size:.75rem;
  }
  .case-solturf .solturf-stage-headline{
    font-size:clamp(2.05rem, 11vw, 3.1rem);
  }
  .case-solturf .solturf-stage-text{
    font-size:1rem;
  }
  .case-solturf .solturf-btn-primary{
  text-decoration:none;
    width:100%;
    justify-content:center;
  }
  .case-solturf .solturf-stage-actions{
    align-items:flex-start;
    gap:1rem;
  }
  .case-solturf .solturf-stage-brand{
    justify-content:center;
  }
  .case-solturf .solturf-stage-logo{
    width:min(92%, 360px);
  }
}


/* ================================================================
   SOLTURF — DEDICATED PROJECT PAGE
   ================================================================ */
.solturf-btn-video{
  text-decoration:none;
}
.solturf-projects-page{
  padding:var(--pad) var(--gutter);
}
.solturf-project-intro{
  max-width:960px;
  margin-bottom:clamp(4rem,8vw,7rem);
}
.solturf-project-intro h2{
  font-family:var(--display);
  font-size:clamp(3.5rem,10vw,9rem);
  font-weight:900;
  line-height:.82;
  letter-spacing:-.065em;
  margin-top:1rem;
}
.solturf-project-intro p{
  max-width:620px;
  margin-top:1.5rem;
  color:var(--muted);
  font-size:1.12rem;
  line-height:1.55;
}
.solturf-project-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:clamp(1.4rem,3vw,2.6rem);
  align-items:start;
}
.solturf-project-card{
  margin:0;
  border:1px solid var(--line);
  background:rgba(255,255,255,.5);
  box-shadow:0 26px 70px rgba(0,0,0,.09);
  overflow:hidden;
}
.solturf-project-card-wide{
  transform:translateY(48px);
}
.solturf-project-card img{
  width:100%;
  height:auto;
  display:block;
}
.solturf-project-card figcaption{
  display:flex;
  gap:1.2rem;
  align-items:flex-start;
  padding:1rem 1.1rem 1.15rem;
  border-top:1px solid var(--line);
  font-family:var(--display);
}
.solturf-project-card figcaption>span{
  color:var(--muted);
  font-size:.7rem;
  letter-spacing:.12em;
}
.solturf-project-card figcaption div{
  display:flex;
  flex-direction:column;
  gap:.3rem;
}
.solturf-project-card figcaption strong{
  font-size:.8rem;
  letter-spacing:.12em;
}
.solturf-project-card figcaption small{
  font-family:var(--serif);
  color:var(--muted);
  font-size:.95rem;
}
.solturf-case-hero{
  background:
    radial-gradient(850px 360px at 86% 18%, rgba(130,196,140,.10), transparent 55%),
    transparent;
}

@media(max-width:900px){
  .solturf-project-grid{
    grid-template-columns:1fr;
  }
  .solturf-project-card-wide{
    transform:none;
  }
}

/* Cleanup after removing selected Beyond captures */
.beyond-teaser-media .teaser-small.teaser-small-a{
  align-self:end;
}


/* ================================================================
   SOCIAL ICONS — MŌRE + BEYOND
   ================================================================ */
.social-links{
  display:flex;
  align-items:center;
  gap:.75rem;
}
.social-icon{
  width:42px;
  height:42px;
  border:1px solid currentColor;
  border-radius:50%;
  display:grid;
  place-items:center;
  position:relative;
  overflow:hidden;
  transition:
    transform .35s cubic-bezier(.2,.8,.2,1),
    background-color .35s ease,
    color .35s ease,
    box-shadow .35s ease;
  will-change:transform;
}
.social-icon svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  vector-effect:non-scaling-stroke;
  transition:transform .35s cubic-bezier(.2,.8,.2,1);
}
.social-icon.social-tiktok svg{
  fill:currentColor;
  stroke:none;
}
.social-icon::before{
  content:"";
  position:absolute;
  inset:-35%;
  border-radius:50%;
  background:
    conic-gradient(
      from 210deg,
      rgba(142,220,255,.75),
      rgba(218,187,255,.72),
      rgba(255,182,220,.72),
      rgba(255,216,144,.72),
      rgba(168,240,229,.72),
      rgba(142,220,255,.75)
    );
  opacity:0;
  transform:scale(.35) rotate(-30deg);
  transition:opacity .35s ease, transform .45s cubic-bezier(.2,.8,.2,1);
  z-index:-1;
}
.social-icon:hover,
.social-icon:focus-visible{
  transform:translateY(-4px) scale(1.06);
  color:#0a0a0a;
  background:rgba(255,255,255,.85);
  box-shadow:0 10px 28px rgba(0,0,0,.12);
}
.social-icon:hover::before,
.social-icon:focus-visible::before{
  opacity:.55;
  transform:scale(1.15) rotate(20deg);
}
.social-icon:hover svg,
.social-icon:focus-visible svg{
  transform:rotate(-7deg) scale(1.08);
}
.social-icon.is-clicking{
  animation:socialPop .42s cubic-bezier(.2,.9,.25,1);
}
@keyframes socialPop{
  0%{transform:scale(1)}
  42%{transform:scale(.84) rotate(-7deg)}
  72%{transform:scale(1.14) rotate(5deg)}
  100%{transform:scale(1)}
}

.brand-social-block{
  display:flex;
  flex-direction:column;
  gap:.7rem;
  align-items:flex-end;
  margin-top:1.2rem;
}
.brand-social-label{
  font-family:var(--display);
  font-size:.65rem;
  letter-spacing:.14em;
  color:var(--muted);
}
.case-page .brand-social-block .social-icon{
  color:var(--ink);
}
footer .social-links{
  justify-content:center;
  margin-top:.85rem;
}
footer .social-icon{
  width:38px;
  height:38px;
  color:#d8d8d8;
  border-color:#3a3a3a;
}
footer .social-icon:hover,
footer .social-icon:focus-visible{
  color:#0a0a0a;
  border-color:transparent;
}

@media(max-width:900px){
  .brand-social-block{align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){
  .social-icon,
  .social-icon svg,
  .social-icon::before{
    transition:none!important;
    animation:none!important;
  }
}


/* MENU ANIMADO + DROPDOWN TRABAJO */
.header-nav{align-items:center}
.nav-item{position:relative}
.nav-work-toggle{font-family:var(--display);font-size:.78rem;letter-spacing:.09em;color:inherit;cursor:pointer;display:inline-flex;gap:.4rem;align-items:center}
.nav-chevron{transition:transform .3s ease}
.nav-item-work.is-open .nav-chevron{transform:rotate(180deg)}
.header-nav .nav-link,.nav-work-toggle{position:relative}
.header-nav .nav-link:after,.nav-work-toggle:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.header-nav .nav-link:hover:after,.nav-work-toggle:hover:after{transform:scaleX(1);transform-origin:left}
.work-dropdown{position:absolute;top:calc(100% + 18px);left:50%;width:min(390px,82vw);transform:translate(-50%,-8px);opacity:0;visibility:hidden;pointer-events:none;background:rgba(246,244,240,.97);backdrop-filter:blur(18px);border:1px solid rgba(10,10,10,.10);box-shadow:0 24px 65px rgba(0,0,0,.12);padding:.55rem;z-index:90;transition:opacity .25s ease,transform .35s cubic-bezier(.2,.8,.2,1),visibility .25s ease}
.nav-item-work.is-open .work-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.work-dropdown-link{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1rem 1.05rem;align-items:start;border-bottom:1px solid rgba(10,10,10,.08);transition:background .25s ease,transform .3s ease}
.work-dropdown-link:last-child{border-bottom:0}
.work-dropdown-link:hover{background:rgba(255,255,255,.72);transform:translateX(4px)}
.work-dropdown-number{font-family:var(--display);font-size:.67rem;letter-spacing:.1em;color:var(--muted)}
.work-dropdown-link strong{display:block;font-family:var(--display);font-size:.9rem;letter-spacing:.04em}
.work-dropdown-link small{display:block;margin-top:.35rem;color:var(--muted);font-family:var(--serif);font-size:.9rem}
.header-nav>*{opacity:0;animation:navItemIn .55s both cubic-bezier(.2,.8,.2,1)}
.header-nav>*:nth-child(1){animation-delay:.08s}.header-nav>*:nth-child(2){animation-delay:.14s}.header-nav>*:nth-child(3){animation-delay:.20s}.header-nav>*:nth-child(4){animation-delay:.26s}
@keyframes navItemIn{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
@media(max-width:900px){
  .nav-item-work{width:100%}.nav-work-toggle{font-size:1.25rem;width:100%;justify-content:space-between}
  .work-dropdown{position:static;width:100%;transform:none!important;opacity:1;visibility:visible;pointer-events:auto;max-height:0;overflow:hidden;border:0;padding:0;box-shadow:none;background:transparent;backdrop-filter:none;transition:max-height .4s ease,margin-top .25s ease}
  .nav-item-work.is-open .work-dropdown{max-height:240px;margin-top:1rem}
  .work-dropdown-link{padding:.9rem 0}
}


/* ================= CONTACT SHOWCASE ================= */
.contact-showcase{
  position:relative;
  margin:5rem auto 0;
  width:min(92vw, 1320px);
  min-height:78vh;
  padding:clamp(2rem,4vw,3.5rem);
  border:1px solid rgba(10,10,10,.08);
  overflow:hidden;
  background:
    linear-gradient(135deg, rgba(255,255,255,.82), rgba(255,255,255,.68)),
    radial-gradient(circle at 15% 20%, rgba(221,236,255,.45), transparent 34%),
    radial-gradient(circle at 84% 78%, rgba(255,225,240,.42), transparent 30%),
    linear-gradient(180deg, #f7f4ef 0%, #f3efe8 100%);
  box-shadow:0 32px 80px rgba(0,0,0,.08);
  isolation:isolate;
  --cursorX:50%;
  --cursorY:45%;
}
.contact-showcase::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at var(--cursorX) var(--cursorY), rgba(255,255,255,.85), rgba(255,255,255,0) 24%),
    radial-gradient(circle at calc(var(--cursorX) + 4%) calc(var(--cursorY) - 2%), rgba(208,255,241,.24), rgba(208,255,241,0) 16%),
    radial-gradient(circle at calc(var(--cursorX) - 3%) calc(var(--cursorY) + 3%), rgba(244,211,255,.24), rgba(244,211,255,0) 18%);
  mix-blend-mode:screen;
  pointer-events:none;
  z-index:0;
}
.contact-showcase__glow{
  position:absolute;
  inset:-12%;
  background:
    radial-gradient(circle at 25% 28%, rgba(202,239,255,.24), transparent 28%),
    radial-gradient(circle at 78% 70%, rgba(255,225,243,.22), transparent 24%),
    radial-gradient(circle at 54% 46%, rgba(215,255,239,.16), transparent 26%);
  filter:blur(20px);
  pointer-events:none;
  z-index:0;
}
.contact-showcase__svg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:0;
  opacity:.78;
  pointer-events:none;
}
.contact-showcase__inner{
  position:relative;
  z-index:1;
  max-width:760px;
  min-height:calc(78vh - 7rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.contact-showcase__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.8rem;
  font-family:var(--display);
  font-size:.78rem;
  letter-spacing:.14em;
  color:var(--muted);
  margin-bottom:1.4rem;
}
.contact-showcase__eyebrow::before{
  content:"";
  width:52px;
  height:1px;
  background:linear-gradient(90deg, rgba(255,214,135,.9), rgba(208,255,241,.7));
}
.contact-showcase__title{
  font-family:var(--display);
  font-size:clamp(2.5rem, 7vw, 5.4rem);
  line-height:.96;
  letter-spacing:-.03em;
  max-width:10ch;
  margin:0;
}
.contact-showcase__copy{
  max-width:620px;
  margin:1.4rem 0 0;
  font-size:clamp(1rem,1.35vw,1.2rem);
  line-height:1.6;
  color:var(--muted);
}
.contact-showcase__actions{
  display:flex;
  flex-wrap:wrap;
  gap:1rem 1.1rem;
  margin-top:2.2rem;
}
.contact-cta{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:.9rem;
  padding:1.05rem 1.35rem;
  border:1px solid rgba(10,10,10,.1);
  background:rgba(255,255,255,.55);
  backdrop-filter:blur(12px);
  color:var(--ink);
  font-family:var(--display);
  font-size:.95rem;
  letter-spacing:.08em;
  transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, background .35s ease;
  overflow:hidden;
}
.contact-cta::before{
  content:"";
  position:absolute;
  left:1.35rem;
  bottom:.9rem;
  width:calc(100% - 2.7rem);
  height:1px;
  background:linear-gradient(90deg, rgba(255,223,161,.85), rgba(214,255,243,.95), rgba(232,207,255,.85));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .35s cubic-bezier(.2,.8,.2,1);
}
.contact-cta:hover,
.contact-cta:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 18px 40px rgba(0,0,0,.10);
  background:rgba(255,255,255,.75);
}
.contact-cta:hover::before,
.contact-cta:focus-visible::before{
  transform:scaleX(1);
}
.contact-cta:hover span:first-child,
.contact-cta:focus-visible span:first-child{
  transform:translateX(4px);
}
.contact-cta span:first-child{
  transition:transform .35s cubic-bezier(.2,.8,.2,1);
}
.contact-cta__arrow{
  display:inline-block;
  transition:transform .35s cubic-bezier(.2,.8,.2,1);
}
.contact-cta:hover .contact-cta__arrow,
.contact-cta:focus-visible .contact-cta__arrow{
  transform:translateX(4px);
}
.contact-cta--primary{
  background:linear-gradient(135deg, rgba(255,247,230,.9), rgba(255,255,255,.7));
}
.contact-cta--secondary{
  background:rgba(255,255,255,.45);
}
.contact-showcase__social{
  display:flex;
  align-items:center;
  gap:.9rem;
  margin-top:2rem;
}
.contact-showcase__social .social-icon{
  width:54px;
  height:54px;
  border-radius:50%;
  border:1px solid rgba(10,10,10,.1);
  background:rgba(255,255,255,.56);
  box-shadow:0 8px 22px rgba(0,0,0,.05);
}
.contact-showcase__social .social-icon:hover{
  transform:translateY(-2px) scale(1.04);
}

@media (max-width: 900px){
  .contact-showcase{
    min-height:auto;
    padding:1.5rem;
    margin-top:4rem;
  }
  .contact-showcase__inner{
    min-height:auto;
    padding-top:4.8rem;
    padding-bottom:2rem;
  }
  .contact-showcase__title{
    max-width:unset;
  }
}

@media (prefers-reduced-motion: reduce){
  .contact-cta,
  .contact-cta::before,
  .contact-cta__arrow,
  .contact-cta span:first-child{
    transition:none!important;
  }
}


/* ================================================================
   FIX MENU — CLICKABLE WORK + RELIABLE DROPDOWN
   ================================================================ */
.nav-item-work{position:relative}
.nav-work-row{display:flex;align-items:center;gap:.28rem}
.nav-work-main{display:inline-flex!important;align-items:center}
.nav-work-toggle{
  width:22px;height:22px;display:grid;place-items:center;
  cursor:pointer;color:var(--ink);font-family:var(--display);font-size:.9rem;
  border-radius:50%;transition:background .25s ease,transform .25s ease
}
.nav-work-toggle:hover{background:rgba(10,10,10,.06)}
.nav-chevron{display:block;line-height:1;transition:transform .3s var(--ease)}
.nav-item-work.is-open .nav-chevron{transform:rotate(180deg)}

.work-dropdown{
  position:absolute;
  top:100%;
  left:50%;
  width:min(390px,82vw);
  padding-top:14px;
  transform:translate(-50%,-6px);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .24s ease,transform .32s var(--ease),visibility .24s ease;
  z-index:200;
}
.work-dropdown::before{
  content:"";position:absolute;left:0;right:0;top:0;height:18px;
}
.work-dropdown::after{
  content:"";position:absolute;inset:14px 0 0;
  background:rgba(246,244,240,.98);
  backdrop-filter:blur(18px);
  border:1px solid rgba(10,10,10,.10);
  box-shadow:0 24px 65px rgba(0,0,0,.13);
  z-index:-1;
}
.nav-item-work.is-open .work-dropdown{
  opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)
}
.work-dropdown-link{
  position:relative;z-index:2;
  display:grid;grid-template-columns:auto 1fr;gap:1rem;
  padding:1rem 1.05rem;color:var(--ink);
  border-bottom:1px solid rgba(10,10,10,.08);
  transition:background .25s ease,transform .3s var(--ease)
}
.work-dropdown-link:last-child{border-bottom:0}
.work-dropdown-link:hover,.work-dropdown-link:focus-visible{
  background:rgba(255,255,255,.72);transform:translateX(4px)
}
.work-dropdown-number{font-family:var(--display);font-size:.67rem;letter-spacing:.1em;color:var(--muted)}
.work-dropdown-link strong{display:block;font-family:var(--display);font-size:.9rem;letter-spacing:.04em}
.work-dropdown-link small{display:block;margin-top:.35rem;color:var(--muted);font-family:var(--serif);font-size:.9rem}

@media(max-width:900px){
  .nav-work-row{width:100%;justify-content:space-between}
  .nav-work-main{font-size:1.25rem!important}
  .nav-work-toggle{width:34px;height:34px}
  .work-dropdown{
    position:static;width:100%;padding-top:0;transform:none!important;
    opacity:1;visibility:visible;pointer-events:auto;
    max-height:0;overflow:hidden;transition:max-height .42s var(--ease),margin-top .25s ease
  }
  .work-dropdown::before,.work-dropdown::after{display:none}
  .nav-item-work.is-open .work-dropdown{max-height:260px;margin-top:.8rem}
  .work-dropdown-link{padding:.9rem 0}
}

/* ================================================================
   CONTACT — ACTUAL PREMIUM SECTION
   ================================================================ */
.contact-premium{
  --mx:58%;--my:38%;
  position:relative;min-height:92svh;overflow:hidden;
  padding:clamp(6rem,11vw,10rem) var(--gutter);
  display:flex;align-items:center;
  background:
    radial-gradient(circle at var(--mx) var(--my),rgba(255,255,255,.95) 0,rgba(255,255,255,.15) 18%,transparent 36%),
    radial-gradient(circle at 14% 18%,rgba(198,237,255,.35),transparent 28%),
    radial-gradient(circle at 86% 76%,rgba(255,215,239,.32),transparent 28%),
    linear-gradient(135deg,#f8f5ef 0%,#efede7 100%);
  border-top:1px solid var(--line)
}
.contact-premium__light{
  position:absolute;inset:-20%;pointer-events:none;
  background:
    radial-gradient(circle at 34% 38%,rgba(204,255,237,.22),transparent 22%),
    radial-gradient(circle at 68% 58%,rgba(238,211,255,.22),transparent 24%);
  filter:blur(35px)
}
.contact-premium__art{
  position:absolute;inset:0;width:100%;height:100%;pointer-events:none;
  opacity:.74;transform:scale(1.05)
}
.contact-line{stroke-dasharray:1;stroke-dashoffset:1;animation:contactDraw 2.1s .15s var(--ease) forwards}
.contact-line--thin{animation-delay:.35s}
@keyframes contactDraw{to{stroke-dashoffset:0}}
.contact-premium__content{position:relative;z-index:2;max-width:900px}
.contact-premium__eyebrow{
  font-family:var(--display);font-size:.72rem;letter-spacing:.16em;color:var(--muted)
}
.contact-premium h2{
  margin-top:1.1rem;font-family:var(--display);
  font-size:clamp(3.2rem,8.5vw,8rem);font-weight:900;line-height:.86;letter-spacing:-.06em
}
.contact-premium p{
  max-width:560px;margin-top:1.6rem;color:var(--muted);font-size:1.15rem;line-height:1.55
}
.contact-premium__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.4rem}
.contact-action{
  position:relative;display:flex;align-items:center;justify-content:space-between;gap:2rem;
  min-width:min(100%,260px);padding:1.05rem 1.2rem;
  border:1px solid rgba(10,10,10,.13);background:rgba(255,255,255,.43);
  backdrop-filter:blur(12px);font-family:var(--display);font-size:.82rem;letter-spacing:.09em;
  overflow:hidden;transition:transform .32s var(--ease),background .32s ease,box-shadow .32s ease
}
.contact-action::after{
  content:"";position:absolute;left:1.2rem;right:1.2rem;bottom:.7rem;height:1px;
  background:linear-gradient(90deg,#aeeeff,#f3c9ff,#ffe0a6,#bdffe9);
  transform:scaleX(0);transform-origin:left;transition:transform .36s var(--ease)
}
.contact-action:hover{
  transform:translateY(-3px);background:rgba(255,255,255,.72);box-shadow:0 18px 45px rgba(0,0,0,.08)
}
.contact-action:hover::after{transform:scaleX(1)}
.contact-action--primary{background:rgba(255,255,255,.70)}
.contact-premium__socials{display:flex;gap:.85rem;margin-top:2rem}
.contact-premium__socials .social-icon{
  width:50px;height:50px;color:var(--ink);background:rgba(255,255,255,.55);border-color:rgba(10,10,10,.14)
}

@media(max-width:650px){
  .contact-premium{min-height:80svh}
  .contact-premium__actions{display:grid}
  .contact-action{width:100%}
}


/* ================================================================
   HOMEPAGE INTRO REVEAL — MŌRE STUDIO
   ================================================================ */
.home-with-intro{
  overflow:hidden;
}
.home-with-intro.intro-complete{
  overflow:auto;
}
.home-with-intro .site-header,
.home-with-intro main,
.home-with-intro footer{
  opacity:0;
  transform:translateY(18px) scale(.995);
  transition:opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1);
}
.home-with-intro.intro-complete .site-header,
.home-with-intro.intro-complete main,
.home-with-intro.intro-complete footer{
  opacity:1;
  transform:none;
}

.intro-reveal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#f7f3ee;
  transition:opacity .8s cubic-bezier(.2,.8,.2,1), visibility .8s ease, transform .8s cubic-bezier(.2,.8,.2,1);
}
.intro-reveal.is-leaving{
  opacity:0;
  visibility:hidden;
  transform:scale(1.02);
}
.intro-reveal__bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 22% 28%, rgba(216,236,255,.68), transparent 22%),
    radial-gradient(circle at 78% 67%, rgba(255,217,235,.54), transparent 18%),
    radial-gradient(circle at 54% 46%, rgba(205,255,240,.42), transparent 18%),
    linear-gradient(180deg, #faf7f2 0%, #f3efe8 100%);
  animation:introBgBreath 4s ease-in-out infinite alternate;
}
.intro-reveal__halo{
  position:absolute;
  border-radius:50%;
  filter:blur(34px);
  opacity:.42;
  mix-blend-mode:screen;
}
.intro-reveal__halo--a{
  width:40vw;height:40vw;min-width:320px;min-height:320px;
  background:radial-gradient(circle, rgba(233,202,255,.52) 0%, rgba(233,202,255,0) 62%);
  top:-8%;right:-8%;
  animation:introFloatA 6s ease-in-out infinite;
}
.intro-reveal__halo--b{
  width:34vw;height:34vw;min-width:280px;min-height:280px;
  background:radial-gradient(circle, rgba(185,255,238,.46) 0%, rgba(185,255,238,0) 62%);
  bottom:-10%;left:-8%;
  animation:introFloatB 6.2s ease-in-out infinite;
}

.intro-reveal__center{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.8rem;
}
.intro-wordmark{
  display:flex;
  align-items:flex-end;
  font-family:var(--display);
  font-size:clamp(4.4rem, 14vw, 10rem);
  font-weight:900;
  line-height:.84;
  letter-spacing:-.08em;
  color:#0e0e0e;
}
.intro-wordmark__m,
.intro-wordmark__ore{
  display:inline-block;
  transform:translateY(110%);
  opacity:0;
  animation:introLetterIn .9s cubic-bezier(.18,.9,.18,1) forwards;
}
.intro-wordmark__m{animation-delay:.18s}
.intro-wordmark__ore{animation-delay:.34s}
.intro-wordmark__ore-wrap{
  position:relative;
  display:inline-flex;
  align-items:flex-end;
}
.intro-macron-wrap{
  position:absolute;
  left:14%;
  right:57%;
  top:-.65em;
  height:.18em;
  display:block;
  overflow:visible;
}
.intro-macron{
  position:absolute;
  left:0;right:0;top:0;bottom:0;
  border-radius:999px;
  background:linear-gradient(90deg,#d1f2ff 0%,#f5cfff 25%,#ffe4ad 50%,#cbffed 75%,#dce5ff 100%);
  box-shadow:0 0 12px rgba(255,255,255,.72), 0 0 28px rgba(212,255,241,.38);
  transform-origin:left center;
  transform:scaleX(0);
  animation:introMacronGrow .85s .56s cubic-bezier(.18,.9,.18,1) forwards, introMacronShimmer 2.6s 1.4s linear infinite;
}
.intro-macron::before{
  content:"";
  position:absolute;
  inset:-220% auto -220% -7%;
  width:34%;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,.1), rgba(255,255,255,.92), rgba(255,255,255,.1));
  filter:blur(2px);
  transform:translateX(-180%) skewX(-18deg);
  animation:introMacronSweep .9s 1.05s cubic-bezier(.2,.8,.2,1) forwards;
}
.intro-studio{
  font-family:var(--display);
  font-size:clamp(.78rem, 1.4vw, 1rem);
  letter-spacing:.48em;
  color:rgba(10,10,10,.62);
  transform:translateY(10px);
  opacity:0;
  animation:introStudioIn .7s .92s cubic-bezier(.2,.8,.2,1) forwards;
}
.intro-sweep{
  position:absolute;
  left:8%;
  right:8%;
  top:50%;
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,240,205,.95), rgba(206,255,239,.95), rgba(241,210,255,.95), rgba(255,255,255,0));
  opacity:0;
  transform:translateY(-50%) scaleX(.12);
  filter:blur(.2px);
  animation:introSweep 1.25s 1.1s cubic-bezier(.2,.8,.2,1) forwards;
}

@keyframes introLetterIn{
  from{transform:translateY(110%);opacity:0}
  to{transform:none;opacity:1}
}
@keyframes introMacronGrow{
  from{transform:scaleX(0);opacity:.25}
  to{transform:scaleX(1);opacity:1}
}
@keyframes introMacronSweep{
  to{transform:translateX(340%) skewX(-18deg)}
}
@keyframes introStudioIn{
  to{transform:none;opacity:1}
}
@keyframes introSweep{
  0%{opacity:0;transform:translateY(-50%) scaleX(.12)}
  26%{opacity:.75}
  65%{opacity:1;transform:translateY(-50%) scaleX(1)}
  100%{opacity:0;transform:translateY(-50%) scaleX(1.06)}
}
@keyframes introBgBreath{
  from{transform:scale(1)}
  to{transform:scale(1.03)}
}
@keyframes introFloatA{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(-18px,14px,0)}
}
@keyframes introFloatB{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(16px,-18px,0)}
}
@keyframes introMacronShimmer{
  0%{filter:hue-rotate(0deg)}
  100%{filter:hue-rotate(18deg)}
}

@media (max-width: 700px){
  .intro-wordmark{
    font-size:clamp(3.6rem, 19vw, 5.4rem);
  }
  .intro-macron-wrap{
    top:-.58em;
    left:14%;
    right:58%;
  }
  .intro-studio{
    letter-spacing:.32em;
  }
}
@media (prefers-reduced-motion: reduce){
  .home-with-intro{overflow:auto}
  .home-with-intro .site-header,
  .home-with-intro main,
  .home-with-intro footer{
    opacity:1!important;transform:none!important;transition:none!important
  }
  .intro-reveal{display:none}
}


/* ================================================================
   HOMEPAGE INTRO REVEAL — LUXURY OVERRIDE V2
   ================================================================ */
.home-with-intro{
  overflow:hidden;
}
.home-with-intro.intro-complete{
  overflow:auto;
}
.home-with-intro .site-header,
.home-with-intro main,
.home-with-intro footer{
  opacity:0;
  transform:translateY(24px);
  transition:opacity 1s cubic-bezier(.2,.8,.2,1), transform 1s cubic-bezier(.2,.8,.2,1);
}
.home-with-intro.intro-complete .site-header,
.home-with-intro.intro-complete main,
.home-with-intro.intro-complete footer{
  opacity:1;
  transform:none;
}

.intro-reveal{
  background:linear-gradient(180deg,#fbf8f3 0%,#f1ede6 100%);
}
.intro-reveal::before,
.intro-reveal::after{
  content:"";
  position:absolute;
  left:0; right:0;
  height:50.5%;
  background:
    linear-gradient(180deg, rgba(255,255,255,.38), rgba(255,255,255,.06)),
    linear-gradient(180deg,#fbf8f3 0%,#f3eee6 100%);
  z-index:3;
  transform:translateY(0);
  pointer-events:none;
}
.intro-reveal::before{
  top:0;
  border-bottom:1px solid rgba(10,10,10,.05);
}
.intro-reveal::after{
  bottom:0;
  border-top:1px solid rgba(10,10,10,.05);
}
.intro-reveal.is-leaving::before{
  animation:introCurtainTop 1.05s cubic-bezier(.18,.9,.18,1) forwards;
}
.intro-reveal.is-leaving::after{
  animation:introCurtainBottom 1.05s cubic-bezier(.18,.9,.18,1) forwards;
}

.intro-reveal__bg{
  background:
    radial-gradient(circle at 18% 22%, rgba(213,232,255,.42), transparent 23%),
    radial-gradient(circle at 81% 70%, rgba(255,224,236,.38), transparent 19%),
    radial-gradient(circle at 56% 44%, rgba(221,255,244,.26), transparent 17%),
    linear-gradient(180deg,#fbf8f3 0%,#f1ede6 100%);
  animation:introBgLuxury 7s ease-in-out infinite alternate;
}
.intro-reveal__halo{
  filter:blur(48px);
  opacity:.22;
}
.intro-reveal__halo--a{
  background:radial-gradient(circle, rgba(236,213,255,.38) 0%, rgba(236,213,255,0) 62%);
}
.intro-reveal__halo--b{
  background:radial-gradient(circle, rgba(198,255,238,.34) 0%, rgba(198,255,238,0) 62%);
}

.intro-reveal__center{
  gap:1.15rem;
  transform:translateY(-1vh);
  z-index:4;
}
.intro-wordmark{
  display:flex;
  align-items:flex-end;
  font-family:var(--display);
  font-size:clamp(4.8rem, 13vw, 10.5rem);
  font-weight:900;
  line-height:.84;
  letter-spacing:-.082em;
  color:#0b0b0b;
  text-shadow:0 10px 30px rgba(255,255,255,.22);
}
.intro-wordmark__m,
.intro-wordmark__ore{
  transform:translateY(0);
  opacity:0;
  clip-path:inset(100% 0 0 0);
  animation:introLuxuryTextIn 1.18s cubic-bezier(.16,.9,.18,1) forwards;
}
.intro-wordmark__m{animation-delay:.18s}
.intro-wordmark__ore{animation-delay:.38s}

.intro-macron-wrap{
  position:absolute;
  top:-.62em;
  left:14%;
  right:57.2%;
  height:.15em;
}
.intro-wordmark__ore-wrap{
  position:relative;
  display:inline-flex;
  align-items:flex-end;
}
.intro-macron{
  position:absolute;
  left:0; right:0; top:0; bottom:0;
  border-radius:999px;
  background:
    linear-gradient(90deg,
      #f4e4b8 0%,
      #dfeaff 22%,
      #f6dafb 46%,
      #d4fff2 70%,
      #f4e4b8 100%);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.42),
    0 6px 22px rgba(255,255,255,.44),
    0 0 28px rgba(223,244,255,.24);
  transform:scaleX(0);
  animation:
    introMacronGrowLuxury .92s .9s cubic-bezier(.18,.9,.18,1) forwards,
    introMacronSweepLuxury 2.8s 1.9s linear infinite;
}
.intro-macron::after{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:999px;
  background:radial-gradient(circle at 50% 50%, rgba(255,255,255,.4), transparent 70%);
  filter:blur(10px);
  opacity:.5;
}
.intro-macron::before{
  content:"";
  position:absolute;
  inset:-240% auto -240% -10%;
  width:28%;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.95), rgba(255,255,255,0));
  filter:blur(2px);
  transform:translateX(-220%) skewX(-18deg);
  animation:introMacronFlash 1s 1.15s cubic-bezier(.2,.8,.2,1) forwards;
}

.intro-studio{
  font-family:var(--display);
  font-size:clamp(.72rem, 1vw, .92rem);
  letter-spacing:.62em;
  color:rgba(10,10,10,.46);
  position:relative;
  padding-top:1.1rem;
  transform:none;
  opacity:0;
  animation:introStudioLuxury 1s .85s cubic-bezier(.2,.8,.2,1) forwards;
}
.intro-studio::before{
  content:"";
  position:absolute;
  top:0; left:50%;
  width:74px; height:1px;
  background:linear-gradient(90deg, rgba(0,0,0,0), rgba(150,150,150,.5), rgba(0,0,0,0));
  transform:translateX(-50%) scaleX(.3);
  opacity:.5;
  animation:introStudioLine 1s 1.1s cubic-bezier(.2,.8,.2,1) forwards;
}

.intro-sweep{
  position:absolute;
  left:18%;
  right:18%;
  top:auto;
  bottom:26%;
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(249,228,188,.95), rgba(231,212,255,.92), rgba(202,255,238,.92), rgba(255,255,255,0));
  transform:scaleX(.12);
  opacity:0;
  filter:blur(.2px);
  animation:introSweepLuxury 1.5s 1.3s cubic-bezier(.2,.8,.2,1) forwards;
}

@keyframes introLuxuryTextIn{
  0%{opacity:0; clip-path:inset(100% 0 0 0); transform:translateY(18px)}
  100%{opacity:1; clip-path:inset(0 0 0 0); transform:none}
}
@keyframes introMacronGrowLuxury{
  0%{transform:scaleX(0); opacity:.18}
  100%{transform:scaleX(1); opacity:1}
}
@keyframes introMacronFlash{
  to{transform:translateX(360%) skewX(-18deg)}
}
@keyframes introMacronSweepLuxury{
  0%{filter:hue-rotate(0deg) saturate(1)}
  50%{filter:hue-rotate(12deg) saturate(1.03)}
  100%{filter:hue-rotate(0deg) saturate(1)}
}
@keyframes introStudioLuxury{
  0%{opacity:0; letter-spacing:.9em}
  100%{opacity:1; letter-spacing:.62em}
}
@keyframes introStudioLine{
  100%{transform:translateX(-50%) scaleX(1)}
}
@keyframes introSweepLuxury{
  0%{opacity:0; transform:scaleX(.1)}
  24%{opacity:.45}
  65%{opacity:.92; transform:scaleX(1)}
  100%{opacity:0; transform:scaleX(1.02)}
}
@keyframes introBgLuxury{
  from{transform:scale(1)}
  to{transform:scale(1.025)}
}
@keyframes introCurtainTop{
  from{transform:translateY(0)}
  to{transform:translateY(-110%)}
}
@keyframes introCurtainBottom{
  from{transform:translateY(0)}
  to{transform:translateY(110%)}
}

@media (max-width:700px){
  .intro-wordmark{
    font-size:clamp(3.8rem,18vw,5.8rem);
  }
  .intro-macron-wrap{
    top:-.58em;
    right:58%;
  }
  .intro-sweep{
    left:12%; right:12%; bottom:24%;
  }
  .intro-studio{
    letter-spacing:.38em;
  }
}


/* ================================================================
   HOMEPAGE INTRO REVEAL — IMPACT / FASCINATION V3
   ================================================================ */
.intro-reveal{
  background:
    radial-gradient(circle at 50% 40%, rgba(23,31,52,.72), rgba(4,5,10,0) 32%),
    linear-gradient(180deg, #04050a 0%, #070a12 58%, #0b0e17 100%) !important;
  color:#fff;
}
.intro-reveal::before{
  content:"";
  position:absolute; inset:-10%;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.08), rgba(255,255,255,0) 18%),
    radial-gradient(circle at 22% 25%, rgba(108,235,255,.10), transparent 18%),
    radial-gradient(circle at 82% 68%, rgba(255,145,227,.10), transparent 18%);
  filter:blur(30px);
  animation:introNebulaPulse 4.5s ease-in-out infinite alternate;
  z-index:0;
}
.intro-reveal::after{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 24%),
    repeating-linear-gradient(180deg, rgba(255,255,255,.025) 0 1px, rgba(255,255,255,0) 1px 4px);
  opacity:.12;
  mix-blend-mode:screen;
  pointer-events:none;
  z-index:1;
}

.intro-reveal__bg{
  background:
    radial-gradient(circle at 50% 46%, rgba(255,255,255,.06), rgba(255,255,255,0) 20%),
    radial-gradient(circle at 50% 46%, rgba(104,226,255,.16), rgba(104,226,255,0) 36%),
    radial-gradient(circle at 50% 46%, rgba(255,180,232,.10), rgba(255,180,232,0) 40%);
  animation:introCorePulse 3.2s ease-in-out infinite alternate;
}
.intro-reveal__halo{
  opacity:.5;
  filter:blur(54px);
}
.intro-reveal__halo--a{
  width:42vw;height:42vw;min-width:340px;min-height:340px;
  background:radial-gradient(circle, rgba(99,232,255,.36) 0%, rgba(99,232,255,0) 60%);
  top:8%;left:50%;transform:translateX(-50%);
  animation:introFloatCore 5.5s ease-in-out infinite;
}
.intro-reveal__halo--b{
  width:52vw;height:52vw;min-width:420px;min-height:420px;
  background:radial-gradient(circle, rgba(255,159,228,.22) 0%, rgba(255,159,228,0) 62%);
  bottom:-12%;right:-10%;
  animation:introFloatSide 6.5s ease-in-out infinite;
}

.intro-reveal__center{
  position:relative;
  z-index:3;
  gap:.75rem;
}
.intro-reveal__center::before{
  content:"";
  position:absolute;
  width:min(48vw,560px);height:min(48vw,560px);
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    0 0 0 18px rgba(255,255,255,.02),
    0 0 90px rgba(105,232,255,.16),
    inset 0 0 70px rgba(255,255,255,.03);
  animation:introRingExpand 2.4s cubic-bezier(.18,.9,.18,1) .15s both;
}
.intro-reveal__center::after{
  content:"";
  position:absolute; inset:50% auto auto 50%;
  width:7px;height:7px;border-radius:50%;
  background:#fff;
  box-shadow:0 0 26px rgba(255,255,255,.9), 0 0 56px rgba(112,231,255,.56);
  transform:translate(-50%,-50%);
  animation:introCoreSpark .95s .15s both, introCoreBlink 2.2s 1.2s infinite;
}
.intro-wordmark{
  position:relative;
  display:flex;
  align-items:flex-end;
  font-family:var(--display);
  font-size:clamp(5rem, 15vw, 11rem);
  font-weight:900;
  line-height:.82;
  letter-spacing:-.085em;
  color:rgba(255,255,255,.12);
  text-shadow:0 0 40px rgba(255,255,255,.06);
}
.intro-wordmark__m,
.intro-wordmark__ore{
  position:relative;
  opacity:0;
  transform:scale(.82) translateY(18px);
  animation:introImpactTextIn 1s cubic-bezier(.16,.9,.18,1) forwards;
  background:linear-gradient(90deg, #ffffff 0%, #d7ebff 22%, #ffd7f4 46%, #c7fff0 70%, #fff1c7 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 0 22px rgba(126,226,255,.22));
}
.intro-wordmark__m{animation-delay:.25s}
.intro-wordmark__ore{animation-delay:.42s}

.intro-wordmark__m::after,
.intro-wordmark__ore::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(100deg, transparent 0%, rgba(255,255,255,.9) 48%, transparent 56%);
  transform:translateX(-155%) skewX(-18deg);
  mix-blend-mode:screen;
  opacity:.45;
  animation:introTextShine 1.25s cubic-bezier(.2,.8,.2,1) 1.1s forwards;
}

.intro-macron-wrap{
  position:absolute;
  top:-.63em;
  left:14%;
  right:57.2%;
  height:.16em;
}
.intro-wordmark__ore-wrap{
  position:relative;
  display:inline-flex;
  align-items:flex-end;
}
.intro-macron{
  position:absolute;
  left:0; right:0; top:0; bottom:0;
  border-radius:999px;
  background:
    linear-gradient(90deg,#79e7ff 0%,#ffe0f5 26%,#fff0bb 52%,#bbfff0 78%,#79e7ff 100%);
  box-shadow:
    0 0 12px rgba(255,255,255,.6),
    0 0 28px rgba(121,231,255,.72),
    0 0 60px rgba(255,168,226,.34);
  transform-origin:left center;
  transform:scaleX(0);
  animation:introMacronBeam .9s .8s cubic-bezier(.18,.9,.18,1) forwards,
            introMacronFlow 1.6s 1.25s linear infinite;
}
.intro-macron::before{
  content:"";
  position:absolute; inset:-250% auto -250% -10%;
  width:24%;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,1), rgba(255,255,255,0));
  filter:blur(2px);
  transform:translateX(-220%) skewX(-16deg);
  animation:introMacronFlashImpact .95s 1s cubic-bezier(.2,.8,.2,1) forwards;
}
.intro-studio{
  font-family:var(--display);
  font-size:clamp(.8rem, 1.3vw, 1rem);
  letter-spacing:.56em;
  color:rgba(255,255,255,.64);
  opacity:0;
  transform:translateY(10px);
  animation:introStudioImpact .8s .95s cubic-bezier(.2,.8,.2,1) forwards;
}
.intro-sweep{
  position:absolute;
  left:12%;
  right:12%;
  top:50%;
  height:2px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(121,231,255,.98), rgba(255,223,243,.96), rgba(255,240,187,.96), rgba(255,255,255,0));
  transform:translateY(-50%) scaleX(.12);
  opacity:0;
  filter:blur(.4px);
  animation:introSweepImpact 1.2s 1.2s cubic-bezier(.2,.8,.2,1) forwards;
}
.intro-reveal.is-leaving{
  animation:introImpactExit .95s cubic-bezier(.18,.9,.18,1) forwards;
}
.intro-reveal.is-leaving .intro-wordmark{
  animation:introWordmarkBlast .9s cubic-bezier(.18,.9,.18,1) forwards;
}
.intro-reveal.is-leaving .intro-sweep{
  opacity:1;
  animation:introFinalFlash .7s cubic-bezier(.2,.8,.2,1) forwards;
}

@keyframes introImpactTextIn{
  0%{opacity:0; transform:scale(.82) translateY(18px); filter:blur(6px)}
  65%{opacity:1; transform:scale(1.035) translateY(0); filter:blur(0)}
  100%{opacity:1; transform:scale(1) translateY(0); filter:blur(0)}
}
@keyframes introTextShine{
  to{transform:translateX(180%) skewX(-18deg)}
}
@keyframes introMacronBeam{
  0%{transform:scaleX(0); opacity:.1}
  100%{transform:scaleX(1); opacity:1}
}
@keyframes introMacronFlashImpact{
  to{transform:translateX(360%) skewX(-16deg)}
}
@keyframes introMacronFlow{
  0%{filter:hue-rotate(0deg)}
  100%{filter:hue-rotate(18deg)}
}
@keyframes introStudioImpact{
  to{opacity:1; transform:none}
}
@keyframes introSweepImpact{
  0%{opacity:0; transform:translateY(-50%) scaleX(.08)}
  25%{opacity:.8}
  70%{opacity:1; transform:translateY(-50%) scaleX(1)}
  100%{opacity:0; transform:translateY(-50%) scaleX(1.02)}
}
@keyframes introRingExpand{
  0%{transform:scale(.55); opacity:0}
  60%{transform:scale(1.02); opacity:1}
  100%{transform:scale(1); opacity:.95}
}
@keyframes introCoreSpark{
  0%{opacity:0; transform:translate(-50%,-50%) scale(.2)}
  100%{opacity:1; transform:translate(-50%,-50%) scale(1)}
}
@keyframes introCoreBlink{
  0%,100%{opacity:.35}
  50%{opacity:1}
}
@keyframes introNebulaPulse{
  from{transform:scale(1)}
  to{transform:scale(1.05)}
}
@keyframes introCorePulse{
  from{transform:scale(1)}
  to{transform:scale(1.06)}
}
@keyframes introFloatCore{
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(14px)}
}
@keyframes introFloatSide{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-12px)}
}
@keyframes introWordmarkBlast{
  0%{transform:scale(1); filter:blur(0)}
  100%{transform:scale(1.09); filter:blur(4px); opacity:0}
}
@keyframes introFinalFlash{
  0%{opacity:0; transform:translateY(-50%) scaleX(.6) scaleY(1)}
  60%{opacity:1; transform:translateY(-50%) scaleX(1.18) scaleY(8)}
  100%{opacity:0; transform:translateY(-50%) scaleX(1.22) scaleY(18)}
}
@keyframes introImpactExit{
  0%{opacity:1}
  55%{opacity:1}
  100%{opacity:0; visibility:hidden}
}

@media (max-width:700px){
  .intro-wordmark{font-size:clamp(3.9rem,18vw,6rem)}
  .intro-macron-wrap{top:-.58em; right:58%}
  .intro-studio{letter-spacing:.34em}
  .intro-reveal__center::before{width:min(70vw,360px);height:min(70vw,360px)}
}


/* ================================================================
   HOMEPAGE INTRO REVEAL — SUPER HOLOGRAPHIC V4
   ================================================================ */
.intro-reveal{
  background:
    radial-gradient(circle at 18% 20%, rgba(182,240,255,.95) 0%, rgba(182,240,255,0) 26%),
    radial-gradient(circle at 82% 26%, rgba(255,204,240,.92) 0%, rgba(255,204,240,0) 24%),
    radial-gradient(circle at 72% 78%, rgba(255,239,183,.90) 0%, rgba(255,239,183,0) 26%),
    radial-gradient(circle at 28% 76%, rgba(193,255,229,.92) 0%, rgba(193,255,229,0) 28%),
    linear-gradient(135deg,#eefbff 0%,#f9eaff 24%,#fff7dd 48%,#e9fff6 72%,#e7efff 100%) !important;
  color:#0a0a0a;
}
.intro-reveal::before{
  content:"";
  position:absolute; inset:-20%;
  background:
    conic-gradient(
      from 10deg at 50% 50%,
      rgba(150,233,255,.44),
      rgba(255,196,239,.44),
      rgba(255,235,173,.40),
      rgba(185,255,228,.42),
      rgba(193,205,255,.40),
      rgba(150,233,255,.44)
    );
  filter:blur(70px) saturate(1.2);
  animation:introHoloSpin 8s linear infinite;
  mix-blend-mode:screen;
  opacity:.86;
  z-index:0;
}
.intro-reveal::after{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(110deg, transparent 0%, rgba(255,255,255,.52) 42%, rgba(255,255,255,.06) 49%, transparent 58%),
    repeating-linear-gradient(145deg, rgba(255,255,255,.08) 0 1px, rgba(255,255,255,0) 1px 10px);
  background-size:180% 180%, auto;
  animation:introHoloSweepBG 3.8s ease-in-out infinite;
  mix-blend-mode:screen;
  opacity:.58;
  pointer-events:none;
  z-index:1;
}

.intro-reveal__bg{
  background:
    radial-gradient(circle at 50% 46%, rgba(255,255,255,.82), rgba(255,255,255,0) 20%),
    radial-gradient(circle at 50% 46%, rgba(171,240,255,.30), rgba(171,240,255,0) 40%),
    radial-gradient(circle at 50% 46%, rgba(255,202,238,.24), rgba(255,202,238,0) 46%);
  animation:introHoloPulse 2.8s ease-in-out infinite alternate;
}
.intro-reveal__halo{
  opacity:.78;
  filter:blur(44px);
  mix-blend-mode:screen;
}
.intro-reveal__halo--a{
  width:46vw;height:46vw;min-width:360px;min-height:360px;
  background:radial-gradient(circle, rgba(139,231,255,.72) 0%, rgba(139,231,255,0) 62%);
  top:-10%;left:4%;
  animation:introHoloFloatA 6.2s ease-in-out infinite;
}
.intro-reveal__halo--b{
  width:54vw;height:54vw;min-width:420px;min-height:420px;
  background:radial-gradient(circle, rgba(255,170,228,.62) 0%, rgba(255,170,228,0) 62%);
  bottom:-18%;right:-8%;
  animation:introHoloFloatB 6.8s ease-in-out infinite;
}

.intro-reveal__center{
  position:relative;
  z-index:4;
  gap:1rem;
}
.intro-reveal__center::before{
  content:"";
  position:absolute;
  width:min(50vw,620px);
  height:min(50vw,620px);
  border-radius:50%;
  border:1px solid rgba(255,255,255,.68);
  box-shadow:
    0 0 0 20px rgba(255,255,255,.10),
    0 0 90px rgba(180,235,255,.45),
    inset 0 0 90px rgba(255,255,255,.28);
  animation:introHoloRing 2.1s cubic-bezier(.18,.9,.18,1) .12s both;
}
.intro-reveal__center::after{
  content:"";
  position:absolute;
  inset:50% auto auto 50%;
  width:9px;height:9px;border-radius:50%;
  background:#fff;
  box-shadow:
    0 0 28px rgba(255,255,255,.95),
    0 0 54px rgba(145,229,255,.82),
    0 0 78px rgba(255,179,232,.55);
  transform:translate(-50%,-50%);
  animation:introHoloSpark .95s .15s both, introHoloBlink 1.7s 1.1s infinite;
}

.intro-wordmark{
  position:relative;
  display:flex;
  align-items:flex-end;
  font-family:var(--display);
  font-size:clamp(5.3rem, 16vw, 12rem);
  font-weight:900;
  line-height:.8;
  letter-spacing:-.09em;
  color:#111;
}
.intro-wordmark__m,
.intro-wordmark__ore{
  position:relative;
  opacity:0;
  transform:translateY(26px) scale(.88);
  animation:introHoloTextIn 1.05s cubic-bezier(.16,.9,.18,1) forwards;
  background:
    linear-gradient(
      100deg,
      #0a0a0a 0%,
      #1b1b1b 18%,
      #4d4d4d 34%,
      #0c0c0c 52%,
      #333 72%,
      #0a0a0a 100%
    );
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 8px 22px rgba(255,255,255,.48));
}
.intro-wordmark__m{animation-delay:.18s}
.intro-wordmark__ore{animation-delay:.36s}

.intro-wordmark__m::before,
.intro-wordmark__ore::before{
  content:"";
  position:absolute;
  inset:-10% -18%;
  background:linear-gradient(100deg, transparent 0%, rgba(255,255,255,.12) 35%, rgba(255,255,255,.95) 50%, rgba(255,255,255,.12) 62%, transparent 100%);
  transform:translateX(-160%) skewX(-15deg);
  mix-blend-mode:screen;
  animation:introHoloTextGlint 1.2s 1.15s cubic-bezier(.2,.8,.2,1) forwards;
}
.intro-wordmark__ore-wrap{
  position:relative;
  display:inline-flex;
  align-items:flex-end;
}
.intro-macron-wrap{
  position:absolute;
  top:-.63em;
  left:14%;
  right:57.2%;
  height:.18em;
}
.intro-macron{
  position:absolute;
  inset:0;
  border-radius:999px;
  background:
    linear-gradient(90deg,
      #78e9ff 0%,
      #f5c8ff 20%,
      #ffe7a8 42%,
      #bfffe9 63%,
      #cad5ff 82%,
      #78e9ff 100%);
  background-size:220% 100%;
  box-shadow:
    0 0 10px rgba(255,255,255,.88),
    0 0 28px rgba(137,230,255,.75),
    0 0 54px rgba(255,168,229,.55);
  transform-origin:left center;
  transform:scaleX(0);
  animation:
    introHoloBarIn .86s .74s cubic-bezier(.18,.9,.18,1) forwards,
    introHoloBarFlow 1.45s 1.25s linear infinite;
}
.intro-macron::before{
  content:"";
  position:absolute;
  inset:-260% auto -260% -14%;
  width:28%;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,1),rgba(255,255,255,0));
  filter:blur(2px);
  transform:translateX(-230%) skewX(-16deg);
  animation:introHoloBarFlash .9s 1.0s cubic-bezier(.2,.8,.2,1) forwards;
}

.intro-studio{
  font-family:var(--display);
  font-size:clamp(.82rem,1.25vw,1rem);
  letter-spacing:.58em;
  color:rgba(10,10,10,.66);
  opacity:0;
  transform:translateY(10px);
  animation:introHoloStudio .75s .95s cubic-bezier(.2,.8,.2,1) forwards;
}
.intro-sweep{
  position:absolute;
  left:8%;
  right:8%;
  top:50%;
  height:3px;
  background:linear-gradient(90deg,
    rgba(255,255,255,0),
    rgba(118,230,255,.98),
    rgba(252,200,255,.98),
    rgba(255,231,168,.98),
    rgba(190,255,232,.98),
    rgba(255,255,255,0));
  transform:translateY(-50%) scaleX(.08);
  opacity:0;
  filter:blur(.3px);
  animation:introHoloSweep 1.25s 1.1s cubic-bezier(.2,.8,.2,1) forwards;
}

.intro-reveal.is-leaving{
  animation:introHoloExit 1s cubic-bezier(.18,.9,.18,1) forwards;
}
.intro-reveal.is-leaving .intro-wordmark{
  animation:introHoloWordBlast .95s cubic-bezier(.18,.9,.18,1) forwards;
}
.intro-reveal.is-leaving .intro-sweep{
  opacity:1;
  animation:introHoloFinalFlash .72s cubic-bezier(.2,.8,.2,1) forwards;
}

@keyframes introHoloTextIn{
  0%{opacity:0;transform:translateY(26px) scale(.88);filter:blur(8px)}
  70%{opacity:1;transform:translateY(0) scale(1.03);filter:blur(0)}
  100%{opacity:1;transform:none;filter:blur(0)}
}
@keyframes introHoloTextGlint{
  to{transform:translateX(180%) skewX(-15deg)}
}
@keyframes introHoloBarIn{
  from{transform:scaleX(0);opacity:.2}
  to{transform:scaleX(1);opacity:1}
}
@keyframes introHoloBarFlow{
  0%{background-position:0% 50%}
  100%{background-position:220% 50%}
}
@keyframes introHoloBarFlash{
  to{transform:translateX(370%) skewX(-16deg)}
}
@keyframes introHoloStudio{
  to{opacity:1;transform:none}
}
@keyframes introHoloSweep{
  0%{opacity:0;transform:translateY(-50%) scaleX(.08)}
  24%{opacity:1}
  70%{opacity:1;transform:translateY(-50%) scaleX(1)}
  100%{opacity:0;transform:translateY(-50%) scaleX(1.04)}
}
@keyframes introHoloSpin{
  from{transform:rotate(0deg) scale(1.12)}
  to{transform:rotate(360deg) scale(1.12)}
}
@keyframes introHoloSweepBG{
  0%,100%{background-position:0% 0%,0 0}
  50%{background-position:100% 100%,0 0}
}
@keyframes introHoloPulse{
  from{transform:scale(1)}
  to{transform:scale(1.08)}
}
@keyframes introHoloFloatA{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(22px,18px,0)}
}
@keyframes introHoloFloatB{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(-20px,-18px,0)}
}
@keyframes introHoloRing{
  0%{opacity:0;transform:scale(.5)}
  65%{opacity:1;transform:scale(1.03)}
  100%{opacity:.86;transform:scale(1)}
}
@keyframes introHoloSpark{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.15)}
  100%{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
@keyframes introHoloBlink{
  0%,100%{opacity:.38}
  50%{opacity:1}
}
@keyframes introHoloWordBlast{
  0%{transform:scale(1);filter:blur(0)}
  100%{transform:scale(1.11);filter:blur(5px);opacity:0}
}
@keyframes introHoloFinalFlash{
  0%{opacity:0;transform:translateY(-50%) scaleX(.45) scaleY(1)}
  55%{opacity:1;transform:translateY(-50%) scaleX(1.16) scaleY(10)}
  100%{opacity:0;transform:translateY(-50%) scaleX(1.25) scaleY(24)}
}
@keyframes introHoloExit{
  0%{opacity:1}
  55%{opacity:1}
  100%{opacity:0;visibility:hidden}
}

@media(max-width:700px){
  .intro-wordmark{font-size:clamp(4rem,19vw,6.2rem)}
  .intro-macron-wrap{top:-.58em;right:58%}
  .intro-studio{letter-spacing:.36em}
  .intro-reveal__center::before{
    width:min(74vw,390px);height:min(74vw,390px)
  }
}


/* ================================================================
   INTRO — USER PREFERRED LOGO EXACT
   ================================================================ */
.intro-logo-preferred-wrap{
  position:relative;
  z-index:6;
  width:min(52vw, 520px);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  transform:translateY(20px) scale(.92);
  filter:blur(6px);
  animation:introPreferredIn 1.05s .18s cubic-bezier(.16,.88,.18,1) forwards;
}
.intro-logo-preferred{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  filter: drop-shadow(0 18px 36px rgba(255,255,255,.18));
  animation:introPreferredFloat 3s 1.2s ease-in-out infinite;
}
.intro-reveal.is-leaving .intro-logo-preferred-wrap{
  animation:introPreferredOut .82s cubic-bezier(.18,.9,.18,1) forwards;
}
@keyframes introPreferredIn{
  0%{opacity:0;transform:translateY(20px) scale(.92);filter:blur(6px)}
  65%{opacity:1;transform:translateY(-2px) scale(1.02);filter:blur(0)}
  100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}
@keyframes introPreferredFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
@keyframes introPreferredOut{
  0%{opacity:1;transform:scale(1);filter:blur(0)}
  100%{opacity:0;transform:scale(1.08);filter:blur(5px)}
}
@media(max-width:700px){
  .intro-logo-preferred-wrap{ width:min(74vw, 400px); }
}


/* ================================================================
   INTRO CLEANUP — remove left square and center line
   ================================================================ */
body:not(.intro-complete) .ambient-holo{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

.intro-reveal .intro-sweep,
.intro-reveal .intro-sweep::before,
.intro-reveal .intro-sweep::after{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  animation:none !important;
}

.intro-reveal::after{
  /* keep the holographic wash without blocky artifacts */
  background:
    linear-gradient(110deg, transparent 0%, rgba(255,255,255,.28) 44%, rgba(255,255,255,.04) 50%, transparent 57%) !important;
  background-size:180% 180% !important;
  opacity:.38 !important;
}

/* extra safeguard in case a top-left intro panel is injected by previous styles */
.intro-reveal .intro-left-panel,
.intro-reveal [class*="square"],
.intro-reveal [class*="panel"],
.intro-reveal [class*="line"]{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
}
