/*!KANJIN-BUILT source=css/styles.css sha256=898cfff0653e6ab4e1f0a6e3e83f6d3130215842238ad0a430153e17022250f5 tool=clean-css-cli@5*/
:root{--color-primary:#3e7c59;--color-primary-dark:#2d5a40;--color-secondary:#5a9e74;--color-accent:#7ab893;--color-dark:#1a2e23;--color-text:#2d3748;--color-text-light:#4d5c69;--color-light:#f8f9fa;--color-white:#ffffff;--color-border:#e2e8f0;--color-surface:#d5e4db;--color-canada:#ff0000;--color-jade-bright:#8fe3b4;--font-primary:'Inter','Noto Sans SC',-apple-system,BlinkMacSystemFont,sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-4xl:2.5rem;--font-size-5xl:3rem;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--max-width:1200px;--header-height:80px;--shadow-sm:0 1px 2px rgba(0, 0, 0, 0.05);--shadow-md:0 4px 6px rgba(0, 0, 0, 0.07);--shadow-lg:0 10px 25px rgba(0, 0, 0, 0.1);--shadow-xl:0 20px 40px rgba(0, 0, 0, 0.15);--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px;--transition:0.3s ease;--transition-slow:0.5s ease}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes slideIn{from{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}.animate-fade-up{animation:.6s forwards fadeInUp}.animate-fade-left{animation:.6s forwards fadeInLeft}.animate-fade-right{animation:.6s forwards fadeInRight}.animate-float{animation:3s ease-in-out infinite float}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;scroll-padding-top:calc(var(--header-height) + 2rem)}body{font-family:var(--font-primary);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text);background-color:var(--color-white);-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-secondary)}ol,ul{list-style:none}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--color-dark)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}p{margin-bottom:var(--space-4)}.text-center{text-align:center}.text-light{color:var(--color-text-light)}.highlight{color:var(--color-primary)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.section{padding:var(--space-20) 0;position:relative}.section-sm{padding:var(--space-12) 0}.grid{display:grid;gap:var(--space-8)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:992px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}.header{position:fixed;top:0;left:0;right:0;height:var(--header-height);background:rgba(255,255,255,.95);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm);z-index:1000;transition:all var(--transition)}.header.scrolled{box-shadow:var(--shadow-md)}.header .container{display:flex;align-items:center;justify-content:space-between;height:100%}.logo{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-xl);font-weight:700;color:var(--color-primary)}.logo-placeholder{width:40px;height:40px;background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--color-white);font-weight:700;font-size:var(--font-size-lg);transition:transform var(--transition)}.logo:hover .logo-placeholder{transform:scale(1.1)}.logo-img{width:40px;height:40px;object-fit:contain;transition:transform var(--transition)}.logo:hover .logo-img{transform:scale(1.1)}.nav{display:flex;align-items:center;gap:var(--space-8)}.nav-links{display:flex;gap:var(--space-6)}.nav-links a{color:var(--color-text);font-weight:500;padding:var(--space-2) 0;position:relative}.nav-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));transition:width var(--transition)}.nav-links a.active::after,.nav-links a:hover::after{width:100%}.nav-links a.active,.nav-links a:hover{color:var(--color-primary)}.lang-toggle{display:flex;gap:var(--space-1);background:var(--color-light);padding:var(--space-1);border-radius:var(--radius-md)}.lang-toggle a,.lang-toggle button{text-decoration:none;white-space:nowrap;line-height:1.2;padding:var(--space-2) var(--space-3);border:none;background:0 0;cursor:pointer;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-light);border-radius:var(--radius-sm);transition:all var(--transition);display:flex;align-items:center;gap:var(--space-2)}.lang-toggle a .flag,.lang-toggle button .flag{font-size:1.1em}.lang-toggle a.active,.lang-toggle button.active{background:var(--color-white);color:var(--color-primary);box-shadow:var(--shadow-sm)}.mobile-menu-btn{display:none;flex-direction:column;gap:5px;background:0 0;border:none;cursor:pointer;padding:var(--space-2)}.mobile-menu-btn span{width:24px;height:2px;background:var(--color-dark);transition:var(--transition)}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}.nav-links{position:absolute;top:var(--header-height);left:0;right:0;background:var(--color-white);flex-direction:column;padding:0 var(--space-6);box-shadow:var(--shadow-md)}.mobile-menu-btn{display:flex}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);font-size:var(--font-size-base);font-weight:500;border-radius:var(--radius-md);border:2px solid transparent;cursor:pointer;transition:all var(--transition);text-decoration:none;position:relative;overflow:hidden}html.cta-assessment-off [data-assessment-cta]{display:none!important}.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn:hover::before{left:100%}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);background-size:200% 200%;color:var(--color-white)}.btn-primary:hover{background-position:100% 100%;transform:translateY(-2px);box-shadow:var(--shadow-md);color:var(--color-white)}.btn-outline{background:0 0;border-color:var(--color-primary);color:var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:var(--color-white);transform:translateY(-2px)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-lg)}.hero{position:relative;display:flex;flex-direction:column;padding-top:calc(var(--header-height) + 3rem);overflow:hidden;color:var(--color-white);background:#070d0a}.hero-aurora{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.hero-aurora i{position:absolute;display:block;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform}.hero-aurora i:first-child{width:46%;height:120%;left:5%;top:-25%;background:#2f6f52;animation:26s ease-in-out infinite alternate hero-drift-1}.hero-aurora i:nth-child(2){width:40%;height:110%;left:48%;top:-15%;background:#1d5f63;animation:31s ease-in-out infinite alternate hero-drift-2}.hero-aurora i:nth-child(3){width:34%;height:100%;left:72%;top:-5%;background:#3e7c59;animation:37s ease-in-out infinite alternate hero-drift-3}@keyframes hero-drift-1{from{transform:translate3d(-6%,-4%,0) scale(1)}to{transform:translate3d(10%,6%,0) scale(1.18)}}@keyframes hero-drift-2{from{transform:translate3d(6%,5%,0) scale(1.12)}to{transform:translate3d(-8%,-6%,0) scale(1)}}@keyframes hero-drift-3{from{transform:translate3d(4%,-6%,0) scale(1)}to{transform:translate3d(-10%,8%,0) scale(1.22)}}.hero .container{position:relative;z-index:1;flex:1 1 auto}.hero-content{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(16px,3.2vw,54px);align-items:stretch;min-height:55vh;min-height:55svh;padding:clamp(16px,3vw,40px) 0}.hero-media{position:relative;z-index:1;width:min(58%,720px);aspect-ratio:1100/880}.hero-collage,.hero-veins{position:absolute;inset:0;width:100%;height:100%;display:block}.hero-veins{z-index:1}.hero-collage{z-index:2}.hero-scrim{position:absolute;inset:0;z-index:1;display:none;pointer-events:none}.hero-text{animation:.8s fadeInLeft;text-shadow:0 2px 8px rgba(0,0,0,.5);display:flex;flex-direction:column;justify-content:space-between;min-width:0}.hero-badge{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);font-size:var(--font-size-xs);font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--color-jade-bright);text-shadow:0 1px 6px rgba(0,0,0,.55)}.hero-badge .flag{font-size:1.2em}.hero-text h1{margin-bottom:var(--space-6);color:#fff;-webkit-text-fill-color:#fff}.hero-text h1 .highlight{color:var(--color-jade-bright);-webkit-text-fill-color:var(--color-jade-bright);-webkit-text-stroke:0;text-shadow:0 2px 12px rgba(0,0,0,.45)}.hero-text p{font-size:var(--font-size-lg);color:var(--color-white);margin-bottom:var(--space-6);background:rgba(255,255,255,.13);backdrop-filter:blur(6px);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.18);display:block}.hero-buttons{display:flex;gap:clamp(8px,.9vw,12px);flex-wrap:wrap}.hero .hero-buttons .btn-lg{font-size:clamp(11.5px, calc(var(--hero-copy-w, 440px) * .033 - .6px), 15px);padding:.86em .9em;border-width:1.5px;letter-spacing:.005em;white-space:nowrap}@media (min-width:861px){.hero-buttons{flex-wrap:nowrap}}.hero .btn-primary{background:var(--color-jade-bright);border-color:var(--color-jade-bright);color:#10301f;text-shadow:none;font-weight:700}.hero .btn-primary:hover{background:#a8f0c6;border-color:#a8f0c6;color:#0b2416}.hero .btn-outline{border-color:rgba(255,255,255,.55);color:var(--color-white)}.hero .btn-outline:hover{background:var(--color-white);border-color:var(--color-white);color:var(--color-primary)}.hero-image{position:relative;animation:.8s fadeInRight}.hero-image-placeholder{width:100%;aspect-ratio:4/3;background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--color-white);font-size:var(--font-size-lg);box-shadow:var(--shadow-xl);position:relative;overflow:hidden}.hero-image-placeholder::before{content:'';position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:3s ease-in-out infinite slideIn}.hero-img{width:100%;height:auto;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);object-fit:cover}.logo-placeholder-lg{width:100%;max-width:300px;aspect-ratio:1;background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--color-white);font-size:8rem;font-weight:700;box-shadow:var(--shadow-xl);margin:0 auto;border:none}.hero-stats{position:relative;z-index:2;flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;column-gap:var(--space-6);row-gap:var(--space-1);padding:var(--space-4) var(--space-6);background:var(--color-primary);text-align:center}.hero-licence{margin:0;font-size:var(--font-size-sm);font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.95)}.hero-licence b{font-weight:700;color:var(--color-white);font-variant-numeric:tabular-nums;letter-spacing:.16em}.hero-offices{margin:0;font-size:var(--font-size-sm);color:rgba(255,255,255,.95);letter-spacing:.04em}@media (max-width:992px){.hero{padding-top:var(--header-height)}.hero-text p{background:rgba(255,255,255,.05);backdrop-filter:blur(1px)}.hero-stats{justify-content:center}.hero-image{order:-1;max-width:400px;margin:0 auto}.hero-img{max-height:300px;object-fit:contain}}@media (max-width:860px){.hero-content{grid-template-columns:minmax(0,1fr);align-items:end;text-align:center;padding:calc(var(--hero-pic-h,80vw) * .5) 0 clamp(18px,5vw,76px)}.hero-buttons{justify-content:center;gap:10px}.hero .hero-buttons .btn-lg{font-size:14px;padding:.95em 1em}.hero-buttons .btn-primary{flex:1 0 100%}.hero-buttons .btn-outline{flex:1 1 0}.hero-badge{align-self:center}.hero-media{position:absolute;top:clamp(10px,3vw,16px);left:50%;transform:translateX(-50%);z-index:0;width:100%}.hero-text{position:relative;z-index:2}.hero-scrim{display:block;background:linear-gradient(180deg,rgba(7,13,10,0) 0,rgba(7,13,10,.14) calc(var(--hero-pic-h,80vw) * .3),rgba(7,13,10,.62) calc(var(--hero-pic-h,80vw) * .52),rgba(7,13,10,.78) calc(var(--hero-pic-h,80vw) * .86),rgba(7,13,10,.78) 100%)}}.eyebrow,.home-head .eyebrow{margin:0 0 var(--space-3);font-size:var(--font-size-xs);font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--color-primary-dark)}.band-ink .eyebrow,.band-ink .home-head .eyebrow{color:var(--color-jade-bright)}.home-section{padding:clamp(64px,8vw,128px) 0}.home-head{max-width:62ch;margin:0 0 clamp(32px,4.5vw,64px)}.home-head h2{margin:0 0 var(--space-4);font-size:clamp(1.75rem, 3.2vw, 2.85rem);line-height:1.1;letter-spacing:-.025em}.home-head p{margin:0;max-width:54ch;font-size:var(--font-size-lg);line-height:1.6;color:var(--color-text-light)}.home-index{list-style:none;margin:0;padding:0;border-top:1px solid rgba(45,55,72,.14)}.home-index>li{border-bottom:1px solid rgba(45,55,72,.14)}.home-index-row{display:grid;grid-template-columns:minmax(0,23ch) minmax(0,1fr) auto;align-items:baseline;gap:clamp(14px,3vw,48px);padding:clamp(18px,2.2vw,30px) clamp(4px,1vw,16px);text-decoration:none;color:inherit;transition:background-color var(--transition),padding-left var(--transition)}.home-index-name{font-family:var(--font-primary);font-weight:600;font-size:clamp(1.08rem, 1.7vw, 1.4rem);line-height:1.25;letter-spacing:-.018em;color:var(--color-dark);transition:color var(--transition)}.home-index-note{color:var(--color-text-light);line-height:1.6}.home-index-go{width:22px;height:22px;flex:none;align-self:center;fill:none;stroke:var(--color-primary-dark);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.6;transition:transform var(--transition),opacity var(--transition)}.home-index-row:focus-visible,.home-index-row:hover{background-color:rgba(62,124,89,.055);padding-left:clamp(10px,1.6vw,24px)}.home-index-row:focus-visible .home-index-name,.home-index-row:hover .home-index-name{color:var(--color-primary)}.home-index-row:focus-visible .home-index-go,.home-index-row:hover .home-index-go{opacity:1;transform:translateX(5px)}.band-ink{position:relative;overflow:hidden;background:#0a130f;color:#e4ece7}.band-ink::before{content:'';position:absolute;inset:-30% -10% auto -10%;height:150%;background:radial-gradient(45% 60% at 18% 0,rgba(47,111,82,.55) 0,transparent 68%),radial-gradient(40% 55% at 82% 20%,rgba(29,95,99,.42) 0,transparent 70%);pointer-events:none}.band-ink>.container{position:relative;z-index:1}.band-ink h2,.band-ink h3{color:var(--color-white)}.band-ink .home-head p{color:rgba(228,236,231,.66)}.home-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,48px);border-top:1px solid rgba(255,255,255,.16)}.home-flow>li{position:relative;padding-top:clamp(18px,2vw,30px)}.home-flow>li::before{content:'';position:absolute;top:-1px;left:0;width:36px;height:2px;background:var(--color-jade-bright)}.home-flow-no{display:block;margin-bottom:.7em;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.2em;font-variant-numeric:tabular-nums;color:rgba(143,227,180,.8)}.home-flow h3{margin:0 0 .4em;font-size:clamp(1.02rem, 1.45vw, 1.28rem);letter-spacing:-.015em}.home-flow p{margin:0;line-height:1.55;color:rgba(228,236,231,.62)}.home-why{display:grid;grid-template-columns:minmax(0,0.92fr) minmax(0,1fr);gap:clamp(28px,5vw,76px);align-items:stretch}.home-points{margin:clamp(20px,2.5vw,34px) 0 0;border-top:1px solid rgba(45,55,72,.14)}.home-point{display:grid;grid-template-columns:minmax(0,16ch) minmax(0,1fr);gap:clamp(10px,2vw,30px);padding:clamp(15px,1.8vw,22px) 0;border-bottom:1px solid rgba(45,55,72,.14)}.home-point h3{display:flex;align-items:flex-start;gap:10px;margin:0;font-size:var(--font-size-base);font-weight:600;line-height:1.4;letter-spacing:-.01em;color:var(--color-dark)}.home-point-mark{flex:none;width:26px;height:26px;margin-top:-2px;object-fit:contain}.home-point p{margin:0 0 .45em;line-height:1.6;color:var(--color-text-light)}.home-point p:last-child{margin-bottom:0}.home-point strong{font-weight:600;color:var(--color-text)}.home-why .why-carousel{max-width:none;aspect-ratio:4/5;max-height:660px;align-self:start;position:sticky;top:calc(var(--header-height) + var(--space-6));border-radius:var(--radius-lg);box-shadow:none}.home-why .why-carousel-slide,.home-why .why-carousel-slide img{object-fit:cover;object-position:center 35%}.cta.cta-ink{background:#0a130f;animation:none;text-align:left}.cta.cta-ink::before{background:radial-gradient(50% 65% at 22% 10%,rgba(47,111,82,.5) 0,transparent 70%),radial-gradient(45% 60% at 80% 85%,rgba(29,95,99,.4) 0,transparent 72%);opacity:1}.cta.cta-ink .container{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(24px,4vw,64px);align-items:center}.cta.cta-ink h2{margin:0 0 var(--space-3);font-size:clamp(1.7rem, 3vw, 2.6rem);line-height:1.12;letter-spacing:-.025em}.cta.cta-ink p{margin:0;opacity:1;max-width:46ch;font-size:var(--font-size-lg);color:rgba(228,236,231,.68)}.cta.cta-ink .cta-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.cta.cta-ink .btn-primary{background:var(--color-jade-bright);border-color:var(--color-jade-bright);color:#10301f;font-weight:700}.cta.cta-ink .btn-primary:hover{background:#a8f0c6;border-color:#a8f0c6}.cta.cta-ink .btn-outline{background:0 0;border-color:rgba(255,255,255,.5);color:var(--color-white)}.cta.cta-ink .btn-outline:hover{background:var(--color-white);border-color:var(--color-white);color:var(--color-primary)}@media (max-width:992px){.home-why .why-carousel{position:static;aspect-ratio:16/10;max-height:none}.home-index-row{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}.home-index-note{grid-column:1}.home-index-go{grid-row:1/span 2;grid-column:2}.home-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.cta.cta-ink .container,.home-why{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.home-flow{grid-template-columns:minmax(0,1fr)}.home-point{grid-template-columns:minmax(0,1fr);gap:4px}}.statements{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(28px,5vw,76px);padding-top:clamp(30px,4vw,52px);border-top:1px solid rgba(62,124,89,.22)}.statement{position:relative}.statement+.statement::before{content:'';position:absolute;top:0;bottom:0;left:calc(clamp(28px,5vw,76px)/ -2);width:1px;background:rgba(62,124,89,.22)}.statement-label{display:flex;align-items:center;gap:12px;margin:0 0 clamp(14px,1.7vw,24px);font-family:var(--font-primary);font-size:.6875rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--color-primary-dark)}.statement-label::before{content:'';flex:none;width:26px;height:2px;background:var(--color-primary)}.statement-text{margin:0;font-family:var(--font-primary);color:var(--color-dark);text-wrap:balance}.statement-vision .statement-text{font-weight:300;font-size:clamp(1.45rem, 2.9vw, 2.3rem);line-height:1.2;letter-spacing:-.032em}.statement-mission .statement-text{font-weight:400;font-size:clamp(1.02rem, 1.6vw, 1.32rem);line-height:1.55;letter-spacing:-.012em;color:var(--color-text)}.statement-text em{font-style:normal;font-weight:600;color:var(--color-primary)}.statement-vision .statement-text em{font-weight:500}@media (max-width:760px){.statements{grid-template-columns:minmax(0,1fr);gap:clamp(24px,6vw,38px)}.statement+.statement::before{left:0;right:0;top:calc(clamp(24px,6vw,38px)/ -2);bottom:auto;width:auto;height:1px}}.card{background:var(--color-white);border:1px solid rgba(62,124,89,.14);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-md);transition:all var(--transition);position:relative;overflow:hidden}.card::before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));transform:scaleX(0);transform-origin:left;transition:transform var(--transition)}.card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}.card:hover::before{transform:scaleX(1)}.card-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-6);font-size:var(--font-size-2xl);transition:transform var(--transition)}.card:hover .card-icon{transform:scale(1.1) rotate(5deg)}.card h3{margin-bottom:var(--space-4)}.card p{color:var(--color-text-light);margin-bottom:0}.services{background:var(--color-surface);position:relative}.services::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent)}.section-header{text-align:center;max-width:700px;margin:0 auto var(--space-12)}.section-header h2{margin-bottom:var(--space-4)}.section-header p{color:var(--color-text-light);font-size:var(--font-size-lg);margin-bottom:0}.why-text h2{margin-top:var(--space-2);margin-bottom:var(--space-6)}.why-text>p:first-of-type{margin-top:var(--space-2)}.hero+.section{padding-top:var(--space-12)}.section h2:not(.section-header h2){margin-top:0;margin-bottom:var(--space-6)}.why-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:center}.why-image-placeholder{width:100%;aspect-ratio:4/3;background:linear-gradient(135deg,var(--color-light) 0,rgba(62,124,89,.05) 100%);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--color-text-light);border:2px dashed var(--color-border);position:relative;overflow:hidden}.why-image{width:100%;max-width:500px;height:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);object-fit:cover}.why-carousel{position:relative;width:100%;max-width:500px;aspect-ratio:3/2;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.why-carousel-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease-in-out}.why-carousel-slide.is-active{opacity:1}figure.why-carousel-slide{margin:0}.why-carousel-slide img{display:block;width:100%;height:100%;object-fit:cover}.why-carousel-dots{position:absolute;bottom:var(--space-3);left:0;right:0;display:flex;justify-content:center;gap:var(--space-2);z-index:2}.why-carousel-caption{position:absolute;left:0;right:0;bottom:0;z-index:1;display:flex;align-items:center;gap:6px;margin:0;padding:var(--space-8) var(--space-4) var(--space-3);background:linear-gradient(to top,rgba(10,24,16,.72),rgba(10,24,16,0));color:var(--color-white);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.02em;line-height:1.2;text-shadow:0 1px 2px rgba(0,0,0,.45);pointer-events:none;padding-right:calc(var(--space-4) + 96px)}.why-carousel-caption svg{flex:none;opacity:.9}.why-carousel:has(.why-carousel-caption) .why-carousel-dots{left:auto;right:var(--space-4);justify-content:flex-end}.why-carousel-dot{width:8px;height:8px;border-radius:50%;border:none;padding:0;cursor:pointer;background:rgba(255,255,255,.5);box-shadow:0 1px 2px rgba(0,0,0,.3);transition:background var(--transition),transform var(--transition)}.why-carousel-dot.is-active{background:var(--color-white);transform:scale(1.3)}.why-list{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-6)}.why-list li{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);transition:all var(--transition)}.why-list li:hover{background:var(--color-light)}.why-list li .check{width:24px;height:24px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;flex-shrink:0}@media (max-width:768px){.why-content{grid-template-columns:1fr}.why-image-placeholder{display:none}}.cta{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);background-size:200% 200%;animation:8s infinite gradientShift;color:var(--color-white);text-align:center;position:relative;overflow:hidden}.cta::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.cta .container{position:relative;z-index:1}.cta h2{color:var(--color-white);margin-bottom:var(--space-4)}.cta p{opacity:.9;font-size:var(--font-size-lg);margin-bottom:var(--space-8)}.cta .btn{background:var(--color-white);color:var(--color-primary)}.cta .btn:hover{background:var(--color-light);transform:translateY(-2px)}.team-card{text-align:center;transition:all var(--transition)}.team-photo{width:180px;height:180px;border-radius:50%;background:linear-gradient(135deg,var(--color-light),rgba(62,124,89,.1));margin:0 auto var(--space-6);display:flex;align-items:center;justify-content:center;color:var(--color-text-light);font-size:var(--font-size-sm);border:4px solid var(--color-white);box-shadow:var(--shadow-lg);transition:all var(--transition);position:relative;overflow:hidden}.team-card:hover .team-photo{transform:scale(1.05);box-shadow:var(--shadow-xl)}.team-photo-img{width:180px;height:180px;border-radius:50%;object-fit:cover;margin:0 auto var(--space-6);border:4px solid var(--color-white);box-shadow:var(--shadow-lg);transition:all var(--transition)}.team-card:hover .team-photo-img{transform:scale(1.05);box-shadow:var(--shadow-xl)}.team-cardh3,.team-cardh4{margin-bottom:var(--space-1)}.team-card .title{color:var(--color-primary);font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--space-1)}.team-card p{font-size:var(--font-size-sm);color:var(--color-text-light)}.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:var(--space-12)}.contact-info h2,.contact-info h3{margin-bottom:var(--space-6);font-size:var(--font-size-2xl)}.contact-item{display:flex;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-4);border-radius:var(--radius-md);transition:all var(--transition)}.contact-item:hover{background:var(--color-light)}.contact-item>*{min-width:0}.contact-item p,.contact-itemh3,.contact-itemh4{overflow-wrap:anywhere}.contact-item-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;font-size:1.2em}.contact-itemh3,.contact-itemh4{font-size:var(--font-size-base);margin-bottom:var(--space-1)}.contact-item p{color:var(--color-text-light);font-size:var(--font-size-sm);margin-bottom:0}.contact-form{background:var(--color-white);padding:var(--space-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.form-group{margin-bottom:var(--space-6)}.form-group label{display:block;margin-bottom:var(--space-2);font-weight:500;color:var(--color-dark)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-size-base);transition:all var(--transition)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:0;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(62,124,89,.1)}.form-group textarea{min-height:150px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}@media (max-width:768px){.contact-grid{grid-template-columns:minmax(0,1fr)}.contact-form{padding:var(--space-5)}.form-row{grid-template-columns:1fr}}.footer{background:var(--color-dark);color:var(--color-white);padding:var(--space-16) 0 var(--space-8);position:relative}.footer::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary),var(--color-primary));background-size:200% 100%;animation:4s linear infinite gradientShift}.footer-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:var(--space-12);margin-bottom:var(--space-12)}.footer .logo{color:var(--color-white);text-shadow:0 1px 3px rgba(0,0,0,.3)}.footer .logo-img{filter:drop-shadow(0 1px 3px rgba(0, 0, 0, .3));border:2px solid rgba(255,255,255,.4);border-radius:50%}.footer-brand p{color:rgba(255,255,255,.7);margin-top:var(--space-4)}.footer h3,.footer h4{color:var(--color-white);margin-bottom:var(--space-6);font-size:var(--font-size-base)}.footer-links a{display:block;color:rgba(255,255,255,.7);padding:var(--space-2) 0;transition:all var(--transition)}.footer-links p{color:rgba(255,255,255,.7);padding:var(--space-2) 0;margin:0}.footer-links p .footer-office-link{display:inline;padding:0;color:inherit}.footer-links p .footer-office-link:hover{color:var(--color-white);text-decoration:underline;padding-left:0}.footer-links a:hover{color:var(--color-white);padding-left:var(--space-2)}@media (max-width:400px){.footer-grid{grid-template-columns:minmax(0,1fr)}}.footer-bottom{padding-top:var(--space-8);border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;color:rgba(255,255,255,.5);font-size:var(--font-size-sm)}.social-links{display:flex;gap:var(--space-4)}.social-links a{width:40px;height:40px;background:rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;transition:all var(--transition)}.social-links a:hover{background:var(--color-primary);transform:translateY(-3px)}@media (max-width:768px){.footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.footer-bottom{flex-direction:column;gap:var(--space-4);text-align:center}}.page-header{padding:calc(var(--header-height) + var(--space-16)) 0 var(--space-16);background:linear-gradient(135deg,var(--color-surface) 0,var(--color-white) 100%);text-align:center;position:relative;overflow:hidden}.page-header::before{content:'';position:absolute;top:0;right:0;width:50%;height:100%;background:radial-gradient(circle at top right,rgba(62,124,89,.05),transparent 70%)}.page-header h1{margin-bottom:var(--space-4);animation:.6s fadeInUp}.page-header p{color:var(--color-text-light);font-size:var(--font-size-lg);max-width:600px;margin:0 auto;animation:.6s .2s both fadeInUp}.page-logo{width:150px;height:150px;object-fit:contain;margin:0 auto var(--space-6);display:block;animation:.6s fadeInUp}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.value-item{padding:var(--space-6);border-left:3px solid var(--color-primary);background:var(--color-white);border-radius:0 var(--radius-md) var(--radius-md) 0;box-shadow:var(--shadow-sm);transition:all var(--transition)}.value-item:hover{transform:translateX(5px);box-shadow:var(--shadow-md)}.value-itemh3,.value-itemh4{margin-bottom:var(--space-2)}.value-item p{margin-bottom:0;color:var(--color-text-light);font-size:var(--font-size-sm)}.process-steps{display:flex;justify-content:space-between;position:relative;margin:var(--space-12) 0}.process-steps::before{content:'';position:absolute;top:40px;left:10%;right:10%;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary))}.process-step{text-align:center;position:relative;z-index:1;flex:1;padding:0 var(--space-2)}.process-step .step-number{width:80px;height:80px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4);color:#fff;font-size:var(--font-size-2xl);font-weight:700;box-shadow:var(--shadow-lg);transition:all var(--transition)}.process-step:hover .step-number{transform:scale(1.1)}.process-steph3,.process-steph4{font-size:var(--font-size-base);margin-bottom:var(--space-2)}.process-step p{font-size:var(--font-size-sm);color:var(--color-text-light);margin:0}@media (max-width:768px){.values-grid{grid-template-columns:1fr}.process-steps{flex-direction:column;gap:var(--space-6)}.process-steps::before{top:30px;bottom:30px;left:30px;right:auto;width:3px;height:auto}.process-step{display:flex;text-align:left;gap:var(--space-4);align-items:flex-start;padding-left:0}.process-step .step-number{width:60px;height:60px;min-width:60px;flex-shrink:0;margin:0}.process-step>div:last-child{padding-top:var(--space-3)}}.offices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.office-card{background:var(--color-white);padding:var(--space-6);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);transition:all var(--transition);border:1px solid rgba(62,124,89,.14)}.office-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.office-card .flag{font-size:2.5rem;margin-bottom:var(--space-3)}.office-flag{font-size:3rem;margin-bottom:var(--space-4);line-height:1}.office-cardh3,.office-cardh4{margin-bottom:var(--space-1)}.office-card p{margin:0;color:var(--color-text-light);font-size:var(--font-size-sm)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}[data-lang=en] .lang-zh,[data-lang=zh] .lang-en{display:none}.canada-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-light)}.canada-badge .flag{font-size:1.2em}.reveal{opacity:0;transform:translateY(40px);transition:opacity .7s,transform .7s}@media (scripting:none){.reveal{opacity:1;transform:none}}.reveal.reveal-left{transform:translateX(-40px)}.reveal.reveal-right{transform:translateX(40px)}.reveal.reveal-scale{transform:scale(.95)}@media (max-width:1279px){.reveal.reveal-left,.reveal.reveal-right{transform:translateY(30px)}}.reveal.revealed{opacity:1;transform:translateY(0) translateX(0) scale(1)}.reveal-delay-1{transition-delay:0.15s}.reveal-delay-2{transition-delay:0.3s}.reveal-delay-3{transition-delay:0.45s}.reveal-delay-4{transition-delay:0.6s}.card.reveal{transform:translateY(40px) scale(.97)}.card.reveal.revealed{transform:translateY(0) scale(1)}.card.revealed .card-icon{animation:.4s .3s both bounceIn}@keyframes bounceIn{0%{transform:scale(.5);opacity:0}70%{transform:scale(1.1)}100%{transform:scale(1);opacity:1}}@media (prefers-reduced-motion:reduce){.hero-aurora i:first-child,.hero-aurora i:nth-child(2),.hero-aurora i:nth-child(3){animation:none}.reveal{opacity:1;transform:none;transition:none}.reveal-delay-1,.reveal-delay-2,.reveal-delay-3,.reveal-delay-4{transition-delay:0s}.card.revealed .card-icon{animation:none}}.header{transition:.4s}.header.scrolled{height:64px}.header.scrolled .logo-img{width:32px;height:32px}.header.scrolled .logo{font-size:var(--font-size-base)}@media (max-width:768px){.offices-grid{grid-template-columns:1fr}.nav-links{display:flex!important;max-height:0;overflow:hidden;opacity:0;padding-top:0;padding-bottom:0;transition:max-height .4s,opacity .3s,padding .3s}.nav-links.open{max-height:400px;opacity:1;padding-top:var(--space-6);padding-bottom:var(--space-6)}.nav-links a{transform:translateX(-20px);opacity:0;transition:transform .3s ease,opacity .3s ease,color var(--transition)}.nav-links.open a{transform:translateX(0);opacity:1}.nav-links.open a:first-child{transition-delay:50ms}.nav-links.open a:nth-child(2){transition-delay:0.1s}.nav-links.open a:nth-child(3){transition-delay:0.15s}.nav-links.open a:nth-child(4){transition-delay:0.2s}.nav-links.open a:nth-child(5){transition-delay:0.25s}.mobile-menu-btn span{transition:.3s;transform-origin:center}.mobile-menu-btn.active span:first-child{transform:translateY(7px) rotate(45deg)}.mobile-menu-btn.active span:nth-child(2){opacity:0;transform:scaleX(0)}.mobile-menu-btn.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}}.card a:not(.btn),.why-text a{position:relative;text-decoration:none}.card a:not(.btn)::after,.why-text a::after{content:'';position:absolute;bottom:-1px;left:0;width:0;height:1px;background:var(--color-primary);transition:width .3s}.card a:not(.btn):hover::after,.why-text a:hover::after{width:100%}.team-title-icon{width:24px!important;height:24px!important;object-fit:contain;display:block;margin:-2px auto 2px}.team-title-icon+p{margin-top:var(--space-2)}.why-features{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-top:var(--space-6)}.why-feature{display:flex;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-white);border:1px solid var(--color-border);transition:all var(--transition)}.why-feature:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.why-feature-icon{flex-shrink:0;width:36px!important;height:36px!important;object-fit:contain;margin-top:var(--space-1)}.why-featureh3,.why-featureh4{font-size:var(--font-size-base);margin-bottom:var(--space-2);color:var(--color-primary)}.why-feature-list{list-style:none;padding:0;margin:0}.why-feature-list li{font-size:var(--font-size-sm);color:var(--color-text-light);line-height:1.5;padding-left:var(--space-4);position:relative;margin-bottom:var(--space-1)}.why-feature-list li:last-child{margin-bottom:0}.why-feature-list li::before{content:'';position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--color-primary)}.why-feature-list li strong{color:var(--color-text);font-weight:600}@media (max-width:768px){.why-features{grid-template-columns:1fr}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}