:root{--navy:#071d33;--blue:#0d6efd;--cyan:#25c4db;--soft:#f4f8fb;--text:#263746}*{box-sizing:border-box}body{color:var(--text);font-family:Arial,sans-serif;line-height:1.7}.navbar{background:rgba(7,29,51,.94);padding:1rem 0}.navbar-brand{letter-spacing:.12em}.carousel-item{height:min(820px,100vh);min-height:620px;background-size:cover;background-position:center}.hero-content{padding-top:220px;color:#fff;max-width:780px;margin-left:auto;margin-right:auto}.hero-content h1{font-size:clamp(3rem,7vw,6.4rem);line-height:1;font-weight:800}.hero-content p{font-size:1.2rem;max-width:650px}.btn-brand{background:var(--cyan);color:var(--navy);font-weight:700;padding:.8rem 1.4rem;border:0}.section{padding:100px 0}.bg-soft{background:var(--soft)}.eyebrow{color:var(--blue);font-weight:800;text-transform:uppercase;letter-spacing:.12em}.section-title{max-width:680px;margin-bottom:45px}.section-title h2,h2{font-weight:800;color:var(--navy);font-size:clamp(2rem,4vw,3.3rem)}h3{font-size:1.25rem;font-weight:750;color:var(--navy)}.service-card{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(7,29,51,.08);border-radius:1.25rem;overflow:hidden;box-shadow:0 14px 40px rgba(7,29,51,.07);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.service-card:hover{transform:translateY(-6px);border-color:rgba(13,110,253,.28);box-shadow:0 24px 60px rgba(7,29,51,.13)}.service-media{height:285px;position:relative;display:flex;align-items:center;justify-content:center;padding:12px;background:linear-gradient(145deg,#eaf1f6,#fff);border-bottom:1px solid rgba(7,29,51,.07)}.service-media img{width:100%;height:100%;object-fit:contain;transition:transform .35s ease}.service-card:hover .service-media img{transform:scale(1.02)}.service-number{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(7,29,51,.88);color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.08em;box-shadow:0 8px 18px rgba(7,29,51,.2)}.service-content{display:flex;flex:1;flex-direction:column;padding:1.55rem}.service-content h3{min-height:3rem;margin-bottom:.7rem;font-size:1.18rem;line-height:1.28}.service-content p{color:#566978;margin-bottom:1.4rem}.service-actions{display:grid;grid-template-columns:1.12fr 1fr;gap:.7rem;margin-bottom:1.1rem}.service-action{min-height:48px;display:flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:.75rem;padding:.72rem .85rem;font-size:.88rem;font-weight:800;line-height:1;text-decoration:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease,color .2s ease}.service-action-primary{background:linear-gradient(135deg,#0a2b47,#0d5c92);color:#fff;box-shadow:0 9px 22px rgba(7,29,51,.18)}.service-action-primary:hover{color:#fff;transform:translateY(-2px);box-shadow:0 13px 28px rgba(7,29,51,.27)}.service-action-whatsapp{background:#e9fbf0;border-color:#bceccc;color:#087532}.service-action-whatsapp:hover{background:#25d366;border-color:#25d366;color:#063b1a;transform:translateY(-2px);box-shadow:0 10px 24px rgba(37,211,102,.24)}.service-action-icon{font-size:.9rem}.service-action-whatsapp .service-action-icon{color:#20b858}.service-action-whatsapp:hover .service-action-icon{color:#063b1a}.service-action-arrow{margin-left:auto;transition:transform .2s ease}.service-action-primary:hover .service-action-arrow{transform:translateX(3px)}.service-action:focus-visible,.service-more:focus-visible{outline:3px solid rgba(13,110,253,.32);outline-offset:3px}.service-more{display:inline-flex;align-items:center;gap:.45rem;color:var(--blue);font-weight:700;text-decoration:none}.service-more span{transition:transform .2s ease}.service-more:hover span{transform:translateX(4px)}.feature-box,.testimonial{padding:2rem;border-radius:1rem;background:#fff;box-shadow:0 10px 35px rgba(7,29,51,.08)}.feature-icon,.service-icon{color:var(--blue);font-size:1.7rem}.gallery-grid{columns:3 260px;column-gap:1rem}.gallery-grid figure{break-inside:avoid;position:relative;margin:0 0 1rem}.gallery-grid img{width:100%;border-radius:.75rem}.gallery-grid figcaption{position:absolute;bottom:0;padding:1rem;background:linear-gradient(transparent,rgba(0,0,0,.8));width:100%}.stars{color:#f5b301}.testimonial footer span{display:block;color:#71808e}.contact{background:var(--navy);color:#fff}.contact h2,.contact a{color:#fff}.form-control{padding:.9rem;border-radius:.6rem}.site-footer{padding:35px 0;background:#031322;color:#fff}.site-footer .container{display:flex;justify-content:space-between;gap:2rem}.site-footer a{color:#fff;margin-left:1rem}.page-hero{padding:180px 0 90px;background:var(--navy);color:#fff}.page-hero h1{font-size:clamp(2.8rem,6vw,5rem);font-weight:800}.breadcrumb a{color:var(--cyan)}.breadcrumb-item.active{color:#fff}.service-detail-image{width:100%;max-height:540px;object-fit:contain;border-radius:1rem;background:var(--soft)}.content{max-width:900px;font-size:1.1rem}.modal-content{border:0;border-radius:1.25rem;box-shadow:0 30px 90px rgba(7,29,51,.25)}.modal-header,.modal-body,.modal-footer{padding:1.5rem 2rem}.form-message{font-weight:600}@media(max-width:991px){.service-media{height:270px}.service-actions{grid-template-columns:1fr}}@media(max-width:768px){.section{padding:70px 0}.site-footer .container{display:block}.site-footer a{margin:0 1rem 0 0}.service-media{height:300px}.service-content h3{min-height:auto}.service-actions{grid-template-columns:1fr 1fr}.service-action{min-height:50px}}@media(max-width:420px){.service-actions{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.service-card,.service-media img,.service-more span,.service-action,.service-action-arrow{transition:none}.service-card:hover,.service-action:hover{transform:none}}
:root{--service-button-navy:#08263d;--service-button-green:#159447}
.service-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-bottom:18px!important}
.service-action{height:48px!important;min-width:0!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;padding:0 14px!important;border:1px solid!important;border-radius:9px!important;font-size:14px!important;font-weight:700!important;line-height:1!important;letter-spacing:0!important;text-decoration:none!important;box-shadow:none!important;transform:none!important;transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease!important}
.service-action svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.service-action-primary{background:var(--service-button-navy)!important;border-color:var(--service-button-navy)!important;color:#fff!important}
.service-action-primary:hover{background:#104566!important;border-color:#104566!important;color:#fff!important;box-shadow:0 8px 18px rgba(8,38,61,.18)!important}
.service-action-whatsapp{background:#fff!important;border-color:#9dddb5!important;color:var(--service-button-green)!important}
.service-action-whatsapp:hover{background:#effbf3!important;border-color:#4fbe78!important;color:#087333!important;box-shadow:0 8px 18px rgba(21,148,71,.12)!important}
.service-action-icon,.service-action-arrow{display:none!important}
.service-action:focus-visible{outline:3px solid rgba(13,110,253,.25)!important;outline-offset:3px}
@media(max-width:420px){.service-actions{grid-template-columns:1fr!important}}
.premium-hero{position:relative;overflow:hidden;padding:155px 0 95px;background:#071d33;color:#fff}.premium-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 25%,rgba(37,196,219,.14),transparent 28%),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:auto,50px 50px,50px 50px}.premium-hero .container{position:relative}.premium-hero-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:5rem;align-items:center}.hero-badge{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1.4rem;color:#b9ccd7;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.hero-badge span{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 6px rgba(37,196,219,.1)}.premium-hero-content h1{max-width:760px;margin:0;color:#fff;font-size:clamp(3.2rem,6vw,6rem);font-weight:800;line-height:1.02;letter-spacing:-.045em}.premium-hero-content>p{max-width:650px;margin:1.6rem 0 2rem;color:#b9cad5;font-size:1.08rem;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem}.hero-primary,.hero-secondary{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:1.6rem;border-radius:.65rem;padding:0 1.25rem;font-size:.88rem;font-weight:800;text-decoration:none}.hero-primary{background:var(--cyan);color:var(--navy)}.hero-primary:hover{background:#66ddea;color:var(--navy)}.hero-secondary{border:1px solid rgba(255,255,255,.25);color:#fff}.hero-secondary:hover{border-color:#fff;color:#fff}.hero-trust{display:flex;gap:2.5rem;margin-top:3rem}.hero-trust div{display:flex;flex-direction:column}.hero-trust strong{font-size:1.35rem}.hero-trust span{color:#8fa7b6;font-size:.75rem}.premium-hero-visual{position:relative;max-width:560px;margin-left:auto}.hero-image-frame{position:relative;height:600px;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:1.5rem;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.28)}.hero-image-frame img{width:100%;height:100%;object-fit:contain}.hero-image-label{position:absolute;left:1rem;right:1rem;bottom:1rem;padding:1rem 1.15rem;border:1px solid rgba(255,255,255,.18);border-radius:.85rem;background:rgba(7,29,51,.88);backdrop-filter:blur(12px)}.hero-image-label span{display:block;color:var(--cyan);font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.hero-image-label strong{color:#fff}.hero-floating-card{position:absolute;display:flex;align-items:center;gap:.7rem;border:1px solid rgba(255,255,255,.15);border-radius:.8rem;background:#fff;color:var(--navy);box-shadow:0 18px 45px rgba(0,0,0,.22)}.hero-floating-top{top:12%;left:-55px;padding:.9rem 1rem}.hero-floating-top>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e8f9f1;color:#138444;font-weight:900}.hero-floating-top div{display:flex;flex-direction:column}.hero-floating-top small{color:#6b7d89}.hero-floating-bottom{right:-35px;bottom:18%;padding:.9rem 1rem}.hero-floating-bottom strong{font-size:1.35rem}.hero-floating-bottom span{max-width:80px;color:#6b7d89;font-size:.72rem;line-height:1.3}.about-premium{background:#fff}.about-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:6rem;align-items:center}.about-visual{position:relative;min-height:590px;display:flex;align-items:center;justify-content:center;padding:1.2rem;border-radius:1.5rem;background:#edf4f7}.about-visual img{width:100%;height:560px;object-fit:contain;border-radius:1rem}.about-badge{position:absolute;right:-25px;bottom:35px;display:flex;flex-direction:column;padding:1rem 1.2rem;border-radius:.8rem;background:var(--navy);color:#fff;box-shadow:0 18px 45px rgba(7,29,51,.2)}.about-badge span{color:#adc0cc;font-size:.75rem}.about-content h2{margin:.55rem 0 1.3rem}.about-introduction{color:#536a79;font-size:1.02rem;line-height:1.8}.about-values{display:grid;gap:1rem;margin:2rem 0}.about-values article{display:grid;grid-template-columns:42px 1fr;gap:1rem;padding-top:1rem;border-top:1px solid #dfe8ed}.about-values article>span{color:var(--blue);font-size:.75rem;font-weight:800}.about-values h3{margin:0 0 .3rem}.about-values article div div{color:#617582;font-size:.9rem;line-height:1.65}.about-link{display:inline-flex;align-items:center;gap:.55rem;color:var(--navy);font-weight:800;text-decoration:none}.about-link span{transition:transform .2s ease}.about-link:hover span{transform:translateX(4px)}@media(max-width:1100px){.premium-hero-layout,.about-layout{grid-template-columns:1fr}.premium-hero-visual{width:100%;max-width:700px;margin:1rem auto 0}.hero-image-frame{height:520px}.about-visual{min-height:auto}.about-badge{right:20px}.about-visual img{height:500px}}@media(max-width:650px){.premium-hero{padding:113px 0 70px}.premium-hero-content h1{font-size:2.8rem}.hero-actions a{width:100%}.hero-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.hero-image-frame{height:430px}.hero-floating-top{left:10px}.hero-floating-bottom{right:10px}.about-layout{gap:3rem}.about-visual img{height:400px}.about-badge{right:10px;bottom:15px}}
.premium-footer{position:relative;padding:0;background:#031522;color:#fff}.premium-footer:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent)}.premium-footer .container{display:block!important}.footer-top{display:grid;grid-template-columns:1.35fr .7fr 1fr 1.15fr;gap:4rem;padding:75px 0 55px}.footer-logo{display:inline-block;margin-bottom:1.1rem;color:#fff;font-size:1.2rem;font-weight:900;letter-spacing:.14em;text-decoration:none}.footer-brand p{max-width:360px;margin:0;color:#a9bdca;font-size:.92rem;line-height:1.75}.footer-socials{display:flex;gap:.55rem;margin-top:1.5rem}.footer-socials a{display:grid;place-items:center;width:38px;height:38px;margin:0!important;border:1px solid rgba(255,255,255,.16);border-radius:50%;color:#fff!important;font-size:.7rem;font-weight:800;text-decoration:none;text-transform:uppercase;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.footer-socials a:hover{border-color:var(--cyan);background:var(--cyan);color:var(--navy)!important}.footer-column h3{margin-bottom:1.25rem;color:#fff;font-size:.78rem;letter-spacing:.11em;text-transform:uppercase}.footer-column nav,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem}.footer-column a{margin:0!important;color:#a9bdca!important;font-size:.88rem;text-decoration:none;transition:color .2s ease}.footer-column a:hover{color:#fff!important}.footer-contact address{margin:0 0 .3rem;color:#a9bdca;font-size:.86rem;font-style:normal;line-height:1.65}.footer-location{margin-top:.45rem!important;color:var(--cyan)!important;font-weight:750}.footer-location span{display:inline-block;margin-left:.3rem}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.35rem 0;border-top:1px solid rgba(255,255,255,.09)}.footer-bottom p{margin:0;color:#829aa9;font-size:.78rem}.footer-bottom div{display:flex;gap:1.25rem}.footer-bottom a{color:#829aa9!important;font-size:.78rem;text-decoration:none}.footer-bottom a:hover{color:#fff!important}@media(max-width:1100px){.footer-top{grid-template-columns:1.3fr 1fr 1fr;gap:3rem}.footer-contact{grid-column:span 3;display:grid;grid-template-columns:2fr 1fr 2fr 1fr;align-items:start}}@media(max-width:768px){.footer-top{grid-template-columns:1fr 1fr;gap:2.5rem;padding:60px 0 40px}.footer-brand{grid-column:span 2}.footer-contact{grid-column:span 2;display:flex}.footer-bottom{align-items:flex-start;flex-direction:column;gap:.7rem}.footer-bottom div{flex-wrap:wrap}}@media(max-width:480px){.footer-top{grid-template-columns:1fr}.footer-brand,.footer-contact{grid-column:auto}.footer-services{display:none}}
.contact-premium{position:relative;overflow:hidden;padding:120px 0;background:#071d33}.contact-premium:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 15%,rgba(37,196,219,.12),transparent 30%),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:auto,48px 48px,48px 48px;pointer-events:none}.contact-premium .container{position:relative}.contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:5rem;align-items:start}.contact-details h2{max-width:540px;margin:.55rem 0 1.2rem;color:#fff}.contact-lead{max-width:520px;color:#b5c6d1;font-size:1.02rem;line-height:1.75}.contact-meta{display:grid;gap:.75rem;margin:2.25rem 0 1.4rem}.contact-meta-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;border:1px solid rgba(255,255,255,.1);border-radius:.85rem;background:rgba(255,255,255,.035);color:#fff!important;text-decoration:none;transition:background-color .2s ease,border-color .2s ease}.contact-meta-item:hover{border-color:rgba(37,196,219,.4);background:rgba(255,255,255,.065)}.contact-meta-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:rgba(37,196,219,.14);color:var(--cyan);font-size:.7rem;font-weight:800}.contact-meta-item>span:last-child{display:flex;min-width:0;flex-direction:column}.contact-meta-item small{margin-bottom:.15rem;color:#8fa6b5;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.contact-meta-item strong{color:#fff;font-size:.94rem;overflow-wrap:anywhere}.contact-meta-item em{margin-top:.15rem;color:#b8c8d2;font-size:.84rem;font-style:normal;line-height:1.55}.contact-map-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#fff!important;font-weight:700;text-decoration:none}.contact-map-link span:last-child{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--cyan);color:var(--navy)}.contact-form-panel{padding:2.3rem;border:1px solid rgba(255,255,255,.12);border-radius:1.25rem;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.22)}.contact-form-heading{margin-bottom:1.6rem}.contact-form-heading>span{color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.contact-form-heading h3{margin:.3rem 0;font-size:1.75rem}.contact-form-heading p{margin:0;color:#6b7d89}.contact-form-panel .form-label{margin-bottom:.35rem;color:#263b4b;font-size:.8rem;font-weight:750}.contact-form-panel .form-control{min-height:52px;border:1px solid #d7e1e7;background:#f8fafb;color:#173044;box-shadow:none;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.contact-form-panel textarea.form-control{min-height:145px}.contact-form-panel .form-control:focus{border-color:#4a9bca;background:#fff;box-shadow:0 0 0 4px rgba(13,110,253,.09)}.contact-form-footer{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem 1rem}.contact-submit{min-height:50px;display:inline-flex;align-items:center;gap:2rem;border:0;border-radius:.65rem;padding:0 1.25rem;background:var(--navy);color:#fff;font-weight:800;transition:background-color .2s ease,box-shadow .2s ease}.contact-submit:hover{background:#104566;box-shadow:0 10px 22px rgba(7,29,51,.2)}.contact-response-note{color:#758691;font-size:.78rem}.contact-form-footer .form-message{flex-basis:100%;margin:0!important}@media(max-width:1100px){.contact-layout{grid-template-columns:1fr;gap:3rem}.contact-details{max-width:700px}.contact-meta{grid-template-columns:repeat(2,1fr)}.contact-meta-item:last-child{grid-column:span 2}}@media(max-width:650px){.contact-premium{padding:75px 0}.contact-meta{grid-template-columns:1fr}.contact-meta-item:last-child{grid-column:auto}.contact-form-panel{padding:1.35rem}.contact-form-footer{align-items:stretch;flex-direction:column}.contact-submit{justify-content:space-between;width:100%}}
.testimonial-section{background:#f7fafb}.testimonial-intro{display:grid;grid-template-columns:1fr .72fr;gap:5rem;align-items:end;margin-bottom:3.25rem}.testimonial-intro h2{margin:.55rem 0 0}.testimonial-intro>p{max-width:500px;margin:0;color:#607482;font-size:1.02rem}.testimonial-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:1.4rem}.testimonial-featured,.testimonial-compact{margin:0;border:1px solid #dfe8ed;border-radius:1.2rem;background:#fff;box-shadow:0 16px 45px rgba(7,29,51,.07)}.testimonial-featured{position:relative;display:flex;flex-direction:column;min-height:430px;padding:3rem;overflow:hidden}.testimonial-featured:after{content:"";position:absolute;right:-70px;bottom:-100px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(37,196,219,.16),transparent 68%)}.testimonial-quote{position:absolute;top:1.2rem;right:2rem;color:#e7f1f5;font-family:Georgia,serif;font-size:9rem;line-height:1}.testimonial-stars{position:relative;z-index:1;color:#f2a900;font-size:1rem;letter-spacing:.16em}.testimonial-featured>p{position:relative;z-index:1;max-width:720px;margin:2rem 0;font-size:1.42rem;line-height:1.65;color:var(--navy)}.testimonial-featured footer{position:relative;z-index:1;display:flex;align-items:center;gap:.9rem;margin-top:auto}.testimonial-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800}.testimonial-featured footer div,.testimonial-compact footer{display:flex;flex-direction:column}.testimonial-featured footer span,.testimonial-compact footer span{color:#718390;font-size:.84rem}.testimonial-supporting{display:grid;gap:1.4rem}.testimonial-compact{padding:1.6rem}.testimonial-compact p{margin:1rem 0 1.35rem;color:#405665;line-height:1.7}.testimonial-trust{display:flex;align-items:flex-start;gap:.9rem;padding:1.25rem 1.35rem;border-radius:1rem;background:var(--navy);color:#fff}.testimonial-trust>span{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:var(--cyan);color:var(--navy);font-weight:900}.testimonial-trust p{margin:.2rem 0 0;color:#bbccd7;font-size:.84rem}@media(max-width:991px){.testimonial-intro,.testimonial-layout{grid-template-columns:1fr;gap:1.4rem}.testimonial-featured{min-height:370px}}@media(max-width:600px){.testimonial-featured{min-height:auto;padding:1.7rem}.testimonial-featured>p{font-size:1.12rem}.testimonial-quote{font-size:6rem}}
.gallery-section .container{max-width:1320px}.gallery-intro{margin-bottom:2rem!important}.gallery-intro h2{font-size:clamp(2.25rem,4vw,3.75rem)!important;line-height:1.08!important}.gallery-intro>p{color:#d0dce4!important;font-size:1.02rem!important;line-height:1.7!important}.gallery-showcase{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.4rem!important}.gallery-project{min-height:440px!important;border-color:rgba(255,255,255,.16)!important;border-radius:1.15rem!important;box-shadow:0 18px 45px rgba(0,0,0,.2)}.gallery-project-featured{grid-column:span 2!important;grid-row:auto!important;min-height:620px!important}.gallery-project-media{padding:16px!important;background:#f8fafb!important}.gallery-project-media:after{background:linear-gradient(180deg,transparent 38%,rgba(3,16,26,.35) 60%,rgba(3,16,26,.97) 100%)!important}.gallery-project-info{padding:1.8rem!important}.gallery-project-info span{display:inline-block;margin-bottom:.4rem;padding:.28rem .52rem;border-radius:999px;background:rgba(37,196,219,.16);color:#66e1ee!important;font-size:.72rem!important}.gallery-project-info h3{margin:.25rem 0 .5rem!important;font-size:1.35rem!important;line-height:1.25!important;text-shadow:0 2px 10px rgba(0,0,0,.45)}.gallery-project-info p{max-width:650px!important;color:#e3ebf0!important;font-size:.94rem!important;line-height:1.6!important;text-shadow:0 1px 8px rgba(0,0,0,.5)}@media(max-width:991px){.gallery-showcase{grid-template-columns:repeat(2,minmax(0,1fr))!important}.gallery-project,.gallery-project-featured{grid-column:auto!important;min-height:430px!important}.gallery-project-featured{grid-column:span 2!important;min-height:520px!important}}@media(max-width:650px){.gallery-showcase{grid-template-columns:1fr!important}.gallery-project,.gallery-project-featured{grid-column:auto!important;min-height:440px!important}.gallery-project-info{padding:1.25rem!important}.gallery-project-info h3{font-size:1.16rem!important}.gallery-project-info p{font-size:.88rem!important}}
.gallery-section{position:relative;overflow:hidden;background:#081b2b;color:#fff}.gallery-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 10%,rgba(37,196,219,.12),transparent 30%),linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:auto,42px 42px,42px 42px;pointer-events:none}.gallery-section .container{position:relative}.gallery-intro{display:grid;grid-template-columns:1.1fr .7fr;gap:5rem;align-items:end;margin-bottom:2.5rem}.gallery-intro h2{max-width:700px;margin:.6rem 0 0;color:#fff}.gallery-intro>p{max-width:500px;margin:0;color:#afc2cf;font-size:1.02rem}.gallery-filters{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2rem}.gallery-filter{border:1px solid rgba(255,255,255,.16);border-radius:999px;background:transparent;color:#c4d2dc;padding:.58rem 1rem;font-size:.82rem;font-weight:700;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.gallery-filter:hover,.gallery-filter.active{border-color:var(--cyan);background:var(--cyan);color:#062033}.gallery-showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.gallery-project{position:relative;overflow:hidden;min-height:350px;border:1px solid rgba(255,255,255,.1);border-radius:1rem;background:#10283b}.gallery-project-featured{grid-column:span 2;grid-row:span 2;min-height:725px}.gallery-project-media{position:absolute;inset:0;padding:10px;background:#fff}.gallery-project-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(3,16,26,.92) 100%)}.gallery-project-media img{width:100%;height:100%;object-fit:contain;transition:transform .35s ease}.gallery-project:hover .gallery-project-media img{transform:scale(1.025)}.gallery-project-info{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:1.5rem}.gallery-project-info span{color:var(--cyan);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.gallery-project-info h3{margin:.35rem 0;color:#fff;font-size:1.25rem}.gallery-project-info p{max-width:470px;margin:0;color:#c5d2db;font-size:.88rem}.gallery-project[hidden]{display:none}@media(max-width:991px){.gallery-intro{grid-template-columns:1fr;gap:1.25rem}.gallery-showcase{grid-template-columns:repeat(2,1fr)}.gallery-project-featured{grid-column:span 2;grid-row:auto;min-height:480px}}@media(max-width:600px){.gallery-showcase{grid-template-columns:1fr}.gallery-project,.gallery-project-featured{grid-column:auto;min-height:420px}.gallery-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.4rem}.gallery-filter{white-space:nowrap}}
.why-section{padding-bottom:82px!important}.why-intro{gap:4.5rem!important;margin-bottom:3.25rem!important}.why-intro>p{color:#526979!important;font-size:1.02rem!important;line-height:1.75!important}.why-process{overflow:hidden!important;border-color:#d7e3ea!important;box-shadow:0 20px 60px rgba(7,29,51,.08)!important}.why-step{min-height:275px!important;padding:2.1rem 1.8rem 2rem!important;transition:background-color .25s ease!important}.why-step:hover{background:#f9fcfd!important}.why-step-top{margin-bottom:2.1rem!important}.why-step-number{font-size:.82rem!important}.why-step-icon{width:44px!important;height:44px!important;background:#eaf5fa!important;color:#0d6a96!important}.why-step-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.why-step h3{font-size:1.08rem!important;line-height:1.35!important;margin-bottom:.8rem!important}.why-step p{color:#526979!important;font-size:.93rem!important;line-height:1.7!important}.why-step:after{display:none!important}.why-step-line{position:absolute;left:1.8rem;right:1.8rem;bottom:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--cyan));transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.why-step:hover .why-step-line{transform:scaleX(1)}.why-cta{margin-top:1.4rem!important;padding:1.25rem 1.4rem!important;border:1px solid #e1ebf0;background:linear-gradient(90deg,#f3f8fb,#f8fbfc)!important}.why-cta div{display:flex;flex-direction:column;gap:.1rem}.why-cta strong{color:var(--navy);font-size:.96rem}.why-cta div span{color:#617482;font-size:.85rem}.why-cta a{display:inline-flex;align-items:center;min-height:42px;padding:0 1rem;border-radius:.55rem;background:var(--navy);color:#fff!important;font-size:.88rem}.why-cta a:hover{background:#104566}@media(max-width:991px){.why-step{min-height:240px!important}.why-intro{gap:1.25rem!important}}@media(max-width:600px){.why-section{padding-bottom:64px!important}.why-step{padding:1.6rem!important}.why-cta{padding:1.2rem!important}.why-cta a{width:100%;justify-content:center}}
.why-section{position:relative;overflow:hidden;background:#fff}.why-section:before{content:"";position:absolute;inset:auto -8% -55% auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(37,196,219,.1),transparent 68%);pointer-events:none}.why-intro{display:grid;grid-template-columns:1.05fr .75fr;gap:6rem;align-items:end;margin-bottom:4rem}.why-intro h2{max-width:650px;margin:.55rem 0 0}.why-intro>p{max-width:500px;margin:0;color:#627483;font-size:1.08rem}.why-process{display:grid;grid-template-columns:repeat(4,1fr);position:relative;border:1px solid #e0e8ed;border-radius:1.25rem;background:#fff;box-shadow:0 18px 55px rgba(7,29,51,.07)}.why-step{position:relative;min-height:250px;padding:2rem;border-right:1px solid #e0e8ed}.why-step:last-child{border-right:0}.why-step-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem}.why-step-number{color:#0d6efd;font-size:.78rem;font-weight:800;letter-spacing:.13em}.why-step-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#eff6fb;color:#0d5c92;font-size:.8rem;font-weight:800}.why-step h3{font-size:1.15rem;margin-bottom:.65rem}.why-step p{margin:0;color:#627483;font-size:.94rem}.why-step:after{content:"";position:absolute;left:2rem;right:2rem;bottom:0;height:3px;background:var(--cyan);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.why-step:hover:after{transform:scaleX(1)}.why-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:2rem;padding:1.15rem 1.4rem;border-radius:.8rem;background:#f3f8fb;color:#536775}.why-cta a{color:var(--navy);font-weight:800;text-decoration:none}.why-cta a span{display:inline-block;margin-left:.35rem;transition:transform .2s ease}.why-cta a:hover span{transform:translateX(4px)}@media(max-width:991px){.why-intro{grid-template-columns:1fr;gap:1.25rem}.why-process{grid-template-columns:repeat(2,1fr)}.why-step:nth-child(2){border-right:0}.why-step:nth-child(-n+2){border-bottom:1px solid #e0e8ed}}@media(max-width:600px){.why-process{grid-template-columns:1fr}.why-step,.why-step:nth-child(2){min-height:auto;border-right:0;border-bottom:1px solid #e0e8ed}.why-step:last-child{border-bottom:0}.why-step-top{margin-bottom:1.25rem}.why-cta{align-items:flex-start;flex-direction:column;gap:.5rem}}

/* Refined navigation and hero */
.navbar{padding:.72rem 0;border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px)}.navbar-brand{display:flex;flex-direction:column;gap:.1rem;line-height:1.1}.navbar-brand strong{font-size:.96rem;letter-spacing:.14em}.navbar-brand span{color:#8fa7b6;font-size:.57rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.navbar-nav{align-items:center;gap:.25rem}.navbar .nav-link{padding:.65rem .75rem!important;color:#c2d0d9;font-size:.78rem;font-weight:700}.navbar .nav-link:hover{color:#fff}.nav-enquiry{display:inline-flex;align-items:center;gap:.8rem;margin-left:1rem;padding:.72rem 1rem;border-radius:.55rem;background:var(--cyan);color:var(--navy);font-size:.76rem;font-weight:800;text-decoration:none}.nav-enquiry:hover{background:#65dce9;color:var(--navy)}
.premium-hero{min-height:760px;padding:145px 0 78px}.premium-hero-layout{grid-template-columns:1fr .88fr;gap:5.5rem}.premium-hero-content h1{max-width:650px;font-size:clamp(3rem,4.8vw,4.75rem);line-height:1.04;letter-spacing:-.04em}.premium-hero-content>p{max-width:590px;margin:1.35rem 0 1.65rem;font-size:1rem}.hero-actions{margin-bottom:.25rem}.hero-trust{padding-top:1.45rem;margin-top:1.8rem;border-top:1px solid rgba(255,255,255,.1)}.hero-trust strong{font-size:1.15rem}.premium-hero-visual{max-width:520px}.hero-image-frame{height:500px;border-radius:1.15rem}.hero-image-label{background:linear-gradient(90deg,rgba(7,29,51,.96),rgba(13,58,84,.92))}.hero-floating-top{top:16%;left:-40px}.hero-floating-bottom{right:-25px;bottom:14%}
@media(max-width:1100px){.premium-hero{padding-top:135px}.premium-hero-layout{gap:3rem}.premium-hero-content h1{max-width:720px}}
@media(max-width:991px){.navbar-collapse{margin-top:.8rem;padding:1rem;border:1px solid rgba(255,255,255,.1);border-radius:.8rem;background:#071d33}.navbar-nav{align-items:stretch}.nav-enquiry{justify-content:space-between;margin:.7rem 0 0}.premium-hero-layout{grid-template-columns:1fr}.premium-hero-visual{max-width:700px;margin-top:1rem}}
@media(max-width:650px){.navbar-brand span{display:none}.premium-hero{min-height:auto;padding-top:112px}.premium-hero-content h1{font-size:clamp(2.45rem,12vw,3.25rem)}.hero-trust{gap:.7rem}.hero-image-frame{height:410px}}
.hero-slider{position:absolute;inset:0;background:#fff}.hero-slide-image{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center;opacity:0;transform:scale(1.035);transition:opacity .75s ease,transform 4s ease}.hero-slide-image.is-active{opacity:1;transform:scale(1)}@media(prefers-reduced-motion:reduce){.hero-slide-image{transition:none}}
/* Shared public-site mobile responsiveness */
html,body{max-width:100%;overflow-x:hidden}img{max-width:100%}
@media(max-width:650px){.container{padding-left:1rem;padding-right:1rem}.section{padding:58px 0}.premium-hero{padding-bottom:55px}.premium-hero-layout{gap:2rem}.premium-hero-content h1{overflow-wrap:anywhere}.hero-trust{grid-template-columns:1fr;gap:.65rem}.hero-image-frame{height:340px}.hero-floating-card{display:none}.about-layout{gap:2rem}.about-visual{padding:.6rem}.about-visual img{height:330px}.about-badge{position:static;margin-top:.7rem}.service-media{height:240px}.service-actions{grid-template-columns:1fr!important}.contact-form-panel{padding:1.1rem}.modal-dialog{margin:.6rem}.modal-header,.modal-body,.modal-footer{padding:1rem}.footer-top{padding-top:45px}.footer-bottom div{gap:.7rem}}

/* Final homepage mobile layout */
@media(max-width:767px){
.navbar{padding:.55rem 0}.navbar-brand{max-width:230px}.navbar-brand strong{font-size:.82rem}.navbar-toggler{padding:.3rem .45rem}
.premium-hero{min-height:auto;padding:95px 0 48px}.premium-hero-layout{display:flex;flex-direction:column;gap:1.5rem}.hero-badge{margin-bottom:.8rem;font-size:.63rem}.premium-hero-content h1{font-size:2.15rem;line-height:1.08}.premium-hero-content>p{margin:1rem 0 1.25rem;font-size:.92rem;line-height:1.6}.hero-actions{display:grid}.hero-primary,.hero-secondary{min-height:46px;width:100%}.hero-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.4rem;padding-top:1rem}.hero-trust strong{font-size:1rem}.hero-trust span{font-size:.64rem;line-height:1.35}.premium-hero-visual{margin:0;width:100%}.hero-image-frame{height:auto;min-height:0;aspect-ratio:4/5;border-radius:.9rem}.hero-image-label{bottom:.55rem;left:.55rem;right:.55rem;padding:.7rem}.hero-image-label strong{font-size:.82rem}
.section{padding:50px 0}.section-title{margin-bottom:1.4rem}.section-title h2,h2{font-size:1.8rem;line-height:1.15}.about-layout{display:flex;flex-direction:column;gap:1.7rem}.about-visual{min-height:0}.about-visual img{height:auto;max-height:360px}.about-values{margin:1.2rem 0}.about-values article{grid-template-columns:32px minmax(0,1fr);gap:.7rem}
.service-card{border-radius:1rem}.service-media{height:auto;aspect-ratio:4/3}.service-content{padding:1.15rem}.service-content p{margin-bottom:1rem}.service-actions{grid-template-columns:1fr 1fr!important;gap:.5rem!important}.service-action{height:44px!important;padding:0 .5rem!important;font-size:.76rem!important}
.why-intro,.testimonial-intro{display:block;margin-bottom:1.5rem!important}.why-intro>p,.testimonial-intro>p{margin-top:.8rem}.why-process{grid-template-columns:1fr}.why-step,.why-step:nth-child(2){min-height:0!important;padding:1.35rem!important;border-right:0;border-bottom:1px solid #e0e8ed}.why-step-top{margin-bottom:1rem!important}.why-cta{align-items:stretch!important}.why-cta a{width:100%;justify-content:center}
.testimonial-featured{padding:1.35rem}.testimonial-featured>p{margin:1.25rem 0;font-size:1rem}.testimonial-compact{padding:1.2rem}
.contact-premium{padding:55px 0}.contact-layout{gap:1.8rem}.contact-meta{margin:1.4rem 0}.contact-meta-item{padding:.85rem}.contact-form-panel{border-radius:1rem;padding:1rem}.contact-form-panel .form-control{min-height:46px}.contact-form-panel textarea.form-control{min-height:110px}
.footer-top{display:grid;grid-template-columns:1fr;gap:1.7rem;padding:42px 0 28px}.footer-brand,.footer-contact{grid-column:auto}.footer-services{display:block}.footer-bottom{padding:1rem 0}.footer-bottom div{display:flex;flex-wrap:wrap}
.modal-dialog{margin:.5rem}.modal-content{max-height:calc(100vh - 1rem);overflow-y:auto}
}
@media(max-width:390px){.hero-trust{grid-template-columns:1fr}.service-actions{grid-template-columns:1fr!important}.premium-hero-content h1{font-size:1.9rem}}

.site-logo-link{
align-items:center;
display:inline-flex;
line-height:1;
padding:0;
}
.site-logo{
display:block;
height:auto;
object-fit:contain;
}
.site-logo-header{
max-height:56px;
width:min(190px,42vw);
}
.footer-logo{
line-height:1;
}
.site-logo-footer{
/* background:#fff; */
border-radius:.5rem;
max-width:230px;
padding:.45rem;
width:100%;
}
.footer-follow{
text-align:right;
}
.footer-follow h3{
margin-bottom:1rem;
}
.footer-socials{
justify-content:flex-end;
gap:12px!important;
margin-top:0!important;
}
.footer-socials a{
width:38px!important;
height:38px!important;
border:0!important;
background:#007a4d!important;
color:#fff!important;
box-shadow:none!important;
}
.footer-socials a:hover{
background:#00945f!important;
color:#fff!important;
transform:translateY(-1px);
}
.footer-socials svg{
width:19px;
height:19px;
display:block;
fill:none;
stroke:currentColor;
stroke-width:2;
stroke-linecap:round;
stroke-linejoin:round;
}
.footer-socials a[aria-label="Facebook"] svg,
.footer-socials a[aria-label="YouTube"] svg{
fill:currentColor;
stroke:none;
}
@media(max-width:650px){
.site-logo-header{
max-height:46px;
width:min(155px,46vw);
}
.site-logo-footer{
max-width:195px;
}
.footer-follow{
text-align:left;
}
.footer-socials{
justify-content:flex-start;
}
}

.navbar .site-logo-link{
max-width:none;
}
.navbar .site-logo-header{
height:88px!important;
max-height:none!important;
width:auto!important;
}
.navbar{
min-height:104px;
}
.premium-hero,
.page-hero{
padding-top:128px;
}
@media(max-width:991px){
.navbar .site-logo-header{
height:72px!important;
}
.navbar{
min-height:88px;
}
.premium-hero,
.page-hero{
padding-top:112px;
}
}
@media(max-width:575px){
.navbar .site-logo-header{
height:64px!important;
}
}

/* Footer social icons */
.footer-follow{
text-align:right!important;
}
.footer-follow .footer-socials{
display:flex!important;
justify-content:flex-end!important;
gap:12px!important;
margin-top:0!important;
}
.footer-follow .footer-socials a{
display:grid!important;
place-items:center!important;
width:38px!important;
height:38px!important;
margin:0!important;
border:0!important;
border-radius:50%!important;
background:#007a4d!important;
color:#fff!important;
box-shadow:none!important;
}
.footer-follow .footer-socials a:hover{
background:#00945f!important;
border-color:#00945f!important;
color:#fff!important;
}
@media(max-width:650px){
.footer-follow{
text-align:left!important;
}
.footer-follow .footer-socials{
justify-content:flex-start!important;
}
}

/* Homepage conditions block */
.conditions-section{
background:#fff!important;
padding:86px 0!important;
}
.conditions-title{
max-width:720px!important;
margin:0 auto 38px!important;
text-align:center;
}
.conditions-title h2{
margin:.35rem 0 .75rem!important;
color:var(--navy)!important;
font-size:clamp(2.15rem,4vw,3.35rem)!important;
font-weight:800!important;
line-height:1.08!important;
}
.conditions-title p{
max-width:520px;
margin:0 auto;
color:#607482;
font-size:1rem;
line-height:1.65;
}
.conditions-grid{
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
gap:18px;
max-width:1120px;
margin:0 auto;
}
.conditions-grid article{
position:relative;
min-height:160px;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:15px;
overflow:hidden;
border:1px solid #e1e8ee;
border-radius:12px;
background:#fff;
box-shadow:0 14px 34px rgba(31,79,148,.07);
text-align:center;
transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.conditions-grid article:after{
content:"";
position:absolute;
left:0;
right:0;
bottom:0;
height:3px;
background:linear-gradient(90deg,#d8242f,#d8652b);
transform:scaleX(0);
transform-origin:left;
transition:transform .22s ease;
}
.conditions-grid article:hover{
border-color:rgba(216,36,47,.28);
box-shadow:0 22px 50px rgba(31,79,148,.13);
transform:translateY(-4px);
}
.conditions-grid article:hover:after{
transform:scaleX(1);
}
.conditions-grid svg{
width:58px;
height:58px;
display:block;
}
.conditions-grid h3{
margin:0;
color:var(--navy)!important;
font-size:.88rem;
font-weight:800;
line-height:1.25;
letter-spacing:0;
/* text-transform:uppercase; */
}
@media(max-width:991px){
.conditions-grid{
grid-template-columns:repeat(2,minmax(0,1fr));
}
}
@media(max-width:560px){
.conditions-section{
padding:58px 0!important;
}
.conditions-title{
margin-bottom:26px!important;
text-align:left;
}
.conditions-title h2{
font-size:1.8rem!important;
}
.conditions-grid{
grid-template-columns:1fr;
gap:14px;
}
.conditions-grid article{
min-height:132px;
}
}

/* Footer item order */
.premium-footer .footer-top{
grid-template-columns:1fr 1.25fr 1fr .9fr;
align-items:start;
}
.footer-call{
display:flex;
flex-direction:column;
align-items:center;
gap:.15rem;
}
.footer-call h3,
.premium-footer .footer-column h3{
margin:0 0 1.2rem;
font-size:1.15rem;
letter-spacing:0;
text-transform:none;
}
.footer-call h3{
margin-bottom:.35rem;
}
.footer-call a,
.footer-hours p,
.footer-reach address{
margin:0;
color:inherit!important;
font-size:1rem;
line-height:1.55;
text-decoration:none;
}
.footer-reach address{
max-width:320px;
font-style:normal;
}
.footer-hours{
display:block;
}
.footer-follow .footer-socials{
margin-top:0;
}
@media(max-width:991px){
.premium-footer .footer-top{
grid-template-columns:repeat(2,minmax(0,1fr));
gap:2.5rem;
}
.footer-brand,
.footer-contact{
grid-column:auto;
}
}
@media(max-width:575px){
.premium-footer .footer-top{
grid-template-columns:1fr;
}
.footer-call{
align-items:flex-start;
}
}

/* Final full-image hero override */
.premium-hero{
padding-top:128px!important;
padding-bottom:0!important;
background:#fff!important;
}
.premium-hero .container,
.premium-hero-layout,
.premium-hero-visual{
max-width:none!important;
width:100%!important;
padding:0!important;
margin:0!important;
display:block!important;
}
.hero-image-frame{
align-items:center!important;
background:#fff!important;
border:0!important;
border-radius:0!important;
box-shadow:none!important;
display:flex!important;
height:calc(100vh - 128px)!important;
justify-content:center!important;
margin:0!important;
max-width:none!important;
overflow:hidden!important;
width:100%!important;
}
.hero-image-frame img{
display:block!important;
height:100%!important;
max-height:100%!important;
object-fit:contain!important;
object-position:center!important;
width:100%!important;
}
@media(max-width:991px){
.premium-hero{
padding-top:112px!important;
}
.hero-image-frame{
height:calc(100vh - 112px)!important;
}
}
@media(max-width:575px){
.hero-image-frame{
height:auto!important;
}
.hero-image-frame img{
height:auto!important;
width:100%!important;
}
}

.nav-services{
position:relative;
}
.services-menu{
background:#fff;
border:1px solid rgba(31,79,148,.12);
border-radius:.7rem;
box-shadow:0 18px 45px rgba(7,29,51,.18);
display:grid;
gap:.15rem;
left:50%;
min-width:270px;
opacity:0;
padding:.55rem;
pointer-events:none;
position:absolute;
top:calc(100% + .65rem);
transform:translateX(-50%) translateY(8px);
transition:opacity .18s ease,transform .18s ease;
z-index:1100;
}
.services-menu:before{
content:"";
height:.8rem;
left:0;
position:absolute;
right:0;
top:-.8rem;
}
.nav-services:hover .services-menu,
.nav-services:focus-within .services-menu{
opacity:1;
pointer-events:auto;
transform:translateX(-50%) translateY(0);
}
.services-menu a{
border-radius:.45rem;
color:#1f3447!important;
display:block;
font-size:.86rem;
font-weight:750;
line-height:1.35;
margin:0!important;
padding:.65rem .75rem;
text-decoration:none;
white-space:normal;
}
.services-menu a:hover,
.services-menu a:focus-visible{
background:#eef4fb;
color:#1f4f94!important;
outline:0;
}
@media(max-width:991px){
.services-menu{
background:rgba(255,255,255,.06);
border:1px solid rgba(255,255,255,.1);
box-shadow:none;
display:grid;
left:auto;
margin:.25rem 0 .6rem;
min-width:0;
opacity:1;
padding:.35rem;
pointer-events:auto;
position:static;
transform:none;
transition:none;
}
.services-menu:before{
display:none;
}
.services-menu a{
color:#dce8f2!important;
padding:.55rem .7rem;
}
.services-menu a:hover,
.services-menu a:focus-visible{
background:rgba(255,255,255,.1);
color:#fff!important;
}
}

.programme-section{
  position:relative;
  background:linear-gradient(180deg,#ffffff 0%,#f7f9fc 100%);
}
.programme-section .section-title{
  margin-bottom:2rem;
}
.programme-section .section-title h2{
  margin:.35rem 0 .7rem;
  color:var(--navy);
}
.programme-section .section-title p{
  color:#607482;
  max-width:640px;
}
.programme-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.25rem;
}
.programme-card{
  position:relative;
  display:grid;
  grid-template-columns:390px minmax(0,1fr);
  gap:1rem;
  align-items:start;
  padding:1rem;
  border:1px solid rgba(31,79,148,.12);
  border-radius:14px;
  background:#fff;
  box-shadow:0 12px 30px rgba(31,79,148,.08);
  overflow:hidden;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.programme-card:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:3px;
  background:linear-gradient(90deg,#1f4f94,#d8242f);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .22s ease;
}
.programme-card:hover{
  transform:translateY(-4px);
  border-color:rgba(216,36,47,.26);
  box-shadow:0 20px 46px rgba(31,79,148,.14);
}
.programme-card:hover:before{
  transform:scaleX(1);
}
.programme-card img{
  width:100%;
  height:100%;
  min-height:130px;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:10px;
  background:#eef4fb;
}
.programme-card h3{
  margin:.1rem 0 .5rem;
  color:var(--navy);
  font-size:1.18rem;
  line-height:1.28;
}
.programme-card p{
  margin:0 0 .8rem;
  color:#607482;
  font-size:.93rem;
  line-height:1.65;
}
.programme-card .service-more{
  font-size:.9rem;
  font-weight:800;
}
.programme-detail-layout{
  align-items:start;
  display:grid;
  gap:3rem;
  grid-template-columns:minmax(0,1fr) 360px;
}
.programme-detail-layout-full{
  grid-template-columns:1fr;
}
.programme-detail-image{
  background:#eef4fb;
  border-radius:.9rem;
  max-height:520px;
  object-fit:cover;
  width:100%;
}
.programme-image-circle{
  aspect-ratio:1;
  border-radius:50%;
  object-fit:cover;
}
.programme-image-rectangle{
  aspect-ratio:4/5;
  object-fit:cover;
}
.programme-image-contain{
  aspect-ratio:4/5;
  object-fit:contain;
}
.programme-detail .content h2{
  font-size:1.7rem;
  margin:2.3rem 0 1rem;
}
.programme-detail .content ul{
  columns:2;
  padding-left:1.2rem;
}
@media(max-width:1024px){
  .programme-grid{
    gap:1rem;
  }
  .programme-card{
    grid-template-columns:130px minmax(0,1fr);
  }
}
@media(max-width:900px){
  .programme-grid,
  .programme-detail-layout{
    grid-template-columns:1fr;
  }
  .programme-card{
    grid-template-columns:120px minmax(0,1fr);
  }
  .programme-detail .content ul{
    columns:1;
  }
}
@media(max-width:560px){
  .programme-section .section-title{
    margin-bottom:1.3rem;
  }
  .programme-card{
    grid-template-columns:1fr;
    gap:.85rem;
    padding:.9rem;
  }
  .programme-card img{
    aspect-ratio:16/10;
    min-height:0;
  }
  .programme-card h3{
    font-size:1.05rem;
    margin:0 0 .45rem;
  }
  .programme-card p{
    font-size:.88rem;
    margin:0 0 .65rem;
  }
}

.nav-link-arrow{
align-items:center;
display:flex!important;
gap:.35rem;
}
.nav-link-arrow:before{
content:none!important;
}
.nav-link-arrow:after{
border:solid currentColor!important;
border-width:0 2px 2px 0!important;
content:""!important;
display:inline-block!important;
height:.42rem!important;
margin-left:.2rem!important;
position:static!important;
transform:rotate(45deg) translateY(-1px)!important;
width:.42rem!important;
background:transparent!important;
opacity:1!important;
}
.nav-dropdown{
position:relative;
}
.nav-dropdown-menu{
background:#fff;
border:1px solid rgba(31,79,148,.12);
border-radius:.7rem;
box-shadow:0 18px 45px rgba(7,29,51,.18);
display:grid;
gap:.15rem;
left:50%;
min-width:270px;
opacity:0;
padding:.55rem;
pointer-events:none;
position:absolute;
top:calc(100% + .65rem);
transform:translateX(-50%) translateY(8px);
transition:opacity .18s ease,transform .18s ease;
z-index:1100;
}
.nav-dropdown-menu:before{
content:"";
height:.8rem;
left:0;
position:absolute;
right:0;
top:-.8rem;
}
.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu{
opacity:1;
pointer-events:auto;
transform:translateX(-50%) translateY(0);
}
.nav-dropdown-menu a{
border-radius:.45rem;
color:#1f3447!important;
display:block;
font-size:.86rem;
font-weight:750;
line-height:1.35;
margin:0!important;
padding:.65rem .75rem;
text-decoration:none;
white-space:normal;
}
.nav-dropdown-menu a:hover,
.nav-dropdown-menu a:focus-visible{
background:#eef4fb;
color:#1f4f94!important;
outline:0;
}
@media(max-width:991px){
.nav-dropdown-menu{
background:rgba(255,255,255,.06);
border:1px solid rgba(255,255,255,.1);
box-shadow:none;
display:grid;
left:auto;
margin:.25rem 0 .6rem;
min-width:0;
opacity:1;
padding:.35rem;
pointer-events:auto;
position:static;
transform:none;
transition:none;
}
.nav-dropdown-menu:before{
display:none;
}
.nav-dropdown-menu a{
color:#dce8f2!important;
padding:.55rem .7rem;
}
.nav-dropdown-menu a:hover,
.nav-dropdown-menu a:focus-visible{
background:rgba(255,255,255,.1);
color:#fff!important;
}
}

.form-message{display:none;width:100%;margin:0;padding:.85rem 1rem;border-radius:.7rem;font-size:.88rem;line-height:1.5}.form-message.is-loading,.form-message.is-success,.form-message.is-error{display:block}.form-message.is-loading{background:#eef5ff;color:#174ea6}.form-message.is-success{border:1px solid #a7e2bc;background:#edf9f1;color:#126b33}.form-message.is-success strong,.form-message.is-success span{display:block}.form-message.is-success strong{font-size:1rem}.form-message.is-error{border:1px solid #f0b4b4;background:#fff1f1;color:#a32626}

@media(max-width:767px){
.about-premium{overflow:hidden}
.about-layout,.about-visual,.about-content{min-width:0;width:100%}
.about-visual{display:block;overflow:hidden;padding:.65rem;border-radius:1rem}
.about-visual img{display:block;height:auto!important;max-height:none;width:100%;object-fit:contain;border-radius:.75rem}
.about-badge{position:static!important;display:block;width:100%;margin:.65rem 0 0;padding:.8rem 1rem;border-radius:.7rem;box-shadow:none}
.about-badge strong,.about-badge span{display:block}
.about-content h2{font-size:1.75rem;overflow-wrap:anywhere}
}

/* Full banner hero */
.premium-hero{
min-height:0!important;
padding:67px 0 0!important;
overflow:visible!important;
background:#fff!important;
}
.premium-hero:before{
z-index:2!important;
background:linear-gradient(90deg,rgba(3,14,25,.22),rgba(3,14,25,.04) 48%,rgba(3,14,25,.14))!important;
pointer-events:none;
}
.premium-hero .container{
display:block!important;
width:100%!important;
max-width:none!important;
padding:0!important;
}
.premium-hero-layout,
.premium-hero-visual,
.hero-image-frame{
display:block!important;
width:100%!important;
max-width:none!important;
height:auto!important;
min-height:0!important;
margin:0!important;
border:0!important;
border-radius:0!important;
overflow:visible!important;
/* background:#fff!important; */
box-shadow:none!important;
}
.premium-hero-content,
.hero-image-label,
.hero-floating-card{
display:none!important;
}
.hero-image-frame img{
display:block!important;
width:100vw!important;
height:auto!important;
min-height:0!important;
max-height:none!important;
margin:0!important;
object-fit:contain!important;
object-position:center!important;
}
@media(min-width:1600px){
.hero-image-frame{
display:flex!important;
align-items:center!important;
justify-content:center!important;
}
.hero-image-frame img{
width:100%!important;
height:auto!important;
max-height:none!important;
}
}
@media(max-width:767px){
.premium-hero,
.premium-hero-layout,
.premium-hero-visual,
.hero-image-frame,
.hero-image-frame img{
min-height:0!important;
}
.premium-hero:before{
background:linear-gradient(180deg,rgba(3,14,25,.12),rgba(3,14,25,.24))!important;
}
}

/* Header palette from banner */
.navbar{
background:#1f4f94!important;
border-bottom:3px solid #d8242f!important;
box-shadow:0 8px 22px rgba(31,79,148,.18)!important;
}
.navbar-brand strong{
color:#fff!important;
text-shadow:0 1px 0 rgba(0,0,0,.14);
}
.navbar-brand span{
color:#e8eef6!important;
}
.navbar .nav-link{
position:relative;
color:#fff!important;
}
.navbar .nav-link:after{
content:"";
position:absolute;
left:.75rem;
right:.75rem;
bottom:.35rem;
height:2px;
background:#d8242f;
transform:scaleX(0);
transform-origin:left;
transition:transform .2s ease;
}
.navbar .nav-link:hover:after,
.navbar .nav-link:focus-visible:after{
transform:scaleX(1);
}
.nav-enquiry{
border:1px solid #b51f2a!important;
background:linear-gradient(135deg,#df2633,#d8652b)!important;
color:#fff!important;
box-shadow:0 10px 22px rgba(216,36,47,.22)!important;
}
.nav-enquiry:hover{
border-color:#1f4f94!important;
background:linear-gradient(135deg,#1f4f94,#2f6db5)!important;
color:#fff!important;
box-shadow:0 12px 26px rgba(31,79,148,.24)!important;
}

/* Platform palette */
:root{
--navy:#1f4f94;
--blue:#1f4f94;
--cyan:#d8242f;
--soft:#f5f7fb;
--text:#263746;
--service-button-navy:#1f4f94;
--service-button-green:#d8652b;
}
.eyebrow,
.service-more,
.feature-icon,
.service-icon,
.breadcrumb a,
.footer-location,
.contact-form-heading>span,
.why-step-number,
.gallery-project-info span{
color:#d8242f!important;
}
.btn-brand,
.hero-primary,
.contact-submit,
.why-cta a,
.gallery-filter:hover,
.gallery-filter.active,
.contact-map-link span:last-child,
.testimonial-trust>span,
.footer-socials a:hover{
background:linear-gradient(135deg,#d8242f,#d8652b)!important;
border-color:#d8242f!important;
color:#fff!important;
}
.btn-brand:hover,
.hero-primary:hover,
.contact-submit:hover,
.why-cta a:hover{
background:linear-gradient(135deg,#1f4f94,#2f6db5)!important;
color:#fff!important;
}
.service-action-primary{
background:#1f4f94!important;
border-color:#1f4f94!important;
}
.service-action-primary:hover{
background:#2f6db5!important;
border-color:#2f6db5!important;
}
.service-action-whatsapp{
border-color:#d8652b!important;
color:#d8242f!important;
}
.service-action-whatsapp:hover{
background:#fff3ec!important;
border-color:#d8242f!important;
color:#b51f2a!important;
}
.service-number,
.about-badge,
.testimonial-avatar,
.testimonial-trust,
.page-hero,
.contact-premium,
.premium-footer{
background:#1f4f94!important;
}
.contact-premium:before,
.gallery-section:before{
background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px)!important;
background-size:48px 48px!important;
}
.premium-footer:before,
.why-step-line{
background:linear-gradient(90deg,#d8242f,#d8652b)!important;
}
.contact-meta-icon{
background:rgba(216,36,47,.14)!important;
color:#ffb199!important;
}
.contact-meta-item:hover{
border-color:rgba(216,36,47,.42)!important;
}
.form-control:focus,
.contact-form-panel .form-control:focus{
border-color:#d8652b!important;
box-shadow:0 0 0 4px rgba(216,36,47,.1)!important;
}
@media(max-width:991px){
.navbar-collapse{
background:#1f4f94!important;
border-color:rgba(216,36,47,.35)!important;
}
}

/* Gallery page */
.gallery-page-hero{
padding-top:150px!important;
background:linear-gradient(135deg,#1f4f94,#183f78)!important;
position: relative;
}
.gallery-page-hero p{
max-width:640px;
color:#e8eef6;
font-size:1.05rem;
}
.gallery-page{
background:#fff;
}
.gallery-page-filters{
display:flex;
flex-wrap:wrap;
gap:.65rem;
margin-bottom:2rem;
}
.gallery-page-filters span{
display:inline-flex;
align-items:center;
min-height:38px;
border:1px solid #dce4ee;
border-radius:999px;
padding:0 .9rem;
background:#fff;
color:#1f4f94;
font-size:.82rem;
font-weight:800;
}
.gallery-page-filters span:first-child{
border-color:#d8242f;
background:linear-gradient(135deg,#d8242f,#d8652b);
color:#fff;
}
.gallery-page-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:1.25rem;
}
.gallery-page-card{
overflow:hidden;
border:1px solid #e2e8f0;
border-radius:1rem;
background:#fff;
box-shadow:0 14px 35px rgba(31,79,148,.08);
}
.gallery-page-card a{
position:relative;
display:block;
background:#f5f7fb;
}
.gallery-page-card a:after{
content:"View";
position:absolute;
right:.75rem;
bottom:.75rem;
display:grid;
place-items:center;
min-width:48px;
height:32px;
border-radius:999px;
background:rgba(31,79,148,.88);
color:#fff;
font-size:.72rem;
font-weight:800;
opacity:0;
transform:translateY(8px);
transition:opacity .2s ease,transform .2s ease;
}
.gallery-page-card:hover a:after{
opacity:1;
transform:translateY(0);
}
.gallery-page-card img{
display:block;
width:100%;
aspect-ratio:4/3;
object-fit:contain;
transition:transform .25s ease;
}
.gallery-page-card:hover img{
transform:scale(1.02);
}
.gallery-page-card div{
padding:1rem 1.1rem 1.15rem;
}
.gallery-page-card span{
display:block;
margin-bottom:.35rem;
color:#d8242f;
font-size:.72rem;
font-weight:800;
letter-spacing:.1em;
text-transform:uppercase;
}
.gallery-page-card h2{
margin:0;
font-size:1.05rem;
line-height:1.3;
}
.gallery-page-card p{
margin:.45rem 0 0;
color:#607482;
font-size:.9rem;
line-height:1.55;
}
.gallery-empty{
padding:3rem;
border:1px dashed #dce4ee;
border-radius:1rem;
background:#f8fafc;
text-align:center;
}
.gallery-lightbox{
position:fixed;
z-index:2000;
inset:0;
display:grid;
place-items:center;
padding:1.25rem;
background:rgba(5,17,32,.84);
opacity:0;
visibility:hidden;
transition:opacity .22s ease,visibility .22s ease;
}
body.gallery-lightbox-open{
overflow:hidden;
}
.gallery-lightbox.is-open{
opacity:1;
visibility:visible;
}
.gallery-lightbox-dialog{
width:min(1120px,100%);
max-height:calc(100vh - 2.5rem);
display:grid;
grid-template-rows:minmax(0,1fr) auto;
overflow:hidden;
border:1px solid rgba(255,255,255,.16);
border-radius:1rem;
background:#fff;
box-shadow:0 30px 90px rgba(0,0,0,.36);
transform:scale(.94) translateY(18px);
transition:transform .24s ease;
}
.gallery-lightbox.is-open .gallery-lightbox-dialog{
transform:scale(1) translateY(0);
}
.gallery-lightbox-dialog img{
display:block;
width:100%;
height:100%;
max-height:calc(100vh - 12rem);
object-fit:contain;
background:#f5f7fb;
}
.gallery-lightbox-info{
padding:1rem 1.2rem;
}
.gallery-lightbox-info span{
display:block;
margin-bottom:.25rem;
color:#d8242f;
font-size:.72rem;
font-weight:800;
letter-spacing:.1em;
text-transform:uppercase;
}
.gallery-lightbox-info h2{
margin:0;
font-size:1.2rem;
line-height:1.3;
}
.gallery-lightbox-info p{
margin:.35rem 0 0;
color:#607482;
}
.gallery-lightbox-close{
position:absolute;
top:1rem;
right:1rem;
z-index:1;
display:grid;
place-items:center;
width:44px;
height:44px;
border:0;
border-radius:50%;
background:#fff;
color:#1f4f94;
font-size:1.8rem;
line-height:1;
box-shadow:0 12px 28px rgba(0,0,0,.24);
}
.gallery-lightbox-close:hover{
background:#d8242f;
color:#fff;
}
@media(max-width:991px){
.gallery-page-grid{
grid-template-columns:repeat(2,minmax(0,1fr));
}
}
@media(max-width:600px){
.gallery-page-hero{
padding-top:125px!important;
}
.gallery-page-grid{
grid-template-columns:1fr;
gap:1rem;
}
.gallery-page-filters{
flex-wrap:nowrap;
overflow-x:auto;
padding-bottom:.35rem;
}
.gallery-page-filters span{
white-space:nowrap;
}
.gallery-lightbox{
padding:.75rem;
}
.gallery-lightbox-close{
top:.65rem;
right:.65rem;
}
.gallery-lightbox-dialog{
max-height:calc(100vh - 1.5rem);
}
}

/* Refined gallery presentation */
.gallery-page-hero{
min-height:auto!important;
padding:132px 0 54px!important;
background:linear-gradient(135deg,#1f4f94 0%,#244f8a 58%,#183f78 100%)!important;
}
.gallery-page-hero:before{
content:""!important;
position:absolute;
inset:auto 0 0;
height:4px;
background:linear-gradient(90deg,#d8242f,#d8652b)!important;
}
.gallery-hero-layout{
display:flex;
align-items:flex-end;
justify-content:space-between;
gap:2rem;
}
.gallery-page-hero .breadcrumb{
margin-bottom:1.2rem;
}
.gallery-page-hero .breadcrumb-item,
.gallery-page-hero .breadcrumb-item.active{
color:#e8eef6!important;
font-size:.9rem;
}
.gallery-page-hero .breadcrumb a{
color:#ffd5c3!important;
text-decoration:none;
}
.gallery-page-hero .breadcrumb a:hover{
color:#fff!important;
}
.gallery-page-hero h1{
margin:0;
font-size:clamp(3rem,6vw,5.4rem);
line-height:.95;
letter-spacing:0;
}
.gallery-page-hero p{
max-width:620px;
margin:1.15rem 0 0;
color:#edf3fb;
font-size:1.05rem;
line-height:1.65;
}
.gallery-hero-count{
min-width:190px;
padding:1.1rem 1.25rem;
border:1px solid rgba(255,255,255,.18);
border-radius:1rem;
background:rgba(255,255,255,.08);
box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
.gallery-hero-count strong,
.gallery-hero-count span{
display:block;
}
.gallery-hero-count strong{
font-size:2.2rem;
line-height:1;
}
.gallery-hero-count span{
margin-top:.35rem;
color:#dce8f7;
font-size:.78rem;
font-weight:800;
letter-spacing:.08em;
text-transform:uppercase;
}
.gallery-page{
padding:64px 0 90px!important;
background:linear-gradient(180deg,#fff,#f7f9fc)!important;
}
.gallery-page-heading{
display:flex;
align-items:end;
justify-content:space-between;
gap:2rem;
margin-bottom:1.7rem;
}
.gallery-page-heading h2{
margin:.35rem 0 0;
font-size:clamp(2rem,3.6vw,3.25rem);
line-height:1.05;
}
.gallery-page-heading p{
max-width:360px;
margin:0;
color:#607482;
}
.gallery-page-filters{
margin-bottom:1.8rem!important;
padding-bottom:1.4rem;
border-bottom:1px solid #e4ebf2;
}
.gallery-page-grid{
grid-template-columns:repeat(4,minmax(0,1fr))!important;
gap:1rem!important;
}
.gallery-page-card{
border-radius:.8rem!important;
box-shadow:0 12px 30px rgba(31,79,148,.07)!important;
transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.gallery-page-card:hover{
border-color:rgba(216,36,47,.28);
box-shadow:0 20px 45px rgba(31,79,148,.13)!important;
transform:translateY(-4px);
}
.gallery-page-card a{
background:#fff!important;
}
.gallery-page-card img{
aspect-ratio:1/1!important;
padding:.75rem;
object-fit:contain!important;
}
.gallery-page-card div{
border-top:1px solid #eef2f6;
padding:.9rem 1rem 1rem!important;
}
.gallery-page-card h2{
font-size:.98rem!important;
}
.gallery-page-card p{
display:-webkit-box;
overflow:hidden;
-webkit-line-clamp:2;
-webkit-box-orient:vertical;
font-size:.84rem!important;
}
@media(max-width:1200px){
.gallery-page-grid{
grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
}
@media(max-width:850px){
.gallery-hero-layout,
.gallery-page-heading{
display:block;
}
.gallery-hero-count{
margin-top:1.5rem;
}
.gallery-page-grid{
grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
}
@media(max-width:560px){
.gallery-page-hero{
padding:112px 0 40px!important;
}
.gallery-page{
padding:44px 0 64px!important;
}
.gallery-page-grid{
grid-template-columns:1fr!important;
}
.gallery-page-card img{
aspect-ratio:4/3!important;
}
}

/* Our Packages */
.package-section{
background:#fff;
}
.package-title{
max-width:760px;
margin:0 auto 3rem;
text-align:center;
}
.package-title h2{
margin:.35rem 0 .65rem;
font-size:clamp(2.4rem,4.5vw,4.25rem);
line-height:1.05;
}
.package-title p{
margin:0 auto;
max-width:560px;
color:#607482;
}
.package-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
align-items:start;
gap:1.2rem;
}
.package-card{
overflow:hidden;
border:1px solid #e3e9f0;
border-radius:.9rem;
background:#fff;
box-shadow:0 16px 38px rgba(31,79,148,.08);
transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.package-card:hover{
border-color:rgba(216,36,47,.28);
box-shadow:0 24px 55px rgba(31,79,148,.14);
transform:translateY(-5px);
}
.package-featured{
position:relative;
z-index:1;
transform:translateY(-22px);
box-shadow:0 26px 70px rgba(31,79,148,.18);
}
.package-featured:hover{
transform:translateY(-28px);
}
.package-card-head{
min-height:104px;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
padding:1.2rem;
background:#a7c7e7;
text-align:center;
}
.package-card-head h3{
margin:0;
color:#061324;
font-size:1.5rem;
font-weight:900;
letter-spacing:.06em;
text-transform:uppercase;
}
.package-card-head p{
margin:.35rem 0 0;
color:#24415f;
font-size:.85rem;
line-height:1.45;
}
.package-card-body{
padding:2.1rem 1.4rem 1.7rem;
text-align:center;
}
.package-discount{
display:block;
color:#061324;
font-size:2.35rem;
font-weight:800;
line-height:1;
}
.package-note{
display:block;
margin:.55rem 0 1.45rem;
color:#263746;
font-size:.95rem;
}
.package-card ul{
display:grid;
gap:0;
margin:0 0 1.8rem;
padding:0;
text-align:left;
}
.package-card li{
position:relative;
list-style:none;
padding:.75rem 0 .75rem 2rem;
border-bottom:1px solid #e3e8ee;
color:#263746;
font-size:.94rem;
line-height:1.45;
}
.package-card li:before{
content:"✓";
position:absolute;
left:.25rem;
top:.75rem;
color:#061324;
font-weight:900;
}
.package-cta{
display:inline-flex;
align-items:center;
justify-content:center;
min-height:46px;
padding:0 1.35rem;
border-radius:.35rem;
background:linear-gradient(135deg,#d8242f,#d8652b);
color:#fff!important;
font-weight:800;
text-decoration:none;
}
.package-cta:hover{
background:linear-gradient(135deg,#1f4f94,#2f6db5);
}
@media(max-width:991px){
.package-grid{
grid-template-columns:1fr;
max-width:640px;
margin:0 auto;
}
.package-featured,
.package-featured:hover{
transform:none;
}
}
@media(max-width:600px){
.package-title{
margin-bottom:1.8rem;
text-align:left;
}
.package-card-body{
padding:1.5rem 1rem;
}
.package-discount{
font-size:2rem;
}
}

/* FAQ */
.faq-section{
background:#f7f9fc;
}
.faq-layout{
display:grid;
grid-template-columns:.8fr 1.2fr;
gap:4rem;
align-items:start;
}
.faq-intro{
position:sticky;
top:120px;
}
.faq-intro h2{
margin:.35rem 0 1rem;
font-size:clamp(2.2rem,4vw,3.6rem);
line-height:1.05;
}
.faq-intro p{
max-width:430px;
margin:0;
color:#607482;
font-size:1rem;
line-height:1.7;
}
.faq-list{
display:grid;
gap:.85rem;
}
.faq-item{
border:1px solid #e0e8ef;
border-radius:.9rem;
background:#fff;
box-shadow:0 12px 30px rgba(31,79,148,.06);
overflow:hidden;
}
.faq-item summary{
display:flex;
align-items:center;
gap:1rem;
min-height:72px;
padding:1rem 1.15rem;
color:#1f4f94;
font-size:1rem;
font-weight:850;
cursor:pointer;
list-style:none;
}
.faq-item summary::-webkit-details-marker{
display:none;
}
.faq-item summary:after{
content:"+";
margin-left:auto;
display:grid;
place-items:center;
width:34px;
height:34px;
border-radius:50%;
background:#f8e9e6;
color:#d8242f;
font-size:1.35rem;
line-height:1;
}
.faq-item[open] summary:after{
content:"-";
background:#d8242f;
color:#fff;
}
.faq-item summary span{
display:grid;
place-items:center;
flex:0 0 40px;
width:40px;
height:40px;
border-radius:50%;
background:#1f4f94;
color:#fff;
font-size:.78rem;
font-weight:900;
}
.faq-item p{
margin:0;
padding:0 1.25rem 1.25rem 4.9rem;
color:#607482;
line-height:1.7;
}
@media(max-width:900px){
.faq-layout{
grid-template-columns:1fr;
gap:1.8rem;
}
.faq-intro{
position:static;
}
}
@media(max-width:560px){
.faq-item summary{
align-items:flex-start;
gap:.75rem;
padding:.9rem;
}
.faq-item summary span{
flex-basis:34px;
width:34px;
height:34px;
}
.faq-item p{
padding:0 .95rem 1rem .95rem;
}
}

/* Final logo sizing override */
.navbar .site-logo-link{
max-width:none!important;
}
.navbar .site-logo-header{
height:88px!important;
max-height:none!important;
width:auto!important;
}
.navbar{
min-height:104px!important;
}
.premium-hero,
.page-hero{
padding-top:110px!important;
}
@media(max-width:991px){
.navbar .site-logo-header{
height:72px!important;
}
.navbar{
min-height:88px!important;
}
.premium-hero,
.page-hero{
padding-top:112px!important;
}
}
@media(max-width:575px){
.navbar .site-logo-header{
height:64px!important;
}
}

.premium-hero:before {
    background: rgba(3,14,25,.4)!important;
}

/* Hero inquiry form overlay */
.hero-inquiry-panel{
position:absolute!important;
z-index:4;
top:50%;
right:clamp(18px,4vw,76px);
width:min(390px,calc(100% - 36px));
padding:1.25rem;
border:1px solid rgba(255,255,255,.42);
border-radius:.9rem;
background:rgba(255,255,255,.5);
box-shadow:0 22px 60px rgba(3,14,25,.26);
transform:translateY(-44%);
}
.hero-inquiry-heading{
margin-bottom:.9rem;
}
.hero-inquiry-heading span{
display:block;
margin-bottom:.25rem;
color:#d8242f;
font-size:.68rem;
font-weight:900;
letter-spacing:.1em;
line-height:1.2;
text-transform:uppercase;
}
.hero-inquiry-heading h2{
margin:0;
color:#1f4f94;
font-size:1.45rem;
line-height:1.12;
letter-spacing:0;
}
.hero-inquiry-heading p{
margin:.35rem 0 0;
color:#526579;
font-size:.84rem;
line-height:1.45;
}
.hero-inquiry-fields{
display:grid;
gap:.65rem;
}
.hero-inquiry-panel .form-label{
margin-bottom:.22rem;
color:#24394c;
font-size:.72rem;
font-weight:800;
line-height:1.2;
}
.hero-inquiry-panel .form-control{
min-height:40px;
padding:.55rem .7rem;
border:1px solid #d9e2eb;
border-radius:.5rem;
background:#f8fafc;
color:#172f42;
font-size:.86rem;
line-height:1.35;
box-shadow:none;
}
.hero-inquiry-panel textarea.form-control{
min-height:82px;
resize:vertical;
}
.hero-inquiry-submit{
width:100%;
min-height:43px;
margin-top:.8rem;
border:0;
border-radius:.55rem;
background:linear-gradient(135deg,#d8242f,#d8652b);
color:#fff;
font-weight:900;
line-height:1;
}
.hero-inquiry-submit:hover{
background:linear-gradient(135deg,#1f4f94,#2f6db5);
}
.hero-inquiry-panel .form-message{
margin-top:.65rem;
padding:.65rem .75rem;
font-size:.78rem;
}
@media(max-width:1100px){
.hero-inquiry-panel{
position:relative!important;
top:auto;
right:auto;
width:calc(100% - 2rem);
max-width:560px;
margin:1rem auto 0;
transform:none;
}
}
@media(max-width:575px){
.hero-inquiry-panel{
width:calc(100% - 1.5rem);
padding:1rem;
border-radius:.75rem;
}
.hero-inquiry-heading h2{
font-size:1.25rem;
}
}

/* Therapy image preview before about */
.therapy-preview-section{
position:relative;
overflow:hidden;
padding:86px 0 96px;
background:linear-gradient(180deg,#fff,#f8fbff);
}
.therapy-preview-section:before{
content:"";
position:absolute;
inset:0;
background-image:radial-gradient(circle at 14% 18%,rgba(216,36,47,.12) 0 2px,transparent 3px),radial-gradient(circle at 88% 14%,rgba(31,79,148,.12) 0 2px,transparent 3px),radial-gradient(circle at 26% 72%,rgba(216,101,43,.12) 0 2px,transparent 3px),radial-gradient(circle at 78% 80%,rgba(31,79,148,.1) 0 2px,transparent 3px);
pointer-events:none;
}
.therapy-preview-section .container{
position:relative;
}
.therapy-preview-layout{
display:grid;
grid-template-columns:.9fr 1.1fr;
gap:4rem;
align-items:center;
}
.therapy-preview-copy{
max-width:560px;
}
.therapy-preview-copy h2{
margin:.35rem 0 1rem;
color:#101a2b;
font-size:clamp(2.5rem,5vw,4.2rem);
line-height:1.02;
letter-spacing:0;
}
.therapy-preview-copy h2 span{
color:#1b9fe2;
}
.therapy-preview-copy h2 strong{
color:#d824a8;
font-weight:900;
}
.therapy-preview-copy p{
max-width:470px;
margin:0;
color:#46586b;
font-size:1.05rem;
line-height:1.7;
}
.therapy-preview-copy p strong{
color:#d8242f;
}
.therapy-collage{
position:relative;
min-height:470px;
}
.therapy-collage-item{
position:absolute;
display:block;
overflow:hidden;
border:1px solid rgba(31,79,148,.16);
border-radius:.7rem;
background:#fff;
box-shadow:0 18px 45px rgba(31,79,148,.14);
transition:transform .24s ease,box-shadow .24s ease,z-index .24s ease;
}
.therapy-collage-item img{
display:block;
/* width:100%;
height:100%;
object-fit:cover; */
transition:transform .35s ease;
}
.therapy-collage-item:hover,
.therapy-collage-item:focus-visible{
z-index:8;
box-shadow:0 26px 65px rgba(31,79,148,.22);
transform:translateY(-5px) scale(1.015);
}
.therapy-collage-item:hover img,
.therapy-collage-item:focus-visible img{
transform:scale(1.08);
}
.therapy-collage-item-1{
top:0;
left:24%;
width:47%;
height:210px;
z-index:2;
}
.therapy-collage-item-2{
top:95px;
left:6%;
width:30%;
height:160px;
z-index:3;
}
.therapy-collage-item-3{
top:72px;
right:1%;
width:37%;
height:185px;
z-index:4;
}
.therapy-collage-item-4{
left:28%;
bottom:0;
width:43%;
height:260px;
z-index:5;
}
.therapy-collage-item-5{
right:0;
bottom:86px;
width:31%;
height:210px;
z-index:3;
}
@media(max-width:991px){
.therapy-preview-section{
padding:66px 0 76px;
}
.therapy-preview-layout{
grid-template-columns:1fr;
gap:2.5rem;
}
.therapy-preview-copy{
max-width:720px;
}
.therapy-collage{
min-height:430px;
}
}
@media(max-width:650px){
.therapy-preview-section{
padding:52px 0 58px;
}
.therapy-preview-copy h2{
font-size:2.25rem;
}
.therapy-collage{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:.75rem;
min-height:0;
}
.therapy-collage-item{
position:relative;
inset:auto;
width:auto;
height:auto;
aspect-ratio:4/3;
}
.therapy-collage-item-1{
grid-column:span 2;
}
}

/* Upgraded testimonial slider */
.testimonial-section{
position:relative;
overflow:hidden;
background:linear-gradient(180deg,#f8fbff 0%,#fff 100%)!important;
}
.testimonial-section:before{
content:"";
position:absolute;
inset:0;
background:radial-gradient(circle at 10% 12%,rgba(216,36,47,.08),transparent 28%),radial-gradient(circle at 92% 18%,rgba(31,79,148,.1),transparent 30%);
pointer-events:none;
}
.testimonial-section .container{
position:relative;
}
.testimonial-intro{
display:flex!important;
align-items:flex-end;
justify-content:space-between;
gap:2rem;
margin-bottom:2rem!important;
}
.testimonial-intro h2{
max-width:620px;
margin:.4rem 0 0!important;
color:#173f7d;
font-size:clamp(2.35rem,4.5vw,4.6rem);
line-height:1.02;
letter-spacing:0;
}
.testimonial-intro>p{
max-width:430px!important;
margin:0!important;
color:#52677a!important;
font-size:1rem!important;
line-height:1.7;
}
.testimonial-slider{
display:grid;
gap:1rem;
}
.testimonial-slider-top{
display:flex;
align-items:flex-end;
justify-content:space-between;
gap:1rem;
margin-top:.25rem;
}
.testimonial-slider .testimonial-trust{
max-width:520px;
padding:.9rem 1rem;
border-radius:.75rem;
background:#fff!important;
color:#173f7d;
box-shadow:0 12px 32px rgba(31,79,148,.08);
border:1px solid #dde8f2;
}
.testimonial-slider .testimonial-trust>span{
background:linear-gradient(135deg,#d8242f,#d8652b)!important;
color:#fff!important;
}
.testimonial-slider .testimonial-trust p{
color:#607482;
}
.testimonial-controls{
display:flex;
gap:.6rem;
margin-left:auto;
padding-bottom:.35rem;
}
.testimonial-control{
display:grid;
place-items:center;
width:46px;
height:46px;
border:1px solid #d8e3ed;
border-radius:50%;
background:#fff;
color:#1f4f94;
font-size:1.85rem;
line-height:1;
box-shadow:0 10px 24px rgba(31,79,148,.08);
transition:background-color .2s ease,color .2s ease,transform .2s ease;
}
.testimonial-control:hover{
background:#1f4f94;
color:#fff;
transform:translateY(-2px);
}
.testimonial-track{
display:grid;
grid-auto-flow:column;
grid-auto-columns:calc((100% - 1rem)/2);
gap:1rem;
overflow-x:auto;
padding:.4rem .15rem 1.25rem;
scroll-snap-type:x mandatory;
scrollbar-width:none;
}
.testimonial-track::-webkit-scrollbar{
display:none;
}
.testimonial-slide{
position:relative;
display:flex;
flex-direction:column;
min-height:330px;
margin:0;
padding:1.6rem;
overflow:hidden;
border:1px solid #dce7f0;
border-radius:.9rem;
background:#fff;
box-shadow:0 16px 38px rgba(31,79,148,.08);
scroll-snap-align:start;
transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.testimonial-slide:after{
content:"";
position:absolute;
right:-42px;
bottom:-52px;
width:150px;
height:150px;
border-radius:50%;
background:linear-gradient(135deg,rgba(216,36,47,.08),rgba(31,79,148,.1));
}
.testimonial-slide:hover{
border-color:rgba(216,36,47,.28);
box-shadow:0 24px 58px rgba(31,79,148,.13);
transform:translateY(-4px);
}
.testimonial-slide-head{
position:relative;
z-index:1;
display:flex;
align-items:center;
justify-content:space-between;
gap:1rem;
}
.testimonial-mark{
color:#e4eef6;
font-family:Georgia,serif;
font-size:4rem;
line-height:.7;
}
.testimonial-slide>p{
position:relative;
z-index:1;
margin:1.25rem 0 1.7rem;
color:#263746;
font-size:1rem;
line-height:1.75;
}
.testimonial-slide footer{
position:relative;
z-index:1;
display:flex;
align-items:center;
gap:.8rem;
margin-top:auto;
}
.testimonial-slide footer div{
display:flex;
min-width:0;
flex-direction:column;
}
.testimonial-slide footer strong{
color:#12263b;
font-size:.95rem;
}
.testimonial-slide footer span:last-child{
color:#64778a;
font-size:.78rem;
}
.testimonial-dots{
display:flex;
justify-content:center;
gap:.5rem;
}
.testimonial-dots button{
width:9px;
height:9px;
border:0;
border-radius:999px;
padding:0;
background:#bfd0df;
transition:width .2s ease,background-color .2s ease;
}
.testimonial-dots button.is-active{
width:28px;
background:#d8242f;
}
@media(max-width:991px){
.testimonial-intro,
.testimonial-slider-top{
align-items:flex-start;
flex-direction:column;
}
.testimonial-controls{
align-self:flex-end;
padding-bottom:0;
}
.testimonial-track{
grid-auto-columns:minmax(320px,78%);
}
}
@media(max-width:575px){
.testimonial-intro h2{
font-size:2.1rem;
}
.testimonial-track{
grid-auto-columns:100%;
}
.testimonial-slide{
min-height:300px;
padding:1.25rem;
}
.testimonial-controls{
width:100%;
justify-content:flex-end;
}
}

/* Full width map after FAQ */
.map-section{
width:100%;
height:450px;
overflow:hidden;
background:#f7f9fc;
}
.map-section iframe{
display:block;
width:100%;
height:450px;
border:0;
filter:saturate(.95) contrast(1.02);
}
@media(max-width:575px){
.map-section iframe{
height:450px;
}
}

.hero-inquiry-panel {
    position: absolute !important;
    z-index: 4;
    top: 33%;
    right: clamp(18px, 4vw, 76px);
    width: min(419px, calc(100% - 36px));
    backdrop-filter: none;   
}

.hero-inquiry-fields {
    gap: 0;
}

.hero-inquiry-heading h2 {
        margin: 0;
    color: #1f4f94;
    font-size: 1.45rem;
    line-height: 1.12;
    letter-spacing: 0;
    padding-bottom: 70px;
    display: inline-block;
    padding-top: 55px;
}
.hero-inquiry-panel .form-label {
    margin-bottom: .22rem;
    color: #24394c;
    font-size: 14px;
    font-weight: 700;
}
.premium-hero, .page-hero {
    padding-top: 75px !important;
}

/* Hero banner slider with text and form overlay */
.premium-hero{
  min-height: 680px!important;
  padding: 113px 0 82px!important;
  background: #09294b!important;
}
.premium-hero:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:linear-gradient(90deg,rgba(5,20,36,.9) 0%,rgba(8,34,58,.72) 48%,rgba(8,34,58,.64) 100%)!important;
  pointer-events:none!important;
}
.premium-hero .container{
  position:relative!important;
  z-index:2!important;
  /* max-width:1180px!important; */
  width:100%!important;
  padding-left:1rem!important;
  padding-right:1rem!important;
}
.premium-hero-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(340px,430px)!important;
  gap:clamp(2rem,5vw,5rem)!important;
  align-items:center!important;
}
.premium-hero-content{
  display:block!important;
}
.hero-badge,
.hero-actions,
.hero-trust{
  display:none!important;
}
.premium-hero-content h1{
  color:#fff!important;
  text-shadow:0 2px 16px rgba(0,0,0,.26)!important;
}
.premium-hero-content>p{
  color:#e4edf4!important;
}
.premium-hero-visual{
  display:block!important;
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.hero-image-frame{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:560px!important;
  min-height:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.hero-slider{
  position:absolute!important;
  inset:0 0 auto auto!important;
  z-index:1!important;
  width: 100% !important;
  height: 100% !important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.3)!important;
}
.hero-slider:after{
  display:none!important;
}
.hero-slide-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height: calc(100% - 115px) !important;
  object-fit:contain!important;
  object-position:center!important;
  /* background:#fff!important; */
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center!important;
}
.hero-inquiry-panel{
  display:block!important;
  position:relative!important;
  z-index:3!important;
  top:auto!important;
  right:auto!important;
  width:100%!important;
  margin-top:150px!important;
  padding:1.35rem!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:16px!important;
  box-shadow:0 22px 60px rgba(0,0,0,.28)!important;
}
.hero-inquiry-heading h2{
  margin:0 0 1rem!important;
  padding:0!important;
  color:#1f4f94!important;
  font-size:1.45rem!important;
}
.hero-inquiry-fields{
  display:grid!important;
  gap:.75rem!important;
}
.hero-inquiry-panel .form-control{
  min-height:42px!important;
  padding:.55rem .7rem!important;
}
.hero-inquiry-panel textarea.form-control{
  min-height:82px!important;
}
.hero-inquiry-submit{
  width:100%!important;
  margin-top:.85rem!important;
}
.hero-image-label,
.hero-floating-card{
  display:none!important;
}
@media(max-width:991px){
  .premium-hero-layout{
    grid-template-columns:1fr!important;
  }
  .premium-hero{
    padding-top:118px!important;
  }
  .hero-image-frame{
    height:auto!important;
    display:grid!important;
    gap:1rem!important;
  }
  .hero-slider{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:2/1!important;
  }
  .hero-inquiry-panel{
    margin-top:0!important;
  }
}
@media(max-width:767px){
  .premium-hero{
    min-height:auto!important;
    padding:96px 0 46px!important;
  }
  .hero-inquiry-panel{
    padding:1rem!important;
  }
}

.hero-inquiry-panel {
  top: 120px !important;
  right: 20px !important; 
  background: #F6F9F9B5 !important;
  border-radius: 18px 18px 18px 18px !important;
  padding: 3rem 2.5rem !important;
}

.hero-slider {
  height: 100% !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
}

.premium-hero{
    position: relative;
    overflow: hidden;
}

.hero-overlay{
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;

    background: linear-gradient(
        90deg,
        rgba(10, 25, 47, 0.4) 0%,
        rgba(10, 25, 47, 0.5) 35%,
        rgba(10, 25, 47, 0.4) 65%,
        rgba(10, 25, 47, 0.5) 100%
    );


}

.hero-slider{
    position: absolute;
    inset: 0;
    z-index: 0;
}

.premium-hero-content h1 {
  color: #fff !important;
  text-shadow: 0 2px 16px rgba(0, 0, 0, 0.26) !important;
  font-size: 60px;
  line-height: 1.05;
  font-weight: 600;
}

.premium-hero .container {
  max-width: 1340px !important;
  margin: 0 auto !important;
}
.premium-hero-content>p {
  font-size: 17px;
}

.hero-inquiry-panel .form-control {
  margin-bottom: 18px;
}

.hero-slider {
  top: 113px !important;
  overflow: hidden !important;
}

.therapy-collage-item-1 {
  height: 100% !important;
  width: 100% !important;
}

.therapy-collage-item img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.therapy-collage-item {
  position: relative !important;
  overflow: show !important;
}
.therapy-collage-item-1 {
  left: 0 !important;
}

.navbar .nav-link,
.nav-enquiry {
  font-size: 18px;
}

.hero-inquiry-panel .form-control {
  font-size: 18px;
  color: #000;
}

.premium-hero-layout {
  grid-template-columns: minmax(0, 1fr) minmax(380px, 480px) !important;
}