/*
Theme Name: VES Editable Elementor Design
Theme URI: https://veses.co.uk
Author: V.E.S. Engineering Services
Description: Original approved three-page design with shared header/footer and included project photographs.
Version: 2.0.0
Requires at least: 6.0
Text Domain: ves-approved-design
*/

:root{--navy:#102d46;--blue:#17658b;--teal:#159db8;--ink:#1c3347;--muted:#5d7282;--light:#f2f7f9}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.65;background:white}a{text-decoration:none;color:inherit}.wrap{max-width:1160px;margin:auto;padding:0 25px}
.preview{background:#e8f3f7;color:#34546a;text-align:center;font-size:12px;padding:9px}.header{background:#102d46;color:#fff}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:78px}.logo{font-size:27px;font-weight:800;letter-spacing:1px;line-height:1}.logo small{display:block;font-size:10px;font-weight:400;letter-spacing:2px;color:#b6d3e4;margin-top:7px}.nav{display:flex;gap:25px;flex-wrap:wrap;font-size:13px;font-weight:bold}.nav a:hover,.nav .active{color:#72d4e8}
.hero{background:linear-gradient(120deg,#0d2944,#165677);color:white;padding:72px 0}.hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:45px;align-items:center}.eyebrow{color:#169dbb;text-transform:uppercase;font-size:12px;letter-spacing:2px;font-weight:800}.hero .eyebrow{color:#84d9ea}.hero h1{font-size:clamp(35px,4.4vw,59px);line-height:1.1;letter-spacing:-1.5px;margin:14px 0 20px}.hero p{font-size:18px;color:#d8e8ef;max-width:600px}.hero img{width:100%;height:350px;object-fit:cover;border-radius:12px;box-shadow:0 15px 35px #001a2a55}
.btn{display:inline-block;background:#149dbb;color:#fff;padding:13px 21px;border-radius:5px;font-weight:700;font-size:14px;margin:8px 8px 0 0}.btn.outline{background:transparent;border:1px solid #b7d3e4}.btn.dark{background:#102d46}.section{padding:72px 0}.section.alt{background:var(--light)}h2{font-size:clamp(27px,3vw,39px);line-height:1.2;color:#102d46;margin:8px 0 17px}h3{color:#173d57;font-size:22px;margin:12px 0}p{margin:12px 0}.lead{font-size:16px;color:var(--muted);max-width:800px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:30px}.card{border:1px solid #dce8ee;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 10px 25px #0a2c4610}.card img{width:100%;height:240px;object-fit:cover}.card .content{padding:24px}.card p{color:var(--muted)}.card a{color:#007c9d;font-weight:700}
.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px}.split img{width:100%;height:360px;object-fit:cover;border-radius:9px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:25px}.gallery figure{margin:0}.gallery img{width:100%;height:210px;object-fit:cover;border-radius:8px}.gallery figcaption{font-size:12px;color:#60798b;margin-top:6px}.facts{background:#eaf3f7;padding:22px 0}.facts .wrap{display:flex;justify-content:space-around;gap:22px;flex-wrap:wrap;text-align:center}.facts b{display:block;color:#113b56;font-size:21px}.facts span{font-size:12px;color:#5a7283}.list{padding-left:20px;color:#455f70}.list li{margin:8px 0}.dark-section{background:#102d46;color:white;padding:64px 0}.dark-section h2{color:#fff}.dark-section p{color:#c8dae6}.footer{background:#071d2f;color:#bfd1dc;padding:27px 0;font-size:12px}.footer .wrap{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.small{font-size:13px;color:#657b89}.tag{display:inline-block;background:#e5f4f8;color:#17658b;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:bold}
@media(max-width:780px){.header .wrap{padding-top:17px;padding-bottom:18px;display:block}.nav{margin-top:17px;gap:14px}.hero{padding:48px 0}.hero-grid,.split,.cards{grid-template-columns:1fr}.hero img{height:245px}.section{padding:48px 0}.gallery{grid-template-columns:repeat(2,1fr)}.gallery img{height:155px}}
@media(max-width:420px){.gallery{grid-template-columns:1fr}.gallery img{height:200px}}

/* Shared responsive contact footer */
.ves-footer-contact{background:#091f32;color:#e4f0f5;padding:38px 0 22px}
.ves-footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:30px}
.ves-footer-contact h3{font-size:16px;margin:0 0 10px;color:white}
.ves-footer-contact p{margin:0 0 7px;font-size:14px}
.ves-footer-contact a:hover{color:#72d4e8}
.ves-footer-bottom{border-top:1px solid #38546a;margin-top:25px;padding-top:15px;color:#c0d0da;font-size:12px}
.nav a[aria-current="page"]{color:#72d4e8}
@media(max-width:750px){.ves-footer-grid{grid-template-columns:1fr;gap:15px}.header .wrap{flex-direction:column;align-items:flex-start;padding-top:18px;padding-bottom:18px}.nav{gap:14px}.hero{padding:46px 0}}

/* Elementor native-widget equivalents of the approved design */
.ves-page .elementor-element{min-width:0}.ves-page .elementor-widget-heading .elementor-heading-title{font-family:Arial,Helvetica,sans-serif;color:inherit;font-weight:700;line-height:1.2}.ves-page .hero .elementor-heading-title{font-size:clamp(35px,4.4vw,59px);line-height:1.1;color:#fff}.ves-page .section .ves-h2 .elementor-heading-title{font-size:clamp(27px,3vw,39px);color:#102d46}.ves-page .dark-section .ves-h2 .elementor-heading-title{color:white}.ves-page .ves-h3 .elementor-heading-title{font-size:22px;color:#173d57}.ves-page .elementor-widget-text-editor p{margin:0 0 12px}.ves-page .hero .elementor-widget-text-editor{color:#d8e8ef;font-size:18px}.ves-page .lead{color:#5d7282}.ves-page .elementor-widget-image img{display:block;object-fit:cover}.ves-page .hero .elementor-widget-image img{height:350px;width:100%;border-radius:12px}.ves-page .split .elementor-widget-image img{height:360px;width:100%;border-radius:9px}.ves-page .card .elementor-widget-image img{height:240px;width:100%}.ves-page .gallery .elementor-widget-image img{height:210px;width:100%;border-radius:8px}.ves-page .elementor-widget-button .elementor-button{background:#149dbb;color:white;border-radius:5px;padding:13px 21px;font-weight:700}.ves-page .btn-outline .elementor-button{background:transparent;border:1px solid #b7d3e4}.ves-page .btn-dark .elementor-button{background:#102d46}.ves-page .hero-grid,.ves-page .cards,.ves-page .split,.ves-page .gallery,.ves-page .facts>.wrap,.ves-page .ves-button-row{display:grid!important}.ves-page .hero-grid{grid-template-columns:1.1fr .9fr;gap:45px;align-items:center}.ves-page .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.ves-page .split{grid-template-columns:1fr 1fr;gap:48px;align-items:center}.ves-page .gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ves-page .card{display:block!important}.ves-page .card .content{padding:24px}.ves-page .wrap{width:100%;max-width:1160px;margin:auto;padding:0 25px}.ves-page .hero,.ves-page .section,.ves-page .dark-section{display:block!important}.ves-page .eyebrow{color:#169dbb;font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase}.ves-page .hero .eyebrow{color:#84d9ea}.ves-page .facts .wrap{grid-template-columns:repeat(3,1fr);text-align:center}.ves-page .facts .elementor-heading-title{color:#113b56;font-size:21px}.ves-page .tag{background:#e5f4f8;color:#17658b;border-radius:20px;padding:5px 12px;display:inline-block}.ves-page .dark-section{color:#fff}.ves-page .dark-section .elementor-widget-text-editor{color:#c8dae6}.ves-page .ves-caption{font-size:12px;color:#60798b}.ves-page .ves-card-link{color:#007c9d;font-weight:700}.ves-page .elementor-widget{margin:0}.ves-page .elementor-widget:not(:last-child){margin-bottom:10px}.ves-page .ves-button-row{grid-template-columns:max-content max-content;gap:10px;justify-content:start}.ves-page .ves-button-row .elementor-widget{margin:0}.ves-page .gallery .elementor-widget-image{margin-bottom:6px}.ves-page .elementor-widget-text-editor ul{padding-left:22px}.ves-page .elementor-widget-text-editor li{margin:8px 0}
@media(max-width:780px){.ves-page .hero-grid,.ves-page .split,.ves-page .cards{grid-template-columns:1fr}.ves-page .gallery{grid-template-columns:repeat(2,1fr)}.ves-page .hero .elementor-widget-image img{height:245px}.ves-page .gallery .elementor-widget-image img{height:155px}.ves-page .facts .wrap{grid-template-columns:1fr}}
@media(max-width:420px){.ves-page .gallery{grid-template-columns:1fr}.ves-page .gallery .elementor-widget-image img{height:200px}}

/* Elementor container-specific layout */
.ves-page .elementor-element.hero-grid,.ves-page .elementor-element.split,.ves-page .elementor-element.cards,.ves-page .elementor-element.gallery{display:grid!important}.ves-page .elementor-element.hero-grid>.e-con-inner{display:contents}.ves-page .elementor-widget-heading h1,.ves-page .elementor-widget-heading h2,.ves-page .elementor-widget-heading h3{margin:0}.ves-page .elementor-element.ves-page{display:block}.ves-page .elementor-element.card{border:1px solid #dce8ee;border-radius:10px;overflow:hidden;box-shadow:0 10px 25px #0a2c4610}.ves-page .elementor-element.content{padding:24px}.ves-page .elementor-element.gallery .elementor-widget-image img{width:100%}.ves-page .elementor-element.facts .wrap{display:grid!important}.ves-page .elementor-element.dark-section{background:#102d46}.ves-page .elementor-element.section.alt{background:#f2f7f9}.ves-page .elementor-element.hero{background:linear-gradient(120deg,#0d2944,#165677)}
