:root {
  --verde: #006847;         /* mexican flag deep green */
  --verde-bright: #00C060; /* bright green for accents/chips */
  --rojo: #CE1126;          /* mexican flag red */
  --rojo-bright: #FF2D3A;   /* brighter red for glows */
  --dark: #021A0E;          /* very deep green-black bg */
  --cream: #FFFFFF;
  --off-white: #F0F7F2;     /* slight green tint to white */
  --zelle: #6d1ed4;
  /* keep marigold just for zelle/payment accent */
  --marigold: #F5A623;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{overflow-x:hidden;}
body{
  background:var(--dark);
  color:var(--cream);
  font-family:'DM Mono',monospace;
  overflow-x:hidden;
  width:100%;
  position:relative;
  cursor:none;scroll-behavior:smooth;
}
#cdot{
  position:fixed;width:8px;height:8px;
  background:var(--cream);border-radius:50%;
  pointer-events:none;z-index:9999;
  transform:translate(-50%,-50%);
  transition:all .2s;
}
#cring{
  position:fixed;width:40px;height:40px;
  border:1px solid rgba(255,255,255,.3);border-radius:50%;
  pointer-events:none;z-index:9998;
  transform:translate(-50%,-50%);
  transition:width .3s,height .3s,opacity .3s,border-color .3s;
}
body.hl #cdot{width:14px;height:14px;background:var(--rojo);}
body.hl #cring{width:58px;height:58px;border-color:rgba(206,17,38,.5);}
#bgc{
  position:fixed;top:0;left:0;width:100%;height:100%;
  z-index:0;pointer-events:none;opacity:.55;
}
.grain{
  position:fixed;top:-50%;left:-50%;width:200%;height:200%;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity:.028;pointer-events:none;z-index:1;
  animation:grn 8s steps(2) infinite;
}
@keyframes grn{
  0%,100%{transform:translate(0,0)}
  20%{transform:translate(-2%,-3%)}
  40%{transform:translate(3%,1%)}
  60%{transform:translate(-1%,3%)}
  80%{transform:translate(2%,-2%)}
}
#prog{
  position:fixed;top:0;left:0;height:3px;width:0%;
  background:linear-gradient(90deg,var(--rojo),#fff,var(--verde-bright));
  z-index:1001;transition:width .08s linear;
}
nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  display:flex;justify-content:space-between;align-items:center;
  padding:24px 7%;
  transition:padding .4s,background .4s,border-color .4s;
  border-bottom:1px solid transparent;
}
nav.stuck{
  padding:15px 7%;
  background:rgba(2,26,14,.96);
  backdrop-filter:blur(24px);
  border-bottom-color:rgba(0,192,96,.1);
}
.nw{
  font-family:'Bebas Neue';font-size:1.65rem;
  color:var(--cream);letter-spacing:4px;
  line-height:1;
}
.nw small{
  font-family:'Italiana';font-size:.6rem;letter-spacing:5px;
  opacity:.4;display:block;color:var(--off-white);margin-top:-3px;
}
.ig{
  display:inline-flex;align-items:center;gap:9px;
  text-decoration:none;
  font-family:'Bebas Neue';font-size:1.05rem;letter-spacing:2px;
  padding:10px 20px 10px 14px;
  border-radius:100px;
  border:1px solid rgba(220,39,67,.35);
  background:linear-gradient(135deg,rgba(240,148,51,.08),rgba(188,24,136,.12));
  color:var(--cream);
  box-shadow:0 0 18px rgba(220,39,67,.12), inset 0 1px 0 rgba(255,255,255,.05);
  transition:all .3s cubic-bezier(.175,.885,.32,1.275);
  position:relative;overflow:hidden;
}
.ig::before{
  content:'';
  position:absolute;inset:0;border-radius:100px;
  background:linear-gradient(135deg,rgba(240,148,51,.15),rgba(188,24,136,.2));
  opacity:0;transition:opacity .3s;
}
.ig:hover{
  transform:translateY(-2px) scale(1.04);
  border-color:rgba(220,39,67,.7);
  box-shadow:0 0 30px rgba(220,39,67,.3), 0 8px 24px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.1);
  letter-spacing:3px;
}
.ig:hover::before{opacity:1;}
.ig-icon{
  font-family:'Bebas Neue';font-size:.75rem;letter-spacing:1px;flex-shrink:0;
  background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  padding:2px 6px;
  border-radius:4px;
  border:1px solid rgba(220,39,67,.3);
  transition:transform .3s, border-color .3s;
  line-height:1.4;
}
.ig:hover .ig-icon{transform:scale(1.08); border-color:rgba(220,39,67,.7);}
.ig-text{
  background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);
  background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;
}
.hero{
  position:relative;min-height:100vh;z-index:2;
  display:flex;flex-direction:column;justify-content:center;
  padding:80px 7% 6vh;
  overflow:hidden;
}
.hero-ghost{
  position:absolute;right:-4%;top:50%;transform:translateY(-50%);
  font-family:'Bebas Neue';font-size:clamp(16rem,36vw,42rem);
  color:rgba(0,104,71,.08);line-height:1;
  pointer-events:none;user-select:none;letter-spacing:-8px;
}
.hero-h1{
  font-family:'Bebas Neue';
  font-size:clamp(5.5rem,19.5vw,15rem);
  line-height:.8;letter-spacing:-3px;
  opacity:0;animation:up .85s .45s forwards;
}
.ht1,.ht2{display:block;}
.ht2{
  -webkit-text-stroke:2px var(--rojo);
  color:transparent;
  transition:color .6s,text-shadow .6s,-webkit-text-stroke .6s;
}
.ht2.solid{
  color:var(--rojo);
  -webkit-text-stroke:0px var(--rojo);
  text-shadow:0 0 80px rgba(206,17,38,.25),0 0 160px rgba(206,17,38,.1);
}
.hero-h1 .char{
  display:inline-block;
  transition:transform .6s cubic-bezier(.2,1,.3,1), opacity .6s, color .4s, text-shadow .4s;
  will-change:transform;
}
.ht2 .char{
  transition:transform .6s cubic-bezier(.2,1,.3,1), opacity .6s, color .4s, -webkit-text-stroke .4s, text-shadow .4s;
}
.hsub-quote{
  font-family:'Italiana';
  font-style:italic;
  letter-spacing:1px !important;
  opacity:.5 !important;
  font-size:.75rem !important;
  transition:opacity .5s ease;
  white-space:nowrap;
  overflow:hidden;
  max-width:260px;
  text-overflow:ellipsis;
}
@media(max-width:768px){
  .hsub-quote{display:none;}
  .hsub-div:last-of-type{display:none;}
}
.hero-sub{
  margin-top:22px;display:flex;align-items:center;gap:20px;
  opacity:0;animation:up .85s .65s forwards;
}
.hsub-item{font-size:.62rem;letter-spacing:4px;opacity:.28;text-transform:uppercase;}
.hsub-div{width:1px;height:16px;background:rgba(255,255,255,.12);}
.scue{
  position:absolute;bottom:7vh;right:7%;
  display:flex;flex-direction:column;align-items:center;gap:10px;
  opacity:0;animation:up .85s 1s forwards;
}
.scue-txt{font-size:.52rem;letter-spacing:5px;opacity:.2;writing-mode:vertical-rl;}
.scue-line{
  width:1px;height:55px;
  background:linear-gradient(to bottom,rgba(255,255,255,.6),transparent);
  animation:spulse 2.2s ease-in-out infinite;
}
@keyframes spulse{0%,100%{opacity:.4;transform:scaleY(1)}50%{opacity:1;transform:scaleY(.55)}}
@keyframes up{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}

