/*body*/
.row [class^="col-"] {
  padding:10px;
}


body[data-type="fullpage"]:not(#managehome) #wrap > :not(:last-child) { margin-bottom: 0px; }


#bodyinpage.rwd-collapse.viewmode.default.about-us .fcol.fcol-header .h1title{
  display:none;
}




/*----------top-----------*/
.navbar-nav > li > a {
    color: #fff;
}


.topnavbar {
  background: linear-gradient(135deg,#1b88d4, #083360);
  top:0px;
  position: relative;
  z-index:100;
  width:100%;
  padding: .6rem 0;
  height: 100px;
}



.topnavbar .container::after {
  content: "";
  display: inline-block;
}

.topnavbar .container {
  display: flex;
  align-items: center;
  justify-content: space-around;
   padding-top: 0px;
}

.topnavbar .container #logo,
.topnavbar .container #nav {
  width: 100%;
}

.topnavbar .container #nav {
  text-align: right;
  margin-top: 15px;
}






/*Banner*/
.swiper-container {
  height: auto !important;
}

.swiper-wrapper, .swiper-slide {
  height: 0 !important;
  padding-bottom: calc(800 / 1920 * 100%); /*  ` N Ϥ    ׻P e ׭n h      */
}

.swiper-slide {
  width: 100% !important;
}




/*--------About_1---------*/
/* 主容器 */
        .ab.container {
            max-width: 1200px;
            margin: 0px auto;
            padding: 0 20px;
            position: relative;
            box-sizing: border-box;
        }

        /* 背景大型浮水印文字 (About us) */
        .bg-text {
            position: absolute;
            top: -40px;
            right: 0;
            font-size: 180px;
            font-weight: 800;
            color: #efefef; /* 極淡的灰色 */
            z-index: 1;
            user-select: none; /* 防止文字被選取 */
        }

        /* Flex 佈局 */
        .content-wrapper {
            display: flex;
            gap: 60px;
            align-items: flex-start;
            position: relative;
            z-index: 2; /* 確保內容在浮水印上方 */
        }

        /* 左側大圖區塊 */
        .image-main {
            flex: 0 0 550px; /* 固定寬度 */
        }
        .image-main img {
            width: 100%;
            height: 520px;
            object-fit: cover;
            border-radius: 24px;
            box-shadow: 0 15px 35px rgba(0,0,0,0.1);
        }

        /* 右側文字區塊 */
        .text-block {
            flex: 1;
            padding-top: 60px;
        }

        /* 公司名稱與子標題 */
        .subtitle {
            font-size: 18px;
            color: #333;
            margin-bottom: 8px;
        }
        .highlight-text {
            font-weight: bold;
            color: #ff8c00; /* 參考原圖的橙色 */
        }

        /* 主標題 */
        .main-title {
            font-size: 38px;
            font-weight: 800;
            line-height: 1.3;
            margin-bottom: 35px;
            letter-spacing: 1px;
        }

        /* 內文描述 */
        .description {
            font-size: 16px;
            color: #666;
            line-height: 1.8;
            margin-bottom: 45px;
            text-align: justify;
        }

        /* 藍色按鈕 */
        .btn-more {
            display: inline-flex;
            align-items: center;
            background-color: #004a9f; /* 參考原圖的深藍色 */
            color: #fff;
            padding: 16px 45px;
            border-radius: 35px;
            text-decoration: none;
            font-size: 16px;
            font-weight: bold;
            transition: background-color 0.3s ease, transform 0.2s ease;
        }
        .btn-more:hover {
            background-color: #003a80;
            transform: translateY(-2px);
        }
        .btn-more span {
            margin-left: 12px;
            font-size: 18px;
        }

        /* 右下角輔助小圖 */
        .image-sub {
            position: absolute;
            bottom: -60px;
            right: 0;
            width: 200px;
            height: 200px;
            z-index: 1; /* 在主內容下方，但在浮水印上方 */
        }
        .image-sub img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 24px;
            box-shadow: 0 10px 25px rgba(0,0,0,0.1);
        }

        /* 響應式設計 (手機端) */
        @media (max-width: 992px) {
            .content-wrapper {
                flex-direction: column;
                gap: 40px;
            }
            .image-main {
                flex: 0 0 auto;
                width: 100%;
            }
            .image-main img {
                height: 350px;
            }
            .text-block {
                padding-top: 0;
            }
            .main-title {
                font-size: 30px;
            }
            .bg-text {
                font-size: 100px;
                top: -20px;
            }
            .image-sub {
                display: none; /* 手機端隱藏小圖以保持簡潔 */
            }
        }



