* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;}
html, body {
  height: 100%;
  font-family: sans-serif;
  line-height: 1.5;
  background-color: #fff;
  color: #000;}
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
  height: auto;}
input, button, textarea, select {
  font: inherit;
  border: none;
  background: none;
  outline: none;}
ul, ol {
  list-style: none;}
a {
  text-decoration: none;
  color: inherit;}

/* ヘッダー全体 */
header {width: 100%;background-color: rgb(243, 241, 241);}
.header-container {width: 100%;padding: 16px 0;margin: 0 auto;}
.head-image {
  background-image: url("pic/Parfum de reve/LINE_ALBUM_ホームページ用宣伝写真_250928.jpg");
  background-size: cover;
  background-position: center;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: white;
    /* アニメーション用*/
  opacity: 0;
  transform: translateY(-50px);
  transition: all 3s ease;
}
.head-image.show {
  opacity: 1;
  transform: translateY(0);
}
.head-image h1 {color: #fff;background-color: #060606;}
.text-right {padding: 8px;text-align: right;color: rgb(0, 0, 0);}
@media (max-width: 768px) {
  .head-image {height: 100vh;font-size: 1.2rem;padding: 0 16px;}
  .head-image h1 {font-size: 1.6rem;padding: 8px;}
}
@media (min-width: 769px) and (max-width: 1024px) {
  .head-image {height: 100vh;font-size: 1.5rem;padding: 0 20px;}
  .head-image h1 {font-size: 2rem;padding: 10px;}
}

/* トグル*/
.header-top {
  position: fixed;
  top: 0px;
  right: 0px;
  left:0px;
  z-index: 1000;
  display: flex;
  justify-content: space-between; /* 左右に分ける */
  align-items: center;
  padding: 10px 20px;
}
.logo{height: 60px;}
.header-right { display: flex;gap: 30px;align-items: center; margin-right: 20px;}
.lang-toggle {display: flex;gap: 5px;font-family:sans-serif;}
.lang-toggle button {
  padding: 6px 14px;
  font-size: 16px;
  background: white;
  color: black;
  border-radius: 3px;
  cursor: pointer;
  transition: 0.3s;
  border: 2px solid transparent;
}
.lang-toggle button.selected {background: black;color: white;}
.navbar-toggler {
  font-size: 40px;
  background: none;
  border: none;
  cursor: pointer;
}
@media (max-width: 768px) {
  .lang-toggle button {font-size: 12px;padding: 4px 10px;}
  .header-right {gap: 20px;margin-right: 5px;}
  .logo{height:40px;}
  .navbar-toggler {font-size: 35px;}
}
@media (min-width: 769px) and (max-width: 1024px) {
  .lang-toggle button {font-size: 15px;padding: 5px 12px;}
  .header-right {gap: 20px;margin-right: 5px;}
  .logo{height:50px;}
  .navbar-toggler {font-size: 40px;}
}
/* ナビゲーションメニュー */
.navbar {display: flex;justify-content: center;align-items: center;position: relative;}
.navbar-header {position: relative;}
.navbar-nav {display: none;}
.navbar-nav.show {
  display: flex;
  flex-direction: column;
  background: #f9f9f9;
  position: fixed;
  top: 0;
  right: 0;
  width: 100vw;
  height: 60vh;
  box-shadow: rgba(0,0,0,0.1);
  border-radius: 6px;
  z-index: 999;
  padding: 70px 20px 20px;
}
.navbar-nav li.contact-info {
  display: flex;             
}
.contact-row {
  display: flex;          
  justify-content: center;
  align-items: center;
  gap: 10px;
  width: 100%;
}
.contact-row p {margin: 0;display: inline-block; }
.navbar-nav li {padding: 10px;text-align: center;}
.navbar-nav li a {text-decoration: none;color: #333;font-weight: bold;}
/* SP対応（必要最小限） */
@media (max-width: 768px) {
  .navbar-nav.show {height: 70vh;padding: 80px 20px;}
  .navbar-nav li a {font-size: 18px;padding: 12px 0;}
}
@media (min-width: 769px) and (max-width: 1024px) {
  .navbar-nav.show {height: 60vh;padding: 70px 40px;}
  .navbar-nav li a {font-size: 20px;padding: 10px 0;}
}

/* body全体 */
body {
  margin: 0;
  padding: 0;
  background-color: #f9f9f9;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  overflow-x: hidden;
  font-family: 'Noto Serif JP', serif;
}
h2 {
  font-size: 35px;       
  color: #333;          
  text-align: center;    
  margin: 10px 0;        
  font-weight: bold;
}
@media (max-width: 768px) {
 h2 {font-size: 25px;       }
}
@media (min-width: 769px) and (max-width: 1024px) {
 h2 {font-size: 30px;       }
}

/* introセクション */
.intro {text-align: center;padding: 40px 20px;}
.intro_movie {
  margin-top: 30px;
  overflow-x: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}
.intro .int-container p.text-sp {display: none;}
.intro .int-container p.text-ensp{display: none;}
.intro .int-container p.text-pc {
    display: block;
    font-size: 20px;
    line-height: 1.6;
    text-align: center;
    margin-top: 12px;
}
.int_chach {font-size: 28px; margin-top:12px; font-weight: bold;}
@media (max-width: 768px) {
  .intro {padding: 24px 12px;}
  .intro .int-container h2.int_title {font-weight: bold;line-height: 1.4;}
  .intro .int-container p.text-pc {display: none;}
  .intro .int-container p.text-sp {
    display: flex;
    font-size: 14px;
    line-height: 1.6;
    text-align: center;
    justify-content: center;
    margin-top: 12px;
  }
  .intro .int-container p.text-ensp{
    display: flex;
    font-size: 12px;
    line-height: 1.8;
    text-align: center;
    justify-content: center;
    margin-top: 12px;
  }
  .int_chach {font-size: 15px; margin-top:12px;}
}
@media (min-width: 769px) and (max-width: 1024px) {
  .intro {padding: 30px 16px;}
  .intro .int-container p.text-pc {display: none;text-align: center;}
  .intro .int-container p.text-sp {
    display: flex;
    font-size: 17px;
    line-height: 1.8;
    text-align: center;
    justify-content: center;
    margin-top: 12px;
  }
  .intro .int-container p.text-ensp{
    display: flex;
    font-size: 16px;
    line-height: 1.8;
    text-align: center;
    justify-content: center;
    margin-top: 12px;
  }
  .int_chach {font-size: 20px; margin-top:12px;font-weight: bold;}
}

.productimage {text-align: center;padding: 40px 20px;}
.pi-image {display: flex;justify-content: center;align-items: center;}
.pi-image img {height: auto;width: 840px; margin-top: 90px; padding-bottom: 120px;}
@media (max-width: 768px) {
  .pi-image img {width: 100%;}
}
@media (min-width: 769px) and (max-width: 1024px) {
  .pi-image img {width: 80%;}
}

.concept {
  text-align: center;
  padding: 110px 20px 90px;
  background-color: #fafafa;}
.con-title h2 {
  font-weight: bold;
  margin-bottom: 10px;
  letter-spacing: 2px;
}
.con-title p {color: #666;margin-bottom: 40px;}
.slider {
  justify-content: center;
  gap: 20px; /* 画像間の余白 */
  margin-bottom: 60px;
}
.slider img {
  width: auto;
  height: 450px;
  object-fit: cover;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  transition: transform 0.4s ease;
}
.con-container img:hover {transform: scale(1.05);}
.mes-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  margin-bottom: 60px;
  margin-top: 40px;
}
.mes-left img {
  width: 425px;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.mes-right {
  max-width: 700px;
  text-align: left;
}
.mes-right h5 {
  font-size: 20px;
  margin-bottom: 15px;
  color: #333;
}
.mes-right p {
  line-height: 1.8;
  margin-bottom: 10px;
  color: #444;
}
.feat-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  margin-bottom: 60px;
}
.feat-left {max-width: 500px;text-align: left;justify-content: center;}
.feat-left h5 {font-size: 20px;margin-bottom: 15px;margin-top:40px; #333;}
.feat-left p {
  line-height: 1.8;
  margin-bottom: 8px;
  color: #444;
}
.feat-right img {
  width: 425px;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.serv-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.serv-left img {
  width: 425px;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}


.serv-right {
  max-width: 700px;
  text-align: left;
}
.serv-right h5 {font-size: 20px;margin-bottom: 15px;color: #333;}
.serv-right p {line-height: 1.8;margin-bottom: 10px;color: #444;}
.concept p.text-pc { padding-left:15px;font-size: 20px;}

/* ============================
   スライダー（共通）
============================ */
.slider {
  position: relative;
  overflow-x: hidden;
  width: 100%;
}

.track {
  display: flex;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.track::-webkit-scrollbar {
  display: none;               /* Chrome / Safari / iOS / Android */
}
/* ★ 画像サイズを変更したいときはここを変更する */
.slide {
  flex-shrink: 0;
  width: 100%;           /* ← スマホ1枚表示（画像サイズの基準） */
  padding: 0 20px;       /* ← 左右マージンを均等に */
  scroll-snap-align: center;
}

.slide img {
  width: 100%;
  border-radius: 12px;
}

/* ドット */
.dots {
  position: static;   /* ← これで画像の下に来る */
  margin-top: 12px;   /* ← 画像との余白 */
  display: flex;
  justify-content: center;
  gap: 8px;
}
.dots span {
  width: 10px;
  height: 10px;
  background: #ccc;
  border-radius: 50%;
  transition: 0.3s;
}
.dots span.active {
  background: #333;
}
.br-text{display: none;}
@media (max-width: 768px) {
  .br-text{display: block;}
  .concept p.text-pc {
    padding-left: 0;   
    padding-right: 0;
    margin: 0;
  }
  .slider {
    width: 100%;
    padding: 0 20px; 
  }
  .slide img {
    width: 100%;
    display: block; 
  }
  .dots {
    width: 100%;
    display: flex;
    justify-content: center;
  }
  /* レイアウト調整 */
  .con-container,
  .mes-container,
  .feat-container,
  .serv-container {
    flex-direction: column;
    gap: 20px;
  }
  .con-container img,
  .mes-left img,
  .feat-right img,
  .serv-left img  {
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
  }

  .feat-left {
    order: 2;
  }
  .feat-right {
    order: 1;
  }
  .mes-right,
  .mes-right,
  .feat-left,
  .serv-right {
    max-width: 100%;   
    width: 100%;
    text-align: center;
  }
  .concept p.text-pc {font-size: 14px;}
  .concept {padding: 110px 12px 90px;}
}

/* ============================
   タブレット
============================ */
@media (min-width: 769px) and (max-width: 1024px) {
  .track {
    overflow: hidden;
    scroll-snap-type: none;
  }
  .slide {width: calc(100% - 40px);}
  .dots { display: flex; }
  .con-container,
  .mes-container,
  .feat-container,
  .serv-container {
    flex-direction: row;
    gap: 20px;
    justify-content:center ;
  }
  .con-container img,
  .mes-left img,
  .feat-right img,
  .serv-left img {
    width: 300px;
    max-width: 400px;
  }
  .mes-right,
  .feat-left,
  .serv-right {
    text-align: left;
  }
  .concept p.text-pc {
    font-size: 16px;
  }
  .concept {padding: 110px 20px 90px;}
}

/* ============================
   PC（カルーセル無効・3枚横並び）
============================ */
@media (min-width: 1025px) {

  .slider {
    overflow: visible;
    padding-bottom: 0;
  }

  .track {
    overflow: visible;
    scroll-snap-type: none;
    gap: 20px;
  }

  .slide {
    width: calc((100% - 40px) / 3); /* ← PCの画像サイズはここ */
    padding: 0;
  }

  .dots {
    display: none;
  }
}
.flow {
  text-align: center;
  padding: 110px 60px 90px;
  background-color: rgb(250, 248, 245);
}

/* コンテナ全体 */
.step-container {
  display: flex;
  align-items: flex-start;
  gap: 50px;
  margin-top: 40px;
}

/* ボタン列 */
.step-buttons {
  display: flex;
  flex-direction: column; /* PCでは縦並び */
  gap: 20px;
}

/* ボタンスタイル */
.step-buttons button {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid #020202;
  background-color: #fff;
  color: #0b0b0b;
  font-size: 18px;
  cursor: pointer;
  transition: all 0.3s ease;
}
.step-buttons button.active {
  background-color: #030303;
  color: #fff;
}

/* ステップコンテンツ */
.step-content {
  flex: 1;
}
.step {
  display: none;
}
.step.active {
  display: flex;
  align-items: center;
  gap: 30px;
}
.step img {
  width: 400px;
  height: 280px;
  object-fit: cover;
  border-radius: 15px;
  flex-shrink: 0;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.step-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  text-align: left;
  max-width: 600px;
}
.step-subtit {
  font-size: 20px;
  font-weight: 600;
  color: #777;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin: 0;
}
.step_title {
  font-size: 20px;
  font-weight: bold;
  color: #333;
  margin: 0;
}
.step-text .text-pc {
  font-size: 20px;
  line-height: 1.8;
  color: #444;
  margin: 0;
}


/* スマホ */
@media (max-width: 768px) {
  .flow {padding: 110px 50px 90px;}
  .step-container {
    flex-direction: column; 
    align-items: center;    
    justify-content: center;
    gap: 20px;
    margin-top: 20px;
  }
  .step-buttons {
    flex-direction: row; /* 横並び */
    justify-content: center;
    gap: 15px;
    margin: 0 auto 20px; /* 中央寄せ */
  }
  .step.active {
    flex-direction: column; /* 画像→説明文を縦並び */
    align-items: center;    /* 中央寄せ */
    justify-content: center;
    gap: 30px;
    margin: 0 auto;         /* 全体を中央に */
  }

  .step img {
    width: 260px;
    height:182px;
    object-fit:cover;
    margin: 0 auto;        
  }
  .step-text {
    align-items: center;
    text-align: center;
    margin: 0 auto;
    font-size: 15px;         /* テキストを中央に */
  }
  .step-text .text-pc {
    font-size: 15px;
  }
}

/* タブレット */
@media (min-width: 769px) and (max-width: 1024px) {
  .flow {padding: 110px 50px 90px;}
  .step-container {
    flex-direction: column;
    align-items: center;    /* 中央寄せ */
    justify-content: center;
    gap: 30px;
  }
  .step-buttons {
    flex-direction: row; /* 横並び */
    justify-content: center;
    gap: 20px;
    margin: 0 auto 30px; /* 中央寄せ */
  }
  .step.active {
    flex-direction: column;
    align-items: center;    /* 中央寄せ */
    justify-content: center;
    gap: 25px;
    margin: 0 auto;
  }
  .step img {
    width: 400px;
    height:280px;
    object-fit: cover;
    margin: 0 auto;
  }
  .step-text {
    align-items: center;
    text-align: center;
    margin: 0 auto;
  }
  .step-text .text-pc {
    font-size: 18px;
  }
}

/* PC */
@media (min-width: 1025px) {
  .step-container {
    flex-direction: row; /* 横一列 */
    align-items: flex-start;
    gap: 50px;
  }

  .step-buttons {
    flex-direction: column; /* 縦並び */
    gap: 20px;
    margin-left: 120px; /* 配置はmarginで調整可能 */
  }

 .step.active {
  display: flex;
  align-items: center; /* 子要素を高さ中央に寄せる */
  gap: 30px;           /* 画像とテキストの間隔 */
 }
  .step img {
    width: 400px;
    max-width: none;
  }

.step-text {
  display: flex;
  flex-direction: column;
  justify-content: center; /* 縦方向中央寄せ */
  height: 100%;           
}
}


/* 料金のセクション */
.menu {padding: 80px 20px;background-color: #fafafa;text-align: center;}
.me-title h2 {font-weight: bold;letter-spacing: 2px;margin-bottom: 10px;}
.me-title .int_chach {color: #666;margin-bottom: 40px;}
.menu-container {display: grid;grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));gap: 30px;}
.menu-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 6px 16px rgba(0,0,0,0.1);
  overflow: hidden;
  transition: transform 0.3s ease;
}
.menu-card:hover {transform: translateY(-8px);}
.menu-card img {width: 100%;height: 200px;object-fit: cover;}
.menu-text {padding: 20px;text-align: left;}
.menu-text h3 {font-size: 20px;margin-bottom: 12px;color: #333;}
.menu-text p {font-size: 16px;margin-bottom: 8px;color: #555;}
.menu-text ul {padding-left: 20px;margin: 0;}
.menu-text ul li {
  font-size: 15px;
  line-height: 1.6;
  color: #444;
}
@media (max-width: 768px) {
  .menu-container {
    grid-template-columns: 1fr; 
    justify-items: center;      
  }
  .menu-card {
    width: 100%;                
  }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .menu-container {
    grid-template-columns: 1fr; 
      justify-items: center;    
  }
  .menu-card {width: 60%;  }
}


/* FAQセクション */
.faq {text-align: center;padding: 40px 100px;}
.faq-head{margin-bottom: 30px;}
.faq-header {font-size:20px; color:#f9f9f9; background-color: rgb(126, 111, 111);padding: 12px 10px;}
.faq-answer{font-size: 20px; margin-top: 20px;}
.faq-contents {list-style: none;display: grid;grid-template-columns: 1fr 1fr;gap: 40px;}
.faq-list {list-style: none;padding-left: 0;margin-left: 0;}
.faq-item {border-bottom: 1px dashed #060606;padding-bottom: 16px;margin-bottom: 16px;}
.faq-group{height: 200px;}
.faq-item:last-child {border-bottom: none;}
@media (max-width: 768px) {
  .faq-contents {grid-template-columns: 1fr;gap: 20px;}
  .faq {text-align: center;padding: 40px 20px;}
  .faq-answer{font-size: 15px; margin-top: 20px;}
  .faq-header {font-size:17px;}
  
}
@media (min-width: 769px) and (max-width: 1024px) {
  .faq-contents {grid-template-columns: 1fr;gap: 24px;}
}

/* 店舗情報セクション */
.info-head {text-align: center;}
.info-head p {padding: 8px;margin: 0;}
.info-container {text-align: center;width: 80%;margin: 0 auto; margin-bottom: 80px;}
.info-container iframe {width: 100%;height: 500px;border-radius: 6px;border: none;}
@media (max-width: 768px) {
  .info-container iframe {height: 350px;}
}
@media (min-width: 769px) and (max-width: 1024px) {
  .info-container iframe {height: 400px;}
}

/* お問い合わせフォーム */
.contact {
  padding: 60px 20px;
  text-align: center;
  /* background: #f7f7f7; */
}

.insta-contact {
  display: flex;
  justify-content: center;
}

.insta-contact-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 18px 30px;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  text-decoration: none;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.insta-contact-link:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.1);
  background: #fdf8ff;
}

.insta-icon {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}

.insta-text-main {
  font-size: 18px;
  font-weight: 600;
  color: #333;
  white-space: nowrap;
}

.insta-text-sub {
  font-size: 12px;
  color: #888;
  white-space: nowrap;
}

/* スマホで折り返したい場合 */
@media (max-width: 480px) {
  .insta-contact-link {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 4px;
  }
}
/* .contact-head {text-align: center;margin-bottom: 20px;}
.contact-title {font-size: 30px;margin-bottom: 8px;}
.contact-form {
  width: 80%;
  margin: 0 auto;
  padding: 24px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
  font-family: sans-serif;
}
.contact-form label {
  display: block;
  margin-top: 10px;
  font-weight: bold;
  font-size: 30px;
  color: #333;
}
.contact-form input,textarea {
  width: 100%;
  height: 40px; 
  padding: 12px;
  margin-top: 8px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 16px;
  resize: none; 
  overflow-y: auto; 
  box-sizing: border-box;
}
.contact-form textarea {height: 160px;resize: none;overflow-y: auto;}
.form-button {text-align: center;margin-top: 30px;}
.contact-form button {
  padding: 12px 32px;
  background-color: #333;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 16px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.contact-form button:hover {background-color: #555;}
@media (max-width: 768px) {
  .contact-form {width: 86%; max-width: 100%;padding: 16px;}
  .contact-form textarea {height: 120px;}
  .contact-form button {width: 100%;font-size: 14px;}
  .contact-form label {font-size: 15px;}
  .contact-title {font-size: 25px;}
  .contact-head p{font-size: 15px;}
}
@media (min-width: 769px) and (max-width: 1024px) {
  .contact-form {max-width: 90%;padding: 20px;}
  .contact-form textarea {height: 140px;}
  .contact-form button {font-size: 15px;padding: 10px 24px;}
  .contact-form label {font-size: 20px;}
  .contact-title {font-size: 30px;}
  .contact-head p{font-size: 18px;}
} */
.image-strip {
  display: flex;
  justify-content: center;
  gap: 0;      }           
.image-strip img {
  height: 200px;   
  width: 300px;   
  object-fit: cover; 
}
@media (max-width: 768px) {
  .image-strip img {width: 100%;max-width: 300px;}
}
@media (min-width: 769px) and (max-width: 1024px) {
  .image-strip img {width: 80%;max-width: 400px;}
}

.back-to-top {text-align: center;margin: 40px 0px;padding-bottom: 40px;}
.back-to-top a {
  display: inline-block;
  padding: 10px 20px;
  background-color: #fcfcfc; 
  color: #000000;              
  text-decoration: none;
  border-radius: 5px; 
  font-size: 16px;
  transition: background-color 0.3s;
}
.back-to-top a:hover {background-color: #555;}
.reserve-btn {
  position: fixed;
  right: 20px;
  bottom: 20px;
  background-color: #8a7d77;
  color: #fff;
  padding: 14px 20px;
  border-radius: 30px;
  font-size: 16px;
  text-decoration: none;
  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
  z-index: 9999;
}
.reserve-btn:hover {opacity: 0.85;}



/* フッター */
footer {text-align: center;padding: 4px;margin-top: 8px;background-color: rgb(126, 111, 111);}
.footer-contaner h5 {color: white;padding: 16px;margin: 0;}
.foot-head {font-size: 24px;font-weight: bold;}
.footer-nav {
  display: flex;
  list-style: none;
  gap: 20px;
  padding: 8px;
  margin: 0;
}
.footer-nav li a {text-decoration: none;color: rgb(247, 244, 244);font-weight: bold;}
@media (max-width: 768px) {
  .footer-nav {flex-direction: column;gap: 10px;}
  .footer-contaner h5 {font-size: 13px;}
}
@media (min-width: 769px) and (max-width: 1024px) {
  .footer-nav {flex-direction: column;gap: 12px;}
  .footer-contaner h5 {font-size: 14px;}
}

section {
  opacity: 0;                
  transform: translateY(-50px);
  transition: all 2s ease; 
}
section.show {
  opacity: 1;                 
  transform: translateY(0); 
}
html {scroll-behavior: smooth;}