:root{--navy:#041221;--navy2:#071a2f;--panel:#0a2038;--blue:#2680ff;--blue2:#53a1ff;--white:#f7fbff;--muted:#9eb0c3;--line:rgba(97,164,255,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--white);font-family:Inter,Arial,sans-serif;line-height:1.6}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1180px)/2));position:sticky;top:0;z-index:20;background:rgba(3,15,27,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.brand-mark{font-family:"Barlow Condensed",sans-serif;font-style:italic;font-weight:800;font-size:34px;letter-spacing:-3px;position:relative}.brand-mark:after{content:"";display:inline-block;width:8px;height:30px;background:var(--blue);transform:skew(-25deg);margin-left:5px}.brand-copy{display:grid;line-height:.9}.brand-copy strong{font-size:20px;letter-spacing:2px}.brand-copy small{color:var(--blue2);font-weight:700;letter-spacing:1.2px;margin-top:7px}.desktop-nav{display:flex;gap:30px}.desktop-nav a,.phone-button{color:#fff;text-decoration:none;font-family:"Barlow Condensed";text-transform:uppercase;font-weight:700;letter-spacing:.8px}.desktop-nav a:hover{color:var(--blue2)}.phone-button{border:1px solid var(--blue);padding:10px 17px;border-radius:3px}.hero{min-height:650px;display:grid;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 30%,rgba(20,93,184,.3),transparent 38%),linear-gradient(120deg,#03101d 0%,#061a30 100%)}.blueprint-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(45,116,204,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(45,116,204,.08) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(90deg,transparent 2%,#000 45%,#000)}.blueprint-drawing{position:absolute;right:-3%;top:0;width:68%;height:100%;color:rgba(91,161,255,.52);filter:drop-shadow(0 0 9px rgba(38,128,255,.25))}.draw-lines path,.draw-lines circle{stroke-dasharray:1800;stroke-dashoffset:1800;animation:draw 7s ease forwards}@keyframes draw{to{stroke-dashoffset:0}}.hero-content{position:relative;z-index:2;padding:80px 0}.eyebrow,.section-heading>p:first-child{color:var(--blue2);text-transform:uppercase;font-family:"Barlow Condensed";font-weight:700;letter-spacing:1.7px}.hero h1,.hero h2,.section-heading h2,.contact-copy h2{font-family:"Barlow Condensed",sans-serif;text-transform:uppercase;line-height:.95;margin:0}.hero h1{font-size:clamp(64px,7.2vw,104px);max-width:720px;letter-spacing:.5px}.hero h2{color:var(--blue2);font-size:clamp(34px,4vw,58px);margin-top:14px;max-width:760px}.service-area{font-family:"Barlow Condensed";font-weight:600;text-transform:uppercase;letter-spacing:.8px;margin:26px 0}.service-area span{color:var(--blue);margin:0 7px}.hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;text-transform:uppercase;letter-spacing:.5px;border-radius:2px;font-weight:700;cursor:pointer}.primary-button{gap:22px;background:linear-gradient(135deg,#0f67df,#2388ff);color:#fff;border:1px solid #53a1ff;padding:15px 22px}.secondary-button{padding:15px 22px;color:#fff;border:1px solid rgba(111,177,255,.55);background:rgba(4,18,33,.6)}.primary-button:hover,.secondary-button:hover{filter:brightness(1.12);transform:translateY(-1px)}.section{padding:92px 0}.section-heading{margin-bottom:40px}.section-heading h2{font-size:clamp(34px,4vw,54px);max-width:820px}.section-note{color:var(--muted);max-width:720px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.card{padding:28px;min-height:230px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(145deg,rgba(12,39,67,.75),rgba(5,19,34,.6))}.service-icon{width:54px;height:54px;fill:none;stroke:var(--blue2);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px rgba(38,128,255,.22))}.service-icon-large{width:62px;height:62px;margin-top:-4px}.card h3,.process-line h3,.sample-card h3,.benefit-copy h3{font-family:"Barlow Condensed";text-transform:uppercase;font-size:24px;line-height:1.05}.card p,.process-line p,.contact-copy p,.sample-card p{color:var(--muted)}.why-section,.projects-section{padding:92px 0;background:linear-gradient(180deg,#071a2f,#051526);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.why-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.why-heading{margin:0}.benefit-rotator{min-height:310px;border:1px solid rgba(83,161,255,.35);background:linear-gradient(145deg,rgba(11,43,76,.85),rgba(3,17,31,.9));padding:38px;position:relative;overflow:hidden}.benefit-rotator:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(77,142,225,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(77,142,225,.06) 1px,transparent 1px);background-size:24px 24px;pointer-events:none}.benefit-counter,.benefit-copy,.benefit-controls{position:relative;z-index:1}.benefit-counter{font-family:"Barlow Condensed";color:var(--blue2);font-weight:800;line-height:1}.benefit-counter span{font-size:64px}.benefit-counter small{font-size:18px;color:var(--muted)}.benefit-copy{transition:opacity .3s ease,transform .3s ease}.benefit-copy.changing{opacity:0;transform:translateY(8px)}.benefit-copy h3{font-size:40px;margin:18px 0 10px}.benefit-copy p{color:#c1cfdd;font-size:17px;max-width:620px}.benefit-controls{display:flex;align-items:center;gap:16px;margin-top:28px}.benefit-controls button{width:38px;height:38px;border:1px solid rgba(83,161,255,.45);background:transparent;color:#fff;cursor:pointer}.benefit-dots{display:flex;gap:8px}.benefit-dots button{width:8px;height:8px;border-radius:50%;padding:0;background:rgba(255,255,255,.25);border:0}.benefit-dots button.active{background:var(--blue2);box-shadow:0 0 9px rgba(83,161,255,.8)}.sample-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.sample-card{min-height:310px;padding:25px;border:1px solid var(--line);background:linear-gradient(150deg,rgba(13,43,73,.9),rgba(4,19,34,.85));display:flex;flex-direction:column}.sample-card svg{width:64px;height:64px;fill:none;stroke:var(--blue2);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin-bottom:18px}.sample-card h3{margin:0 0 10px;font-size:25px}.sample-card p{font-size:14px}.sample-card>span{display:block;margin-top:auto;padding-top:20px;border-top:1px solid var(--line);color:#6baeff;text-transform:uppercase;font-family:"Barlow Condensed";font-weight:700;letter-spacing:.8px;font-size:13px}.process-line{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;position:relative}.process-line:before{content:"";position:absolute;left:8%;right:8%;top:38px;border-top:1px solid var(--blue);z-index:0}.process-line article{text-align:center;position:relative;z-index:1}.process-line b{width:76px;height:76px;border:1px solid var(--blue);background:var(--navy2);border-radius:50%;display:grid;place-items:center;margin:auto;color:var(--blue2);font-family:"Barlow Condensed";font-size:30px}.contact-section{padding:92px 0}.contact-layout{display:grid;grid-template-columns:.85fr 1.4fr;gap:70px;align-items:start}.contact-copy h2{font-size:56px}.contact-details{display:grid;gap:10px;margin-top:30px}.contact-details a,.contact-details span{color:#fff;text-decoration:none}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:grid;gap:7px;color:#c9d5e0;font-size:13px;text-transform:uppercase;font-weight:700;letter-spacing:.6px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;background:#06172a;border:1px solid #2c5c8b;color:#fff;padding:13px;font:inherit;border-radius:2px}.contact-form textarea{resize:vertical}.full{grid-column:1/-1}.hidden{display:none}footer{border-top:1px solid var(--line);padding:28px 0;background:#03101d}.footer-content{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px}.card,.process-line article,.sample-card{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.visible{opacity:1!important;transform:none!important}
@media(max-width:1050px){.sample-grid{grid-template-columns:repeat(3,1fr)}.why-layout{grid-template-columns:1fr}}
@media(max-width:900px){.desktop-nav{display:none}.phone-button{font-size:14px}.hero{min-height:620px}.blueprint-drawing{width:100%;right:-35%;opacity:.5}.service-grid{grid-template-columns:repeat(2,1fr)}.process-line{grid-template-columns:1fr 1fr}.process-line:before{display:none}.contact-layout{grid-template-columns:1fr}.contact-copy h2{font-size:46px}}
@media(max-width:700px){.sample-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.site-header{height:68px;padding:0 16px}.brand-copy{display:none}.phone-button{padding:8px 10px}.container{width:min(100% - 28px,1180px)}.hero{min-height:600px}.hero-content{padding:70px 0}.hero h1{font-size:58px}.hero h2{font-size:34px}.service-grid,.process-line,.contact-form,.sample-grid{grid-template-columns:1fr}.card{min-height:auto}.section,.why-section,.projects-section,.contact-section{padding:68px 0}.benefit-rotator{padding:28px 22px;min-height:330px}.benefit-copy h3{font-size:34px}.footer-content{flex-direction:column;gap:14px;text-align:center}.footer-content .brand-copy{display:grid}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.draw-lines path,.draw-lines circle{animation:none;stroke-dashoffset:0}.card,.process-line article,.sample-card{transition:none}.benefit-copy{transition:none}}

/* Version 1.1 sample plan viewer */
.sample-grid-four{grid-template-columns:repeat(4,1fr)}
.sample-card-link{color:inherit;text-decoration:none;padding:0;overflow:hidden;min-height:390px;transition:opacity .55s ease,transform .55s ease,border-color .2s ease,box-shadow .2s ease}
.sample-card-link:hover{border-color:rgba(83,161,255,.7);box-shadow:0 12px 34px rgba(0,0,0,.28);transform:translateY(-4px)!important}
.sample-preview{width:100%;aspect-ratio:11/7;object-fit:contain;background:#fff;border-bottom:1px solid var(--line);display:block}
.sample-card-link>div{padding:20px 22px 8px}
.sample-card-link>span{margin:0 22px 20px;padding-top:15px}
.sample-card-link>span b{font-size:15px;margin-left:4px}
@media(max-width:1050px){.sample-grid-four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.sample-grid-four{grid-template-columns:1fr}.sample-card-link{min-height:0}}

/* Version 1.1.1 layout and icon refinements */
.container{width:min(1080px,calc(100% - 64px))}
.site-header{padding-left:max(32px,calc((100% - 1080px)/2));padding-right:max(32px,calc((100% - 1080px)/2))}
.hero{min-height:620px}
.hero-content{padding:72px 0;max-width:1080px}
.hero h1{font-size:clamp(60px,6.2vw,88px);max-width:560px}
.hero h2{font-size:clamp(32px,3.4vw,48px);max-width:620px}
.blueprint-drawing{right:max(28px,calc((100% - 1080px)/2));top:52px;width:min(43vw,500px);height:520px;color:rgba(91,161,255,.52)}
.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{padding:28px 24px;min-height:235px}
.card h3{margin-top:18px}
.service-icon{width:58px;height:58px;stroke-width:2.2}
.service-icon-large{width:64px;height:64px}
@media(max-width:1100px){.container{width:min(940px,calc(100% - 48px))}.site-header{padding-left:24px;padding-right:24px}.blueprint-drawing{right:16px;width:44vw;opacity:.65}}
@media(max-width:900px){.container{width:min(760px,calc(100% - 40px))}.blueprint-drawing{right:-12%;width:62vw;opacity:.38}.hero h1{max-width:520px}.hero h2{max-width:560px}}
@media(max-width:600px){.container{width:min(100% - 28px,1080px)}.hero h1{font-size:54px}.hero h2{font-size:32px}.blueprint-drawing{right:-42%;width:105vw;opacity:.25}}


/* Version 1.2 portfolio-first layout and authentic plan hero */
.hero{overflow:hidden}
.hero-content{position:relative;z-index:3;max-width:1080px}
.hero-summary{max-width:620px;margin:24px 0 18px;color:#b9cde0;font-size:16px;line-height:1.7}
.hero-plan-visual{position:absolute;z-index:2;right:max(24px,calc((100% - 1080px)/2));top:94px;width:min(44vw,510px);height:430px;perspective:1100px;pointer-events:none}
.hero-plan-sheet{position:relative;width:100%;height:100%;overflow:hidden;border:1px solid rgba(90,167,255,.45);background:#062543;transform:rotateY(-7deg) rotateX(2deg);box-shadow:0 28px 65px rgba(0,0,0,.34),inset 0 0 45px rgba(38,126,224,.12);animation:planReveal 1.2s ease both}
.hero-plan-sheet:before{content:"ARCHITECTURAL PLAN • EXISTING / PROPOSED";position:absolute;z-index:3;top:14px;left:16px;color:#8ac3ff;font:700 12px/1 "Barlow Condensed",sans-serif;letter-spacing:1.5px}
.hero-plan-sheet:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(3,18,33,.12),transparent 35%,rgba(3,18,33,.26)),repeating-linear-gradient(0deg,transparent 0 27px,rgba(83,161,255,.035) 28px),repeating-linear-gradient(90deg,transparent 0 27px,rgba(83,161,255,.035) 28px);box-shadow:inset 0 0 0 10px rgba(2,19,35,.16)}
.hero-plan-sheet img{width:145%;height:120%;object-fit:cover;object-position:58% 45%;transform:translate(-18%,-7%);filter:grayscale(1) invert(1) sepia(.8) saturate(5) hue-rotate(175deg) brightness(.95) contrast(1.25);opacity:.52;mix-blend-mode:screen;animation:planDrift 18s ease-in-out infinite alternate}
.plan-callout,.plan-dimension{position:absolute;z-index:4;color:#9bcaff;font-family:"Barlow Condensed",sans-serif;font-weight:700;text-shadow:0 0 12px rgba(50,141,255,.65)}
.plan-callout{display:grid;place-items:center;width:30px;height:30px;border:1px solid currentColor;border-radius:50%;font-size:13px}
.callout-one{top:88px;left:52px}.callout-two{bottom:64px;right:54px}.plan-dimension{font-size:12px;letter-spacing:.8px}
.dimension-one{top:58px;right:44px}.dimension-two{left:22px;bottom:42px;transform:rotate(-90deg);transform-origin:left bottom}
@keyframes planReveal{from{opacity:0;transform:translateX(38px) rotateY(-7deg) rotateX(2deg)}to{opacity:1;transform:translateX(0) rotateY(-7deg) rotateX(2deg)}}
@keyframes planDrift{from{transform:translate(-18%,-7%) scale(1)}to{transform:translate(-15%,-5%) scale(1.025)}}
.projects-section{padding:88px 0 94px;background:linear-gradient(180deg,#061a2d,#041423);border-bottom:1px solid var(--line)}
.projects-section .section-heading{max-width:800px}
.sample-grid-four{gap:20px}
.sample-card-link{position:relative;background:linear-gradient(150deg,rgba(13,43,73,.96),rgba(4,19,34,.94));box-shadow:0 12px 28px rgba(0,0,0,.14)}
.sample-preview{transition:transform .45s ease,filter .45s ease}
.sample-card-link:hover .sample-preview{transform:scale(1.035);filter:brightness(.72) saturate(.85)}
.sample-hover-overlay{position:absolute!important;top:0;left:0;right:0;aspect-ratio:11/7;z-index:3;display:flex!important;align-items:center;justify-content:center;margin:0!important;padding:0!important;border:0!important;background:rgba(2,18,34,.45);color:#fff!important;font-size:17px!important;letter-spacing:1px!important;opacity:0;transition:opacity .3s ease;pointer-events:none}
.sample-card-link:hover .sample-hover-overlay{opacity:1}
.sample-link-label{transition:color .2s ease}
.sample-card-link:hover .sample-link-label{color:#9ac9ff}
.section{scroll-margin-top:84px}
@media(max-width:1000px){.hero-plan-visual{right:-70px;width:52vw;opacity:.65}.hero-summary{max-width:560px}.sample-grid-four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.hero-plan-visual{right:-48%;top:100px;width:110vw;height:430px;opacity:.22}.hero-plan-sheet{transform:none}.hero-content{position:relative;z-index:4}.hero-summary{font-size:15px}.projects-section{padding:68px 0}.sample-grid-four{grid-template-columns:1fr}.sample-hover-overlay{display:none!important}}
@media(prefers-reduced-motion:reduce){.hero-plan-sheet,.hero-plan-sheet img{animation:none}}

.blueprint-drawing{display:none!important}

/* Version 1.2.5 brand and header refinements */
.site-header{
  min-height:94px;
  height:94px;
  gap:34px;
  background:rgba(2,15,27,.97);
}
.brand{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  width:330px;
  min-width:270px;
  text-decoration:none;
}
.brand-logo{
  display:block;
  width:100%;
  height:auto;
  max-height:72px;
}
.desktop-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:34px;
  margin-left:auto;
}
.desktop-nav a{
  font-size:16px;
  letter-spacing:1.05px;
  padding:12px 2px;
}
.phone-button{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:0 18px;
  font-size:16px;
  white-space:nowrap;
}
.phone-icon{font-size:16px;color:#53A1FF;line-height:1}
.section{scroll-margin-top:104px}
@media(max-width:1100px){
  .site-header{gap:20px}
  .brand{width:290px;min-width:240px}
  .desktop-nav{gap:22px}
  .desktop-nav a{font-size:15px}
  .phone-button{font-size:14px;padding:0 13px}
}
@media(max-width:900px){
  .site-header{height:82px;min-height:82px}
  .brand{width:285px;min-width:220px}
  .brand-logo{max-height:62px}
}
@media(max-width:600px){
  .site-header{height:72px;min-height:72px;padding-left:14px;padding-right:14px;gap:10px}
  .brand{width:205px;min-width:0}
  .brand-logo{max-height:52px}
  .phone-button{width:44px;min-width:44px;height:42px;min-height:42px;padding:0;border-radius:2px}
  .phone-button span:last-child{display:none}
  .phone-icon{font-size:19px}
}
