:root{--orange:#ff5a16;--orange-dark:#ef4c09;--ink:#08132b;--muted:#777;--soft:#f6f6f6;--line:#e7e7e7;--max:1220px;--shadow:0 18px 50px rgba(8,19,43,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.75;background:#fff}body.modal-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.topbar{height:40px;border-bottom:1px solid var(--line);color:#a2a2a2;font-size:14px}.topbar-inner{height:100%;display:flex;justify-content:flex-end}.topbar a{display:flex;align-items:center;gap:9px;padding:0 22px;border-left:1px solid var(--line)}.topbar a span:first-child{color:var(--orange)}.nav-shell{background:#fff;position:relative;z-index:20}.nav-inner{height:82px;display:flex;align-items:center;gap:34px}.brand{margin-right:auto}.brand img{width:195px}.main-menu{display:flex;align-items:center;gap:34px}.main-menu a{font-weight:700;color:#8b8b8b;font-size:15px}.main-menu a:hover,.main-menu a.active{color:var(--orange)}.quote-btn,.button{border:0;background:var(--orange);color:#fff;font-weight:700;padding:17px 30px;cursor:pointer;transition:.2s}.quote-btn:hover,.button:hover{background:var(--orange-dark);transform:translateY(-1px)}.menu-toggle{display:none;border:0;background:none;width:40px;height:40px;padding:8px}.menu-toggle span{display:block;height:2px;background:var(--ink);margin:6px 0}
.hero{min-height:690px;background:linear-gradient(90deg,rgba(5,13,30,.68),rgba(7,12,22,.2)),url("hero.jpg") center/cover;display:flex;align-items:center;color:#fff}.hero-content{max-width:760px;padding:105px 0 150px}.eyebrow{font-size:16px;font-weight:700;margin:0 0 22px;color:var(--orange)}.hero .eyebrow{color:#fff}.eyebrow:before{content:"";display:inline-block;width:20px;height:2px;background:currentColor;vertical-align:middle;margin-right:12px}.hero h1{font-size:56px;line-height:1.12;letter-spacing:-1.6px;margin:0 0 28px}.highlight{border-bottom:8px solid var(--orange)}.hero .lead{font-size:18px;max-width:590px;margin-bottom:36px}.button{display:inline-flex;align-items:center;justify-content:center;min-width:165px}.contact-cards{margin-top:-115px;position:relative;z-index:3}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;box-shadow:var(--shadow)}.contact-card{text-align:center;padding:38px 25px 52px;border-right:1px solid var(--line)}.contact-card:last-child{border:0}.contact-card img{width:48px;height:48px;margin:0 auto 18px}.contact-card h3{font-size:22px;margin:0 0 12px}.contact-card p{margin:0;color:#aaa}
.section{padding:110px 0}.section.soft{background:var(--soft)}.about-grid,.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.section h2,.page-heading{font-size:40px;line-height:1.25;letter-spacing:-.7px;margin:0 0 24px}.section-copy{color:#555;font-size:17px;margin-bottom:32px}.about-image img{width:100%;aspect-ratio:4/3;object-fit:cover}.services-head{text-align:center;max-width:1000px;margin:0 auto 60px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service-card{background:var(--soft);overflow:hidden}.service-card img{width:100%;height:255px;object-fit:cover;transition:.35s}.service-card:hover img{transform:scale(1.025)}.service-card h3{font-size:22px;margin:0;padding:26px 30px 38px}.cta-box{margin-top:95px;background:var(--soft);padding:70px 100px;border-bottom:5px solid var(--orange);display:flex;justify-content:space-between;align-items:center;gap:35px}.cta-box h2{font-size:31px;margin-bottom:12px}.cta-box p{margin:0;color:#555}
.inner-hero{height:290px;color:#fff;display:grid;place-items:center;text-align:center;background:linear-gradient(rgba(8,19,43,.62),rgba(8,19,43,.62)),url("portfolio-hero.jpg") center/cover}.inner-hero h1{font-size:42px;margin:0 0 4px}.breadcrumb{color:#eee}.story-copy p{color:#555}.vision-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;align-items:center}.vision-images{display:grid;grid-template-columns:1fr 1fr;gap:20px}.vision-images img{width:100%;height:360px;object-fit:cover}.vision-images img:last-child{margin-top:65px}
.portfolio-hero{width:min(var(--max),calc(100% - 48px));height:460px;margin:40px auto 80px;background:url("portfolio-hero.jpg") center/cover}.portfolio-title{text-align:center;font-size:42px;margin:0 0 40px}.portfolio-title span{color:var(--orange)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.gallery a{overflow:hidden;display:block}.gallery img{width:100%;aspect-ratio:1.35/1;object-fit:cover;transition:.3s}.gallery a:hover img{transform:scale(1.04)}.portfolio-cta{text-align:center;padding:110px 20px 140px;background:var(--soft);margin-top:90px}.portfolio-cta h2{font-size:38px}
.contact-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.contact-method{text-align:center}.contact-method img{width:54px;height:54px;margin:0 auto 20px}.contact-method h3{font-size:22px;margin:0 0 10px}.contact-method p{color:#777}.contact-form-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form textarea,.contact-form .full{grid-column:1/-1}.contact-form input,.contact-form textarea,.quote-form input,.quote-form textarea,.subscribe-form input{width:100%;border:1px solid #dedede;background:#fff;padding:16px 18px;outline:none}.contact-form input:focus,.contact-form textarea:focus,.quote-form input:focus,.quote-form textarea:focus{border-color:var(--orange)}textarea{min-height:150px;resize:vertical}
.footer-main{background:var(--orange);color:#fff;padding:90px 0 65px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:65px}.footer-logo{width:210px;margin-bottom:28px}.footer-main h3{font-size:18px;margin:0 0 24px}.footer-main p{margin:0}.subscribe-form>div{display:flex}.subscribe-form input{border:0;min-width:0}.subscribe-form button{background:transparent;border:3px solid #fff;color:#fff;font-weight:700;padding:10px 28px}.subscribe-form label{display:block;font-size:13px;margin-top:14px}.subscribe-form label input{width:auto;padding:0}.copyright{text-align:center;background:var(--orange-dark);color:#fff;padding:18px;font-size:14px}
.modal{position:fixed;inset:0;z-index:100;visibility:hidden}.modal.open{visibility:visible}.modal-backdrop{position:absolute;inset:0;background:rgba(3,10,22,.6);opacity:0;transition:.25s}.modal.open .modal-backdrop{opacity:1}.quote-panel{position:absolute;right:0;top:0;height:100%;width:min(540px,100%);background:#fff;padding:70px 55px;transform:translateX(100%);transition:.3s;overflow:auto}.modal.open .quote-panel{transform:none}.quote-panel h2{font-size:38px;margin:0 0 10px}.quote-panel>p{color:#666}.modal-close{position:absolute;right:24px;top:18px;border:0;background:none;font-size:38px;cursor:pointer}.quote-contacts{display:grid;gap:8px;margin:28px 0}.quote-form{display:grid;gap:14px}
@media(max-width:900px){.container{width:min(100% - 40px,var(--max))}.topbar{height:34px}.topbar-inner{width:100%;padding-left:48%;}.topbar a{flex:1;justify-content:center;padding:0;border-left:1px solid var(--line)}.topbar a span:last-child{display:none}.nav-inner{height:72px}.brand img{width:145px}.desktop-quote,.main-menu{display:none}.menu-toggle{display:block}.menu-open .main-menu{display:flex;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:10px 20px 22px;box-shadow:0 20px 30px rgba(0,0,0,.13)}.main-menu a{padding:10px;border-bottom:1px solid #eee}.hero{min-height:710px;background-position:center}.hero-content{padding:90px 6px 120px;max-width:340px}.hero h1{font-size:39px;line-height:1.28;letter-spacing:-.7px}.hero .lead{font-size:16px}.highlight{border-width:5px}.contact-cards{margin-top:0;padding:85px 0;background:var(--soft)}.contact-grid{display:grid;grid-template-columns:1fr;background:none;box-shadow:none;gap:16px}.contact-card{background:#fff;border:0;padding:36px 20px}.about-grid,.split,.vision-grid,.contact-form-wrap{grid-template-columns:1fr;gap:45px}.section{padding:80px 0}.section h2,.page-heading{font-size:29px}.services-grid{grid-template-columns:1fr;gap:24px}.service-card h3{padding:22px 25px 30px}.cta-box{margin-top:65px;padding:50px 28px;display:block}.cta-box .button{margin-top:24px}.inner-hero{height:240px}.inner-hero h1{font-size:34px}.vision-images img{height:300px}.portfolio-hero{height:260px;margin-top:25px;margin-bottom:60px}.portfolio-title{font-size:30px;line-height:1.25}.gallery{grid-template-columns:1fr}.contact-intro{grid-template-columns:1fr;gap:45px}.contact-form{grid-template-columns:1fr}.contact-form textarea,.contact-form .full{grid-column:auto}.footer-main{padding:75px 0}.footer-grid{grid-template-columns:1fr;gap:50px}.subscribe-form>div{display:block}.subscribe-form button{width:100%;margin-top:10px}.quote-panel{padding:65px 27px}}
@media(max-width:480px){.container{width:calc(100% - 50px)}.hero{min-height:715px}.hero h1{font-size:38px}.section-copy{font-size:16px}.services-head{text-align:center}.service-card img{height:auto}.portfolio-hero{width:calc(100% - 30px)}.vision-images{gap:10px}.vision-images img{height:230px}.footer-logo{width:200px}}
