.east-gate-page { --eg-green:#031f17; --eg-leaf:#0b6540; --eg-orange:#f05a24; --eg-orange-hot:#ff8233; --eg-white:#f4f7f2; background:var(--eg-green); color:var(--eg-white); }
.eg-hero { --eg-shift-x:0px; --eg-shift-y:0px; position:relative; min-height:calc(100svh - 78px); overflow:hidden; isolation:isolate; display:grid; align-items:end; }
.eg-hero-photo,.eg-hero-wash,.eg-hero-glint,.eg-hero-orbit { position:absolute; inset:0; width:100%; height:100%; }
.eg-hero-photo { z-index:-4; object-fit:cover; object-position:53% 48%; filter:saturate(.95) contrast(1.04) brightness(.8); transform:translate3d(var(--eg-shift-x),var(--eg-shift-y),0) scale(1.08); transition:transform .6s cubic-bezier(.16,1,.3,1),filter .8s ease; }
.eg-hero:hover .eg-hero-photo { filter:saturate(1.06) contrast(1.04) brightness(.86); }
.eg-hero-wash { z-index:-3; background:linear-gradient(90deg,rgba(3,31,23,.96) 0%,rgba(3,31,23,.72) 44%,rgba(3,31,23,.16) 76%),linear-gradient(0deg,rgba(3,31,23,.96),transparent 66%); }
.eg-hero-glint { z-index:-2; background:linear-gradient(108deg,transparent 32%,rgba(255,255,255,.14) 43%,transparent 54%); transform:translateX(-72%); animation:egGlint 9s ease-in-out infinite; }
.eg-hero-orbit { z-index:-1; inset:auto -12vw 10% auto; width:min(62vw,820px); height:auto; aspect-ratio:1; border:1px solid rgba(255,130,51,.34); border-radius:50%; box-shadow:0 0 0 72px rgba(255,130,51,.035),0 0 0 144px rgba(255,130,51,.025); animation:egOrbit 10s ease-in-out infinite alternate; }
.eg-hero-copy { padding:clamp(110px,16vh,190px) 22px clamp(72px,10vh,112px); }
.eg-hero-copy .eyebrow,.eg-story .eyebrow,.eg-principles .eyebrow,.eg-resident .eyebrow,.eg-location .eyebrow { color:var(--eg-orange-hot); }
.eg-hero h1 { max-width:1100px; margin:12px 0 28px; font-family:"SMASH Oswald","Arial Narrow",sans-serif; font-size:clamp(64px,9.2vw,154px); font-weight:700; letter-spacing:-.045em; line-height:.8; text-transform:uppercase; text-wrap:balance; }
.eg-hero h1 span,.eg-hero h1 strong { display:block; }
.eg-hero h1 strong { color:var(--eg-orange-hot); font:inherit; }
.eg-hero-copy > p:not(.eyebrow) { max-width:680px; color:rgba(244,247,242,.82); font-size:clamp(17px,1.55vw,23px); }
.eg-visual-note { position:absolute; z-index:3; left:clamp(20px,3.4vw,54px); bottom:24px; padding:8px 11px; color:rgba(244,247,242,.78); border:1px solid rgba(244,247,242,.22); border-radius:999px; background:rgba(3,31,23,.6); backdrop-filter:blur(10px); font-size:9px; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }
.eg-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.eg-button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; padding:0 24px; color:var(--eg-white); border:1px solid rgba(244,247,242,.54); background:rgba(3,31,23,.44); font-size:10px; font-weight:900; letter-spacing:.13em; text-align:center; text-transform:uppercase; backdrop-filter:blur(12px); transition:transform .28s ease,background .28s ease,border-color .28s ease,color .28s ease; }
.eg-button:hover { color:var(--eg-white); border-color:var(--eg-orange-hot); background:rgba(240,90,36,.16); transform:translateY(-4px); }
.eg-button--orange { color:var(--eg-green); border-color:var(--eg-orange); background:var(--eg-orange); }
.eg-button--orange:hover { color:var(--eg-green); background:var(--eg-orange-hot); }
.eg-hero-marker { position:absolute; right:clamp(18px,3vw,52px); bottom:26px; display:flex; gap:16px; color:rgba(244,247,242,.52); font-size:8px; font-weight:800; letter-spacing:.15em; }