.mq-wrap{
  position:relative;z-index:2;
  border-top:1.5px solid rgba(0,0,0,.4);border-bottom:1.5px solid rgba(0,0,0,.4);
}
.mq{background:var(--rojo);overflow:hidden;padding:14px 0;}
.mq-track{
  display:flex;width:max-content;
  animation:march 17s linear infinite;
}
.mq-track:hover{animation-play-state:paused;}
.mq-item{
  font-family:'Bebas Neue';font-size:2rem;
  color:#fff;padding:0 18px;white-space:nowrap;
  display:flex;align-items:center;gap:18px;
}
.mq-item::after{content:'◆';opacity:.3;}
@keyframes march{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ══ SECTION LABELS ══ */
.stag{
  font-size:.58rem;letter-spacing:7px;color:var(--verde-bright);
  text-transform:uppercase;opacity:.8;
  display:flex;align-items:center;gap:14px;
  padding:70px 7% 0;position:relative;z-index:2;
}
.stag::before{content:'';width:18px;height:1px;background:var(--verde-bright);}
.stag::after{content:'';flex:1;height:1px;background:linear-gradient(to right,rgba(0,192,96,.3),transparent);}
.stitle{
  font-family:'Bebas Neue';
  font-size:clamp(3.5rem,8vw,6.5rem);
  padding:6px 7% 40px;line-height:.85;
  position:relative;z-index:2;
}

.menu{padding:0 7% 80px;position:relative;z-index:2;}
.mi{
  position:relative;
  padding:28px 0 28px 24px;
  border-bottom:1px solid rgba(255,255,255,.1);
  overflow:hidden;
  transition:background .3s ease;
}
.mi:last-child{border-bottom:none;}
.mi::before{
  content:'';
  position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(to bottom,var(--rojo),var(--marigold));
  transform:scaleY(0);transform-origin:top;
  transition:transform .35s cubic-bezier(.4,0,.2,1);
  border-radius:0 2px 2px 0;
}
.mi:hover{background:rgba(255,255,255,.018);}
.mi:hover::before{transform:scaleY(1);}
.mi::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg,transparent 0%,rgba(0,192,96,.04) 50%,transparent 100%);
  transform:translateX(-110%);
  transition:transform .7s ease;
}
.mi:hover::after{transform:translateX(110%);}

