/* Shared Bonsec navigation, responsive layouts and editorial treatments. */
.bonsec-site{--body-text-color:#52616b;--color-dark:#102d35;background:#fff;color:var(--body-text-color);line-height:1.8}
.bonsec-site button,.bonsec-site input,.bonsec-site textarea,.bonsec-site select{font-family:var(--body-font)}
.bonsec-site :focus-visible{outline:3px solid #e4b661;outline-offset:5px}
.skip-link{position:absolute;top:-100px;left:20px;z-index:1000;background:#fff;padding:12px 20px}.skip-link:focus{top:12px}
.bonsec-header{position:absolute;inset:0 0 auto;z-index:40;color:#fff;background:transparent}
.contact-strip{border-bottom:1px solid #ffffff26;font-size:11px;letter-spacing:.04em}
.contact-strip .container{display:flex;gap:30px;align-items:center;min-height:38px}.contact-strip span{margin-right:auto}.contact-strip a{color:#fff}
.bonsec-nav{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:106px;border-bottom:1px solid #ffffff26}
.brand{flex-shrink:0}.brand img{width:180px;max-height:70px;object-fit:contain}
.primary-menu{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:600}.primary-menu>a,.services-menu summary{color:#fff;padding:14px 0;cursor:pointer;white-space:nowrap}.primary-menu>a:hover,.primary-menu>a[aria-current]{color:#d5d6ff}.primary-menu>a[aria-current]{box-shadow:inset 0 -2px #b7b9ff}
.services-menu{position:relative}.services-menu summary{list-style:none}.services-menu summary::-webkit-details-marker{display:none}.services-menu summary span{margin-left:5px}.service-dropdown{position:absolute;top:100%;left:-24px;width:370px;background:#fff;padding:16px;border-radius:8px;box-shadow:0 18px 50px #0003;max-height:65vh;overflow:auto}.service-dropdown a{display:block;font-size:12px;line-height:1.5;padding:10px 12px;color:#173640;border-radius:4px}.service-dropdown a:hover,.service-dropdown a:focus-visible{background:#eeeff8;color:#3e4095}.service-dropdown a:first-child{border-bottom:1px solid #e2e5ec;margin-bottom:6px;color:#3e4095;font-weight:700}
.primary-menu .brochure-link{border:1px solid #ffffff70;padding:11px 18px;border-radius:5px}.menu-toggle{display:none}
.hero-section.hs-1 .hero-single{height:100vh;min-height:760px;align-items:flex-start;padding:clamp(210px,26vh,300px) 0 160px}
.hero-section.hs-1 .hero-single::before{display:block;inset:0;background:linear-gradient(90deg,rgba(4,19,29,.84),rgba(7,22,32,.48) 65%,rgba(7,22,32,.15)),linear-gradient(180deg,rgba(5,18,28,.4),transparent 45%);z-index:-1}
.hero-section .hero-bg-img{z-index:-2}
.hero-section.hs-1 .hero-single .hero-content{max-width:960px;margin:0;height:auto}
.hero-section.hs-1 .hero-single .hero-content .hero-sub-title{background:none;border:0;backdrop-filter:none;padding:0;font-size:11px;letter-spacing:.2em;line-height:1.7;font-weight:600}
.hero-section.hs-1 .hero-single .hero-content .hero-title{font-size:clamp(36px,4.5vw,68px);line-height:1.12;letter-spacing:-.045em;font-weight:600;margin:23px 0}
.hero-section.hs-1 .hero-single .hero-content p{max-width:760px;font-size:16px;line-height:1.85;color:#e2e8ed}.hero-content p br{display:none}.hero-section .hero-single .hero-content .hero-btn{margin-top:30px;flex-wrap:wrap}
.bonsec-site .theme-btn,.bonsec-site .theme-btn2{font-size:13px;font-weight:600;padding:15px 24px;border-radius:5px;line-height:1.6;display:inline-flex;align-items:center;justify-content:center;gap:14px}.hero-content .theme-btn2{background:transparent;border:1px solid #ffffff80;color:#fff}
.hero-slider.owl-theme .owl-nav{position:absolute;bottom:58px;right:max(6vw,24px);display:flex;gap:12px}.hero-slider.owl-theme .owl-nav button{position:static;transform:none;opacity:1;visibility:visible}.hero-slider.owl-theme .owl-nav button i{width:45px;height:45px;line-height:45px;font-size:18px;border:1px solid #ffffff65}
.hero-slider .owl-dots{position:absolute;bottom:68px;left:max(6vw,24px);right:auto}.hero-slider .owl-dot{min-width:32px;min-height:32px}.slider-pause{position:absolute;bottom:18px;right:max(6vw,24px);z-index:3;border:0;background:transparent;color:#fff;font-size:11px;padding:4px 8px}.hero-section{position:relative}
.bonsec-site .site-title{font-size:clamp(28px,3.2vw,46px);line-height:1.2;letter-spacing:-.035em}.bonsec-site .site-title-tagline{font-size:11px;letter-spacing:.1em}.bonsec-site .about-text{font-size:15px;line-height:1.9}.bonsec-site .about-area{padding:95px 0 65px}.bonsec-site .about-item h4{font-size:17px}.bonsec-site .about-item p{font-size:13px}.bonsec-site .feature-area{padding:0 0 85px}.bonsec-site .feature-item{height:100%;border-top:1px solid #d9e1e6;padding-top:24px}.bonsec-site .feature-info h4{font-size:17px}.bonsec-site .feature-info p{font-size:13px}
.bonsec-site .service-area{background:linear-gradient(100deg,rgba(5,21,34,.9),rgba(5,21,34,.76)),url('../img/bg-bg-1.png') center/cover}.bonsec-site .service-area .service-wrap{background:transparent;border-radius:0}.bonsec-site .service-area .site-title,.bonsec-site .service-area .heading-text{color:#fff}.bonsec-site .service-area .heading-text p{color:#dce3e8;font-size:14px}.bonsec-site .service-area .container-fluid{padding:0}.bonsec-site .service-modern-item{height:410px;border-radius:10px}.bonsec-site .service-modern-content{padding:24px;background:linear-gradient(0deg,#051720f2, #051720aa 65%,transparent)}.bonsec-site .service-modern-content h4{transform:none}.bonsec-site .service-modern-content h4 a{font-size:20px;line-height:1.35}.bonsec-site .service-modern-content p{opacity:1;transform:none;max-height:160px;font-size:12px;line-height:1.7}.bonsec-site .service-modern-item:focus-within img{transform:scale(1.05)}
.bonsec-site .process-area{background:linear-gradient(100deg,rgba(5,23,34,.88),rgba(5,23,34,.74)),url('../img/plateau%20state.png') center/cover}.bonsec-site .process-wrap{background:transparent;border-radius:0}.bonsec-site .process-item{background:rgba(5,22,34,.35);border:1px solid #ffffff30;border-radius:8px;padding:30px;height:100%;backdrop-filter:blur(2px)}.bonsec-site .process-item h4{font-size:20px;line-height:1.4;color:#fff}.bonsec-site .process-item p{font-size:13px;color:#e0e7ed}.bonsec-site .process-item .count{background:transparent;color:#d1d3ff}.bonsec-site .process-item .icon{margin:24px 0}
.bonsec-site .ani-img::after{display:none}.bonsec-site .portfolio-area{padding-top:90px;padding-bottom:90px}.bonsec-site .choose-area{padding-top:80px;padding-bottom:80px}.bonsec-site .partner-area{padding:65px 0}.bonsec-site .faq-area{padding:80px 0}.bonsec-site .marquee-text-slider{display:none}
.project-cta{background:#f0f2f6;padding:70px 0}.project-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:30px}.project-cta h2{font-size:clamp(28px,3.4vw,46px);letter-spacing:-.04em;line-height:1.2;margin-top:14px}.eyebrow{display:block;color:#5557a0;letter-spacing:.16em;font-size:10px;font-weight:700;margin-bottom:15px}
.bonsec-footer{background:#091e2a;padding:65px 0 20px;color:#b6c5ce;font-size:13px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px}.bonsec-footer h3{color:#fff;font-size:15px;margin:10px 0 22px}.bonsec-footer a{color:#d8e2e9}.footer-grid>div>a{display:block;margin:7px 0}.bonsec-footer p{margin:18px 0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff20;padding-top:20px;margin-top:40px;font-size:11px}
.page-hero{background:linear-gradient(90deg,#061b2aeb,#061b2a80),var(--hero-image) center/cover;padding:215px 0 80px;color:#e0e8ed;min-height:70vh;display:flex;align-items:center}.page-hero a,.breadcrumb-separator{font-size:11px;color:#e0e8ed}.page-hero h1{font-size:clamp(34px,4.5vw,62px);line-height:1.13;letter-spacing:-.04em;color:#fff;max-width:950px;margin:23px 0}.page-hero p{max-width:710px;font-size:16px}.content-section{padding:90px 0}.split-content{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split-content h2,.section-intro h2{font-size:clamp(28px,3vw,42px);line-height:1.2;letter-spacing:-.03em;margin-bottom:25px}.split-content p{margin-bottom:20px;font-size:14px}.editorial-image{width:100%;height:510px;object-fit:cover;border-radius:12px}.soft-section{background:#f4f6f8}.two-cards{display:grid;grid-template-columns:1fr 1fr;gap:70px}.two-cards h2,.hse-grid h2{font-size:25px;line-height:1.3;margin-bottom:18px}.two-cards p,.hse-grid p{font-size:14px}.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.capability-card{border:1px solid #e2e6ec;border-radius:9px;overflow:hidden;background:#fff;transition:transform .2s,box-shadow .2s}.capability-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #10273512}.capability-card img{width:100%;height:235px;object-fit:cover}.capability-card>div{padding:26px}.capability-card h2{font-size:21px;line-height:1.35;margin-bottom:12px}.capability-card p{font-size:13px;color:#52616b}.card-link{display:block;margin-top:20px;color:#3e4095;font-size:12px;font-weight:700}.service-detail{display:grid;grid-template-columns:360px 1fr;gap:80px}.service-detail aside>img{width:100%;height:310px;object-fit:cover;border-radius:10px;margin-bottom:28px}.service-detail aside h2{font-size:24px;line-height:1.3;margin-bottom:15px}.service-detail aside p{font-size:14px;margin-bottom:20px}.back-link{display:block;font-size:12px;margin-top:20px}.detail-item{display:flex;gap:24px;padding:28px 0;border-bottom:1px solid #e2e6ec}.detail-item:first-of-type{padding-top:12px}.detail-item>span{color:#7476b1;font-size:13px}.detail-item h2{font-size:23px;line-height:1.3;margin-bottom:12px}.detail-item p{font-size:14px}.section-intro{max-width:630px;margin-bottom:40px}.image-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.image-gallery a{position:relative;overflow:hidden;border-radius:8px;background:#102735}.image-gallery img{width:100%;height:290px;object-fit:cover;transition:transform .3s}.image-gallery a:hover img{transform:scale(1.04)}.image-gallery span{position:absolute;bottom:12px;right:12px;color:#fff;background:#061b2acf;padding:6px 12px;font-size:11px;border-radius:4px}.hse-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.contact-content{align-items:start}.contact-content dt{color:#112e3b;font-size:12px;margin-top:20px}.contact-content dd{font-size:16px}.enquiry-form{padding:36px;background:#f2f4f8;border-radius:10px}.enquiry-form h2{font-size:27px}.enquiry-form label{display:block;font-size:12px;font-weight:600;color:#173640;margin:17px 0 6px}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;min-width:0;background:#fff;border:1px solid #ccd3df;padding:11px 12px;border-radius:4px;font-size:14px}.enquiry-form button{margin-top:22px}.enquiry-form #enquiry-status{margin:12px 0 0;font-size:12px}
@media(min-width:992px) and (max-width:1199px){.primary-menu{gap:15px;font-size:12px}.brand img{width:155px}.primary-menu .brochure-link{padding:10px}.service-detail{gap:45px}}
@media(max-width:991px){.contact-strip span{display:none}.contact-strip .container{justify-content:space-between;font-size:10px}.bonsec-nav{min-height:85px}.brand img{width:155px}.menu-toggle{display:flex;align-items:center;gap:15px;background:transparent;border:1px solid #ffffff70;color:#fff;padding:9px 14px;border-radius:4px;font-size:12px}.primary-menu{display:none;position:absolute;top:124px;left:20px;right:20px;background:#102a3a;padding:22px;border-radius:8px;max-height:calc(100dvh - 145px);overflow-y:auto;box-shadow:0 15px 50px #0005}.primary-menu.is-open{display:block}.primary-menu>a,.services-menu summary{display:block;padding:12px}.primary-menu .brochure-link{margin-top:12px;text-align:center}.service-dropdown{position:static;width:100%;max-height:none;background:#fff;border-radius:5px;padding:8px}.service-dropdown a{white-space:normal}.hero-section.hs-1 .hero-single{padding-top:195px;min-height:760px}.hero-section.hs-1 .hero-single .hero-content{max-width:700px}.split-content{gap:35px}.service-detail{grid-template-columns:280px 1fr;gap:35px}.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{gap:30px}.bonsec-site .about-right{margin-top:35px}.page-hero{padding-top:190px}.hse-grid{gap:25px}.image-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:767px){.container{padding-left:24px;padding-right:24px}.contact-strip{display:none}.bonsec-nav{margin:0 20px;width:calc(100% - 40px);padding:0;min-height:90px}.primary-menu{top:94px;max-height:calc(100dvh - 112px)}.hero-section.hs-1 .hero-single{height:auto;min-height:max(730px,100svh);padding:155px 0 160px}.hero-section.hs-1 .hero-single .hero-content .hero-title{font-size:clamp(32px,8.5vw,52px);letter-spacing:-.04em}.hero-section.hs-1 .hero-single .hero-content .hero-sub-title{font-size:9px;letter-spacing:.12em}.hero-section.hs-1 .hero-single .hero-content p{font-size:14px;line-height:1.8}.hero-section .hero-single .hero-content .hero-btn{gap:12px}.bonsec-site .theme-btn,.bonsec-site .theme-btn2{padding:13px 18px;font-size:12px}.hero-content br{display:none}.hero-slider .owl-dots{left:20px}.bonsec-site .about-area{padding:65px 0 45px}.bonsec-site .feature-area{padding-bottom:55px}.bonsec-site .feature-wrap .row{row-gap:30px!important}.bonsec-site .feature-item{padding:18px 0}.bonsec-site .feature-item .count{font-size:32px}.bonsec-site .feature-area .col-md-6{width:50%}.bonsec-site .feature-content{display:block}.bonsec-site .feature-info h4{font-size:14px}.bonsec-site .feature-info p{font-size:12px}.bonsec-site .service-wrap,.bonsec-site .process-wrap{padding:60px 0}.bonsec-site .process-wrap>.row{margin:0;padding:0 12px}.bonsec-site .service-modern-item{height:410px}.bonsec-site .service-area .heading-text{margin-top:0}.bonsec-site .process-item{padding:26px}.bonsec-site .portfolio-area,.bonsec-site .choose-area,.bonsec-site .faq-area{padding:55px 0}.bonsec-site .partner-title h4{font-size:18px;text-align:center}.bonsec-site .choose-item h4{font-size:18px}.project-cta{padding:50px 0}.project-cta>.container{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;font-size:10px}.bonsec-footer{padding-top:45px}.page-hero{padding:155px 0 55px;min-height:380px}.page-hero h1{font-size:36px}.page-hero p{font-size:14px}.content-section{padding:55px 0}.split-content,.two-cards,.service-detail,.hse-grid{grid-template-columns:1fr;gap:35px}.editorial-image{height:340px}.service-detail aside>img{height:280px}.capability-grid{grid-template-columns:1fr}.capability-card img{height:260px}.image-gallery{gap:15px}.image-gallery img{height:210px}.image-gallery span{font-size:9px;bottom:8px;right:8px}.enquiry-form{padding:24px}.contact-content dd{font-size:14px}.detail-item h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}.owl-carousel .animated{animation:none!important}}
.brand{display:flex;align-items:center;gap:12px}.brand img{width:45px;height:60px}.hero-section.hs-1 .hero-bg-img::before{background:none}.bonsec-site .process-item .content{margin-bottom:0}.bonsec-site .process-item .content h4{font-size:20px;margin-bottom:18px}
@media(max-width:767px){.brand img{width:36px;height:48px}.bonsec-site .portfolio-wrap{background:none!important}.bonsec-site .portfolio-wrap .item{background:linear-gradient(0deg,#071b2cd9,transparent),var(--portfolio-image) center/cover}.bonsec-site .portfolio-item{height:270px;min-height:0}.bonsec-site .portfolio-item .portfolio-bottom{opacity:1;visibility:visible;transform:none}.bonsec-site .portfolio-content{padding:22px}}

/* Center the main links independently of the logo and brochure action. */
@media (min-width:992px){
  .bonsec-nav{position:relative;display:grid;grid-template-columns:1fr auto 1fr;gap:20px}
  .bonsec-nav .brand{justify-self:start;grid-column:1}
  .bonsec-nav .primary-menu{grid-column:2;position:static}
  .bonsec-nav .brochure-link{position:absolute;right:12px;top:50%;transform:translateY(-50%)}
}
/* Service detail structure follows the supplied service-single.html template. */
.service-template-page .site-breadcrumb{padding:225px 0 85px}
.service-template-page .breadcrumb-title{font-size:clamp(28px,3.2vw,46px);line-height:1.2;max-width:960px;margin:0 auto 20px}
.service-template-page .breadcrumb-menu{font-size:13px}
.service-template-page .service-single{padding:85px 0;background:#fafbfc}
.service-template-page .service-single-wrap>.row{--bs-gutter-x:40px}
.service-template-page .service-sidebar .widget{padding:28px}
.service-template-page .service-sidebar .category a{font-size:13px;line-height:1.65;padding:11px 0;margin:0}
.service-template-page .service-sidebar .category a.active{color:#3e4095;font-weight:700}
.service-template-page .service-download a{font-size:13px;padding:12px 15px}
.service-template-page .service-details .service-lead-image{width:100%;height:420px;object-fit:cover}
.service-template-page .service-details .service-image-pair img{width:100%;height:235px;object-fit:cover}
.service-template-page .service-details .content h2{font-size:27px;line-height:1.35}
.service-template-page .service-details p,.service-template-page .service-details .list{font-size:14px;line-height:1.9}
.service-template-page .brochure-capability{margin:24px 0}
.service-template-page .brochure-capability h3{font-size:19px;line-height:1.4;margin-bottom:10px}
.image-gallery figure{margin:0}.image-gallery figure>a{display:block}.image-gallery figcaption{font-size:12px;line-height:1.6;padding:12px 2px;color:#52616b}
.brochure-history h2{font-size:32px;margin-bottom:15px}.brochure-history p{font-size:14px;margin-bottom:25px}
.history-table-wrap{overflow-x:auto}.brochure-history table{width:100%;border-collapse:collapse;font-size:13px}.brochure-history th,.brochure-history td{text-align:left;padding:16px;border-bottom:1px solid #dce2e8;vertical-align:top}.brochure-history th{background:#eef0f7;color:#173640}
@media(max-width:991px){.service-template-page .service-single{padding:55px 0}.service-template-page .service-sidebar{margin-bottom:30px}.service-template-page .site-breadcrumb{padding:185px 0 65px}}
@media(max-width:767px){.service-template-page .site-breadcrumb{padding:150px 0 55px}.service-template-page .service-details .service-lead-image{height:260px}.service-template-page .service-details .service-image-pair img{height:240px}.service-template-page .service-details .content h2{font-size:24px}.service-template-page .service-single{padding:45px 0}.service-template-page .service-sidebar .widget{padding:24px}.brochure-history th,.brochure-history td{padding:12px;font-size:12px}}
.service-template-page .breadcrumb-menu li.active{color:#e5e7ff}

/* =====================================================
   About page — Who We Are, Values, Work history
   ===================================================== */
.bonsec-site .about-area{padding:110px 0 90px}
.bonsec-site .about-area .about-text{margin-bottom:8px}

/* Values (Vision / Mission) */
.values-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.value-card{position:relative;height:100%;background:#fff;border:1px solid #e6eaf0;border-radius:16px;padding:42px 40px 44px;overflow:hidden;box-shadow:0 12px 34px #1027350a;transition:transform .25s,box-shadow .25s}
.value-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--theme-color),var(--theme-color2))}
.value-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px #10273516}
.value-card .value-num{position:absolute;top:24px;right:28px;font-size:54px;font-weight:800;line-height:1;color:#eef1f6;letter-spacing:-.03em}
.value-card .value-icon{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:rgba(62,64,149,.08);color:var(--theme-color);font-size:26px;margin-bottom:26px}
.value-card h2{font-size:24px;line-height:1.3;letter-spacing:-.02em;margin:0 0 14px;color:var(--color-dark)}
.value-card p{font-size:14px;line-height:1.9;margin:0}

/* Work history ledger */
.history-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:end;margin-bottom:46px}
.history-heading .site-title{font-size:clamp(26px,2.6vw,36px)}
.history-heading .history-intro{font-size:14px;line-height:1.9;margin:0;color:#6a7a85;max-width:420px;justify-self:end;padding-bottom:8px}
.history-list{border-top:1px solid #e2e6ec}
.history-row{display:grid;grid-template-columns:120px 1fr auto;gap:26px;align-items:center;padding:26px 10px;border-bottom:1px solid #e2e6ec;transition:background .2s}
.history-row:hover{background:#f7f9fb}
.history-year{font-size:24px;font-weight:700;color:var(--theme-color);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.history-service h3{font-size:16px;font-weight:600;color:var(--color-dark);margin:0 0 5px;letter-spacing:-.01em;line-height:1.4}
.history-service span{font-size:13px;color:#6a7a85}
.history-client{font-size:11px;font-weight:700;color:#3a4a56;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}
.history-client small{display:block;font-weight:500;color:#9aa7b1;letter-spacing:.04em;margin-top:4px;text-transform:none}
@media(max-width:767px){.values-wrap{grid-template-columns:1fr;gap:20px}.value-card{padding:34px 28px}.history-heading{grid-template-columns:1fr;gap:16px}.history-heading .history-intro{justify-self:start;max-width:none}.history-row{grid-template-columns:1fr;gap:8px;padding:20px 6px}.history-year{font-size:20px}}
