.contact-page{width:100%;overflow:hidden;background:#eef4fb}.contact-page *{box-sizing:border-box}.contact-page .contact-hero{height:330px;background:#04152d}.contact-page .contact-hero-bg{background:url('../images/contact/contact-hero.jpg') center center/cover no-repeat}.contact-page .contact-hero-bg::after{display:none}.contact-page .contact-hero-overlay{background:linear-gradient(90deg,rgba(2,14,32,.96),rgba(3,27,59,.78) 42%,rgba(3,31,69,.12)),linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.26))}.contact-page .contact-hero-inner{max-width:1500px;padding:0 clamp(24px,5vw,72px)}.contact-page .contact-hero h1{margin:10px 0 8px;font-size:60px;line-height:1.05}.contact-page .contact-hero-en{margin:0 0 24px;font-size:22px}.contact-page .contact-hero-desc{font-size:17px;line-height:1.7}.contact-page .contact-main-section{padding:0 22px;background:#eef4fb}.contact-page .contact-panel{max-width:1480px;margin:-44px auto 0;padding:34px 38px 30px;border:1px solid #d7e2ee;border-radius:11px;box-shadow:0 18px 46px rgba(22,61,105,.13)}.contact-page .contact-grid{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:46px}.contact-page .section-heading{margin:0 0 23px}.contact-page .section-heading h2{padding-bottom:12px;font-size:27px;line-height:1.2;color:#082f65}.contact-page .section-heading h2::after{width:46px;height:3px}.contact-page .contact-info-list{gap:9px}.contact-page .contact-info-card{min-height:82px;padding:14px 17px;grid-template-columns:54px minmax(0,1fr);gap:15px;border-color:#dbe5ef;border-radius:7px;box-shadow:0 6px 17px rgba(22,63,109,.045)}.contact-page .contact-info-card-qr{grid-template-columns:54px minmax(0,1fr) 60px}.contact-page .contact-icon{width:50px;height:50px}.contact-page .contact-icon svg{width:27px;height:27px}.contact-page .contact-info-text span{margin-bottom:4px;font-size:13px}.contact-page .contact-info-text strong{margin-bottom:3px;font-size:17px;line-height:1.3}.contact-page .contact-info-text p{font-size:11px;line-height:1.5}.contact-page .contact-qr{width:56px;height:56px;overflow:hidden;border:1px solid #d7e2ed;border-radius:3px;background:#f3f7fc}.contact-page .contact-qr img{display:block;width:100%;height:100%;object-fit:cover}.contact-page .contact-demand-form{gap:13px}.contact-page .form-row{gap:6px}.contact-page .form-row label{font-size:13px;line-height:1.3}.contact-page .form-row input,.contact-page .form-row select,.contact-page .form-row textarea{border-color:#d4dfeb;border-radius:4px;font-size:13px}.contact-page .form-row input,.contact-page .form-row select{height:42px;padding:0 14px}.contact-page .form-row textarea{min-height:145px;padding:13px 14px 28px;line-height:1.65}.contact-page .privacy-check{gap:8px;margin:1px 0 2px;font-size:12px}.contact-page .contact-submit-btn{height:48px;border-radius:5px}.contact-page .contact-location-section{padding:0 22px;background:#eef4fb}.contact-page .contact-location-inner{max-width:1480px;margin:0 auto;padding:0 38px 26px;border-right:1px solid #d7e2ee;border-bottom:1px solid #d7e2ee;border-left:1px solid #d7e2ee;background:#fff}.contact-page .section-heading-center{text-align:left}.contact-page .section-heading-center h2::after{left:0;transform:none}.contact-page .section-heading-center p{margin:8px 0 0;color:#617891;font-size:13px}.contact-page .contact-location-panel{display:grid;grid-template-columns:minmax(0,1.58fr) minmax(290px,.72fr);min-height:220px;overflow:hidden;border:1px solid #d9e4ef;border-radius:8px;background:#fff}.contact-page .contact-map{min-height:220px;background:url('../images/contact/contact-map.jpg') center center/cover no-repeat}.contact-page .contact-map::before{display:none}.contact-page .contact-map::after{content:"";position:absolute;top:50%;left:58%;width:26px;height:26px;border:5px solid #fff;border-radius:50% 50% 50% 0;background:#1068e9;box-shadow:0 8px 18px rgba(16,104,233,.34);transform:translate(-50%,-50%) rotate(-45deg)}.contact-page .contact-map-placeholder{display:none}.contact-page .contact-location-card{min-height:220px;padding:25px 28px;border-left:1px solid #d9e4ef;background:#fff}.contact-page .contact-location-card h3{font-size:20px;color:#123b70}.contact-page .location-info-list{display:grid;gap:13px}.contact-page .location-info-item{padding-bottom:11px;border-bottom:1px solid #e3ebf3}.contact-page .location-info-item:last-child{padding:0;border:0}.contact-page .location-info-item span{display:block;margin-bottom:4px;color:#577391;font-size:12px;font-weight:800}.contact-page .location-info-item strong{display:block;margin-bottom:3px;color:#0c60d3;font-size:14px;line-height:1.35}.contact-page .location-info-item p{margin:0;color:#6d8094;font-size:11px;line-height:1.45}.contact-page .contact-promise-section{padding:0 22px 0;background:#eef4fb}.contact-page .contact-promise-inner{max-width:1480px;margin:0 auto;padding:0 38px 30px;border-right:1px solid #d7e2ee;border-bottom:1px solid #d7e2ee;border-left:1px solid #d7e2ee;border-radius:0 0 11px 11px;background:#fff}.contact-page .promise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.contact-page .promise-card{min-height:96px;padding:17px 20px;display:grid;grid-template-columns:55px minmax(0,1fr);gap:16px;align-items:center;border:1px solid #dbe5ef;border-radius:7px;background:#fff}.contact-page .promise-icon{display:flex;width:52px;height:52px;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(180deg,#0d6bff,#0753c5);color:#fff;font-size:0}.contact-page .promise-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.contact-page .promise-card h3{margin:0 0 4px;color:#153b6f;font-size:15px}.contact-page .promise-card p{margin:0;color:#677d95;font-size:11px;line-height:1.55}.contact-page .contact-bom-cta{padding:14px 22px 12px;background:#eef4fb}.contact-page .contact-bom-cta-inner{position:relative;max-width:1480px;min-height:155px;margin:0 auto;padding:28px 38px;overflow:hidden;border-radius:8px;background:radial-gradient(circle at 78% 50%,rgba(24,132,255,.2),transparent 40%),linear-gradient(90deg,#041933,#073a78)}.contact-page .contact-bom-cta-text{position:relative;z-index:1;max-width:690px}.contact-page .contact-bom-cta-text h2{margin:0 0 8px;font-size:29px}.contact-page .contact-bom-cta-text p{margin:0 0 20px;font-size:14px}.contact-page .contact-bom-cta-actions{position:relative;z-index:1;display:flex;gap:13px}.contact-page .contact-bom-visual{position:absolute;right:45px;bottom:0;width:330px;height:145px}.contact-page .contact-bom-visual img{display:block;width:100%;height:100%;object-fit:contain}.contact-page .contact-partner-strip{background:#041832}.contact-page .contact-partner-inner{display:flex;width:100%;max-width:1500px;min-height:82px;margin:0 auto;padding:13px clamp(24px,5vw,72px);align-items:center;justify-content:space-between;gap:24px;color:#fff}.contact-page .contact-partner-inner h2{margin:0 0 4px;font-size:23px;line-height:1.2}.contact-page .contact-partner-inner p{margin:0;color:rgba(220,238,255,.76);font-size:12px}.contact-page .contact-partner-actions{display:flex;gap:14px}.contact-page .contact-partner-actions a{display:inline-flex;min-width:120px;height:38px;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.54);border-radius:5px;background:rgba(255,255,255,.03);color:#fff;font-size:13px;font-weight:900;text-decoration:none}.contact-page .contact-partner-actions a:first-child{border-color:#0d6bff;background:#0d6bff}
@media(max-width:1024px){.contact-page .contact-grid,.contact-page .contact-location-panel{grid-template-columns:1fr;gap:34px}.contact-page .contact-location-panel{gap:0}.contact-page .contact-location-card{border-top:1px solid #d9e4ef;border-left:0}.contact-page .promise-grid{grid-template-columns:1fr}}@media(max-width:768px){.contact-page{width:100vw;max-width:100vw}.contact-page .contact-hero{height:270px}.contact-page .contact-hero h1{font-size:41px}.contact-page .contact-hero-inner{padding:0 20px}.contact-page .contact-main-section,.contact-page .contact-location-section,.contact-page .contact-promise-section,.contact-page .contact-bom-cta{padding-right:12px;padding-left:12px}.contact-page .contact-panel{margin-top:-28px;padding:25px 16px}.contact-page .contact-location-inner,.contact-page .contact-promise-inner{padding-right:16px;padding-left:16px}.contact-page .contact-info-card{grid-template-columns:50px minmax(0,1fr)}.contact-page .contact-info-card-qr{grid-template-columns:50px minmax(0,1fr) 54px}.contact-page .contact-qr{width:50px;height:50px}.contact-page .contact-bom-cta-inner{min-height:260px;padding:28px 20px}.contact-page .contact-bom-visual{right:10px;bottom:-12px;width:210px;height:110px;opacity:.55}.contact-page .contact-bom-cta-actions{align-items:flex-start;flex-direction:column}.contact-page .contact-partner-inner{padding:20px;align-items:flex-start;flex-direction:column}.contact-page .contact-partner-actions{width:100%}.contact-page .contact-partner-actions a{flex:1}.contact-page .contact-hero-desc{font-size:14px}}
.contact-page .promise-card{position:relative;display:block;min-height:96px;padding:17px 20px 17px 88px;text-align:left}.contact-page .promise-icon{position:absolute;top:50%;left:20px;width:52px;height:52px;margin:0;transform:translateY(-50%)}.contact-page .promise-card h3{margin:0 0 4px;font-size:15px;line-height:1.25;text-align:left}.contact-page .promise-card p{margin:0;font-size:11px;line-height:1.55;text-align:left}.contact-page .contact-bom-cta-inner{display:block}.contact-page .contact-bom-cta-actions{justify-content:flex-start}.contact-page .contact-bom-cta-text{max-width:600px}
.contact-page--without-hero .contact-panel{margin-top:0}.contact-page .contact-form-intro{margin:-10px 0 14px;color:#617891;font-size:13px;line-height:1.6}.contact-page .privacy-check a{color:#0c60d3;text-decoration:underline}.contact-page .contact-form-notice p{margin:0 0 14px;color:#0a7b49;font-size:13px;line-height:1.55}.contact-page .contact-map{display:block;position:relative;text-decoration:none}.contact-page .contact-location-panel--map-hidden{grid-template-columns:1fr}.contact-page .contact-location-panel--map-hidden .contact-location-card{border-left:0}
.contact-page #contact-bom-upload{scroll-margin-top:120px}
@media(max-width:768px){.contact-page .contact-main-section,.contact-page .contact-location-section,.contact-page .contact-promise-section,.contact-page .contact-bom-cta,.contact-page .contact-partner-strip{width:100vw;max-width:100vw}.contact-page .contact-panel,.contact-page .contact-location-inner,.contact-page .contact-promise-inner,.contact-page .contact-bom-cta-inner{width:calc(100vw - 24px);max-width:calc(100vw - 24px)}}
