diff --git a/TWA-App/Data/pages/company/2002.html b/TWA-App/Data/pages/company/2002.html index 13956ef..6bf14fd 100644 --- a/TWA-App/Data/pages/company/2002.html +++ b/TWA-App/Data/pages/company/2002.html @@ -1,70 +1,350 @@ - -
- - -
-
-
- -
-
-
-
-

We’re creating content for this section

-

- Content for the provincial pages is being prepared and will be updated soon. Please leave your email to receive updates and be notified when it goes live. -

- - - - - - - -
- -
-
-
-
-
An email is required.
-
Email is not valid.
- - - - -
-
-
Form submission successful!
- To activate this form, sign up at -
- https://startbootstrap.com/solution/contact-forms -
-
- - - - -
Error sending message!
-
-
+
+
+
+
+
+ Team Memebers +

+ Cargo Airline +

+
+
+
+
+

+ Our cargo team includes veterans from Vietnam Airlines with hands-on experience at Noi Bai (HAN) and Tan Son Nhat (SGN) cargo terminals. They know acceptance, build-up, ramp, security, and documentation end-to-end—so we safeguard SLAs, loadability, and compliance on every flight. +

+
+
+
+
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder
-
+
+
+
+
+
+ Background +
+
+
+
+ + Delivering excellence with top airline partners + +

+ Global Strategic Partnerships +

+
+
+
+
+
+
+
+
+
Qatar Airways logo
+
+
+
China Airlines logo
+
+
+
Philippine Airlines logo
+
+
+
Cambodia Angkor Air logo
+
+
+
Vietnam Airlines logo
+
+ +
+ +
+
+
+
- - - -
+
+
+
+
+
+ Team Memebers +

+ Passenger Airline +

+
+
+
+
+

+ Our passenger team brings years of ticketing experience across airlines and Vietnamese travel agencies. From GDS ticketing and fares/pricing to group sales, after-sales support, and ADM/ACM handling, we drive conversion and service quality for every carrier we represent. +

+
-
\ No newline at end of file +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+

Denisi Hall

+ Co-Founder +
+
+
+
+
+
+ +
+
+ Background +
+
+
+
+ + Testimonials + +

+ What People and Clients Think About Us? +

+
+
+
+
+
+
+
+
+
+ img +
+
    +
  • +
  • +
  • +
  • +
  • +
+

+ Service is some of the best we have ever volport Logistics International customer + had with ocean forwarders we like to + ship as much as possible with you +

+
+
+ img +
+
+

Disen Mac Hoor

+ + Founder, Volport Co + +
+
+
+
+
+
+
+ img +
+
    +
  • +
  • +
  • +
  • +
  • +
+

+ Service is some of the best we have ever volport Logistics International customer + had with ocean forwarders we like to + ship as much as possible with you +

+
+
+ img +
+
+

Disen Mac Hoor

+ + Founder, Volport Co + +
+
+
+
+
+
+
+ img +
+
    +
  • +
  • +
  • +
  • +
  • +
+

+ Service is some of the best we have ever volport Logistics International customer + had with ocean forwarders we like to + ship as much as possible with you +

+
+
+ img +
+
+

Disen Mac Hoor

+ + Founder, Volport Co + +
+
+
+
+
+ + +
+
+
+
+
+
+
diff --git a/TWA-App/Data/pages/company/2003.html b/TWA-App/Data/pages/company/2003.html index f3b6a0a..a03dd5a 100644 --- a/TWA-App/Data/pages/company/2003.html +++ b/TWA-App/Data/pages/company/2003.html @@ -1,5 +1,48 @@ 
+
+ +
+
+
+
+
+
+
+

Mission & Vission

+

+ Guided by a clear vision—to be Southeast Asia’s most trusted and innovative aviation services partner—we pursue a simple mission: create tangible value for airlines through excellence in representation, sales execution, and customer service, turning strategy into measurable results and long-term partnerships. +

+
+
+
+
+

+ The Future is Here +

+

+ Lorem ipsum dolor sit amet, consectetur adipiscing elit nullam nunc justo sagittis suscipit ultrices. +

