/* Shared light corporate design. Loaded last on all website content pages. */
:root{--paper:#fff;--paper-soft:#f3f6f3;--ink:#1d352d;--muted:#5b6b63;--green:#123f33;--green-deep:#0b2d24;--gold:#866536;--gold-soft:#b89961;--line:#dce4de;--maxw:1200px}
html{background:#fff;scroll-padding-top:96px}
body{background:#fff;color:var(--ink);font-size:16px;line-height:1.85}
body,h2,h3,h4,input,select,textarea,button{font-family:"Noto Sans HK",system-ui,sans-serif}
h1{font-family:"Noto Sans HK",system-ui,sans-serif;font-weight:700;letter-spacing:-.015em}
h2{font-size:clamp(1.65rem,2.6vw,2.15rem);font-weight:700;line-height:1.5;letter-spacing:-.02em}
h3{font-size:1.15rem;line-height:1.65;font-weight:700}
img{max-width:100%;display:block}
.wrap{max-width:1200px;padding:0 32px}
.wrap.narrow{max-width:900px}
section{padding:72px 0;scroll-margin-top:96px}
.eyebrow{font-size:.76rem;letter-spacing:.11em;color:var(--gold);font-weight:600;gap:12px}
.eyebrow::before{width:24px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:32px}
.section-heading h2{margin:10px 0 0}.section-heading>p{max-width:32em;color:var(--muted);font-size:.94rem}
.section-link,.text-link{font-size:.88rem;font-weight:600;color:var(--green);border:0;padding:8px 0;margin-top:0;text-decoration:underline;text-underline-offset:6px;text-decoration-color:#b9c9be}
.section-heading .section-link{white-space:nowrap;flex:none}
.btn{min-height:48px;padding:13px 23px;border-radius:4px;font-size:.94rem;box-shadow:none;line-height:1.6}
.btn-primary,.btn-gold,.btn-wa{background:var(--green);color:#fff;border:1px solid var(--green)}
.btn-primary:hover,.btn-gold:hover,.btn-wa:hover{background:var(--green-deep);color:#fff;transform:translateY(-1px);box-shadow:none}
.btn-secondary,.growth-secondary{background:#fff;color:var(--green);border:1px solid #aabbaf}
.btn-secondary:hover,.growth-secondary:hover{background:#f1f5f1;color:var(--green)}
.cta-row{gap:12px}
header.nav{background:#ffffffed;border-bottom:1px solid var(--line);backdrop-filter:blur(12px);z-index:120}
.nav-in{height:86px;min-height:86px;gap:24px}
.brand{gap:3px;flex:none}.brand .tmark{width:30px;height:35px}.brand .word{font-size:1.2rem;letter-spacing:.19em}.brand small{font-size:.52rem;letter-spacing:.2em;margin-top:7px}
.nav-right{gap:22px}.nav-links{gap:26px}.nav-links a{font-size:.86rem;font-weight:500;color:var(--muted);padding:8px 0;white-space:nowrap}
.nav-links a:hover,.nav-links a[aria-current]{color:var(--green)}
.nav-links a[aria-current]{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:9px}
.nav-links .nav-wa{padding:10px 16px;border-radius:4px;background:var(--green);color:white;font-size:.84rem}
.nav-links .nav-wa:hover{color:#fff;background:var(--green-deep)}
.nav-links .nav-language{border-left:1px solid var(--line);padding-left:18px;color:var(--green);font-size:.79rem}
.nav-links .language-services{font-size:.73rem}
.menu-btn{padding:10px;min-width:44px;min-height:44px}
.skip-link:focus{outline-offset:0}
.home-hero{padding:54px 0;background:#f5f7f3;border-bottom:1px solid var(--line)}
.home-hero-grid{display:grid;max-width:1600px;grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr);gap:48px;align-items:center}
.home-hero h1{font-size:clamp(2.7rem,4.35vw,3.85rem);line-height:1.4;margin:18px 0 20px;color:var(--green)}
.home-hero .hero-summary{font-size:1.04rem;color:var(--muted);max-width:34em;margin-bottom:27px;line-height:1.95}
.home-hero .hero-caption{margin-top:23px;display:flex;gap:15px;flex-wrap:wrap;font-size:.79rem;color:#637468}
.hero-caption span+span{border-left:1px solid #bdccbf;padding-left:15px}
.home-visual{margin:0;position:relative}
.home-visual img{width:100%;height:clamp(440px,36vw,560px);object-fit:cover;object-position:50% 56%;border-radius:4px}
.home-visual figcaption{font-size:.76rem;margin-top:10px;color:var(--muted);display:flex;justify-content:space-between;gap:15px}
.core-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.core-card{border-top:2px solid #b49867;padding:22px 0 0;min-width:0;display:flex;flex-direction:column}
.core-card .card-label{font-size:.76rem;color:var(--gold);margin-bottom:12px}
.core-card h3{font-size:1.16rem;margin-bottom:10px}.core-card p{font-size:.9rem;color:var(--muted);margin-bottom:20px}
.core-card .section-link{margin-top:auto;display:flex;justify-content:space-between;text-decoration:none;border-top:1px solid var(--line);padding-top:14px}
.about-company{padding:58px 0;background:#f6f7f4;border-block:1px solid var(--line)}
.company-grid{display:grid;max-width:1320px;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.company-image{width:100%;height:340px;object-fit:cover;object-position:48% 40%;border-radius:3px}
.company-copy h2{margin:12px 0 17px}.company-copy p{color:var(--muted);font-size:.95rem;line-height:1.95;margin-bottom:18px}
.company-copy .about-lead{color:var(--ink)}
.company-facts{display:flex;gap:24px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:15px;color:var(--green);font-size:.82rem}
.market-columns{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.market-column h3{font-size:1.14rem;margin-bottom:18px;scroll-margin-top:108px}
.market-links{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.market-links li{border-top:1px solid var(--line)}.market-links a{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:56px;padding:12px 0;font-size:.86rem;color:var(--green)}
.market-links a:hover{color:var(--gold)}.market-column .market-note{font-size:.79rem;color:var(--muted);margin-top:15px}
.process-section{background:#f4f6f2;border-block:1px solid var(--line);padding:58px 0}
.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}
.process-item{border-top:1px solid #b9c6bc;padding-top:17px}.process-item>span{font:1.25rem Georgia,serif;color:var(--gold)}
.process-item h3{font-size:1.06rem;margin:12px 0 8px}.process-item p{font-size:.88rem;color:var(--muted)}
.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.resource-card{display:flex;flex-direction:column;padding:23px 0;border-top:1px solid #b6c5b9;border-bottom:1px solid var(--line);min-width:0}
.resource-card .resource-type{font-size:.76rem;color:var(--gold);margin-bottom:14px}.resource-card h3{font-size:1.13rem;margin-bottom:13px}.resource-card p{color:var(--muted);font-size:.9rem;margin-bottom:20px}
.resource-card .section-link{margin-top:auto;text-decoration:none}.resource-card .resource-language{font-size:.75rem;color:var(--muted);margin-bottom:10px}
.consult{padding:64px 0;background:#eef3ee;border-top:1px solid var(--line)}
.consult-grid{grid-template-columns:1fr 1fr;gap:66px;align-items:start}
.consult-left h2{font-size:clamp(1.7rem,2.6vw,2.2rem);font-weight:700;line-height:1.5;margin:13px 0 18px}.consult-left p{font-size:.94rem;line-height:1.95;margin:0 0 22px}
.contact-details{display:grid;gap:12px;font-size:.95rem;margin-bottom:25px}.contact-details a{color:var(--green)}.contact-details .contact-hours{font-size:.86rem;color:var(--muted)}
.contact-details a:hover{text-decoration:underline}.contact-questions{max-width:420px;margin-top:24px}.contact-questions summary{font-family:inherit;font-size:.86rem;padding-block:14px}.contact-questions p{font-size:.82rem;margin-bottom:16px}
.form-card{background:white;padding:28px;border:1px solid #d4dfd4;border-radius:5px;box-shadow:none}
.form-card .seg{display:grid;grid-template-columns:1fr 1fr;background:#f1f4ee;border-radius:4px;margin-bottom:20px}
.seg button{min-height:44px;font-size:.86rem;border-radius:3px}.seg button.on{box-shadow:none}
.field label{font-size:.83rem}.field input,.field select,.field textarea{font-size:1rem;border-radius:3px;background:#fff;padding:11px 12px;min-height:46px;border-color:#cdd9cf}
.form-note{font-size:.78rem;line-height:1.85}.form-card .btn-email{border-radius:4px;min-height:48px}
.page-hero,.growth-hero,.guide-hero,.detail-hero{background:#f5f7f3;color:var(--ink);padding:38px 0 48px;border-bottom:1px solid var(--line);min-height:0;background-image:none;text-shadow:none}
.page-hero .eyebrow,.guide-hero .eyebrow,.detail-hero .eyebrow{color:var(--gold)}
.page-hero h1,.growth-hero h1,.guide-hero h1,.detail-title{color:var(--green);font-size:clamp(2rem,3.4vw,3rem);line-height:1.5;font-weight:700;letter-spacing:-.02em;text-shadow:none;margin:12px 0 16px;overflow-wrap:normal}
.page-hero p,.growth-lead,.guide-hero p,.detail-sub{color:var(--muted);font-size:1rem;line-height:1.95;font-weight:400;max-width:48em}
.page-hero small,.guide-hero small{color:var(--muted)}
.back-link,.detail-hero .back-link{font-size:.8rem;color:var(--muted);margin-bottom:20px}.back-link:hover{color:var(--green)}
.growth-breadcrumb{font-size:.78rem;margin-bottom:24px;gap:10px}.growth-hero-grid{display:block;max-width:960px}.growth-hero-grid h1{max-width:23em}
.growth-english{font:400 .91rem/1.8 "Noto Sans HK",system-ui,sans-serif;color:var(--muted);letter-spacing:0;margin:0 0 16px}
.growth-aside,.growth-language{display:none}
.page-hero-grid{display:grid;grid-template-columns:1.45fr .75fr;gap:56px;align-items:center}
.page-photo{padding:0;margin:0;position:static}.page-photo img{width:100%;height:210px;object-fit:cover;object-position:center 20%;border-radius:3px;filter:none}.page-photo figcaption{font-size:.73rem;color:var(--muted);margin-top:8px}
.growth-actions{gap:12px;margin-top:24px}.growth-actions .btn{font-size:.9rem}
.growth-section{padding:58px 0}.growth-section h2{font-family:inherit}.growth-heading{gap:32px;margin-bottom:28px}.growth-heading h2{font-size:1.85rem;font-family:inherit;margin:10px 0 0}.growth-heading p{font-size:.92rem}
.growth-grid{gap:22px}.growth-card{background:#fff;border:1px solid var(--line);border-top:1px solid var(--line);border-radius:4px;padding:24px;transition:border-color .2s,background .2s}
.growth-card:hover{border-color:#91aa99;background:#f8faf7}.growth-card small{font-size:.74rem;letter-spacing:0}.growth-card h3{font-size:1.1rem;margin:0 0 12px}.growth-card p{font-size:.9rem;line-height:1.9}.growth-card .service-link{font-size:.83rem;padding-top:15px;margin-top:22px}
.service-group{padding:0;margin-top:40px}.service-group:first-child{margin-top:0}.service-group-title{display:flex;align-items:baseline;gap:16px;margin-bottom:20px;flex-wrap:wrap}.service-group-title>span{font-size:.78rem;color:var(--gold)}.service-group-title h2{font-size:1.35rem;margin:0}
.service-group .growth-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-group .group-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.growth-two{gap:52px;grid-template-columns:1.25fr .8fr}.growth-two h2{font-size:1.65rem;line-height:1.6}.growth-list li{padding:20px 0}.growth-list li strong{font-size:1.05rem}.growth-prep{background:#f3f6f1;border-top:1px solid #b79b6b;border-radius:3px;padding:26px}.growth-prep h2{font-size:1.25rem}.growth-prep li{font-size:.9rem}
.growth-step{border-color:#b9c6bc}.growth-step small{color:var(--gold);font-size:1.2rem}.growth-step h3{font-size:1.05rem}.growth-faq summary{font-family:inherit;font-size:1rem}.growth-faq details{padding:7px 0}.growth-faq p{font-size:.94rem}
.growth-contact{background:#eef3ed;color:var(--ink);padding:32px;border:1px solid #d6e1d5;border-radius:4px;margin-top:24px}.growth-contact h2{font-family:inherit;font-size:1.7rem}.growth-contact p{color:var(--muted);font-size:.94rem}.growth-contact .eyebrow{color:var(--gold)}.growth-contact .growth-secondary{border-color:#aabbaf;color:var(--green);background:#fff}.growth-contact>a{display:inline-block;margin-top:20px;color:var(--green);font-size:.9rem}.growth-contact .growth-note{margin-top:8px;font-size:.8rem}
.growth-note,.growth-sources{font-size:.82rem;line-height:1.9;color:var(--muted)}.growth-sources{border-top:1px solid var(--line);padding-top:20px;margin-top:28px}
.detail-body{padding:46px 0 64px}.detail-body p,.detail-body li{font-size:1rem;line-height:1.95;color:#364e41}
.detail-body h2,.detail-body .d-h{font-family:inherit;font-weight:700;font-size:1.35rem;line-height:1.6;margin:32px 0 12px;padding-left:0;border-left:0;text-align:left}
.detail-body>.wrap>section{padding:24px 0;border-top:1px solid var(--line)}
.detail-body>.wrap>section>h2{margin-top:0}
.facts-box{border-radius:4px;background:#f5f7f3;padding:24px;gap:20px 32px}.facts-box span{font-size:.81rem;letter-spacing:0}.facts-box>div{font-size:.95rem;line-height:1.7}
.d-cta{margin-top:36px;padding-top:24px}.d-cta .btn{font-size:.9rem}.licence-service-links{padding:22px;background:#f3f6f1;border:1px solid var(--line);margin-top:24px}.licence-service-links h3{font-size:1rem;margin-bottom:12px}.licence-service-links a{display:inline-block;margin-right:20px;font-size:.88rem;color:var(--green);text-decoration:underline;text-underline-offset:5px}
.guide-body{padding:38px 32px 62px}.guide-body>section{padding:0;margin:30px 0;scroll-margin-top:100px}
.guide-body h2{font-family:inherit;font-size:1.3rem;line-height:1.7;border-left:0;padding-left:0;margin-bottom:12px;text-align:left}.guide-body p{font-size:1rem;line-height:1.95}.guide-intro{padding:20px 24px;background:#f3f6f1;border-radius:3px}.guide-next{background:#f3f6f1;border-radius:4px;padding:26px;gap:18px;margin-top:32px}.guide-note{font-size:.82rem!important}.guide-body .growth-contact{padding:28px;margin-top:32px}.guide-body .growth-contact h2{border:0;padding-left:0}
.market-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 42px;list-style:none;padding:0}
.market-page-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:20px 0;min-width:0}.market-page-row h3{font-size:1.07rem}.market-page-row p{color:var(--muted);font-size:.86rem;margin-top:5px}.market-page-row a{display:block}.market-page-row .row-arrow{color:var(--gold);flex:none}.market-page-row .market-thumb{width:112px;height:76px;object-fit:cover;border-radius:3px;flex:none}.market-page-row .market-row-copy{flex:1;min-width:0}
.market-overseas-list{grid-template-columns:1fr}.market-overseas-list .market-page-row{gap:24px}.market-overseas-list .row-language{font-size:.76rem;color:var(--muted)}
.market-intro-note{color:var(--muted);font-size:.86rem;margin-top:28px;max-width:65em}
.site-footer{background:#fff;color:var(--muted);padding:45px 0 30px;border-top:1px solid var(--line);font-size:.86rem}
.site-footer .foot-grid{grid-template-columns:1.4fr 1fr 1.1fr;gap:48px;border-bottom:1px solid var(--line);padding-bottom:30px}
.site-footer .brand .word{color:var(--green)}.site-footer .brand .tmark{filter:none}.site-footer .brand small{color:var(--muted)}.site-footer h4{color:var(--green);font-size:.88rem;letter-spacing:0;margin-bottom:13px}.site-footer .footer-summary{max-width:25em;font-size:.86rem;line-height:1.9}.site-footer ul{gap:7px}.site-footer a:hover{color:var(--green);text-decoration:underline}.site-footer .foot-contact a{color:var(--green)}.site-footer .foot-contact div{margin-bottom:8px}
.site-footer .disclaimer{color:var(--muted);font-size:.8rem;line-height:1.9;margin-top:20px;max-width:72em}.site-footer .disclaimer a{text-decoration:underline;text-underline-offset:4px}.site-footer .foot-bottom{color:var(--muted);font-size:.79rem;padding-top:18px;gap:14px}
.assistant-launch{border-color:#c2d2c6;font-size:.82rem;box-shadow:0 4px 18px #0b2d2414;padding:12px 17px;bottom:20px;right:20px}.assistant-launch i{background:#b89961}.assistant-panel{background:white;border-color:#c9d8cc;box-shadow:0 16px 60px #0b2d2426;bottom:84px}.assistant-panel[hidden]{display:none}.assistant-header small{font-size:.74rem}.chat-message{font-size:.88rem}.assistant-choices button{font-size:.82rem;min-height:40px}.assistant-input input,.assistant-input button{font-size:1rem}.assistant-tools button{font-size:.76rem;min-height:40px}.assistant-toast{font-size:.88rem}
.mobile-contact{display:none}
.footer-policy-links{display:flex;flex-wrap:wrap;gap:10px 24px;align-items:baseline}
.footer-policy-item{display:inline-flex;flex-wrap:wrap;gap:0 4px;align-items:baseline}
@media(min-width:701px){.site-footer .foot-bottom{padding-right:170px}}
.official-reference{padding:24px 0;margin:30px 0;border-top:1px solid var(--line)}
.detail-body .official-reference h2{margin:0 0 8px;font-family:inherit;font-size:1.15rem}
.official-reference .reference-date{font-size:.82rem;color:var(--muted);margin:0 0 12px}
.official-reference ul{margin:0;padding-left:1.25em;font-size:.9rem;line-height:1.8}
.official-reference li{padding:4px 0}.official-reference a{color:var(--green);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.js .reveal{opacity:1;transform:none}
@media(max-width:1100px){.nav-links{gap:16px}.nav-links a{font-size:.8rem}.home-hero-grid{gap:38px}.home-visual img{height:440px}.core-grid{gap:20px}.company-grid{gap:40px}.market-columns{gap:38px}}
@media(max-width:980px){.nav-in{height:74px;min-height:74px}.nav-links{display:none}.menu-btn{display:block}.nav-links.open{display:flex;top:74px;padding:15px 24px 22px;gap:0;box-shadow:0 12px 22px #0b2d2412;max-height:calc(100dvh - 74px);overflow-y:auto;background:#fff;border-bottom:1px solid var(--line)}.nav-links.open a{padding:11px 0;font-size:.95rem;min-height:44px}.nav-links.open .nav-language{border:0;padding-left:0}.nav-links.open .nav-wa{padding:11px 16px;margin-top:8px;text-align:center;justify-content:center}.core-grid{grid-template-columns:1fr 1fr;gap:28px}.home-hero h1{font-size:3rem}.home-hero-grid{grid-template-columns:1fr;gap:30px}.home-visual img{height:auto;aspect-ratio:16/9}.home-hero .hero-summary{max-width:42em}.growth-steps{grid-template-columns:1fr 1fr}.service-group .growth-grid{grid-template-columns:1fr 1fr}.service-group .growth-card:last-child:nth-child(odd){grid-column:1/-1}.consult-grid{gap:36px}.site-footer .foot-grid{gap:30px}.page-hero-grid{gap:30px}}
@media(max-width:700px){
 html{scroll-padding-top:82px}body{font-size:16px;padding-bottom:calc(65px + env(safe-area-inset-bottom))}.wrap{padding:0 22px}.wrap.narrow{padding:0 22px}
 section{padding:44px 0;scroll-margin-top:82px}.brand .tmark{width:26px;height:31px}.brand .word{font-size:1.08rem}.brand small{display:none}
 .eyebrow{font-size:.72rem;letter-spacing:.07em}.section-heading{display:block;margin-bottom:24px}.section-heading h2{font-size:1.65rem}.section-heading>p{margin-top:16px;font-size:.91rem}.section-heading .section-link{display:inline-block;margin-top:14px}
 .home-hero{padding:32px 0}.home-hero-grid{grid-template-columns:1fr;gap:27px}.home-hero h1{font-size:2.4rem;line-height:1.43;margin:14px 0 16px}.home-hero .hero-summary{font-size:.94rem;margin-bottom:21px;line-height:1.9}.home-hero .btn{font-size:.87rem;padding:12px 17px}.home-hero .hero-caption{font-size:.75rem;margin-top:18px;gap:12px}.hero-caption span+span{padding-left:12px}
 .home-visual img{height:auto;aspect-ratio:16/10;object-position:50% 56%}.home-visual figcaption{font-size:.71rem}.core-grid{grid-template-columns:1fr;gap:24px}.core-card{padding-top:18px}.core-card .card-label{margin-bottom:7px}.core-card h3{margin-bottom:8px}.core-card p{margin-bottom:15px}.core-card .section-link{padding-top:11px;min-height:44px}
 .about-company{padding:40px 0}.company-grid{grid-template-columns:1fr;gap:26px}.company-image{height:auto;aspect-ratio:16/10}.company-copy h2{font-size:1.6rem}.company-copy p{font-size:.92rem}.company-facts{font-size:.78rem;gap:14px}
 .market-columns{grid-template-columns:1fr;gap:32px}.market-links{column-gap:18px}.market-links a{font-size:.82rem;min-height:55px}.market-column h3{margin-bottom:13px;font-size:1.1rem}
 .process-section{padding:42px 0}.process-grid{grid-template-columns:1fr 1fr;gap:28px 22px}.process-item h3{font-size:1rem}.process-item p{font-size:.85rem}
 .resource-grid{grid-template-columns:1fr;gap:20px}.resource-card{padding:19px 0}.resource-card .resource-type{margin-bottom:9px}.resource-card h3{font-size:1.1rem}.resource-card p{margin-bottom:14px}
 .consult{padding:42px 0}.consult-grid{grid-template-columns:1fr;gap:28px}.consult-left h2{font-size:1.65rem}.contact-details{gap:10px}.form-card{padding:22px 19px}.row2{grid-template-columns:1fr}.field{margin-bottom:16px}.contact-questions{max-width:none}.contact-questions summary{font-size:.87rem}.form-card .btn-email{font-size:.88rem}
 .page-hero,.growth-hero,.guide-hero,.detail-hero{padding:26px 0 32px;min-height:0;background-image:none}.page-hero h1,.growth-hero h1,.guide-hero h1,.detail-title{font-size:1.95rem;line-height:1.5;margin:12px 0 14px;word-break:normal}.growth-english{font-size:.85rem}.page-hero p,.growth-lead,.guide-hero p,.detail-sub{font-size:.95rem}.page-hero-grid{grid-template-columns:1fr;gap:22px}.page-photo img{height:160px}.page-photo figcaption{font-size:.71rem}.growth-breadcrumb{font-size:.74rem;margin-bottom:18px}.back-link{margin-bottom:14px;font-size:.78rem}
 .growth-section{padding:40px 0}.growth-heading{display:block;margin-bottom:24px}.growth-heading h2{font-size:1.6rem}.growth-heading p{margin-top:14px}.growth-actions{margin-top:20px;gap:10px}.growth-actions .btn{width:auto;flex:1 1 auto;font-size:.85rem;padding:12px 15px}.growth-contact .growth-actions .btn{flex:1 1 100%}
 .growth-grid,.service-group .growth-grid,.service-group .group-two{grid-template-columns:1fr;gap:15px}.service-group .growth-card:last-child:nth-child(odd){grid-column:auto}.service-group{padding:0;margin-top:32px}.service-group-title{gap:8px;margin-bottom:16px}.service-group-title h2{font-size:1.22rem}.growth-card{padding:21px}.growth-card h3{font-size:1.09rem}.growth-card p{font-size:.88rem}.growth-card .service-link{margin-top:17px}
 .growth-two{grid-template-columns:1fr;gap:28px}.growth-two h2{font-size:1.55rem}.growth-prep{padding:23px}.growth-prep h2{font-size:1.23rem}.growth-steps{gap:26px 20px}.growth-step h3{font-size:1rem}.growth-step p{font-size:.86rem}.growth-contact{padding:24px 21px;margin-top:0}.growth-contact h2{font-size:1.55rem}.growth-faq summary{font-size:.95rem;padding-right:30px}
 .detail-body{padding:32px 0 48px}.detail-body p,.detail-body li{font-size:.96rem}.detail-body h2,.detail-body .d-h{font-size:1.25rem}.facts-box{padding:20px;grid-template-columns:1fr;gap:17px}.facts-box>div{font-size:.93rem}.d-cta .btn{width:100%;font-size:.85rem}
 .guide-body{padding:30px 22px 48px}.guide-body>section{padding:0;margin:28px 0}.guide-body h2{font-size:1.2rem}.guide-body p{font-size:.96rem}.guide-intro{padding:18px}.guide-next{padding:22px;gap:16px}.guide-next .btn{width:100%;font-size:.87rem}.guide-body .growth-contact{padding:24px 20px}.guide-body .growth-contact h2{font-size:1.45rem}
 .market-page-grid{grid-template-columns:1fr;gap:0}.market-page-row{padding:19px 0;gap:17px}.market-page-row h3{font-size:1rem}.market-page-row .market-thumb{width:80px;height:65px}.market-overseas-list .market-page-row{gap:15px}.market-page-row p{font-size:.82rem}.market-intro-note{font-size:.82rem}
 .site-footer{padding:36px 0 25px}.site-footer .foot-grid{grid-template-columns:1fr;gap:27px;padding-bottom:25px}.site-footer .brand small{display:block}.site-footer .footer-summary{max-width:30em}.site-footer .foot-bottom{font-size:.76rem;display:block}.site-footer .foot-bottom>span{display:block;margin-bottom:10px}.site-footer .disclaimer{font-size:.79rem}
 .mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:150;display:grid;grid-template-columns:.9fr 1.2fr;background:#fffffff5;backdrop-filter:blur(8px);border-top:1px solid #c9d8cc;padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:8px;box-shadow:0 -3px 16px #0b2d240a}
 .mobile-contact.has-assistant{grid-template-columns:.85fr 1.1fr .55fr}.mobile-contact>a,.mobile-contact>button{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #aabbaf;border-radius:3px;color:var(--green);font-size:.83rem;font-weight:600;background:#fff;font-family:inherit;gap:0;padding:6px 5px;text-align:center;line-height:1.5;cursor:pointer}.mobile-contact>a[data-wa]{background:var(--green);color:#fff;border-color:var(--green)}
 .mobile-contact>.assistant-launch{position:static;box-shadow:none;min-width:0;width:auto;margin:0;font-size:.8rem}.mobile-contact>.assistant-launch i{display:none}.assistant-panel{right:12px;bottom:calc(78px + env(safe-area-inset-bottom));max-height:calc(100dvh - 165px - env(safe-area-inset-bottom));max-width:calc(100vw - 24px);width:370px;padding:0}.assistant-toast{bottom:calc(82px + env(safe-area-inset-bottom))}.assistant-input{padding:12px}.assistant-header{padding:14px 16px}.assistant-log{padding:16px}.assistant-choices{padding:0 16px 12px}
}
@media(max-width:360px){.wrap{padding-inline:18px}.home-hero h1{font-size:2.2rem}.home-hero .cta-row{gap:8px}.home-hero .btn{padding-inline:13px;font-size:.83rem}.mobile-contact>a,.mobile-contact>button{font-size:.76rem}.process-grid{gap:25px 17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transform:none!important}}
@media print{header.nav,.site-footer,.mobile-contact,.assistant-launch,.assistant-panel,.growth-actions,.growth-contact{display:none!important}body{padding:0;color:#000}.wrap,.wrap.narrow{max-width:none;padding:0}.page-hero,.growth-hero,.guide-hero,.detail-hero,.growth-section{padding:16px 0;background:#fff}.page-hero-grid,.growth-two{display:block}.page-photo{display:none}.guide-body>section{padding:0;margin:20px 0}.growth-checklist li{break-inside:avoid}}

/* Reading rhythm, useful navigation and comfortable controls. */
.page-hero-grid>.page-intro:only-child{grid-column:1/-1}
.detail-body>.wrap>h2:first-child{margin-top:0}
.detail-body .regulatory-information h2{margin-top:32px}
.detail-body+.detail-body{padding-top:0}
.detail-body+.detail-body h2:first-child{margin-top:0}
section,.guide-body>section,h2[id],h3[id]{scroll-margin-top:16px}
.page-contents{padding-block:18px 0}
.page-contents details{border-bottom:1px solid var(--line)}
.page-contents summary{display:flex;align-items:center;justify-content:space-between;list-style:none;min-height:48px;cursor:pointer;color:var(--green);font-size:.88rem;font-weight:600;padding:10px 0}
.page-contents summary::-webkit-details-marker{display:none}
.page-contents summary::after{content:'+';font-size:1.3rem;font-weight:400}
.page-contents details[open]>summary::after{content:'−'}
.page-contents nav{display:flex;flex-wrap:wrap;gap:4px 24px;padding:0 0 16px}
.page-contents nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.86rem;color:var(--green);text-decoration:underline;text-underline-offset:5px;text-decoration-color:#b9c9be}
.growth-card,.core-card,.resource-card{position:relative}
.card-title{color:inherit;font:inherit}
.card-title::after{content:'';position:absolute;inset:0;z-index:1}
.card-title:focus-visible{outline:none}
.growth-card:has(.card-title:focus-visible),.core-card:has(.card-title:focus-visible),.resource-card:has(.card-title:focus-visible){outline:3px solid var(--green);outline-offset:5px}
.growth-card:hover h3,.core-card:hover h3,.resource-card:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.growth-card .service-link,.core-card .section-link,.resource-card .section-link{min-height:44px}
.nav-links a{min-height:44px;display:inline-flex;align-items:center}
.site-footer ul a,.site-footer .foot-contact a{display:inline-flex;align-items:center;min-height:44px}
.site-footer ul{gap:0}.site-footer .foot-contact div{margin-bottom:0}
.footer-policy-item>a{display:inline-flex;align-items:center;min-height:44px}
.growth-faq summary,.contact-questions summary{min-height:48px}
.growth-sources a,.official-reference a{display:inline-block;padding-block:8px;min-height:44px}
.growth-sources a,.detail-body a,.guide-body a{overflow-wrap:anywhere}
.assistant-close,.assistant-tools button,.assistant-choices button{min-width:44px;min-height:44px}
.assistant-input input,.assistant-input button{min-height:44px}
.assistant-panel{width:370px;max-width:calc(100% - 40px)}
.assistant-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}
.assistant-body .assistant-log{padding:16px 16px 0;min-height:0;overflow:visible;flex:none}
.assistant-body .assistant-choices{padding:0 16px 16px;max-height:none;overflow:visible}
.assistant-header{gap:8px}.assistant-close{flex:none}
.growth-checklist label{display:flex;align-items:center;gap:12px;min-height:44px}
.growth-checklist input{margin:0;flex:none}
.form-note a{text-decoration:underline;text-underline-offset:4px}
.back-link,.back2,.text-link{display:inline-flex;align-items:center;min-height:44px}
.no-script-contact{margin-top:18px;font-size:.9rem;line-height:1.8}
@media(max-width:700px){
 .page-contents{padding-top:8px}.page-contents nav{display:grid;grid-template-columns:1fr;gap:0;padding-bottom:12px}
 .page-contents nav a{padding:7px 0}.page-contents summary{font-size:.9rem}
 section,.guide-body>section,h2[id],h3[id]{scroll-margin-top:12px}
 .assistant-panel{width:370px;max-width:calc(100% - 24px);right:12px}
 .assistant-tools{padding-bottom:8px}
 .site-footer .foot-grid{gap:20px}.footer-policy-links{gap:2px 20px}
 .footer-policy-links{font-size:.82rem}
}
@media print{.page-contents,.no-script-contact{display:none!important}.card-title::after{display:none}}

/* A single conversation scroller; on phones the assistant uses the visible screen. */
.assistant-panel{z-index:400}
.assistant-header,.assistant-input,.assistant-tools{flex:0 0 auto}
.assistant-tools button{font-size:.8rem;line-height:1.6}
.assistant-header small{line-height:1.7}
@media(max-width:700px){
 body.assistant-open{overflow:hidden}
 body.assistant-open .mobile-contact{display:none}
 .mobile-contact.has-assistant:lang(en){grid-template-columns:.85fr 1fr .75fr}
 .assistant-panel{left:0;right:0;top:var(--assistant-view-top,0px);bottom:auto;width:100%;max-width:none;height:var(--assistant-view-height,100dvh);max-height:none;border:0;border-radius:0;box-shadow:none}
 .assistant-header{padding:12px 16px;padding-top:calc(12px + env(safe-area-inset-top));gap:12px}
 .assistant-header strong{font-size:.94rem}.assistant-header small{font-size:.72rem}
 .assistant-body .assistant-log{padding:16px 16px 0}
 .assistant-body .assistant-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 16px 18px}
 .assistant-choices button{padding:10px 12px;line-height:1.65;font-size:.87rem;overflow-wrap:anywhere}
 .assistant-choices button:last-child:nth-child(odd){grid-column:1/-1}
 .assistant-input{padding:10px 16px}.assistant-input input,.assistant-input button{min-height:48px}
 .assistant-tools{padding:0 16px calc(8px + env(safe-area-inset-bottom));gap:8px}
 .assistant-tools button{font-size:.82rem}
 .home-visual img,.company-image,.page-photo img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}
}
@media(max-width:700px) and (max-height:500px){
 .assistant-header{padding:6px 12px}.assistant-header small{display:none}
 .assistant-input{padding:6px 12px}.assistant-tools{padding:0 12px 4px}
 .assistant-body .assistant-log{padding:12px 12px 0}.assistant-body .assistant-choices{padding-inline:12px}
}

/* Consistent footer type, row rhythm and language-specific links. */
.site-footer h4{font-size:.94rem;line-height:1.6;margin-bottom:8px}
.site-footer .foot-grid ul,.site-footer .foot-contact .contact-details{display:grid;gap:0;margin:0;padding:0;list-style:none;font-family:inherit;font-size:.9rem;line-height:1.65;font-weight:400}
.site-footer .foot-grid ul a,.site-footer .foot-contact .contact-details a{display:flex;align-items:center;min-height:44px;padding:0;font:inherit;color:var(--muted);overflow-wrap:anywhere}
.site-footer .foot-grid ul a:hover,.site-footer .foot-contact .contact-details a:hover{color:var(--green)}
.site-footer .foot-grid{padding-bottom:24px}
.site-footer .disclaimer{margin-top:16px}
.site-footer .foot-bottom{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;padding-top:14px;text-align:left}
.site-footer .foot-bottom>span{margin:0}
.site-footer .foot-bottom>.footer-policy-links{display:flex;justify-content:flex-start;gap:4px 24px;text-align:left}
.home-visual figcaption{justify-content:flex-end}

/* Service and overseas photography; licence enquiry icon contrast. */
.advisory-hero .page-hero-grid,.overseas-hero .page-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:40px}
.advisory-hero .page-photo img{height:auto;aspect-ratio:4/3;object-fit:contain;object-position:center}
.overseas-hero .page-photo img{height:auto;aspect-ratio:5/3;object-fit:cover}
.growth-heading.advisory-heading{display:block}
.growth-heading.advisory-heading>p{max-width:52em;margin:14px 0 0}
.btn-wa{justify-content:center;align-items:center;text-align:center;gap:10px}
.btn-wa svg{width:22px;height:22px;flex:0 0 22px;fill:currentColor;opacity:1;align-self:center}
@media(max-width:980px){
 .advisory-hero .page-hero-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 .overseas-hero .page-hero-grid{gap:30px}
}
@media(max-width:700px){
 .overseas-hero .page-hero-grid{grid-template-columns:minmax(0,1fr);gap:22px}
 .overseas-hero .page-photo img{height:auto;aspect-ratio:auto;object-fit:contain;object-position:center}
}

/* Keep enquiry actions and direct contact information in clear columns. */
.growth-contact{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.85fr);column-gap:40px}
.growth-contact>.eyebrow,.growth-contact>h2,.growth-contact>p,.growth-contact>.growth-actions{grid-column:1;min-width:0}
.growth-contact>.contact-details{grid-column:2;grid-row:1/span 4;align-self:center;min-width:0;margin:0;padding:6px 0 6px 28px;border-left:1px solid #c8d5c9;gap:8px;font-family:inherit;font-size:.9rem;font-weight:400;line-height:1.65}
.growth-contact>.contact-details a{display:flex;align-items:center;min-height:40px;padding:0;font:inherit;color:var(--green);overflow-wrap:anywhere}
@media(max-width:980px){
 .growth-contact{grid-template-columns:minmax(0,1fr);column-gap:0}
 .growth-contact>.contact-details{grid-column:1;grid-row:auto;align-self:auto;margin-top:26px;padding:18px 0 0;border-left:0;border-top:1px solid #c8d5c9}
}

/* Align homepage copy with the shared header and content left edge. */
@media(min-width:981px){
 .home-hero-grid>div:first-child{width:100%;min-width:0;text-align:left;justify-self:start}
 .home-hero-grid>div:first-child .eyebrow,.home-hero .cta-row,.home-hero .hero-caption{justify-content:flex-start}
 .home-hero .hero-summary{margin-inline:0}
 .home-hero-grid{max-width:1200px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
 .home-hero .home-visual{width:100%;justify-self:stretch;align-self:center}
 .home-hero .home-visual img{position:static;inset:auto;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
 .home-hero .home-visual figcaption{position:static;margin-top:10px}
}

/* Keep the company photograph aligned with the complete copy column. */
@media(min-width:701px){
 .about-company .company-grid{align-items:stretch}
 .about-company .company-image{height:0;min-height:100%;align-self:stretch;object-fit:cover}
}

/* Shorter mobile overview; disclosure remains open when JavaScript is unavailable. */
.home-more>summary{display:none}.home-enquiry-link{margin-top:28px}.seg button[data-k="general"]{grid-column:1/-1}
@media(max-width:700px){.home-more{border-top:1px solid var(--line,#dce3dc)}.home-more>summary{display:list-item;min-height:64px;padding-top:20px;padding-bottom:20px;font-weight:700;cursor:pointer;color:var(--green,#203e33)}.home-more[open]>section{padding-top:18px}.home-enquiry-link .btn{width:100%}}

/* Header WhatsApp brand mark, including the expanded mobile menu. */
.nav-links .nav-wa{width:48px;height:48px;min-height:48px;padding:8px;justify-content:center;flex-shrink:0}
.nav-wa-logo{display:block;width:28px;height:28px;object-fit:contain}
@media(max-width:980px){.nav-links.open .nav-wa{width:48px;padding:8px;align-self:flex-start}}

/* Centre preparation cards against the full adjacent service explanation. */
@media(min-width:701px){.growth-two{align-items:center}.growth-two>.growth-prep{align-self:center}}

/* WhatsApp visual at 0.85x; keep a comfortable 48px contact target. */
.nav-links .nav-wa{background:transparent;position:relative;padding:0}
.nav-links .nav-wa::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:40.8px;height:40.8px;background:var(--green);border-radius:3.4px}
.nav-links .nav-wa:hover{background:transparent}
.nav-links .nav-wa:hover::before{background:var(--green-deep)}
.nav-wa-logo{position:relative;width:23.8px;height:23.8px}

/* Keep service-card dividers and actions aligned at the bottom of each grid row. */
.growth-card .service-link{margin-top:auto}


/* Company identity aligned below the footer logo on every screen size. */
.site-footer .foot-grid{align-items:start}
.site-footer .foot-grid>div{min-width:0}
.site-footer .footer-summary{max-width:30em;margin:18px 0 0;line-height:1.9}
.site-footer .footer-company{display:block;color:inherit;font:inherit}
.site-footer .footer-tradename{display:inline-block;white-space:nowrap}
.site-footer .footer-services{display:block;margin-top:8px}

/* Keep the Chinese homepage heading on two complete lines. */
.home-hero h1.home-title{font-size:clamp(1.75rem,3.45vw,3.45rem)}
.home-title>span{display:block;white-space:nowrap}
@media(max-width:980px){.home-hero h1.home-title{font-size:3rem}}
@media(max-width:700px){.home-hero h1.home-title{font-size:clamp(1.75rem,9vw,2.4rem)}}

/* Compact footer rhythm; retain generous touch targets on touch devices. */
.site-footer .footer-summary{line-height:1.65}
.site-footer .footer-services{margin-top:3px}
.site-footer .foot-grid{padding-bottom:18px}
.site-footer .disclaimer{margin-top:12px;margin-bottom:0;line-height:1.65}
.site-footer .foot-bottom{padding-top:8px;gap:0}
@media(min-width:701px) and (hover:hover) and (pointer:fine){
 .site-footer .foot-grid ul a,.site-footer .foot-contact .contact-details a{min-height:32px}
 .site-footer .footer-policy-item>a{min-height:32px}
}

/* English homepage: restrained type with deliberate phrase breaks. */
.home-hero h1.home-title-en{font-family:"Noto Sans HK",Arial,sans-serif;font-size:clamp(1.35rem,2.05vw,2rem);font-weight:500;line-height:1.3;letter-spacing:0;margin:18px 0 20px}
.home-title-en>span{display:block;white-space:nowrap}
@media(max-width:980px){.home-hero h1.home-title-en{font-size:clamp(1.35rem,4.5vw,2rem)}}
@media(max-width:700px){.home-hero h1.home-title-en{font-size:clamp(1.25rem,5.5vw,1.65rem);margin:14px 0 16px}}

/* Match the Chinese hero title to the core-service heading scale. */
.home-hero h1.home-title{font-size:clamp(1.65rem,2.6vw,2.15rem);line-height:1.5}
.home-hero:lang(zh-Hant) .hero-summary{text-wrap:pretty;line-break:strict}
@media(max-width:700px){.home-hero h1.home-title{font-size:1.65rem}}
/* Balance the two English about phrases with a lighter, compact heading. */
.company-copy h2.about-title-en{font-size:clamp(1.4rem,2.1vw,1.8rem);font-weight:500;line-height:1.4;letter-spacing:0;margin:12px 0 20px}
.about-title-en>span{display:block;text-wrap:balance}
.about-title-en>span+span{margin-top:0}
@media(max-width:700px){.company-copy h2.about-title-en{font-size:1.4rem;line-height:1.4}}

.home-hero .home-keep{white-space:nowrap}

/* One text family for both languages, including legacy headings and counters. */
:root{--site-font:"Noto Sans HK",system-ui,sans-serif}
body,h1,h2,h3,h4,h5,h6,input,select,textarea,button,summary,
.serif,.num,.seal,.emblem .em-cap,.stat .n,.pillar .pn,.lic .idx,
.cmp-card .country,.cmp-notes-title,.m-title,.m-h,.d-h,.mandate-mark,
.service-meta span:first-child,.process-item>span,.growth-step small,
.step::before,details summary::after,.detail-body li::marker,.modal-card li::marker{font-family:var(--site-font)}
.home-hero h1.home-title-en{font-family:var(--site-font)}

.guide-hero h1,.detail-title,details summary{font-family:var(--site-font)}

/* Preserve the photograph ratio at tablet widths as well as desktop/mobile. */
.home-hero .home-visual img{height:auto;aspect-ratio:4/3;object-fit:contain}