.mi-top{
  display:flex;justify-content:space-between;align-items:baseline;
  gap:16px;margin-bottom:8px;
}
.mi-name{
  font-family:'Bebas Neue';
  font-size:clamp(1.9rem,5vw,2.8rem);
  line-height:1;letter-spacing:.5px;
  color:var(--cream);
  transition:letter-spacing .3s ease;
}
.mi:hover .mi-name{letter-spacing:2px;}
.mi-dots{
  flex:1;border-bottom:1px dotted rgba(255,255,255,.2);
  margin-bottom:5px;min-width:20px;
}
.pa{
  font-family:'Bebas Neue';
  font-size:clamp(1.7rem,4vw,2.4rem);
  color:var(--rojo);line-height:1;white-space:nowrap;
  transition:transform .3s cubic-bezier(.175,.885,.32,1.275);
}
.mi:hover .pa{transform:scale(1.06);}
.mi-desc{
  font-size:.72rem;letter-spacing:.5px;
  color:rgba(255,255,255,.75);
  line-height:1.6;margin-bottom:14px;
}
.mi-desc em{
  color:var(--verde-bright);font-style:normal;
  font-weight:500;
}
.mi-toppings{
  display:flex;flex-wrap:wrap;gap:6px;align-items:center;
}
.mi-toppings-label{
  font-size:.52rem;letter-spacing:3px;text-transform:uppercase;
  color:rgba(255,255,255,.5);margin-right:2px;white-space:nowrap;
}
.mi-proteins{
  display:flex;flex-wrap:nowrap;gap:6px;align-items:center;
  margin-bottom:8px;
}
.t{
  font-family:'DM Mono';font-size:.6rem;font-weight:500;
  letter-spacing:.5px;text-transform:uppercase;
  padding:5px 12px;border-radius:3px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.35);
  color:rgba(255,255,255,.95);
  transition:all .2s;
  white-space:nowrap;
}
.mi:hover .t{
  background:var(--rojo);
  border-color:var(--rojo);
  color:#fff;
}
.t.v{
  background:transparent;
  border:1px solid rgba(206,17,38,.45);
  color:rgba(255,160,160,.9);
}
.mi:hover .t.v{
  background:rgba(206,17,38,.15);
  border-color:var(--rojo);
  color:#fff;
}
.mi.sides .pa{color:var(--verde-bright);}
.mi.sides::before{background:linear-gradient(to bottom,var(--verde-bright),rgba(0,192,96,.3));}
.mi.sides .t.v{
  background:rgba(0,104,71,.2);
  border-color:rgba(0,192,96,.5);
  color:rgba(0,220,110,.9);
}
.mi.sides:hover .t.v{
  background:var(--verde);
  border-color:var(--verde);
  color:#fff;
}
.orn{
  display:flex;align-items:center;gap:20px;
  padding:10px 7%;opacity:.12;z-index:2;position:relative;
}
.orn::before,.orn::after{content:'';flex:1;height:1px;background:var(--cream);}
.orn-i{font-size:.52rem;letter-spacing:8px;white-space:nowrap;}
.pay{
  margin:60px 7% 80px;padding:80px 40px;
  position:relative;z-index:2;overflow:hidden;
  border:1px solid rgba(0,192,96,.15);
  border-radius:4px;text-align:center;
  background:linear-gradient(135deg,#01120A 0%,#021A0E 60%,#010E08 100%);
}
.pay-b1{
  position:absolute;top:-40%;left:-20%;width:65%;padding-top:65%;
  border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(0,104,71,.15) 0%,transparent 70%);
  animation:bdrift 9s ease-in-out infinite alternate;
}
.pay-b2{
  position:absolute;bottom:-40%;right:-20%;width:55%;padding-top:55%;
  border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(206,17,38,.08) 0%,transparent 70%);
  animation:bdrift 11s ease-in-out infinite alternate-reverse;
}
@keyframes bdrift{from{transform:translate(0,0)}to{transform:translate(6%,6%)}}