+ +
+
+
+
+
+
@@ -45,3 +88,40 @@
+
+
+
+
+
+
+ +
+
+ +
+
+
+
+
+
+ +
+
+
+
+
+
+

Our Core Value

+

+ Guides decisions, culture, and how TWA serves partners with consistent, measurable outcomes. +

+
    +
  • Integrity and Accountability
  • +
  • Customer-First Commitment
  • +
  • Safety and Compliance Excellence
  • +
  • Continuous Improvement and Innovation
  • +
  • Empowering People and Teams
  • + +
+
+
\ No newline at end of file diff --git a/TWA-App/Json/navlist.json b/TWA-App/Json/navlist.json index 3f35e9b..d885a14 100644 --- a/TWA-App/Json/navlist.json +++ b/TWA-App/Json/navlist.json @@ -17,18 +17,18 @@ { "id": "2001", "name": "About Us", - "url": "/Company/AboutUs", + "url": "/Company/About-Us", "flexpage": true }, { "id": "2002", "name": "Our Team", - "url": "/Company/OurTeam" + "url": "/Company/Our-Team" }, { "id": "2003", - "name": "Mission & Vision", - "url": "/Company/Mission-Vision", + "name": "Purpose Strategy", + "url": "/Company/Purpose-Strategy", "flexpage": true }, { diff --git a/TWA-App/TWA-App.csproj b/TWA-App/TWA-App.csproj index f9968df..73ad9d7 100644 --- a/TWA-App/TWA-App.csproj +++ b/TWA-App/TWA-App.csproj @@ -56,6 +56,9 @@ + + Always + Always diff --git a/TWA-App/Views/Home/Index.cshtml b/TWA-App/Views/Home/Index.cshtml index f264e64..1f4bf83 100644 --- a/TWA-App/Views/Home/Index.cshtml +++ b/TWA-App/Views/Home/Index.cshtml @@ -139,10 +139,10 @@

Trusted Logistic Service Provider

    -
  • revolutionary catalysts for chang
  • -
  • catalysts for chang the Seamlessly
  • -
  • business applications through
  • -
  • procedures whereas processes
  • +
  • IATA certified Company
  • +
  • The management team with 20-30 year of experience in Aviation Industry
  • +
  • Good & Strong connection with both Airlines and Corporate clients
  • +
  • Updated technology system support for operating

@@ -160,7 +160,7 @@

- + Read More
@@ -234,7 +234,7 @@

- We take great pride in our unwavering commitment to the highest standards of quality, safety, and operational excellence. The following certifications and international memberships highlight and recognize our outstanding performance and reliability in providing world-class logistics services + Holding FEDAGSA membership, IATA accreditations (GSSA and Cargo Agent) and TIACA assessment signals a carrier's commercial strength, regulatory compliance and operational excellence. These credentials expand airline reach and bookings, streamline cargo operations, provide industry advocacy and financial benefits, and demonstrate verified sustainability and performance through thirdparty scoring—conveying trust, professionalism and competitive leadership in global air cargo and sales representation.

@@ -251,7 +251,7 @@ IATA GSSA Certified Company

- Officially recognized by the International Air Transport Association as a General Sales & Service Agent + Officially recognized by The International Air Transport Association (IATA) the as a qualified General Sales & Service Agent (GSSA)

@@ -263,7 +263,7 @@ Member of TIACA - FEDAGSA

- Proud member of leading global cargo and air logistics associations + Proud member of The International Air Cargo Association (TIACA) – the leading global cargo and air logistics association) and the Federation of General Sales Agents (FEDAGSA)

@@ -296,7 +296,7 @@ Our Awards

- We’re proud to be recognized for our craft across design, technology, and client success. These awards reflect our commitment to quality and measurable outcomes. + We are proud to be recognized by our partner in the aviation industry for our performance and our professional in working by these yearly award. Annually achieving these award that reflect once again our commitment to the quality of our service as well as measurable outcomes to our partners

@@ -368,7 +368,9 @@
-

