/* Shared public-site palette: navy, slate blue and restrained gold. */
:root{--page-surface:#eef3f7;--section-surface:#e2ebf2;--card-surface:#dce7f0;--card-border:#bdcddd;--muted:#52697b;--line:#cbd8e2;--cream:#f0ece3}
body{background:var(--page-surface)}
body #main{background:var(--page-surface)}
body .page-header-refined{background:#dce7ef;border-bottom-color:#bfcfdb}
body .page-header-refined .page-heading-description{border-left-color:#b2925d;color:#49667b}
body .page-header-refined .lead{color:#49667b}
body .page-header-refined .guide-card{background:#eef3f7;border-color:#bfceda;border-left-color:#819fb4}
body .page-header-refined .guide-card.guide-current{background:#cbdce8;border-left-color:#ac813f}
body .page-header-refined .guide-card p{color:#46657b}
/* Distinct section surfaces give the long homepage a clear rhythm. */
body .home-industry-links{background:#dce7ef;border-color:#c3d3df}
body #all-services{background:#eef3f7}
body .network-section{background:#e1eaf1}
body .institutions-section,body .clients-page-section{background:#eef3f7}
body .team-section,body .team-refined{background:#e1eaf1;border-color:#c5d5e1}
body .openings-section{background:#eef3f7}
body .training-gallery-section{background:#e1eaf1}
body .home-help-section,body .faq-section{background:#e8eff5;border-color:#c5d5e1}
/* Every image card has a tinted body, a visible edge and a quiet shadow. */
body .photo-service-card,body .service-card,body .institution-card,body .team-card,body .opening-card,body .training-gallery-card,body .content-empty{background:var(--card-surface);border-color:var(--card-border);box-shadow:0 3px 12px #10364d08}
body .photo-service-card:hover,body .institution-card:hover{border-color:#9ab1c4;box-shadow:0 6px 18px #10364d12}
body .service-card-copy,body .institution-card>div,body .training-gallery-card>div,body .team-card>div{background:transparent}
body .service-card-copy p,body .institution-card p,body .opening-card p,body .team-card p,body .training-gallery-card p{color:#4c687d}
body .service-request,body .opening-card dl,body .opening-apply,body .sample-vacancy-note{border-color:#b8ccda}
body .industry-service-links a,body .home-industry-links li a{background:#f0f5f9;border-color:#b5c9d9;color:#294e69}
body .industry-service-links a:hover,body .home-industry-links li a:hover{background:#cbdde9;border-color:#9bb5c8}
/* Keep the alternating service rows slightly stronger than the page canvas. */
body .service-detail-row{background:#dce7f0;border-color:#b8cddd}
body .service-detail-row:nth-child(even){background:#d0dfeb;border-color:#adc4d6}
body .service-directory-intro p{color:#506b80}
/* Supporting panels follow the same palette without competing with photos. */
body .network-refined .network-details{background:#dce7f0}
body .network-refined .head-office-card{background:#edf3f7;border-color:#b8ccdb;border-top-color:#b18a49}
body .network-refined .office-functions span{background:#d4e2ec;border-color:#b6ccdc;color:#36566d}
body .network-refined .office-functions span:first-child{background:#eee3cf;border-color:#d5c19e;color:#745522}
body .network-facts{border-color:#b8ccdb}
body .network-facts span,body .network-details p{color:#4f6b80}
body .home-page .home-faq .faq{background:#d8e5ef;border-color:#b7cddd}
body .home-page .step,body .training-topic{background:#dce7f0;border-color:#b8ccdc;border-top-color:#b18a49}
body .info-note,body .office-address{background:#d8e5ef;border-color:#b18a49;color:#34556e}
body .info-note p{color:#48677d}
body .contact-section{background:#e9f0f5}
body .form-panel{background:#d2dee9;border-color:#afc5d7;box-shadow:0 5px 18px #10364d0a}
body .form-panel .form-control,body .form-panel .form-select{background-color:#f8fafc;border-color:#abc1d3;color:#203f56}
body .form-panel .form-control:focus,body .form-panel .form-select:focus{background-color:#fff;border-color:#6c95b2;box-shadow:0 0 0 3px #1b567b16}
body .career-application .candidate-fieldset,body .position-picker{background:#e3ebf2;border-color:#b6cbdb}
body .position-option{background:#f0f5f9;border-color:#b7ccdc;color:#355b76}
body .position-option:has(input:checked){background:#c3d9e9;border-color:#6b96b7;color:#163f5c}
body .career-application .career-application-intro .info-note{background:#dbe6ef}
body .policy-content{background:#dfe9f1;border:1px solid #bfcfdd;border-radius:9px;padding:24px 28px}
body .policy-section{border-color:#bbcedc}
body .policy-section p{color:#49667c}
body .footer-cta{background:#d9e5ee;border-top:1px solid #bfcedb}
body .footer-cta p:not(.eyebrow){color:#4a687e}
body .site-footer{background:#092a43}
/* The white main navigation remains a clean anchor below the navy utility bar. */
body .site-header,body .site-header .navbar{background:#fff}
@media(max-width:767px){body .policy-content{padding:18px 20px;border-radius:7px}}
/* Stretch the network copy panel so the parent surface cannot leave white bands. */
body .network-refined .network-layout{background:#dce7f0;border-color:#b9cddd;align-items:stretch}
body .network-refined .network-details{align-self:stretch;display:flex;flex-direction:column;justify-content:center;background:#dce7f0;padding:28px 32px}
body .network-refined .network-details>.btn{align-self:flex-start}
body .network-refined .network-details .eyebrow{color:#8b682e}
body .network-refined .network-facts{border-top-color:#b7cbd9}
body .network-refined .head-office-card{box-shadow:none}
@media(max-width:767px){body .network-refined .network-details{padding:24px}.network-refined .network-details h2{font-size:1.4rem}}
/* Keep only the network card, without an extra padded backdrop. */
body .network-section.network-refined{background:transparent;padding-top:0;padding-bottom:0;border:0;box-shadow:none}
/* One discreet contact launcher opens call and WhatsApp choices. */
.floating-contact{position:fixed;left:22px;bottom:24px;z-index:91}.floating-contact>summary{display:grid;place-items:center;list-style:none;width:54px;height:54px;background:#123b54;color:#e9c986;border:1px solid #d2b075;border-radius:50%;box-shadow:0 4px 16px #082a4333;cursor:pointer}.floating-contact>summary::-webkit-details-marker{display:none}.floating-contact>summary:hover,.floating-contact[open]>summary{background:#082a43}.floating-contact>summary>svg{width:24px;height:24px}.floating-contact-panel{position:absolute;left:0;bottom:calc(100% + 12px);width:264px;max-width:calc(100vw - 32px);padding:17px;background:#f0f5f9;border:1px solid #b7cbd9;border-top:3px solid #b89250;border-radius:10px;box-shadow:0 8px 30px #082a4326}.floating-contact-panel>p{font-size:.72rem;color:#5c7789;margin:0 0 3px}.floating-contact-panel>strong{font-size:1rem;color:#123b54}.floating-contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.floating-contact-actions>a{display:flex;justify-content:center;align-items:center;gap:7px;padding:9px 6px;border-radius:6px;font-size:.73rem;font-weight:600;line-height:1.5;text-decoration:none}.floating-contact-actions svg{width:17px;height:17px;flex-shrink:0}.floating-contact-call{background:#dce7ef;color:#123b54;border:1px solid #b8cddc}.floating-contact-whatsapp{background:#dceee3;color:#226442;border:1px solid #b3d4c0}.floating-contact-actions>a:hover{filter:brightness(.96)}body .site-footer{padding-bottom:110px}
@media(max-width:575px){.floating-contact{left:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}.floating-contact>summary{width:46px;height:46px}.floating-contact>summary>svg{width:22px;height:22px}.home-floating-jobs-premium{max-width:calc(100vw - 82px)}body .site-footer{padding-bottom:105px}}
/* Stack the contact launcher above the careers action on the right. */
.floating-contact{left:auto;right:22px;bottom:120px}.floating-contact-panel{left:auto;right:0}
@media(max-width:575px){.floating-contact{left:auto;right:12px;bottom:calc(92px + env(safe-area-inset-bottom,0px))}.home-floating-jobs-premium{max-width:calc(100vw - 24px)}body .site-footer{padding-bottom:164px}}
/* Distinct contact colour with a restrained pulse around the launcher. */
.floating-contact>summary{position:relative;background:#147c78;color:#fff;border-color:#91d6cb;box-shadow:0 4px 16px #075a5933}
.floating-contact>summary>svg{color:#fff}.floating-contact>summary:before{content:'';position:absolute;inset:-1px;border:2px solid #248e86;border-radius:50%;pointer-events:none;animation:contact-ring 3.5s ease-out infinite}
.floating-contact>summary:hover,.floating-contact[open]>summary{background:#10645f;border-color:#b0e4da}.floating-contact[open]>summary:before,.floating-contact>summary:hover:before{animation:none;opacity:0}
@keyframes contact-ring{0%,25%{transform:scale(1);opacity:0}35%{opacity:.4}80%,100%{transform:scale(1.35);opacity:0}}
@media(prefers-reduced-motion:reduce){.floating-contact>summary:before{animation:none;opacity:0}}
/* Plain contact tab: readable label, quiet colour, no decorative animation. */
.floating-contact{bottom:120px}.floating-contact>summary{display:flex;align-items:center;justify-content:center;gap:9px;width:auto;height:auto;min-height:42px;padding:10px 14px;background:#f2f6f9;color:#24465e;border:1px solid #9fb5c5;border-radius:7px;box-shadow:0 2px 8px #12364d14;font-size:.75rem;font-weight:600;line-height:1.5;transition:background .15s}.floating-contact>summary:before{display:none;animation:none}.floating-contact>summary>svg{width:18px;height:18px;color:#315b76;animation:none;transform:none}.floating-contact>summary:hover,.floating-contact[open]>summary{background:#dfe9f1;border-color:#7798ae;box-shadow:0 2px 8px #12364d14}.floating-contact-label{display:block}
@media(max-width:575px){.floating-contact{bottom:calc(92px + env(safe-area-inset-bottom,0px))}.floating-contact>summary{padding:9px 12px;min-height:39px;font-size:.72rem;gap:7px}.floating-contact>summary>svg{width:17px;height:17px}}
/* Icon-only contact control with a brief vibration gesture. */
.floating-contact>summary{display:grid;place-items:center;width:46px;height:46px;min-height:46px;padding:0;gap:0;border-radius:50%}
.floating-contact>summary>svg{width:22px;height:22px;animation:phone-vibration 4s ease-in-out infinite;transform-origin:center}
.floating-contact>summary:hover>svg,.floating-contact>summary:focus-visible>svg,.floating-contact[open]>summary>svg{animation:none}
@keyframes phone-vibration{0%,72%,100%{transform:translateX(0) rotate(0)}75%,81%,87%{transform:translateX(-1px) rotate(-9deg)}78%,84%,90%{transform:translateX(1px) rotate(9deg)}93%{transform:translateX(0) rotate(0)}}
@media(max-width:575px){.floating-contact>summary{width:43px;height:43px;min-height:43px;padding:0}.floating-contact>summary>svg{width:21px;height:21px}}
@media(prefers-reduced-motion:reduce){.floating-contact>summary>svg{animation:none}}
/* Faster phone vibration, followed by a short rest. */
.floating-contact>summary>svg{animation-duration:2s}
@keyframes phone-vibration{0%,45%,100%{transform:translateX(0) rotate(0)}49%,57%,65%,73%{transform:translateX(-1.5px) rotate(-12deg)}53%,61%,69%,77%{transform:translateX(1.5px) rotate(12deg)}81%{transform:translateX(0) rotate(0)}}
/* Selected contact animation 18: two soft halo rings around a stable icon. */
.floating-contact>summary>svg{animation:none;transform:none}
.floating-contact>summary:before,.floating-contact>summary:after{content:'';display:block;position:absolute;inset:-5px;border:1px solid #83a5ba;border-radius:50%;background:transparent;pointer-events:none;animation:contact-double-halo 3s ease-out infinite}
.floating-contact>summary:after{animation-delay:.65s}
.floating-contact[open]>summary:before,.floating-contact[open]>summary:after,.floating-contact>summary:hover:before,.floating-contact>summary:hover:after,.floating-contact>summary:focus-visible:before,.floating-contact>summary:focus-visible:after{animation:none;opacity:0}
@keyframes contact-double-halo{0%{transform:scale(.95);opacity:0}20%{opacity:.6}85%,100%{transform:scale(1.55);opacity:0}}
@media(prefers-reduced-motion:reduce){.floating-contact>summary:before,.floating-contact>summary:after{animation:none;display:none}}
/* Multicolour double halo, keeping the phone glyph steady and readable. */
.floating-contact>summary:before{border-color:#174f91;animation-name:contact-colour-halo}
.floating-contact>summary:after{border-color:#08766d;animation-name:contact-colour-halo;animation-delay:.65s}
@keyframes contact-colour-halo{0%{transform:scale(.95);opacity:0;border-color:#174f91}20%{opacity:.95;border-color:#174f91}45%{border-color:#08766d}70%{border-color:#95651e}85%,100%{transform:scale(1.55);opacity:0;border-color:#95651e}}
/* Stronger halo strokes remain visible against the page canvas. */
.floating-contact>summary:before,.floating-contact>summary:after{border-width:2px}

/* Partnership, tracking and shared contact settings. */
.header-quick-links{display:flex;align-items:center;gap:18px;margin-right:auto;min-width:0}.header-quick-links a{font-size:.67rem;color:#edf4f8;text-decoration:none;line-height:1.5;padding:6px 0}.header-quick-links a:hover{color:#e6c589}.header-quick-links a+a{border-left:1px solid #ffffff30;padding-left:18px}
.franchise-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px;align-items:start}.franchise-process h2{font-size:1.4rem;margin:0 0 20px}.franchise-process ol{list-style:none;margin:0 0 22px;padding:0}.franchise-process li{display:flex;gap:14px;padding:0 0 18px;margin-bottom:17px;border-bottom:1px solid #c8d8e4}.franchise-process li>span{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;background:#e9dec8;border:1px solid #cfbc96;color:#7a5a2a;border-radius:6px;font-size:.68rem;font-weight:700}.franchise-process h3{font-size:.95rem;line-height:1.5;margin:0 0 5px}.franchise-process li p{font-size:.8rem;line-height:1.85;margin:0}.franchise-form{padding:23px;border-radius:10px}.franchise-form h2{font-size:1.3rem}.franchise-form .form-label{font-size:.76rem}.franchise-form .form-control,.franchise-form .form-select{font-size:.82rem;padding:8px 11px;min-height:38px}.franchise-form .form-check-label{font-size:.74rem}.franchise-form .form-hint{font-size:.7rem}
.tracking-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;max-width:1040px;align-items:start}.tracking-layout .form-panel{padding:25px;border-radius:10px}.tracking-layout h2{font-size:1.3rem;line-height:1.5}.tracking-layout .form-label{font-size:.8rem}.tracking-layout .form-hint{font-size:.73rem;line-height:1.8}.tracking-result,.tracking-guide{background:#dce7f0;border:1px solid #b5cbdc;border-radius:10px;padding:25px}.tracking-result p,.tracking-guide p,.tracking-guide li{font-size:.8rem;line-height:1.85}.tracking-status{display:inline-block;background:#123b54;color:#fff;font-size:.95rem;padding:8px 13px;border-radius:6px;margin:7px 0 18px}.tracking-result dl{margin:0 0 15px}.tracking-result dl>div{border-bottom:1px solid #c0d1dd;padding:9px 0}.tracking-result dt{font-size:.69rem;color:#59778c;font-weight:500}.tracking-result dd{font-size:.83rem;color:#244d68;margin:3px 0 0;overflow-wrap:anywhere}.tracking-guide ul{padding-left:20px;margin:15px 0}.careers-tracking-link{padding-top:19px;text-align:right}.home-business-links{padding:22px 0;background:#e4ecf3}.home-business-links>.container{display:grid;grid-template-columns:1fr 1fr;gap:18px}.home-business-links a{display:block;background:#d2e1ec;border:1px solid #adc5d6;border-left:3px solid #b38c4b;border-radius:7px;padding:15px 18px;text-decoration:none}.home-business-links span{font-size:.72rem;color:#517087;display:block;margin-bottom:5px}.home-business-links strong{font-size:.93rem;color:#163d57}.footer-email{display:block;color:#d5e3ed;font-size:.8rem;margin-bottom:12px}.footer-address{color:#bed0dd;font-size:.76rem;line-height:1.8;max-width:350px;white-space:pre-line}.office-address>a{display:block;font-size:.83rem;margin-top:8px}
@media(max-width:767px){.header-contact-bar>.container{flex-wrap:wrap;gap:0 12px}.header-quick-links{flex-basis:100%;justify-content:center;margin:0;border-bottom:1px solid #ffffff20;gap:14px}.header-quick-links a{font-size:.65rem;padding-top:5px;padding-bottom:5px}.header-quick-links a+a{padding-left:14px}.franchise-layout,.tracking-layout{grid-template-columns:1fr;gap:23px}.franchise-form,.tracking-layout .form-panel,.tracking-result,.tracking-guide{padding:20px}.home-business-links>.container{grid-template-columns:1fr;gap:12px}.home-business-links strong{font-size:.9rem}.franchise-form .form-control,.franchise-form .form-select{font-size:.86rem}}
.header-quick-links{flex-wrap:wrap}.header-quick-links a{overflow-wrap:anywhere}@media(max-width:767px){.header-quick-links{gap:0 12px}.header-quick-links a{max-width:calc(50% - 8px)}}

.mobile-nav-extra,.mobile-action-backdrop{display:none}

.industry-mobile-label{display:none}

/* Compact footer with balanced columns and a smaller brand block. */
body .site-footer{padding-top:28px;padding-bottom:98px}.site-footer>.container>.row{--bs-gutter-y:22px}.site-footer .footer-logo{width:125px;height:84px;padding:5px}.site-footer .footer-summary{font-size:.77rem;line-height:1.75;max-width:285px;margin-top:12px;margin-bottom:0}.site-footer .footer-contact{margin-top:13px}.site-footer .footer-social{gap:8px}.site-footer .social-option{padding:7px 10px;font-size:.7rem;gap:6px;border-color:#ffffff25}.site-footer .social-option svg{width:15px;height:15px}.site-footer .footer-heading{font-size:.78rem;margin:0 0 11px}.site-footer .col-6 a{font-size:.76rem;line-height:1.65;padding:4px 0}.site-footer .footer-bottom{margin-top:23px;padding-top:14px;padding-bottom:0;font-size:.65rem;line-height:1.7}.site-footer .footer-bottom>small:last-child{max-width:420px;text-align:right}
@media(min-width:992px){.site-footer>.container>.row>.col-lg-5{width:40%}.site-footer>.container>.row>.col-lg-4{width:28%}.site-footer>.container>.row>.col-lg-3{width:32%}}
/* Four clear footer groups, without the oversized bootstrap column gaps. */
body .site-footer.footer-refined{padding:28px 0 21px;background:#092a40;border-top:3px solid #b58e4f}
.footer-main-grid{display:grid;grid-template-columns:1.25fr .9fr 1fr 1.05fr;gap:34px;align-items:start}.footer-identity{min-width:0}.footer-refined .footer-logo{width:114px;height:76px;background:#f9fbfc;padding:5px;border-radius:6px}.footer-refined .footer-summary{font-size:.75rem;line-height:1.8;max-width:245px;margin:11px 0 0;color:#b7cbd9}.footer-refined .footer-contact{margin-top:13px}.footer-refined .footer-heading{font-size:.76rem;font-weight:650;letter-spacing:.025em;color:#e1bf83;margin:4px 0 12px}.footer-nav-group{min-width:0}.footer-nav-group>a{display:block;width:fit-content;max-width:100%;font-size:.74rem;line-height:1.65;padding:4px 0;color:#c2d3df;text-decoration:none;overflow-wrap:break-word}.footer-nav-group>a:hover{color:#f0d59d;text-decoration:underline}.footer-refined .footer-social{gap:8px}.footer-refined .social-option{display:inline-flex;align-items:center;justify-content:center;width:33px;height:33px;padding:0;border:1px solid #587487;border-radius:6px;color:#b9cedd;background:transparent}.footer-refined .social-option>span{display:none}.footer-refined .social-option svg{width:16px;height:16px}.footer-refined .footer-bottom{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:5px 24px;margin-top:24px;padding:13px 0 0;border-color:#ffffff1c;font-size:.61rem;line-height:1.8;padding-right:265px}.footer-refined .footer-bottom>small:last-child{max-width:none;text-align:left;color:#9db5c5}.footer-refined .footer-bottom small{margin:0}.footer-refined .footer-address,.footer-refined .footer-email{font-size:.7rem;line-height:1.7;margin-bottom:9px}.footer-refined .footer-email{overflow-wrap:anywhere}
@media(min-width:768px){.footer-refined .footer-nav-group:last-child{padding-right:38px}}
@media(min-width:768px) and (max-width:991px){.footer-main-grid{grid-template-columns:1fr 1fr;gap:24px 30px}.footer-refined .footer-bottom{padding-right:230px}}
.footer-refined .footer-heading{font-family:inherit}

/* Preserve the complete team and company sign in the Bouncer service image. */
#service-bouncer .service-detail-visual>img,#service-bouncer .service-photo>img { object-fit:contain; background:#171511; }

#service-cashvan .service-detail-visual>img,#service-cashvan .service-photo>img { object-fit:contain; background:#dce5eb; }

#service-drivers .service-detail-visual>img,#service-drivers .service-photo>img { object-fit:contain; background:#dce5eb; }

#service-ship .service-detail-visual>img,#service-ship .service-photo>img { object-fit:contain; background:#dce5eb; }

#service-airport .service-detail-visual>img,#service-airport .service-photo>img { object-fit:contain; background:#dce5eb; }

/* Consistent image treatment across public page sections. */
#main .service-photo img,
#main .service-detail-visual > img,
#main .institution-card img,
#main .about-overview-image img,
#main .about-service-card > img,
#main .about-photo img,
#main .airport-detail-photo img,
#main .team-card img,
#main .training-photo-link img,
#main .uniform-photos img,
#main .work-person img,
#main .hero-image img {
    object-fit: cover !important;
    object-position: center !important;
    transform: none !important;
    max-width: 100%;
}

#main .service-photo,
#main .service-detail-visual,
#main .institution-card figure,
#main .about-service-card,
#main .about-overview-image,
#main .airport-detail-photo,
#main .team-card figure,
#main .training-photo-link,
#main .uniform-photos figure {
    background-color: #eaf0f5;
}

#main .service-photo,
#main .service-illustration,
#main .service-detail-visual {
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 3 / 2;
    flex-shrink: 0;
    overflow: hidden;
}

#main .service-photo img,
#main .service-detail-visual > img {
    display: block;
    width: 100%;
    height: 100%;
}

@media (max-width: 767px) {
    #main .photo-service-card {
        flex-direction: column;
    }

    #main .photo-service-card .service-photo,
    #main .photo-service-card .service-illustration {
        width: 100%;
        flex: 0 0 auto;
        min-height: 0;
        height: auto;
        aspect-ratio: 3 / 2;
    }

    #main .airport-detail-photo,
    #main .about-overview-image {
        height: auto;
        aspect-ratio: auto;
    }

    #main .airport-detail-photo img,
    #main .about-overview-image img {
        display: block;
        height: auto;
        width: 100%;
        aspect-ratio: auto;
    }
}

/* The primary enquiry target covers the card; secondary links remain usable. */
.photo-service-card,.industry-group-card{position:relative}
.card-request-link::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.card-request-link:focus-visible{outline:0}
.photo-service-card:has(.card-request-link:focus-visible),.industry-group-card:has(.card-request-link:focus-visible){outline:2px solid #906b32;outline-offset:3px}
.photo-service-card .airport-detail-link,.industry-group-card .industry-service-links a{position:relative;z-index:2}
/* Lean footer navigation and aligned identity icons. */
body .site-footer.footer-refined{padding-top:24px;padding-bottom:20px;border-top-width:2px}
.footer-refined .footer-main-grid{grid-template-columns:1.1fr 1fr 1fr 1fr;gap:24px}
.footer-refined .footer-identity{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-refined .footer-logo{width:90px;height:60px}
.footer-refined .footer-contact{margin:0;min-width:0}
.footer-refined .footer-social{display:flex;align-items:center;gap:7px;margin:0}
.footer-refined .social-option{width:30px;height:30px;min-height:30px;padding:0;flex:0 0 30px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px}
.footer-refined .social-option svg{display:block;width:15px;height:15px;flex:none}
.footer-refined .footer-heading{margin:0 0 8px}
.footer-refined .footer-bottom{padding:10px 0 0;margin-top:16px;justify-content:space-between;align-items:center;gap:8px}
.footer-refined .footer-bottom>a{color:#c2d3df;font-size:inherit;text-decoration:none}
/* Recognisable full-colour social brand marks on both layouts. */
body .footer-refined .social-facebook{background:#1877f2;border:0;color:#fff;border-radius:5px}
body .footer-refined .social-instagram{background:radial-gradient(circle at 30% 105%,#feda75 0%,#fa7e1e 28%,#d62976 52%,#962fbf 75%,#4f5bd5 100%);border:0;color:#fff;border-radius:7px}
body .footer-refined .social-facebook svg,body .footer-refined .social-instagram svg{width:22px;height:22px}
body .footer-refined .social-option:hover{filter:brightness(1.08)}
body .footer-refined .social-facebook,body .footer-refined .social-instagram{background:transparent;border:0;padding:0;filter:none}
body .footer-refined .social-brand-icon{display:block;width:28px;height:28px;object-fit:contain;flex:none}
body .footer-refined .social-option:hover{filter:none;opacity:.85}
body .footer-refined .social-mobile-mark{display:none}

.footer-mobile-social{display:none}

.footer-refined .footer-brandline{font-size:12px;line-height:1.5;color:#c2d3df;max-width:220px;margin:0}
/* Footer brand lockup: consistent logo, descriptor and social alignment. */
@media(min-width:768px){
body .footer-refined .footer-identity{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px 14px;align-items:center}
body .footer-refined .footer-brand{grid-column:1;grid-row:1;width:96px}
body .footer-refined .footer-logo{display:block;width:96px;height:64px;padding:4px;border-radius:5px;object-fit:contain;filter:contrast(1.1) saturate(1.12)}
body .footer-refined .footer-brandline{grid-column:2;grid-row:1;font-size:11px;font-weight:500;line-height:1.6;max-width:180px;margin:0;color:#d7e2e9}
body .footer-refined .footer-identity>.footer-contact{grid-column:1 / -1;margin:2px 0 0}
body .footer-refined .footer-social{gap:8px}
body .footer-refined .footer-main-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
}
body .footer-refined .footer-brandline{font-family:inherit;font-size:11px;font-weight:400;line-height:1.65;letter-spacing:0;color:#d7e2e9;max-width:none;margin:0}
body .footer-refined .footer-brandline>span{display:block;white-space:nowrap}
@media(min-width:768px){body .footer-refined .footer-main-grid{grid-template-columns:minmax(265px,1.5fr) repeat(3,minmax(0,1fr))}}
body .footer-refined .footer-brandline>strong{display:block;color:#fff;font-size:13px;font-weight:600;line-height:1.4;margin-bottom:4px}

/* A unified footer signature, with a quieter descriptor. */
body .footer-refined .footer-brandline>span{white-space:normal;font-size:10px;line-height:1.6;color:#a9bfcd;max-width:210px}
body .footer-refined .footer-brandline>strong{font-size:14px;line-height:1.35;font-weight:600;letter-spacing:0;margin:0 0 5px}
body .footer-refined .footer-logo{background:transparent;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(.5px 0 0 #f1f5f8) drop-shadow(-.5px 0 0 #f1f5f8) drop-shadow(0 .5px 0 #f1f5f8) drop-shadow(0 -.5px 0 #f1f5f8)}
@media(min-width:768px){
body .footer-refined .footer-identity{grid-template-columns:88px minmax(0,1fr);gap:12px}
body .footer-refined .footer-identity .footer-brand{display:block;width:88px;max-width:100%;line-height:0}
body .footer-refined .footer-identity .footer-logo{display:block;width:88px;height:auto;aspect-ratio:3/2;padding:0;object-fit:contain}
body .footer-refined .footer-brandline>span{white-space:normal;line-height:1.6}
}
/* Compact, neutral service catalogue. */
.services-final .page-header{padding:20px 0}
.services-final .page-header h1{font-size:28px;line-height:1.3}
.services-final .page-heading-description,.services-final .lead{font-size:13px;line-height:1.65}
.services-final .service-directory-intro{padding-top:16px;padding-bottom:16px;font-size:12px;gap:16px}
.services-final .service-directory-intro p{font-size:12px;line-height:1.6;margin:0}
.services-final .service-directory-intro a{font-size:12px}
.services-final .service-details-list{padding-bottom:24px}
body .services-final .service-detail-row,body .services-final .service-detail-row:nth-child(even){background:#fff;border:1px solid #e0e5e9;border-radius:8px;padding:20px;margin-bottom:16px}
.services-final .service-detail-layout{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:24px;align-items:start}
#main .services-final .service-detail-visual{height:auto;aspect-ratio:3 / 2;margin:0;border-radius:6px}
.services-final .service-detail-copy .eyebrow{display:none}
.services-final .service-detail-copy h2{font-size:20px;line-height:1.35;margin-bottom:9px}
.services-final .service-detail-intro{font-size:13px;line-height:1.65;margin-bottom:12px}
.services-final .service-positions{margin:10px 0}
.services-final .service-detail-duties{gap:6px 14px;margin:0;padding:0}
.services-final .service-detail-duties li{font-size:12px;line-height:1.5;padding:3px 0}
.services-final .service-detail-note{font-size:11px;line-height:1.6;margin:10px 0}
.services-final .service-detail-copy .btn{font-size:12px;padding:9px 14px;margin-top:8px}
.services-final .photo-credits{font-size:10px;margin-top:0;padding-top:12px}
.services-final .page-header{padding:15px 0}
.services-final .page-header h1{font-size:25px}
body .services-final .service-detail-row,body .services-final .service-detail-row:nth-child(even){padding:15px;margin-bottom:12px}
.services-final .service-detail-layout{grid-template-columns:minmax(0,.5fr) minmax(0,1.5fr);gap:18px}
.services-final .service-detail-copy h2{font-size:18px;margin-bottom:7px}
.services-final .service-detail-intro{font-size:12px;line-height:1.55;margin-bottom:8px}
.services-final .service-detail-duties li{font-size:11px;line-height:1.45;padding:2px 0}
.services-final .service-detail-copy .btn{font-size:11px;padding:7px 11px;margin-top:5px}
/* Use the same image column on every service row. */
.services-final .service-detail-row .service-detail-layout,.services-final .service-detail-row:nth-child(even) .service-detail-layout{grid-template-columns:180px minmax(0,1fr);gap:18px;align-items:start}
#main .services-final .service-detail-row .service-detail-visual{grid-column:1;grid-row:1;width:180px;height:120px;min-height:0;aspect-ratio:3 / 2}
.services-final .service-detail-row .service-detail-copy{grid-column:2;grid-row:1;min-width:0}
.services-final .services-overview .catalogue-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.services-final .services-overview .guide-card{padding:8px 10px;border-radius:5px}
.services-final .services-overview .guide-card>span{font-size:10px;margin-bottom:3px}
.services-final .services-overview .guide-card h2{font-size:12px;line-height:1.4}
.services-final .services-overview .guide-card p{font-size:10px;line-height:1.5;margin-top:4px}
.services-final .service-photo-credits{padding-bottom:18px}

/* Persistent, compact careers shortcut without a full-width strip. */
.home-floating-jobs{position:fixed;right:22px;bottom:24px;z-index:90;display:inline-flex;align-items:center;gap:9px;max-width:calc(100vw - 36px);padding:12px 16px;background:#12394f;color:#fff;border:1px solid #c6a367;border-radius:8px;box-shadow:0 5px 18px #07283e35;font-size:.79rem;font-weight:650;line-height:1.5;text-decoration:none}
.home-floating-jobs>svg{width:19px;height:19px;flex-shrink:0;color:#e4c58f}.home-floating-jobs>span:last-child{color:#e4c58f;font-size:1rem}.home-floating-jobs:hover{background:#082a43;color:#fff;border-color:#e4c58f}
@media(max-width:575px){.home-floating-jobs{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));padding:10px 13px;font-size:.76rem;gap:7px}.home-page .site-footer{padding-bottom:72px}}
/* High-visibility careers action in the brand gold. */
.home-floating-jobs{background:#ebc77f;color:#102f46;border:2px solid #fff1ce;padding:13px 19px;font-size:.86rem;font-weight:750;box-shadow:0 0 0 4px #c3954930,0 6px 22px #082a4340;gap:10px}
.home-floating-jobs>svg{width:23px;height:23px;color:#12394f}.home-floating-jobs>span:last-child{color:#12394f;font-size:1.2rem}.home-floating-jobs:hover{background:#f4d99f;color:#102f46;border-color:#fff6e1;box-shadow:0 0 0 5px #c3954940,0 7px 24px #082a4340}
@media(max-width:575px){.home-floating-jobs{padding:11px 15px;font-size:.81rem;gap:8px}.home-floating-jobs>svg{width:21px;height:21px}}
/* Selected design 04: premium careers button, scaled for mobile screens. */
.home-floating-jobs-premium{right:22px;bottom:24px;max-width:calc(100vw - 40px);padding:15px 18px;gap:13px;background:#10364d;color:#fff;border:1px solid #d5b476;border-radius:13px;box-shadow:0 6px 22px #082a4340;font-weight:650}
.home-floating-jobs-premium .floating-job-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;background:#ebc77f;color:#12364d;border-radius:10px}.home-floating-jobs-premium .floating-job-icon svg{width:27px;height:27px;color:inherit}.floating-job-copy{min-width:0}.floating-job-copy strong{display:block;font-size:1.02rem;line-height:1.4;letter-spacing:.01em;color:#fff}.floating-job-copy small{display:block;font-size:.65rem;line-height:1.5;color:#ccdce7;margin-top:3px;font-weight:400}.home-floating-jobs-premium .floating-job-arrow{font-size:1.4rem;color:#ebc77f;margin-left:3px}.home-floating-jobs-premium:hover{background:#082a43;color:#fff;border-color:#edcf95;box-shadow:0 7px 24px #082a434d}
.home-page .site-footer{padding-bottom:110px}
@media(max-width:575px){.home-floating-jobs-premium{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 24px);padding:10px 12px;gap:9px;border-radius:10px}.home-floating-jobs-premium .floating-job-icon{width:35px;height:35px;flex-basis:35px;border-radius:8px}.home-floating-jobs-premium .floating-job-icon svg{width:22px;height:22px}.floating-job-copy strong{font-size:.88rem}.floating-job-copy small{font-size:.6rem;margin-top:2px}.home-floating-jobs-premium .floating-job-arrow{font-size:1.2rem;margin-left:0}.home-page .site-footer{padding-bottom:92px}}
@media(max-width:359px){.home-floating-jobs-premium{padding:9px 10px;gap:8px}.floating-job-copy strong{font-size:.8rem}.floating-job-copy small{font-size:.56rem}}
/* Gold careers action with a navy icon tile. */
.home-floating-jobs-premium{background:#e5bd70;color:#10364d;border-color:#fff0cc;box-shadow:0 6px 22px #082a4338}
.home-floating-jobs-premium .floating-job-icon{background:#10364d;color:#f1d496}
.home-floating-jobs-premium .floating-job-copy strong{color:#10364d}.home-floating-jobs-premium .floating-job-copy small{color:#3f4d51}.home-floating-jobs-premium .floating-job-arrow{color:#10364d}
.home-floating-jobs-premium:hover{background:#efd095;color:#10364d;border-color:#fff5df}
/* Gold careers action gently lifts; interaction pauses the movement. */
.home-floating-jobs-premium{animation:career-float 4.5s ease-in-out infinite}
.home-floating-jobs-premium:hover,.home-floating-jobs-premium:focus-visible{animation-play-state:paused}
@keyframes career-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){.home-floating-jobs-premium{animation:none}}


/* Compact Careers catalogue with clear vacancy information. */
.careers-final .page-header{padding:18px 0}
.careers-final .page-header h1{font-size:26px;line-height:1.3}
.careers-final .page-heading-description{font-size:13px;line-height:1.6}
.careers-final .careers-tracking-link{padding-top:12px;padding-bottom:0}
.careers-final .careers-tracking-link a{font-size:12px}
.careers-final .openings-section{padding:22px 0 26px;background:#f7f8fa}
.careers-final .content-section-heading{margin-bottom:16px;gap:16px}
.careers-final .content-section-heading .eyebrow{display:none}
.careers-final #openings-heading{font-size:20px;margin:0}
.careers-final .content-section-heading .btn{font-size:12px;padding:8px 13px}
.careers-final .openings-grid{grid-template-columns:1fr;gap:14px}
body .careers-final .opening-card{padding:16px;border:1px solid #c9d6df;border-radius:8px;background:#fff;box-shadow:none}
.careers-final .opening-top{gap:8px;margin-bottom:9px}
.careers-final .job-city{font-size:11px;gap:5px}
.careers-final .job-status{font-size:9px;padding:3px 6px}
.careers-final .opening-card h3{font-size:17px;line-height:1.4;margin-bottom:10px}
.careers-final .opening-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;margin:0}
.careers-final .opening-card dl>div{padding:7px 0;border-color:#e5eaf0}
.careers-final .opening-card dt{font-size:10px;line-height:1.4}
.careers-final .opening-card dd{font-size:12px;line-height:1.5;margin-top:3px}
.careers-final .opening-card details{font-size:11px;margin:9px 0!important}
.opening-location-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;max-height:190px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;margin-top:8px;padding:8px;background:#f5f8fa;border:1px solid #e1e8ed;border-radius:4px}
.opening-location-list p{margin:0!important;min-width:0;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.opening-location-list strong,.opening-location-list span{display:block}
.opening-location-list span{margin-top:2px}
.opening-locations summary{cursor:pointer}
.opening-description:empty{display:none}
@media(max-width:767px){.opening-location-list{max-height:160px;gap:7px 10px;padding:7px}.opening-location-list p{font-size:10px}}
.careers-final .opening-description{font-size:12px;line-height:1.6;margin:10px 0 12px}
.careers-final .opening-apply{font-size:12px;padding-top:9px;border-color:#e1e7ec}
.careers-final .sample-vacancy-note{font-size:10px;line-height:1.5;padding-top:9px}
.careers-final .job-apply-button{font-size:11px;line-height:1.4;padding:7px 10px;white-space:nowrap}
.careers-final .opening-card{border-top:2px solid #b99455}
.careers-final .opening-card>.opening-locations{margin:0!important;border-top:1px solid #e5eaf0;padding-top:10px}
.careers-final .opening-locations summary{font-weight:600;color:#234d66;line-height:1.5;padding:2px 0}
.careers-final .opening-location-list{max-height:none;overflow:visible;border:0;border-radius:0;background:transparent;padding:8px 0 0;gap:10px 18px}
.careers-final .opening-location-list p{padding-left:10px;border-left:2px solid #dce6ec}
.careers-final .opening-description{margin:0;padding-top:10px;color:#526b7c}
@media(min-width:768px){
body .careers-final .opening-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 24px;padding:20px 22px;border-top:2px solid #b99455}
.careers-final .opening-card>h3{grid-column:1;grid-row:1;align-self:center;margin:0;font-size:18px}
.careers-final .opening-top{grid-column:2;grid-row:1;justify-content:flex-end;margin:0;gap:16px}
.careers-final .opening-card>dl{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:#f5f8fa;padding:12px 0;border-radius:4px}
.careers-final .opening-card dl>div{padding:0 16px;border:0;border-right:1px solid #dce5ec}
.careers-final .opening-card dl>div:last-child{border-right:0}
.careers-final .opening-card dt{font-size:11px}
.careers-final .opening-card dd{font-size:13px;margin-top:4px}
.careers-final .opening-card>.opening-locations{grid-column:1/-1;grid-row:3}
.careers-final .opening-location-list{grid-template-columns:repeat(5,minmax(0,1fr))}
.careers-final .opening-description{grid-column:1/-1;font-size:12px;padding:0}
}
@media(min-width:768px) and (max-width:991px){.careers-final .opening-location-list{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Compact contact details and a clear enquiry form. */
.contact-final .page-header{padding:16px 0}
.contact-final .page-header h1{font-size:25px;line-height:1.3}
.contact-final .page-heading-description{font-size:12px;line-height:1.6}
.contact-final .contact-section{padding:24px 0}
.contact-final .contact-section>.container>.row{--bs-gutter-x:28px;--bs-gutter-y:20px}
body .contact-final .office-address{padding:14px;border-radius:6px;margin-bottom:16px;gap:5px}
.contact-final .office-address small{font-size:10px}
.contact-final .office-address strong{font-size:17px;line-height:1.4}
.contact-final .office-address span,.contact-final .office-address a{font-size:12px;line-height:1.55}
.contact-final .contact-section h2{font-size:19px;margin-bottom:8px}
.contact-final .contact-section p{font-size:12px;line-height:1.6}
.contact-final .text-link{font-size:12px}
.contact-final .contact-note{padding:12px;margin-top:16px}
.contact-final .contact-note h3{font-size:14px;margin-bottom:6px}
body .contact-final .form-panel{padding:20px;border-radius:8px;box-shadow:none}
.contact-final .form-panel h2{font-size:20px;margin-bottom:6px}
.contact-final .form-panel .form-hint{font-size:11px;line-height:1.5;margin-bottom:14px!important}
.contact-final .form-panel .row{--bs-gutter-x:14px;--bs-gutter-y:12px}
.contact-final .form-label{font-size:12px;margin-bottom:5px}
.contact-final .form-control,.contact-final .form-select{font-size:13px;min-height:38px;padding:8px 10px}
.contact-final textarea.form-control{min-height:100px}
.contact-final .form-check-label{font-size:11px;line-height:1.5}
.contact-final .form-panel .btn{font-size:12px;padding:9px 14px}
@media(min-width:768px){.contact-final .form-panel .form-control,.contact-final .form-panel .form-select{font-size:13px!important;min-height:38px!important}}
/* Keep the contact page canvas light; retain blue only in its panels. */
body .contact-final .contact-section{background:#f7f8fa}
body .contact-final .office-address{background:#d8e5ef;border-color:#b18a49}
body .contact-final .form-panel{background:#d2dee9;border-color:#afc5d7}
body .contact-final .form-panel .form-control,body .contact-final .form-panel .form-select{background:#f8fafc;border-color:#abc1d3}
/* Consistent contact-form controls, labels and focus states. */
body .contact-final .form-panel{padding:24px;border:1px solid #afc5d7;border-top:3px solid #173c53;border-radius:8px;background:#d2dee9}
.contact-final .form-panel>h2{font-size:20px;line-height:1.4;margin:0 0 5px}
.contact-final .form-panel>.form-hint{font-size:11px;color:#506879;margin-bottom:18px!important}
.contact-final .form-panel form>.row{--bs-gutter-x:16px;--bs-gutter-y:15px}
body .contact-final .form-panel .form-label{display:block;font-size:12px;font-weight:600;line-height:1.4;color:#203f55;margin-bottom:6px}
body .contact-final .form-panel .form-control,body .contact-final .form-panel .form-select{border:1px solid #abc1d3;border-radius:5px;background:#f8fafc;color:#203f55;min-height:42px!important;padding:9px 11px;line-height:1.5}
.contact-final .form-panel .form-control:focus,.contact-final .form-panel .form-select:focus{border-color:#507b98;box-shadow:0 0 0 3px #305e7c16;background:#fff}
.contact-final .form-panel .indian-phone-group{border-color:#abc1d3;border-radius:5px;background:#f8fafc}
body .contact-final .indian-phone-group .form-control{border:0;border-radius:0;box-shadow:none}
.contact-final .indian-phone-prefix{font-size:12px;padding:0 12px;background:#e5edf3}
.contact-final textarea.form-control{min-height:100px;resize:vertical}
.contact-final .form-panel #message-hint{font-size:10px;line-height:1.5;margin:6px 0 0!important}
.contact-final .form-panel .form-check{margin-top:2px;margin-bottom:4px}
.contact-final .form-check-label{font-size:11px;line-height:1.6;color:#3c5669}
.contact-final .form-check-input:checked{background-color:#173c53;border-color:#173c53}
.contact-final .form-panel button[type=submit]{width:auto!important;min-width:170px;font-size:12px;font-weight:600;border-radius:5px;padding:10px 20px;min-height:40px}
.contact-final .invalid-feedback,.contact-final .phone-live-error{font-size:11px;line-height:1.5}
.contact-final .franchise-enquiry-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 14px;background:#eee0bf;border:1px solid #b68e49;border-left:4px solid #a67b32;border-radius:5px;color:#173c53;font-family:inherit;font-size:13px;font-weight:600;line-height:1.5;cursor:pointer}
.contact-final .franchise-enquiry-choice[aria-pressed=true]{background:#173c53;color:#fff;border-color:#173c53}
.contact-final .franchise-enquiry-choice:focus-visible{outline:2px solid #173c53;outline-offset:3px}
.contact-final .contact-enquiry-types fieldset{margin:0;padding:0;border:0}
.contact-final .enquiry-type-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.contact-final .enquiry-type-options label{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#f8fafc;border:1px solid #abc1d3;border-radius:5px;font-size:12px;font-weight:600;color:#24475e;cursor:pointer}
.contact-final .enquiry-type-options label:has(input:checked){background:#173c53;border-color:#173c53;color:#fff}
.contact-final .enquiry-type-options input{accent-color:#b58e4f;width:15px;height:15px;margin:0;flex-shrink:0}
/* A quiet image zoom replaces the gallery's arrow overlay. */
#main .training-photo-link img{transition:transform .3s ease}
@media(hover:hover) and (pointer:fine){
#main .training-photo-link{cursor:zoom-in}
#main .training-photo-link:hover img,#main .training-photo-link:focus-visible img{transform:none!important}
}
@media(prefers-reduced-motion:reduce){#main .training-photo-link img{transition:none}}
@media(hover:hover) and (pointer:fine){
#main .training-gallery-card{position:relative;transition:transform .25s ease,box-shadow .25s ease;transform-origin:center}
#main .training-gallery-card:hover,#main .training-gallery-card:focus-within{transform:scale(1.05);z-index:3;box-shadow:0 8px 24px #10364d26}
#main .training-photo-link{cursor:pointer}
}
@media(prefers-reduced-motion:reduce){#main .training-gallery-card{transition:none}}
#main .training-photo-link{cursor:default}

/* Lift the complete clickable service card on hover and keyboard focus. */
@media(hover:hover) and (pointer:fine){
#main .photo-service-card{transition:transform .25s ease,box-shadow .25s ease;transform-origin:center}
#main .photo-service-card:hover,#main .photo-service-card:focus-within{transform:scale(1.03);z-index:3;box-shadow:0 8px 24px #10364d24}
}
@media(prefers-reduced-motion:reduce){#main .photo-service-card{transition:none}}
/* Equal service cards with a consistent, compact text area. */
@media(min-width:768px){
#main .service-photo-grid{align-items:stretch}
#main .service-photo-grid>[class*=col-]{display:flex}
#main .service-photo-grid .photo-service-card{height:100%;width:100%;min-height:0}
#main .service-photo-grid .service-card-copy{padding:14px 16px;flex:1}
#main .service-photo-grid .service-card-copy h3{line-height:1.4;min-height:2.8em}
#main .service-photo-grid .service-card-copy p{line-height:1.6;margin:8px 0 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
}
/* Compact Request Security page; keep the established blue panel palette. */
.security-request-final .page-header{padding:16px 0}
.security-request-final .page-header h1{font-size:25px;line-height:1.3}
.security-request-final .page-heading-description{font-size:12px;line-height:1.6}
.security-request-final .contact-section{padding:22px 0 26px}
.security-request-final .contact-section>.container>.row{--bs-gutter-x:28px;--bs-gutter-y:18px;align-items:start}
.security-request-final .contact-section h2{font-size:18px;line-height:1.4;margin-bottom:10px}
.security-request-final .form-steps{list-style:none;padding:0;margin:0}
.security-request-final .form-steps li{font-size:12px;line-height:1.6;padding:9px 0;border-bottom:1px solid #cbd8e2}
.security-request-final .contact-note{padding:12px 0 0;margin-top:16px}
.security-request-final .contact-note h3{font-size:14px;margin-bottom:6px}
.security-request-final .contact-note p{font-size:11px;line-height:1.6;margin:0}
body .security-request-final .form-panel{padding:20px;border-radius:7px;box-shadow:none}
.security-request-final .form-panel>h2{font-size:19px;line-height:1.4;margin:0 0 5px}
.security-request-final .form-panel>.form-hint{font-size:11px;line-height:1.5;margin-bottom:14px!important}
.security-request-final .form-panel form>.row{--bs-gutter-x:14px;--bs-gutter-y:12px}
.security-request-final .form-label{font-size:12px;line-height:1.4;margin-bottom:5px;font-weight:600}
body .security-request-final .form-control,body .security-request-final .form-select{font-size:13px!important;min-height:40px!important;padding:8px 10px;line-height:1.5;border-radius:5px}
.security-request-final .indian-phone-prefix{font-size:12px;padding:0 11px}
.security-request-final textarea.form-control{min-height:90px}
.security-request-final .form-panel .form-hint{font-size:10px;line-height:1.5}
.security-request-final .form-check-label{font-size:11px;line-height:1.6}
.security-request-final .form-panel button[type=submit]{font-size:12px;padding:10px 16px;border-radius:5px;min-height:40px}
.security-request-final .form-control[readonly]{background:#e5edf3;font-weight:600;color:#23485f}
/* Service-specific guidance beside the security enquiry form. */
.security-request-final .service-scope-panel{padding:18px;border:1px solid #bfd0de;border-top:3px solid #b38b4c;border-radius:7px;background:#f4f7fa}
.security-request-final .service-scope-kicker{font-size:10px;letter-spacing:.1em;font-weight:600;color:#8e6c36;margin:0 0 7px}
.security-request-final .service-scope-panel h2{font-size:19px;line-height:1.4;margin:0 0 10px;color:#173c53}
.security-request-final .service-scope-intro{font-size:12px;line-height:1.65;color:#506879;margin:0 0 14px}
.security-request-final .service-scope-panel h3{font-size:12px;line-height:1.4;font-weight:600;margin:0 0 8px;color:#173c53}
.security-request-final .service-scope-panel ul{list-style:none;padding:0;margin:0}
.security-request-final .service-scope-panel li{position:relative;padding:7px 0 7px 14px;font-size:12px;line-height:1.6;color:#456074;border-bottom:1px solid #dce5ec}
.security-request-final .service-scope-panel li:before{content:'';position:absolute;left:0;top:15px;width:4px;height:4px;border-radius:50%;background:#a17c3b}
.security-request-final .service-scope-panel li:last-child{border-bottom:0;padding-bottom:0}
.security-request-final .service-scope-note{font-size:10px;line-height:1.6;color:#657785;margin:13px 0 0;padding-top:10px;border-top:1px solid #d5e0e8}
.franchise-form .franchise-experience{border:0;margin:0;padding:8px calc(var(--bs-gutter-x) * .5);min-width:0}.franchise-form .franchise-experience legend{float:none;width:auto;margin:0 0 7px;padding:0}.franchise-form .franchise-experience>div{gap:10px 18px!important}.franchise-form .franchise-experience label{font-size:13px;line-height:1.5;padding:4px 0;cursor:pointer}.franchise-form .franchise-experience input{flex-shrink:0}.franchise-form form>.row{--bs-gutter-y:12px}@media(max-width:767px){.franchise-form .franchise-experience{padding-block:4px}.franchise-form .franchise-experience label{font-size:11px}.franchise-form .franchise-experience legend{margin-bottom:4px}.franchise-form form>.row{--bs-gutter-y:8px}}
.franchise-form .franchise-choice-group{min-width:0;padding-top:8px;padding-bottom:2px}
.franchise-form .franchise-choice-group>.form-label{display:block;float:none;margin:0 0 7px;line-height:1.5;color:#2e4f63}
.franchise-form .franchise-choice-options{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}
.franchise-form .franchise-choice-options label{font-size:13px;line-height:1.5;padding:4px 0;cursor:pointer;margin:0}
.franchise-form .franchise-choice-options input{width:14px;height:14px;flex:0 0 14px;border-radius:3px}
.franchise-form .franchise-choice-options input:checked{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}
@media(max-width:767px){.franchise-form .franchise-choice-group{padding-top:8px;padding-bottom:3px}.franchise-form .franchise-choice-group>.form-label{margin-bottom:6px!important}.franchise-form .franchise-choice-options{gap:7px 16px}.franchise-form .franchise-choice-options label{font-size:11px;padding:3px 0}.franchise-form .franchise-choice-group+div:has(>#message){margin-top:8px}}
.franchise-form form>.row{--bs-gutter-y:9px}
.franchise-form form>.row>.franchise-choice-group{display:grid;grid-template-columns:minmax(190px,.95fr) minmax(0,1.2fr);align-items:center;gap:5px 14px;padding-top:0;padding-bottom:0;margin-top:9px}
.franchise-form .franchise-choice-group>.form-label{margin:0;line-height:1.4}
.franchise-form .franchise-choice-options{gap:5px 14px}
.franchise-form .franchise-choice-options label{padding:2px 0;line-height:1.4}
.franchise-form .franchise-whatsapp-choice{padding-top:6px;padding-bottom:0}
.franchise-form form>.row>.col-md-6:has(>#budget){width:100%}
.franchise-form form>.row>div:has(>#message){margin-top:9px}
@media(max-width:767px){.franchise-form form>.row>.franchise-choice-group{grid-template-columns:1fr;gap:4px;margin-top:8px;padding-block:0}.franchise-form .franchise-choice-group>.form-label{margin-bottom:0!important}.franchise-form .franchise-choice-options label{padding:2px 0}.franchise-form form>.row>div:has(>#message){margin-top:8px}}
.network-city-list{display:flex;flex-wrap:wrap;gap:5px 14px;list-style:none;margin:10px 0 16px;padding:0}.network-city-list li{font-size:12px;line-height:1.5;color:#476e87}@media(max-width:767px){.network-city-list{gap:4px 10px}.network-city-list li{font-size:10px}}
.footer-policy-links{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}.footer-refined .footer-policy-links>a{color:#e8c77f;font-size:12px;line-height:1.5;padding:5px 0;text-decoration:underline;text-underline-offset:3px}.footer-refined .footer-policy-links>a:hover,.footer-refined .footer-policy-links>a:focus-visible{color:#fff}@media(max-width:767px){.footer-policy-links{gap:7px 14px}.footer-refined .footer-policy-links>a{font-size:11px}}

/* Match the simple mobile social icons on desktop too. */
body .footer-refined .social-facebook,body .footer-refined .social-instagram{background:transparent;border:1px solid #587487;border-radius:5px;width:25px;height:25px;min-height:25px;flex:0 0 25px;padding:0}
body .footer-refined .social-brand-icon{display:none}
body .footer-refined .social-mobile-mark{display:block;width:15px;height:15px;color:#b9cedd}
/* Keep complete staff groups visible in service card photographs. */
#main #service-event .service-photo img,
#main #service-ship .service-photo img{object-fit:contain!important;object-position:center!important;background:#dce5eb}
#main #service-guards .service-photo img,
#main #service-airport .service-photo img,
#main #service-facility .service-photo img{object-fit:cover!important;object-position:right center!important}
/* Compact desktop careers action leaves more page content visible. */
@media(min-width:768px){
body .floating-contact{bottom:78px}
body .home-floating-jobs.home-floating-jobs-premium{right:18px;bottom:18px;padding:8px 11px;gap:8px;border-radius:8px;min-width:0;max-width:230px;animation:none;box-shadow:0 3px 12px #082a4326}
body .home-floating-jobs-premium .floating-job-icon{width:28px;height:28px;flex-basis:28px;border-radius:6px}
body .home-floating-jobs-premium .floating-job-icon svg{width:18px;height:18px}
body .home-floating-jobs-premium .floating-job-copy strong{font-size:12px;line-height:1.4;letter-spacing:0}
body .home-floating-jobs-premium .floating-job-copy small{display:none}
body .home-floating-jobs-premium .floating-job-arrow{font-size:16px;margin-left:1px}
}
