:root{--navy:#0b2438;--navy2:#123a55;--gold:#f0b43c;--gold2:#ffcb62;--cream:#f7f4ed;--white:#fff;--ink:#12202a;--muted:#61717c;--line:#dce3e7;--shadow:0 20px 60px rgba(6,25,39,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:#fff;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}.announcement{background:var(--gold);color:#1a2730;text-align:center;font-size:.78rem;font-weight:800;letter-spacing:.06em;padding:8px 20px;text-transform:uppercase}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,80px);background:#fff;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--navy);color:var(--gold);font-weight:800;letter-spacing:-.08em;font-size:1.05rem}.brand strong,.brand small{display:block;line-height:1}.brand strong{font-family:"Playfair Display",serif;font-size:1.35rem}.brand small{text-transform:uppercase;letter-spacing:.25em;font-size:.65rem;font-weight:800;margin-top:7px;color:#5c6a74}.site-header nav{display:flex;gap:32px;font-weight:700;font-size:.9rem}.site-header nav a:hover{color:#a66a00}.header-call{background:var(--navy);color:#fff;border-radius:6px;padding:11px 18px;font-weight:800;font-size:.95rem}.header-call span{color:var(--gold2);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin-right:6px}.hero{min-height:650px;position:relative;display:flex;align-items:center;overflow:hidden;background:var(--navy)}.hero-image{position:absolute;inset:0;background:url('residential-deadbolt.webp') center/cover no-repeat;transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,25,39,.98) 0%,rgba(8,36,55,.92) 43%,rgba(7,31,47,.28) 72%,rgba(7,31,47,.06) 100%)}.hero-content{position:relative;z-index:2;color:#fff;width:min(680px,85%);margin-left:clamp(24px,8vw,130px);padding:70px 0 95px}.eyebrow{display:block;color:var(--gold2);font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px}.eyebrow.dark{color:#9a6704}.hero h1,.section h2,.about h2,.final-cta h2{font-family:"Playfair Display",serif;line-height:1.05;margin:0}.hero h1{font-size:clamp(3.2rem,6vw,6.2rem);letter-spacing:-.035em}.hero h1 em{font-style:normal;color:var(--gold2)}.hero-content>p{font-size:1.14rem;max-width:610px;color:#d8e4eb;margin:28px 0 34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border-radius:6px;font-weight:800;transition:.2s transform,.2s background}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--gold);color:#16242d}.button.secondary{border:1px solid rgba(255,255,255,.5);color:#fff;background:rgba(255,255,255,.06)}.trust-line{display:flex;gap:28px;margin-top:32px;color:#d8e4eb;font-size:.86rem;font-weight:700}.availability-card{position:absolute;z-index:3;right:clamp(24px,5vw,80px);bottom:0;background:#fff;min-width:260px;padding:24px 30px;box-shadow:var(--shadow)}.availability-card .status{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#4c626f}.status i{display:inline-block;width:9px;height:9px;background:#33a56a;border-radius:50%;margin-right:7px}.availability-card strong{display:block;font-size:1.4rem;margin-top:4px}.availability-card p{margin:0;color:var(--muted);font-size:.85rem}.quick-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:32px clamp(24px,7vw,110px);background:var(--cream);border-bottom:1px solid #e6e1d5}.quick-strip div{padding:2px 28px;border-left:1px solid #d8d2c6}.quick-strip div:first-child{border-left:0}.quick-strip b,.quick-strip span{display:block}.quick-strip b{font-size:.93rem}.quick-strip span{font-size:.78rem;color:var(--muted);margin-top:3px}.hardware-showcase{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:80px clamp(24px,8vw,130px) 10px;background:#fff}.hardware-card{position:relative;min-height:470px;overflow:hidden;border-radius:9px;background:var(--navy);box-shadow:var(--shadow)}.hardware-card img{position:absolute;width:100%;height:100%;object-fit:cover}.hardware-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,22,34,.96) 0%,rgba(6,28,43,.42) 55%,rgba(6,28,43,.04) 100%)}.hardware-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;color:#fff;padding:36px}.hardware-copy span{color:var(--gold2);font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.hardware-copy h2{font-family:"Playfair Display",serif;font-size:clamp(1.9rem,3vw,3rem);line-height:1.05;margin:8px 0 12px}.hardware-copy p{color:#dce7ed;max-width:530px;margin:0}.hardware-copy a{display:inline-block;color:var(--gold2);font-size:.86rem;font-weight:800;margin-top:18px}.section{padding:105px clamp(24px,8vw,130px)}.section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:end;margin-bottom:50px}.section h2,.about h2,.final-cta h2{font-size:clamp(2.3rem,4.5vw,4.2rem);letter-spacing:-.025em}.section-heading p{color:var(--muted);margin:0;max-width:480px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{border:1px solid var(--line);padding:34px;min-height:250px;display:flex;flex-direction:column;align-items:flex-start;border-radius:8px;background:#fff;transition:.2s transform,.2s box-shadow}.service:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(12,40,58,.09)}.service.featured{background:var(--navy);color:#fff;border-color:var(--navy)}.service .icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f7ead0;color:#9a6704;font-size:1.35rem;font-weight:800}.service.featured .icon{background:var(--gold);color:var(--navy)}.service h3{font-size:1.22rem;margin:24px 0 9px}.service p{margin:0;color:var(--muted);font-size:.93rem}.service.featured p{color:#c8d7e0}.service a{margin-top:auto;padding-top:22px;color:var(--gold2);font-weight:800;font-size:.86rem}.about{background:var(--navy);color:#fff;padding:105px clamp(24px,8vw,130px);display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(50px,9vw,140px);align-items:center}.about-copy>p{color:#c8d7e0;max-width:650px;font-size:1.05rem}.about ul{columns:2;list-style:none;padding:10px 0 24px;margin:0}.about li{margin:10px 0;font-size:.9rem}.about li:before{content:"✓";color:var(--gold2);font-weight:800;margin-right:9px}.quote-card{background:var(--gold);color:#172630;padding:42px;border-radius:8px;box-shadow:var(--shadow)}.quote-card>span{font-family:Georgia,serif;font-size:5rem;line-height:.5}.quote-card blockquote{font-family:"Playfair Display",serif;font-size:1.55rem;line-height:1.35;margin:22px 0}.quote-card p{font-size:.78rem;text-transform:uppercase;font-weight:800;letter-spacing:.1em;margin:0}.areas{background:#eef3f5}.area-card{background:#fff;border-radius:10px;padding:clamp(35px,6vw,75px);display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;box-shadow:0 18px 50px rgba(12,40,58,.08)}.area-card p{color:var(--muted);max-width:620px}.location-list{display:flex;flex-wrap:wrap;gap:12px}.location-list span{border:1px solid #ccd8de;background:#f7fafb;padding:11px 17px;border-radius:999px;font-weight:700;font-size:.88rem}.final-cta{text-align:center;background:var(--gold);padding:90px 24px;color:#16242d}.final-cta .eyebrow{color:#74500b}.final-cta p{margin:18px 0 28px}.button.light{background:#fff;color:var(--navy);font-size:1.1rem}.final-cta small{display:block;margin-top:16px;font-weight:700}footer{background:#061824;color:#afbec7;padding:45px clamp(24px,8vw,130px);display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:.8rem}.footer-brand{color:#fff}.footer-brand .brand-mark{background:var(--gold);color:var(--navy)}.footer-brand small{color:#afbec7}.mobile-call{display:none}
@media(max-width:900px){.site-header{height:76px}.site-header nav{display:none}.header-call span{display:none}.hero{min-height:700px;align-items:flex-end}.hero-image{background-position:62% center}.hero-overlay{background:linear-gradient(90deg,rgba(5,25,39,.96) 0%,rgba(5,25,39,.83) 70%,rgba(5,25,39,.45))}.hero-content{margin:0;padding:72px 24px 125px;width:100%}.availability-card{left:24px;right:auto;padding:18px 22px}.quick-strip{grid-template-columns:1fr 1fr;padding:22px}.quick-strip div:nth-child(3){border-left:0}.quick-strip div{margin:8px 0}.hardware-showcase{grid-template-columns:1fr;padding:55px 24px 5px}.hardware-card{min-height:430px}.section-heading,.about,.area-card{grid-template-columns:1fr;gap:35px}.service-grid{grid-template-columns:1fr 1fr}.about ul{columns:1}footer{flex-direction:column;text-align:center}}
@media(max-width:620px){body{padding-bottom:64px}.announcement{font-size:.65rem}.brand strong{font-size:1.08rem}.brand-mark{width:40px;height:40px}.header-call{font-size:.78rem;padding:9px 12px}.hero h1{font-size:3rem}.hero-content>p{font-size:1rem}.hero-actions .button{width:100%}.trust-line{flex-direction:column;gap:6px}.availability-card{display:none}.quick-strip{grid-template-columns:1fr}.quick-strip div,.quick-strip div:nth-child(3){border-left:3px solid var(--gold);padding-left:16px}.hardware-card{min-height:390px}.hardware-copy{padding:26px}.section{padding:75px 22px}.section-heading{gap:20px}.service-grid{grid-template-columns:1fr}.service{min-height:220px}.about{padding:75px 22px}.area-card{padding:30px 24px}.final-cta{padding:70px 22px}footer{padding:40px 22px}.mobile-call{display:flex;position:fixed;z-index:30;left:0;right:0;bottom:0;height:64px;align-items:center;justify-content:center;background:var(--gold);color:#15242d;font-weight:800;box-shadow:0 -6px 20px rgba(0,0,0,.2)}}
.service{padding:0;min-height:330px;align-items:stretch;overflow:hidden}.service>img{display:block;width:100%;height:175px;object-fit:cover}.service-copy{padding:25px 28px 28px;display:flex;flex:1;flex-direction:column;align-items:flex-start}.service h3{margin:0 0 9px}.service a{padding-top:18px}
@media(max-width:620px){.service{min-height:0}.service>img{height:210px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service{transition:none}}