/*-----------About_2---------*/
.page-wrapper {
    font-family: 'PingFang TC', 'Microsoft JhengHei', sans-serif;
    background-image: radial-gradient(rgba(0, 0, 0, 0.02) 1px, transparent 0);
    background-size: 24px 24px;
    position: relative;
    min-height: 100vh;
    /*padding: 60px 20px;*/
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 80vh;
    overflow: hidden;
    /*box-sizing: border-box;*/
}



#bodyinpage.rwd-collapse.viewmode.default.about-us .fcol.fcol-2 {
    position: relative; 
    z-index: 1; 
    margin-top:5%;
}


#bodyinpage.rwd-collapse.viewmode.default.about-us .fcol.fcol-2::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 620px; 
    background:url(https://static.iyp.tw/409928/files/413c1031-e277-4d8d-8990-13705769b60b.jpg)no-repeat;
    /*background-color: #f0f2f5; */     
    border-top-left-radius: 120px;     
    z-index: -1; 
}

/* 獨立背景區塊
.fixed-arc-bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 250px;
    background-color: #ebebeb; 
    border-top-left-radius: 150px;
    z-index: 1;
}*/


/* 主要卡片容器 (仿照圖二大圖背景) */
.main-card {
    /*background: #ffffff;*/
    width: 100%;
    max-width: 1100px;
    border-radius: 24px;
    /*box-shadow: 0 10px 30px rgba(0,0,0,0.05);*/
    padding: 50px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 50px;
    align-items: center;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
     position: relative;
    z-index: 2; /* 確保內容壓在背景上 */
    /* 卡片其餘樣式... */

}

/* 背景裝飾線條 */
.bg-deco-circle {
    position: absolute;
    right: -50px;
    top: -50px;
    width: 300px;
    height: 300px;
    border: 2px dashed #eef1f6;
    border-radius: 50%;
    pointer-events: none;
    opacity: 0.7;
}

/* 左側區塊：圓盤圖表 */
.left-chart-container {
    flex: 1;
    min-width: 350px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

/* 圖一的核心價值圓盤 */
.core-value-disc {
    width: 350px;
    height: 350px;
    border-radius: 50%;
    box-shadow: 0 15px 35px rgba(0,0,0,0.08);
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    background: conic-gradient(
        #e76f51 0% 33.33%, 
        #2a9d8f 33.33% 66.66%, 
        #74c69d 66.66% 100%
    );
}

/* 內圈白色核心 */
.disc-center {
    width: 150px;
    height: 150px;
    background: #ffffff;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-shadow: inset 0 2px 8px rgba(0,0,0,0.1), 0 4px 10px rgba(0,0,0,0.05);
    z-index: 2;
}

.disc-center-text {
    font-size: 20px;
    font-weight: bold;
    color: #2b3a4a;
    letter-spacing: 2px;
}

/* 圓盤文字基礎定位 */
.disc-label {
    position: absolute;
    text-align: center;
    color: #ffffff;
    z-index: 1;
}

.label-title {
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 1px;
}

.label-sub {
    font-size: 11px;
    opacity: 0.9;
    margin-top: 2px;
}

/* 各別圓盤文字定位 */
.label-sharing {
    top: 55px;
    left: 65px;
}

.label-collaboration {
    top: 55px;
    right: 45px;
}

.label-harmony {
    bottom: 25px;
}

/* 右側區塊：文字描述清單 */
.right-content-container {
    flex: 1.2;
    min-width: 320px;
    display: flex;
    flex-direction: column;
    gap: 28px;
}

/* 大標題樣式 */
.content-header .main-title {
    font-size: 32px;
    color: #54c0db;
    margin: 0 0 8px 0;
    font-weight: 700;
    letter-spacing: 1px;
}

.content-header .sub-title {
    font-size: 15px;
    color: #b8b8b8;
    margin: 0;
    line-height: 1.5;
}

/* 仿圖二橫條卡片基礎樣式 */
.feature-item {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    background: #fafbfc;
    padding: 16px;
    border-radius: 12px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.feature-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.03);
}

/* 微陰影圓形圖示框 */
.main-card .icon-box {
    width: 48px;
    height: 48px;
    background: #ffffff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
    flex-shrink: 0;
}

/* 橫條內文字樣式 */
.main-card .item-text h4 {
    font-size: 17px;
    color: #0f2537;
    margin: 0 0 4px 0;
    font-weight: bold;
}

.main-card .item-text p {
    font-size: 14px;
    color: #5a6578;
    margin: 0;
    line-height: 1.6;
}

/* 三個項目各自對應圖一的左側邊框顏色 */
.item-sharing {
    border-left: 4px solid #e76f51;
}

.item-collaboration {
    border-left: 4px solid #2a9d8f;
}