.pay-eye{font-size:.58rem;letter-spacing:8px;color:var(--verde-bright);opacity:.7;text-transform:uppercase;margin-bottom:8px;}
.pay-title{
  font-family:'Bebas Neue';font-size:clamp(2.8rem,6.5vw,5rem);
  letter-spacing:3px;margin-bottom:38px;
}
.pmethods{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;}
.zbtn{
  display:inline-flex;align-items:center;gap:14px;
  background:var(--zelle);color:white;
  padding:22px 52px;border-radius:3px;text-decoration:none;
  font-family:'Bebas Neue';font-size:1.75rem;letter-spacing:3px;
  box-shadow:0 20px 55px rgba(109,30,212,.3),inset 0 1px 0 rgba(255,255,255,.1);
  transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s;
  position:relative;overflow:hidden;
}
.zbtn::before{
  content:'';
  position:absolute;top:0;left:-100%;width:100%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);
  transition:left .55s ease;
}
.zbtn:hover{transform:translateY(-5px);box-shadow:0 30px 80px rgba(109,30,212,.45),inset 0 1px 0 rgba(255,255,255,.15);}
.zbtn:hover::before{left:100%;}
.zbtn:active{transform:scale(.97);}
.cash{
  display:inline-flex;align-items:center;gap:12px;
  padding:22px 36px;border-radius:3px;
  border:1px solid rgba(0,192,96,.3);
  color:var(--verde-bright);font-family:'Bebas Neue';font-size:1.75rem;letter-spacing:3px;
  animation:vp 3s ease-in-out infinite;
  transition:background .3s;
}
.cash:hover{background:rgba(0,104,71,.12);}
@keyframes vp{
  0%,100%{box-shadow:0 0 0 0 rgba(0,192,96,.25)}
  50%{box-shadow:0 0 0 18px rgba(0,192,96,0)}
}
.cat{
  position:relative;z-index:2;
  margin:0 0 80px;padding:110px 7% 100px;
  background:var(--cream);color:var(--dark);
  overflow:hidden;
}
.cat::before{
  content:'';position:absolute;top:0;left:0;right:0;height:90px;
  background:var(--dark);
  clip-path:polygon(0 0,100% 0,100% 0,0 100%);
}
.cat-in{max-width:700px;position:relative;z-index:1;}
.cat-eye{
  font-size:.58rem;letter-spacing:7px;opacity:.35;
  text-transform:uppercase;margin-bottom:18px;
  display:flex;align-items:center;gap:12px;
}
.cat-eye::before{content:'';width:18px;height:1px;background:rgba(6,5,4,.35);}
.cat-h2{
  font-family:'Bebas Neue';
  font-size:clamp(4rem,13vw,9rem);
  line-height:.78;letter-spacing:-2px;margin-bottom:28px;
}
.cat-h2 span{color:var(--rojo);}
.cat-desc{
  font-size:.78rem;line-height:1.9;opacity:.6;
  max-width:380px;margin-bottom:38px;letter-spacing:.5px;
  color:var(--dark);
}
.cat-cta{
  display:inline-flex;flex-direction:column;
  text-decoration:none;color:var(--dark);
  transition:transform .3s;
}
.cat-cta:hover{transform:translateX(10px);}
.cat-lbl{font-size:.52rem;letter-spacing:5px;opacity:.4;text-transform:uppercase;margin-bottom:3px;}
.cat-num{
  font-family:'Bebas Neue';
  font-size:clamp(2.5rem,7vw,5rem);
  color:var(--rojo);line-height:1;
  transition:letter-spacing .3s;
}
.cat-cta:hover .cat-num{letter-spacing:3px;}
.cat-ig{font-size:.58rem;letter-spacing:4px;opacity:.27;margin-top:28px;text-transform:uppercase;}
.cat-ghost{
  position:absolute;right:-2%;bottom:-6%;
  font-family:'Bebas Neue';
  font-size:clamp(7rem,20vw,17rem);
  opacity:.035;line-height:1;pointer-events:none;color:var(--dark);user-select:none;
}
#zm{
  display:none;position:fixed;inset:0;
  background:rgba(0,0,0,.97);z-index:2000;
  align-items:center;justify-content:center;
  padding:24px;backdrop-filter:blur(18px);
}
.mb{
  background:#fff;width:100%;max-width:400px;
  border-radius:14px;overflow:hidden;
  animation:min .4s cubic-bezier(.175,.885,.32,1.275);
  box-shadow:0 60px 120px rgba(0,0,0,.95);
}
@keyframes min{from{transform:scale(.82) translateY(24px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}
.mh{
  background:var(--zelle);color:white;
  padding:16px 20px;display:flex;
  justify-content:space-between;align-items:center;
  font-family:'Bebas Neue';font-size:1.55rem;letter-spacing:4px;
}
.mb img{width:100%;display:block;}
.cbtn{
  width:100%;padding:18px;background:#060504;color:#fff;border:none;
  font-family:'Bebas Neue';font-size:1.3rem;letter-spacing:4px;
  cursor:pointer;transition:background .2s;
}
.cbtn:hover{background:#1a1714;}
footer{
  position:relative;z-index:2;
  padding:55px 7% 40px;
  border-top:1px solid rgba(255,255,255,.04);
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;
}
.flogo{font-family:'Bebas Neue';font-size:2.5rem;color:rgba(255,255,255,.05);letter-spacing:6px;}
.fcopy{font-size:.52rem;letter-spacing:4px;opacity:.18;text-transform:uppercase;}
.sr{opacity:0;transform:translateY(40px);transition:opacity .9s cubic-bezier(.2,1,.3,1),transform .9s cubic-bezier(.2,1,.3,1);}
.sr.in{opacity:1;transform:translateY(0);}
.float-ig{
  position:fixed;bottom:28px;right:24px;z-index:999;
  display:flex;align-items:center;gap:0;
  text-decoration:none;
  border-radius:100px;
  overflow:hidden;
  box-shadow:0 8px 32px rgba(0,0,0,.5), 0 0 0 1px rgba(220,39,67,.3);
  transition:box-shadow .3s, transform .3s;
  animation:floatin .8s 1.5s both;
}
@keyframes floatin{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.float-ig:hover{
  transform:translateY(-3px) scale(1.04);
  box-shadow:0 16px 48px rgba(0,0,0,.6),0 0 0 1px rgba(220,39,67,.6),0 0 30px rgba(220,39,67,.2);
}
.float-ig-icon{
  width:46px;height:46px;
  background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);
  display:flex;align-items:center;justify-content:center;
  font-size:1.2rem;flex-shrink:0;
}
.float-ig-label{
  background:rgba(8,6,5,.95);backdrop-filter:blur(12px);
  color:var(--cream);height:46px;
  font-family:'Bebas Neue';font-size:.95rem;letter-spacing:2px;
  padding:0 18px 0 14px;
  display:flex;align-items:center;
  border-left:1px solid rgba(220,39,67,.25);
  white-space:nowrap;
}
.float-ig-dot{
  width:6px;height:6px;border-radius:50%;
  background:var(--rojo);margin-right:10px;
  animation:blink 2s infinite;
  flex-shrink:0;
}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
@media(max-width:768px){
  nav{padding:16px 5%;}
  nav.stuck{padding:12px 5%;}
  .nw{font-size:1.4rem;}
  .ig{padding:8px 14px 8px 10px;font-size:.95rem;}
  .ig-icon{font-size:.65rem;padding:2px 5px;}
  .hero{min-height:85vh;padding:70px 5% 5vh;}
  .hero-ghost{font-size:clamp(10rem,55vw,20rem);right:-8%;}
  .hero-h1{font-size:clamp(4.8rem,22vw,8rem);letter-spacing:-1px;}
  .scue{display:none;}
  .hero-sub{gap:12px;}
  .hsub-item{font-size:.55rem;letter-spacing:3px;}
  .mq-item{font-size:1.6rem;padding:0 12px;}
  .stag{padding:50px 5% 0;font-size:.55rem;}
  .stitle{font-size:clamp(3rem,10vw,4.5rem);padding:6px 5% 30px;}
  .menu{padding:0 5% 60px;}
  .mi{padding:22px 0 22px 18px;}
  .mi-name{font-size:clamp(1.7rem,7vw,2.4rem);}
  .pa{font-size:clamp(1.5rem,6vw,2rem);}
  .mi-dots{display:none;}
  .mi-desc{font-size:.68rem;margin-bottom:10px;}
  .mi-proteins{gap:5px;margin-bottom:6px;}
  .mi-toppings{gap:5px;}
  .mi-toppings-label{
    display:inline-block;
    font-size:.52rem;letter-spacing:2px;
    color:rgba(255,255,255,.55);
  }
  .t{font-size:.6rem;padding:5px 10px;}
  .pay{margin:40px 5% 60px;padding:55px 24px;}
  .pay-title{font-size:clamp(2.2rem,8vw,3.5rem);}
  .pmethods{flex-direction:column;align-items:center;gap:14px;}
  .zbtn{width:100%;max-width:320px;justify-content:center;padding:20px 30px;font-size:1.55rem;}
  .cash{width:100%;max-width:320px;justify-content:center;padding:20px 30px;font-size:1.55rem;}
  .cat{padding:80px 5% 70px;}
  .cat-h2{font-size:clamp(3.5rem,14vw,6rem);letter-spacing:-1px;}
  .cat-num{font-size:clamp(2.2rem,9vw,3.5rem);}
  .cat-ghost{font-size:clamp(5rem,30vw,10rem);}
  .cat-desc{font-size:.75rem;}
  .orn{padding:10px 5%;}
  footer{flex-direction:column;text-align:center;padding:40px 5% 30px;gap:10px;}
  .flogo{font-size:2rem;}
  .float-ig-label{padding:0 14px 0 10px;font-size:.85rem;letter-spacing:1px;}
  .float-ig-icon{width:42px;height:42px;}
  .float-ig-label{height:42px;}

  /* disable cursor on touch */
  #cdot,#cring{display:none;}
  body{cursor:auto;}
}

@media(max-width:400px){
  .hero{min-height:70vh;}
  .hero-h1{font-size:clamp(4rem,21vw,6rem);}
  .ig-text{font-size:.85rem;}
}
