html,body{
  margin:0;
  padding:0;
  width:100%;
  max-width:100%;
  overflow-x:hidden;
  background:#050507;
}
body{
  font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;
  padding-bottom:78px;
}

/* ===== split block ===== */

/* ===== 台中傳播照片整頁小工具：完整內容版 ===== */
.ktv-pro-photo-page-widget{
  width:100%;
  max-width:100%;
  margin:0 auto;
  background:#050507;
  color:#f3e7dc;
  overflow-x:hidden;
  font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;
}
.ktv-pro-photo-page-widget,
.ktv-pro-photo-page-widget *{
  box-sizing:border-box;
}
.ktv-pro-photo-page-widget img{
  max-width:100%;
  height:auto;
}
.ktv-pro-photo-content-block,
.ktv-pro-photo-page-widget > p,
.ktv-pro-photo-page-widget > h2,
.ktv-pro-photo-page-widget > h3,
.ktv-pro-photo-page-widget > h4,
.ktv-pro-photo-faq-q{
  width:min(100% - 28px, 980px);
  margin-left:auto;
  margin-right:auto;
}
.ktv-pro-photo-content-block{
  padding:42px 18px 18px;
  text-align:center;
}
.ktv-pro-photo-content-block h1{
  margin:0 0 20px;
  color:#f5d89d;
  font-size:clamp(34px,6vw,58px);
  line-height:1.22;
  font-weight:900;
  letter-spacing:.03em;
}
.ktv-pro-photo-content-block p,
.ktv-pro-photo-page-widget > p{
  color:#efe8df;
  font-size:17px;
  line-height:2;
  font-weight:500;
  margin-top:16px;
  margin-bottom:16px;
}
.ktv-pro-photo-page-widget > h2{
  margin-top:42px;
  margin-bottom:16px;
  color:#f5d89d;
  font-size:clamp(26px,4vw,38px);
  line-height:1.35;
  font-weight:900;
}
.ktv-pro-photo-page-widget > h3{
  margin-top:30px;
  margin-bottom:12px;
  color:#f2d59b;
  font-size:clamp(22px,3vw,30px);
  line-height:1.4;
  font-weight:900;
}
.ktv-pro-photo-page-widget > h4{
  margin-top:24px;
  margin-bottom:10px;
  color:#dfbd7a;
  font-size:21px;
  line-height:1.45;
  font-weight:900;
}
.ktv-pro-photo-faq-q{
  margin-top:20px;
  margin-bottom:8px;
  color:#f5d89d;
  font-size:20px;
  font-weight:900;
}
.ktv-pro-photo-page-widget a{
  color:#dfbd7a;
  text-decoration:none;
}
.ktv-pro-photo-page-widget a:hover{
  color:#fff0c4;
}
@media(max-width:768px){
  .ktv-pro-photo-content-block{
    padding:34px 14px 14px;
  }
  .ktv-pro-photo-content-block p,
  .ktv-pro-photo-page-widget > p{
    font-size:16px;
    line-height:1.95;
  }
}

/* ===== split block ===== */

.ktv-pro-site-header{
  width:100%;
  font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;
  position:relative;
  z-index:9999;
}

