:root{--ink:#111411;--lime:#c5f367;--white:#fdfefd;--muted:#aeb7ac;--line:#30392e;--font:Inter,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);font-family:var(--font);color:var(--white);font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #70b716;outline-offset:5px}button:disabled{cursor:default}::selection{background:var(--lime);color:var(--ink)}.skip-link{position:absolute;top:-100px;left:20px;z-index:100;padding:12px;background:var(--lime);color:var(--ink)}.skip-link:focus{top:10px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 5.5%;border-bottom:1px solid #ffffff15;background:var(--ink);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:15px}.header nav{display:flex;align-items:center;gap:34px;font-size:0.875rem}.header nav a{display:inline-flex;align-items:center;min-height:44px;transition:color .2s}.header nav a:hover{color:var(--lime)}.header nav .nav-contact{justify-content:center;border:1px solid #646c60;border-radius:4px;padding:9px 22px}.menu-toggle{display:none}.hero{max-width:1600px;margin:auto;position:relative;display:grid;grid-template-columns:1.05fr 1fr;min-height:625px;align-items:center;padding:74px 5.5% 55px;gap:12px;overflow:hidden}.eyebrow{font-size:0.75rem;letter-spacing:2px;font-weight:600;line-height:1.5;margin:0 0 28px}.hero .eyebrow{color:#bac5b5;display:flex;align-items:center;gap:12px}.eyebrow-rule{width:26px;height:1px;background:var(--lime);display:inline-block}.hero h1{font-size:clamp(2.625rem,4.6vw,4.5625rem);line-height:1.35;letter-spacing:-1.5px;font-weight:650;margin:0 0 26px}.accent{color:var(--lime)}.hero-description{color:#b8c0b4;line-height:1.95;font-size:1.0625rem;margin:0 0 33px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 25px;border-radius:4px;font-size:0.875rem;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-lime{background:var(--lime);color:var(--ink)}.button-lime:hover{background:#d4ff82}.text-link{font-size:0.875rem;display:flex;align-items:center;gap:15px}.link-line{width:24px;height:1px;background:#869180}.text-link:hover{color:var(--lime)}.hero-footnote{display:flex;gap:0;margin-top:50px;font-size:0.75rem;letter-spacing:1px;color:#8c9887}.hero-footnote span+span{border-left:1px solid #45513f;margin-left:20px;padding-left:20px}.hero-art{position:relative;width:100%;padding:30px 0 0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0}.hero-art img{display:block;width:116%;margin-left:-6%;height:450px;object-fit:cover;border-radius:4px;mix-blend-mode:lighten}
@media(min-width:901px){.hero-art img{-webkit-mask-image:linear-gradient(to right,transparent,#000 18%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 14%,#000 86%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 18%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 14%,#000 86%,transparent);mask-composite:intersect}}.service-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 5.5%;display:flex;align-items:center;justify-content:center;gap:6.5%;font-size:1rem;color:#d7dfd2;letter-spacing:1px}.strip-plus{color:var(--lime);font-size:1.25rem}.section{padding:100px 5.5%}.section-heading{display:flex;justify-content:space-between;gap:45px;align-items:flex-end;margin-bottom:48px}.section h2{font-size:clamp(2rem,3vw,2.875rem);font-weight:650;letter-spacing:-.6px;line-height:1.45;margin:0}.section-heading .eyebrow{color:#5a6953;margin-bottom:18px}.section-intro{font-size:1rem;line-height:1.9;margin:0 0 5px;color:#5a6355}.services{background:var(--white);color:var(--ink)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{padding:30px 28px 0;border:1px solid #dce3d7;border-radius:6px;background:#fff}.service-card.featured{background:#f3f7ee;border-color:#bacaad}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:45px}.number{color:#74826b;font-size:0.875rem}.card-top svg{width:40px;height:40px;color:#4a5e38}.service-en{font-size:0.6875rem;letter-spacing:1.2px;color:#697360;margin:0 0 9px}.service-card h3{font-size:1.5rem;line-height:1.45;margin:0 0 17px;font-weight:650}.card-description{font-size:1rem;line-height:1.85;color:#5f675b;margin:0;min-height:118px}.service-tags{display:flex;flex-wrap:wrap;gap:7px;margin:24px 0 28px}.service-tags span{border:1px solid #d7dfcf;padding:4px 9px;border-radius:3px;color:#5a6650;font-size:0.75rem}details{border-top:1px solid #dce3d7}summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;list-style:none;font-size:0.875rem;padding:20px 0}summary::-webkit-details-marker{display:none}.details-icon{width:12px;height:12px;position:relative}.details-icon:before,.details-icon:after{content:"";position:absolute;top:5px;left:0;width:12px;height:1px;background:#435338}.details-icon:after{transform:rotate(90deg);transition:transform .2s}details[open] .details-icon:after{transform:rotate(0)}details ul{margin:0 0 16px;padding-left:19px;color:#5a6552;font-size:0.875rem}details li{padding:4px 0}.about{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#171c16}.about .eyebrow{color:#a9b69f;margin-bottom:24px}.about-statement>p:last-child{max-width:470px;color:#b0baab;line-height:1.95;margin:28px 0 0}.about-values{padding-top:20px}.about-values>div{display:flex;gap:24px;padding:26px 0;border-bottom:1px solid #36412f}.about-values>div:first-child{padding-top:0}.about-values>div:last-child{border:0}.about-values>div>span{font-size:0.75rem;color:var(--lime);padding-top:6px}.about-values h3{font-size:1.3125rem;font-weight:500;margin:0 0 8px}.about-values p{font-size:0.9375rem;color:#a3af9b;margin:0;max-width:360px}.process{background:var(--white);color:var(--ink)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;list-style:none;padding:0;margin:0}.process-grid li{border-top:1px solid #cad4c2;padding-top:28px}.step-number{font-size:2.1875rem;font-weight:400;color:#7e926d;line-height:1}.process-grid h3{font-size:1.375rem;margin:22px 0 12px;font-weight:600}.process-grid p{margin:0;font-size:0.9375rem;line-height:1.9;color:#616b58}.contact{background:var(--lime);color:var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:76px;padding-bottom:76px}.contact .eyebrow{color:#42582b;margin-bottom:22px}.contact h2{font-size:clamp(1.875rem,3vw,2.75rem)}.contact-copy>p:last-child{font-size:1rem;margin-top:23px;color:#42572c}.contact-panel{padding-top:5px;align-self:center}.contact-label{font-size:0.875rem;margin:0 0 12px;color:#33481e}.contact-email{display:inline-block;font-size:clamp(1.4375rem,2.8vw,2.3125rem);font-weight:500;letter-spacing:-.6px;margin:23px 0 22px;line-height:1.4;border-bottom:1px solid #859f59}.button-dark{background:var(--ink);color:#fff;min-width:139px}.button-dark:hover{background:#2d3628}.copy-button{border:0;border-bottom:1px solid #667d47;color:#314321;background:transparent;padding:2px 0;font-size:0.875rem}.contact-note{font-size:0.75rem;color:#526c36;margin:17px 0 0;min-height:21px}.footer{padding:42px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-wordmark{font-size:1.75rem;letter-spacing:3px;font-weight:600}.footer p{font-size:0.75rem;margin:8px 0 0;color:#8e9c85}.footer-right{text-align:right;font-size:0.875rem;color:#c3cdbb}@media(min-width:1700px){.section,.header,.footer,.service-strip{padding-left:max(5.5%,calc((100vw - 1424px)/2));padding-right:max(5.5%,calc((100vw - 1424px)/2))}}@media(max-width:1050px){.header nav{gap:23px}.hero{min-height:560px;padding-top:55px;padding-bottom:45px}.hero h1{font-size:3.125rem}.hero-art img{height:370px}.service-card{padding:25px 20px 0}.service-card h3{font-size:1.375rem}.card-description{min-height:148px}.service-tags{gap:5px}.section{padding-top:76px;padding-bottom:76px}.about{gap:7%}.process-grid{gap:23px}.contact{gap:6%}}@media(max-width:760px){html{scroll-padding-top:75px}.header{height:78px;padding:0 6%}.brand{gap:10px}.menu-toggle{display:flex;width:44px;height:44px;align-items:center;justify-content:center;gap:6px;flex-direction:column;background:transparent;border:1px solid #58634f;border-radius:4px}.menu-toggle span{display:block;width:18px;height:1px;background:#e2ebdc;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;top:78px;left:0;width:100%;padding:23px 6%;background:#171e14;border-bottom:1px solid #56634d;flex-direction:column;align-items:stretch;gap:8px}.header nav.is-open{display:flex}.header nav a{padding:0;font-size:1rem}.header nav .nav-contact{padding:9px 15px;text-align:center}.hero{padding:48px 6% 24px;grid-template-columns:1fr;gap:4px;min-height:0}.hero h1{font-size:clamp(2.25rem,7.4vw,3.4375rem);letter-spacing:-1px;line-height:1.4;margin-bottom:20px}.hero .eyebrow{font-size:0.625rem;margin-bottom:24px;letter-spacing:1.7px}.hero-description{font-size:1rem;margin-bottom:25px}.hero-actions{gap:22px}.hero-footnote{margin-top:31px}.hero-art{padding:0;margin-top:12px}.hero-art img{width:100%;height:280px;margin:0;object-fit:cover}.service-strip{gap:4%;padding:16px 5%;font-size:0.75rem;letter-spacing:0}.strip-plus{font-size:1rem}.section{padding:60px 6%}.section-heading{display:block;margin-bottom:30px}.section h2{font-size:2rem}.section-intro{font-size:0.9375rem;margin-top:23px}.eyebrow{font-size:0.6875rem;letter-spacing:1.4px}.service-grid{grid-template-columns:1fr;gap:16px}.service-card{padding:25px 25px 0}.card-top{margin-bottom:25px}.service-card h3{font-size:1.5rem}.card-description{min-height:0}.service-tags{margin-top:19px;margin-bottom:22px}.service-en{font-size:0.6875rem}.service-tags span{font-size:0.75rem}.about{grid-template-columns:1fr;gap:30px}.about-values{padding-top:0}.about-values h3{font-size:1.25rem}.about-values p{max-width:none}.process-grid{grid-template-columns:repeat(2,1fr);column-gap:23px;row-gap:34px}.process-grid li{padding-top:22px}.process-grid h3{font-size:1.25rem;margin-top:19px}.process-grid p{font-size:0.875rem}.step-number{font-size:1.8125rem}.contact{grid-template-columns:1fr;gap:27px}.contact-email{font-size:2rem;margin-top:23px}.contact-copy>p:last-child{margin-bottom:0}.footer{padding:32px 6%;align-items:flex-start;flex-direction:column;gap:24px}.footer-right{text-align:left}.footer-wordmark{font-size:1.5625rem}.footer p{font-size:0.75rem}.footer-right>a{font-size:0.875rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media(max-width:360px){.hero-actions{gap:17px}.hero-actions .button{padding:12px 16px}.contact-email{font-size:1.75rem}.process-grid{grid-template-columns:1fr}.service-strip{font-size:0.6875rem;gap:3%}}

/* Company logo: retain supplied artwork and use light surfaces for legibility. */
.header{background:#fff;color:var(--ink);border-bottom-color:#e4e6e2}.brand-logo{display:block;width:220px;height:auto}.header nav a:hover{color:#8950c7}.header nav .nav-contact{border-color:#b8beb3}.footer{background:#fff;color:var(--ink);border-top:1px solid #e4e6e2}.footer-wordmark{display:block}.footer-logo{display:block;width:280px;max-width:100%;height:auto}.footer p{color:#616b58}.footer-right{color:#44503b}.menu-toggle{border-color:#c3cabc}.menu-toggle span{background:#41483b}@media(max-width:760px){.brand-logo{width:195px;max-width:calc(100vw - 115px)}.header nav{background:#fff;border-bottom-color:#d7dece}.footer-logo{width:260px}.footer{gap:25px}}

/* Clear contact hierarchy and readable interaction states. */
.contact-panel{background:#fff;border:1px solid #a7ce66;border-radius:8px;padding:28px;min-width:0;align-self:center}
.contact-label{display:block;color:#454b40;font-size:0.875rem;margin-bottom:8px}
#inquiry-topic{display:block;width:100%;min-height:44px;font:inherit;font-size:1rem;color:#20251c;background:#fff;border:1px solid #919a88;border-radius:4px;padding:9px 10px;cursor:pointer}
.topic-hint{font-size:0.875rem;color:#59624f;line-height:1.7;margin:10px 0 22px}
.email-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.contact-email{font-size:1.625rem;font-weight:500;letter-spacing:0;line-height:1.4;color:#252c20;margin:0;border-bottom:0}
.contact-email:hover{text-decoration:underline;text-underline-offset:5px}
.copy-button{display:inline-flex;align-items:center;gap:5px;border:0;border-radius:4px;background:#f1f3ee;color:#4f5a44;padding:7px 9px;min-height:36px;font-size:0.875rem;line-height:1.4;white-space:nowrap}
.copy-button svg{width:15px;height:15px;flex-shrink:0}
.copy-button:hover{background:#e4e9dd;color:#20251c}
.copy-status{font-size:0.875rem;line-height:1.6;color:#526c36;min-height:22px;margin:7px 0 12px}
.contact-panel .button{font-size:0.875rem;min-height:44px;padding:10px 22px;transform:none}
.contact-note{font-size:0.875rem;color:#59624f;margin:10px 0 0}
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #643197;outline-offset:4px}
.hero a:focus-visible,.about a:focus-visible{outline-color:var(--lime)}
.number{color:#566549}
@media(min-width:761px) and (max-width:900px){.hero{grid-template-columns:1fr;gap:15px;padding-top:55px}.hero h1{font-size:clamp(2.875rem,6vw,3.4375rem)}.hero-art{max-width:650px;justify-self:center;width:100%;padding-top:0}.hero-art img{width:100%;margin:0;height:360px}.hero-footnote{margin-top:28px}}
@media(max-width:760px){.contact-panel{padding:24px}.contact-email{font-size:1.5rem}.email-row{gap:10px}.contact-note,.topic-hint{font-size:0.875rem}.contact-panel .button{width:auto}.contact{gap:25px}}
@media(max-width:360px){.contact-panel{padding:20px}.contact-email{font-size:1.375rem}}

/* Readable service labels and navigation at preferred browser font sizes. */
.hero .eyebrow{font-size:0.875rem;letter-spacing:1.2px}
.hero-footnote,.service-tags span{font-size:0.875rem}
.service-en,.eyebrow{font-size:0.75rem}
.service-strip{flex-wrap:wrap;gap:20px 6%}
.service-strip a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap;text-underline-offset:6px}
.service-strip a:hover,.service-strip a:focus-visible{color:var(--lime);text-decoration:underline}
.service-card{scroll-margin-top:24px;min-width:0}
.hero-copy{min-width:0}
.hero h1 .accent{white-space:nowrap}
.service-strip a:focus-visible{outline-color:var(--lime)}
.header{height:auto;min-height:100px;padding-top:20px;padding-bottom:20px;flex-wrap:wrap}
.header nav{flex-wrap:wrap}
@media(max-width:760px){.header{min-height:78px;padding-top:17px;padding-bottom:17px}.header nav{flex-wrap:nowrap}.hero .eyebrow{font-size:0.875rem}.service-strip{gap:6px 14px;padding-top:10px;padding-bottom:10px}.service-strip a{font-size:0.875rem}.strip-plus{display:none}.hero-footnote{flex-wrap:wrap;gap:8px 0}.service-tags span{font-size:0.875rem}}

.service-inquiry{display:flex;align-items:center;min-height:44px;font-size:.875rem;border-top:1px solid #dce3d7;padding:13px 0;color:#445b34;text-underline-offset:5px}.service-inquiry:hover{text-decoration:underline}.contact-email{max-width:100%;overflow-wrap:anywhere;min-width:0}