.item-harmony {
    border-left: 4px solid #74c69d;
}

/* 按鈕區塊與仿圖二 VIEW MORE 按鈕 */
.btn-container {
    margin-top: 10px;
}

.btn-view-more {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: #b8001f;
    color: #ffffff;
    text-decoration: none;
    padding: 12px 30px;
    font-size: 14px;
    font-weight: bold;
    border-radius: 0 16px 16px 16px;
    box-shadow: 0 5px 15px rgba(184, 0, 31, 0.25);
    letter-spacing: 1px;
    transition: background 0.2s ease;
}

.btn-view-more:hover {
    background: #960017;
}

.btn-view-more .arrow {
    font-size: 12px;
}




/*------About_3---------*/
#bodyinpage.rwd-collapse.viewmode.default.about-us .fcol.fcol-3{
  background:#f8fbff;
  background-image: linear-gradient(rgba(0,110,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(0,110,255,.04) 1px, transparent 1px);
  background-size: 40px 40px;
  margin-top:5%;
  padding:60px 20px;
}


/*#bodyinpage.rwd-collapse.viewmode.default.about-us .fcol.fcol-3::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(0,110,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(0,110,255,.04) 1px, transparent 1px);
  background-size: 40px 40px;
  overflow:hidden;
}*/

/*.philosophy-section{
    position:relative;
    padding:100px 20px;
    background:#f8fbff;
    overflow:hidden;
}*/

/*.philosophy-section::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:
    linear-gradient(rgba(0,110,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,110,255,.04) 1px, transparent 1px);
    background-size:40px 40px;
}*/

.philosophy-header{
    max-width:800px;
    margin:0 auto 70px;
    text-align:center;
    position:relative;
    z-index:2;
}

.section-tag{
    display:inline-block;
    padding:8px 18px;
    border-radius:50px;
    background:#eaf3ff;
    color:#0066ff;
    font-size:13px;
    letter-spacing:2px;
}

.philosophy-header h2{
    font-size:48px;
    margin:20px 0;
    color:#111;
    font-weight:700;
}

.philosophy-header p{
    color:#666;
    line-height:1.9;
    font-size:16px;
}

.philosophy-grid{
    max-width:1400px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    position:relative;
    z-index:2;
}

.philosophy-card{
    position:relative;
    padding:45px 35px;
    border-radius:24px;
    background:#fff;
    overflow:hidden;

    opacity:0;
    transform:translateY(60px);

    transition:
    transform .5s ease,
    box-shadow .5s ease;
}

.philosophy-card::before{
    content:"";
    position:absolute;
    top:-120px;
    right:-120px;
    width:250px;
    height:250px;
    border-radius:50%;
    background:linear-gradient(
        135deg,
        rgba(0,120,255,.15),
        transparent
    );
}

.philosophy-card:hover{
    transform:translateY(-12px);
    box-shadow:
    0 25px 60px rgba(0,80,200,.12);
}

.icon-box{
    width:72px;
    height:72px;
    border-radius:18px;
    background:linear-gradient(
        135deg,
        #0066ff,
        #00b4ff
    );
    color:#fff;

    display:flex;
    align-items:center;
    justify-content:center;

    margin-bottom:25px;
}

.philosophy-card h3{
    font-size:28px;
    margin-bottom:15px;
    color:#111;
}

.philosophy-card p{
    line-height:1.9;
    color:#666;
}

.card-number{
    position:absolute;
    right:25px;
    bottom:15px;
    font-size:80px;
    font-weight:800;
    color:#f1f6fc;
    line-height:1;
     z-index: -1;
}

.philosophy-card.show{
    opacity:1;
    transform:translateY(0);
}

@media(max-width:991px){

    .philosophy-grid{
        grid-template-columns:1fr;
    }

    .philosophy-header h2{
        font-size:38px;
    }
}




/*------About_4-----*/
.service-section{
    position:relative;
    padding:100px 20px;
    overflow:hidden;
}


.service-title{
    text-align:center;
    max-width:700px;
    margin:0 auto 70px;
    position:relative;
    z-index:2;
}

.service-title h2{
    font-size:52px;
    color:#54c0db;
    margin-bottom:15px;
}

.service-title span{
    width:80px;
    height:4px;
    display:block;
    margin:auto;
    background:linear-gradient(90deg,#00c6ff,#0066ff);
    border-radius:50px;
}

.service-title p{
    margin-top:25px;
    color:#b8b8b8;
    line-height:1.9;
    font-size:17px;
}

.service-grid{
    max-width:1400px;
    margin:auto;

    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;

    position:relative;
    z-index:2;
}

.service-card{
    position:relative;
    background:#fff;
    border-radius:25px;
    overflow:hidden;

    box-shadow:
    0 15px 40px rgba(0,60,150,.08);

    transition:.4s;
}

.service-card:hover{
    transform:translateY(-12px);

    box-shadow:
    0 25px 60px rgba(0,90,255,.18);
}

.card-image{
    height:230px;
    overflow:hidden;
}

.card-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.8s;
}

