:root{
  --cream:#fff4df;
  --cream2:#fffaf0;
  --teal:#23b8b6;
  --tealDark:#079b99;
  --orange:#f2672f;
  --orange2:#ff4315;
  --ink:#152630;
  --muted:#5b6670;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;color:var(--ink)}
body{
  background:
    radial-gradient(circle at 8% 9%,rgba(35,184,182,.22),transparent 390px),
    radial-gradient(circle at 92% 8%,rgba(242,103,47,.17),transparent 380px),
    linear-gradient(120deg,var(--cream2),var(--cream));
  overflow-x:hidden;
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.55;
  background-image:repeating-radial-gradient(ellipse at center,transparent 0 20px,rgba(242,103,47,.055) 21px 22px,transparent 23px 42px);
  background-size:116px 72px;
}
.page{overflow:hidden}
.hero{
  position:relative;min-height:74vh;width:min(1280px,100%);margin:auto;
  padding:42px 28px 92px;text-align:center;display:flex;flex-direction:column;align-items:center;
}
.logo-card{
  position:relative;z-index:5;width:230px;height:230px;border-radius:50%;display:grid;place-items:center;
  background:#fff8e8;box-shadow:0 28px 65px rgba(30,35,40,.16), inset 0 0 0 8px rgba(255,255,255,.8);
  margin-bottom:36px;
}
.logo-card img{width:84%;height:84%;object-fit:contain;border-radius:50%}
h1{
  position:relative;z-index:5;margin:0;font-family:Impact,'Arial Black',sans-serif;
  font-size:170px;line-height:.82;letter-spacing:.075em;transform:scaleX(.86);
  color:#16aaa8;text-shadow:0 16px 28px rgba(35,184,182,.14);
}
h1:before{content:"";color:var(--orange)}
h1::first-letter{color:#16aaa8}
h1 span{color:var(--orange)}
.tagline{position:relative;z-index:5;display:flex;align-items:center;justify-content:center;gap:18px;margin:22px 0 24px}
.tagline i{width:52px;height:4px;background:var(--teal);border-radius:999px}
.tagline p{margin:0;font-family:'Brush Script MT','Segoe Script',cursive;color:var(--orange);font-size:40px;line-height:1}
.subtitle{position:relative;z-index:5;margin:0 0 36px;font-size:29px;line-height:1.42;color:#26313a}
.menu-button{
  position:relative;z-index:6;width:min(560px,92vw);min-height:88px;border-radius:999px;
  display:flex;align-items:center;justify-content:center;gap:28px;color:white;text-decoration:none;
  text-transform:uppercase;font-size:40px;font-weight:900;letter-spacing:.025em;
  background:linear-gradient(135deg,var(--orange),var(--orange2));
  box-shadow:0 28px 48px rgba(255,90,24,.34),inset 0 0 0 4px rgba(255,255,255,.36);
}
.menu-button span:last-child{font-size:46px;margin-top:-5px}
.social-grid{
  position:relative;z-index:6;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;
  width:min(1110px,92vw);margin:78px auto 0;
}
.social{
  min-height:110px;display:flex;align-items:center;gap:20px;text-align:left;
  padding:22px 24px;border-radius:21px;background:rgba(255,250,240,.88);
  border:1px solid rgba(255,255,255,.92);box-shadow:0 18px 42px rgba(30,35,40,.11);
  color:var(--ink);text-decoration:none;
}
.social img{width:58px;height:58px;flex:0 0 58px}
.social b{display:block;font-size:19px;margin-bottom:5px}.social small{display:block;font-size:13px;color:var(--muted)}
.info{position:relative;background:linear-gradient(180deg,var(--teal),var(--tealDark));color:white;padding:78px 24px 58px;text-align:center}
.wave{position:absolute;left:-4%;right:-4%;top:-70px;height:115px;background:var(--teal);border-top:5px solid var(--orange);border-radius:50% 50% 0 0/78% 78% 0 0}
.info:before{content:"";position:absolute;inset:0;opacity:.15;background-image:repeating-radial-gradient(ellipse at center,transparent 0 16px,rgba(255,255,255,.4) 17px 18px,transparent 19px 34px);background-size:90px 60px}
.info-grid{position:relative;z-index:2;width:min(1040px,100%);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:44px}
.info article div{width:60px;height:60px;margin:0 auto 18px;border-radius:50%;background:#fff8e9;color:var(--tealDark);display:grid;place-items:center;font-size:28px;box-shadow:0 15px 35px rgba(0,0,0,.12)}
.info h2{text-transform:uppercase;font-size:20px;margin:0 0 16px}.info p{font-weight:800;line-height:1.5;margin:0}
footer{text-align:center;padding:30px 20px 34px;background:linear-gradient(180deg,#fff8ed,#fff3dc);font-size:18px}
footer p{margin:0 0 12px}footer span{color:var(--orange);font-size:28px}footer small{font-size:14px;color:#5a6268}
.decor,.paint,.circle,.dots{position:absolute;pointer-events:none;z-index:2}
.paint{height:78px;width:350px;border-radius:999px;background:var(--teal)}
.paint-left{left:2.5%;top:42px;transform:rotate(-18deg)}
.paint-right{right:2%;top:18%;transform:rotate(-14deg)}
.circle{width:160px;height:160px;border-radius:50%;border:9px solid rgba(120,93,60,.12)}
.circle-left{left:-52px;bottom:18%}.circle-right{right:-35px;top:45%}
.dots{top:90px;left:20%;width:100px;height:60px;background-image:radial-gradient(var(--orange) 2.2px,transparent 2.5px);background-size:22px 18px}
.real-sushi{width:185px;height:140px;object-fit:cover;border-radius:999px;box-shadow:0 20px 35px rgba(30,35,40,.17)}
.sushi-one{right:8%;top:5%;transform:rotate(13deg)}
.sushi-two{left:5%;top:36%;transform:rotate(-16deg)}

.wasabi{right:10%;top:31%;width:120px;height:95px;object-fit:cover;border-radius:45%;box-shadow:0 14px 24px rgba(30,35,40,.16)}
@media(max-width:980px){
  h1{font-size:122px}.subtitle{font-size:23px}.social-grid{grid-template-columns:repeat(2,1fr);width:min(640px,92vw);gap:20px;margin-top:58px}
  .paint{width:290px;height:62px}.paint-left{left:-5%}.paint-right{right:-14%}.sushi-one{right:-3%;width:145px;height:110px}.sushi-two{display:none}.wasabi{right:3%;top:33%;width:90px}
}
@media(max-width:620px){
  .hero{padding:34px 18px 56px;min-height:auto}.logo-card{width:150px;height:150px;margin-bottom:26px}
  h1{font-size:76px}.tagline{gap:9px;margin:13px 0 17px}.tagline i{width:32px;height:3px}.tagline p{font-size:20px}
  .subtitle{font-size:15px;margin-bottom:24px}.menu-button{min-height:60px;width:100%;font-size:19px;gap:14px}.menu-button span:last-child{font-size:28px}
  .social-grid{grid-template-columns:1fr;width:100%;gap:13px;margin-top:28px}.social{min-height:76px;border-radius:13px;padding:14px 16px;gap:14px}.social img{width:44px;height:44px;flex-basis:44px}.social b{font-size:14px}.social small{font-size:11px}
  .paint{height:48px;width:230px}.paint-left{top:20px;left:-95px}.paint-right{top:125px;right:-130px}.sushi-one{right:-70px;top:35px;width:130px;height:95px}.sushi-tray,.wasabi,.circle{display:none}.dots{left:14%;top:82px;transform:scale(.72)}
  .info{padding:62px 15px 30px}.wave{top:-42px;height:70px}.info-grid{grid-template-columns:repeat(3,1fr);gap:8px}.info article div{width:42px;height:42px;font-size:20px;margin-bottom:9px}.info h2{font-size:11px;margin-bottom:8px}.info p{font-size:11px}
  footer{font-size:13px;padding:22px 12px 28px}footer small{font-size:11px}
}


/* Final mobile height optimization */
@media (max-width: 620px){
  .hero{
    padding:20px 16px 30px !important;
    min-height:auto !important;
  }

  .logo-card{
    width:110px !important;
    height:110px !important;
    margin-bottom:12px !important;
  }

  h1{
    font-size:64px !important;
    margin-bottom:4px !important;
  }

  .tagline{
    margin:6px 0 10px !important;
  }

  .tagline p{
    font-size:18px !important;
  }

  .subtitle{
    font-size:14px !important;
    margin-bottom:16px !important;
  }

  .menu-button{
    min-height:56px !important;
    margin-bottom:12px !important;
  }

  .social-grid{
    margin-top:16px !important;
    gap:10px !important;
  }

  .social{
    min-height:68px !important;
    padding:12px !important;
  }

  .info{
    padding:35px 10px 20px !important;
  }

  .wave{
    top:-30px !important;
    height:50px !important;
  }

  .info-grid{
    gap:6px !important;
  }

  footer{
    padding:12px 10px 18px !important;
  }
}


/* Real sushi platter image replacement */


.yf-link{
    color:#ff6b35;
    font-weight:700;
    text-decoration:none;
    transition:all .3s ease;
}

.yf-link:hover{
    color:#ff8c42;
    text-shadow:0 0 8px rgba(255,107,53,.4);
}
.real-info-icon{
 width:34px;
 height:34px;
 display:block;
}

.info article div{
 width:74px !important;
 height:74px !important;
}
@media(max-width:620px){
 .info article div{
   width:68px !important;
   height:68px !important;
 }
 .real-info-icon{
   width:32px;
   height:32px;
 }
}

.footer-link-icon,
.footer-link-icon:visited,
.footer-link-icon:hover,
.footer-link-icon:active{
  color:inherit !important;
  text-decoration:none !important;
  display:inline-block !important;
}
.footer-link-icon div{
  margin-left:auto !important;
  margin-right:auto !important;
}


/* ONE SOCIAL ICON BLOCK - replaces the four separate social cards */
.social-grid{
  display:none !important;
}

.social-icon-block{
  position:relative;
  z-index:6;
  width:min(640px, 92vw);
  margin:34px auto 0;
  padding:28px 34px;
  border-radius:28px;
  background:rgba(255,250,240,.88);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:0 18px 42px rgba(30,35,40,.11);
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
  align-items:center;
  justify-items:center;
}

.social-icon-block a{
  width:78px;
  height:78px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  border-radius:50%;
  transition:transform .2s ease;
}

.social-icon-block a:hover{
  transform:translateY(-4px) scale(1.03);
}

.social-icon-block img{
  width:68px;
  height:68px;
  object-fit:contain;
  display:block;
}

@media(max-width:620px){
  .social-icon-block{
    width:calc(100% - 32px);
    margin:22px auto 0;
    padding:20px 24px;
    border-radius:24px;
    grid-template-columns:repeat(2,1fr);
    gap:18px 28px;
  }

  .social-icon-block a{
    width:76px;
    height:76px;
  }

  .social-icon-block img{
    width:66px;
    height:66px;
  }
}

.info h2,.info p{display:none!important;}


/* FINAL MOBILE COMPACT / NO-SCROLL TUNING */
.info h2,
.info p{
  display:none !important;
}

/* Social media: one row on mobile */
.social-icon-block{
  grid-template-columns:repeat(4,1fr) !important;
  gap:18px !important;
  padding:18px 22px !important;
  margin-top:20px !important;
}
.social-icon-block a{
  width:60px !important;
  height:60px !important;
}
.social-icon-block img{
  width:52px !important;
  height:52px !important;
}

/* Footer icons clean and balanced */
.info article div,
.info .round{
  width:82px !important;
  height:82px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.info article div img,
.info .round img,
.real-info-icon{
  width:42px !important;
  height:42px !important;
  object-fit:contain !important;
}
.info article:first-child img{
  width:50px !important;
  height:50px !important;
}
.info{
  padding-top:70px !important;
  padding-bottom:52px !important;
}
.info-grid{
  align-items:center !important;
}

/* Mobile: fit everything much tighter */
@media(max-width:620px){
  body{
    overflow-x:hidden !important;
  }

  .hero{
    padding:14px 16px 28px !important;
    min-height:auto !important;
  }

  .logo-card,
  .logo-medallion{
    width:92px !important;
    height:92px !important;
    margin-bottom:8px !important;
  }

  h1{
    font-size:54px !important;
    line-height:.78 !important;
    margin:0 !important;
  }

  .tagline{
    margin:6px 0 8px !important;
    gap:8px !important;
  }

  .tagline p{
    font-size:16px !important;
  }

  .tagline i{
    width:28px !important;
  }

  .subtitle{
    font-size:13px !important;
    line-height:1.25 !important;
    margin-bottom:14px !important;
  }

  .menu-button,
  .menu-btn{
    min-height:50px !important;
    font-size:18px !important;
    gap:12px !important;
    width:92vw !important;
  }

  .social-icon-block{
    width:calc(100% - 34px) !important;
    margin:16px auto 0 !important;
    padding:14px 16px !important;
    border-radius:20px !important;
    grid-template-columns:repeat(4,1fr) !important;
    gap:8px !important;
  }

  .social-icon-block a{
    width:48px !important;
    height:48px !important;
  }

  .social-icon-block img{
    width:42px !important;
    height:42px !important;
  }

  .info{
    padding:48px 12px 32px !important;
  }

  .wave{
    top:-32px !important;
    height:54px !important;
  }

  .info-grid{
    grid-template-columns:repeat(3,1fr) !important;
    gap:8px !important;
  }

  .info article div,
  .info .round{
    width:62px !important;
    height:62px !important;
    margin:0 auto !important;
  }

  .info article div img,
  .info .round img,
  .real-info-icon{
    width:32px !important;
    height:32px !important;
  }

  .info article:first-child img{
    width:38px !important;
    height:38px !important;
  }

  footer{
    padding:14px 10px 18px !important;
  }

  footer p{
    font-size:13px !important;
    margin-bottom:6px !important;
  }

  footer small{
    font-size:10px !important;
  }

  .paint-left,
  .paint-right,
  .brush-left,
  .brush-right{
    opacity:.85 !important;
  }
}


/* APPROVED MOCKUP FINAL OVERRIDES */
.info h2,
.info p{
  display:none !important;
}

/* Social icons: one row in one white rounded block */
.social-icon-block{
  width:min(760px, 86vw) !important;
  margin:42px auto 54px !important;
  padding:26px 46px !important;
  border-radius:30px !important;
  background:rgba(255,250,240,.88) !important;
  border:1px solid rgba(255,255,255,.95) !important;
  box-shadow:0 22px 45px rgba(30,35,40,.10) !important;
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  align-items:center !important;
  justify-items:center !important;
  gap:30px !important;
}

.social-icon-block a{
  width:76px !important;
  height:76px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  text-decoration:none !important;
  transition:transform .2s ease !important;
}

.social-icon-block a:hover{
  transform:translateY(-4px) scale(1.03) !important;
}

.social-icon-block img{
  width:70px !important;
  height:70px !important;
  object-fit:contain !important;
}

/* Footer/action section spacing and icon circles */
.info{
  padding-top:96px !important;
  padding-bottom:78px !important;
}

.wave{
  top:-74px !important;
  height:120px !important;
}

.info-grid{
  grid-template-columns:repeat(3,1fr) !important;
  align-items:center !important;
  justify-items:center !important;
  gap:64px !important;
}

.info article{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* keep original circles, but make them balanced */
.info article div,
.info .round{
  width:116px !important;
  height:116px !important;
  min-width:116px !important;
  min-height:116px !important;
  max-width:116px !important;
  max-height:116px !important;
  margin:0 auto !important;
  border-radius:50% !important;
  background:#fff8e9 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 16px 36px rgba(0,0,0,.12) !important;
}

.info article div img,
.info .round img,
.real-info-icon{
  width:56px !important;
  height:56px !important;
  max-width:56px !important;
  max-height:56px !important;
  object-fit:contain !important;
  display:block !important;
}

/* WhatsApp looks better slightly bigger */
.info article:first-child div img,
.info article:first-child .real-info-icon{
  width:70px !important;
  height:70px !important;
  max-width:70px !important;
  max-height:70px !important;
}

/* Phone icon should be a bit smaller */
.info article:nth-child(2) div img,
.info article:nth-child(2) .real-info-icon{
  width:48px !important;
  height:48px !important;
  max-width:48px !important;
  max-height:48px !important;
}

footer{
  padding-top:44px !important;
}

/* Mobile layout matching the approved mockup */
@media(max-width:620px){
  .hero{
    padding:24px 16px 28px !important;
  }

  .logo-card,
  .logo-medallion{
    width:120px !important;
    height:120px !important;
    margin-bottom:18px !important;
  }

  h1{
    font-size:70px !important;
    line-height:.82 !important;
    margin:0 !important;
  }

  .tagline{
    margin:10px 0 18px !important;
  }

  .tagline p{
    font-size:20px !important;
  }

  .tagline i{
    width:36px !important;
  }

  .subtitle{
    font-size:18px !important;
    line-height:1.35 !important;
    margin-bottom:30px !important;
  }

  .menu-button,
  .menu-btn{
    width:92vw !important;
    min-height:72px !important;
    font-size:28px !important;
    gap:20px !important;
  }

  .social-icon-block{
    width:calc(100% - 64px) !important;
    margin:36px auto 72px !important;
    padding:22px 22px !important;
    border-radius:24px !important;
    grid-template-columns:repeat(4,1fr) !important;
    gap:8px !important;
  }

  .social-icon-block a{
    width:58px !important;
    height:58px !important;
  }

  .social-icon-block img{
    width:54px !important;
    height:54px !important;
  }

  .info{
    padding:76px 12px 58px !important;
  }

  .wave{
    top:-58px !important;
    height:94px !important;
  }

  .info-grid{
    grid-template-columns:repeat(3,1fr) !important;
    gap:14px !important;
  }

  .info article div,
  .info .round{
    width:86px !important;
    height:86px !important;
    min-width:86px !important;
    min-height:86px !important;
    max-width:86px !important;
    max-height:86px !important;
  }

  .info article div img,
  .info .round img,
  .real-info-icon{
    width:42px !important;
    height:42px !important;
    max-width:42px !important;
    max-height:42px !important;
  }

  .info article:first-child div img,
  .info article:first-child .real-info-icon{
    width:58px !important;
    height:58px !important;
    max-width:58px !important;
    max-height:58px !important;
  }

  .info article:nth-child(2) div img,
  .info article:nth-child(2) .real-info-icon{
    width:36px !important;
    height:36px !important;
    max-width:36px !important;
    max-height:36px !important;
  }

  footer{
    padding:34px 12px 42px !important;
  }

  footer p{
    font-size:20px !important;
    margin-bottom:16px !important;
  }

  footer small{
    font-size:15px !important;
  }
}


/* FINAL APPROVED MOCKUP TWEAKS */
.social-icon-block{
    margin-bottom: 35px !important;
}

.info{
    padding-top: 35px !important;
    padding-bottom: 25px !important;
    min-height:auto !important;
}

.wave{
    top:-22px !important;
    height:40px !important;
}

.info-grid{
    gap:18px !important;
}

.info article div,
.info .round{
    width:72px !important;
    height:72px !important;
    min-width:72px !important;
    min-height:72px !important;
}

.info article div img,
.info .round img{
    width:34px !important;
    height:34px !important;
}

.info article:first-child div img{
    width:42px !important;
    height:42px !important;
}

footer{
    padding-top:20px !important;
}

@media(max-width:620px){
    .social-icon-block{
        margin-bottom:28px !important;
    }

    .info{
        padding-top:25px !important;
        padding-bottom:18px !important;
    }

    .wave{
        top:-18px !important;
        height:32px !important;
    }

    .info article div,
    .info .round{
        width:64px !important;
        height:64px !important;
        min-width:64px !important;
        min-height:64px !important;
    }

    .info article div img,
    .info .round img{
        width:30px !important;
        height:30px !important;
    }

    .info article:first-child div img{
        width:38px !important;
        height:38px !important;
    }
}


/* FINAL MOBILE FOOTER REDUCTION */
@media (max-width: 620px){

  .social-icon-block{
    margin-bottom:22px !important;
  }

  .info{
    padding-top:34px !important;
    padding-bottom:24px !important;
    min-height:auto !important;
  }

  .wave{
    top:-26px !important;
    height:46px !important;
  }

  .info-grid{
    grid-template-columns:repeat(3,1fr) !important;
    gap:10px !important;
    align-items:center !important;
    justify-items:center !important;
  }

  .info article div,
  .info .round{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
    min-height:58px !important;
    max-width:58px !important;
    max-height:58px !important;
    margin:0 auto !important;
  }

  .info article div img,
  .info .round img,
  .real-info-icon{
    width:28px !important;
    height:28px !important;
    max-width:28px !important;
    max-height:28px !important;
    object-fit:contain !important;
  }

  .info article:first-child div img,
  .info article:first-child .real-info-icon{
    width:34px !important;
    height:34px !important;
    max-width:34px !important;
    max-height:34px !important;
  }

  .info article:nth-child(2) div img,
  .info article:nth-child(2) .real-info-icon{
    width:25px !important;
    height:25px !important;
    max-width:25px !important;
    max-height:25px !important;
  }

  footer{
    padding-top:22px !important;
    padding-bottom:26px !important;
  }

  footer p{
    font-size:17px !important;
    margin-bottom:8px !important;
  }

  footer small{
    font-size:12px !important;
  }
}

/* Desktop/tablet slight footer reduction */
@media (min-width: 621px){
  .info{
    padding-top:54px !important;
    padding-bottom:42px !important;
  }

  .info article div,
  .info .round{
    width:82px !important;
    height:82px !important;
  }

  .info article div img,
  .info .round img,
  .real-info-icon{
    width:38px !important;
    height:38px !important;
  }
}


/* LOGO FLOAT ANIMATION */
.logo-card,
.logo-medallion,
.logo img{
    animation: logoFloat 3s ease-in-out infinite;
}

@keyframes logoFloat{
    0%{transform:translateY(0px);}
    50%{transform:translateY(-10px);}
    100%{transform:translateY(0px);}
}

/* VIEW MENU BUTTON ANIMATION */
.menu-button,
.menu-btn{
    animation: pulseGlow 2s ease-in-out infinite;
    transition: transform .25s ease;
}

.menu-button:hover,
.menu-btn:hover{
    transform: scale(1.04);
}

@keyframes pulseGlow{
    0%{
        box-shadow:0 10px 25px rgba(255,90,0,.25);
    }
    50%{
        box-shadow:0 18px 40px rgba(255,90,0,.55);
    }
    100%{
        box-shadow:0 10px 25px rgba(255,90,0,.25);
    }
}


/* FOOTER BUTTON ANIMATIONS */
.info article div,
.info .round,
.footer-action-btn,
.footer-circle,
.footer-link-icon div{
    animation: footerFloat 3.2s ease-in-out infinite;
    transition: transform .25s ease, box-shadow .25s ease;
}

.info article:nth-child(2) div,
.info article:nth-child(2) .round,
.footer-action-btn:nth-child(2),
.footer-circle:nth-child(2){
    animation-delay:.25s;
}

.info article:nth-child(3) div,
.info article:nth-child(3) .round,
.footer-action-btn:nth-child(3),
.footer-circle:nth-child(3){
    animation-delay:.5s;
}

.info article div:hover,
.info .round:hover,
.footer-action-btn:hover,
.footer-circle:hover,
.footer-link-icon div:hover{
    transform: translateY(-5px) scale(1.05);
    box-shadow:0 18px 38px rgba(0,0,0,.18) !important;
}

@keyframes footerFloat{
    0%{ transform:translateY(0); }
    50%{ transform:translateY(-7px); }
    100%{ transform:translateY(0); }
}

/* Tap feedback on mobile */
.info article div:active,
.info .round:active,
.footer-action-btn:active,
.footer-circle:active,
.footer-link-icon div:active{
    transform:scale(.94);
}

/* Reduced motion accessibility */
@media (prefers-reduced-motion: reduce){
    .logo-card,
    .logo-medallion,
    .logo img,
    .menu-button,
    .menu-btn,
    .info article div,
    .info .round,
    .footer-action-btn,
    .footer-circle,
    .footer-link-icon div{
        animation:none !important;
        transition:none !important;
    }
}


/* MOBILE FULL SCREEN - NO SCROLL */
@media (max-width: 768px){

html,body{
height:100dvh !important;
overflow:hidden !important;
}

body{
display:flex !important;
flex-direction:column !important;
}

.hero{
padding-top:8px !important;
padding-bottom:6px !important;
}

.logo-card,
.logo-medallion{
width:70px !important;
height:70px !important;
}

h1{
font-size:52px !important;
margin:4px 0 !important;
}

.subtitle{
font-size:14px !important;
margin-bottom:8px !important;
}

.menu-button,
.menu-btn{
height:48px !important;
min-height:48px !important;
}

.social-icon-block{
margin:10px auto !important;
padding:10px !important;
}

.info{
padding-top:18px !important;
padding-bottom:10px !important;
}

.info article div,
.info .round{
width:50px !important;
height:50px !important;
}

footer{
padding-top:8px !important;
padding-bottom:8px !important;
margin:0 !important;
}

footer p{
margin:0 0 4px 0 !important;
font-size:12px !important;
}

footer small{
font-size:10px !important;
}

/* kill extra empty space */
main,.page,.wrapper,.container{
min-height:auto !important;
height:auto !important;
}
}


/* FIX MOBILE BOTTOM EMPTY SPACE: make layout fill viewport */
@media (max-width: 768px){

  html,
  body{
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
    min-height:100dvh !important;
    overflow-x:hidden !important;
  }

  body{
    display:flex !important;
    flex-direction:column !important;
  }

  main,
  .page,
  .wrapper,
  .container{
    min-height:100dvh !important;
    display:flex !important;
    flex-direction:column !important;
  }

  .hero{
    flex:1 1 auto !important;
  }

  .info{
    flex:0 0 auto !important;
  }

  footer{
    flex:0 0 auto !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
  }

  footer::after{
    display:none !important;
    content:none !important;
  }
}


/* FILL THE EMPTY SPACE ABOVE FOOTER SECTION */
@media (max-width:768px){

.logo-card,
.logo-medallion{
    width:95px !important;
    height:95px !important;
}

h1{
    font-size:72px !important;
    line-height:0.9 !important;
}

.tagline p{
    font-size:22px !important;
}

.subtitle{
    font-size:18px !important;
    line-height:1.3 !important;
}

.menu-button,
.menu-btn{
    height:68px !important;
    min-height:68px !important;
    font-size:22px !important;
}

.social-icon-block{
    margin-top:18px !important;
    margin-bottom:20px !important;
    padding:18px !important;
}

.social-icon-block a img,
.social-icon-block img{
    width:58px !important;
    height:58px !important;
}

.info{
    margin-top:-80px !important;
    padding-top:25px !important;
}

}

.hero-title-logo{
display:block!important;
margin:0 auto!important;
width:420px!important;
max-width:90%!important;
height:auto!important;
filter:drop-shadow(0 8px 20px rgba(0,0,0,.12));
}
@media (max-width:768px){
.hero-title-logo{
width:280px!important;
max-width:85%!important;
}
}

.logo-card{display:none!important;}
h1{display:none!important;}
.hero-title-logo{display:block;margin:0 auto 10px;width:700px;max-width:90%;height:auto;background:transparent!important;box-shadow:none!important;border:none!important;}
.hero-title-logo img{background:transparent!important;}
@media(max-width:768px){.hero-title-logo{width:320px;max-width:88%;}}


/* REPAIR: clean logo title layout */
.logo-card,
.logo-medallion{
  display:none !important;
}

.hero-title-logo{
  display:block !important;
  width:520px !important;
  max-width:88% !important;
  height:auto !important;
  margin:0 auto 28px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  object-fit:contain !important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.08)) !important;
}

.hero h1,
.tagline{
  display:none !important;
}

.subtitle{
  margin-top:0 !important;
}

@media(max-width:768px){
  .hero{
    padding-top:46px !important;
  }

  .hero-title-logo{
    width:300px !important;
    max-width:84% !important;
    margin:0 auto 22px !important;
  }

  .subtitle{
    margin-bottom:22px !important;
  }
}

@media(max-width:420px){
  .hero{
    padding-top:34px !important;
  }

  .hero-title-logo{
    width:285px !important;
    max-width:86% !important;
    margin-bottom:20px !important;
  }
}
