:root{--navy:#172653;--navy2:#0d1735;--blue:#147eae;--sky:#1ca7d6;--red:#b32c34;--ink:#172033;--muted:#667085;--line:#e5e7eb;--soft:#f5f7fb;--white:#fff;--radius:22px;--shadow:0 18px 50px #1726531a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}.container{width:min(1180px,100% - 40px);margin:auto}.narrow{max-width:850px}.site-header{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-bottom:1px solid #17265314;position:sticky;top:0}.nav-wrap{justify-content:space-between;align-items:center;gap:30px;min-height:92px;display:flex}.brand img{object-fit:contain;object-position:left center;width:180px;height:72px}.nav{align-items:center;gap:24px;font-size:14px;font-weight:650;display:flex}.nav a{padding:10px 0;position:relative}.nav a.active:not(.nav-cta):after{content:"";background:var(--blue);height:2px;position:absolute;bottom:3px;left:0;right:0}.nav-cta{background:var(--navy);border-radius:999px;color:#fff!important;padding:12px 18px!important}.menu-btn{color:var(--navy);background:0 0;border:0;font-size:28px;display:none}.hero{background:linear-gradient(135deg,#fbfcff 0%,#fff 65%,#eef7fb 100%);padding:70px 0 52px}.hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:60px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--blue);margin:0 0 16px;font-size:12px;font-weight:800}.eyebrow.light{color:#9eddf3}.hero h1,.page-hero h1{letter-spacing:-.045em;color:var(--navy2);margin:0 0 24px;font-size:clamp(48px,7vw,86px);line-height:.98}.lead{color:#4a5568;max-width:760px;font-size:20px}.lead.small{font-size:18px}.actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:14px 22px;font-weight:750;transition:all .2s;display:inline-flex}.btn.primary{background:var(--navy);color:#fff}.btn.primary:hover{background:#243d7d;transform:translateY(-1px)}.btn.ghost{color:var(--navy);background:#fff;border-color:#cfd5df}.btn.full{width:100%}.trust-row{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.trust-row span{color:#536079;background:#fff;border:1px solid #dfe3ea;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700}.hero-panel{box-shadow:var(--shadow);background:#fff;border:1px solid #edf0f6;border-radius:30px;padding:28px;overflow:hidden}.hero-panel img{aspect-ratio:2;object-fit:cover;border-radius:18px;width:100%}.hero-panel-copy{color:#596276;justify-content:space-between;gap:20px;margin-top:18px;font-size:14px;display:flex}.hero-panel-copy strong{color:var(--navy)}.section{padding:90px 0}.section.alt{background:var(--soft)}.section.navy{background:var(--navy2);color:#fff}.section h2{letter-spacing:-.035em;color:var(--navy2);max-width:850px;margin:0 0 36px;font-size:clamp(36px,5vw,58px);line-height:1.05}.section.navy h2{color:#fff}.cards{gap:22px;display:grid}.cards.three{grid-template-columns:repeat(3,1fr)}.service-card{border-radius:var(--radius);background:#fff;border:1px solid #e7eaf0;padding:30px;transition:all .22s;box-shadow:0 8px 30px #1424460a}.service-card:hover{box-shadow:var(--shadow);border-color:#d6e7ef;transform:translateY(-5px)}.service-icon{width:48px;height:48px;color:var(--blue);background:#e9f7fc;border-radius:14px;place-items:center;margin-bottom:24px;font-size:24px;display:grid}.service-card h3{color:var(--navy);margin:4px 0 10px;font-size:28px}.service-card p{color:#667085}.service-card a{color:var(--blue);font-weight:800}.split{grid-template-columns:1fr 1fr;align-items:start;gap:70px;display:grid}.steps{gap:14px;display:grid}.steps>div{background:#fff;border:1px solid #e6e9ef;border-radius:18px;gap:18px;padding:22px;display:flex}.steps b{color:var(--blue);font-size:20px}.steps span{gap:3px;display:grid}.steps small{color:#667085}.section-head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px;display:flex}.section-head h2{margin-bottom:0}.section-head>a{color:var(--blue);font-weight:800}.project-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.project-card{background:#fff;border:1px solid #e6e8ee;border-radius:22px;overflow:hidden}.project-image{aspect-ratio:4/3;background:#eef2f5;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:all .35s}.project-card:hover .project-image img{transform:scale(1.04)}.image-placeholder{color:#8290a3;background:linear-gradient(135deg,#edf2f7,#f8fafc);place-items:center;height:100%;font-weight:700;display:grid}.project-meta{padding:20px}.project-meta>span{letter-spacing:.14em;text-transform:uppercase;color:var(--blue);font-size:11px;font-weight:800}.project-meta h3{color:var(--navy);margin:7px 0;font-size:24px}.project-meta p,.project-meta small{color:#667085}.testimonial{background:#ffffff14;border:1px solid #ffffff1f;border-radius:22px;margin:0;padding:28px}.testimonial p{font-size:19px}.testimonial footer{color:#c7d0e5}.stars{color:#ffd166;letter-spacing:.08em}.cta{background:linear-gradient(135deg,#eef8fc,#f8f9ff);border:1px solid #e5ecf3;border-radius:30px;justify-content:space-between;align-items:center;gap:30px;padding:42px;display:flex}.cta h2{margin-bottom:10px}.page-hero{background:linear-gradient(135deg,#fbfcff,#eef7fb);padding:82px 0 60px}.content-grid{grid-template-columns:1.3fr .7fr;gap:60px;display:grid}.content-grid article{color:#4d586c;font-size:18px}.content-grid article h2{font-size:46px}.feature-box{background:var(--navy);color:#fff;border-radius:24px;padding:30px}.feature-box h3{margin-top:0;font-size:28px}.feature-box ul{padding-left:20px}.feature-box li{margin:10px 0}.feature-box dl{grid-template-columns:90px 1fr;gap:8px 12px;display:grid}.feature-box dt{color:#bcd0e0}.feature-box dd{margin:0}.filters{flex-wrap:wrap;gap:10px;margin-bottom:28px;display:flex}.filters button{cursor:pointer;color:#536079;background:#fff;border:1px solid #dce1e8;border-radius:999px;padding:9px 15px;font-weight:700}.filters button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.empty-state{text-align:center;color:#7a8797;border:1px dashed #ccd3dc;border-radius:20px;padding:50px}.contact-grid{grid-template-columns:1.2fr .8fr;gap:42px;display:grid}.quote-form{box-shadow:var(--shadow);background:#fff;border:1px solid #e4e8ef;border-radius:24px;padding:30px}.form-grid,.admin-form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-grid label,.admin-form-grid label,.modal-box label,.admin-auth label{color:#344054;gap:7px;font-size:13px;font-weight:750;display:grid}.wide{grid-column:1/-1}input,textarea,select{color:#172033;background:#fff;border:1px solid #d8dee7;border-radius:12px;outline:none;width:100%;padding:12px 13px}input:focus,textarea:focus,select:focus{border-color:#68b5d3;box-shadow:0 0 0 3px #147eae1a}.quote-form>.btn{margin-top:20px}.form-status{color:var(--blue);font-weight:700}.contact-card{background:var(--navy2);color:#fff;border-radius:24px;flex-direction:column;align-self:start;gap:12px;padding:30px;display:flex}.contact-card h3{margin:0;font-size:28px}.contact-card a{color:#b9e6f7;font-weight:700}.contact-card small{color:#b9c2d3;margin-top:14px}.footer{color:#d7deeb;background:#0b1228;padding:60px 0 20px}.footer-grid{grid-template-columns:1.4fr repeat(3,1fr);gap:40px;display:grid}.footer-logo{border-radius:12px;width:230px}.footer h4{color:#fff;margin-top:0}.footer a,.footer span{color:#c7cfde;margin:8px 0;display:block}.footer-bottom{color:#99a5b9;border-top:1px solid #ffffff1a;margin-top:40px;padding-top:20px;font-size:13px}.not-found{text-align:center;align-content:center;place-items:center;gap:10px;min-height:70vh;display:grid}.not-found h1{color:var(--navy);margin:0;font-size:100px}.admin-auth{background:#eef3f7;place-items:center;min-height:100vh;padding:24px;display:grid}.admin-auth form{width:min(430px,100%);box-shadow:var(--shadow);background:#fff;border-radius:24px;padding:34px}.admin-auth img{width:180px;margin:auto auto 20px}.admin-auth h1{text-align:center;color:var(--navy)}.admin-auth label{margin-bottom:15px}.error{color:#b42318}.admin-shell{background:#f4f6f9;grid-template-columns:250px 1fr;min-height:100vh;display:grid}.admin-side{background:var(--navy2);color:#fff;flex-direction:column;gap:6px;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.admin-side img{background:#fff;border-radius:10px;width:190px;margin-bottom:20px}.admin-side button,.admin-side a{color:#d8dfec;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:11px 12px}.admin-side button.active,.admin-side button:hover,.admin-side a:hover{color:#fff;background:#ffffff1a}.admin-main{width:100%;max-width:1200px;padding:40px}.admin-main>h1{color:var(--navy);margin-top:0;font-size:44px}.admin-card{background:#fff;border:1px solid #e2e6ed;border-radius:20px;margin-bottom:24px;padding:26px}.admin-card h2{color:var(--navy);margin-top:0}.admin-card>.btn{margin-top:20px}.admin-list{margin-top:24px}.admin-row{border-top:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:20px;padding:14px 0;display:flex}.admin-row div{display:grid}.admin-row small{color:#778295}.admin-row button{cursor:pointer;background:#fff;border:1px solid #d7dce4;border-radius:8px;padding:7px 11px}.admin-row .danger{color:#b42318}.enquiry{border-top:1px solid #edf0f4;gap:5px;padding:18px 0;display:grid}.enquiry p{color:#475467;margin:5px 0}.modal{z-index:100;background:#0812288c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-box{background:#fff;border-radius:22px;gap:14px;width:min(650px,100%);padding:28px;display:grid}.modal-box h3{color:var(--navy);margin:0}@media (width<=980px){.nav-wrap{min-height:78px}.brand img{width:150px;height:60px}.menu-btn{display:block}.nav{box-shadow:var(--shadow);background:#fff;border:1px solid #e4e8ee;border-radius:18px;flex-direction:column;align-items:stretch;gap:2px;padding:18px;display:none;position:absolute;top:78px;left:20px;right:20px}.nav.open{display:flex}.nav a{padding:12px}.hero-grid,.split,.content-grid,.contact-grid{grid-template-columns:1fr}.hero-panel{max-width:620px}.cards.three,.project-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.admin-shell{grid-template-columns:1fr}.admin-side{flex-flow:wrap;height:auto;position:static}.admin-side img{width:140px}.admin-main{padding:25px}}@media (width<=640px){.container{width:min(100% - 28px,1180px)}.hero{padding-top:46px}.hero h1,.page-hero h1{font-size:48px}.lead{font-size:18px}.section{padding:65px 0}.section h2{font-size:38px}.cards.three,.project-grid,.footer-grid,.form-grid,.admin-form-grid{grid-template-columns:1fr}.section-head,.cta{flex-direction:column;align-items:flex-start}.cta{padding:28px}.footer-logo{width:190px}.admin-main{padding:18px}.admin-side{padding:14px}.admin-side img{display:none}}.cart-link{align-items:center;gap:6px;display:inline-flex!important}.cart-link span{min-width:22px;height:22px;color:var(--navy);background:#edf6fb;border-radius:999px;place-items:center;padding:0 6px;font-size:11px;font-weight:900;display:inline-grid}.page-hero.compact{padding:54px 0 38px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.product-card{background:#fff;border:1px solid #e4e8ef;border-radius:24px;overflow:hidden;box-shadow:0 8px 30px #1424460a}.product-card>img,.product-placeholder{aspect-ratio:4/3;object-fit:cover;width:100%;color:var(--navy);background:linear-gradient(135deg,#ecf5fa,#edf0fa);place-items:center;font-size:28px;font-weight:900;display:grid}.product-body{padding:23px}.product-cat{text-transform:uppercase;letter-spacing:.14em;color:var(--blue);font-size:11px;font-weight:900}.product-body h2{margin:7px 0 10px;font-size:25px}.product-body h2 a{color:var(--navy)}.product-body p{color:#667085;min-height:48px}.price-line{align-items:baseline;gap:9px;margin:18px 0;display:flex}.price-line strong{color:var(--navy);font-size:24px}.price-line del{color:#8993a4}.price-line small{color:#667085}.price-line.big strong{font-size:38px}.product-actions{flex-wrap:wrap;gap:10px;display:flex}.product-detail{grid-template-columns:1fr 1fr;align-items:start;gap:65px;display:grid}.product-detail h1{color:var(--navy);margin:0 0 16px;font-size:clamp(42px,5vw,68px);line-height:1.02}.product-detail-image,.product-placeholder.large{aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:var(--shadow);border-radius:28px}.deposit-note{color:var(--blue);font-weight:800}.product-description{white-space:pre-line;color:#4f5b6f;font-size:18px}.cart-layout{grid-template-columns:1fr 360px;align-items:start;gap:35px;display:grid}.cart-items{gap:12px;display:grid}.cart-item{background:#fff;border:1px solid #e4e8ef;border-radius:18px;grid-template-columns:90px 1fr 82px 100px auto;align-items:center;gap:16px;padding:14px;display:grid}.cart-item img,.cart-item>div:first-child{object-fit:cover;background:#edf2f7;border-radius:12px;width:90px;height:70px}.cart-copy{gap:4px;display:grid}.cart-copy small{color:#667085}.cart-item input{padding:9px}.cart-item button{color:#b42318;cursor:pointer;background:0 0;border:0;font-weight:700}.cart-summary{background:#f6f8fb;border:1px solid #e2e7ee;border-radius:22px;padding:25px;position:sticky;top:105px}.cart-summary h2{margin-top:0;font-size:28px}.cart-summary>div{border-bottom:1px solid #e2e7ee;justify-content:space-between;gap:20px;padding:10px 0;display:flex}.cart-summary p{color:#667085;font-size:13px}.cart-summary .btn{margin-top:10px}.summary-total{font-size:18px}.checkout-wrap{grid-template-columns:1fr 370px;align-items:start;gap:42px;display:grid}.checkout-wrap h1{color:var(--navy);margin-top:0;font-size:52px}.success-panel{text-align:center;background:#f7fbfd;border:1px solid #dcecf3;border-radius:28px;grid-column:1/-1;max-width:760px;margin:auto;padding:50px}.service-price{color:#536079;font-size:19px}.service-price strong{color:var(--navy);font-size:25px}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.gallery-grid figure{background:#fff;border:1px solid #e5e8ee;border-radius:20px;margin:0;overflow:hidden}.gallery-grid img{aspect-ratio:4/3;object-fit:cover;width:100%}.gallery-grid figcaption{gap:3px;padding:15px;display:grid}.gallery-grid figcaption span{color:#667085;font-size:13px}.team-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.team-card{background:#fff;border:1px solid #e3e7ed;border-radius:22px;padding:22px}.team-card img,.avatar-placeholder{aspect-ratio:1;object-fit:cover;width:100%;color:var(--navy);background:#eef3f8;border-radius:16px;place-items:center;font-size:64px;display:grid}.team-card h3{color:var(--navy);margin:17px 0 4px;font-size:25px}.team-card>strong{color:var(--blue)}.team-card p{color:#667085}.team-card a{color:var(--navy);margin-top:5px;font-weight:700;display:block}.stat-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.stat{background:#f6f8fb;border:1px solid #e5e9ef;border-radius:16px;gap:3px;padding:20px;display:grid}.stat strong{color:var(--navy);font-size:32px}.stat span{color:#687489;font-size:13px}.admin-help{color:#69758a}.toggle-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;display:grid}.toggle-line{background:#f9fafb;border:1px solid #e4e8ee;border-radius:12px;align-items:center;gap:9px!important;padding:11px 13px!important;display:flex!important}.toggle-line input{width:auto}.row-actions{grid-auto-flow:column;align-items:center;gap:8px;display:flex!important}.row-actions select{width:auto}.product-editor{gap:12px;display:grid}.modal-box.scroll{max-height:88vh;overflow:auto}.booking-row{border-top:1px solid #e9edf2;gap:6px;padding:19px 0;display:grid}.booking-head{justify-content:space-between;align-items:center;gap:15px;display:flex}.pill{text-transform:uppercase;letter-spacing:.04em;background:#edf2f7;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;display:inline-flex}.pill.confirmed,.pill.completed,.pill.paid{color:#137a45;background:#e7f7ee}.pill.cancelled,.pill.refunded{color:#b42318;background:#fff0ef}.pill.new{color:#2457a6;background:#eef5ff}.booking-items{color:#5a667a;gap:3px;padding:8px 0;display:grid}.booking-money{flex-wrap:wrap;gap:20px;display:flex}.admin-media-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.admin-media{border:1px solid #e3e7ed;border-radius:16px;gap:7px;padding:12px;display:grid}.admin-media img{aspect-ratio:4/3;object-fit:cover;border-radius:10px;width:100%}@media (width<=1050px){.product-grid,.gallery-grid,.team-grid{grid-template-columns:repeat(2,1fr)}.cart-layout,.checkout-wrap,.product-detail{grid-template-columns:1fr}.cart-summary{position:static}.stat-grid,.toggle-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.product-grid,.gallery-grid,.team-grid,.stat-grid,.toggle-grid,.admin-media-grid{grid-template-columns:1fr}.cart-item{grid-template-columns:70px 1fr;align-items:start}.cart-item img,.cart-item>div:first-child{width:70px;height:60px}.cart-item input,.cart-item>b,.cart-item>button{grid-column:2}.product-detail{gap:28px}.checkout-wrap h1{font-size:42px}}.service-card-image{aspect-ratio:16/10;object-fit:cover;border-radius:16px;width:100%;margin-bottom:22px}.service-card-price{margin:12px 0;font-weight:850;color:var(--navy)!important}.service-hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:48px;display:grid}.service-hero-image{aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:var(--shadow);border:1px solid #e4e8ef;border-radius:28px}.service-body{white-space:normal}.service-price span{color:#667085;font-size:15px;font-weight:600}.service-admin-summary{align-items:center;gap:14px;grid-auto-flow:unset!important;display:flex!important}.service-admin-summary>span{gap:2px;display:grid}.service-admin-summary img{object-fit:cover;border:1px solid #e4e8ef;border-radius:10px;width:70px;height:54px}.admin-view-link{background:#fff;border:1px solid #d7dce4;border-radius:8px;color:var(--navy)!important;padding:7px 11px!important}.admin-section-head{margin-bottom:10px}.admin-section-head h2{margin-bottom:4px}.service-admin-row{align-items:center}@media (width<=980px){.service-hero-grid{grid-template-columns:1fr}.service-hero-image{max-width:680px}.nav{max-height:calc(100vh - 100px);overflow:auto}}@media (width<=640px){.service-admin-row{flex-direction:column;align-items:flex-start}.service-admin-row .row-actions{grid-auto-flow:unset;flex-wrap:wrap;width:100%;display:flex!important}.service-admin-summary img{width:64px;height:52px}}
