:root{
  --color-main:#00508f;
  --color-main-hover:#004479;
  --color-deput:#8ebb34;
  --color-deput-hover:#8ebb34;
  --container-width:1320px;
  --padding-about:16px;
  --padding-home-box:clamp(25px,5vw,80px);
  --padding-page-box:clamp(25px,3.5vw,40px);
  --font-size-home-title:clamp(22px,3.5vw,35px);
  --font-size-page-title:clamp(20px,3.3vw,32px);
  --font-size-detail-title:clamp(20px,2.5vw,28px);
  --font-size-detail-desc:clamp(15px,1.5vw,17px);
  --svg-close:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M14 14l20 20M14 34l20-20' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --svg-left:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath stroke-linejoin='round' stroke-linecap='round' stroke-width='2' stroke='%23333' d='M31 36L19 24l12-12' data-follow-stroke='%23333'/%3E%3C/svg%3E");
  --svg-right:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath stroke-linejoin='round' stroke-linecap='round' stroke-width='2' stroke='%23333' d='M19 12l12 12-12 12' data-follow-stroke='%23333'/%3E%3C/svg%3E");
  --svg-bottom:url("data:image/svg+xml,%3Csvg  xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M36 18L24 30 12 18' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --svg-tel:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath d='M896.101 734.021c0 143.356-65.717 143.063-383.049 143.063-317.311 0-383.03.292-383.03-143.063 0-156.464 171.491-468.636 383.03-468.636 211.554 0 383.049 312.174 383.049 468.636zM514.172 332.478c-89.885 0-162.744 73.293-162.744 163.707 0 90.424 72.859 163.707 162.744 163.707 89.873 0 162.734-73.282 162.734-163.707.001-90.413-72.861-163.707-162.734-163.707zM173.064 452.985c66.717-107.44 182.049-222.063 339.189-222.063 157.1 0 279.926 124.047 335.593 221.112 28.769 48.168 84.011 43.069 108.093 0 15.474-32.229 63.827-302.198-443.683-302.198-513.207.686-460.177 278.937-442.156 302.2 31.918 48.81 92.05 23.925 102.968.948z'/%3E%3C/svg%3E");
  --svg-qq:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath d='M116.435 581.714c-33.54 78.964-38.985 154.297-12.059 168.37 18.573 9.696 47.686-12.382 74.937-52.909 10.79 44.157 37.492 84.137 75.632 116.21-40.003 14.768-66.135 38.886-66.135 66.232 0 44.954 70.71 81.302 157.978 81.302 78.716 0 143.907-29.539 155.94-68.372 3.231-.05 15.663-.05 18.795 0 12.083 38.784 77.324 68.372 155.99 68.372 87.267 0 157.977-36.399 157.977-81.302 0-27.297-26.105-51.464-66.135-66.232 38.088-32.123 64.889-72.053 75.63-116.21 27.251 40.527 56.29 62.605 74.888 52.91 26.95-14.074 21.63-89.457-12.032-168.371-26.355-62.059-62.11-107.755-89.457-117.848.398-3.93.596-7.958.596-11.935 0-23.968-6.661-46.145-18.05-64.195.2-1.393.2-2.835.2-4.228 0-11.037-2.636-21.38-7.114-30.331-6.91-161.31-111.93-289.402-281.866-289.402-170.037 0-275.106 128.093-281.944 289.402-4.525 9-7.135 19.343-7.135 30.331 0 1.393.1 2.836.15 4.228-11.288 18.05-17.951 40.177-17.951 64.195 0 3.978.15 7.956.498 11.935-27.152 10.093-63.029 55.84-89.333 117.848z' fill='%23272636'/%3E%3C/svg%3E");
  --svg-wechat:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath d='M684.111 364.089c10.475 0 20.95.722 31.425 1.806-28.174-131.477-168.68-229-329.053-229-179.155 0-326.163 122.085-326.163 277.4 0 89.578 48.762 163.263 130.393 220.332l-32.508 98.246 114.14-57.43c40.815 7.946 73.684 16.254 114.138 16.254 10.114 0 20.227-.362 30.341-1.445-6.502-21.672-10.114-44.789-10.114-68.267 0-142.312 122.447-257.896 277.401-257.896zM508.57 275.595c24.561 0 40.815 16.254 40.815 40.816 0 24.561-16.254 40.815-40.815 40.815-24.562 0-49.123-16.254-49.123-40.815.36-24.562 24.922-40.816 49.123-40.816zM280.29 357.226c-24.562 0-49.123-16.254-49.123-40.815 0-24.562 24.561-40.816 49.123-40.816 24.561 0 40.815 16.254 40.815 40.816 0 24.2-16.254 40.815-40.815 40.815z' fill='%23272636'/%3E%3Cpath d='M981.74 618.373c0-130.393-130.393-236.585-277.04-236.585-155.316 0-277.401 106.192-277.401 236.585 0 130.754 122.085 236.586 277.4 236.586 32.509 0 65.378-8.308 97.886-16.254l89.577 49.123-24.561-81.631c65.377-49.123 114.139-114.5 114.139-187.824zM614.76 577.558c-16.254 0-32.508-16.254-32.508-32.508s16.254-32.508 32.508-32.508c24.562 0 40.816 16.254 40.816 32.508s-16.254 32.508-40.816 32.508zm179.516 0c-16.254 0-32.508-16.254-32.508-32.508s16.254-32.508 32.508-32.508c24.562 0 40.816 16.254 40.816 32.508s-16.615 32.508-40.816 32.508z' fill='%23272636'/%3E%3C/svg%3E");
  --svg-top:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M12 33l12-12 12 12M12 13h24' stroke='%23333' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --svg-location:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath d='M512 32c-204.18 0-370.28 166.08-370.26 370.24 0 75.84 22.78 148.76 65.42 210.14 2.14 3.68 4.3 7.24 6.84 10.7l270.26 356.24c7.34 8.18 17.2 12.68 27.76 12.68 10.42 0 20.34-4.54 28.92-14.16l269.02-354.82c2.66-3.52 4.92-7.38 6.16-9.64 43.26-62.24 66.16-135.24 66.16-211.1C882.28 198.08 716.18 32 512 32zm0 502.66c-72.92 0-132.26-59.34-132.26-132.28 0-72.92 59.34-132.24 132.26-132.24s132.26 59.34 132.26 132.24c0 72.94-59.34 132.28-132.26 132.28z'/%3E%3C/svg%3E");
  --svg-whatsapp:url("data:image/svg+xml,%3Csvg viewBox='0 0 1098 1024' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath d='M779.75 692.305c-11.371 28.426-62.268 54.145-84.738 55.499-22.47 1.083-23.283 17.597-145.652-36.549-122.368-53.874-196.006-185.177-201.962-193.57-5.686-8.663-47.378-68.765-45.212-129.408 2.437-60.642 35.195-89.34 46.836-100.98a46.565 46.565 0 0 1 33.029-14.35h23.012c7.039.271 17.868-1.353 27.072 23.554 9.205 25.178 31.405 86.633 34.383 92.86 2.707 6.226 4.602 13.536 0 21.658-4.332 8.121-6.498 12.995-12.724 20.033-6.498 7.04-13.537 15.703-19.222 20.846-6.498 5.956-12.995 12.454-6.227 24.907 6.498 12.725 29.78 54.146 64.975 87.987 44.94 43.587 83.925 58.206 95.837 64.974 11.912 6.498 18.951 5.686 26.532-2.165 7.58-8.122 31.946-34.924 40.609-46.836 8.663-12.183 16.785-9.746 27.614-5.415 11.1 4.603 70.39 36.82 82.03 43.317 12.183 6.768 20.034 10.017 23.012 15.431 2.708 5.415 1.895 29.78-9.204 58.207zM545.84 32C260.766 32 33.355 245.333 33.355 508.48c0 82.843 23.553 161.354 62.267 230.931 6.497 10.83 8.663 23.824 4.332 37.09l-66.6 184.907c-6.497 17.597 10.83 32.487 27.886 28.426l184.365-72.013c10.83-4.332 23.553-2.166 36.548 4.331C359.31 965.74 451.628 992 550.172 992c281.016-2.166 510.322-215.5 510.322-479.188C1058.328 245.604 829.022 32 546.382 32z' fill='%232c2c2c'/%3E%3C/svg%3E");
  --svg-email:url("data:image/svg+xml,%3Csvg viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1002.7 233.062c-2.662 22.016-12.39 43.213-29.08 60.007L584.396 682.29c-39.834 39.834-104.96 39.834-144.794 0L50.381 293.07c-16.794-16.794-26.522-38.093-29.082-60.007-.512 4.199-.819 8.397-.819 12.698v532.48c0 56.32 46.08 102.4 102.4 102.4h778.24c56.32 0 102.4-46.08 102.4-102.4V245.76c0-4.3-.307-8.5-.82-12.698z'/%3E%3Cpath d='M584.397 607.744L992.46 199.68c-16.896-33.382-51.61-56.32-91.341-56.32H122.88c-39.731 0-74.445 22.938-91.34 56.32l408.063 408.064c39.834 39.834 104.96 39.834 144.794 0z'/%3E%3C/svg%3E");
  --svg-phone:url("data:image/svg+xml,%3Csvg viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M41.78 20.607c.252-1.696.17-3.432-.25-5.102a12.939 12.939 0 0 0-3.415-6.018 12.94 12.94 0 0 0-6.018-3.416 13.068 13.068 0 0 0-5.102-.249M34.19 19.803a5.991 5.991 0 0 0-1.692-5.132 5.992 5.992 0 0 0-5.132-1.691' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M14.376 8.794a2 2 0 0 1 1.748 1.03l2.447 4.406a2 2 0 0 1 .04 1.866l-2.357 4.713s.683 3.512 3.541 6.37c2.859 2.858 6.358 3.53 6.358 3.53l4.713-2.357a2 2 0 0 1 1.867.041l4.419 2.457a2 2 0 0 1 1.028 1.748v5.074c0 2.583-2.4 4.45-4.848 3.623-5.028-1.696-12.832-4.927-17.78-9.873-4.946-4.947-8.176-12.752-9.873-17.78-.826-2.448 1.04-4.848 3.624-4.848h5.072z' fill='%23333' stroke='%23333' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E");
  --svg-search:url("data:image/svg+xml,%3Csvg viewBox='0 0 48 48' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 38c9.389 0 17-7.611 17-17S30.389 4 21 4 4 11.611 4 21s7.611 17 17 17z' stroke='%23333' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M26.657 14.343A7.975 7.975 0 0 0 21 12c-2.209 0-4.209.895-5.657 2.343M33.222 33.222l8.485 8.485' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
/* reset */
*,*:before,*:after{box-sizing:border-box}
html{font-size:16px}
body{margin:0;font-family:'Montserrat',Helvetica,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";background-color:#fff;font-size:14px;color:#333;-webkit-text-size-adjust:100% !important;-webkit-tap-highlight-color:transparent}
p,ol,ul,dl,dd,main,header,footer,article,aside,menu,section,dialog,figure,figcaption,blockquote{margin:0;padding:0}
h1,h2,h3,h4,h5,h6{margin:0}
li{background-repeat:no-repeat;list-style-type:none}
img{border:0}
a{color:#333;text-decoration:none;background-color:transparent;transition:color .3s}
td,th{padding:0}
button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:none;border:0;outline:none}
input:focus,textarea:focus,select:focus{outline:none}
input[type="file"]{border:0}
input[type="radio"],input[type="checkbox"]{padding:0;margin:0}
textarea{overflow:auto;resize:vertical}
::placeholder{color:#b3b3b3}
.text-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.text-row-ellipsis{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.hidden{display:none !important}
table{border-spacing:0;border-collapse:collapse}
/* reset end */
.container{max-width:var(--container-width);margin:0 auto}
.container.blank{padding-left:var(--padding-about);padding-right:var(--padding-about)}
.bg-light{background:#f7f7f7}
.header-top-wrap{background:var(--color-main);color:#fff;padding:8px 0}
.header-top{display:flex;justify-content:flex-end}
.header-top__email{display:flex;align-items:center;gap:6px}
.header-top__email::before{content:'';width:14px;height:14px;background:#fff;mask:var(--svg-email);-webkit-mask:var(--svg-email);mask-size:100%;-webkit-mask-size:100%;}
.header{padding-top:25px;padding-bottom:25px;background:#fff;display:flex;align-items:center;justify-content:space-between}
.logo img{max-height:clamp(32px,4vw,60px);backface-visibility:hidden;display:block}
.nav{flex:1;display:flex;justify-content:flex-end;align-items:center}
.nav__item{padding:12px clamp(10px,2vw,25px);position:relative}
.nav__item > a{font-size:16px;text-transform:uppercase;font-weight:500;transition:color .3s}
.nav__item > a:hover{color:var(--color-main)}
.nav__item > a:after{content:'';position:absolute;bottom:-2px;left:50%;width:0;height:2px;transform:translateX(-50%);background:#555;transition:width .3s}
.nav__item > a:hover:after,
.nav__item.active > a:after{width:28px}
.nav__item.dropdown:after{content:'';width:16px;height:16px;position:absolute;top:15px;right:5px;background:var(--svg-bottom) no-repeat}
.nav__dropdown{width:100%;height:0;overflow:hidden;z-index:-10;opacity:0;position:absolute;top:130%;left:50%;transform:translateX(-50%);padding:0;border:solid 1px #ddd;border-radius:3px;box-shadow:0 2px 5px 1px rgba(0,0,0,.05);background:#fff;transition:top .3s,opacity .3s}
.nav__dropdown li{text-align:center;padding:6px 0;border-bottom:solid 1px #f2f2f2}
.nav__dropdown li:last-child{border-bottom:none}
.nav__dropdown li:hover{background-color:#f5f5f5}
.nav__item:hover .nav__dropdown{height:auto;padding:5px 0;top:100%;z-index:101;opacity:1}
.nav-switch{display:none}
@media (max-width:1024px){
  body:before{content:'';display:block;height:58px}
  .header-top-wrap{display:none}
  .header{padding-top:13px;padding-bottom:13px;position:fixed;top:0;right:0;width:100%;border-bottom:solid 1px #eee;z-index:201;box-shadow:0 2px 5px 1px rgba(0,0,0,.05);}
  .nav{display:block;position:fixed;top:0;right:110%;bottom:0;width:80%;z-index:211;background:#222;padding:30px 0 0;overflow:auto;transition:right .3s}
  .nav.open{right:20%;box-shadow:18px 0 18px 2px rgba(0,0,0,.1),0 0 5px 1px rgba(0,0,0,.1)}
  .nav__item{padding:0;width:100%;;border-bottom:solid 1px rgba(255,255,255,.05)}
  .nav__item > a{color:#fff;font-size:15px;line-height:58px;display:inline-block;margin-left:40px;padding:0}
  .nav__item > a:after{display:none}
  .nav__item.dropdown:after{width:auto;height:auto;border:4px solid transparent;border-bottom:0;border-top-color:#fff;right:30px;top:27px}
  .nav__item:hover .nav__dropdown{height:0;padding:0}
  .nav__dropdown{position:static;background:#303030;opacity:1;box-shadow:none;border:0;transform:translateX(0);transition:height .3s !important}
  .nav__dropdown li{text-align:left;padding:11px 10px 11px 60px;border-bottom:solid 1px rgba(255,255,255,.05)}
  .nav__dropdown li:hover{background-color:transparent}
  .nav__dropdown li a{color:#eee}
  .nav-switch{display:flex;width:22px;height:16px;;position:relative;border-top:solid 2px #555;border-bottom:solid 2px #555;transition:.4s}
  .nav-switch:before,
  .nav-switch:after{content:'';height:2px;width:100%;position:absolute;right:0;top:5px;background:#555;transition:transform .3s}
  .nav-switch.open{border-color:#fff;transition:0s}
  .nav-switch.open:before{transform:rotate(45deg)}
  .nav-switch.open:after{transform:rotate(-45deg)}
}
.home-banner{position:relative}
.home-banner__slide{height:42vw!important;background-repeat:no-repeat;background-position:center 0;background-size:cover}
.home-box{padding-top:var(--padding-home-box);padding-bottom:var(--padding-home-box)}
.page-box{padding:var(--padding-page-box) 0 var(--padding-home-box)}
.home-more{margin-top:min(50px,6vw);display:flex;align-items:center;justify-content:center}
.home-more a{background:var(--color-main);padding:var(--padding-more);color:#fff;border-radius:4px;transition:background-color .3s}
.home-more a:hover{background:var(--color-main-dark)}
.page-banner{height:min(400px,40vw);background-repeat:no-repeat;background-position:center center;background-size:cover}
.page-breadcrumb{background:#f9f9f9;padding:15px 0}
.page-title{text-align:center;position:relative;margin:0 0 var(--margin-default);padding-bottom:14px}
.page-title:before{content:'';position:absolute;bottom:0;left:50%;margin-left:-25px;width:50px;height:2px;background:#333}
.page-title span{font-size:var(--font-size-page-title)}
/* Home Intro Module */
.home-intro__grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:clamp(20px, 3vw, 40px)}
.home-intro__title{background-color:var(--color-main);color:#fff;padding:15px 20px;font-size:20px;font-weight:600;text-transform:uppercase;text-align:center;position:relative;clip-path:polygon(0 0, 100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%);margin-bottom:20px}
.home-intro__content{color:#666;font-size:16px;line-height:1.6}
.home-intro__content p{margin-bottom:15px}
.home-intro__content p:last-child{margin-bottom:0}
@media (max-width:768px){
  .home-intro__grid{grid-template-columns:1fr}
}
/* Home Operations Module */
.home-operations-wrap{background:#fff}
.home-operations{text-align:center}
.home-operations__title{font-size:var(--font-size-home-title);color:var(--color-main);font-weight:400;letter-spacing:3px;text-transform:uppercase;margin-bottom:18px;position:relative;display:inline-block;padding-bottom:15px}
.home-operations__title:after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:80px;height:2px;background:var(--color-main)}
.home-operations__desc{color:#666;font-size:14px;line-height:1.4;max-width:1000px;margin:0 auto}
.home-operations__list{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(15px,2.5vw,30px);margin-top:clamp(30px,4vw,50px)}
.home-operations__item{text-align:center;transition:transform .3s;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.home-operations__item:hover{transform:translateY(-5px);box-shadow:0 4px 12px rgba(0,0,0,.15)}
.home-operations__img{width:100%;aspect-ratio:1/.8;overflow:hidden}
.home-operations__img img{width:100%;height:100%;object-fit:cover;display:block}
.home-operations__name{font-size:16px;font-weight:500;color:#fff;text-transform:uppercase;background:var(--color-main);padding:15px 20px;}
@media (max-width:1024px){
  .home-operations__list{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .home-operations__list{grid-template-columns:1fr}
}
/* Footer */
.footer-wrap{background-color:var(--color-main);color:#fff;padding-top:clamp(40px, 5vw, 60px)}
.footer{display:flex;justify-content:space-between;gap:40px;padding-bottom:clamp(30px, 4vw, 50px)}
.footer-info{max-width:400px}
.footer-logo{margin-bottom:20px}
.footer-logo img{max-height:50px;}
.footer-contact__item{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;line-height:1.5}
.footer-contact__item::before{content:'';width:18px;height:18px;background-color:#fff;flex-shrink:0;mask-size:100%;-webkit-mask-size:100%;margin-top:2px}
.footer-contact__item.location::before{mask-image:var(--svg-location);-webkit-mask-image:var(--svg-location)}
.footer-contact__item.email::before{mask-image:var(--svg-email);-webkit-mask-image:var(--svg-email)}
.footer-contact__item a{color:#fff}
.footer-nav{display:flex;gap:clamp(30px, 4vw, 80px)}
.footer-nav dl dt{margin-bottom:15px;font-size:16px;font-weight:600;text-transform:uppercase}
.footer-nav dl dt a{color:#fff}
.footer-nav dl dd{margin-bottom:10px}
.footer-nav dl dd a{color:rgba(255, 255, 255, 0.8);font-size:14px;transition:opacity 0.3s}
.footer-nav dl dd a:hover{opacity:1;text-decoration:underline}
.footer-copyright{border-top:1px solid rgba(255, 255, 255, 0.1);padding:20px 0;text-align:center;font-size:13px;color:rgba(255, 255, 255, 0.6)}
@media (max-width:768px){
  .footer{flex-direction:column;gap:30px}
  .footer-nav{flex-wrap:wrap;gap:30px}
}
/* Contact Page */
.contact-layout {display:grid;grid-template-columns:1fr 350px;gap:clamp(30px,4vw,60px);background:#fff;padding:clamp(30px,4vw,50px);} 
.contact-title {font-size:32px;color:var(--color-main);margin-bottom:20px;font-weight:600;} 
.contact-desc {color:#666;line-height:1.6;margin-bottom:30px;font-size:15px;} 
.contact-form {display:grid;grid-template-columns:1fr 1fr;gap:20px;} 
.contact-form__item.full {grid-column:1/-1;} 
.contact-input {width:100%;height:50px;background:#ebebeb;border:1px solid transparent;padding:0 15px;font-size:14px;color:#333;transition:border-color 0.3s,background-color 0.3s;} 
.contact-input:focus {background-color:#fff;border-color:#ddd;} 
.contact-input.textarea {height:200px;padding-top:15px;font-family:inherit;} 
.contact-btn {background:var(--color-main);color:#fff;border:none;padding:12px 40px;border-radius:30px;font-size:14px;font-weight:600;text-transform:uppercase;cursor:pointer;transition:background-color 0.3s;} 
.contact-btn:hover {background:var(--color-main-hover);} 
.contact-card {box-shadow:0 5px 20px rgba(0,0,0,0.05);background:#fff;} 
.contact-card__header {background:var(--color-main);color:#fff;padding:20px 25px;font-size:20px;font-weight:500;position:relative;} 
.contact-card__header:after {content:'';position:absolute;top:0;right:0;border-style:solid;border-width:0 25px 25px 0;border-color:transparent #fff transparent transparent;} 
.contact-card__body {padding:30px 25px;} 
.contact-info-list li {position:relative;padding-left:30px;margin-bottom:20px;line-height:1.5;color:#666;font-size:14px;} 
.contact-info-list li:last-child {margin-bottom:0;} 
.contact-info-list li::before {content:'';position:absolute;left:0;top:3px;width:18px;height:18px;background-color:var(--color-main);mask-size:100%;-webkit-mask-size:100%;} 
.contact-info-list li.email::before {mask-image:var(--svg-email);-webkit-mask-image:var(--svg-email);} 
.contact-info-list li.location::before {mask-image:var(--svg-location);-webkit-mask-image:var(--svg-location);} 
.contact-info-list li a {color:#666;} 
.contact-info-list li a:hover {color:var(--color-main);} 
@media (max-width:900px){.contact-layout {grid-template-columns:1fr;padding:30px 20px;} .contact-right {order:-1;margin-bottom:30px;} .contact-card__header:after {display:none;}} 
@media (max-width:600px){.contact-form {grid-template-columns:1fr;}} 
.product-layout {display:grid;grid-template-columns:1fr 280px;gap:clamp(30px,4vw,50px);padding-bottom:var(--padding-home-box);} 
.product-content {background:#fff;padding:30px;} 
.product-detail-title {font-size:clamp(24px,3vw,36px);color:var(--color-main);margin-bottom:15px;font-weight:600;} 
.product-detail-desc {font-size:16px;color:#555;line-height:1.6;max-width:900px;} 
.product-detail-image{margin:20px 0;}
.product-detail-image img{width:100%}
.product-portfolio-box {background:#f9f9f9;border:1px solid #eee;padding:30px;} 
.product-portfolio-title {font-size:18px;color:var(--color-main);text-transform:uppercase;font-weight:600;margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid #ddd;} 
.product-portfolio-list {display:grid;grid-template-columns:repeat(2,1fr);gap:15px 30px;} 
.product-portfolio-list li {font-size:15px;color:#666;padding-bottom:10px;border-bottom:1px solid #eee;} 
.product-sidebar-title {background:var(--color-main);color:#fff;padding:15px 20px;font-size:18px;font-weight:500;position:relative;} 
.product-sidebar-title:after {content:'';position:absolute;right:0;top:0;border-style:solid;border-width:0 20px 20px 0;border-color:transparent rgba(255,255,255,0.3) transparent transparent;} 
.product-nav {background:#fff;border:1px solid #eee;} 
.product-nav a {display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #eee;color:#666;font-size:15px;transition:all 0.3s;} 
.product-nav a:last-child {border-bottom:none;} 
.product-nav a:hover,.product-nav a.active {color:var(--color-main);font-weight:500;padding-left:25px;} 
.product-nav a:after {content:'';width:8px;height:8px;border-top:2px solid #ccc;border-right:2px solid #ccc;transform:rotate(45deg);transition:border-color 0.3s;} 
.product-nav a:hover:after,.product-nav a.active:after {border-color:var(--color-main);} 
@media (max-width:900px){.product-layout {grid-template-columns:1fr;} .product-sidebar {order:-1;} .product-portfolio-list {grid-template-columns:1fr;}}