.ktv-pro-header-desktop{
  height:86px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 34px;
  background:linear-gradient(180deg,#080808,#13110d);
  border-bottom:1px solid rgba(232,190,108,.28);
}

.ktv-pro-logo{
  text-decoration:none;
  line-height:1.2;
}

.ktv-pro-logo span{
  display:block;
  color:#f5d89d;
  font-size:28px;
  font-weight:900;
  letter-spacing:3px;
}

.ktv-pro-logo small{
  display:block;
  margin-top:6px;
  color:#d8b76a;
  font-size:12px;
  letter-spacing:3px;
}

.ktv-pro-desktop-nav{
  display:flex;
  align-items:center;
  gap:22px;
}

.ktv-pro-desktop-nav a{
  color:#f5d89d;
  text-decoration:none;
  font-size:16px;
  font-weight:800;
}

.ktv-pro-desktop-nav a:hover{
  color:#fff2c2;
}

.ktv-pro-line{
  padding:11px 18px;
  border-radius:999px;
  background:linear-gradient(180deg,#f6d58c,#b88738);
  color:#15100a !important;
}

.ktv-pro-header-mobile{
  display:none;
  height:72px;
  align-items:center;
  justify-content:center;
  position:relative;
  background:linear-gradient(180deg,#080808,#13110d);
  border-bottom:1px solid rgba(232,190,108,.28);
}

.ktv-pro-menu-toggle{
position:absolute !important;
left:16px !important;
top:50% !important;
transform:translateY(-50%) !important;

width:74px !important;
height:54px !important;
min-width:74px !important;
min-height:54px !important;

padding:0 !important;

display:flex !important;
align-items:center !important;
justify-content:center !important;

border:none !important;
border-radius:999px !important;

background:
linear-gradient(
180deg,
#8b8574 0%,
#746c5f 100%
) !important;

color:#f1cc82 !important;
font-size:28px !important;
line-height:1 !important;

cursor:pointer !important;

box-shadow:
inset 0 7px 12px rgba(0,0,0,.34),
inset 0 -3px 6px rgba(255,255,255,.12),
0 10px 18px rgba(0,0,0,.35) !important;
}

.ktv-pro-mobile-title{
  font-size:23px;
  font-weight:900;
  letter-spacing:3px;
  color:#f5d89d;
}

.ktv-pro-mobile-menu{
  display:none;
  padding:14px 22px 20px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,242,236,.98));
}

.ktv-pro-mobile-menu.open{
  display:block;
}

.ktv-pro-mobile-menu a{
  display:block;
  padding:15px 0;
  color:#b08847;
  text-decoration:none;
  font-size:17px;
  font-weight:800;
  line-height:1.5;
  border-bottom:1px solid rgba(0,0,0,.06);
}

@media(max-width:767px){

  .ktv-pro-header-desktop{
    display:none;
  }

  .ktv-pro-header-mobile{
    display:flex;
  }

}

@media(min-width:768px){

  .ktv-pro-mobile-menu{
    display:none !important;
  }

}

/* ===== split block ===== */

.ktv-pro-featured-image-card{
  width:100%;
  max-width:900px;
  margin:0 auto;
  padding:12px;
  box-sizing:border-box;
}

.ktv-pro-featured-image-card,
.ktv-pro-featured-image-card *{
  box-sizing:border-box;
}

.ktv-pro-featured-image-card a{
  display:block;
  width:100%;
  overflow:hidden;
  border-radius:26px;
  border:1px solid rgba(218,181,104,.45);
  background:#080808;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.04) inset,
    0 18px 50px rgba(0,0,0,.65);
}

.ktv-pro-featured-image-card img{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  object-position:center 12%;
}

@media(max-width:768px){

  .ktv-pro-featured-image-card{
    max-width:100%;
    padding:8px;
  }

  .ktv-pro-featured-image-card a{
    border-radius:18px;
  }

  .ktv-pro-featured-image-card img{
    aspect-ratio:1/1;
    object-fit:cover;
    object-position:center 12%;
  }

}

/* ===== split block ===== */

.ktv-pro-photo-gallery{
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:34px 14px 42px;
  background:#050507;
  color:#f3e7dc;
  font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;
}

.ktv-pro-photo-gallery *{
  box-sizing:border-box;
}

.ktv-pro-gallery-head{
  text-align:center;
  margin-bottom:26px;
}

.ktv-pro-gallery-head h2{
  margin:0 0 12px;
  font-size:32px;
  line-height:1.35;
  color:#f2d59b;
  font-weight:800;
}

.ktv-pro-gallery-head p{
  max-width:880px;
  margin:0 auto;
  color:#efe8df;
  font-size:16px;
  line-height:1.95;
  font-weight:500;
}

.ktv-pro-gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.ktv-pro-gallery-item{
  display:block;
  width:100%;
  background:#080808;
  border:1px solid rgba(218,181,104,.42);
  border-radius:22px;
  overflow:hidden;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.04) inset,
    0 16px 42px rgba(0,0,0,.62),
    0 0 28px rgba(218,181,104,.10);
}

.ktv-pro-gallery-item img{
  display:block;
  width:100%;
  height:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:22px;
}

@media(max-width:768px){

  .ktv-pro-photo-gallery{
    padding:28px 12px 38px;
  }

  .ktv-pro-gallery-head h2{
    font-size:24px;
  }

  .ktv-pro-gallery-head p{
    font-size:15px;
    line-height:1.9;
  }

  .ktv-pro-gallery-grid{
    grid-template-columns:repeat(2,1fr);
    gap:12px;
  }

  .ktv-pro-gallery-item{
    border-radius:18px;
  }

  .ktv-pro-gallery-item img{
    border-radius:18px;
  }

}

@media(max-width:430px){

  .ktv-pro-gallery-grid{
    grid-template-columns:repeat(1,1fr);
    gap:14px;
  }

}

/* ===== split block ===== */

.ktv-pro-footer-lite{
  background:
  linear-gradient(
    180deg,
    rgba(0,0,0,.58),
    rgba(0,0,0,.78)
  ),
  url("https://ktv.pro/wp-content/uploads/2026/03/Ktv-proWebsite-logo-design-background-image.webp");

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

  color:#f6deb0;

  padding:40px 18px;

  font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;

  line-height:1.9;
}

.ktv-pro-footer-logo{
  text-align:center;
  margin-bottom:26px;
}

.ktv-pro-footer-logo img{
  width:108px;
  max-width:42%;
  height:auto;

  filter:
  drop-shadow(
    0 0 16px rgba(255,215,120,.28)
  );
}

.ktv-pro-footer-lite h2,
.ktv-pro-footer-lite h3,
.ktv-pro-footer-lite h4{
  color:#ffd98b;
  line-height:1.5;
}

.ktv-pro-footer-lite h2{
  font-size:30px;
  margin:0 0 22px;
}

.ktv-pro-footer-lite h3,
.ktv-pro-footer-lite h4{
  font-size:21px;
  margin:34px 0 16px;
}

