:root{--ink:#10202e;--muted:#5d6b77;--line:#d8e2ea;--surface:#f5f8fa;--white:#fff;--blue:#1167b1;--blue-deep:#0a3f73;--cyan:#14a9c9;--green:#18a26c;--gold:#ffd579;--shadow:0 24px 70px #10202e2e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--white);margin:0;font-family:Noto Sans TC,Microsoft JhengHei,system-ui,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-header{z-index:20;min-height:78px;color:var(--white);background:linear-gradient(#081927c2,#08192700);justify-content:space-between;align-items:center;gap:22px;padding:14px clamp(18px,4vw,58px);display:flex;position:fixed;top:0;left:0;right:0}.brand img{filter:drop-shadow(0 8px 20px #00000047);width:clamp(180px,24vw,300px);height:auto}.nav-links{align-items:center;gap:clamp(14px,2.5vw,34px);font-weight:800;display:flex}.header-action,.button{white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-weight:900;display:inline-flex}.header-action{color:var(--ink);background:var(--white)}.hero{min-height:92vh;color:var(--white);isolation:isolate;position:relative;overflow:hidden}.hero-image,.hero-overlay{width:100%;height:100%;position:absolute;inset:0}.hero-image{object-fit:cover;object-position:center;z-index:-3}.hero-overlay{z-index:-2;background:linear-gradient(90deg,#081927eb,#081927a8 42%,#0819272e),linear-gradient(#08192714 42%,#08192780)}.hero-content{width:min(760px,100% - 36px);margin-left:clamp(18px,7vw,96px);padding:clamp(132px,18vh,190px) 0 190px}.eyebrow{color:var(--cyan);text-transform:uppercase;margin:0 0 14px;font-size:13px;font-weight:900}.hero h1,.section-heading h2,.split-copy h2,.contact-section h2,.admin-hero h1{letter-spacing:0;margin:0;line-height:1.12}.hero h1{text-wrap:balance;max-width:720px;font-size:clamp(42px,7vw,82px)}.hero-copy{color:#ffffffdb;max-width:680px;margin:24px 0 0;font-size:clamp(17px,2vw,21px)}.hero-actions,.contact-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.button.primary{color:var(--white);background:var(--blue);box-shadow:0 14px 36px #1167b152}.button.secondary{color:var(--white);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border-color:#ffffff61}.button.ghost{color:var(--blue-deep);border-color:var(--line);background:var(--white)}.hero-panel{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;grid-template-columns:repeat(3,1fr);gap:1px;display:grid;position:absolute;bottom:28px;left:clamp(18px,7vw,96px);right:clamp(18px,7vw,96px);overflow:hidden}.hero-panel div{background:#ffffff14;padding:20px}.hero-panel strong,.hero-panel span,.trust-strip b,.trust-strip span{display:block}.hero-panel strong{font-size:18px}.hero-panel span{color:#ffffffd1}.trust-strip{background:var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.trust-strip div{background:var(--surface);padding:26px clamp(18px,4vw,48px)}.trust-strip b{color:var(--blue-deep);font-size:19px}.trust-strip span{color:var(--muted)}.section{padding:clamp(68px,9vw,112px) clamp(18px,5vw,72px)}.section-heading{width:min(780px,100%);margin-bottom:36px}.section-heading h2,.split-copy h2,.contact-section h2{max-width:780px;font-size:clamp(32px,4vw,52px)}.section-heading p:not(.eyebrow),.split-copy p,.contact-section p{color:var(--muted);font-size:18px}.service-grid,.works-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.service-card{border:1px solid var(--line);background:var(--white);border-radius:8px;min-height:246px;padding:26px;box-shadow:0 14px 34px #10202e0f}.card-icon{width:48px;height:36px;color:var(--white);background:var(--blue);border-radius:8px;place-items:center;font-size:14px;font-weight:900;display:inline-grid}.service-card h3,.timeline-item h3{margin:22px 0 8px;font-size:23px}.service-card p,.timeline-item p{color:var(--muted);margin:0}.process-band{color:var(--white);background:linear-gradient(135deg,#0a3f73f5,#1167b1e6)}.process-band .timeline-item p{color:#ffffffc2}.timeline{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.timeline-item{background:#ffffff14;border:1px solid #ffffff2e;border-radius:8px;padding:24px}.timeline-item span{width:42px;height:42px;color:var(--blue-deep);background:var(--white);border-radius:50%;place-items:center;font-weight:900;display:grid}.works-section{background:linear-gradient(#fff 0%,#f5f8fa 100%)}.work-card{border:1px solid var(--line);min-height:320px;color:var(--white);background:var(--ink);cursor:pointer;font:inherit;text-align:left;border-radius:8px;padding:0;display:block;position:relative;overflow:hidden}.work-card img{object-fit:cover;width:100%;height:100%;min-height:320px;transition:transform .24s}.work-card:hover img{transform:scale(1.035)}.work-card:after{content:"";background:linear-gradient(#08192700,#081927d1);height:42%;position:absolute;inset:auto 0 0}.work-card span{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:8px;padding:6px 12px;font-weight:900;position:absolute;bottom:16px;left:18px}.split-section{background:var(--surface);grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);align-items:center;gap:clamp(28px,6vw,80px);display:grid}.check-list{gap:12px;margin:26px 0 0;padding:0;list-style:none;display:grid}.check-list li{padding-left:32px;font-weight:700;position:relative}.check-list li:before{width:22px;height:22px;color:var(--white);background:var(--green);content:"✓";border-radius:50%;place-items:center;font-size:14px;display:grid;position:absolute;top:2px;left:0}.quote-panel{color:var(--white);box-shadow:var(--shadow);background:linear-gradient(145deg,#10202eeb,#0a3f73eb);border-radius:8px;padding:clamp(28px,4vw,44px)}.quote-panel p{color:var(--cyan);margin:0 0 14px;font-weight:900}.quote-panel strong{font-size:clamp(24px,3vw,36px);line-height:1.28;display:block}.quote-panel a{color:var(--white);margin-top:28px;font-weight:900;display:inline-flex}.contact-section{color:var(--white);background:linear-gradient(90deg,#081927f0,#081927c7),url(/assets/hero-ac-installation.png) 50%/cover;padding:clamp(72px,9vw,118px) clamp(18px,5vw,72px)}.contact-inner{width:min(780px,100%)}.contact-section p{color:#ffffffc7}.contact-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px;display:grid}.contact-list div{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff17;border:1px solid #ffffff29;border-radius:8px;padding:18px}.contact-list span,.contact-list strong{display:block}.contact-list span{color:#ffffffb8;font-size:13px;font-weight:800}.contact-list strong{color:var(--white);overflow-wrap:anywhere;font-size:clamp(18px,2vw,24px)}.contact-list .address-card{grid-column:1/-1}.contact-list .address-card strong{font-size:clamp(18px,1.7vw,22px)}.lightbox{z-index:80;background:#061019e0;place-items:center;padding:clamp(18px,4vw,44px);display:grid;position:fixed;inset:0}.lightbox img{border-radius:8px;max-width:min(1100px,100%);max-height:88vh;box-shadow:0 30px 90px #00000073}.lightbox-close{width:44px;height:44px;color:var(--white);cursor:pointer;background:#ffffff1f;border:1px solid #ffffff38;border-radius:50%;place-items:center;font-size:30px;display:grid;position:absolute;top:18px;right:18px}.site-footer{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:24px clamp(18px,5vw,72px);display:flex}.legal-page{gap:34px;width:min(920px,100% - 36px);margin:0 auto;padding:clamp(82px,10vw,124px) 0;display:grid}.legal-page section{gap:12px;display:grid}.legal-page h1,.legal-page h2{margin:0;line-height:1.18}.legal-page h1{font-size:clamp(36px,6vw,60px)}.legal-page h2{font-size:clamp(24px,3vw,34px)}.legal-page p{color:var(--muted);margin:0;font-size:18px}.admin-shell{background:var(--surface);min-height:100vh;padding:34px clamp(18px,5vw,72px)}.admin-login{width:min(460px,100%);margin:9vh auto 0}.admin-login img{width:190px;margin-bottom:22px}.admin-login h1{margin:0 0 18px;font-size:clamp(34px,5vw,52px);line-height:1.12}.admin-hero{grid-template-columns:260px minmax(0,1fr);align-items:center;gap:28px;margin-bottom:24px;display:grid}.admin-logo{background:var(--white);border-radius:8px;padding:18px;display:block;box-shadow:0 14px 34px #10202e14}.admin-hero h1{font-size:clamp(34px,5vw,60px)}.admin-panel{border:1px solid var(--line);background:var(--white);border-radius:8px;margin-bottom:18px;padding:24px;box-shadow:0 12px 30px #10202e0f}.admin-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;display:grid}.admin-panel label,.admin-card{gap:8px;margin-top:14px;font-weight:800;display:grid}.admin-panel input,.admin-panel textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fbfdff;border-radius:8px;padding:12px 13px}.upload-button{min-height:44px;color:var(--white);background:var(--blue);cursor:pointer;border-radius:8px;place-items:center;font-weight:900;display:inline-grid}.upload-button input{display:none}.upload-progress{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:10px;display:grid}.upload-progress progress{appearance:none;background:#dbe8f2;border:0;border-radius:999px;width:100%;height:10px;overflow:hidden}.upload-progress progress::-webkit-progress-bar{background:#dbe8f2;border-radius:999px}.upload-progress progress::-webkit-progress-value{background:linear-gradient(90deg, var(--blue), var(--cyan));border-radius:999px;transition:width .2s}.upload-progress progress::-moz-progress-bar{background:linear-gradient(90deg, var(--blue), var(--cyan));border-radius:999px}.upload-progress strong{color:var(--blue-deep);font-size:13px}.upload-message{margin:10px 0 0;font-size:14px;font-weight:800;line-height:1.5}.upload-message.ok{color:var(--green)}.upload-message.error{color:#b42318}.admin-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:14px}.admin-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.admin-card img{aspect-ratio:4/3;object-fit:cover;border-radius:8px;width:100%}.image-upload-preview{cursor:pointer;margin-top:0;display:grid;position:relative}.image-upload-preview img{transition:filter .2s,transform .2s}.image-upload-preview span{color:var(--white);background:#061019b8;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:900;position:absolute;bottom:10px;right:10px}.image-upload-preview input{display:none}.image-upload-preview:hover img{filter:brightness(.86);transform:scale(1.01)}.admin-help,.admin-status{color:var(--muted)}.admin-status.ok{color:var(--green)}.admin-status.error{color:#b42318}@media (width<=920px){.nav-links{display:none}.hero{min-height:900px}.hero-content{margin-inline:18px;padding-bottom:330px}.hero-panel,.trust-strip,.service-grid,.timeline,.works-grid,.contact-list,.split-section,.admin-grid,.admin-work-grid,.admin-hero{grid-template-columns:1fr}.work-card,.work-card img{min-height:auto}.work-card img{aspect-ratio:4/5}.contact-inner{width:100%}.contact-list div{padding:16px}}@media (width<=560px){.site-header{align-items:flex-start;min-height:68px;padding:12px 14px}.brand img{width:134px}.header-action{min-height:40px;padding-inline:10px;font-size:12px}.hero{min-height:960px}.hero-content{width:calc(100% - 28px);margin-inline:14px;padding-top:112px;padding-bottom:360px}.hero h1{font-size:34px}.hero-copy,.section-heading p:not(.eyebrow),.split-copy p,.contact-section p{font-size:16px}.hero-panel{bottom:18px;left:14px;right:14px}.hero-panel div{padding:14px}.hero-panel strong{font-size:16px}.section{padding-inline:14px}.section-heading h2,.split-copy h2,.contact-section h2{font-size:30px}.service-card,.timeline-item,.quote-panel,.admin-panel{padding:20px}.button{width:100%}.contact-actions{gap:10px}.contact-list strong{font-size:20px}.contact-list .address-card strong{font-size:17px;line-height:1.55}.site-footer{flex-direction:column;align-items:flex-start}}
