/* =========================================================
   Nepali Theme – main.css
   ========================================================= */

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --teal:       #01a99d;
  --red:        #d32929;
  --dark:       #0d1117;
  --card:       rgba(255,255,255,0.04);
  --border:     rgba(255,255,255,0.08);
  --text:       #e8edf2;
  --muted:      rgba(232,237,242,0.55);
  --glow-teal:  0 0 40px rgba(1,169,157,0.35);
  --glow-red:   0 0 40px rgba(211,41,41,0.35);
}

html { scroll-behavior: smooth; }
a    { text-decoration: none; }

body {
  
 background: 
    linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.9)),
    url('../background1.jpg');

  background-size: cover;
  background-position: center;
 
}
button:focus,
button:active,
a:focus,
a:active {
    outline: none !important;
    box-shadow: none !important;
}
/* ── Background Grid ── */
.bg-grid {
  position: fixed; inset: 0; z-index: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
  background-size: 60px 60px;
  pointer-events: none;
}

/* ── Background Blobs ── */
.bg-blob {
  position: fixed; z-index: 0; pointer-events: none;
  border-radius: 50%; filter: blur(120px); opacity: 0.18;
}
.blob1 {
  width: 600px; height: 600px;
  background: var(--teal);
  top: -200px; left: -200px;
  animation: drift1 12s ease-in-out infinite alternate;
}
.blob2 {
  width: 500px; height: 500px;
  background: var(--red);
  bottom: -150px; right: -150px;
  animation: drift2 15s ease-in-out infinite alternate;
}

@keyframes drift1 { to { transform: translate(80px, 60px) scale(1.08); } }
@keyframes drift2 { to { transform: translate(-60px,-40px) scale(1.1); } }

/* ── Page Wrapper ── */
.page {
  position: relative; z-index: 1;
  min-height: 100%;
  display: flex; flex-direction: column; align-items: center;
  padding:0px 20px 20px;
  gap: 15px;
 background: 
    linear-gradient(rgba(255,255,255,0.9), rgba(255,255,255,0.9)),
    url('../background1.jpg');

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;

}

