@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --navy:#091522; --navy2:#0d2235; --blue:#1477c9; --blue2:#2b9be8;
  --white:#fff; --off:#f3f6f8; --text:#17212b; --muted:#687582; --line:#dce4e9;
  --shadow:0 24px 60px rgba(8,25,40,.14); --radius:20px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.6}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
.container{width:min(1160px,calc(100% - 40px));margin:auto}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;background:white;padding:10px;z-index:1000}
.site-header{position:sticky;top:0;z-index:50;background:rgba(9,21,34,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{min-height:84px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;gap:10px;align-items:center;color:white;line-height:.9}
.brand-mark{width:58px;color:var(--blue2)}
.brand strong{display:block;font-family:"Barlow Condensed",sans-serif;font-size:27px;letter-spacing:.04em}
.brand small{display:block;color:var(--blue2);font-weight:800;letter-spacing:.15em;font-size:11px;margin-top:6px}
.main-nav{display:flex;align-items:center;gap:28px;color:white;font-size:14px;font-weight:700}
.main-nav a:hover{color:var(--blue2)}
.nav-cta{padding:11px 17px;border:1px solid var(--blue2);border-radius:999px}
.menu-button{display:none}
.hero{background:linear-gradient(135deg,var(--navy) 0%,#0a1e30 65%,#133d5b 100%);color:white;overflow:hidden}
.hero-grid{min-height:700px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:55px;padding-top:50px;padding-bottom:60px}
.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:800;color:var(--blue2);margin:0 0 16px}
h1,h2,h3{font-family:"Barlow Condensed",sans-serif;line-height:1}
h1{font-size:clamp(56px,7vw,92px);margin:0 0 25px;letter-spacing:-.035em}
h1 span{color:var(--blue2)}
.hero-lead{font-size:20px;max-width:650px;color:#d7e3eb;margin-bottom:30px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border-radius:8px;font-weight:800;border:1px solid transparent;cursor:pointer;font:700 15px Inter}
.primary{background:var(--blue);color:#fff}.primary:hover{background:#0c65ad}
.secondary{border-color:#7b93a6;color:white}.secondary:hover{background:rgba(255,255,255,.08)}
.trust-list{display:flex;gap:24px;list-style:none;padding:0;margin:28px 0 0;color:#c4d2db;font-size:13px}
.trust-list li:before{content:"✓";color:var(--blue2);font-weight:900;margin-right:7px}
.hero-visual{position:relative}
.shop-scene{height:445px;background:linear-gradient(#162a3a 0 72%,#202b34 72%);border:1px solid rgba(255,255,255,.15);border-radius:28px;position:relative;overflow:hidden;box-shadow:0 35px 70px rgba(0,0,0,.35)}
.shop-scene:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 56px,rgba(255,255,255,.035) 57px 59px)}
.shop-light{position:absolute;top:32px;height:7px;width:115px;background:#dff5ff;box-shadow:0 0 22px #fff;border-radius:8px}.l1{left:65px}.l2{right:65px}
.rv{position:absolute;width:64%;height:230px;left:18%;top:120px;background:linear-gradient(110deg,#f8fbfd,#c9d3db);border-radius:34px 34px 10px 10px;border:6px solid #72808a;box-shadow:0 22px 35px rgba(0,0,0,.35)}
.rv:before{content:"";position:absolute;top:26px;left:28px;right:28px;height:38px;border-top:10px solid #1c2e3d;border-bottom:5px solid var(--blue)}
.rv-window{position:absolute;width:38%;height:54px;left:31%;top:83px;background:#172a39;border:7px solid #586b79;border-radius:6px}
.rv-line{position:absolute;left:0;right:0;bottom:45px;height:9px;background:var(--blue)}
.rv-wheel{position:absolute;bottom:-25px;width:49px;height:49px;background:#0a0d10;border:9px solid #4a5660;border-radius:50%}.w1{left:22%}.w2{right:22%}
.rv-ac{position:absolute;width:94px;height:26px;left:28%;top:-28px;background:#98a5ad;border-radius:8px 8px 2px 2px}
.rv-vent{position:absolute;width:45px;height:17px;right:23%;top:-19px;background:#dce5e9;border:3px solid #83919a}
.platform{position:absolute;top:172px;width:21%;height:155px;border-top:14px solid #bb8b54}.platform:before,.platform:after,.platform i{content:"";position:absolute;width:9px;height:150px;background:#9a6e3f;top:-4px}.platform:before{left:4px}.platform:after{right:4px}.platform i:nth-child(1){left:33%}.platform i:nth-child(2){left:66%}.platform i:nth-child(3){display:none}
.platform.left{left:1%}.platform.right{right:1%}
.floor{position:absolute;bottom:0;left:0;right:0;height:75px;background:linear-gradient(12deg,#29343d,#1b242b)}
.visual-badge{position:absolute;right:-18px;bottom:24px;background:var(--blue);padding:17px 22px;border-radius:10px;box-shadow:var(--shadow)}
.visual-badge strong,.visual-badge span{display:block}.visual-badge strong{font-family:"Barlow Condensed";font-size:22px}.visual-badge span{font-size:12px}
.benefit-strip{background:#fff;border-bottom:1px solid var(--line)}
.benefits{display:grid;grid-template-columns:repeat(4,1fr)}
.benefits article{padding:34px 28px;border-right:1px solid var(--line)}.benefits article:first-child{border-left:1px solid var(--line)}
.benefits span{font-weight:900;color:var(--blue);font-size:12px}.benefits h3{font-size:25px;margin:7px 0 8px}.benefits p{margin:0;color:var(--muted);font-size:13px}
.section{padding:105px 0}
.section-heading{max-width:720px;margin-bottom:50px}.section-heading.compact{margin-bottom:35px}
.section-heading h2,.facility-grid h2,.about-grid h2,.contact-grid h2{font-size:clamp(42px,5vw,64px);margin:0 0 18px;letter-spacing:-.02em}
.section-heading>p:last-child{color:var(--muted);font-size:18px}
.services-section{background:var(--off)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service-card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:30px;min-height:300px;transition:.2s}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.service-card.featured{background:var(--navy);color:white;border-color:var(--navy)}
.service-card h3{font-size:31px;margin:24px 0 13px}.service-card p{color:var(--muted)}
.service-card.featured p{color:#b9c8d2}.service-card ul{padding-left:19px;color:#d4e1e9}
.service-icon{width:48px;height:48px;border-radius:12px;background:#e4f3fd;color:var(--blue);display:grid;place-items:center;font-weight:900;font-size:13px}
.featured .service-icon{background:var(--blue);color:white}
.dark-section{background:var(--navy);color:white}
.facility-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}
.large-copy{font-size:19px;color:#c0ced8}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}
.check-grid span{border:1px solid #294055;padding:14px;border-radius:8px;color:#dbe7ee}.check-grid span:before{content:"✓";color:var(--blue2);margin-right:9px}
.facility-panel{background:linear-gradient(150deg,#12324b,#0b1b2a);border:1px solid #29465d;border-radius:var(--radius);padding:45px}
.panel-number{font:800 82px/1 "Barlow Condensed";color:var(--blue2)}
.facility-panel h3{font-size:34px;margin:8px 0}.facility-panel p{color:#c0ced8}.facility-panel a{color:var(--blue2);font-weight:800}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}
.steps article{border-top:5px solid var(--blue);background:var(--off);padding:28px 22px;min-height:230px}
.steps b{font:800 48px/1 "Barlow Condensed";color:#b9c9d4}.steps h3{font-size:28px;margin:12px 0}.steps p{font-size:14px;color:var(--muted)}
.about-section{background:#eaf0f4}
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
.quote-block{background:var(--blue);color:white;padding:48px;border-radius:var(--radius);font:700 35px/1.17 "Barlow Condensed";box-shadow:var(--shadow)}
.about-grid>div:last-child>p:last-child{color:var(--muted)}
.contact-section{background:white}
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px}
.phone-display{font:800 44px/1 "Barlow Condensed";color:var(--blue);display:block;margin:26px 0 12px}
.small-note,.form-note{font-size:12px;color:var(--muted)}
.contact-form{background:var(--off);padding:35px;border-radius:var(--radius);border:1px solid var(--line)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font-size:13px;font-weight:800;margin-bottom:15px}
input,textarea{display:block;width:100%;margin-top:7px;border:1px solid #cbd6dd;border-radius:8px;background:white;padding:13px;font:15px Inter;outline:none}
input:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,119,201,.12)}
.full{width:100%}
.site-footer{background:#06101a;color:white;padding:60px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.3fr .6fr .8fr 1fr;gap:28px;align-items:start}
.footer-grid>div:not(.brand){display:flex;flex-direction:column;gap:7px;font-size:13px;color:#acbdc8}
.footer-grid strong{color:white}.footer-grid a{color:var(--blue2)}
.footer-brand .brand-mark{width:50px}.footer-brand strong{font-size:23px}
.legal{border-top:1px solid #24323c;margin-top:40px;padding-top:20px;color:#768995;font-size:12px}
.mobile-call{display:none}
@media (max-width:900px){
  .menu-button{display:block;background:none;color:white;border:1px solid #557083;border-radius:6px;padding:8px 12px}
  .main-nav{display:none;position:absolute;left:0;right:0;top:84px;background:var(--navy);padding:20px;flex-direction:column;align-items:flex-start}
  .main-nav.open{display:flex}
  .hero-grid,.facility-grid,.about-grid,.contact-grid{grid-template-columns:1fr}
  .hero-grid{padding-top:85px}.hero-visual{max-width:650px}.benefits{grid-template-columns:1fr 1fr}
  .service-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
  .container{width:min(100% - 28px,1160px)}.nav-wrap{min-height:74px}.brand-mark{width:45px}.brand strong{font-size:22px}
  .main-nav{top:74px}.hero-grid{min-height:auto;padding:65px 0 45px}.hero-lead{font-size:17px}.trust-list{display:grid;gap:7px}
  .shop-scene{height:330px}.rv{height:170px;top:100px}.platform{top:140px;height:115px}.platform:before,.platform:after,.platform i{height:110px}
  .visual-badge{right:10px}.benefits,.service-grid,.steps,.field-row,.footer-grid,.check-grid{grid-template-columns:1fr}
  .benefits article,.benefits article:first-child{border-left:0;border-right:0;border-bottom:1px solid var(--line)}
  .section{padding:72px 0}.service-card{min-height:0}.contact-form{padding:24px}.quote-block{font-size:29px;padding:34px}
  .mobile-call{display:block;position:fixed;left:12px;right:12px;bottom:12px;z-index:60;background:var(--blue);color:white;text-align:center;padding:15px;border-radius:9px;font-weight:900;box-shadow:0 10px 35px rgba(0,0,0,.3)}
  body{padding-bottom:66px}
}

.gallery-section{background:#fff}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.gallery-placeholder{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--off)}
.photo-placeholder{min-height:280px;background:linear-gradient(145deg,#10293d,#091522);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px}
.photo-placeholder span{width:58px;height:58px;border:1px solid #54768f;border-radius:50%;display:grid;place-items:center;font-size:34px;color:var(--blue2);margin-bottom:18px}
.photo-placeholder strong{font:700 27px/1 "Barlow Condensed";margin-bottom:9px}
.photo-placeholder small{color:#9fb5c5;max-width:210px}
.gallery-placeholder h3{font-size:28px;margin:22px 24px 5px}
.gallery-placeholder p{margin:0 24px 24px;color:var(--muted);font-size:13px}
@media(max-width:900px){.gallery-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.gallery-grid{grid-template-columns:1fr}.photo-placeholder{min-height:230px}}

/* v5 real inspection photography */
.hero-photo-wrap{position:relative}
.hero-photo{width:100%;height:470px;object-fit:cover;object-position:center 42%;border-radius:28px;border:1px solid rgba(255,255,255,.15);box-shadow:0 35px 70px rgba(0,0,0,.35)}
.photo-album{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:20px}
.photo-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 30px rgba(8,25,40,.08)}
.photo-card-large{grid-row:span 2}
.photo-card img{width:100%;height:250px;object-fit:cover;display:block}
.photo-card-large img{height:100%;min-height:520px}
.photo-card figcaption{padding:16px 18px;display:flex;flex-direction:column;gap:5px}
.photo-card figcaption strong{font-family:"Barlow Condensed",sans-serif;font-size:24px}
.photo-card figcaption span{font-size:13px;color:var(--muted)}
@media(max-width:900px){
  .hero-photo{height:400px}
  .photo-album{grid-template-columns:1fr 1fr}
  .photo-card-large{grid-row:auto;grid-column:1/-1}
  .photo-card-large img{min-height:0;height:420px}
}
@media(max-width:620px){
  .hero-photo{height:330px;border-radius:18px}
  .photo-album{grid-template-columns:1fr}
  .photo-card-large{grid-column:auto}
  .photo-card img,.photo-card-large img{height:280px}
}

/* v6 working photo album */
.photo-card{
  appearance:none;-webkit-appearance:none;padding:0;text-align:left;font:inherit;color:inherit;
  cursor:pointer;position:relative;transition:transform .2s,box-shadow .2s
}
.photo-card:hover,.photo-card:focus-visible{transform:translateY(-4px);box-shadow:0 22px 45px rgba(8,25,40,.18);outline:none}
.photo-caption{padding:16px 18px;display:flex;flex-direction:column;gap:5px;background:#fff}
.photo-caption strong{font-family:"Barlow Condensed",sans-serif;font-size:24px}
.photo-caption>span{font-size:13px;color:var(--muted)}
.photo-caption em{font-size:12px;font-style:normal;font-weight:800;color:var(--blue);margin-top:6px;text-transform:uppercase;letter-spacing:.05em}
.photo-lightbox{
  position:fixed;inset:0;z-index:1000;background:rgba(2,8,14,.94);
  display:none;align-items:center;justify-content:center;padding:28px
}
.photo-lightbox.open{display:flex}
.lightbox-content{width:min(1100px,84vw);max-height:90vh;display:flex;flex-direction:column;align-items:center}
.lightbox-content img{max-width:100%;max-height:75vh;object-fit:contain;border-radius:8px;box-shadow:0 24px 70px rgba(0,0,0,.55)}
.lightbox-text{width:100%;color:white;padding:15px 4px 0;display:grid;grid-template-columns:1fr auto;gap:4px 18px}
.lightbox-text strong{font:700 27px/1 "Barlow Condensed",sans-serif}
.lightbox-text span{grid-column:1;color:#bdcbd5;font-size:13px}
.lightbox-text small{grid-column:2;grid-row:1/3;color:#93a6b4;align-self:center}
.lightbox-close,.lightbox-nav{
  position:absolute;border:0;background:rgba(255,255,255,.1);color:white;cursor:pointer;
  display:grid;place-items:center;border-radius:50%
}
.lightbox-close{right:22px;top:18px;width:48px;height:48px;font-size:36px;line-height:1}
.lightbox-nav{top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:27px}
.lightbox-prev{left:22px}.lightbox-next{right:22px}
.lightbox-close:hover,.lightbox-nav:hover{background:var(--blue)}
body.lightbox-open{overflow:hidden}
@media(max-width:700px){
  .photo-lightbox{padding:65px 12px 20px}
  .lightbox-content{width:100%}
  .lightbox-content img{max-height:68vh}
  .lightbox-nav{top:auto;bottom:18px;width:46px;height:46px}
  .lightbox-prev{left:18px}.lightbox-next{right:18px}
  .lightbox-close{right:12px;top:12px}
  .lightbox-text{padding-bottom:55px;grid-template-columns:1fr}
  .lightbox-text small{grid-column:1;grid-row:auto}
}

.flyer-section{background:var(--off)}
.flyer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}
.flyer-copy h2{font-size:clamp(42px,5vw,64px);margin:0 0 18px;letter-spacing:-.02em}
.flyer-copy>p:not(.eyebrow){color:var(--muted);font-size:17px}
.flyer-download{border:1px solid var(--blue);color:var(--blue);background:#fff}
.flyer-download:hover{background:#eaf5fd}
.flyer-preview{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);position:relative;transition:.2s}
.flyer-preview img{display:block;width:100%;height:auto}
.flyer-preview span{position:absolute;left:18px;bottom:18px;background:rgba(9,21,34,.9);color:#fff;padding:10px 14px;border-radius:8px;font-size:12px;font-weight:800}
.flyer-preview:hover{transform:translateY(-3px)}
@media(max-width:900px){.flyer-grid{grid-template-columns:1fr}.flyer-preview{max-width:760px}}