.eg-story,.eg-principles,.eg-resident { padding:clamp(90px,11vw,160px) 0; }
.eg-story { background:linear-gradient(145deg,#04291d,#031f17); }
.eg-story-grid { display:grid; grid-template-columns:minmax(0,.78fr) minmax(440px,1.22fr); gap:clamp(50px,8vw,130px); align-items:center; }
.eg-story h2,.eg-principles h2,.eg-resident h2,.eg-location h2 { margin:12px 0 28px; font-family:"SMASH Oswald","Arial Narrow",sans-serif; font-size:clamp(54px,7.2vw,112px); font-weight:700; letter-spacing:-.045em; line-height:.87; text-transform:uppercase; text-wrap:balance; }
.eg-story-copy > p:not(.eyebrow) { color:rgba(244,247,242,.72); font-size:clamp(16px,1.25vw,20px); }
.eg-text-link { display:inline-block; margin-top:24px; color:var(--eg-orange-hot); font-size:10px; font-weight:900; letter-spacing:.12em; }
.eg-story-gallery { display:grid; grid-template-columns:1.16fr .84fr; grid-template-rows:1fr 1fr; gap:12px; }
.eg-story-gallery figure { position:relative; min-height:260px; margin:0; overflow:hidden; border:1px solid rgba(244,247,242,.16); background:#052a20; }
.eg-story-gallery .eg-gallery-main { grid-row:1 / span 2; min-height:580px; }
.eg-story-gallery img { width:100%; height:100%; object-fit:cover; transition:transform .75s cubic-bezier(.16,1,.3,1),filter .5s ease; }
.eg-story-gallery figure:hover img { transform:scale(1.07); filter:saturate(1.08); }
.eg-story-gallery figcaption { position:absolute; right:12px; bottom:12px; left:12px; padding:10px 12px; color:var(--eg-white); border-left:3px solid var(--eg-orange); background:rgba(3,31,23,.78); font-size:8px; font-weight:900; letter-spacing:.14em; backdrop-filter:blur(10px); }

.eg-principles { color:var(--eg-green); background:var(--eg-orange); }
.eg-principles header { max-width:980px; }
.eg-principles .eyebrow { color:var(--eg-green); }
.eg-principle-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:62px; border-top:2px solid var(--eg-green); }
.eg-principle-grid article { min-height:310px; padding:28px 25px; border-right:1px solid rgba(3,31,23,.32); transition:background .3s ease,transform .3s ease; }
.eg-principle-grid article:last-child { border-right:0; }
.eg-principle-grid article:hover { background:rgba(244,247,242,.16); transform:translateY(-8px); }
.eg-principle-grid article > span { font-family:"SMASH Oswald",sans-serif; font-size:38px; }
.eg-principle-grid h3 { margin:54px 0 14px; font-family:"SMASH Oswald",sans-serif; font-size:clamp(28px,2.5vw,42px); line-height:.94; text-transform:uppercase; }
.eg-principle-grid p { color:rgba(3,31,23,.74); }
.eg-nutrition-note { max-width:760px; margin:34px 0 0; color:rgba(3,31,23,.66); font-size:12px; }

.eg-resident { position:relative; overflow:hidden; background:radial-gradient(circle at 85% 25%,rgba(240,90,36,.2),transparent 27%),linear-gradient(145deg,#0b6540,#031f17 72%); }
.eg-resident::after { content:"QR"; position:absolute; right:-.04em; bottom:-.22em; color:rgba(244,247,242,.035); font-family:"SMASH Oswald",sans-serif; font-size:min(48vw,700px); line-height:.7; pointer-events:none; }
.eg-resident-grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr); gap:clamp(50px,8vw,130px); }
.eg-resident-intro > p:not(.eyebrow) { color:rgba(244,247,242,.74); font-size:18px; }
.eg-resident-badge { margin-top:34px; display:grid; grid-template-columns:72px 1fr; gap:18px; align-items:center; padding:18px; border:1px solid rgba(244,247,242,.24); border-left:5px solid var(--eg-orange); background:rgba(3,31,23,.42); }
.eg-resident-badge span { display:grid; place-items:center; height:64px; color:var(--eg-green); background:var(--eg-orange); font-family:"SMASH Oswald",sans-serif; font-size:30px; }
.eg-resident-badge strong { font-size:11px; letter-spacing:.11em; }
.eg-wolt-card { display:grid; gap:18px; padding:28px; border:1px solid rgba(244,247,242,.18); border-left:6px solid var(--eg-orange); background:linear-gradient(135deg,rgba(240,90,36,.22),rgba(3,31,23,.56) 54%),rgba(3,31,23,.54); box-shadow:0 28px 80px rgba(0,0,0,.28); }
.eg-wolt-card small { color:var(--eg-orange-hot); font-size:10px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.eg-wolt-card h3 { margin:0; font-family:"SMASH Oswald",sans-serif; font-size:clamp(36px,4vw,64px); line-height:.92; text-transform:uppercase; }
.eg-wolt-card p { max-width:58ch; margin:0; color:rgba(244,247,242,.74); font-size:16px; line-height:1.55; }
.eg-wolt-card ol { margin:0; padding:0; display:grid; gap:10px; list-style:none; counter-reset:woltSteps; }
.eg-wolt-card li { counter-increment:woltSteps; position:relative; padding-left:36px; color:rgba(244,247,242,.86); font-weight:800; }
.eg-wolt-card li::before { content:counter(woltSteps); position:absolute; left:0; top:-1px; display:grid; place-items:center; width:23px; height:23px; border-radius:999px; color:var(--eg-green); background:var(--eg-orange-hot); font-size:12px; font-weight:900; }
.eg-steps { margin:0; padding:0; list-style:none; border-top:1px solid rgba(244,247,242,.34); }
.eg-steps li { display:grid; grid-template-columns:74px 1fr; gap:18px; padding:25px 0; border-bottom:1px solid rgba(244,247,242,.18); transition:padding-left .3s ease,background .3s ease; }
.eg-steps li:hover { padding-left:16px; background:rgba(244,247,242,.04); }
.eg-steps li > span { color:var(--eg-orange-hot); font-family:"SMASH Oswald",sans-serif; font-size:36px; }
.eg-steps h3 { margin:0; font-family:"SMASH Oswald",sans-serif; font-size:28px; line-height:1; text-transform:uppercase; }
.eg-steps p { margin:8px 0 0; color:rgba(244,247,242,.66); }
.eg-rollout { position:relative; z-index:1; margin-top:64px; padding-top:22px; display:grid; grid-template-columns:220px 1fr; gap:26px; border-top:2px solid var(--eg-orange); }
.eg-rollout b { color:var(--eg-orange-hot); font-size:10px; letter-spacing:.14em; }
.eg-rollout p { max-width:760px; margin:0; color:rgba(244,247,242,.68); }

.eg-location { min-height:720px; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr); background:var(--eg-green); }
.eg-map-frame { min-height:620px; filter:saturate(.74) hue-rotate(38deg) contrast(1.05); transition:filter .45s ease; }
.eg-map-frame:hover { filter:saturate(1) contrast(1.03); }
.eg-map-frame iframe { width:100%; height:100%; min-height:720px; border:0; }
.eg-location-copy { padding:clamp(50px,7vw,106px); display:flex; flex-direction:column; justify-content:center; background:linear-gradient(145deg,#063d2b,#031f17); }
.eg-location h2 { font-size:clamp(52px,6.2vw,94px); }
.eg-location-copy > p:not(.eyebrow) { color:rgba(244,247,242,.7); }
.eg-location address { margin-top:24px; padding-left:18px; color:var(--eg-white); border-left:4px solid var(--eg-orange); font-style:normal; font-weight:800; line-height:1.65; }

@keyframes egGlint { 0%,38%{transform:translateX(-72%)} 66%,100%{transform:translateX(82%)} }
@keyframes egOrbit { from{transform:scale(.94) rotate(-3deg);opacity:.5} to{transform:scale(1.06) rotate(6deg);opacity:1} }
@media (max-width:1040px){ .eg-story-grid,.eg-resident-grid { grid-template-columns:1fr; } .eg-story-gallery { max-width:850px; } .eg-principle-grid { grid-template-columns:1fr 1fr; } .eg-principle-grid article:nth-child(2){border-right:0} .eg-principle-grid article:nth-child(n+3){border-top:1px solid rgba(3,31,23,.32)} .eg-location{grid-template-columns:1fr} .eg-map-frame,.eg-map-frame iframe{min-height:520px} }
@media (max-width:760px){ body.east-gate-page{padding-bottom:78px} .eg-hero{min-height:760px} .eg-hero-photo{object-position:58% 50%} .eg-hero-wash{background:linear-gradient(0deg,rgba(3,31,23,.98) 0%,rgba(3,31,23,.66) 58%,rgba(3,31,23,.14))} .eg-hero-copy{padding:130px 20px 70px} .eg-hero h1{font-size:clamp(56px,17vw,86px)} .eg-actions{display:grid}.eg-button{width:100%}.eg-hero-marker{display:none}.eg-story,.eg-principles,.eg-resident{padding:82px 0}.eg-story-grid,.eg-resident-grid{gap:48px}.eg-story-gallery{grid-template-columns:1fr 1fr}.eg-story-gallery .eg-gallery-main{grid-column:1 / span 2;grid-row:auto;min-height:420px}.eg-story-gallery figure{min-height:220px}.eg-principle-grid{grid-template-columns:1fr}.eg-principle-grid article{min-height:0;border-right:0;border-bottom:1px solid rgba(3,31,23,.32)}.eg-principle-grid article:nth-child(n+3){border-top:0}.eg-principle-grid h3{margin-top:28px}.eg-steps li{grid-template-columns:56px 1fr}.eg-rollout{grid-template-columns:1fr}.eg-map-frame,.eg-map-frame iframe{min-height:430px}.eg-location-copy{padding:64px 24px}.eg-location h2{font-size:clamp(50px,15vw,76px)} }
@media (max-width:760px){ .eg-visual-note{top:88px;right:20px;bottom:auto;text-align:center} }
@media (prefers-reduced-motion:reduce){ .eg-hero-photo,.eg-hero-glint,.eg-hero-orbit,.eg-story-gallery img,.eg-principle-grid article,.eg-steps li{animation:none!important;transition:none!important;transform:none!important} }

/* Resident app preview: inert product mockup, no public order link. */
.east-gate-page .eg-hero h1,
.east-gate-page .eg-story h2,
.east-gate-page .eg-principles h2,
.east-gate-page .eg-resident h2,
.east-gate-page .eg-location h2,
.east-gate-page .eg-steps h3 {
  letter-spacing: 0;
}

@media (max-width:760px) {
  .east-gate-page .eg-hero-photo {
    filter: saturate(.92) contrast(1.04) brightness(.58);
  }

  .east-gate-page .eg-hero-wash {
    background:
      linear-gradient(0deg, rgba(3,31,23,.99) 0%, rgba(3,31,23,.82) 58%, rgba(3,31,23,.32)),
      linear-gradient(90deg, rgba(3,31,23,.94), rgba(3,31,23,.52) 74%, rgba(3,31,23,.24));
  }

  .east-gate-page .eg-hero-copy {
    padding-top: 118px;
    text-shadow: 0 12px 34px rgba(0,0,0,.5);
  }
}

.eg-app-column {
  display: grid;
  gap: 28px;
}

.eg-app-demo {
  display: grid;
  justify-items: center;
  padding: 26px;
  border: 1px solid rgba(244,247,242,.16);
  background:
    linear-gradient(135deg, rgba(240,90,36,.16), transparent 42%),
    rgba(3,31,23,.44);
  box-shadow: 0 28px 90px rgba(0,0,0,.28);
}

.eg-phone {
  width: min(100%, 360px);
  min-height: 650px;
  padding: 18px;
  display: grid;
  grid-template-rows: auto auto auto 1fr auto;
  gap: 15px;
  color: #f4f7f2;
  border: 10px solid #07110d;
  border-radius: 34px;
  background: linear-gradient(180deg, #04291d, #03150f);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 30px 60px rgba(0,0,0,.36);
  transform: rotate(-1.4deg);
  transition: transform .35s ease;
}

.eg-app-demo:hover .eg-phone {
  transform: rotate(0deg) translateY(-4px);
}

.eg-phone-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: rgba(244,247,242,.72);
  font-size: 11px;
  font-weight: 900;
}

.eg-phone-hero {
  padding: 22px;
  border: 1px solid rgba(244,247,242,.12);
  border-radius: 22px;
  background:
    radial-gradient(circle at 85% 16%, rgba(240,90,36,.28), transparent 30%),
    rgba(244,247,242,.055);
}

.eg-phone-hero small {
  color: var(--eg-orange-hot);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .09em;
}

.eg-phone-hero strong {
  display: block;
  margin-top: 12px;
  font-family: "SMASH Oswald", sans-serif;
  font-size: 42px;
  line-height: .95;
  text-transform: uppercase;
}

.eg-phone-hero p {
  margin: 11px 0 0;
  color: rgba(244,247,242,.72);
  font-size: 14px;
}

.eg-phone-toggle {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.eg-phone-toggle span {
  min-height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(244,247,242,.14);
  border-radius: 999px;
  background: rgba(244,247,242,.06);
  font-size: 11px;
  font-weight: 900;
}

.eg-phone-toggle span:first-child {
  color: #031f17;
  background: var(--eg-orange);
}

.eg-phone-item {
  align-self: start;
  display: grid;
  grid-template-columns: 72px 1fr auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border-radius: 18px;
  background: rgba(244,247,242,.08);
}

.eg-phone-item img {
  width: 72px;
  height: 72px;
  object-fit: cover;
  border-radius: 14px;
}

.eg-phone-item b {
  display: block;
  font-size: 13px;
  line-height: 1.2;
}

.eg-phone-item small {
  display: block;
  margin-top: 4px;
  color: rgba(244,247,242,.56);
  font-size: 10px;
}

.eg-phone-item strong {
  color: var(--eg-orange-hot);
  font-size: 18px;
  font-weight: 900;
}

.eg-phone-status {
  display: grid;
  gap: 10px;
  color: rgba(244,247,242,.78);
  font-size: 11px;
  font-weight: 800;
}

.eg-phone-status i {
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(244,247,242,.14);
}

.eg-phone-status i::before {
  content: "";
  display: block;
  width: 68%;
  height: 100%;
  border-radius: inherit;
  background: var(--eg-orange);
  animation: egProgress 3.4s ease-in-out infinite alternate;
}

@keyframes egProgress { from { width: 42%; } to { width: 86%; } }

@media (max-width:760px){
  .eg-app-demo { padding: 16px; }
  .eg-phone { min-height: 560px; border-radius: 28px; transform: none; }
  .eg-phone-hero strong { font-size: 34px; }
  .eg-phone-item { grid-template-columns: 58px 1fr auto; }
  .eg-phone-item img { width: 58px; height: 58px; }
}

@media (prefers-reduced-motion:reduce){
  .eg-phone,
  .eg-app-demo:hover .eg-phone,
  .eg-phone-status i::before { animation:none!important; transition:none!important; transform:none!important; }
}