.service-card:hover img{
    transform:scale(1.08);
}

.card-image:after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    top:0;
    height:230px;

    background:
    linear-gradient(
    to top,
    rgba(0,40,90,.4),
    transparent);
}

.service-icon{
    position:absolute;

    left:50%;
    top:190px;
    transform:translateX(-50%);
    width:72px;
    height:72px;
    border-radius:50%;
    background:
    linear-gradient(135deg,#00c6ff,#4dcbd3);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:28px;
    box-shadow:
    0 10px 25px rgba(0,102,255,.35);
}

.card-content{
    padding:65px 25px 35px;
    text-align:center;
}

.card-content h3{
    font-size:26px;
    margin-bottom:18px;
    color:#222;
}

.card-content p{
    color:#666;
    line-height:1.6;
    min-height:60px;
    text-align: justify;
}

.card-content a{
    display:inline-block;

    margin-top:15px;

    padding:13px 30px;

    border-radius:50px;

    background:
    linear-gradient(
    135deg,
    #00c6ff,
    #0066ff);

    color:#fff;
    text-decoration:none;

    transition:.4s;
}

.card-content a:hover{
    transform:translateY(-3px);
}

@media(max-width:1200px){

    .service-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:768px){

    .service-grid{
        grid-template-columns:1fr;
    }

    .service-title h2{
        font-size:38px;
    }

}




/*----------About_4----------*/
#bodyinpage.rwd-collapse.viewmode.default.about-us .fcol.fcol-4 {
    background:url(https://static.iyp.tw/409928/files/50f5b908-25a3-4256-bd0c-ce5da2fe91e4.jpg)no-repeat;
    background-size:cover;
}



/*----------About_5~6----------*/
#bodyinpage.rwd-collapse.viewmode.default.about-us .fcol.fcol-5,
#bodyinpage.rwd-collapse.viewmode.default.about-us .fcol.fcol-6{
  display:none;
}



/*----------Form----------*/
.mark{
  background:none;
}



/*----------Footer----------*/
#foot-nav{
  display:none;
}

/* 頁尾總容器 */
.site-footer {
  /*background-color: #1a1a1a;*/
  color: #ffffff;
  padding: 40px 20px;
  font-family: "Microsoft JhengHei", sans-serif;
}

.footer-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

/* --- 左側區塊：垂直排列聯絡資訊與 Icon --- */
.footer-left {
  display: flex;
  flex-direction: column; /* 改為上下排列，讓 Icon 呈現在資訊下方或旁邊 */
  gap: 25px;
  flex: 1;
  min-width: 300px;
}

.contact-info h3 {
  font-size: 16px;
  font-weight: normal;
  margin-bottom: 15px;
  color: #ffffff;
}

.contact-info p {
  font-size: 14px;
  color: #cccccc;
  margin: 8px 0;
  line-height: 1.5;
}

/* --- Icon 連結樣式 --- */
.footer-icons {
  display: flex;
  gap: 15px; /* Icon 之間的間距 */
}

.icon-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%; /* 圓形背景 */
  background-color: #333333; /* 預設深灰底色 */
  color: #ffffff;
  font-size: 18px;
  text-decoration: none;
  transition: all 0.3s ease;
}

/* 各別 Icon 滑鼠懸停（Hover）時的品牌官方專屬顏色 */
.icon-link.phone:hover {
  background-color: #0088cc; /* 電話藍 */
}

.icon-link.email:hover {
  background-color: #ea4335; /* Google紅 */
}

.icon-link.facebook:hover {
  background-color: #1877f2; /* FB藍 */
}

.icon-link.line:hover {
  background-color: #06c755; /* LINE綠 */
}

/* --- 右側頁籤導覽樣式 --- */
.footer-right {
  display: flex;
  align-items: flex-start;
}

.footer-nav {
  display: flex;
  gap: 30px;
}

.nav-item {
  color: #cccccc;
  text-decoration: none;
  font-size: 16px;
  transition: color 0.3s ease;
}

.nav-item:hover, 
.nav-item.active {
  color: #ffffff;
  font-weight: bold;
}

/* 響應式網頁設計 */
@media (max-width: 768px) {
  .footer-container {
    flex-direction: column-reverse;
    gap: 35px;
  }
  
  .footer-nav {
    width: 100%;
    justify-content: space-between;
  }
}