TWA provides full-spectrum aviation, charter, courier, and logistics solutions, delivering customized, efficient, and cost-effective services that maximize value, ensure flexibility, and support sustainable growth worldwide.

+

+ TWA provides full-spectrum aviation services that include Cargo and Passenger GSSA, Aviation Support, Aircraft Charter always accompany with the customized solution. Our oriented solution not only focus on the efficient, cost-effective, maximizing value, ensure flexibility and contribute to the sustainable growth of world wide +

@@ -385,7 +387,7 @@

Cargo GSSA

-

We offers airlines end-to-end capacity management, maximizing yield with experts in reservations, handling, revenue accounting, and competitive market monitoring.

+

We offer airlines end-to-end capacity management, maximizing yield with experts in reservations, handling, revenue accounting, and competitive market monitoring.

Read More
diff --git a/TWA-App/wwwroot/css/atg-lib/atg-core.css b/TWA-App/wwwroot/css/atg-lib/atg-core.css index 9eba3df..22a32d8 100644 --- a/TWA-App/wwwroot/css/atg-lib/atg-core.css +++ b/TWA-App/wwwroot/css/atg-lib/atg-core.css @@ -99,6 +99,10 @@ h1, h2, h3, h4, h5, h6, p { text-align: center } +.text-right { + text-align: right +} + .h-100vh { min-height: 100vh; } diff --git a/TWA-App/wwwroot/css/site.css b/TWA-App/wwwroot/css/site.css index 26c9d25..4112b4f 100644 --- a/TWA-App/wwwroot/css/site.css +++ b/TWA-App/wwwroot/css/site.css @@ -461,14 +461,27 @@ body[page="1000"] .sub-item .nav-link, .sub-item .nav-link { } .background { + overflow:hidden; height: 100vh; min-height: 800px; - width: 100%; - background-position: center center; - background-size: cover; - background-repeat: no-repeat; - background-color: transparent + width: 100% } + .background.overlay::before { + background-color: rgba(17, 39,88, 0.4); + z-index: 1; + content: ''; + position: absolute; + width: 100%; + height: 100% + } + +.bg-content{ + position:absolute; + width:100%; + top:50%; + transform: translateY(-50%) +} + .swiperM { border-radius: var(--radius); min-height: 800px; @@ -1289,7 +1302,7 @@ body[page="1000"] .ico-menu span { margin-top: 0 } - .our-section .sep { + .our-section .sep, .our-team-section .sep { width: 8px; border-radius: 5px; height: 100%; @@ -1899,7 +1912,7 @@ height: 100% /**About US***************/ -body[page="2001"] .partner-section{ +body:not([page="1000"]) .partner-section{ padding: 80px 0 } /*********End************/ @@ -2078,6 +2091,13 @@ video.bg-video { /*************End Services*************/ /*****************Vision-Mission*********************/ +.grid-only{ + opacity: .85; + background: var(--color-primary); + border-radius: var(--radius); + padding: 40px 40px 60px +} + .n-b-t{ border-top-left-radius: 0; border-top-right-radius: 0 @@ -2089,6 +2109,31 @@ video.bg-video { .con-mision-vision{ margin-top:-40px } + +.con-mision-vision .bg-content{ + z-index:2; + color:#fff; +} + + +.con-mision-vision .u-content{ + margin-top: 40px; + position: relative; + text-align: left; + bottom: 0 +} + +.u-content h2{ + font-size: 2.2rem +} + +@media (min-width: 992px){ + .con-mision-vision .u-content { + text-align: right; + position: absolute; + bottom: -50px + } +} .mosaic { min-height: 850px; height: 100vh; @@ -2143,4 +2188,90 @@ video.bg-video { } +.section-core-value .con-image{ + margin: 4px; +} + +.section-core-value .con-content{ + padding: 40px; + max-width: 85%; + width:380px; + border-radius: var(--radius); + opacity:.85; + background: #000; + color: white; + position:absolute; + left:50%; + top:50%; + transform: translate(-50%, -50%) +} + + +@media (min-width:768px){ + .section-core-value .con-content { + max-width: 380px; + } +} +@media (min-width: 1200px) { + .section-core-value .con-content { + width: 520px; + max-width: 520px + } +} +.section-core-value li{ + color: var(--text-color-lW4) +} + /*************End Services*************/ +.our-team-section{ + padding-top:40px; +} + +.our-team-section .block1{ + margin-bottom: 40px +} + +.grid-teams .grid{ + margin: 0 5px; + margin-bottom:10px +} + +.grid-teams .grid-thumb::before { + z-index: 1; + content: ""; + position: absolute; + bottom: 0; + left: 0; + width: 100%; + height: 0%; + background-image: linear-gradient(45deg, var(--color-primary) 0%, rgb(119, 33, 44) 52%, rgb(35, 35, 49) 100%); + opacity: 0.6; + transition: 0.5s +} + +.grid-teams .grid:hover .grid-thumb::before{ + height:100% +} + +.grid-content span{ + font-size: .95rem +} + +.grid-teams .grid-content { + position: absolute; + z-index: 2; + bottom: 0; + left: 0; + padding: 20px; + right: 0; + opacity: 0; + visibility: hidden; + transition: 0.5s; + color: #fff; +} + +.grid-teams .grid:hover .grid-content { + opacity: 1; + visibility: visible; +} + diff --git a/TWA-App/wwwroot/images/2000/2002/team-1.jpg b/TWA-App/wwwroot/images/2000/2002/team-1.jpg new file mode 100644 index 0000000..d0a4a9b Binary files /dev/null and b/TWA-App/wwwroot/images/2000/2002/team-1.jpg differ diff --git a/TWA-App/wwwroot/images/2000/2002/team-2.jpg b/TWA-App/wwwroot/images/2000/2002/team-2.jpg new file mode 100644 index 0000000..9f5a721 Binary files /dev/null and b/TWA-App/wwwroot/images/2000/2002/team-2.jpg differ diff --git a/TWA-App/wwwroot/images/2000/2002/team-3.jpg b/TWA-App/wwwroot/images/2000/2002/team-3.jpg new file mode 100644 index 0000000..3b7ef81 Binary files /dev/null and b/TWA-App/wwwroot/images/2000/2002/team-3.jpg differ diff --git a/TWA-App/wwwroot/images/2000/2002/team-4.jpg b/TWA-App/wwwroot/images/2000/2002/team-4.jpg new file mode 100644 index 0000000..eb354e5 Binary files /dev/null and b/TWA-App/wwwroot/images/2000/2002/team-4.jpg differ diff --git a/TWA-App/wwwroot/images/2000/2002/team-5.jpg b/TWA-App/wwwroot/images/2000/2002/team-5.jpg new file mode 100644 index 0000000..bf10936 Binary files /dev/null and b/TWA-App/wwwroot/images/2000/2002/team-5.jpg differ diff --git a/TWA-App/wwwroot/images/2000/2003/cargo-loading.jpg b/TWA-App/wwwroot/images/2000/2003/cargo-loading.jpg new file mode 100644 index 0000000..97527de Binary files /dev/null and b/TWA-App/wwwroot/images/2000/2003/cargo-loading.jpg differ diff --git a/TWA-App/wwwroot/images/2000/2003/data-analyst.jpg b/TWA-App/wwwroot/images/2000/2003/data-analyst.jpg new file mode 100644 index 0000000..1f8eb63 Binary files /dev/null and b/TWA-App/wwwroot/images/2000/2003/data-analyst.jpg differ diff --git a/TWA-App/wwwroot/images/2000/2003/meeting-handshake.jpg b/TWA-App/wwwroot/images/2000/2003/meeting-handshake.jpg new file mode 100644 index 0000000..4fe2652 Binary files /dev/null and b/TWA-App/wwwroot/images/2000/2003/meeting-handshake.jpg differ diff --git a/TWA-App/wwwroot/images/2000/2001/plbg-2003.jpg b/TWA-App/wwwroot/images/2000/2003/vision-mission.jpg similarity index 100% rename from TWA-App/wwwroot/images/2000/2001/plbg-2003.jpg rename to TWA-App/wwwroot/images/2000/2003/vision-mission.jpg diff --git a/TWA-App/wwwroot/js/js-page/2002.js b/TWA-App/wwwroot/js/js-page/2002.js index 2dc4e26..f3e16d6 100644 --- a/TWA-App/wwwroot/js/js-page/2002.js +++ b/TWA-App/wwwroot/js/js-page/2002.js @@ -2,6 +2,107 @@ if (window["runParalax"] !== undefined) { window["runParalax"](); } + const swiper1 = new Swiper('.airlineSwiper', { + slidesPerView: 1, + spaceBetween: 30, + autoplay: { + delay: 2000, // 5s + disableOnInteraction: false, // không dừng khi hover hay click + }, + loop: true, // bật loop để chạy liên tục + speed: 1000, + navigation: { + nextEl: ".swiper-button-next", + prevEl: ".swiper-button-prev", + }, + loopedSlides: 5, // số slide duplicate + breakpoints: { + 1200: { slidesPerView: 4 }, // màn hình ≥1200px + 768: { slidesPerView: 3 }, // ≥768px= + 0: { slidesPerView: 2 } // <576px + }, + }); + + const parallaxEls = document.querySelectorAll('.con-partner .parallax, .con-testimonial .parallax'); + let ticking = false; + parallaxEls.forEach(el => { + const parent = el.closest(".con-parallax"); + if (parent) { + parent.style.height = parent.querySelector("[data-content]").offsetHeight + "px"; + } + }); + window.app.on("App_Scrolling", (t) => { + if (!ticking) { + window.requestAnimationFrame(() => { + updateParallax(t, parallaxEls); + ticking = false; + }); + ticking = true; + } + }); + const swiper3 = new Swiper(".custSwiper", { + slidesPerView: 1, + spaceBetween: 0, + autoplay: { + delay: 2000, // 5s + disableOnInteraction: true, + }, + loop: true, // bật loop để chạy liên tục + speed: 1000, + navigation: { + nextEl: ".swiper-button-next", + prevEl: ".swiper-button-prev", + }, + loopedSlides: 5, // số slide duplicate + breakpoints: { + 992: { slidesPerView: 3 }, // màn hình ≥1200px + 576: { slidesPerView: 2 }, // ≥768px= + 0: { slidesPerView: 1 } // <576px + } + }); +} + +function updateParallax(t, parallaxEls) { + parallaxEls.forEach(el => { + const section = el.closest('.con-parallax'); + if (!section) return; + + const rect = section.getBoundingClientRect(); + const sectionHeight = section.offsetHeight; + + // Only process if the section is in the viewport or partially in it + const inView = rect.bottom > 0 && rect.top < window.innerHeight; + if (!inView) return; + + // Set height parent only once + const content = section.querySelector('[data-content]'); + if (content && !section.dataset.heightSet) { + section.style.height = content.offsetHeight + 'px'; + section.dataset.heightSet = 'true'; // Mark that the height is set + section.dataset.initialTop = rect.top; + } + + const img = el.querySelector('.bg-img'); + if (!img) return; + + const imgHeight = img.offsetHeight; + const depth = parseFloat(el.dataset.depth ?? 1); // 1 = moves fully, <1 = moves less + const initialTop = parseFloat(section.dataset.initialTop); + + // Calculate how far the section has moved from its initial position + // Calculate progress for how much of the section is visible in the viewport + let a = 0 + if (window.innerHeight - initialTop > 100) { + a = window.innerHeight - initialTop - rect.top - rect.bottom; + } else { + a = window.innerHeight - rect.top + } + const progress = Math.min(1, Math.max(0, a / (window.innerHeight + sectionHeight))); + const scrollable = imgHeight - sectionHeight; + + let offsetY = -progress * scrollable * depth; + img.style.transform = `translate(-50%, ${offsetY}px)`; + }); } window.AScript.set("2002", true); \ No newline at end of file