/* ── Status Pill (page) ── */
.status-pill {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 8px 20px;
  border-radius: 100px;
  border: 1px solid var(--border);
  background: var(--card);
  backdrop-filter: blur(12px);
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transition: border-color 0.3s;
	margin-bottom:20px;
}
.status-pill.open   { border-color: var(--teal); background: var(--teal); color:#FFF;}
.status-pill.closed { border-color: var(--red);   background: var(--red);color:#FFF;  }

.status-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: currentColor;
}
.status-pill.open   .status-dot { animation: pulse-teal 1.5s ease-in-out infinite; }
.status-pill.closed .status-dot { animation: pulse-red  1.5s ease-in-out infinite; }

@keyframes pulse-teal {
  0%,100% { box-shadow: 0 0 0 0 rgba(1,169,157,0.7); }
  50%     { box-shadow: 0 0 0 6px rgba(1,169,157,0); }
}
@keyframes pulse-red {
  0%,100% { box-shadow: 0 0 0 0 rgba(211,41,41,0.7); }
  50%     { box-shadow: 0 0 0 6px rgba(211,41,41,0); }
}

/* ── Hero Card ── */
.hero-card {
  width: 100%; max-width: 520px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 24px;
  padding: 40px 36px 0px 36px;
  text-align: center;
  position: relative;
  overflow: hidden;
  animation: cardIn 0.8s cubic-bezier(.22,1,.36,1) both;

}

@keyframes cardIn {
  from { opacity: 0; transform: translateY(40px) scale(0.97); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}

.logo-wrap {
  display: inline-block;
  padding: 12px;
  border-radius: 16px;
  background: rgba(255,255,255,0.06);
  border: 1px solid var(--border);
  margin-bottom: 24px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.logo-wrap:hover {
  transform: scale(1.03);
  box-shadow: var(--glow-teal);
}

.logo-wrap img { width: 280px; max-width: 100%; display: block; }

h1.company-name {
  font-size: clamp(28px, 5vw, 38px);
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin-bottom: 6px;
  color:#000;
font-family: 'MADE Outer Sans Alt', Georgia, serif;
}

.tagline {
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color:#FFF;
background: linear-gradient(to right, #d32929 50%, #00a99d 50%);
  width: fit-content;
  padding: 5px 10px;
  margin: auto;
 border-radius: 24px
}

.divider { height: 1px; background: var(--border); margin: 24px 0; }

.contact-list {
  list-style: none;
  display: flex; flex-direction: column; gap: 5px;
}

.contact-list li a,
.contact-list li span {
  display: flex; align-items: center; gap: 5px;
  padding: 12px 5px !important;
  border-radius: 12px;
  border: 1px solid var(--border);
  color: #000;
  font-size: 18px;
  letter-spacing: 0.02em;
  transition: background 0.2s, border-color 0.2s, transform 0.2s;
}
.contact-list li a:hover {
  background: rgba(255,255,255,0.06);
  border-color: var(--teal);
  transform: translateX(4px);
}

.contact-icon {
  width: 32px; height: 32px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 8px;
  flex-shrink: 0;
  font-size: 14px;
}
.icon-location { background: rgba(1,169,157,0.15);  color: var(--teal); }
.icon-email    { background: linear-gradient(135deg,rgba(66,133,244,.25),rgba(234,67,53,.25)); color: #EA4335; }
.icon-phone    { background: rgba(1,169,157,0.15);  color: var(--teal); }

.hours-btn {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 12px 28px;
  border-radius: 100px;
  border: 1px solid #000;
  font-family: inherit;
  font-size: 13px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  cursor: pointer;
  transition: all 0.25s;
margin-bottom:20px;
}
.hours-btn i { color: var(--teal); }
.hours-btn:hover {
  background: rgba(1,169,157,0.1);
  border-color: var(--teal);
  box-shadow: var(--glow-teal);
}

/* ── Social Section ── */
.social-section {
  text-align: center;
  animation: fadeUp 0.8s 0.2s cubic-bezier(.22,1,.36,1) both;
}

@keyframes fadeUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

.section-label {
  font-size: 11px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  margin-bottom: 20px;
}
.section-label span {
  display: inline-block;
  padding: 0 14px;
  position: relative;
}
.section-label span::before,
.section-label span::after {
  content: '';
  position: absolute; top: 50%;
  width: 40px; height: 1px;
  background: var(--border);
}
.section-label span::before { right: 100%; }
.section-label span::after  { left:  100%; }

.social-row {
  display: flex; flex-wrap: wrap;
  justify-content: center; gap: 5px;
width: 100%;
}

.soc-btn {
  display: flex; flex-direction: column; align-items: center;
  padding: 10px 10px;
  border-radius: 50%;
  text-decoration: none;
  backdrop-filter: blur(10px);
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.soc-btn i    { font-size: 20px; }
.soc-btn span { font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); }
.soc-btn:hover { transform: translateY(-4px) scale(1.06); }

.soc-fb   { background: #1877F2; color: #FFF; }
.soc-fb:hover   { border-color: #1877F2; box-shadow: 0 0 20px rgba(24,119,242,.35); }

.soc-yt   { background: #FF0000; color: #FFF; }
.soc-yt:hover   { border-color: #FF0000; box-shadow: 0 0 20px rgba(255,0,0,.35); }

.soc-ig   { background: linear-gradient(#400080,transparent), linear-gradient(200deg,#d047d1,#f00,#ff0); color: #FFF; }
.soc-ig:hover   { border-color: #E1306C; box-shadow: 0 0 20px rgba(225,48,108,.35); }

.soc-tt   { background: #000; color: #FFF; box-shadow: -2px -2px 0 #25F4EE, 2px 2px 0 #FE2C55; }
.soc-tt:hover   { border-color: #69C9D0; box-shadow: 0 0 20px rgba(105,201,208,.35); }

.soc-wa   { background: #25D366; color: #FFF; }
.soc-wa:hover   { border-color: #25D366; box-shadow: 0 0 20px rgba(37,211,102,.35); }

.soc-call { background: #075E54; color: #FFF; }
.soc-call:hover { border-color: var(--teal); box-shadow: var(--glow-teal); }

/* ── Footer ── */
footer {
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
}

/* ── Hours Modal Backdrop ── */
.modal-backdrop {
  position: fixed; inset: 0;
  background: rgba(0,0,0,0.7);
  backdrop-filter: blur(8px);
  z-index: 9999;
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none;
  transition: opacity 0.3s;
}
.modal-backdrop.active { opacity: 1; pointer-events: all; }

.nepalitheme_box {
  background: #dadada;
  border: 1px solid var(--border);
  border-radius: 24px;
  padding: 40px 36px;
  width: 90%; max-width: 400px;
  position: relative;
  transform: scale(0.92) translateY(20px);
  transition: transform 0.35s cubic-bezier(.22,1,.36,1);
}
.modal-backdrop.active .nepalitheme_box { transform: scale(1) translateY(0); }

.nepalitheme_box::before {
  content: '';
  position: absolute; top: 0; left: 20%; right: 20%; height: 2px;
  background: linear-gradient(90deg, transparent, var(--teal), transparent);
}

.modal-close {
  position: absolute; top: 16px; right: 16px;
  background: none; border: none;
  color: var(--teal); font-size: 20px;
  cursor: pointer; padding: 4px 8px;
  border-radius: 8px;
  transition: color 0.2s, background 0.2s;
}
.modal-close:hover { color: var(--red); background: rgba(211,41,41,0.1); }

/* ── Modal Status Pill ── */
.modal-status-pill {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 7px 16px;
  border-radius: 100px;
  border: 1px solid var(--border);
  background: rgba(0,0,0,0.06);
  font-size: 12px;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  margin-bottom: 18px;
  transition: border-color 0.3s;
}
.modal-status-pill.open   { border-color: var(--teal); background: var(--teal); color:#FFF; }
.modal-status-pill.closed { border-color: var(--red);   background: var(--red); color:#FFF;  }

.modal-status-dot {
  width: 7px; height: 7px; border-radius: 50%;
  background: currentColor;
}
.modal-status-pill.open   .modal-status-dot { animation: pulse-teal 1.5s ease-in-out infinite; }
.modal-status-pill.closed .modal-status-dot { animation: pulse-red  1.5s ease-in-out infinite; }

.modal-title {
  font-size: 18px;
  letter-spacing: 0.04em;
  color: #000;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--border);
}

/* ── Hours Table Rows ── */
.hours-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid rgba(0,0,0,0.08);
  font-size: 14px;
  color: #333;
  transition: color 0.2s;
}
.hours-row:last-child { border-bottom: none; }

.hours-row.today .day-name { color: var(--red); font-weight: 700; }
.hours-row.today .day-name::after { content: ' ←'; font-size: 11px; opacity: 0.7; }
.hours-row .day-time { color: #000; }
.hours-row.today .day-time { color: var(--teal); }
.hours-closed .day-time { color: var(--red) !important; }

/* ── Responsive ── */
@media (max-width: 480px) {
  .logo-wrap img { width: 220px; }
  .soc-btn { padding: 12px 14px;  }
  .hero-card { padding: 10px 20px; }
  .nepalitheme_box { padding: 28px 20px; }
}
/*-------------------Facebook start--------------------------------*/

.allsocial-section{
  float:right;
  position:fixed;
  z-index:999;
}

/* COMMON FIX */
.facebooksocial,
.twittersocial,
.tiktoknepalisocial,
.youtubesocial{
  position:fixed;
  right:-345px;
  width:340px;
  height:500px;
  will-change:right;
}

/*---------------- FACEBOOK ----------------*/
.facebooksocial{
  z-index:99999;
  top:5%;
  border-top:4px solid #3b5998;
}

.textfacebook{
  position:relative;
}

.textfacebook i{
  position:absolute;
  right:342px;
  top:-5px;
  background:#5b78b4;
  color:#fff;
  font-size:25px;
  border-radius:4px 0 0 4px;
  padding: 5px 40px 5px 15px;
}

.facebooksocial div{
  padding:0;
  margin-right:-8px;
  background:#fafafa;
}

.facebooksocial iframe{
  display:block;
  width:100%;
  background:#fff;
}

.facebooksocial span{
  bottom:4px;
  right:6px;
  position:absolute;
  text-align:right;
  z-index:99999;
  font:8px "lucida grande", tahoma, verdana, arial, sans-serif;
}

.facebooksocial span a{
  color:gray;
  text-decoration:none;
}

.facebooksocial span a:hover{
  text-decoration:underline;
}


/*---------------- TWITTER ----------------*/
.twittersocial{
  z-index:99998;
  top:10%;
  margin-top:3%;
}

.texttwitter{
  position:relative;
}

.texttwitter i{
  position:absolute;
  right:342px;
  top:-5px;
  background:#1e9beb;
  color:#fff;
  font-size:25px;
  border-radius:4px 0 0 4px;
  padding:5px 40px 5px 10px;
}

.twittersocial div{
  padding:0;
  margin-right:-8px;
  border:4px solid #1e9beb;
  background:#fafafa;
}


/*---------------- TIKTOK ----------------*/
.tiktoknepalisocial{
  z-index:99997 !important;
  top:16%;
  margin-top:3%;
}

.texttiktoknepali{
  position:relative;
}

.texttiktoknepali i{
  position:absolute;
  right:342px;
  top:-5px;
  background:#000;
  color:#FFF;
  box-shadow:-2px -2px 0 #25F4EE, 2px 2px 0 #FE2C55;
  font-size:25px;
  border-radius:4px 0 0 4px;
  padding:5px 40px 5px 10px;
}

.tiktoknepalisocial div{
  padding:0;
  margin-right:-8px;
  border:4px solid #000;
  background:#fafafa;
}

.tiktoknepalisocial blockquote{
  margin:0 !important;
}


/*---------------- YOUTUBE ----------------*/
.youtubesocial{
  z-index:99996 !important;
  top:16%;
  margin-top:3%;
}

.textyoutube{
  position:relative;
}

.textyoutube i{
  position:absolute;
  right:342px;
  top:-5px;
  background:#FF0000;
  color:#fff;
  font-size:25px;
  border-radius:4px 0 0 4px;
  padding:5px 40px 5px 10px;
}

.youtubesocial .textyoutube{
  padding:0;
  margin-right:-8px;
  border:4px solid #FF0000;
}


/*---------------- TIKTOK CARD ----------------*/
.tiktoksocial{
  background:#fff;
  padding:12px;
  border-radius:12px;
  box-shadow:0 2px 10px rgba(0,0,0,0.08);
}

.tiktok-title{
  color:#000;
  display:flex;
  align-items:center;
  gap:10px;
  font-size:24px;
  font-weight:700;
}


/*================ RESPONSIVE =================*/

@media screen and (min-width:300px){

  .facebooksocial{ top:115px; }

  .twittersocial{ top:230px; }

  .youtubesocial{ top:188px; }

  .tiktoknepalisocial{ top:146px; }
}

@media screen and (min-width:480px){

  .facebooksocial{ top:155px; }

  .twittersocial{ top:270px; }

  .youtubesocial{ top:228px; }

  .tiktoknepalisocial{ top:185px; }
}

@media screen and (min-width:768px){

  .facebooksocial{ top:200px; }

  .twittersocial{ top:300px; }

  .youtubesocial{ top:256px; }

  .tiktoknepalisocial{ top:215px; }
}

@media screen and (min-width:990px){

  .facebooksocial{ top:170px; }

  .twittersocial{ top:265px; }

  .youtubesocial{ top:220px; }

  .tiktoknepalisocial{ top:179px; }
}

@media screen and (min-width:1100px){

  .facebooksocial{ top:175px; }

  .twittersocial{ top:270px; }

  .youtubesocial{ top:225px; }

  .tiktoknepalisocial{ top:180px; }
}


/*================ MOBILE FIX =================*/
@media (max-width:480px){

  .facebooksocial,
  .twittersocial,
  .tiktoknepalisocial,
  .youtubesocial{
    right:-348px;
    width:340px;
  }

  .textfacebook i,
  .texttwitter i,
  .textyoutube i,
  .texttiktoknepali i{
    right:340px;
  }
}

/*============ Responsive End ============*/

/*-------------------------------Facebook Social End---------------------------*/
/* ── Pill ── */
.bh-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 10px;border-radius:100px;border:0.5px solid;cursor:pointer;font-size:13px;font-weight:500;line-height:1;transition:opacity .15s,transform .15s;user-select:none}
.bh-pill:hover{opacity:.85;transform:translateY(-1px)}
.bh-pill.open{background:#eaf3de;border-color:#c0dd97;color:#27500a}
.bh-pill.closed{background:#fcebeb;border-color:#f7c1c1;color:#791f1f}
.bh-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.bh-pill.open .bh-dot{background:#3b6d11;box-shadow:0 0 0 3px #c0dd97}
.bh-pill.closed .bh-dot{background:#a32d2d;box-shadow:0 0 0 3px #f7c1c1}
.bh-pill-main{display:flex;flex-direction:column;gap:2px}
.bh-next-text{font-size:11px;font-weight:400;opacity:.75}

/* ── Modal status bar ── */
.bh-modal-bar{padding:.75rem 1.5rem;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500}
.bh-modal-bar.open{background:#eaf3de;color:#27500a}
.bh-modal-bar.closed{background:#fcebeb;color:#791f1f}
.bh-modal-bar .bh-dot{width:7px;height:7px;border-radius:50%}
.bh-modal-bar.open .bh-dot{background:#3b6d11}
.bh-modal-bar.closed .bh-dot{background:#a32d2d}

/* ── Hours rows ── */
.bh-row{display:flex;justify-content:space-between;align-items:center;padding:.6rem 1.5rem;transition:background .1s}
.bh-row:hover{background:rgba(0,0,0,.03)}
.bh-today{background: rgb(1 117 108);position:relative;color:#FFF;transition:background .1s;}
.bh-today:hover{background: rgb(211 41 41);}
.bh-today::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:#3b6d11;border-radius:0 2px 2px 0}
.bh-today-closed-row::before{background:#a32d2d}
.bh-day-cell{display:flex;align-items:center;gap:8px;font-size:13px;color:#888}
.bh-today .bh-day-cell{color:inherit;font-weight:500}
.bh-today-badge{font-size:10px;font-weight:500;padding:2px 7px;border-radius:100px;background:#c0dd97;color:#27500a}
.bh-today-badge.bh-today-closed{background:#f7c1c1;color:#791f1f}
.bh-time-text{font-size:13px}
.bh-closed-text{font-size:12px;color:#aaa}