/* 頁面樣式: renovation */

*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Noto Sans TC',Arial,sans-serif;background:#fffbf5;color:#2c1e0f;line-height:1.7;}
a{text-decoration:none;color:inherit;}

/* NAV */
nav{background:#fff;border-bottom:2px solid #f0a500;display:flex;align-items:center;justify-content:space-between;padding:0 40px;height:62px;position:sticky;top:0;z-index:100;box-shadow:0 1px 4px rgba(0,0,0,.06);}
.logo{font-size:22px;font-weight:700;color:#d4700a;letter-spacing:1px;}
.logo span{color:#2c1e0f;font-weight:400;}
.navlinks{display:flex;gap:28px;}
.navlinks a{color:#6b5030;font-size:14px;transition:color .2s;}
.navlinks a:hover,.navlinks a.active{color:#d4700a;font-weight:500;}
.nav-cta{background:#d4700a;color:#fff;font-size:13px;font-weight:600;padding:9px 22px;border-radius:24px;transition:background .2s;}
.nav-cta:hover{background:#b85d08;}

/* HERO */
.hero{background:#fff8ee;padding:64px 40px 56px;border-bottom:1px solid #f5ddb0;}
.hero-inner{max-width:860px;}
.page-tag{display:inline-block;background:#fff3d6;color:#854F0B;font-size:12px;font-weight:600;padding:5px 16px;border-radius:20px;margin-bottom:20px;border:1px solid #f0d08a;letter-spacing:.5px;}
.hero h1{font-size:38px;font-weight:700;line-height:1.3;color:#2c1e0f;margin-bottom:16px;}
.hero h1 em{font-style:normal;color:#d4700a;}
.hero p{font-size:16px;color:#6b5030;max-width:600px;margin-bottom:32px;}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;}
.btn-p{background:#d4700a;color:#fff;font-size:15px;font-weight:600;padding:14px 28px;border-radius:28px;display:inline-flex;align-items:center;gap:8px;transition:background .2s;}
.btn-p:hover{background:#b85d08;}
.btn-s{background:#fff;color:#d4700a;font-size:15px;font-weight:600;padding:14px 28px;border-radius:28px;display:inline-flex;align-items:center;gap:8px;border:2px solid #f0a500;transition:all .2s;}
.btn-s:hover{background:#fff3d6;}

/* BANNER */
.banner{background:#f0a500;padding:13px 40px;display:flex;gap:32px;justify-content:center;flex-wrap:wrap;}
.bi{font-size:13px;color:#2c1000;display:flex;align-items:center;gap:8px;font-weight:600;}

/* SECTION */
.sec{padding:64px 40px;}
.sec-alt{background:#fff;}
.sec-tag{font-size:11px;letter-spacing:2px;color:#d4700a;font-weight:700;margin-bottom:8px;}
.sec h2{font-size:26px;font-weight:700;color:#2c1e0f;margin-bottom:10px;}
.sec .desc{font-size:15px;color:#8a6030;margin-bottom:36px;max-width:620px;}

/* HERO SHOWCASE — big photo + caption */
.showcase{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:16px;}
.showcase-main img{width:100%;height:360px;object-fit:cover;border-radius:12px;border:2px solid #f0d090;}
.showcase-sub{display:grid;grid-template-rows:1fr 1fr;gap:14px;}
.showcase-sub img{width:100%;height:100%;object-fit:cover;border-radius:10px;border:1px solid #f0d090;}
.photo-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;}
.photo-strip img{width:100%;height:200px;object-fit:cover;border-radius:10px;border:1px solid #f0d090;}

/* SERVICE CARDS */
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.svc-card{background:#fff;border:1.5px solid #f0d090;border-radius:12px;padding:22px 18px;text-align:center;transition:border-color .2s,transform .15s;}
.svc-card:hover{border-color:#d4700a;transform:translateY(-2px);}
.svc-card.highlight{border-color:#d4700a;border-width:2px;background:#fffbf5;}
.svc-icon{font-size:32px;margin-bottom:12px;}
.svc-card h3{font-size:15px;font-weight:700;color:#2c1e0f;margin-bottom:8px;}
.svc-card p{font-size:12px;color:#8a6030;line-height:1.65;}
.svc-badge{display:inline-block;background:#fff3d6;color:#854F0B;font-size:10px;font-weight:600;padding:2px 8px;border-radius:8px;border:1px solid #f0d090;margin-top:8px;}

/* FEATURE — alternating layout */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-bottom:56px;}
.feature:last-child{margin-bottom:0;}
.feature.reverse .feat-img{order:2;}
.feature.reverse .feat-text{order:1;}
.feat-img img{width:100%;height:280px;object-fit:cover;border-radius:12px;border:1.5px solid #f0d090;}
.feat-text h3{font-size:20px;font-weight:700;color:#2c1e0f;margin-bottom:10px;}
.feat-text p{font-size:14px;color:#6b5030;margin-bottom:14px;line-height:1.75;}
.feat-tags{display:flex;flex-wrap:wrap;gap:6px;}
.tag-sm{display:inline-block;background:#fff8ee;color:#854F0B;font-size:11px;font-weight:600;padding:4px 10px;border-radius:10px;border:1px solid #f0d090;}

/* PROCESS */
.process{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;position:relative;}
.proc-step{background:#fff;border:1.5px solid #f0d090;border-radius:12px;padding:18px 14px;text-align:center;position:relative;}
.proc-step.active{border-color:#d4700a;border-width:2px;}
.proc-n{width:36px;height:36px;border-radius:50%;background:#f0a500;color:#2c1000;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;}
.proc-step h4{font-size:13px;font-weight:700;color:#2c1e0f;margin-bottom:5px;}
.proc-step p{font-size:11px;color:#8a6030;line-height:1.5;}
.proc-arrow{display:flex;align-items:center;justify-content:center;font-size:20px;color:#f0a500;padding-top:18px;}

/* FAQ */
.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.faq-item{background:#fff;border:1.5px solid #f0d090;border-radius:12px;padding:20px;}
.faq-item h4{font-size:14px;font-weight:700;color:#d4700a;margin-bottom:8px;}
.faq-item p{font-size:13px;color:#6b5030;line-height:1.65;}

/* CTA */
.cta-wrap{background:#fff8ee;border:2px solid #f0a500;border-radius:16px;padding:44px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.cta-wrap h2{font-size:24px;font-weight:700;color:#2c1e0f;}
.cta-wrap p{font-size:14px;color:#8a6030;margin-top:8px;line-height:1.6;}
.cta-btns{display:flex;gap:12px;flex-wrap:wrap;}
.line-btn{background:#06c755;color:#fff;font-size:15px;font-weight:600;padding:14px 26px;border-radius:28px;display:inline-flex;align-items:center;gap:8px;}
.line-btn:hover{background:#05a847;}
.visit-btn{background:#fff;color:#d4700a;font-size:15px;font-weight:600;padding:14px 26px;border-radius:28px;display:inline-flex;align-items:center;gap:8px;border:2px solid #d4700a;}
.visit-btn:hover{background:#fff3d6;}

/* FOOTER */
footer{background:#2c1e0f;padding:24px 40px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
footer p{font-size:13px;color:#7a5a30;}
.flinks a{font-size:13px;color:#7a5a30;margin-left:20px;}
.flinks a:hover{color:#f0a500;}

/* RWD */
@media(max-width:900px){
  nav{padding:0 20px;}
  .navlinks{display:none;}
  .hero{padding:40px 20px;}
  .hero h1{font-size:28px;}
  .sec{padding:44px 20px;}
  .showcase{grid-template-columns:1fr;}
  .showcase-sub{grid-template-rows:auto auto;grid-template-columns:1fr 1fr;}
  .photo-strip{grid-template-columns:1fr 1fr;}
  .svc-grid{grid-template-columns:1fr 1fr;}
  .feature{grid-template-columns:1fr;gap:20px;}
  .feature.reverse .feat-img{order:0;}
  .feature.reverse .feat-text{order:1;}
  .process{grid-template-columns:1fr 1fr;}
  .faq-list{grid-template-columns:1fr;}
  .cta-wrap{flex-direction:column;text-align:center;}
  .banner{padding:14px 20px;gap:16px;}
  footer{padding:20px;flex-direction:column;text-align:center;gap:8px;}
  .flinks a{margin:0 10px;}
}

/* MOBILE HAMBURGER */
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;z-index:200;}
.hamburger span{display:block;width:24px;height:2px;background:#d4700a;border-radius:2px;transition:all .3s;}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu{display:none;position:fixed;top:62px;left:0;right:0;background:#fff;border-bottom:2px solid #f0a500;box-shadow:0 4px 16px rgba(0,0,0,.12);z-index:99;padding:12px 0;}
.mobile-menu a{display:block;padding:14px 28px;font-size:15px;color:#6b5030;border-bottom:1px solid #f5e8cc;}
.mobile-menu a:last-child{border-bottom:none;}
.mobile-menu a:hover,.mobile-menu a.active{color:#d4700a;font-weight:600;background:#fffbf5;}
.mobile-menu.open{display:block;}
@media(max-width:768px){
  .hamburger{display:flex;}
}
