:root{--navy:#061933;--navy-soft:#0c274c;--blue:#0b63ce;--blue-dark:#084b9b;--gold:#ffb703;--cream:#f8f4ec;--paper:#fff;--ink:#152238;--muted:#5d6b7c;--line:#dce4ef;--success:#0f7a4f;--shadow:0 20px 60px #0619331f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img,svg{max-width:100%}.site-header{z-index:20;color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:radial-gradient(circle at 92%,#ffb70324,#0000 24%),#061933fa;border-bottom:1px solid #ffb70338;position:sticky;top:0}.container{width:min(1160px,100% - 32px);margin:0 auto}.header-inner{justify-content:space-between;align-items:center;gap:22px;min-height:86px;display:flex}.brand{letter-spacing:-.04em;flex:none;align-items:center;font-weight:800;display:flex}.logo-mark{background:#050505;border:1px solid #ffb70347;border-radius:18px;justify-content:center;align-items:center;width:72px;height:72px;display:inline-flex;overflow:hidden;box-shadow:0 12px 34px #0000003d}.logo-mark img{object-fit:contain;width:100%;height:100%}.brand-copy{display:grid}.brand-copy span:first-child{color:var(--gold);font-size:clamp(1.45rem,2.4vw,2.1rem)}.brand-copy span:last-child{color:#b8c7dc;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:700}.header-service{border-left:1px solid #ffffff29;gap:2px;min-width:190px;padding-left:18px;display:grid}.header-service strong{color:#fff;letter-spacing:-.01em;font-size:.98rem;line-height:1.2}.header-service span{color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:800}.nav{color:#dce8f8;flex:auto;justify-content:center;align-items:center;gap:8px;font-size:.9rem;font-weight:700;display:flex}.nav a{border-radius:999px;padding:9px 11px;transition:background .2s,color .2s}.nav a:hover,.nav a.active{color:#fff;background:#ffffff14}.nav a.active{color:var(--gold);background:#ffb7032e}.mobile-nav-scroll{display:none}.header-actions{flex:none;align-items:center;gap:14px;display:flex}.phone-link{color:#132033;letter-spacing:.02em;white-space:nowrap;background:linear-gradient(135deg,#ffb703 0%,#ff8f00 100%);border:1px solid #ffb703b3;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex;box-shadow:0 10px 28px #ffb70347}.phone-link:hover{background:linear-gradient(135deg,#ffc533 0%,#ff9f1c 100%);transform:translateY(-1px);box-shadow:0 14px 34px #ffb7035c}.button{background:var(--gold);color:#1d2633;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-family:inherit;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex;box-shadow:0 10px 30px #ffb70347}.button:hover{background:#ffc53d;transform:translateY(-1px);box-shadow:0 14px 38px #ffb7035c}.button.secondary{color:#fff;box-shadow:none;background:#ffffff14;border:1px solid #ffffff3d}.mobile-sticky-cta{display:none}.hero{background:radial-gradient(circle at 82% 10%, #ffb70347, transparent 30%), linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 52%, #0b3f7a 100%);color:#fff;padding:86px 0 64px;position:relative;overflow:hidden}.hero-with-image{background:linear-gradient(90deg, #061933db 0%, #0619338f 42%, #06193314 100%), radial-gradient(circle at 82% 20%, #ffb70314, transparent 34%), var(--hero-image);background-position:50%;background-size:cover}.hero-with-image:before{content:"";background:linear-gradient(#0619330a,#0619332e);position:absolute;inset:0}.hero:after{content:"";border:70px solid #ffffff0f;border-radius:50%;width:560px;height:560px;position:absolute;bottom:-260px;right:-180px}.hero-grid{z-index:1;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);align-items:center;gap:48px;display:grid;position:relative}.eyebrow{color:#e8f2ff;letter-spacing:.12em;text-transform:uppercase;background:#ffffff1f;border-radius:999px;margin:0 0 14px;padding:7px 13px;font-size:.82rem;font-weight:800;display:inline-flex}h1,h2,h3{color:inherit;letter-spacing:-.045em;margin:0;line-height:1.08}h1{max-width:820px;font-size:clamp(2.8rem,7vw,5.9rem)}h2{font-size:clamp(2rem,4vw,3.35rem)}h3{font-size:1.35rem}p{margin:0}.hero-text{color:#d7e4f4;max-width:690px;margin-top:22px;font-size:clamp(1.08rem,2vw,1.3rem)}.cta-row{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.hero-card{box-shadow:var(--shadow);background:#ffffff1a;border:1px solid #ffffff26;border-radius:30px;padding:28px}.hero-logo{background:#030303;border:1px solid #ffb70352;border-radius:26px;place-items:center;margin-bottom:24px;display:grid;overflow:hidden;box-shadow:0 20px 45px #00000047}.hero-logo img{width:min(100%,360px);height:auto;display:block}.hero-card strong{color:#fff;margin-bottom:12px;font-size:1.25rem;display:block}.check-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.check-list li{padding-left:30px;position:relative}.check-list li:before{color:var(--gold);content:"✓";font-weight:900;position:absolute;top:0;left:0}.section{padding:78px 0}.section.light{background:#fff}.quick-booking{z-index:2;margin-top:-28px;position:relative}.quick-booking-inner{background:#fff;border:1px solid #ffb70347;border-radius:24px;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex;box-shadow:0 18px 45px #06193324}.quick-booking-inner div:first-child{gap:4px;display:grid}.quick-booking-inner strong{color:var(--navy);font-size:1.12rem}.quick-booking-inner span{color:var(--muted)}.quick-booking-actions{flex:none;gap:10px;display:flex}.quick-booking-actions a,.quick-booking-actions button{cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-family:inherit;font-size:1rem;font-weight:800;display:inline-flex}.quick-booking-actions a:first-child{color:#132033;background:linear-gradient(135deg,#ffb703 0%,#ff8f00 100%)}.quick-booking-actions a:last-child,.quick-booking-actions button:last-child{border:1px solid var(--line);color:var(--navy)}.quote-modal{z-index:100;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.quote-modal-backdrop{cursor:pointer;background:#061933b8;border:0;position:absolute;inset:0}.quote-modal-panel{z-index:1;background:#fff;border:1px solid #ffffff42;border-radius:28px;grid-template-rows:auto minmax(0,1fr);width:min(980px,100%);max-height:min(88vh,860px);display:grid;position:relative;overflow:hidden;box-shadow:0 28px 90px #06193361}.quote-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 24px;display:flex}.quote-modal-header .eyebrow{margin-bottom:4px}.quote-modal-header h2{color:var(--navy);margin:0;font-size:clamp(1.35rem,3vw,2rem)}.quote-modal-close{border:1px solid var(--line);min-height:40px;color:var(--navy);cursor:pointer;background:#f6f9fd;border-radius:999px;padding:0 16px;font-family:inherit;font-weight:800}.quote-modal-panel iframe{border:0;width:100%;height:min(740px,88vh - 98px);min-height:560px;display:block}.section-heading{gap:16px;max-width:820px;margin-bottom:34px;display:grid}.section-heading p{color:var(--muted);font-size:1.08rem}.grid{gap:22px;display:grid}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{border:1px solid var(--line);background:var(--paper);border-radius:26px;padding:28px;box-shadow:0 12px 35px #0619330f}.card p{color:var(--muted);margin-top:12px}.card .button{margin-top:22px}.local-photo-section{background:radial-gradient(circle at 10% 20%, #ffb7031f, transparent 28%), linear-gradient(180deg, #fff 0%, var(--cream) 100%)}.local-photo-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:36px;display:grid}.local-photo-grid .section-heading{margin-bottom:0}.local-photo-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:32px;margin:0;position:relative;overflow:hidden}.local-photo-card img{aspect-ratio:1.48;object-fit:cover;width:100%;height:auto;display:block}.local-photo-card figcaption{color:#fff;background:#061933d1;border-radius:999px;padding:8px 12px;font-size:.85rem;font-weight:800;position:absolute;bottom:18px;right:18px}.work-preview-grid,.work-gallery-grid{gap:18px;display:grid}.work-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.work-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense}.work-card{border:1px solid var(--line);background:#fff;border-radius:26px;min-height:320px;margin:0;position:relative;overflow:hidden;box-shadow:0 12px 35px #06193314}.work-card.featured{grid-area:span 2/span 2}.work-card.compact{min-height:360px}.work-card img{width:100%;height:100%;min-height:inherit;object-fit:cover;transition:transform .35s;display:block}.work-card:hover img{transform:scale(1.035)}.work-card figcaption{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#061933d6;border:1px solid #ffffff2e;border-radius:18px;gap:4px;padding:14px;display:grid;position:absolute;bottom:14px;left:14px;right:14px}.work-card figcaption strong{line-height:1.15}.work-card figcaption span{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;font-weight:800}.split{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:start;gap:44px;display:grid}.feature-panel{background:var(--navy);color:#fff;box-shadow:var(--shadow);border-radius:32px;padding:34px;position:sticky;top:110px}.feature-panel p{color:#cbd8e8;margin-top:12px}.content-stack{gap:18px;display:grid}.content-block{border-left:5px solid var(--blue)}.content-block ul{color:var(--muted);margin:18px 0 0;padding-left:20px}.local-area{border:1px solid var(--line);background:#fff;border-radius:34px;padding:42px;box-shadow:0 12px 35px #0619330f}.local-area .section-heading{margin-bottom:22px}.area-tags{flex-wrap:wrap;gap:10px;display:flex}.area-tags span{color:var(--blue-dark);background:#f3f8ff;border:1px solid #c8d8ea;border-radius:999px;padding:9px 14px;font-weight:800}.local-links-section{background:#fff}.local-links-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.local-link-card{border:1px solid var(--line);background:linear-gradient(#fff 0%,#f7fbff 100%);border-radius:22px;gap:10px;padding:22px;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid;box-shadow:0 10px 28px #0619330d}.local-link-card:hover{border-color:#ffb7039e;transform:translateY(-2px);box-shadow:0 16px 36px #0619331a}.local-link-card strong{color:var(--navy);font-size:1.05rem}.local-link-card span{color:var(--muted)}.manufacturer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.manufacturer-card{border:1px solid var(--line);background:#fff;border-radius:26px;overflow:hidden;box-shadow:0 12px 35px #0619330f}.manufacturer-logo{background:#fff;place-items:center;min-height:170px;padding:24px;display:grid}.manufacturer-logo img{object-fit:contain;width:100%;max-height:118px;display:block}.manufacturer-card>div:last-child{border-top:1px solid var(--line);padding:22px}.manufacturer-card p{color:var(--muted);margin-top:10px}.band{background:linear-gradient(#061933e0, #061933e6), linear-gradient(135deg, var(--navy), var(--blue-dark));color:#fff;border-radius:34px;padding:46px}.band p{color:#d9e6f4;max-width:760px;margin-top:14px}.faq-list{gap:14px;display:grid}.faq-item{border:1px solid var(--line);background:#fff;border-radius:20px;padding:22px}.faq-item summary{cursor:pointer;color:var(--navy);font-weight:800}.faq-item p{color:var(--muted);margin-top:12px}.contact-panel{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:30px;display:grid}.contact-panel a,.contact-panel div{color:#fff;background:#ffffff1a;border-radius:22px;padding:22px}.form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.form label{color:var(--navy);gap:8px;font-weight:800;display:grid}.form .full{grid-column:1/-1}.form input,.form select,.form textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fdfefe;border-radius:16px;padding:14px 15px}.form textarea{resize:vertical}.form button{width:fit-content}.reviews-embed{padding:0;overflow:hidden}.reviews-embed iframe{background:#fff;border:0;width:100%;min-height:620px;display:block}.reviews-placeholder{text-align:center;place-items:center;min-height:360px;padding:36px;display:grid}.reviews-placeholder p{max-width:620px;color:var(--muted);margin-top:12px}.reviews-placeholder code,.section-heading code{color:var(--blue-dark);background:#eef4fb;border-radius:8px;padding:2px 6px;font-weight:800}.site-footer{background:var(--navy);color:#fff;padding:52px 0 30px}.footer-grid{grid-template-columns:1.2fr .8fr .8fr;gap:36px;display:grid}.footer-grid p,.footer-grid a{color:#c8d7e9}.footer-grid a{margin-top:9px;display:block}.footer-bottom{color:#9fb1c8;border-top:1px solid #ffffff24;margin-top:36px;padding-top:22px;font-size:.9rem}@media (max-width:980px){.header-inner{gap:14px}.logo-mark{border-radius:16px;width:62px;height:62px}.header-service{flex:auto;min-width:0;padding-left:14px}.header-service strong{font-size:.9rem}.header-service span{font-size:.7rem}.nav{display:none}.mobile-nav-scroll{background:#030f1fb8;border-top:1px solid #ffffff1a;display:block}.mobile-nav-inner{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding-top:8px;padding-bottom:8px;display:flex;overflow-x:auto}.mobile-nav-inner::-webkit-scrollbar{display:none}.mobile-nav-inner a{color:#fff;white-space:nowrap;background:#ffffff12;border:1px solid #ffffff24;border-radius:999px;flex:none;padding:8px 12px;font-size:.82rem;font-weight:800}.mobile-nav-inner a.active{color:var(--gold);background:#ffb7032e;border-color:#ffb703a8}.hero-grid,.local-photo-grid,.split,.grid.three,.grid.two,.work-preview-grid,.work-gallery-grid,.manufacturer-grid,.local-links-grid,.footer-grid,.contact-panel,.form{grid-template-columns:1fr}.quick-booking{margin-top:0}.quick-booking-inner{flex-direction:column;align-items:flex-start}.quick-booking-actions{flex-wrap:wrap;width:100%}.quick-booking-actions a,.quick-booking-actions button{flex:180px}.feature-panel{position:static}.work-card.featured{grid-area:span 1/span 1}}@media (max-width:640px){.container{width:min(100% - 24px,1160px)}.site-header{position:sticky}body{padding-bottom:74px}.mobile-sticky-cta{z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#061933f0;border:1px solid #ffffff2e;border-radius:999px;grid-template-columns:1fr 1fr;gap:8px;padding:8px;display:grid;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 18px 45px #06193347}.mobile-sticky-cta a,.mobile-sticky-cta button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:0 12px;font-family:inherit;font-size:.86rem;font-weight:900;display:inline-flex}.mobile-sticky-cta a:first-child{color:#132033;background:linear-gradient(135deg,#ffb703 0%,#ff8f00 100%)}.mobile-sticky-cta a:last-child,.mobile-sticky-cta button:last-child{background:#ffffff1a}.quote-modal{padding:10px}.quote-modal-panel{border-radius:20px;max-height:calc(100dvh - 20px)}.quote-modal-header{flex-direction:column;align-items:stretch;gap:12px;padding:18px}.quote-modal-close{width:100%}.quote-modal-panel iframe{height:calc(100dvh - 156px);min-height:430px}.header-inner{grid-template-columns:auto 1fr;align-items:center;gap:10px 12px;min-height:0;padding:10px 0;display:grid}.brand{grid-row:1/3}.logo-mark{border-radius:14px;width:58px;height:58px}.header-service{border-left:0;min-width:0;padding-left:0}.header-service strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;line-height:1.15;display:block;overflow:hidden}.header-service span{letter-spacing:.12em;font-size:.66rem}.header-actions{justify-content:space-between;gap:8px;width:100%;min-width:0}.phone-link,.header-actions .button{border-radius:999px;min-height:40px;padding:0 12px;font-size:.86rem}.phone-link{color:#132033;background:linear-gradient(135deg,#ffb703 0%,#ff8f00 100%);border-color:#ffb703cc;box-shadow:0 8px 22px #ffb7033d}.hero{padding:44px 0 46px}.hero-grid{gap:24px}h1{font-size:clamp(2.18rem,12vw,3.35rem)}.hero-text{margin-top:16px;font-size:1rem}.cta-row{gap:10px;margin-top:24px}.hero .button{flex:100%;min-height:46px;padding:0 16px}.hero-logo{border-radius:20px;margin-bottom:18px}.hero-logo img{width:min(100%,290px)}.hero-card,.band{border-radius:24px;padding:24px}.work-card,.work-card.compact{min-height:340px}.section{padding:56px 0}.quick-booking-inner,.local-area{border-radius:22px;padding:22px}}@media (max-width:420px){.header-inner{grid-template-columns:auto 1fr;gap:8px 10px}.logo-mark{width:54px;height:54px}.header-service strong{font-size:.78rem}.header-service span{font-size:.62rem}.phone-link,.header-actions .button{min-height:38px;padding:0 10px;font-size:.8rem}.hero{padding-top:36px}.hero-card{padding:20px}.check-list{gap:9px;font-size:.94rem}}
