
:root{--navy:#0b2b46;--blue:#174f76;--blue2:#e8f0f4;--cream:#f7f4ec;--gold:#ad8552;--ink:#173246;--muted:#5b6c77}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#edf2f5;color:var(--ink);font-family:Georgia,"Times New Roman",serif}.review{background:#7d2222;color:#fff;text-align:center;padding:8px;font:700 11px Arial;letter-spacing:.14em}.brand{padding:24px 5vw;background:linear-gradient(110deg,#e4edf2,#faf9f4,#d8e5ec);border-bottom:1px solid #aebdc6}.brandin{max-width:1320px;margin:auto;display:flex;justify-content:space-between;align-items:end}.logo{font-size:28px;line-height:.9;color:var(--navy);font-weight:700}.logo small{display:block;font:600 10px Arial;letter-spacing:.2em;margin-top:9px}.tag{text-align:right;color:var(--navy)}.tag b{font-size:25px}.tag div{font:600 10px Arial;letter-spacing:.14em;margin-bottom:7px}.tag small{font:600 9px Arial;letter-spacing:.2em}nav{background:var(--navy);position:sticky;top:0;z-index:20}nav .navin{max-width:1320px;margin:auto;display:flex;justify-content:center}nav a{color:#fff;text-decoration:none;padding:15px 22px;font:600 13px Arial;border-left:1px solid #ffffff20;white-space:nowrap}nav a.active{background:#1b557b;box-shadow:inset 0 -3px var(--gold)}.hero{min-height:360px;background:linear-gradient(90deg,rgba(6,32,52,.86),rgba(6,32,52,.25)),var(--hero) center/cover;display:flex;align-items:center}.heroin{width:min(1320px,90%);margin:auto;color:#fff}.hero small,.eyebrow{font:700 10px Arial;letter-spacing:.18em}.hero h1{font-size:50px;margin:9px 0}.hero .rule{width:72px;height:3px;background:var(--gold);margin:17px 0}.hero p{font:16px/1.65 Arial;max-width:650px;color:#edf4f7}.btn{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;padding:13px 18px;font:700 12px Arial;letter-spacing:.04em;border:1px solid #2d678c}.btn.gold{background:var(--gold);border-color:var(--gold)}main{max-width:1320px;margin:auto;padding:44px 28px 58px}.intro{text-align:center;max-width:820px;margin:0 auto 32px}.intro .eyebrow{color:#8a6841}.intro h2{font-size:35px;color:var(--navy);margin:8px 0}.intro p,.copy{font:14px/1.7 Arial;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid #c6d2da;border-top:4px solid var(--gold);padding:22px;box-shadow:0 8px 22px #173b5510}.card h3{color:var(--navy);font-size:21px;margin:0 0 8px}.band{background:var(--blue2);border-top:4px solid var(--blue);padding:28px;margin-top:28px}.two{display:grid;grid-template-columns:1fr 1fr;gap:26px}.stage{background:#fff;border:1px solid #c6d2da;padding:25px}.stage .n{display:inline-grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--blue);color:#fff;font:700 13px Arial}.stage h3{color:var(--navy);font-size:24px;margin:12px 0 7px}.list{font:14px/1.7 Arial;color:var(--muted);padding-left:20px}.sitefoot{background:#08263d;color:#dbe5eb;padding:28px;text-align:center;font:11px Arial}.stockgrid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.plan{background:#fff;border:1px solid #bdcbd4;box-shadow:0 9px 24px #173b5514;overflow:hidden}.planhead{background:var(--navy);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:end}.planhead h2{margin:0;font-size:25px}.planhead span{font:700 12px Arial;color:#e9d4aa}.planmedia{display:grid;grid-template-columns:1.12fr .88fr;min-height:280px}.planmedia img{width:100%;height:100%;object-fit:cover;min-height:280px}.planmedia .drawing{object-fit:contain;background:#fff}.specs{padding:18px 20px;border-top:3px solid var(--gold);display:grid;grid-template-columns:repeat(2,1fr);gap:8px 18px;font:13px Arial;color:#536570}.specs b{color:var(--navy)}.wideplan{grid-column:1/-1}.quote{background:linear-gradient(120deg,#0b2e4b,#18567e);color:#fff;padding:32px;text-align:center;margin-top:28px}.quote h2{margin:0 0 8px}.contactgrid{display:grid;grid-template-columns:1.12fr .88fr;gap:25px}.formslot{background:#fff;border:1px solid #c6d2da;padding:28px}.placeholder{border:2px dashed #88a4b5;background:#f5f9fb;padding:28px;text-align:center;font:14px/1.6 Arial;color:#596d79}.sideimg{background:#fff;border:1px solid #c6d2da}.sideimg img{width:100%;display:block;aspect-ratio:16/7;object-fit:cover}.sideimg div{padding:25px}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.aboutgrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:26px}.portrait{background:linear-gradient(145deg,#dfe9ee,#f9f7ef);min-height:360px;display:grid;place-items:center;border:1px solid #c6d2da;color:#71818b;text-align:center;padding:30px;font:14px Arial}.homehero{min-height:520px}.homehero h1{font-size:58px}.homepaths{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.path{background:#fff;border:1px solid #c6d2da;border-top:4px solid var(--gold);padding:22px}.path h3{color:var(--navy);margin:0 0 8px}.path a{color:var(--blue);font:700 12px Arial;text-decoration:none}.note{font:12px/1.5 Arial;color:#6a7780}
@media(max-width:900px){.tag{display:none}nav .navin{justify-content:flex-start;overflow:auto}.cards,.timeline{grid-template-columns:1fr 1fr}.stockgrid,.two,.contactgrid,.aboutgrid{grid-template-columns:1fr}.planmedia{grid-template-columns:1fr}.homepaths{grid-template-columns:1fr 1fr}.homehero h1{font-size:46px}}
@media(max-width:560px){main{padding:32px 15px}.hero{min-height:310px}.hero h1,.homehero h1{font-size:38px}.cards,.timeline,.homepaths{grid-template-columns:1fr}.stockgrid{grid-template-columns:1fr}.specs{grid-template-columns:1fr}.brand{padding:20px}.planhead{align-items:flex-start;flex-direction:column;gap:5px}}

.logoimg{display:block;flex:0 0 auto}
.logoimg img{display:block;width:185px;height:auto;max-height:112px;object-fit:contain;object-position:left center}
@media(max-width:560px){.logoimg img{width:145px;max-height:92px}}

/* Refined SDS identity lockup: approved logo + restored header text */
.brandleft{display:flex;align-items:center;gap:24px;min-width:0}
.logoimg{position:relative;padding-right:24px}
.logoimg:after{content:"";position:absolute;right:0;top:10%;height:80%;width:1px;background:linear-gradient(transparent,#9eb0bb 18%,#9eb0bb 82%,transparent)}
.logoimg img{width:155px;max-height:96px}
.brandcopy{display:flex;flex-direction:column;color:var(--navy);padding-top:2px}
.brandcopy strong{font-size:21px;letter-spacing:.055em;line-height:1.05}
.brandcopy span{font:700 10px Arial,sans-serif;letter-spacing:.16em;margin-top:7px;color:#355a72}
.brandcopy small{font:12px Georgia,serif;font-style:italic;margin-top:6px;color:#65737b}
@media(max-width:1050px){.brandcopy strong{font-size:18px}.tag b{font-size:21px}.logoimg img{width:135px}}
@media(max-width:760px){.brandin{align-items:center}.brandleft{gap:15px}.logoimg{padding-right:15px}.logoimg img{width:120px}.brandcopy strong{font-size:16px}.brandcopy span{font-size:8px}.brandcopy small{font-size:10px}}
@media(max-width:480px){.brandcopy strong{font-size:14px}.brandcopy span{letter-spacing:.09em}.logoimg img{width:105px}}

/* Transparent logo integration */
.logoimg img{background:transparent!important;mix-blend-mode:multiply;object-fit:contain}
.ownerbrand{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:linear-gradient(145deg,#dfe9ee,#f9f7ef)}
.ownerbrand img{width:min(68%,260px);height:auto;object-fit:contain;mix-blend-mode:multiply}
.ownerbrand h2{margin:0;color:var(--navy);font-size:28px}
.ownerbrand p{margin:5px 0;color:#536773}

/* Restored completed Stock Plan presentation set */

.vincent-catalog{display:grid;gap:30px}.vcard{background:#fff;border:1px solid #bdcbd4;box-shadow:0 10px 26px rgba(23,59,85,.10);overflow:hidden}
.vcard .vincent-feature{grid-template-columns:minmax(0,1.55fr) minmax(260px,.45fr)}
.vcard .vincent-feature>img{aspect-ratio:16/8.5;min-height:0;object-fit:cover}
@media(max-width:900px){.vcard .vincent-feature{grid-template-columns:1fr}.vcard .vincent-feature>img{aspect-ratio:16/9}}



/* Stock plan drawings directly below each 3D house presentation */
.house-plan-below{
  margin:0;
  padding:24px 28px 30px;
  background:#f7f9fa;
  border-top:1px solid #c4d1d9;
}
.house-plan-below .plan-label{
  color:var(--navy);
  font:700 11px Arial,sans-serif;
  letter-spacing:.15em;
  text-align:left;
  padding:0 0 12px;
}
.house-plan-below img{
  display:block;
  width:100%;
  max-width:1120px;
  height:auto;
  margin:0 auto;
  object-fit:contain;
  background:#fff;
  border:1px solid #c5d1d8;
  box-shadow:0 7px 20px rgba(23,59,85,.07);
}
@media(max-width:700px){.house-plan-below{padding:16px 14px 20px}}

/* Vincent complete plan set below main graphic */
.vincent-full-set{padding-top:26px!important}
.vincent-floor-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  align-items:start;
}
.full-plan-sheet{
  background:#fff;
  border:1px solid #c5d1d8;
  padding:14px;
  box-shadow:0 7px 20px rgba(23,59,85,.07);
}
.full-plan-sheet img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  background:#fff;
}
.plan-sub-label{
  color:var(--navy);
  font:700 10px Arial,sans-serif;
  letter-spacing:.14em;
  text-align:center;
  padding:2px 0 12px;
}
@media(max-width:760px){
  .vincent-floor-grid{grid-template-columns:1fr}
}

/* SDS Master Build v1 — QA/accessibility consolidation */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
  outline:3px solid var(--gold);outline-offset:3px
}
img{max-width:100%}
nav a[aria-current="page"]{background:#1b557b;box-shadow:inset 0 -3px var(--gold)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Master v1 revision: cooler Vincent-family house imagery + restored garage products */
.garage-stock-section{display:grid;gap:30px;margin-top:46px}
.garage-section-intro{text-align:center;margin-bottom:4px}
.garage-section-intro h2{color:var(--navy);margin:6px 0 8px}
.garage-section-intro p{color:#60717b;margin:0}
.garage-main{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.45fr);background:#f8fafb}
.garage-main>img{display:block;width:100%;height:100%;min-height:360px;object-fit:contain;background:#fff}
.garage-plan-below{padding:24px 28px 30px;background:#f7f9fa;border-top:1px solid #c4d1d9}
.garage-plan-below .plan-label{color:var(--navy);font:700 11px Arial,sans-serif;letter-spacing:.15em;padding:0 0 12px}
.garage-plan-below img{display:block;width:100%;max-width:1120px;height:auto;margin:0 auto;background:#fff;border:1px solid #c5d1d8}
@media(max-width:900px){.garage-main{grid-template-columns:1fr}.garage-main>img{min-height:0}}
@media(max-width:700px){.garage-plan-below{padding:16px 14px 20px}}

/* Stock-plan text breathing room — Master Build v1.3 */
.vcard .restored-head{
  padding:20px 26px 16px;
}
.vcard .restored-head h2{
  margin:0 0 7px;
}
.vcard .restored-head span{
  display:block;
  margin-top:4px;
}
.vcard .vincent-copy{
  padding:24px 26px 26px;
}
.vcard .vincent-copy h3{
  margin:0 0 12px;
}
.vcard .vincent-copy p{
  margin:0 0 18px;
  line-height:1.6;
}
.vcard .spec-mini{
  display:grid;
  gap:0;
}
.vcard .spec-mini b,
.vcard .spec-mini span{
  display:block;
  padding:9px 0;
  line-height:1.35;
  border-bottom:1px solid #d7e0e5;
}
.vcard .spec-mini span:last-child{
  border-bottom:0;
}
.house-plan-below .plan-label,
.garage-plan-below .plan-label{
  padding-left:4px;
  padding-right:4px;
}
@media(max-width:560px){
  .vcard .restored-head{padding:18px 18px 14px}
  .vcard .vincent-copy{padding:20px 18px 22px}
}

/* SDS Project Inquiry Form */
.contact-form-section{max-width:980px;margin:42px auto;padding:0 24px 54px}
.contact-form-intro{max-width:720px;margin-bottom:24px}
.contact-form-intro h2{color:var(--navy);margin:6px 0 10px}
.contact-form-intro p{line-height:1.65;color:#526773}
.sds-project-form{background:#fff;border:1px solid #c8d4db;padding:30px;box-shadow:0 12px 34px rgba(23,59,85,.08)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}
.form-field{display:flex;flex-direction:column;gap:7px}
.form-span-2{grid-column:1/-1}
.form-field label{font-weight:700;color:var(--navy)}
.form-field .optional,.form-field small{font-weight:400;color:#6d7d86}
.form-field input,.form-field select,.form-field textarea{
  width:100%;box-sizing:border-box;border:1px solid #aebfc9;background:#fbfcfd;
  padding:12px 13px;font:inherit;color:#173b55;border-radius:2px
}
.form-field textarea{resize:vertical;min-height:160px}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{
  border-color:#1b557b;outline:3px solid rgba(27,85,123,.16);outline-offset:1px
}
.form-field input[type=file]{background:#f5f8fa;padding:11px}
.form-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px}
.form-submit{border:0;cursor:pointer}
.form-note{margin:0;color:#6d7d86;font-size:.9rem}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-status{margin-top:22px;padding:18px 20px;border-left:4px solid var(--gold);background:#f4f8fa;color:var(--navy);line-height:1.55}
.form-status-success{padding:24px}
@media(max-width:700px){
  .contact-form-section{padding:0 16px 38px}
  .sds-project-form{padding:22px 18px}
  .form-grid{grid-template-columns:1fr}
  .form-span-2{grid-column:auto}
}

/* =========================================================
   HOMEPAGE PROJECT GALLERY
   ========================================================= */

.home-gallery {
  width: 100%;
  background: #07131f;
  padding: 34px 0 42px;
  overflow: hidden;
}

.home-gallery-track {
  display: flex;
  gap: 24px;
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0 5vw 22px;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}

.home-gallery-track img {
  flex: 0 0 auto;
  width: min(82vw, 1050px);
  height: min(62vw, 700px);
  object-fit: contain;
  display: block;
  background: #ffffff;
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 18px 45px rgba(0,0,0,.32);
  scroll-snap-align: center;
}

.home-gallery-track img:first-child {
  margin-left: 2vw;
}

.home-gallery-track img:last-child {
  margin-right: 5vw;
}

@media (max-width: 768px) {
  .home-gallery {
    padding: 22px 0 28px;
  }

  .home-gallery-track {
    gap: 14px;
    padding: 0 18px 16px;
  }

  .home-gallery-track img {
    width: 88vw;
    height: 66vw;
  }

  .home-gallery-track img:first-child {
    margin-left: 0;
  }
}

/* Homepage gallery refinement */
.home-gallery {
  padding: 18px 0 22px;
  background: #071725;
}

.home-gallery-track {
  gap: 16px;
  padding: 14px 24px 18px;
}

.home-gallery-track img {
  width: auto;
  height: 430px;
  max-width: 72vw;
  object-fit: contain;
  background: #ffffff;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 8px 24px rgba(0,0,0,.24);
}

@media (max-width: 768px) {
  .home-gallery {
    padding: 12px 0 16px;
  }

  .home-gallery-track {
    gap: 10px;
    padding: 10px 16px 14px;
  }

  .home-gallery-track img {
    width: auto;
    height: 58vw;
    max-height: 430px;
    max-width: 88vw;
  }
}

/* Refined horizontal gallery scrollbar */
.home-gallery-track {
  scrollbar-width: thin;
  scrollbar-color: #9a7445 #071725;
}

.home-gallery-track::-webkit-scrollbar {
  height: 6px;
}

.home-gallery-track::-webkit-scrollbar-track {
  background: #071725;
}

.home-gallery-track::-webkit-scrollbar-thumb {
  background: #9a7445;
  border-radius: 10px;
}

.home-gallery-track::-webkit-scrollbar-thumb:hover {
  background: #b58a54;
}