.ktv-pro-acc{
  margin-bottom:16px;

  background:rgba(8,8,8,.72);

  border:1px solid rgba(255,215,130,.22);

  border-radius:22px;

  overflow:hidden;
}

.ktv-pro-acc summary{
  cursor:pointer;

  list-style:none;

  padding:18px 56px 18px 20px;

  color:#ffd98b;

  font-size:19px;
  font-weight:800;
  line-height:1.7;

  position:relative;
}

.ktv-pro-acc summary::-webkit-details-marker{
  display:none;
}

.ktv-pro-acc summary::after{
  content:"+";

  position:absolute;

  right:20px;
  top:50%;

  transform:translateY(-50%);

  color:#f7d48a;

  font-size:28px;
  font-weight:700;
}

.ktv-pro-acc[open] summary::after{
  content:"－";
}

.ktv-pro-acc-body{
  padding:0 20px 22px;

  border-top:1px solid rgba(255,255,255,.08);
}

.ktv-pro-acc-body p{
  color:#f2ede1;

  font-size:16px;

  margin:18px 0 0;

  line-height:2;
}

.ktv-pro-fast-arrive{
  margin:14px 0 26px;

  padding:14px 18px;

  border-radius:18px;

  background:rgba(255,215,130,.06);

  border:1px solid rgba(255,215,130,.12);

  color:#ffe1a0;

  font-size:15px;
  line-height:1.9;
  font-weight:700;

  text-align:center;

  backdrop-filter:blur(10px);
}

.ktv-pro-footer-lite ul{
  list-style:none;
  padding:0;
  margin:0;
}

.ktv-pro-footer-lite li{
  color:#fff;

  padding:13px 0;

  border-bottom:1px solid rgba(255,255,255,.1);

  font-size:16px;
}

.ktv-pro-footer-lite a{
  color:#f7d48a;
  text-decoration:none;
}

.ktv-pro-footer-lite a:hover{
  color:#ffe6a8;
}

.ktv-pro-i{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  min-width:28px;

  margin-right:8px;

  color:#f7d48a;

  font-weight:900;
}

.ktv-pro-copy{
  margin-top:38px;

  padding-top:22px;

  border-top:1px solid rgba(255,255,255,.12);

  color:#d0d0d0;

  font-size:14px;
}

.ktv-pro-copy a{
  margin-left:10px;

  color:#ffe2a8 !important;
  -webkit-text-fill-color:#ffe2a8 !important;

  text-decoration:underline !important;
  text-underline-offset:4px;

  font-weight:700;
}

.ktv-pro-floating-bar{
  position:fixed;

  left:50%;
  bottom:10px;

  transform:translateX(-50%);

  z-index:99999;

  width:calc(100% - 14px);
  max-width:920px;

  display:grid;
  grid-template-columns:repeat(4,1fr);

  background:rgba(8,8,8,.96);

  border:1px solid rgba(255,215,130,.62);

  border-radius:18px;

  overflow:hidden;

  box-shadow:
  0 0 0 1px rgba(255,215,130,.08) inset,
  0 0 12px rgba(255,198,82,.14);

  backdrop-filter:blur(12px);
}

.ktv-pro-float-item{
  text-decoration:none;

  color:#f8d98b;

  text-align:center;

  padding:9px 2px 8px;

  border-right:1px solid rgba(255,215,130,.22);

  font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;

  transition:.22s ease;
}

.ktv-pro-float-item:last-child{
  border-right:none;
}

.ktv-pro-float-item:hover{
  background:rgba(255,215,130,.05);
}

.ktv-pro-float-icon{
  display:block;

  font-size:18px;
  font-weight:900;

  line-height:1;

  margin-bottom:5px;

  color:#ffd36f;
}

.ktv-pro-float-item strong{
  display:block;

  font-size:12px;
  line-height:1.25;

  font-weight:800;

  color:#ffe2a0;
}

.ktv-pro-float-item small{
  display:block;

  margin-top:3px;

  font-size:10px;
  line-height:1.2;

  color:#c9aa63;
}

body{
  padding-bottom:78px;
}

@media(max-width:768px){

  .ktv-pro-footer-lite{
    padding:34px 16px;
    background-position:center top;
  }

  .ktv-pro-footer-logo img{
    width:92px;
  }

  .ktv-pro-footer-lite h2{
    font-size:27px;
  }

  .ktv-pro-footer-lite h3,
  .ktv-pro-footer-lite h4{
    font-size:19px;
  }

  .ktv-pro-acc summary{
    font-size:17px;
    padding:16px 48px 16px 18px;
  }

  .ktv-pro-acc-body{
    padding:0 18px 20px;
  }

  .ktv-pro-acc-body p,
  .ktv-pro-footer-lite li{
    font-size:15px;
  }

  .ktv-pro-fast-arrive{
    font-size:14px;
    padding:13px 16px;
    line-height:1.85;
  }

  .ktv-pro-i{
    min-width:24px;
    margin-right:7px;
  }

  .ktv-pro-floating-bar{
    bottom:8px;
    width:calc(100% - 10px);
    border-radius:16px;
  }

  .ktv-pro-float-item{
    padding:8px 2px 7px;
  }

}
