
:root{
  --navy:#071a29;
  --navy-2:#0e2840;
  --steel:#29445a;
  --paper:#f5f4f1;
  --sand:#d9cab2;
  --gold:#c4ab86;
  --red:#b23543;
  --cyan:#87d8eb;
  --text:#243443;
  --muted:#667684;
  --line:#d6dfe5;
  --header:88px;
  --radius:22px;
  --shadow:0 25px 60px rgba(0,0,0,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 14px)}
body{margin:0;font-family:DM Sans,Arial,sans-serif;background:var(--paper);color:var(--text);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.shell{width:min(1240px,calc(100% - 52px));margin:auto}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:10px;top:10px;background:#fff;padding:10px;z-index:999}
.concept-note{background:#4a2028;color:#fbe9e9;text-align:center;font-weight:700;font-size:11px;letter-spacing:.15em;padding:9px 18px}
.site-header{position:sticky;top:0;z-index:30;height:var(--header);background:rgba(7,26,41,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.10)}
.nav-shell{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.wordmark{display:flex;align-items:center;gap:12px;min-width:260px}
.brand-header-logo{width:70px;height:70px;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(0,0,0,.3))}
.wordmark-text{display:flex;flex-direction:column;line-height:.95;color:#fff}
.wordmark-text strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:32px;letter-spacing:.05em}
.wordmark-text small{font-size:10px;letter-spacing:.18em;color:#b9ced9;font-weight:700}
.brand-spark{color:var(--red)}
.nav-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:flex-end}
.nav-links>a{font-size:11px;letter-spacing:.12em;font-weight:800;color:#dbe5eb}
.nav-links>a:hover{color:#fff}
.nav-contact{padding:14px 18px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:linear-gradient(90deg,var(--red),#cb4d5c);color:#fff!important}
.hero{position:relative;min-height:860px;background:var(--navy);overflow:hidden;color:#fff}
.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:contrast(1.05) saturate(1.02)}
.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,26,41,.94) 0%,rgba(7,26,41,.88) 28%,rgba(7,26,41,.58) 56%,rgba(7,26,41,.28) 100%),linear-gradient(0deg,rgba(7,26,41,.5),rgba(7,26,41,.15));z-index:1}
.hero-grid{position:absolute;inset:0;opacity:.08;z-index:1;background-image:linear-gradient(to right,rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.18) 1px,transparent 1px);background-size:94px 94px}
.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:40px;align-items:center;min-height:760px;padding:48px 0 92px}
.hero-copy{max-width:720px}
.military-kicker,.section-label{font-size:11px;letter-spacing:.19em;font-weight:800;text-transform:uppercase}
.military-kicker{display:flex;align-items:center;gap:12px;color:#d7c3a2;margin-bottom:22px}
.red-rule{display:inline-block;width:34px;height:2px;background:var(--red)}
.hero h1{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(74px,9vw,132px);line-height:.79;letter-spacing:-.03em;margin:0 0 18px}
.hero h1 em{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;color:#dcc29a}
.hero h1 span{color:#fff}
.hero-lede{font-size:17px;line-height:1.85;color:#dde8ee;max-width:650px;margin:0 0 28px}
.hero-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}
.action{display:inline-flex;align-items:center;gap:16px;min-height:54px;padding:16px 20px;border-radius:999px;font-size:11px;letter-spacing:.14em;font-weight:900;text-transform:uppercase;border:1px solid transparent;transition:transform .2s ease, background .2s ease}
.action:hover{transform:translateY(-1px)}
.action.primary{background:linear-gradient(90deg,var(--red),#c84a58);color:#fff}
.action.ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25);color:#fff}
.hero-line{display:flex;align-items:center;gap:16px;font-size:11px;letter-spacing:.17em;font-weight:800;color:#dbc39f;text-transform:uppercase}
.line-rule{width:58px;height:1px;background:#d0ba93}
.official-logo-stage{justify-self:end;align-self:end;width:min(36vw,430px);background:transparent}
.official-logo-stage img{width:100%;filter:drop-shadow(0 18px 34px rgba(0,0,0,.45))}
.hero-bottom{position:relative;z-index:3;background:rgba(6,18,29,.88);border-top:1px solid rgba(255,255,255,.13)}
.hero-bottom-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:center;min-height:82px}
.hero-bottom-row span,.hero-bottom-row a{font-size:10px;letter-spacing:.14em;font-weight:800;color:#d9e5ec;text-transform:uppercase}
.hero-bottom-row b{color:var(--gold);margin-right:10px}
.section{padding:94px 0}
.intro{background:#fff;border-bottom:1px solid var(--line)}
.intro-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.section-label{color:var(--red);margin-bottom:16px}
.intro h2,.section h2,.standards h2,.story h2,.contact h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(48px,6vw,84px);line-height:.9;letter-spacing:-.02em;color:var(--navy);margin:0}
.intro h2 em,.section h2 em,.standards h2 em,.story h2 em,.contact h2 em{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;color:var(--red)}
.intro-detail{border-left:1px solid #ccd7de;padding-left:32px}
.intro-detail p,.story p,.contact p,.section p{font-size:15px;line-height:1.95;color:#5f707e}
.text-arrow{display:inline-block;padding-bottom:6px;border-bottom:1px solid #b46b72;font-size:11px;letter-spacing:.14em;font-weight:800;color:#a23846;text-transform:uppercase}
.services-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;margin-top:32px}
.feature-card{position:relative;min-height:520px;border-radius:var(--radius);overflow:hidden;color:#fff;box-shadow:var(--shadow)}
.feature-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.feature-card .wash{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,26,41,.94) 5%,rgba(7,26,41,.60) 42%,rgba(7,26,41,.10) 100%)}
.feature-body{position:absolute;left:28px;right:28px;bottom:28px;z-index:2}
.feature-label{font-size:10px;letter-spacing:.16em;font-weight:900;color:#e0ccac;text-transform:uppercase}
.feature-body h3{font-family:'Barlow Condensed',Impact,sans-serif;font-size:66px;line-height:.88;margin:10px 0 12px}
.feature-body p{color:#e0e7eb;max-width:420px;margin-bottom:18px}
.secondary-stack{display:grid;gap:24px}
.mini-card{display:grid;grid-template-columns:180px 1fr;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(9,26,45,.08)}
.mini-card img{width:100%;height:100%;object-fit:cover}
.mini-card .copy{padding:22px}
.mini-card .eyebrow{font-size:10px;letter-spacing:.15em;font-weight:900;color:var(--red);text-transform:uppercase}
.mini-card h3{margin:8px 0 8px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:34px;line-height:.95;color:var(--navy)}
.mini-card p{margin:0;color:#5d6c7a;font-size:14px;line-height:1.75}
.section-header{display:grid;grid-template-columns:1fr 340px;gap:34px;align-items:end;margin-bottom:32px}
.before-after-card{background:#091a29;border-radius:26px;padding:26px;color:#fff;box-shadow:var(--shadow)}
.before-after-card > p{color:#d9e3e9;max-width:740px}
.comparison-wrap{margin-top:24px;border-radius:18px;overflow:hidden;background:#000;border:1px solid rgba(255,255,255,.16)}
.comparison{position:relative;aspect-ratio:16/9;user-select:none;touch-action:none;cursor:ew-resize}
.comparison img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.comparison .after-layer{width:50%;overflow:hidden;position:absolute;inset:0}
.comparison .after-layer img{width:100%;height:100%}
.slider-line{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#fff;transform:translateX(-1px);box-shadow:0 0 0 1px rgba(0,0,0,.1)}
.slider-handle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;background:#fff;color:var(--navy);display:grid;place-items:center;font-weight:900;box-shadow:0 12px 24px rgba(0,0,0,.28)}
.comparison-label{position:absolute;top:18px;padding:10px 13px;border-radius:999px;background:rgba(7,26,41,.72);font-size:10px;letter-spacing:.16em;font-weight:900;color:#fff;text-transform:uppercase}
.comparison-label.before{left:18px}.comparison-label.after{right:18px}
.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:18px}
.gallery-feature,.gallery-grid figure{margin:0;position:relative;border-radius:20px;overflow:hidden;min-height:240px;background:#d8dde1;box-shadow:0 18px 40px rgba(9,26,45,.08)}
.gallery-grid figure img{width:100%;height:100%;object-fit:cover}
.gallery-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 20px;background:linear-gradient(0deg,rgba(7,26,41,.88),rgba(7,26,41,0));color:#fff;font-size:12px;letter-spacing:.14em;font-weight:800;text-transform:uppercase}
.gallery-feature{min-height:520px;grid-row:span 2}
.timeline-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:24px}
.timeline-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(9,26,45,.06)}
.timeline-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.timeline-card .copy{padding:18px}
.step-num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;font-size:11px;font-weight:900;letter-spacing:.12em}
.timeline-card h3{margin:12px 0 8px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:30px;line-height:.95;color:var(--navy)}
.timeline-card p{margin:0;font-size:14px;line-height:1.75;color:#5d6c7a}
.standards{position:relative;background:linear-gradient(180deg,#0d2234,#091a29);color:#fff;overflow:hidden}
.standards .shell{position:relative;z-index:2}
.standards h2{color:#fff}.standards h2 em{color:#dcc49d}.standards .section-label{color:#b9d7e6}
.standards-layout{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start}
.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.value-item{padding:24px;border:1px solid rgba(255,255,255,.15);border-radius:18px;background:rgba(255,255,255,.04)}
.value-item span{display:block;color:#dcc49d;font-size:10px;font-weight:900;letter-spacing:.16em;margin-bottom:8px}
.value-item h3{margin:0 0 8px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:30px;line-height:1;color:#fff}
.value-item p{margin:0;color:#d5e0e8;font-size:14px;line-height:1.7}
.story-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center}
.story-visual{position:relative;min-height:540px;border-radius:26px;overflow:hidden;background:#081b26;box-shadow:var(--shadow);display:grid;place-items:center}
.story-visual img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22}
.story-visual .overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,27,38,.15),rgba(8,27,38,.82))}
.story-logo{position:relative;z-index:2;width:min(72%,360px);filter:drop-shadow(0 16px 30px rgba(0,0,0,.44))}
.story-small{position:relative;z-index:2;margin-top:18px;color:#a7d8e8;font-size:11px;letter-spacing:.16em;font-weight:900;text-transform:uppercase}
.story-action{margin-top:10px}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}
.process article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 18px 40px rgba(9,26,45,.06)}
.step-index{display:inline-block;font-size:12px;font-weight:900;letter-spacing:.15em;color:var(--red);margin-bottom:8px}
.process h3{margin:0 0 8px;font-family:'Barlow Condensed',Impact,sans-serif;font-size:30px;color:var(--navy)}
.process p{margin:0;font-size:14px;line-height:1.75;color:#5d6c7a}
.testimonial{background:#f1f4f6;padding:24px;border-radius:18px;border:1px solid var(--line)}
.contact{background:linear-gradient(135deg,#0b2031,#15314a);color:#fff}
.contact h2{color:#fff}.contact h2 em{color:#dcc49d}.contact .section-label{color:#aad9e6}
.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start}
.contact-copy p{color:#d8e2e8}
.contact-icons{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;letter-spacing:.12em;font-weight:800;color:#eadbc1;text-transform:uppercase}
.contact-form{background:#fff;color:var(--text);border-radius:22px;padding:24px;box-shadow:0 20px 50px rgba(0,0,0,.20)}
.form-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}
.form-heading strong{font-size:18px;color:var(--navy)}
.form-heading span{font-size:10px;letter-spacing:.16em;font-weight:900;color:var(--red)}
.form-info{margin:0 0 16px;color:#60707d;font-size:13px;line-height:1.7}
.contact-form label{display:block;margin:14px 0 6px;font-size:11px;letter-spacing:.14em;font-weight:900;color:#51616f}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:14px 15px;border:1px solid #cad5dd;border-radius:14px;font:inherit}
.contact-form textarea{min-height:120px;resize:vertical}
.form-feedback{margin-top:14px;font-size:13px;color:#60707d}
.site-footer{background:#06131f;color:#d8e3eb;padding:34px 0 26px}
.footer-top{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.footer-name{display:flex;align-items:center;gap:12px}.footer-name strong{display:block;font-family:'Barlow Condensed',Impact,sans-serif;font-size:28px;letter-spacing:.04em;color:#fff}.footer-name small{font-size:11px;letter-spacing:.14em;color:#9bcfdd;font-weight:800}
.footer-logo{width:80px;height:80px;object-fit:contain}
.footer-nav{display:flex;flex-wrap:wrap;gap:16px;font-size:11px;letter-spacing:.14em;font-weight:800}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.10);font-size:12px;color:#9eb1be}
@media (max-width:1100px){
  .hero-inner,.intro-layout,.services-grid,.section-header,.standards-layout,.story-layout,.contact-layout{grid-template-columns:1fr}
  .official-logo-stage{justify-self:start;max-width:300px}
  .hero-bottom-row{grid-template-columns:1fr 1fr}
  .timeline-grid,.process-grid{grid-template-columns:1fr 1fr}
  .gallery-grid{grid-template-columns:1fr 1fr}
  .gallery-feature{grid-row:auto;min-height:340px}
}
@media (max-width:800px){
  .site-header{height:auto;position:relative}
  .nav-shell{padding:16px 0;align-items:flex-start}
  .nav-links{gap:12px}
  .hero{min-height:auto}
  .hero-inner{padding:40px 0 52px}
  .hero h1{font-size:clamp(58px,16vw,92px)}
  .hero-bottom-row{grid-template-columns:1fr;min-height:auto;padding:16px 0}
  .timeline-grid,.process-grid,.gallery-grid,.value-grid{grid-template-columns:1fr}
  .mini-card{grid-template-columns:1fr}
  .before-after-card{padding:18px}
  .comparison{aspect-ratio:4/5}
  .shell{width:min(100% - 28px,1240px)}
}


/* FIXED DRAFT 4: self-contained images, mobile navigation and accessible photo comparison */
.mobile-menu{display:none;background:transparent;border:1px solid rgba(255,255,255,.28);color:#fff;font:800 12px 'DM Sans',sans-serif;letter-spacing:.12em;padding:12px 15px;border-radius:9px;cursor:pointer}
.comparison{--reveal:50%;touch-action:pan-y;cursor:default}
.comparison .after-layer{position:absolute;inset:0;width:100%!important;height:100%;overflow:hidden;clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}
.comparison .after-layer img{position:absolute;inset:0;width:100%!important;height:100%;object-fit:cover}
.comparison .slider-line,.comparison .slider-handle{left:var(--reveal);pointer-events:none}
.comparison .compare-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:8;margin:0;touch-action:pan-y}
.comparison .compare-range:focus-visible{outline:3px solid #fff;outline-offset:-6px;opacity:.02}
.comparison .comparison-label{z-index:5;pointer-events:none}
@media(max-width:900px){
 .nav-shell{position:relative;align-items:center;flex-wrap:wrap}
 .mobile-menu{display:block;margin-left:auto}
 .nav-links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;background:#0b2438;border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:9px;margin:0}
 .nav-links.is-open{display:flex}
 .nav-links a{display:block;padding:12px 14px}
 .nav-links .nav-contact{text-align:center;margin-top:6px}
 .hero-inner{gap:28px}
 .hero h1{overflow-wrap:normal}
 .hero-lede{font-size:16px}
 .hero .official-logo-stage{justify-self:center;align-self:center;width:min(68vw,320px)}
 .hero::before{background:linear-gradient(180deg,rgba(7,26,41,.87) 0%,rgba(7,26,41,.77) 48%,rgba(7,26,41,.55) 100%)}
}
@media(max-width:520px){
 .wordmark{min-width:0;gap:8px}
 .wordmark-text strong{font-size:25px}
 .wordmark-text small{font-size:8px}
 .brand-header-logo{width:55px;height:55px}
 .hero-inner{min-height:auto;padding-top:45px}
 .hero h1{font-size:clamp(58px,14.1vw,82px);line-height:.84}
 .military-kicker{font-size:9px;letter-spacing:.09em}
 .feature-body h3{font-size:55px}
 .feature-card{min-height:480px}
 .before-after-card{padding:14px}
 .comparison{aspect-ratio:4/5}
 .comparison-label{font-size:9px;padding:8px}
 .slider-handle{width:48px;height:48px}
 .hero-buttons{align-items:stretch}
 .hero-buttons a{width:100%;justify-content:center;text-align:center}
 .section{padding:65px 0}
 .contact-form{padding:18px}
}



/* Draft 5 — V6 and Draft 4 integration */
.nav-shell{gap:16px}
.nav-links{gap:16px}
.nav-links>a{font-size:10px;letter-spacing:.055em}
.header-phone{margin-left:auto;color:#efd4ab;font-weight:800;font-size:13px;white-space:nowrap;text-decoration:none;letter-spacing:.025em}
.header-phone:hover{text-decoration:underline}
.hero-background{object-position:center 50%}
.service-extras{margin-top:65px}
.service-extras h3{font:800 clamp(44px,4.7vw,72px)/.95 'Barlow Condensed',Impact,sans-serif;color:var(--navy);margin:0 0 23px}
.service-extras h3 em{font:italic 1.03em/1 'Instrument Serif',Georgia,serif;color:var(--red)}
.extra-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.extra-card{position:relative;min-height:288px;border-radius:20px;overflow:hidden;background:var(--navy);color:#fff;box-shadow:0 15px 30px rgba(7,26,41,.1)}
.extra-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.extra-card:before{position:absolute;content:'';inset:0;background:linear-gradient(0deg,#071a29 3%,#071a29ba 43%,transparent 96%);z-index:1}
.extra-content{position:absolute;left:22px;right:22px;bottom:18px;z-index:2}
.extra-content h4{font:800 30px/.95 'Barlow Condensed',Impact,sans-serif;margin:0 0 6px}
.extra-content p{margin:0;font-size:13px;line-height:1.6;color:#e6edef}
.area-section{background:#e5edef;position:relative;overflow:hidden}
.area-layout{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:7%}
.area-copy>p,.franchise-layout>div>p{font-size:16px;line-height:1.85;color:#4b6372;margin:24px 0 27px}
.area-panel{padding:38px;background:#0c2739;color:#fff;border-top:5px solid var(--red);border-radius:20px;box-shadow:0 20px 45px rgba(7,26,41,.17)}
.area-panel .eyebrow{font-size:11px;letter-spacing:.14em;color:var(--gold);font-weight:900}
.area-title{font:900 clamp(45px,5vw,72px)/.96 'Barlow Condensed',Impact,sans-serif;margin:25px 0}
.area-title span{color:#d6bf9d}
.area-panel p{font-size:14px;line-height:1.8;color:#cee0e7}
.area-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:19px}
.area-chips span{border:1px solid #587385;color:#e3eff4;padding:9px 10px;font-size:10px;font-weight:800;letter-spacing:.05em;border-radius:999px}
.franchise-section{background:#fff}
.franchise-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}
.franchise-preview{border:1px solid #d0dde2;border-radius:23px;padding:28px;background:linear-gradient(145deg,#f7faf9,#eaf1f2)}
.directory-top{display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:.12em;font-weight:900;color:var(--red)}
.directory-icon{font-size:66px;line-height:1;color:#8ba1ad;margin:30px 0 18px}
.franchise-preview h3{font:800 34px 'Barlow Condensed',Impact,sans-serif;color:var(--navy);margin:0 0 10px}
.franchise-preview p{font-size:14px;line-height:1.8;color:#62727c}
.directory-placeholder{border:1px dashed #aebbc2;border-radius:12px;padding:17px;display:flex;flex-direction:column;gap:6px;margin-top:20px;background:#fff}
.directory-placeholder span{color:#9a4653;font-size:10px;letter-spacing:.13em;font-weight:900}
.directory-placeholder strong{color:#596f7d;font-size:14px}
.directory-caption{font-size:11px;line-height:1.65;color:#667b87;margin-top:18px}
.call-note{margin-top:26px!important;color:#ead0a9!important;font-weight:900;font-size:12px!important;letter-spacing:.02em}
.call-note a{color:#fff;text-decoration:underline}
.call-note small{font-size:11px;color:#afc7d5;font-weight:500}
@media(max-width:1260px){.nav-links{gap:10px}.nav-links>a{font-size:9px}.header-phone{font-size:11px}}
@media(max-width:1080px){.header-phone{margin-left:auto;margin-right:8px}.area-layout,.franchise-layout{grid-template-columns:1fr;gap:32px}}
@media(max-width:800px){.header-phone{font-size:12px}.extra-cards{grid-template-columns:1fr}.extra-card{min-height:235px}.service-extras{margin-top:48px}.area-panel{padding:25px}}
@media(max-width:460px){.header-phone{font-size:10px}.franchise-preview{padding:21px}.directory-top{flex-direction:column;gap:4px}}



/* Draft 5 — Office Manager V6 homepage direction — Oct 22, 2026 */
.hero{min-height:760px}
.hero-background{inset:0 0 0 auto;width:74%;object-position:center 46%;filter:brightness(.90) saturate(1.04) contrast(1.05)}
.hero:before{opacity:.57!important;background:linear-gradient(90deg,rgba(7,26,41,1) 0%,rgba(7,26,41,.96) 22%,rgba(7,26,41,.81) 48%,rgba(7,26,41,.38) 72%,rgba(7,26,41,.12) 100%)}
.hero-inner{grid-template-columns:minmax(0,1fr) 245px;gap:18px;min-height:760px;padding-top:66px;padding-bottom:76px;align-items:center}
.hero-copy{max-width:800px}
.hero h1{font-size:clamp(72px,7.8vw,117px);line-height:.84;letter-spacing:-.027em;margin:0 0 22px}
.hero h1 em{display:block;color:#e7cda7;font:900 1em/.92 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.024em}
.hero-subheadline{font:800 clamp(24px,2.5vw,38px)/1.12 'Barlow Condensed',Impact,sans-serif;color:#f6f5f2;max-width:790px;margin:0 0 20px}
.hero-lede{font-size:15px;line-height:1.75;color:#e1ebf0;max-width:780px;margin:0 0 24px}
.hero-buttons{margin-bottom:19px}
.hero .official-logo-stage{width:min(18vw,175px);justify-self:end;align-self:end;margin-bottom:14px;opacity:.94}
.hero-line{font-size:10px;letter-spacing:.07em;line-height:1.6;color:#f1d8ad;margin-top:22px}
.hero .action.primary{background:#e6c79a;color:#071a29;border-color:#e6c79a}
.hero .action.primary:hover{background:#f1d9b4}
.hero .action.ghost{background:#0c2639ae;border-color:#b8cbd58c}
.hero .military-kicker{color:#b9e4ef;letter-spacing:.15em;margin-bottom:19px;font-size:10px}
#services .section-header p{line-height:1.8}
@media(max-width:1120px){
 .hero-inner{grid-template-columns:minmax(0,1fr) 175px;gap:12px}
 .hero h1{font-size:clamp(65px,8.6vw,100px)}
 .hero .official-logo-stage{width:155px}
}
@media(max-width:900px){
 .hero-inner{grid-template-columns:minmax(0,1fr);min-height:0;padding:65px 0 65px}
 .hero .official-logo-stage{width:125px;justify-self:end;align-self:end;margin:0}
 .hero:before{background:linear-gradient(90deg,rgba(7,26,41,.95),rgba(7,26,41,.72) 65%,rgba(7,26,41,.55))}
 .hero h1{font-size:clamp(69px,10.5vw,105px)}
}
@media(max-width:600px){
 .hero{min-height:0}
 .hero-inner{display:block;padding:51px 0 64px}
 .hero h1{font-size:clamp(60px,12.8vw,85px);line-height:.85}
 .hero-subheadline{font-size:clamp(25px,6.3vw,33px)}
 .hero-lede{font-size:14px;line-height:1.75}
 .hero .official-logo-stage{display:none}
 .hero-background{width:100%;object-position:center 42%}
 .hero-line{font-size:9px}
 .hero-buttons{align-items:stretch}
 .hero-buttons .action{width:100%;justify-content:center;text-align:center}
}
@media(max-width:380px){.hero h1{font-size:56px}.hero-subheadline{font-size:24px}}



/* Draft 5C: Company logo only in the header, fixed/stationary navigation at every size. */
.site-header{
  position:fixed !important;
  top:0 !important;
  left:0;
  right:0;
  width:100%;
  height:var(--header) !important;
  z-index:1000 !important;
  box-shadow:0 12px 28px rgba(0,0,0,.22);
}
body{padding-top:var(--header)}
.nav-shell{height:100%;min-height:0;align-items:center}
.hero-inner{grid-template-columns:minmax(0,1fr);gap:0}
.hero-copy{width:100%;max-width:800px}
.story-visual .story-small{
  margin:0;
  padding:13px 18px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:5px;
  background:rgba(7,26,41,.64);
  text-align:center;
}
.footer-name{gap:0}
@media(max-width:900px){
  :root{--header:88px}
  .site-header{height:var(--header) !important}
  .nav-shell{height:100%;padding:0 !important;flex-wrap:nowrap !important;align-items:center !important}
  .nav-links{
    position:absolute;
    top:100%;
    left:0;
    right:0;
    width:100%;
    max-height:calc(100dvh - var(--header) - 12px);
    overflow-y:auto;
    z-index:1001;
    box-shadow:0 18px 30px rgba(0,0,0,.28);
  }
}
@media(max-width:600px){
  :root{--header:76px}
  .nav-shell{gap:8px}
  .wordmark{min-width:0;flex-shrink:0}
  .wordmark-text{display:none}
  .brand-header-logo{width:62px;height:62px;object-fit:contain}
  .header-phone{font-size:10px;margin-left:auto;margin-right:0;white-space:nowrap}
  .mobile-menu{font-size:10px;letter-spacing:.035em;padding:10px 11px;margin-left:0;white-space:nowrap}
  .nav-links{top:100%;}
  .story-visual .story-small{font-size:9px;letter-spacing:.08em;max-width:calc(100% - 38px)}
}
/* Contain long legacy grid headings on narrow phones instead of allowing sideways scroll. */
@media(max-width:360px){
  .section-header{display:block}
  .section-header>div,.section-header>p{width:100%;min-width:0;max-width:100%}
  .section-header h2{font-size:clamp(40px,11vw,58px);overflow-wrap:anywhere}
  .standards-layout,.value-grid{grid-template-columns:minmax(0,1fr)}
  .standards-layout>*,.value-grid>*{min-width:0;max-width:100%}
  .standards-layout h2{overflow-wrap:anywhere}
  .mini-card{grid-template-columns:minmax(0,1fr)}
  .mini-card>*{min-width:0;max-width:100%}
  .mini-card img{width:100%;max-width:100%}
}



/* Draft 5D — restore the official logo only to the image beside "Proud to Serve, Proud to Build". */
.story-visual .story-brand{
  position:relative;
  z-index:2;
  width:100%;
  padding:38px 20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
}
.story-visual .story-brand .story-logo{
  display:block;
  position:relative;
  width:min(72%,330px);
  height:auto;
  max-height:365px;
  object-fit:contain;
  filter:drop-shadow(0 16px 30px rgba(0,0,0,.5));
}
.story-visual .story-brand .story-small{margin:0;max-width:100%;line-height:1.65}
@media(max-width:600px){
  .story-visual .story-brand{gap:14px;padding:28px 14px}
  .story-visual .story-brand .story-logo{width:min(72%,280px)}
}



/* Draft 5E: functional service-region links, only the four requested locations */
.area-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.area-chips .region-button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:14px 15px;border:1px solid #7595a7;border-radius:11px;background:rgba(255,255,255,.075);color:#f2f7fa;font-size:13px;font-weight:800;line-height:1.3;letter-spacing:.01em;text-decoration:none;transition:background-color .18s,border-color .18s,transform .18s}
.area-chips .region-button .region-arrow{flex:none;color:#f0d2a2;font-size:21px;line-height:1}
.area-chips .region-button:hover{background:#244c65;border-color:#ebcf9b;transform:translateY(-2px)}
.area-chips .region-button:focus-visible{outline:3px solid #f6d39f;outline-offset:3px;background:#244c65}
.area-chips .region-button:active{transform:translateY(0)}
.area-region-hint{display:block;margin-top:16px;font-size:11px;line-height:1.6;color:#b4cad7}
@media(max-width:530px){.area-chips{grid-template-columns:1fr}.area-chips .region-button{min-height:52px}}
@media(prefers-reduced-motion:reduce){.area-chips .region-button{transition:none}}



/* Confirmed franchise contact information — co-founder clearly identified. */
.franchise-choice .cofounder-label{display:block;color:#995242;font-size:9px;letter-spacing:.15em;font-weight:900;margin-top:7px}
/* Draft 5F — Interactive franchise contact directory (unassigned territories) */
.franchise-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
.franchise-choice{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:73px;border:1px solid #c5d2d8;border-radius:12px;padding:14px 15px;background:#fff;color:#102d3e;text-decoration:none;font-size:14px;font-weight:800;line-height:1.32;transition:background .2s,box-shadow .2s,border-color .2s,transform .2s}
.franchise-choice .franchise-go{color:#ad3445;font-size:21px;flex-shrink:0;font-weight:700}
.franchise-choice:hover{background:#e9f3f6;border-color:#9fb6c0;box-shadow:0 9px 20px #0e334016;transform:translateY(-2px)}
.franchise-choice:focus-visible{outline:3px solid #af3749;outline-offset:2px}
.franchise-help{font-size:12px;line-height:1.75;margin:15px 0 0;color:#617988}

@media(max-width:1100px){.franchise-choice-grid{grid-template-columns:1fr}.franchise-choice{min-height:56px}}
@media(max-width:700px){.franchise-choice-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.franchise-choice-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.franchise-choice{transition:none}}



/* Draft 5F-Z: official Zoho CRM webform replaces non-submitting demo */
.zoho-form-panel{min-width:0}
.zoho-form-heading{margin-bottom:11px}
.zoho-form-heading span{font-size:10px}
.zoho-form-intro{margin-bottom:20px}
.zoho-embed-root{width:100%;max-width:100%;min-width:0;overflow:visible}
.zoho-embed-root iframe{max-width:100%}
.zoho-embed-root > div{max-width:100%}
.zoho-local-notice{background:#fff8ea;border:1px solid #d8bd8e;border-radius:12px;color:#59441d;padding:14px;margin:12px 0;font-size:13px;line-height:1.6}
.zoho-local-notice[hidden]{display:none!important}
.zoho-form-privacy{font-size:11px;line-height:1.6;color:#687985;margin:15px 0 0}



/* Draft 5G — Franchise profile modals: hidden by default, native accessible <dialog>. */
.franchise-choice {cursor:pointer;font-family:inherit;text-align:left}
.franchise-go {white-space:nowrap}
.avpc-profile-dialog {width:min(840px,calc(100% - 36px));max-width:840px;max-height:calc(100dvh - 38px);margin:auto;padding:0;border:1px solid #bfa57e;border-radius:18px;background:#fff;color:#102d3e;box-shadow:0 35px 95px rgba(0,9,21,.65);overflow:auto;overscroll-behavior:contain}
.avpc-profile-dialog:not([open]) {display:none}
.avpc-profile-dialog::backdrop {background:rgba(4,15,26,.78);backdrop-filter:blur(5px)}
.avpc-profile-layout {display:grid;grid-template-columns:minmax(0,0.83fr) minmax(0,1.25fr);min-height:410px}
.avpc-profile-art {background:linear-gradient(148deg,#102b3d,#071b29 75%);padding:40px 26px;color:#e8ceb0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:24px;position:relative;overflow:hidden}
.avpc-profile-art:before {content:'★';position:absolute;inset:auto -35px -128px auto;font-size:340px;line-height:1;opacity:.055;color:#fff;pointer-events:none}
.avpc-profile-avatar {display:flex;align-items:center;justify-content:center;border:2px solid #d4bd94;border-radius:50%;width:165px;height:165px;background:rgba(255,255,255,.035);box-shadow:0 0 0 13px rgba(212,189,148,.06)}
.avpc-profile-avatar svg {width:94px;height:94px;stroke:#dcc9ad;stroke-width:1.4;fill:none;stroke-linecap:round;stroke-linejoin:round}
.avpc-profile-photo-note {max-width:215px;font:800 10px/1.9 'DM Sans',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#d9c19c;position:relative}
.avpc-profile-info {padding:42px 40px 37px;position:relative}
.avpc-profile-kicker {font:900 10px/1.6 'DM Sans',Arial,sans-serif;letter-spacing:.18em;color:#a53343;margin:0 40px 12px 0;text-transform:uppercase}
.avpc-profile-dialog h2 {font:900 clamp(36px,5vw,58px)/.95 'Barlow Condensed','Arial Narrow',Impact,sans-serif;color:#09273b;letter-spacing:-.01em;margin:0 20px 8px 0;text-transform:uppercase}
.avpc-profile-role {margin:0 0 22px;font:900 10px/1.6 'DM Sans',Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#955342}
.avpc-profile-desc {font:400 14px/1.8 'DM Sans',Arial,sans-serif;color:#536674;margin:0 0 20px}
.avpc-profile-details {margin:0;border-top:1px solid #d7e0e4}
.avpc-profile-details > div {display:grid;grid-template-columns:116px 1fr;gap:14px;border-bottom:1px solid #d7e0e4;padding:13px 0}
.avpc-profile-details dt {font:900 10px/1.55 'DM Sans',Arial,sans-serif;letter-spacing:.11em;color:#8f404c;text-transform:uppercase}
.avpc-profile-details dd {font:700 13px/1.5 'DM Sans',Arial,sans-serif;color:#15384c;margin:0}
.avpc-profile-details a {color:#0b4d65;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.avpc-profile-actions {display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.avpc-profile-actions a {font:900 10px/1.2 'DM Sans',Arial,sans-serif;letter-spacing:.07em;display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:13px 15px;border-radius:6px;text-decoration:none}
.avpc-profile-call {background:#a93546;color:white!important}
.avpc-profile-call:hover {background:#862b38}
.avpc-profile-page {border:1px solid #c8d4db;background:white;color:#143749!important}
.avpc-profile-page:hover {background:#ebf2f4}
.avpc-profile-close {position:absolute;top:14px;right:14px;width:40px;height:40px;border:1px solid #cbd6d9;border-radius:50%;background:#fff;color:#163647;display:grid;place-items:center;font:500 25px Arial,sans-serif;line-height:1;z-index:3;cursor:pointer}
.avpc-profile-close:hover,.avpc-profile-close:focus-visible {background:#f1e6e0;border-color:#a93546;outline-offset:2px}
@media(max-width:680px) {
 .avpc-profile-dialog {width:calc(100% - 22px);max-height:calc(100dvh - 22px);border-radius:12px}
 .avpc-profile-layout {grid-template-columns:1fr}
 .avpc-profile-art {min-height:170px;padding:20px 16px;gap:10px}
 .avpc-profile-avatar {width:76px;height:76px;box-shadow:none}
 .avpc-profile-avatar svg {width:47px;height:47px}
 .avpc-profile-photo-note {font-size:9px;line-height:1.3}
 .avpc-profile-info {padding:27px 22px 25px}
 .avpc-profile-dialog h2 {font-size:clamp(35px,9vw,54px)}
 .avpc-profile-details > div {grid-template-columns:94px 1fr;gap:9px}
 .avpc-profile-close {top:9px;right:9px}
}
@media(prefers-reduced-motion:reduce){.avpc-profile-dialog,.avpc-profile-dialog *{scroll-behavior:auto!important}}



/* Draft 5G.1: Marc Prokop profile photos + complete supplied biography. */
.avpc-profile-dialog {width:min(950px,calc(100% - 36px));max-width:950px;}
.avpc-profile-art.has-photos {justify-content:flex-start;align-items:stretch;padding:24px 22px;gap:0;}
.avpc-profile-photo-placeholder {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;position:relative;}
.avpc-profile-marc-images {width:100%;display:grid;gap:17px;position:relative;}
.avpc-profile-marc-images[hidden],.avpc-profile-photo-placeholder[hidden],.avpc-profile-bio[hidden] {display:none!important;}
.avpc-marc-photo {padding:0;margin:0;background:#0b2232;border:1px solid rgba(231,210,171,.45);overflow:hidden;border-radius:7px;}
.avpc-marc-photo img {width:100%;display:block;object-fit:cover;object-position:50% 18%;}
.avpc-marc-service-photo img {height:350px;}
.avpc-marc-family-photo img {height:220px;object-position:50% 13%;}
.avpc-marc-photo figcaption {color:#f1e3ca;font:800 10px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;padding:11px 12px;}
.avpc-profile-bio {margin:26px 0 2px;padding-top:21px;border-top:1px solid #d5e0e5;}
.avpc-profile-bio h3 {margin:0 0 14px;color:#102f40;font:800 30px/1.08 'Barlow Condensed','Arial Narrow',Impact,sans-serif;letter-spacing:.01em;}
.avpc-profile-bio p {color:#4c6170;font:400 13px/1.75 'DM Sans',Arial,sans-serif;margin:0 0 13px;}
.avpc-profile-bio p:last-child {margin-bottom:0;}
.avpc-profile-territory-note {display:block;margin-top:5px;font:400 10px/1.5 'DM Sans',Arial,sans-serif;color:#617783;}
@media(max-width:680px) {
 .avpc-profile-dialog {width:calc(100% - 20px);max-height:calc(100dvh - 20px);}
 .avpc-profile-art.has-photos {padding:15px 15px 12px;}
 .avpc-profile-marc-images {grid-template-columns:1fr 1fr;gap:10px;}
 .avpc-marc-service-photo img,.avpc-marc-family-photo img {height:150px;object-position:50% 19%;}
 .avpc-marc-photo figcaption {font-size:8px;padding:8px 6px;min-height:36px;}
 .avpc-profile-bio h3 {font-size:27px;}
 .avpc-profile-bio p {font-size:12px;line-height:1.7;}
}
@media(max-width:370px){.avpc-marc-service-photo img,.avpc-marc-family-photo img{height:125px;}}



/* Draft 5G.4 — Header telephone enlarged by another 3 CSS px and given stronger emphasis.
   Desktop: 19px; medium: 17px; tablet: 18px; phone: 16px. */
.header-phone{font-size:19px;font-weight:900}
@media(max-width:1260px){.header-phone{font-size:17px}}
@media(max-width:800px){.header-phone{font-size:18px}}
@media(max-width:600px){.header-phone{font-size:16px;letter-spacing:0}}
@media(max-width:360px){.nav-shell{gap:4px}.mobile-menu{padding:9px 8px}}




/* Draft 5G.5 — Header phone displayed at 80px high on desktop.
   The number keeps its natural, proportional width (no stretching).
   Reflow header to accommodate very large text and keep nav operable.
   On small screens it scales down to fit the available space. */
@media(min-width:901px) {
  :root { --header:184px; }
  .site-header { height:var(--header) !important; }
  .nav-shell {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:110px 58px;
    align-content:center;
    align-items:center;
    gap:0 15px;
    height:100%;
  }
  .wordmark { grid-column:1; grid-row:1; min-width:0; margin:0; justify-self:start; }
  .brand-header-logo { width:83px;height:83px; }
  .header-phone {
    grid-column:2; grid-row:1;
    display:inline-flex;align-items:center;justify-content:flex-end;
    height:80px;
    width:max-content;
    max-width:100%;
    margin:0 !important;
    font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;
    font-size:80px;
    font-weight:900;
    line-height:80px;
    letter-spacing:-.025em;
    font-variant-numeric:tabular-nums;
    white-space:nowrap;
  }
  .nav-links {
    grid-column:1 / -1;grid-row:2;
    justify-self:stretch;
    justify-content:center;
    flex-wrap:nowrap;
    gap:clamp(7px,1.7vw,26px);
    margin:0;
    align-items:center;
    min-width:0;
  }
  .nav-links>a{font-size:clamp(9px,.82vw,11px)}
}
@media(min-width:901px) and (max-width:1380px) {
  .header-phone{font-size:clamp(48px,5.8vw,80px);}
}
@media(min-width:901px) and (max-width:1050px) {
  .wordmark-text strong{font-size:26px;}
  .wordmark {gap:8px;}
  .nav-links{gap:9px;}
  .nav-links>a{font-size:9px;letter-spacing:.015em}
}
@media(max-width:900px) {
  :root{--header:130px;}
  .site-header{height:var(--header) !important;}
  .nav-shell {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:78px 43px;
    align-content:center;
    gap:0 8px;
    position:relative;
    height:100%;
    padding:0 !important;
  }
  .wordmark{grid-column:1;grid-row:1;justify-self:start;min-width:0;}
  .brand-header-logo{width:68px;height:68px;}
  .header-phone{
    grid-column:2;grid-row:1;
    margin:0!important;
    font:900 clamp(37px,5.6vw,50px)/1 'Barlow Condensed','Arial Narrow',Impact,sans-serif;
    letter-spacing:-.025em;
    font-variant-numeric:tabular-nums;
    white-space:nowrap;
    justify-self:end;
  }
  .mobile-menu{grid-column:2;grid-row:2;justify-self:end;margin:0;}
  .nav-links {position:absolute;top:100%;left:0;right:0;grid-column:1/-1;grid-row:2;}
}
@media(max-width:600px) {
  :root{--header:126px;}
  .nav-shell{grid-template-rows:77px 38px;}
  .brand-header-logo{width:62px;height:62px;}
  .header-phone{font-size:clamp(22px,6.1vw,36px);}
  .mobile-menu{padding:8px 12px;}
}
@media(max-width:360px){.header-phone{font-size:21px;}}





/* Draft 5G.6 — balanced, single-row fixed header. 
   All header elements align vertically on one horizontal line.
   Navigation becomes a dropdown when the complete desktop row would be crowded. */
:root{--header:94px}
.site-header{height:var(--header)!important;min-height:0!important;}
.nav-shell{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  justify-content:space-between!important;
  align-items:center!important;
  align-content:center!important;
  gap:clamp(12px,1.15vw,22px)!important;
  height:100%!important;
  min-height:0!important;
  padding:0!important;
  position:relative;
}
.wordmark{
  order:1;
  grid-column:auto!important;
  grid-row:auto!important;
  min-width:0!important;
  max-width:none;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
  margin:0!important;
}
.brand-header-logo{width:65px;height:65px;object-fit:contain;flex:none;}
.wordmark-text{display:flex;}
.wordmark-text strong{font-size:25px;letter-spacing:.035em;}
.wordmark-text small{font-size:8px;letter-spacing:.12em;}
.nav-links{
  order:2;
  grid-column:auto!important;
  grid-row:auto!important;
  display:flex!important;
  position:static!important;
  width:auto!important;
  min-width:0!important;
  max-height:none!important;
  flex:1 1 auto;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(7px,.7vw,13px)!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.nav-links>a{
  flex:0 0 auto;
  font-size:clamp(8px,.68vw,10px)!important;
  letter-spacing:.01em!important;
  white-space:nowrap;
  line-height:1.2;
}
.nav-links .nav-contact{padding:12px 13px;white-space:nowrap;}
.header-phone{
  order:3;
  grid-column:auto!important;
  grid-row:auto!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:auto!important;
  height:auto!important;
  max-width:none!important;
  flex:0 0 auto;
  justify-self:auto!important;
  font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif!important;
  font-size:clamp(25px,2.05vw,31px)!important;
  line-height:1.1!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
  margin:0!important;
}
.mobile-menu{order:4;display:none!important;grid-column:auto!important;grid-row:auto!important;flex:none;margin:0!important;}
@media(min-width:1201px) and (max-width:1370px){
  .brand-header-logo{width:57px;height:57px}
  .wordmark-text strong{font-size:22px}
  .wordmark-text small{font-size:7px}
  .nav-shell{gap:11px!important}
  .nav-links{gap:8px!important}
  .nav-links>a{font-size:8px!important}
  .nav-links .nav-contact{padding:10px 11px}
  .header-phone{font-size:26px!important}
}
/* Keep logo, phone and mobile navigation on ONE row on tablets/small laptops. */
@media(max-width:1200px){
  :root{--header:86px}
  .nav-shell{gap:clamp(8px,1.2vw,17px)!important}
  .brand-header-logo{width:60px;height:60px}
  .wordmark-text strong{font-size:25px}
  .wordmark-text small{font-size:8px}
  .header-phone{order:2;font-size:clamp(23px,3vw,31px)!important;margin-left:auto!important;}
  .mobile-menu{order:3;display:inline-flex!important;align-items:center;justify-content:center;padding:11px 13px;white-space:nowrap;}
  .nav-links{
    order:4;
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-height:calc(100dvh - var(--header) - 10px)!important;
    overflow-y:auto!important;
    display:none!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    padding:10px!important;
    background:#0b2438!important;
    border:1px solid rgba(255,255,255,.15)!important;
    border-radius:0 0 14px 14px!important;
    box-shadow:0 20px 32px rgba(0,0,0,.35)!important;
  }
  .nav-links.is-open{display:flex!important}
  .nav-links>a{font-size:12px!important;letter-spacing:.05em!important;padding:13px 14px!important;}
  .nav-links .nav-contact{margin-top:6px;padding:13px!important}
}
@media(max-width:700px){
  :root{--header:78px}
  .wordmark-text{display:none!important}
  .brand-header-logo{width:60px;height:60px}
  .header-phone{font-size:clamp(19px,5vw,28px)!important}
  .mobile-menu{font-size:10px;letter-spacing:.02em;padding:10px 11px}
}
@media(max-width:390px){
  :root{--header:72px}
  .brand-header-logo{width:53px;height:53px}
  .header-phone{font-size:clamp(17px,5vw,19px)!important;letter-spacing:-.04em!important}
  .mobile-menu{padding:8px 8px;font-size:9px}
  .nav-shell{gap:6px!important}
}





/* Draft 5G.7 — header arrangement: logo, telephone number, navigation tabs.
   Preserve the existing fixed header and mobile menu behavior. */
@media (min-width:1201px) {
  .nav-shell {justify-content:flex-start!important;gap:clamp(12px,1.2vw,22px)!important;}
  .wordmark {order:1!important;}
  .header-phone {order:2!important;margin:0!important;flex-shrink:0;}
  .nav-links {order:3!important;flex:1 1 auto!important;justify-content:flex-end!important;margin:0!important;}
  .mobile-menu {order:4!important;}
}
@media (min-width:1201px) and (max-width:1370px) {
  .nav-shell {gap:clamp(9px,1vw,15px)!important;}
  .nav-links {gap:clamp(6px,.65vw,10px)!important;}
}
@media (max-width:1200px) {
  .wordmark {order:1!important;}
  .header-phone {order:2!important;margin:0!important;}
  .mobile-menu {order:3!important;margin-left:auto!important;}
  .nav-links {order:4!important;}
}





/* Draft 5G.8: match the phone number to the A VETERANS wordmark type size,
   with a subtle, readable black outline to lift the gold numbers from the navy header.
   Keep the approved logo → phone → navigation order and fixed header. */
.header-phone {
  color: #efd4ab !important;
  font-family: 'Barlow Condensed','Arial Narrow',Impact,sans-serif !important;
  font-weight: 900 !important;
  -webkit-text-stroke: .7px #02090f;
  paint-order: stroke fill;
  text-shadow:
    -1px -1px 0 #02090f,
     1px -1px 0 #02090f,
    -1px  1px 0 #02090f,
     1px  1px 0 #02090f,
     0 3px 7px rgba(0,0,0,.55);
}
@media (min-width:1371px) {
  .header-phone { font-size:25px!important; }
}
@media (min-width:1201px) and (max-width:1370px) {
  .header-phone { font-size:22px!important; }
}
@media (min-width:701px) and (max-width:1200px) {
  .header-phone { font-size:25px!important; }
}
/* At phone width the wordmark text is hidden; preserve the smaller responsive
   phone sizes so logo, number, and menu all remain on one line. */




/* Corporate office routing remains in service information and contact sections, not the header. */
.avpc-office-note{border-left:4px solid #d8bc8d;padding:13px 16px!important;margin:18px 0!important;background:rgba(213,187,150,.10);font-weight:700}
.avpc-office-cta{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:10px 0 0;border-radius:8px;padding:11px 15px;background:#a93546;color:white!important;text-decoration:none;font-weight:900;font-size:12px;letter-spacing:.06em}
.avpc-modal-office{background:#f3ece0;color:#123243;border-radius:8px;padding:13px 15px;margin:14px 0 0;font:700 12px/1.65 'DM Sans',Arial,sans-serif}
.avpc-footer-office{margin-top:10px;color:#cfd9df;font-size:12px;line-height:1.6}
.avpc-footer-office a{color:#eed4a9;font-weight:900}




/* Draft 5G.15: financing tab and tiny inherited footer readability fix. */
.avpc-footer-office{display:block!important;margin-top:10px!important}
@media(min-width:1201px){
  .site-header .nav-links{gap:clamp(5px,.65vw,10px)!important;min-width:0}
  .site-header .nav-links>a{font-size:clamp(8px,.66vw,10px)!important;letter-spacing:.025em!important;white-space:nowrap}
  .site-header .nav-links .nav-contact{padding:10px 10px!important}
}
@media(min-width:1201px) and (max-width:1480px){
  .site-header .nav-shell{gap:10px!important}
  .site-header .wordmark{min-width:0!important}
  .site-header .brand-header-logo{width:59px;height:59px}
  .site-header .wordmark-text strong{font-size:24px}
  .site-header .wordmark-text small{font-size:8px}
  .site-header .header-phone{font-size:24px!important}
  .site-header .nav-links>a{font-size:8.5px!important}
}
@media(min-width:1201px) and (max-width:1270px){
  .site-header .nav-shell{gap:7px!important}
  .site-header .nav-links{gap:5px!important}
  .site-header .nav-links>a{font-size:8px!important;letter-spacing:0!important}
  .site-header .nav-links .nav-contact{padding:9px 8px!important}
}



/* Draft 5G.15 — Harrison Soape profile, supplied images and biography. */
.avpc-profile-harrison-images{width:100%;display:grid;gap:17px;position:relative}
.avpc-profile-harrison-images[hidden],#avpc-profile-harrison-bio[hidden]{display:none!important}
.avpc-harrison-service-photo img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#091b2b}
.avpc-harrison-family-photo img{display:block;width:100%;height:auto;max-height:510px;object-fit:contain;background:#091b2b}
@media(max-width:680px){
  .avpc-profile-harrison-images{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:start}
  .avpc-harrison-service-photo img{height:184px;aspect-ratio:auto;object-fit:contain}
  .avpc-harrison-family-photo img{height:184px;max-height:none;object-fit:contain}
}
@media(max-width:370px){.avpc-harrison-service-photo img,.avpc-harrison-family-photo img{height:156px}}



/* Draft 5G.15: approved corporate footer integrated site-wide with real company pool photo. */
.avpc-approved-footer{margin-top:0;background:#071925;color:#e7edf1;position:relative;overflow:hidden}
.avpc-approved-footer .avpc-footer-shell{width:min(1180px,calc(100% - 40px));margin:auto}
.avpc-approved-footer .avpc-footer-photo{min-height:154px;background:linear-gradient(0deg,rgba(4,18,30,.45),rgba(4,18,30,.12)),url('assets/modern-geometric-pool-with-integrated-spa-and-light-stone-deckin-61e45af7.webp') center center/cover no-repeat;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.08)}
.avpc-approved-footer .avpc-footer-main{padding:28px 0 24px;background:linear-gradient(180deg,#081926 0%,#06131e 100%)}
.avpc-approved-footer .avpc-footer-grid{display:grid;grid-template-columns:minmax(240px,300px) minmax(280px,1fr) minmax(180px,230px);gap:26px;align-items:start}
.avpc-approved-footer .avpc-footer-brand{display:flex;gap:16px;align-items:flex-start}
.avpc-approved-footer .avpc-footer-logo{width:110px;max-width:32vw;height:auto;flex:0 0 auto;object-fit:contain;filter:drop-shadow(0 7px 20px rgba(0,0,0,.24))}
.avpc-approved-footer .avpc-footer-office-label,.avpc-approved-footer .avpc-footer-links-title,.avpc-approved-footer .avpc-footer-eyebrow{display:block;margin:0 0 10px;font:800 10px/1.6 'DM Sans',Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#d9bd90}
.avpc-approved-footer .avpc-footer-office strong{display:block;font:900 22px/1 'Barlow Condensed','Arial Narrow',Impact,sans-serif;letter-spacing:.03em;color:#fff;margin-bottom:10px}
.avpc-approved-footer .avpc-footer-office span{display:block;color:#c7d6de;font-size:13px;line-height:1.7}
.avpc-approved-footer .avpc-footer-office a{display:inline-block;margin-top:8px;color:#f3dec0;font-weight:900;text-decoration:none}
.avpc-approved-footer .avpc-footer-message h3{margin:0 0 10px;font:900 clamp(34px,5vw,56px)/.92 'Barlow Condensed','Arial Narrow',Impact,sans-serif;color:#fff;letter-spacing:-.02em;text-transform:uppercase}
.avpc-approved-footer .avpc-footer-message h3 .gold{color:#d9bd90}
.avpc-approved-footer .avpc-footer-message p{margin:0 0 10px;color:#d0dde4;font-size:14px;line-height:1.8;max-width:640px}
.avpc-approved-footer .avpc-footer-links nav{display:flex;flex-direction:column;gap:10px}
.avpc-approved-footer .avpc-footer-links a{display:inline-flex;align-items:center;gap:8px;color:#eaf2f6;text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.04em}
.avpc-approved-footer .avpc-footer-links a:hover{color:#f5d8a8}
.avpc-approved-footer .avpc-footer-links a::before{content:'★';color:#b23543;font-size:10px;line-height:1}
.avpc-approved-footer .avpc-footer-credits{margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.11)}
.avpc-approved-footer .avpc-footer-credits p{margin:0 0 8px;color:#c8d5dd;font-size:12px;line-height:1.75}
.avpc-approved-footer .avpc-footer-credits small{display:block;color:#8fa4b1;font-size:11px;line-height:1.7}
@media (max-width:900px){
 .avpc-approved-footer .avpc-footer-grid{grid-template-columns:1fr;gap:22px}
 .avpc-approved-footer .avpc-footer-links nav{flex-direction:row;flex-wrap:wrap;gap:12px 18px}
}
@media (max-width:600px){
 .avpc-approved-footer .avpc-footer-shell{width:min(100% - 28px,1180px)}
 .avpc-approved-footer .avpc-footer-main{padding:22px 0 20px}
 .avpc-approved-footer .avpc-footer-brand{flex-direction:column;gap:14px}
 .avpc-approved-footer .avpc-footer-logo{width:92px}
 .avpc-approved-footer .avpc-footer-message h3{font-size:40px}
 .avpc-approved-footer .avpc-footer-message p{font-size:13px}
}



/* Launch-ready preview with deferred territory and franchise listings removed. */
.avpc-approved-footer .avpc-footer-office .avpc-footer-email{display:block;font-size:12px;overflow-wrap:anywhere;margin-top:3px;font-weight:650;text-decoration:underline;text-underline-offset:3px}


/* Draft 5G.19: multi-page staging improvements */
html {scroll-behavior:smooth; scroll-padding-top:118px}
body {overflow-x:hidden}
.site-header {position:sticky!important;top:0!important;z-index:1200!important;overflow:visible!important;}
.site-header .nav-shell{overflow:visible!important;align-items:center!important;gap:16px!important;}
.wordmark{flex-shrink:0;overflow:visible!important;min-width:0!important;position:relative;z-index:4;}
.wordmark .wordmark-text{display:none!important}
.brand-header-logo{width:88px!important;height:88px!important;max-height:none!important;object-fit:contain!important;object-position:center!important;display:block!important;}
.header-phone{font-weight:900!important;font-size:clamp(16px,1.65vw,24px)!important;white-space:nowrap!important;border:2px solid #b59569!important;border-radius:4px!important;padding:10px 14px!important;line-height:1.15!important;position:relative!important;z-index:5!important;flex-shrink:0!important;}
.nav-links{gap:clamp(8px,1.05vw,18px)!important;}
.nav-links a{font-size:clamp(10px,.88vw,13px)!important;white-space:nowrap;}
.nav-links a[aria-current=page]{color:#dcc49d!important;}
.hero-buttons,.hero-copy,.action{position:relative;z-index:2}
.hero-background{pointer-events:none!important}
.feature-card .wash,.story-visual .overlay,.hero-grid {pointer-events:none!important}
a:focus-visible,button:focus-visible,input:focus-visible {outline:3px solid #e1b76b;outline-offset:3px}
.extra-card{position:relative;}
.stretched-link{position:absolute;inset:0;display:block;z-index:6;}
.extra-card:hover{transform:translateY(-3px);transition:transform .2s ease;}
.extra-card a.stretched-link:focus-visible{outline:3px solid #e4bf7c;outline-offset:3px}
.subpage-hero{position:relative;overflow:hidden;min-height:390px;background:linear-gradient(110deg,#061925,#12344a);display:flex;align-items:center;padding:84px 0 72px;border-bottom:1px solid rgba(217,190,142,.25)}
.subpage-hero .subhero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35;pointer-events:none}
.subpage-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,17,26,.97),rgba(5,24,37,.79) 60%,rgba(8,27,41,.26));pointer-events:none}
.subpage-hero .shell{position:relative;z-index:2}
.subpage-hero h1{color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:clamp(48px,7vw,90px);line-height:.94;letter-spacing:-.025em;text-transform:uppercase;margin:15px 0}
.subpage-hero h1 em{color:#dcc49d;font-style:normal}
.subpage-hero p{max-width:740px;font-size:clamp(16px,1.45vw,20px);color:#dce9ed;line-height:1.65}
.breadcrumb{font:700 12px 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.16em;color:#dcc49d}
.breadcrumb a{color:inherit;text-decoration:underline;text-underline-offset:4px}
.body-contents{background:#f8f9fa;color:#102d3e}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;margin-top:28px}
.detail-panel{background:#fff;border:1px solid #e1e6e7;border-top:3px solid #b38c53;box-shadow:0 12px 35px rgba(8,20,25,.05);padding:26px;scroll-margin-top:140px}
.detail-panel h3{font-family:'Barlow Condensed',sans-serif;color:#102d3e;font-size:31px;line-height:1;margin:0 0 12px}
.detail-panel p{font-size:15px;line-height:1.68;color:#496170;margin-bottom:0}
.section .eyebrow-small{letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#9b784c;font-size:11px}
.cta-block{background:#102b3b;color:#fff;padding:55px 0}
.cta-block .shell{display:flex;align-items:center;justify-content:space-between;gap:25px}
.cta-block h2{color:#fff;font:900 clamp(36px,4vw,55px)/1 'Barlow Condensed',sans-serif;margin:0 0 13px}
.cta-block p{color:#c9d6dd;margin:0}
.cta-block .action{white-space:nowrap}
.financing-teaser{background:linear-gradient(120deg,#102d40,#071c2b);color:#fff;padding:72px 0;border-top:1px solid rgba(255,255,255,.08)}
.financing-teaser .shell{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:28px;align-items:center}
.financing-teaser h2{font:900 clamp(42px,5.6vw,72px)/.96 'Barlow Condensed',sans-serif;color:white;margin:9px 0 15px}
.financing-teaser em{font-style:normal;color:#dcc49d}
.financing-teaser p{color:#e0e7ec;line-height:1.65;max-width:660px}
.finance-partners{display:flex;flex-direction:column;gap:12px}
.finance-partners a,.lender-card{display:block;background:rgba(255,255,255,.08);border:1px solid rgba(219,190,147,.6);color:white;text-decoration:none;padding:20px 24px;border-radius:4px}
.finance-partners strong{display:block;font:800 29px/1.1 'Barlow Condensed',sans-serif;text-transform:uppercase}
.finance-partners span{display:block;margin-top:6px;color:#d1dce2;font-size:13px}
.finance-partners a:hover{background:rgba(255,255,255,.17)}
.financing-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}
.financing-list .lender-card{background:#102b3a;min-height:250px;display:flex;flex-direction:column;justify-content:space-between}
.lender-card h3{font:800 42px/1 'Barlow Condensed',sans-serif;color:#fff;margin:0}
.lender-card p{color:#cddae0;line-height:1.7}
.lender-card a{color:#f7d59e;text-transform:uppercase;font-weight:800;text-underline-offset:5px}
.disclaimer{font-size:13px;color:#6b7880;line-height:1.65;max-width:860px;margin-top:26px}
.form-embed-shell{display:block;background:white;border:1px solid #c9d4d9;border-radius:8px;overflow:hidden;min-height:700px}
.zoho-live-iframe{display:block;width:100%;height:1650px;border:0;background:#fff}
.zoho-fallback{margin:16px 0 0;font-size:14px;color:#29485b}
.zoho-fallback a{font-weight:800;text-decoration:underline}
.form-direct-link{display:inline-block;background:#bd965c;color:#102334!important;text-decoration:none!important;padding:11px 16px;border-radius:4px;margin:12px 0;font-weight:800!important}
.form-panel-wide{max-width:960px;margin:auto}
.est-intro{text-align:center;max-width:800px;margin:0 auto 38px}
.est-intro p{color:#3d5869;line-height:1.7}
.estimate-page .section{padding-top:65px;padding-bottom:70px}
.estimate-page .zoho-live-iframe{height:1850px}
.estimate-page .contact {background:#edf3f6}
.avpc-footer-credits small{display:block;margin-top:8px}
.site-skip{position:absolute;left:-9999px}
.site-skip:focus{left:8px;top:8px;z-index:9999;background:#fff;padding:15px;color:#001e2f}
@media(max-width:1190px){.nav-links a{font-size:11px!important}.brand-header-logo{width:72px!important;height:72px!important}.header-phone{font-size:16px!important;padding:10px!important}}
@media(max-width:1060px){.mobile-menu{display:flex!important;z-index:10!important}.nav-links{display:none!important;position:absolute!important;top:100%!important;left:0;right:0;flex-direction:column!important;background:#061e2d!important;padding:18px 22px!important;box-shadow:0 18px 22px rgba(0,0,0,.25)!important;gap:0!important}.nav-links.is-open{display:flex!important}.nav-links a{width:100%;padding:12px 4px!important;font-size:14px!important}.site-header .nav-shell{justify-content:space-between!important}}
@media(max-width:800px){.subpage-hero{min-height:320px;padding:55px 0}.detail-grid{grid-template-columns:1fr}.financing-list{grid-template-columns:1fr}.financing-teaser .shell{grid-template-columns:1fr}.cta-block .shell{display:block}.cta-block .action{margin-top:20px}.zoho-live-iframe{height:1900px}.estimate-page .zoho-live-iframe{height:2100px}}
@media(max-width:520px){.brand-header-logo{height:62px!important;width:62px!important}.header-phone{font-size:14px!important;padding:8px!important}.mobile-menu{font-size:11px!important}.subpage-hero h1{font-size:52px}.zoho-live-iframe{height:2150px}.estimate-page .zoho-live-iframe{height:2300px}}


/* Draft 5G.20 Gallery Review: clean interactive image preview */
.photo-view{display:block;position:relative;width:100%;height:100%;padding:0;border:0;background:transparent;text-align:inherit;cursor:zoom-in;color:inherit}
.photo-view>img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.gallery-grid .photo-view{min-height:240px}
.gallery-feature .photo-view{min-height:520px}
.gallery-grid figure:focus-within,.timeline-card:focus-within,.gallery-detail-card:focus-within{outline:3px solid #b23543;outline-offset:3px}
.photo-view:focus-visible{outline:3px solid #e7c58f;outline-offset:-3px}
.gallery-grid figure:hover .photo-view img,.gallery-detail-card:hover .photo-view img{transform:scale(1.035)}
.gallery-grid figcaption,.details-photo-grid figcaption{pointer-events:none}
.timeline-card .photo-view{height:auto;aspect-ratio:4/3}
.timeline-card .photo-view img{aspect-ratio:4/3}
.details-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gallery-details{background:#ecf0f1}
.gallery-detail-card{margin:0;overflow:hidden;border-radius:20px;background:#071a29;position:relative;box-shadow:0 18px 40px rgba(9,26,45,.08)}
.gallery-detail-card .photo-view{aspect-ratio:4/3}
.gallery-detail-card .photo-view img{aspect-ratio:4/3}
.details-photo-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:24px 20px 18px;color:#fff;background:linear-gradient(0deg,rgba(7,26,41,.94),rgba(7,26,41,0));font-size:12px;letter-spacing:.14em;font-weight:800;text-transform:uppercase}
.photo-lightbox{padding:0;max-width:min(94vw,1220px);width:100%;max-height:94vh;background:#071a29;color:#fff;border:1px solid #546675;border-radius:18px;box-shadow:0 20px 100px rgba(0,0,0,.6);overflow:hidden}
.photo-lightbox::backdrop{background:rgba(3,9,15,.87)}
.photo-lightbox .lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.13)}
.photo-lightbox .lightbox-caption{font-size:13px;line-height:1.4;font-weight:700}
.photo-lightbox .lightbox-counter{font-size:11px;color:#b9c9d2}
.photo-lightbox button{appearance:none;border:1px solid rgba(255,255,255,.22);background:#16324a;color:#fff;border-radius:10px;padding:9px 14px;font:700 13px DM Sans,Arial,sans-serif;cursor:pointer}
.photo-lightbox button:focus-visible{outline:2px solid #e7c58f;outline-offset:2px}
.photo-lightbox .lightbox-photo{display:block;width:100%;max-height:min(76vh,850px);object-fit:contain;background:#040b11}
.photo-lightbox .lightbox-controls{display:flex;align-items:center;justify-content:center;gap:18px;padding:10px 14px}
@media(max-width:900px){.gallery-feature .photo-view{min-height:340px}.details-photo-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.details-photo-grid{grid-template-columns:1fr}.photo-lightbox{max-height:98vh;max-width:98vw}.photo-lightbox .lightbox-photo{max-height:70vh}}
@media(prefers-reduced-motion:reduce){.photo-view>img{transition:none}}


/* Draft 5G.21: official branding above live Zoho CRM forms. The Zoho iframe itself is not changed. */
.avpc-form-brand { display:flex; align-items:center; justify-content:center; padding:20px 16px; margin:0 0 18px; background:#071a29; border:1px solid rgba(189,150,92,.44); border-radius:12px; min-height:146px; }
.avpc-form-brand-logo { display:block; width:clamp(155px, 42%, 230px); max-width:100%; height:auto; object-fit:contain; }
.estimate-page .form-panel-wide > .avpc-form-brand { margin-bottom:0; border-radius:12px 12px 0 0; padding:26px 16px; }
.estimate-page .form-panel-wide > .avpc-form-brand + .form-embed-shell { border-radius:0 0 8px 8px; border-top:0; }
@media (max-width:580px) {
  .avpc-form-brand {padding:15px 12px; min-height:132px;}
  .avpc-form-brand-logo {width:175px;}
  .estimate-page .form-panel-wide > .avpc-form-brand {padding:20px 12px;}
}

/* Draft 5G.22: real-project Before and After comparison gallery */
.comparison{--reveal:50%; overflow:hidden; background:#061a27;}
.comparison .comparison-after {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.comparison .before-layer {position:absolute;inset:0;width:100%;height:100%;overflow:hidden;clip-path:inset(0 calc(100% - var(--reveal)) 0 0);}
.comparison .before-layer img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.comparison .slider-line,.comparison .slider-handle {left:var(--reveal);z-index:3;}
.comparison .comparison-label {z-index:5;}
.comparison .compare-range {z-index:9;}
.comparison:focus-within {outline:3px solid #e9bd70;outline-offset:-4px;}
.renovation-showcase{background:#f0f4f6;padding-top:72px;padding-bottom:100px;}
.showcase-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,420px);gap:35px;align-items:end;}
.showcase-intro h2{font-size:clamp(49px,5.7vw,83px);}
.showcase-intro p{margin:0 0 3px;color:#455c6b;line-height:1.9;}
.showcase-stats{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 26px;}
.showcase-stats span {display:flex;align-items:center;gap:7px;background:#fff;border:1px solid #dce3e7;color:#274456;border-radius:100px;padding:9px 17px;font-size:13px;font-weight:700;}
.showcase-stats b{color:#a32a3c;font-size:18px;}
.renovation-jump{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding:16px 0 24px;border-bottom:1px solid #d5dee4;}
.renovation-jump span{font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:#496375;margin-right:5px;}
.renovation-jump a{display:inline-block;text-decoration:none;background:#dfe7eb;color:#122d3c;border:1px solid #c4d2d8;border-radius:9px;padding:10px 13px;font-size:12px;font-weight:800;white-space:nowrap;}
.renovation-jump a:hover,.renovation-jump a:focus-visible{background:#122d3c;color:#fff;outline:2px solid #c89c61;outline-offset:1px;}
.renovation-project{padding:51px 0 0;scroll-margin-top:125px;}
.renovation-project-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;border-bottom:1px solid #c9d6dc;padding:0 2px 20px;}
.renovation-project-heading .section-label{font-size:11px;margin:0 0 8px;}
.renovation-project-heading h2{font-size:clamp(43px,4.3vw,63px);line-height:1;color:#102b3e;margin:0;}
.project-angle-count{font-size:12px;color:#496a7d;text-transform:uppercase;letter-spacing:.12em;font-weight:800;margin-bottom:5px;}
.renovation-pairs{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;margin:22px 0 0;}
.renovation-project:has(.renovation-pair:nth-child(2)) .renovation-pairs {grid-template-columns:repeat(2,minmax(0,1fr));}
.renovation-pair{min-width:0;background:#0a1d2e;color:#fff;padding:21px;border:1px solid #1d3e50;border-radius:19px;box-shadow:0 15px 45px rgba(9,28,43,.11);}
.pair-topline{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:7px 20px;}
.pair-angle{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.14em;color:#e6c08a;}
.renovation-showcase .pair-topline p{font-size:13px;color:#cad8de;margin:0;line-height:1.55;}
.renovation-compare-wrap{margin-top:16px;}
.renovation-pair .comparison{aspect-ratio:16/10;}
.renovation-project:has(.renovation-pair:nth-child(2)) .comparison{aspect-ratio:4/3;}
.pair-full-links{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:17px 2px 0;}
.pair-full-links a{color:#f2d6a9;text-underline-offset:4px;font-weight:800;font-size:12px;letter-spacing:.02em;}
.pair-full-links a:hover{color:#fff;}
.feature-bottomline{display:flex;justify-content:space-between;align-items:center;gap:17px;flex-wrap:wrap;padding:25px 0 3px;}
.feature-bottomline>span{font-size:13px;color:#c7dbe5;}
.renovation-home-feature .comparison{aspect-ratio:16/9;}
@media(max-width:880px){.showcase-intro{grid-template-columns:1fr;gap:18px}.renovation-project:has(.renovation-pair:nth-child(2)) .renovation-pairs{grid-template-columns:1fr}.renovation-project:has(.renovation-pair:nth-child(2)) .comparison{aspect-ratio:16/10;}}
@media(max-width:560px){.renovation-showcase{padding:48px 0 68px}.renovation-project{padding-top:40px}.renovation-project-heading{display:block}.project-angle-count{display:block;margin-top:12px}.renovation-pair{padding:12px;border-radius:12px}.renovation-pair .comparison,.renovation-project:has(.renovation-pair:nth-child(2)) .comparison,.renovation-home-feature .comparison{aspect-ratio:4/5}.pair-full-links{gap:8px}.pair-full-links a{font-size:11px}.comparison-label{top:10px}.comparison-label.before{left:8px}.comparison-label.after{right:8px}.slider-handle{width:44px;height:44px}.showcase-stats{gap:6px}.showcase-stats span{font-size:11px;padding:7px 10px}}


/* Financing banner update - Draft 5G.24 */
.lender-banner-card{padding:16px;gap:14px;min-height:auto}
.lender-banner-link{display:block;background:#fff;border-radius:14px;padding:12px;text-decoration:none}
.lender-banner-image{display:block;width:100%;height:auto;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.lender-card-body{display:flex;flex-direction:column;gap:10px;padding:2px 6px 4px}
.lender-card-body p{margin:0;color:#d6e1e7}
.lender-card-body a{align-self:flex-start}

/* Draft 5G.25 — Pool Features & Finishes */
/* The header is sticky, not fixed: remove legacy body padding that leaves a blank strip above it. */
body{padding-top:0!important}
.pf-hero {min-height:460px}
.pf-hero .subhero-photo{object-position:center 55%;opacity:.47}
.pf-hero-kicker{margin-top:30px;color:#dcc49d;font-size:11px;font-weight:900;letter-spacing:.22em}
.pf-intro{background:#f6f7f6}
.pf-intro-heading{display:grid;grid-template-columns:1fr minmax(270px,410px);gap:40px;align-items:end;margin-bottom:38px}
.pf-intro-heading h2{max-width:710px}
.pf-intro-heading p{margin:0;color:#526a78}
.pf-tile-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.pf-tile{position:relative;grid-column:span 2;min-height:380px;border-radius:19px;overflow:hidden;display:block;background:#11283a;color:#fff;isolation:isolate;box-shadow:0 14px 36px rgba(9,27,43,.16)}
.pf-tile:nth-child(4),.pf-tile:nth-child(5){grid-column:span 3;min-height:360px}
.pf-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.pf-tile:hover img{transform:scale(1.045)}
.pf-tile-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,21,33,.93) 0%,rgba(5,21,33,.38) 70%,rgba(5,21,33,.04) 100%)}
.pf-tile-content{position:absolute;left:25px;right:25px;bottom:26px;display:flex;flex-direction:column;gap:9px}
.pf-tile-content small{font-size:10px;letter-spacing:.15em;color:#e5d3b1;font-weight:900}
.pf-tile-content strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(30px,3.4vw,48px);line-height:.96;letter-spacing:.015em}
.pf-tile-content>span{font-size:10px;letter-spacing:.12em;font-weight:900;color:#fff}
.pf-tile:focus-visible{outline:4px solid #c3a673;outline-offset:5px}
.pf-gallery-note{margin:24px 0 0;font-size:13px!important;line-height:1.6!important;color:#71828b!important}
.pf-detail{padding:92px 0;background:#fff;scroll-margin-top:110px;border-top:1px solid #e5e8e8}
.pf-detail:nth-of-type(even){background:#f0f3f3}
.pf-detail-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(35px,5vw,82px);align-items:center}
.pf-detail:nth-of-type(even) .pf-detail-copy{order:2}
.pf-detail:nth-of-type(even) .pf-feature-photo{order:1}
.pf-detail-copy h2{font:900 clamp(52px,5.4vw,82px)/.9 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.02em;color:#0c2637;margin:12px 0 22px}
.pf-detail-copy h2 em{font:italic 400 .94em 'Instrument Serif',Georgia,serif;color:#b23543}
.pf-lead{font-size:17px;line-height:1.85;color:#425c6d;margin:0 0 25px}
.pf-consider{border-left:4px solid #b23543;background:rgba(193,168,126,.1);padding:17px 23px;margin-bottom:28px}
.pf-consider b{font-size:11px;letter-spacing:.13em;color:#8a3140}
.pf-consider p{line-height:1.7;margin:9px 0 0;color:#526675;font-size:14px}
.pf-feature-photo{margin:0;background:#102b3b;border-radius:20px;overflow:hidden;box-shadow:0 20px 45px rgba(9,26,45,.15)}
.pf-feature-photo .photo-view{aspect-ratio:5/3.6;position:relative}
.pf-feature-photo img{width:100%;height:100%;object-fit:cover}
.pf-feature-photo .pf-zoom{position:absolute;right:15px;bottom:15px;background:rgba(7,26,41,.83);border:1px solid rgba(255,255,255,.3);border-radius:50px;color:#fff;padding:10px 16px;font:900 10px DM Sans,Arial,sans-serif;letter-spacing:.13em}
.pf-feature-photo figcaption{padding:12px 17px;color:#d6e1e8;font-size:11px;line-height:1.55}
.pf-more{background:#e4ebec}
.pf-more-grid{display:grid;grid-template-columns:1fr minmax(230px,370px);gap:55px;align-items:center}
.pf-more p{max-width:620px}
.pf-more-links{display:flex;flex-direction:column;gap:10px}
.pf-more-links a{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border:1px solid #cedbdc;background:#fff;color:#133344;border-radius:8px;font-weight:900;letter-spacing:.07em;font-size:12px}
.pf-more-links a:hover{border-color:#b23543}
.pf-home-link{display:inline-block;margin-top:24px}
.pf-panel-links{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px}
.pf-panel-links a{font-size:11px;font-weight:900;color:#9b3648;text-decoration:underline;text-underline-offset:4px}
@media(max-width:1180px){.pf-tile{grid-column:span 3;min-height:350px}.pf-tile:nth-child(4),.pf-tile:nth-child(5){grid-column:span 3;min-height:350px}}
@media(max-width:800px){.pf-hero{min-height:350px}.pf-intro-heading,.pf-detail-grid,.pf-more-grid{grid-template-columns:1fr}.pf-detail{padding:62px 0}.pf-detail:nth-of-type(even) .pf-detail-copy,.pf-detail:nth-of-type(even) .pf-feature-photo{order:initial}.pf-detail-grid{gap:26px}.pf-intro-heading{gap:20px}}
@media(max-width:550px){.pf-tile-grid{grid-template-columns:1fr}.pf-tile,.pf-tile:nth-child(4),.pf-tile:nth-child(5){grid-column:auto;min-height:310px}.pf-tile-content strong{font-size:39px}.pf-feature-photo .photo-view{aspect-ratio:1.35}.pf-detail-copy h2{font-size:55px}}
/* Seven navigation entries: switch to mobile menu before desktop links collide. */
@media (min-width:1061px) and (max-width:1310px){
  .site-header .mobile-menu{display:inline-flex!important;z-index:12!important}
  .site-header .nav-shell{position:relative!important}
  .site-header .nav-links{display:none!important;position:absolute!important;left:0!important;right:0!important;top:100%!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:12px 20px!important;background:#071a29!important;box-shadow:0 18px 35px rgba(0,0,0,.4)!important}
  .site-header .nav-links.is-open{display:flex!important}
  .site-header .nav-links>a{font-size:12px!important;width:100%;padding:12px!important}
}


/* Draft 5G.26: Coping galleries — travertine, limestone, flagstone */
.coping-showcase{background:#edf1f1;color:#0d2a3d;scroll-margin-top:110px}
.coping-intro{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}
.coping-intro h2{font:900 clamp(48px,5vw,76px)/.94 'Barlow Condensed',Impact,sans-serif;color:#102b3b;letter-spacing:-.018em;margin:12px 0 18px}
.coping-intro h2 em{font:italic 400 .92em 'Instrument Serif',Georgia,serif;color:#b23543}
.coping-intro p{margin:0;max-width:770px;line-height:1.8;color:#506675}
.coping-total{flex-shrink:0;text-align:right;display:flex;flex-direction:column;gap:4px;color:#0c293c}
.coping-total strong{font:900 78px/1 'Barlow Condensed',Impact,sans-serif;color:#a73443}
.coping-total span{font:900 11px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.18em}
.coping-material-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:40px 0 52px}
.coping-material-navigation a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:73px;background:#092438;color:white;padding:18px;border-radius:10px;text-decoration:none;text-transform:uppercase;font:900 19px/1.2 'Barlow Condensed',Impact,sans-serif;letter-spacing:.025em;border-bottom:3px solid #bb985e;transition:transform .2s ease,background .2s ease}
.coping-material-navigation a:hover{background:#173d52;transform:translateY(-2px)}
.coping-material-navigation a span{display:flex;gap:10px;align-items:center;color:#d9c7a3;font:700 11px 'DM Sans',Arial,sans-serif;letter-spacing:0;text-transform:none;white-space:nowrap}
.coping-material{scroll-margin-top:130px;padding:46px 0 55px;border-top:1px solid #cbd8db}
.coping-material-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:24px}
.coping-chip{color:#a43c4e;font-weight:900;font-size:11px;letter-spacing:.15em}
.coping-material h3{font:900 clamp(40px,4.5vw,66px)/1 'Barlow Condensed',Impact,sans-serif;color:#102b3b;margin:10px 0 7px}
.coping-material p{color:#536a74;margin:0;line-height:1.65}
.coping-enquire{font-size:11px;font-weight:900;letter-spacing:.11em;text-decoration:underline;text-underline-offset:5px;color:#9e3446;white-space:nowrap}
.coping-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.coping-photo{min-width:0;overflow:hidden;margin:0;background:#0e2b3e;border-radius:16px;box-shadow:0 10px 28px rgba(9,31,47,.11)}
.coping-photo .photo-view{aspect-ratio:4/3;position:relative;overflow:hidden}
.coping-photo .photo-view img{height:100%;width:100%;object-fit:cover}
.coping-photo .photo-view:hover img{transform:scale(1.045)}
.coping-photo-zoom{position:absolute;bottom:12px;right:12px;font:800 10px 'DM Sans',Arial,sans-serif;letter-spacing:.09em;color:#fff;background:rgba(6,21,34,.87);border-radius:99px;padding:8px 11px}
.coping-photo figcaption{padding:12px 14px;color:#e7e6df;font-size:12px}
.coping-photo-note{font-size:13px;line-height:1.7;color:#58717c;border-top:1px solid #ccd8dc;padding-top:20px;margin-top:16px}
@media(max-width:1000px){.coping-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.coping-material-navigation{grid-template-columns:1fr;gap:9px;margin:25px 0 34px}.coping-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.coping-intro h2{font-size:48px}.coping-total strong{font-size:55px}.coping-material-head{align-items:start;flex-direction:column;gap:12px}.coping-showcase{padding-top:60px}}
@media(max-width:460px){.coping-intro{display:block}.coping-total{align-items:flex-start;margin-top:24px}.coping-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.coping-photo{border-radius:10px}.coping-photo .photo-view{aspect-ratio:1}.coping-photo figcaption{padding:9px;font-size:10px}.coping-photo-zoom{font-size:8px;right:6px;bottom:6px;padding:6px 7px}}
@media(prefers-reduced-motion:reduce){.coping-material-navigation a{transition:none}}


/* Draft 5G.27 — fixed, expanded corporate header.
   Overrides the legacy header rules without changing the content layout. */
:root{--header:196px}
html{scroll-padding-top:calc(var(--header) + 18px)!important}
body{padding-top:var(--header)!important}
#top.site-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  height:var(--header)!important;
  min-height:var(--header)!important;
  z-index:1300!important;
  background:rgba(7,26,41,.97)!important;
  border-bottom:2px solid rgba(196,171,134,.46)!important;
  box-shadow:0 10px 32px rgba(0,0,0,.25)!important;
}
.site-header .nav-shell{
  width:min(1480px,calc(100% - 56px))!important;
  height:100%!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:176px minmax(0,1fr)!important;
  grid-template-rows:96px 92px!important;
  column-gap:34px!important;
  row-gap:0!important;
  align-items:center!important;
  justify-content:stretch!important;
  padding:0!important;
  position:relative!important;
  overflow:visible!important;
}
.site-header .wordmark{
  grid-column:1!important;
  grid-row:1 / 3!important;
  width:176px!important;
  height:176px!important;
  order:initial!important;
  justify-self:start!important;
  align-self:center!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
  min-width:0!important;
}
.site-header .brand-header-logo{
  width:176px!important;
  height:176px!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
}
.site-header .header-phone{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:start!important;
  align-self:end!important;
  margin:0 0 9px 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  outline:0!important;
  height:auto!important;
  width:auto!important;
  font-family:'Barlow Condensed','Arial Narrow',sans-serif!important;
  font-weight:900!important;
  font-size:clamp(28px,2.15vw,36px)!important;
  line-height:1.15!important;
  letter-spacing:.015em!important;
  color:#e5c997!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.site-header .header-phone:hover{text-decoration:underline!important;text-underline-offset:4px}
.site-header .header-phone:focus-visible{outline:3px solid #e1b76b!important;outline-offset:6px!important}
.site-header .nav-links{
  grid-column:2!important;
  grid-row:2!important;
  justify-self:stretch!important;
  align-self:start!important;
  position:static!important;
  display:flex!important;
  width:100%!important;
  height:auto!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-width:0!important;
  max-height:none!important;
  padding:0!important;
  margin:6px 0 0 0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  overflow:visible!important;
  gap:clamp(8px,1vw,18px)!important;
}
.site-header .nav-links>a{
  display:inline-block!important;
  flex:0 0 auto!important;
  width:auto!important;
  font-size:clamp(13px,1.02vw,16px)!important;
  line-height:1.45!important;
  letter-spacing:.025em!important;
  font-weight:800!important;
  white-space:nowrap!important;
  padding:10px 0!important;
}
.site-header .mobile-menu{display:none!important;}
/* Give anchored sections a clear view beneath the fixed masthead. */
.pf-detail,.coping-showcase,.coping-material,.renovation-project,
.section[id],section[id]{scroll-margin-top:calc(var(--header) + 20px)!important}

@media(max-width:1380px){
  :root{--header:154px}
  .site-header .nav-shell{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    gap:clamp(10px,2vw,24px)!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:calc(100% - 48px)!important;
  }
  .site-header .wordmark{
    order:1!important;
    display:flex!important;
    width:132px!important;
    height:132px!important;
    flex:0 0 132px!important;
  }
  .site-header .brand-header-logo{width:132px!important;height:132px!important}
  .site-header .header-phone{
    order:2!important;
    margin:0 0 0 auto!important;
    align-self:center!important;
    flex:0 0 auto!important;
    font-size:clamp(24px,2.6vw,34px)!important;
  }
  .site-header .mobile-menu{
    order:3!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    margin:0!important;
    padding:12px 15px!important;
    font-size:15px!important;
  }
  .site-header .nav-links{
    order:4!important;
    display:none!important;
    position:absolute!important;
    top:100%!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    margin:0!important;
    padding:14px 20px!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    overflow-y:auto!important;
    max-height:calc(100dvh - var(--header) - 6px)!important;
    background:#071a29!important;
    border:1px solid rgba(196,171,134,.36)!important;
    border-radius:0 0 12px 12px!important;
    box-shadow:0 20px 36px rgba(0,0,0,.3)!important;
  }
  .site-header .nav-links.is-open{display:flex!important}
  .site-header .nav-links>a{
    width:100%!important;
    font-size:16px!important;
    padding:14px 12px!important;
    letter-spacing:.05em!important;
  }
}
@media(max-width:800px){
  :root{--header:140px}
  .site-header .wordmark{width:116px!important;height:116px!important;flex-basis:116px!important}
  .site-header .brand-header-logo{width:116px!important;height:116px!important}
  .site-header .nav-shell{width:calc(100% - 32px)!important;gap:10px!important}
  .site-header .header-phone{font-size:clamp(20px,3.1vw,27px)!important}
  .site-header .mobile-menu{padding:10px 12px!important;font-size:13px!important}
}
@media(max-width:520px){
  :root{--header:122px}
  .site-header .wordmark{width:100px!important;height:100px!important;flex-basis:100px!important}
  .site-header .brand-header-logo{width:100px!important;height:100px!important}
  .site-header .nav-shell{width:calc(100% - 22px)!important;gap:6px!important}
  .site-header .header-phone{font-size:clamp(17px,4.25vw,21px)!important;letter-spacing:-.02em!important}
  .site-header .mobile-menu{padding:9px 9px!important;font-size:11px!important}
}
@media(max-width:380px){
  :root{--header:116px}
  .site-header .wordmark{width:88px!important;height:88px!important;flex-basis:88px!important}
  .site-header .brand-header-logo{width:88px!important;height:88px!important}
  .site-header .nav-shell{gap:5px!important;width:calc(100% - 16px)!important}
  .site-header .header-phone{font-size:17px!important;letter-spacing:-.035em!important}
  .site-header .mobile-menu{padding:8px 7px!important;font-size:10px!important}
}

/* Draft 5G.28 — distinct paver galleries using approved Coping gallery treatment */
.paver-showcase{background:#f2f4f2}
.paver-showcase .paver-material-navigation{grid-template-columns:repeat(2,minmax(0,1fr))}
.paver-showcase .coping-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.paver-showcase .coping-material{scroll-margin-top:calc(var(--header,196px) + 20px)!important}
.paver-showcase{scroll-margin-top:calc(var(--header,196px) + 20px)!important}
@media(max-width:1000px){.paver-showcase .coping-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.paver-showcase .paver-material-navigation{grid-template-columns:1fr}.paver-showcase .coping-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Draft 5G.29: category galleries for tanning ledges, trim tile and spillways */
.feature-showcase{background:#edf1f1;scroll-margin-top:calc(var(--header,196px) + 20px)!important}
.feature-showcase:nth-of-type(even){background:#f6f7f6}
.feature-showcase .coping-intro h2{font-size:clamp(48px,5.1vw,76px)}
.feature-showcase-summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 20px;margin:0 0 25px;background:#e3e9e9;border-left:4px solid #a73443}
.feature-showcase-summary span{font-size:14px;line-height:1.6;color:#526675}
.feature-showcase-summary a{flex-shrink:0;font-size:11px;font-weight:900;letter-spacing:.09em;color:#942f42;text-decoration:underline;text-underline-offset:5px}
.feature-showcase .feature-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1000px){.feature-showcase .feature-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.feature-showcase .feature-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-showcase-summary{display:block}.feature-showcase-summary a{display:inline-block;margin-top:12px}}

/* Draft 5G.30: add three specialist photographic galleries and precise links. */
.pf-tile-grid .pf-tile:nth-child(n+6){grid-column:span 2;min-height:360px}
.pf-intro .pf-gallery-note{max-width:980px}
.feature-card-gallery-link{display:inline-block;margin:20px 0 6px}
@media(max-width:1180px){.pf-tile-grid .pf-tile:nth-child(n+6){grid-column:span 3}}
@media(max-width:550px){.pf-tile-grid .pf-tile:nth-child(n+6){grid-column:auto;min-height:310px}}

/* Draft 5G.32: independent new-construction job photo galleries */
.construction-projects{background:#f1f4f6;border-top:1px solid #d3dde3}
.construction-projects .section-header p{max-width:475px;color:#536673}
.construction-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.construction-job{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #ccd8e0;border-radius:20px;background:#fff;box-shadow:0 16px 35px rgba(7,26,41,.075)}
.construction-job-heading{display:flex;align-items:end;justify-content:space-between;gap:10px;padding:22px 22px 16px;border-bottom:1px solid #e0e7eb}
.construction-job-kicker{display:block;font-size:10px;font-weight:900;letter-spacing:.13em;color:#a23846}
.construction-job-heading h3{font:900 36px/.98 'Barlow Condensed',Impact,sans-serif;color:#071a29;margin:8px 0 0}
.construction-count{font:800 11px/1.2 'DM Sans',sans-serif;letter-spacing:.08em;color:#506879;white-space:nowrap}
.construction-job-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 16px 0}
.construction-job-photos:has(.construction-photo:only-child){grid-template-columns:1fr}
.construction-photo{margin:0;min-width:0;border-radius:12px;overflow:hidden;background:#dce5e9}
.construction-photo .photo-view{display:block;position:relative;width:100%;height:210px;margin:0;padding:0;border:0;cursor:zoom-in;background:#091c2a;overflow:hidden}
.construction-photo .photo-view img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.construction-photo .photo-view:hover img{transform:scale(1.04)}
.construction-photo .photo-view:focus-visible{outline:4px solid #bd8f53;outline-offset:-4px}
.construction-photo figcaption{font-size:12px;font-weight:800;line-height:1.5;color:#253c4b;padding:12px 10px 10px}
.construction-zoom{position:absolute;bottom:10px;right:10px;background:rgba(7,26,41,.82);border:1px solid rgba(255,255,255,.38);color:#fff;border-radius:99px;padding:7px 10px;font:800 9px/1 'DM Sans',sans-serif;letter-spacing:.08em}
.construction-job>p{font-size:13px;line-height:1.7;padding:0 22px 20px;margin-top:auto;color:#576e7c}
.construction-project-note{margin-top:24px;font-size:13px;color:#627784}
.construction-home-link{text-align:center;margin:0 auto 66px}
@media(max-width:1150px){.construction-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.construction-project-grid{grid-template-columns:1fr}.construction-job-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.construction-photo .photo-view{height:175px}}
@media(max-width:390px){.construction-job-photos{grid-template-columns:1fr}.construction-photo .photo-view{height:225px}}


/* 5G Pre-Release Draft: Susan's final approved image placements */
.susan-finished-pools{background:#eff3f5;border-top:1px solid #dbe2e8}
.susan-pool-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.susan-project-photo{margin:0;position:relative;overflow:hidden;border-radius:15px;background:#dfe5e8;box-shadow:0 13px 26px rgba(7,26,41,.09);min-width:0}
.susan-project-photo .photo-view{position:relative;display:block;width:100%;height:auto;aspect-ratio:4/3;overflow:hidden;background:#c3d4db;padding:0;border:0;cursor:zoom-in}
.susan-project-photo .photo-view img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.susan-project-photo .photo-view:hover img{transform:scale(1.04)}
.susan-project-photo .photo-view:focus-visible{outline:4px solid #b13947;outline-offset:-4px}
.susan-project-photo figcaption{display:block;padding:13px 15px 16px;font-size:13px;line-height:1.35;color:#193248;font-weight:750;letter-spacing:.025em;background:#fff}
.susan-zoom{position:absolute;right:11px;bottom:12px;background:rgba(7,26,41,.87);color:#fff;border:1px solid rgba(223,185,131,.7);border-radius:5px;padding:7px 10px;font-size:10px;font-weight:800;letter-spacing:.08em}
.susan-finished-pools .susan-project-photo:nth-child(-n+3){box-shadow:0 20px 35px rgba(7,26,41,.15)}
.susan-finished-pools .susan-project-photo:nth-child(-n+3) .photo-view{aspect-ratio:5/4}
.susan-outdoor-section{background:#fff;border-top:1px solid #e7e1d7}
.susan-outdoor-gallery{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1060px}
.susan-outdoor-gallery .photo-view{aspect-ratio:16/10}
.prelaunch-note{border-left:4px solid #a33e4b;background:#fbf4ed;padding:16px 18px;margin:0 0 22px;font-size:13px;line-height:1.6;color:#47352a}
.susan-home-more{margin:28px 0 0}
.susan-home-more a{display:inline-block;background:#112f45;color:#f5e4c2;text-decoration:none;font-weight:850;letter-spacing:.04em;padding:15px 18px;border:1px solid #b7a179;border-radius:5px}
.susan-home-more a:hover,.susan-home-more a:focus-visible{background:#214a66;text-decoration:underline}
@media(max-width:960px){.susan-pool-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.susan-pool-gallery{grid-template-columns:1fr;gap:15px}.susan-outdoor-gallery{grid-template-columns:1fr}.susan-project-photo .photo-view{aspect-ratio:5/3}.susan-finished-pools .susan-project-photo:nth-child(-n+3) .photo-view{aspect-ratio:5/3}}
/* Keep the existing construction headline inside narrow phone screens. */
.section-header>div{min-width:0}
@media(max-width:640px){#weatherford .section-header h2{font-size:clamp(33px,8.7vw,48px);overflow-wrap:break-word}}

/* Pre-release final QA correction (2026-11-04): fit the homepage comparison
   heading within narrow phones without horizontal scrolling. */
@media(max-width:600px){
  .renovation-home-feature .before-after-card h2{
    font-size:clamp(28px,8vw,40px)!important;
    line-height:1.04!important;
    overflow-wrap:normal!important;
  }
}


/* 5G pre-release: Meet Our Owners header and staging directory */
@media (min-width:1381px){
 .site-header .nav-links{gap:clamp(5px,.65vw,11px)!important}
 .site-header .nav-links>a{font-size:clamp(12px,.90vw,15px)!important;letter-spacing:.012em!important}
}
.owners-content{background:#f5f6f5}
.owners-content h2{margin-top:14px}
.owners-intro{max-width:820px;font-size:16px;line-height:1.75;color:#425768;margin:16px 0 26px}
.owners-prelaunch-notice{max-width:100%;padding:17px 20px;background:#fff8ed;color:#5d4631;border-left:4px solid #b08a57;line-height:1.65;margin:0 0 29px;font-size:13px}
.owners-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px;align-items:stretch}
.owner-preview{background:#fff;border:1px solid #d4dfe3;border-radius:12px;overflow:hidden;box-shadow:0 10px 22px rgba(7,26,41,.08)}
.owner-portrait-placeholder{aspect-ratio:4/5;border:4px solid #a78b58;background:linear-gradient(130deg,#0e2432,#2d4854);display:flex;justify-content:center;align-items:center;text-align:center;padding:15px;color:#e7cd99;letter-spacing:.12em;font:800 12px/1.6 'DM Sans',sans-serif}
.owner-preview-body{padding:19px 18px 22px}
.owner-preview h3{font:800 30px/1.05 'Barlow Condensed',sans-serif;color:#10293b;margin:0 0 8px}
.owner-preview p{font-size:13px;font-weight:800;color:#9a3748;text-transform:uppercase;letter-spacing:.06em;margin:0 0 16px}
.owner-pending{display:block;font-size:12px;color:#657787;line-height:1.5}
.owners-contact{margin:35px 0 0;padding:25px 28px;background:#0a283b;color:#fff;border-radius:10px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}
.owners-contact h3{font:800 30px/1.1 'Barlow Condensed',sans-serif;margin:0;color:#fff}
.owners-contact p{color:#d6e4ec;margin:8px 0 0}
@media(max-width:1100px){.owners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.owners-grid{grid-template-columns:1fr}.owners-content .shell{padding-inline:14px}.owner-portrait-placeholder{aspect-ratio:8/5}.owners-contact{display:block}.owners-contact .action{display:inline-block;margin-top:18px}}


/* 5G Pre-Release / Susan's shorter-homepage meeting revision. */
.home-refined .hero{min-height:0}
.home-refined .hero-inner{min-height:600px;padding-top:66px;padding-bottom:68px;grid-template-columns:minmax(0,1fr)}
.home-refined .hero-copy{max-width:780px}
.home-refined .hero h1{font-size:clamp(62px,7.2vw,105px)}
.home-refined .hero-subheadline{font-size:clamp(22px,2.65vw,34px);margin:0 0 14px}
.home-refined .hero-lede{font-size:15px;line-height:1.7;max-width:650px;margin-bottom:21px}
.home-explore{padding:67px 0 80px;background:#f1f3f2}
.home-section-top{display:grid;grid-template-columns:1fr .73fr;align-items:end;gap:42px;margin-bottom:28px}
.home-section-top h2,.home-trust h2,.home-end-cta h2{font:900 clamp(38px,4.5vw,69px)/.97 'Barlow Condensed',Impact,sans-serif;color:#0a263a;letter-spacing:-.012em;margin:10px 0 0}
.home-section-top h2 em,.home-end-cta h2 em{font-family:'Instrument Serif',Georgia,serif;font-weight:400;color:#ad404c}
.home-section-top>p{font-size:15px;color:#526777;line-height:1.7;max-width:550px;margin:0}
.home-route-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.home-route-card{position:relative;isolation:isolate;display:flex;flex-direction:column;min-width:0;min-height:260px;padding:26px 21px 24px;background:linear-gradient(150deg,#193e53 0%,#071a29 95%);color:#fff;border:1px solid #3e5a62;border-top:4px solid #bfa578;border-radius:6px;box-shadow:0 13px 28px rgba(7,26,41,.11);transition:transform .2s ease,box-shadow .2s ease}
.home-route-card:nth-child(2){background:linear-gradient(150deg,#263f50,#0d2535)}
.home-route-card:nth-child(3){background:linear-gradient(150deg,#264454,#142b38)}
.home-route-card:nth-child(4){background:linear-gradient(150deg,#102e44,#0b1c2e)}
.home-route-card:after{content:'';position:absolute;inset:auto 0 0 auto;width:92px;height:92px;background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(215,184,141,.09) 15px 16px);z-index:-1}
.home-route-card:hover,.home-route-card:focus-visible{transform:translateY(-4px);box-shadow:0 18px 35px rgba(7,26,41,.23)}
.home-route-card:focus-visible,.home-text-link:focus-visible{outline:3px solid #c9a978;outline-offset:3px}
.home-route-no{display:block;color:#e5c89d;font-size:10px;letter-spacing:.14em;font-weight:900}
.home-route-title{display:block;margin:25px 0 13px;font:900 clamp(29px,2.5vw,42px)/.94 'Barlow Condensed',Impact,sans-serif}
.home-route-description{display:block;font-size:12px;line-height:1.6;color:#dae4ea;flex:1}
.home-route-action{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #546977;margin-top:20px;padding-top:14px;font-size:10px;line-height:1.35;letter-spacing:.055em;font-weight:900;color:#eace9f}
.home-trust{background:linear-gradient(100deg,#0b2335,#1e3c4c);color:#f8f7f4;padding:54px 0}
.home-trust-inner{display:grid;grid-template-columns:1fr 315px;gap:65px;align-items:center}
.home-trust .section-label,.home-end-cta .section-label{color:#cfb586}
.home-trust h2{color:#fff;font-size:clamp(37px,4vw,62px)}
.home-trust h2 em{font-family:'Instrument Serif',Georgia,serif;color:#e1c39a;font-weight:400}
.home-trust p{font-size:14px;color:#d1e0e9;line-height:1.75;max-width:670px;margin:18px 0}
.home-text-link{display:inline-block;color:#edcea1;font-size:11px;font-weight:900;letter-spacing:.12em;border-bottom:1px solid #a58a61;padding:8px 0}
.home-trust-aside{display:flex;flex-direction:column;border-left:2px solid #b89a6a;padding-left:26px;gap:15px}
.home-trust-kicker{font-size:10px;letter-spacing:.12em;color:#aebfcb;font-weight:900}
.home-trust-aside a{font:800 19px/1.2 'Barlow Condensed',Impact,sans-serif;letter-spacing:.035em;display:flex;justify-content:space-between;gap:10px;color:#fff;border-bottom:1px solid #557080;padding-bottom:11px}
.home-trust-aside a:hover{color:#e5c49b}
.home-end-cta{background:#e6e4de;padding:48px 0 55px}
.home-end-inner{display:flex;justify-content:space-between;align-items:center;gap:34px}
.home-end-cta h2{font-size:clamp(36px,4.2vw,57px)}
.home-end-cta p{font-size:14px;line-height:1.65;color:#485d69;margin:13px 0 0}
.home-end-actions{display:flex;flex-direction:column;gap:15px;min-width:260px;text-align:center}
.home-end-actions .action{justify-content:center;border-radius:5px;white-space:normal}
.home-tel{font-size:14px;letter-spacing:.04em;font-weight:900;color:#0c2d42;text-decoration:underline;text-underline-offset:5px}
.owners-hero{background:linear-gradient(100deg,#071a29,#224455 80%,#10283d)!important}
.owners-beliefs{background:#fff}
.owners-beliefs h2{font-size:clamp(37px,4.7vw,69px);line-height:.99;color:#10293b;margin:16px 0 18px}
.owners-beliefs h2 em{color:#a93b4b;font-family:'Instrument Serif',Georgia,serif;font-weight:400}
.owners-beliefs-lead{max-width:900px;font-size:16px;line-height:1.8;color:#465d69}
.owners-belief-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin:32px 0 52px}
.owners-belief-grid article{background:#f0f3f3;padding:26px 21px;border-top:3px solid #bd9e6c}
.owners-belief-grid span{font-size:11px;letter-spacing:.1em;color:#ab3e50;font-weight:900}
.owners-belief-grid h3{font:900 30px/1.1 'Barlow Condensed',Impact,sans-serif;margin:13px 0 10px}
.owners-belief-grid p{font-size:13px;line-height:1.65;color:#4f606a;margin:0}
.owners-storyline{display:grid;grid-template-columns:1fr 1fr;gap:32px;border-top:1px solid #d1dade;padding-top:38px}
.owners-storyline p{font-size:14px;line-height:1.75;color:#4b6070}
.renovation-deep-link{padding:28px 32px;border-left:4px solid #b53c4b;background:#e8eff1;margin-top:25px}
.renovation-deep-link p{font-size:14px;line-height:1.6;color:#455a68}
.renovation-deep-link .text-arrow{display:inline-block;margin-top:5px}
/* In the renovations hero, the hero photograph is not repeated on the primary service card. */
#renovation-services .feature-card:not(:has(img)){background:linear-gradient(150deg,#10283b,#31515d)}
#renovation-services .feature-card:not(:has(img)) .wash{background:linear-gradient(180deg,rgba(8,25,38,.0),rgba(8,25,38,.48))}
/* Category gallery images, not the same full-size photograph twice in one section. */
.pf-detail-grid:has(.pf-detail-copy:only-child){grid-template-columns:1fr}
.pf-detail-grid:has(.pf-detail-copy:only-child) .pf-detail-copy{max-width:1000px}
.subpage-hero:not(:has(.subhero-photo)){background:linear-gradient(115deg,#0b293c,#1c4254,#0b2738)}
@media(max-width:1050px){.home-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-trust-inner{grid-template-columns:1fr}.home-section-top{grid-template-columns:1fr;gap:12px}.owners-belief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.home-refined .hero-inner{min-height:0;padding:45px 0 55px}.home-refined .hero h1{font-size:clamp(50px,12.5vw,76px)}.home-refined .hero-lede{font-size:14px}.home-refined .hero-line{font-size:9px;line-height:1.6}.home-explore{padding:38px 0 48px}.home-route-grid{grid-template-columns:1fr;gap:11px}.home-route-card{min-height:180px;padding:20px}.home-route-title{font-size:35px;margin:15px 0 9px}.home-trust,.home-end-cta{padding:35px 0}.home-trust-inner{gap:26px}.home-end-inner{flex-direction:column;align-items:stretch}.home-end-actions{min-width:0}.owners-belief-grid{grid-template-columns:1fr;gap:10px}.owners-storyline{grid-template-columns:1fr;gap:12px}.owners-beliefs .shell{width:calc(100% - 32px)}}

/* 5G Pre-Release: professional renovation portfolio labels */
.renovation-jump a{white-space:normal;max-width:100%;line-height:1.3;text-align:center;font-size:13px;padding:12px 15px;border-color:#b8cad4;box-shadow:0 2px 0 rgba(0,0,0,.03);}
.renovation-jump a:hover,.renovation-jump a:focus-visible{transform:translateY(-1px);}
.renovation-project-heading h2{font-size:clamp(32px,3.5vw,54px);line-height:1.09;overflow-wrap:break-word;max-width:25ch;}
.title-preview-note{font-size:12px;color:#556d79;line-height:1.55;margin:17px 0 0;font-style:italic;}
@media(max-width:720px){.renovation-jump{gap:8px;}.renovation-jump span{display:block;flex-basis:100%;}.renovation-jump a{font-size:12px;flex:1 1 145px;}.renovation-project-heading{align-items:flex-start;flex-direction:column;}.renovation-project-heading h2{font-size:clamp(31px,7.4vw,42px);max-width:100%;}.renovation-project{scroll-margin-top:155px;}}
@media(max-width:360px){.renovation-jump a{flex-basis:100%;}}

/* Susan inspection correction 02 — Nov 5, 2026: full-bleed homepage hero photo.
   The prior 74%-width image left a solid navy strip on the left.
   Keep a translucent overlay behind headline text; do not mask the photograph with a solid band. */
.home-refined .hero-background{
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 34%;
  filter:brightness(1.16) contrast(1.03) saturate(1.04);
}
.home-refined .hero::before{
  opacity:1!important;
  background:linear-gradient(90deg,
    rgba(7,26,41,.58) 0%,
    rgba(7,26,41,.42) 28%,
    rgba(7,26,41,.18) 60%,
    rgba(7,26,41,.04) 100%),
    linear-gradient(0deg,rgba(7,26,41,.08),transparent 50%);
}
@media(max-width:700px){
 .home-refined .hero-background{width:100%;object-position:center 36%;filter:brightness(1.12) contrast(1.02) saturate(1.03)}
 .home-refined .hero::before{background:linear-gradient(180deg,rgba(7,26,41,.58) 0%,rgba(7,26,41,.36) 42%,rgba(7,26,41,.18) 100%)}
}

/* Susan inspection correction 03 — Nov 5, 2026: brighten homepage hero photograph and reduce overlay density for a lighter presentation. */


/* Susan inspection correction 04 — authentic uploaded military-branch insignia.
   Original company logo and all preexisting footer contact details/credits remain unchanged.
   Displayed on ALL pages and responsive from narrow phones to desktop. */
.avpc-approved-footer .avpc-military-tribute{
  margin:28px auto 0;
  padding:21px 0 19px;
  border-top:1px solid rgba(217,190,142,.34);
  border-bottom:1px solid rgba(217,190,142,.34);
  text-align:center;
}
.avpc-approved-footer .avpc-military-tribute-title{
  color:#dcc49d;
  font-family:'DM Sans',Arial,sans-serif;
  font-size:11px;
  line-height:1.6;
  letter-spacing:.22em;
  font-weight:800;
  text-transform:uppercase;
  margin:0 0 15px;
}
.avpc-approved-footer .avpc-military-logo-row{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:10px clamp(7px,1.2vw,16px);
  max-width:970px;
  margin:0 auto;
}
.avpc-approved-footer .avpc-military-logo-tile{
  width:clamp(62px,7.6vw,111px);
  flex:0 0 clamp(62px,7.6vw,111px);
  aspect-ratio:1;
  box-sizing:border-box;
  border:2px solid rgba(219,188,135,.75);
  border-radius:2px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 5px 16px rgba(0,0,0,.25);
}
.avpc-approved-footer .avpc-military-logo-tile img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
@media(max-width:700px){
 .avpc-approved-footer .avpc-military-tribute{margin-top:22px;padding:18px 0}
 .avpc-approved-footer .avpc-military-logo-row{max-width:400px;gap:10px}
 .avpc-approved-footer .avpc-military-logo-tile{width:clamp(62px,17vw,83px);flex-basis:clamp(62px,17vw,83px)}
}


/* Susan inspection correction 05 (Nov 5 2026) — official Facebook header link.
   Desktop: aligned to the right side of the top header row.
   Responsive header: compact icon at the top-right, away from phone and MENU. */
.site-header .header-facebook{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:end!important;
  width:38px!important;
  height:38px!important;
  margin:0 0 10px 0!important;
  display:inline-flex!important;
  justify-content:center!important;
  align-items:center!important;
  flex:0 0 auto!important;
  padding:0!important;
  color:#f9efe2!important;
  background:rgba(31,68,93,.85)!important;
  border:1px solid rgba(220,196,157,.72)!important;
  border-radius:50%!important;
  box-shadow:0 3px 12px rgba(0,0,0,.16)!important;
  text-decoration:none!important;
  z-index:15!important;
  transition:background-color .2s ease,transform .2s ease;
}
.site-header .header-facebook svg{width:18px!important;height:18px!important;display:block!important;pointer-events:none;}
.site-header .header-facebook:hover{background:#205a81!important;transform:translateY(-2px)}
.site-header .header-facebook:focus-visible{outline:3px solid #e1b76b!important;outline-offset:3px!important}
@media(max-width:1380px){
 .site-header .nav-shell{position:relative!important;}
 .site-header .header-facebook{
   position:absolute!important;top:11px!important;right:2px!important;
   width:34px!important;height:34px!important;margin:0!important;
 }
}
@media(max-width:520px){
 .site-header .header-facebook{
   top:4px!important;right:2px!important;width:29px!important;height:29px!important;
 }
 .site-header .header-facebook svg{width:15px!important;height:15px!important;}
}


/* Susan inspection correction 06 — Nov 5, 2026
   Move the estimate CTA out of the main nav, beside the phone, with the homepage's gold button treatment. */
.site-header .header-contact-actions{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:start!important;
  align-self:end!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:22px!important;
  min-width:0!important;
  margin:0 0 9px!important;
  position:relative!important;
  z-index:7!important;
}
.site-header .header-contact-actions .header-phone{
  grid-column:auto!important;
  grid-row:auto!important;
  justify-self:auto!important;
  align-self:center!important;
  flex:0 0 auto!important;
  margin:0!important;
}
.site-header .header-estimate.action.primary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:11px!important;
  flex:none!important;
  width:auto!important;
  min-height:43px!important;
  padding:11px 18px!important;
  color:#081d2a!important;
  background:#e6c79a!important;
  border:1px solid #e6c79a!important;
  border-radius:100px!important;
  box-shadow:0 6px 17px rgba(0,0,0,.17)!important;
  font-family:'DM Sans',Arial,sans-serif!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  transition:background-color .2s ease,transform .2s ease!important;
}
.site-header .header-estimate.action.primary:hover{
  background:#f1d9b4!important;
  border-color:#f1d9b4!important;
  transform:translateY(-1px)!important;
}
.site-header .header-estimate.action.primary:focus-visible{outline:3px solid #fff!important;outline-offset:3px!important}
.site-header .header-estimate-short{display:none!important}
.site-header .header-estimate-arrow{font-size:17px;line-height:0.9}
@media(max-width:1380px){
  .site-header .header-contact-actions{
    order:2!important;
    flex:0 1 auto!important;
    justify-self:auto!important;
    align-self:center!important;
    margin:0 0 0 auto!important;
    gap:16px!important;
  }
}
@media(max-width:800px){
  .site-header .header-contact-actions{gap:10px!important}
  .site-header .header-estimate.action.primary{min-height:39px!important;font-size:10px!important;padding:9px 13px!important}
}
@media(max-width:620px){
  .site-header .header-contact-actions{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:6px!important;max-width:calc(100vw - 180px)!important;margin:0 auto!important}
  .site-header .header-contact-actions .header-phone{font-size:clamp(15px,3.8vw,22px)!important;line-height:1!important;letter-spacing:-.025em!important}
  .site-header .header-estimate.action.primary{width:100%!important;min-height:31px!important;padding:7px 10px!important;gap:6px!important;font-size:9px!important;letter-spacing:.04em!important}
  .site-header .header-estimate-full{display:none!important}
  .site-header .header-estimate-short{display:inline!important}
  .site-header .header-estimate-arrow{font-size:14px}
}
@media(max-width:380px){
  .site-header .wordmark{width:77px!important;height:77px!important;flex-basis:77px!important}
  .site-header .brand-header-logo{width:77px!important;height:77px!important}
  .site-header .nav-shell{gap:4px!important}
  .site-header .header-contact-actions{max-width:145px!important;min-width:0!important;gap:5px!important}
  .site-header .header-contact-actions .header-phone{font-size:16px!important}
  .site-header .header-estimate.action.primary{min-height:29px!important;padding:6px 9px!important;font-size:9px!important}
  .site-header .mobile-menu{font-size:9px!important;padding:7px 6px!important}
}


/* Susan inspection correction 09: Google listing/reviews beside official Facebook. */
.site-header .header-social-links{
  grid-column:2!important;grid-row:1!important;
  justify-self:end!important;align-self:end!important;
  display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;
  gap:8px!important;margin:0 0 10px 0!important;z-index:16!important;
}
.site-header .header-social-links .header-facebook,
.site-header .header-social-links .header-google{
  position:static!important;top:auto!important;right:auto!important;
  grid-column:auto!important;grid-row:auto!important;
  justify-self:auto!important;align-self:auto!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:38px!important;height:38px!important;margin:0!important;padding:0!important;
  flex:0 0 38px!important;border:1px solid rgba(220,196,157,.72)!important;
  border-radius:50%!important;box-shadow:0 3px 12px rgba(0,0,0,.16)!important;
  text-decoration:none!important;z-index:16!important;
  background:rgba(31,68,93,.85)!important;transition:background-color .2s ease,transform .2s ease!important;
}
.site-header .header-social-links .header-google{background:#f7f7f3!important;border-color:rgba(220,196,157,.95)!important}
.site-header .header-social-links .header-google:hover{background:#fff!important;transform:translateY(-2px)!important}
.site-header .header-social-links .header-google:focus-visible,
.site-header .header-social-links .header-facebook:focus-visible{
  outline:3px solid #e1b76b!important;outline-offset:3px!important;
}
.site-header .header-social-links .header-google svg{width:22px!important;height:22px!important;display:block!important;pointer-events:none!important}
@media(max-width:1380px){
 .site-header .nav-shell{position:relative!important}
 .site-header .header-social-links{position:absolute!important;top:11px!important;right:2px!important;margin:0!important;gap:5px!important}
 .site-header .header-social-links .header-facebook,
 .site-header .header-social-links .header-google{width:34px!important;height:34px!important;flex-basis:34px!important}
 .site-header .header-social-links .header-google svg{width:20px!important;height:20px!important}
}
@media(max-width:520px){
 .site-header .header-social-links{top:4px!important;right:2px!important;gap:4px!important}
 .site-header .header-social-links .header-facebook,
 .site-header .header-social-links .header-google{width:29px!important;height:29px!important;flex-basis:29px!important}
 .site-header .header-social-links .header-google svg{width:17px!important;height:17px!important}
}


/* Susan correction 10: Features & Finishes is now part of Renovations.
   Photo gallery thumbnails appear only once, in their own category gallery. */
.renovation-features-wrap{scroll-margin-top:125px;background:#f6f7f6}
.renovation-features-wrap .pf-intro{padding:70px 0 55px}
.renovation-features-wrap .pf-tile-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.renovation-features-wrap .pf-tile,
.renovation-features-wrap .pf-tile:nth-child(n){grid-column:auto;min-height:160px;
  border:1px solid rgba(217,190,142,.37);background:linear-gradient(145deg,#102b3c,#214559);
  box-shadow:0 8px 25px rgba(9,27,43,.10);transition:transform .18s ease,border-color .18s ease}
.renovation-features-wrap .pf-tile:hover{transform:translateY(-3px);border-color:#caa66c}
.renovation-features-wrap .pf-tile-content{position:relative;left:auto;right:auto;bottom:auto;
  display:flex;justify-content:space-between;height:100%;gap:10px;padding:22px 18px}
.renovation-features-wrap .pf-tile-content small{font-size:9px}
.renovation-features-wrap .pf-tile-content strong{font-size:clamp(24px,2.3vw,33px)}
.renovation-features-wrap .pf-tile-content>span{color:#e8cf9b}
.renovation-features-wrap .pf-detail{scroll-margin-top:120px;padding:65px 0}
.renovation-features-wrap .coping-showcase,.renovation-features-wrap .coping-material{scroll-margin-top:120px}
.renovation-features-wrap .pf-detail-copy{max-width:900px}
.renovation-features-wrap .pf-detail-grid{grid-template-columns:minmax(0,1fr)}
.renovation-features-wrap .pf-detail:nth-of-type(even) .pf-detail-copy{order:initial}
@media(max-width:900px){.renovation-features-wrap .pf-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.renovation-features-wrap .pf-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .renovation-features-wrap .pf-tile,.renovation-features-wrap .pf-tile:nth-child(n){min-height:145px}
 .renovation-features-wrap .pf-tile-content{padding:16px 12px}
 .renovation-features-wrap .pf-tile-content strong{font-size:clamp(21px,6vw,28px)}
 .renovation-features-wrap .pf-tile-content small,.renovation-features-wrap .pf-tile-content>span{font-size:8px}
 .renovation-features-wrap .pf-intro{padding:45px 0 35px}
}

/* Correction 10 QC: Prevent long finish headings from enlarging the page on 320px phones. */
.renovation-features-wrap .pf-detail-grid,.renovation-features-wrap .pf-detail-copy{min-width:0}
@media(max-width:520px){
  .renovation-features-wrap .pf-detail-copy h2{font-size:clamp(38px,11.7vw,52px);overflow-wrap:anywhere}
  .renovation-features-wrap .pf-detail-copy .section-label{max-width:100%;overflow-wrap:anywhere}
}

/* Susan correction 11 — Nov. 5, 2026. Replace the cropped pool-photo strip
   directly above the bottom masthead with ONE full-width display of the
   seven original military emblems; remove the repeated row inside masthead. */
.avpc-approved-footer .avpc-military-banner{
  width:100%;
  background:linear-gradient(100deg,#061826 0%,#0a3048 49%,#061826 100%);
  border-top:2px solid #bda078;
  border-bottom:2px solid #bda078;
  padding:18px clamp(14px,3.2vw,48px) 20px;
  margin:0;
  box-sizing:border-box;
}
.avpc-approved-footer .avpc-military-banner-inner{max-width:1150px;margin-inline:auto;text-align:center}
.avpc-approved-footer .avpc-military-banner-label{
  color:#e4ca9e;
  font:800 clamp(9px,1vw,12px)/1.3 'DM Sans',Arial,sans-serif;
  text-transform:uppercase;
  letter-spacing:.21em;
  margin:0 0 14px;
}
.avpc-approved-footer .avpc-military-banner-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:clamp(5px,1.55vw,21px);
  justify-content:center;
  align-items:center;
  width:100%;
}
.avpc-approved-footer .avpc-military-banner-tile{
  box-sizing:border-box;
  aspect-ratio:1 / 1;
  width:100%;
  max-width:130px;
  min-width:0;
  justify-self:center;
  border:2px solid #c8aa7d;
  border-radius:3px;
  background:#fff;
  padding:0;
  box-shadow:0 6px 18px rgba(0,0,0,.32);
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.avpc-approved-footer .avpc-military-banner-tile img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
@media(max-width:600px){
  .avpc-approved-footer .avpc-military-banner{padding:12px 9px 13px}
  .avpc-approved-footer .avpc-military-banner-label{font-size:9px;letter-spacing:.1em;margin-bottom:10px}
  .avpc-approved-footer .avpc-military-banner-grid{gap:clamp(3px,1vw,6px)}
  .avpc-approved-footer .avpc-military-banner-tile{border-width:1px}
}


/* Susan website correction 12 — Nov 5 2026.
   Pool Renovation and Equipment & Performance are the ONLY two
   service cards under “Renovation First. Quality Always.”
   Remove the former New Pool Construction card and balance the columns. */
#renovation-services .services-grid.renovation-two-cards{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  gap:24px;
}
#renovation-services .renovation-equipment-stack{display:flex;min-width:0;}
#renovation-services .renovation-equipment-stack .mini-card{
  display:flex;
  flex-direction:column;
  min-height:520px;
  height:100%;
  width:100%;
}
#renovation-services .renovation-equipment-stack .mini-card img{
  width:100%;
  height:270px;
  flex:0 0 270px;
  object-fit:cover;
  object-position:center 45%;
}
#renovation-services .renovation-equipment-stack .mini-card .copy{
  padding:30px 30px 34px;
}
@media(max-width:900px){
  #renovation-services .services-grid.renovation-two-cards{grid-template-columns:minmax(0,1fr);}
  #renovation-services .renovation-equipment-stack .mini-card{min-height:0;}
  #renovation-services .renovation-equipment-stack .mini-card img{height:230px;flex-basis:230px;}
}
@media(max-width:450px){
  #renovation-services .renovation-equipment-stack .mini-card .copy{padding:22px;}
  #renovation-services .renovation-equipment-stack .mini-card img{height:200px;flex-basis:200px;}
}

/* Mobile legibility fix: show the complete “POOL RENOVATION” heading, never clip it. */
@media(max-width:450px){
  #renovation-services .renovation-two-cards .feature-card{min-height:420px;}
  #renovation-services .renovation-two-cards .feature-body h3{
    font-size:clamp(33px,9vw,42px);
    line-height:.94;
    letter-spacing:-.02em;
  }
}

/* Susan inspection correction 13: unified portfolio and launch-safe owners placeholder. */
.renovation-gallery-jump{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start;padding-top:0;padding-bottom:30px}
.renovation-gallery-jump a{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;border:1px solid #bba37d;border-radius:8px;text-decoration:none;color:#102d43;background:#f7f2e9;font-size:12px;font-weight:850;letter-spacing:.06em;min-height:44px}
.renovation-gallery-jump a:hover{background:#e6c79a}
.consolidated-new-construction{background:#eff2f3;border-top:1px solid #dbe3e7}
.owners-coming-soon-page{background:linear-gradient(145deg,#071a29,#102c40 60%,#091b2b);color:white}
.owners-soon-shell{padding:clamp(52px,7vw,105px) 0 clamp(65px,8vw,115px);text-align:center;min-height:70vh;display:flex;align-items:center}
.owners-soon-inner{max-width:1080px}
.owners-soon-kicker{letter-spacing:.25em;font-weight:850;color:#e6c79a;font-size:12px;margin-bottom:20px}
.owners-soon-shell h1{font-family:'Barlow Condensed',Impact,sans-serif;letter-spacing:-.025em;font-weight:900;font-size:clamp(66px,10vw,148px);line-height:.9;margin:0 0 22px}
.owners-soon-shell h1 em{font-family:'Instrument Serif',Georgia,serif;font-weight:400;color:#e6c79a}
.owners-soon-shell p{margin:0 auto 34px;max-width:650px;font-size:clamp(16px,1.6vw,21px);line-height:1.65;color:#e0ebf1}
.owners-soon-flag-frame{width:min(650px,90%);margin:0 auto 30px;padding:9px;border:1px solid rgba(230,199,154,.7);border-radius:12px;background:rgba(255,255,255,.06);box-shadow:0 24px 68px rgba(0,0,0,.4);overflow:hidden}
.owners-soon-flag-frame img{display:block;width:100%;height:auto;aspect-ratio:19/10;border-radius:5px;box-shadow:0 7px 14px rgba(0,0,0,.25)}
.owners-soon-cta{display:flex;align-items:center;justify-content:center;gap:23px;flex-wrap:wrap}
.owners-soon-home-link{color:#e7d3b3;font-size:12px;letter-spacing:.09em;font-weight:850;text-decoration:none}
.owners-soon-home-link:hover{text-decoration:underline}
@media(max-width:700px){.renovation-gallery-jump{gap:10px}.renovation-gallery-jump a{flex:1 1 175px;font-size:11px}.owners-soon-shell h1{font-size:clamp(62px,14vw,90px)}.owners-soon-flag-frame{width:min(650px,100%);padding:6px}.owners-soon-cta{gap:15px}}

/* Pre-release publication gate: sections pending source image approval are not displayed. */
section[hidden][data-publish-approval]{display:none!important}

/* Susan correction 14: approved new horizontal Viking Capital logo — do not replace with a generated logo. */
/* Susan correction 17: Lyon Financial and Viking Capital banners normalized to matching dimensions. */
.lender-banner-link.viking-banner-link{padding:0;background:#fff;border-radius:12px;overflow:hidden;display:block}
.viking-brand-banner{box-sizing:border-box;width:100%;aspect-ratio:15/7;min-height:0;background:#fff;border:2px solid #63216a;border-bottom:9px solid #c9a35d;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px 18px 12px;text-align:center}
.viking-brand-kicker{color:#3b3440;font:800 15px/1.08 'Barlow Condensed',Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.viking-brand-logo{display:block;object-fit:contain;max-width:78%;width:auto;height:auto;max-height:42%;filter:none}
.viking-brand-description{color:#50465a;font:600 12px/1.3 'DM Sans',Arial,sans-serif;letter-spacing:.01em;text-transform:none}
.viking-banner-link:hover .viking-brand-banner,.viking-banner-link:focus-visible .viking-brand-banner{border-color:#a25bb0;box-shadow:inset 0 0 0 1px #a25bb0}
@media(max-width:520px){.viking-brand-banner{padding:10px 10px 9px;gap:4px}.viking-brand-kicker{font-size:12px}.viking-brand-logo{max-width:84%;max-height:41%}.viking-brand-description{font-size:10.5px;line-height:1.22}}

/* Susan correction 16 — use customer's original 2026 Lyon Financial banner artwork
   edge-to-edge inside the banner region; preserve full image and legible loan details. */
.lender-banner-link.lyon-banner-link{padding:0;overflow:hidden;border-radius:12px;line-height:0;background:#fff;display:block}
.lyon-banner-link .lender-banner-image{display:block;width:100%;height:auto;max-width:none;aspect-ratio:15/7;object-fit:contain;object-position:center;border-radius:0;box-shadow:none}
.lyon-banner-link:focus-visible{outline:3px solid #e6c79a;outline-offset:3px}


/* Susan correction 19 — explicit header grid: LOGO LEFT | PHONE CENTER | ESTIMATE RIGHT.
   Final override for legacy header rules. Desktop nav remains on its own lower row;
   mobile social icons and menu move below the contact row. */
.site-header .nav-shell{
  display:grid!important;
  grid-template-columns:176px minmax(0,1fr) max-content!important;
  grid-template-rows:106px 84px!important;
  column-gap:clamp(10px,2vw,30px)!important;
  row-gap:0!important;
  align-items:center!important;
  justify-content:stretch!important;
  width:min(1480px,calc(100% - 56px))!important;
  height:100%!important;
  padding:0!important;
  position:relative!important;
  flex-wrap:nowrap!important;
}
.site-header .wordmark{
  grid-column:1!important;grid-row:1/3!important;
  justify-self:start!important;align-self:center!important;
  margin:0!important;order:initial!important;
  width:176px!important;height:176px!important;flex:none!important;
}
.site-header .brand-header-logo{width:176px!important;height:176px!important}
.site-header .header-contact-actions{display:contents!important}
.site-header .header-contact-actions .header-phone{
  grid-column:2!important;grid-row:1!important;
  justify-self:center!important;align-self:end!important;
  margin:0 0 12px!important;padding:0!important;
  width:auto!important;height:auto!important;
  font-size:clamp(24px,2.3vw,35px)!important;
  letter-spacing:.01em!important;white-space:nowrap!important;
  border:0!important;background:none!important;box-shadow:none!important;
}
.site-header .header-contact-actions .header-estimate{
  grid-column:3!important;grid-row:1!important;
  justify-self:end!important;align-self:end!important;
  margin:0 0 12px!important;order:initial!important;
  width:auto!important;min-width:0!important;
  max-width:100%!important;
}
.site-header .nav-links{
  grid-column:2/4!important;grid-row:2!important;
  justify-self:stretch!important;align-self:start!important;
  margin:8px 0 0!important;
}
.site-header .header-social-links{
  position:absolute!important;
  right:0!important;top:5px!important;
  margin:0!important;
  grid-column:auto!important;grid-row:auto!important;
  justify-self:auto!important;align-self:auto!important;
}
.site-header .mobile-menu{display:none!important}
@media(max-width:1380px){
  .site-header .nav-shell{
    grid-template-columns:132px minmax(0,1fr) max-content!important;
    grid-template-rows:minmax(0,1fr) 44px!important;
    width:calc(100% - 48px)!important;
    column-gap:clamp(8px,1.5vw,20px)!important;
  }
  .site-header .wordmark{width:132px!important;height:132px!important}
  .site-header .brand-header-logo{width:132px!important;height:132px!important}
  .site-header .header-contact-actions .header-phone{
    font-size:clamp(21px,2.7vw,32px)!important;
    align-self:center!important;margin:0!important;
  }
  .site-header .header-contact-actions .header-estimate{align-self:center!important;margin:0!important}
  .site-header .header-social-links{
    position:static!important;
    grid-column:2!important;grid-row:2!important;
    justify-self:center!important;align-self:center!important;
  }
  .site-header .mobile-menu{
    display:inline-flex!important;
    grid-column:3!important;grid-row:2!important;
    justify-self:end!important;align-self:center!important;
    margin:0!important;
  }
  .site-header .nav-links{
    position:absolute!important;top:100%!important;left:0!important;right:0!important;
    grid-column:auto!important;grid-row:auto!important;
    margin:0!important;width:100%!important;
    display:none!important;
    background:#071a29!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .site-header .nav-links.is-open{display:flex!important}
}
@media(max-width:800px){
  :root{--header:138px}
  .site-header .nav-shell{
    grid-template-columns:94px minmax(0,1fr) max-content!important;
    grid-template-rows:84px 48px!important;
    width:calc(100% - 26px)!important;
    column-gap:8px!important;
  }
  .site-header .wordmark{width:94px!important;height:94px!important}
  .site-header .brand-header-logo{width:94px!important;height:94px!important}
  .site-header .header-contact-actions .header-phone{
    font-size:clamp(16px,3.15vw,24px)!important;
    letter-spacing:0!important;
  }
  .site-header .header-estimate.action.primary{
    padding:9px 12px!important;
    min-height:38px!important;
    font-size:10px!important;
    letter-spacing:.03em!important;
    gap:6px!important;
  }
  .site-header .header-social-links{gap:5px!important}
}
@media(max-width:520px){
  :root{--header:129px}
  .site-header .nav-shell{
    grid-template-columns:76px minmax(0,1fr) max-content!important;
    grid-template-rows:73px 49px!important;
    width:calc(100% - 18px)!important;
    column-gap:5px!important;
  }
  .site-header .wordmark{width:76px!important;height:76px!important}
  .site-header .brand-header-logo{width:76px!important;height:76px!important}
  .site-header .header-contact-actions .header-phone{
    font-size:clamp(13px,3.7vw,19px)!important;
    letter-spacing:-.02em!important;
    line-height:1.1!important;
  }
  .site-header .header-estimate.action.primary{
    min-height:33px!important;
    padding:7px 9px!important;
    font-size:9px!important;
    letter-spacing:0!important;
    width:auto!important;
  }
  .site-header .header-estimate-full{display:none!important}
  .site-header .header-estimate-short{display:inline!important}
  .site-header .header-estimate-arrow{display:none!important}
  .site-header .mobile-menu{padding:9px 10px!important;font-size:10px!important}
}
@media(max-width:360px){
  :root{--header:122px}
  .site-header .nav-shell{
    grid-template-columns:64px minmax(0,1fr) max-content!important;
    grid-template-rows:69px 46px!important;
    width:calc(100% - 12px)!important;
    column-gap:4px!important;
  }
  .site-header .wordmark{width:64px!important;height:64px!important}
  .site-header .brand-header-logo{width:64px!important;height:64px!important}
  .site-header .header-contact-actions .header-phone{font-size:13.5px!important}
  .site-header .header-estimate.action.primary{padding:7px 8px!important;font-size:8.5px!important;min-height:30px!important}
  .site-header .mobile-menu{padding:7px 8px!important;font-size:9px!important}
}

/* Susan correction 20 — dedicated Helping the Community news-feature page; CBS video linked to CBS original. */
.community-page{background:#f5f2ec;color:#123244;overflow-x:clip}
.community-page .community-overline,.community-page .community-kicker{font-family:'DM Sans',Arial,sans-serif;font-size:11px;font-weight:800;letter-spacing:.19em;color:#967343;text-transform:uppercase}
.community-hero{position:relative;color:#fff;background:radial-gradient(ellipse at 85% 5%,#294c60 0%,transparent 45%),linear-gradient(115deg,#051927,#11334a 70%,#061b2c);overflow:hidden;border-bottom:4px solid #b8955b}
.community-hero:after{content:'';position:absolute;inset:auto -10% -115px 40%;height:230px;transform:rotate(-9deg);background:linear-gradient(90deg,transparent 15%,rgba(160,40,48,.24) 38%,transparent 75%);pointer-events:none}
.community-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:25px;align-items:center;padding:92px 0 102px;position:relative;z-index:2}
.community-hero .community-kicker{color:#dcc49d;margin-bottom:24px}
.community-hero h1{font:900 clamp(58px,8.5vw,112px)/.87 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.025em;margin:0 0 20px}
.community-hero h1 em{font:400 italic clamp(58px,8vw,106px)/.8 'Instrument Serif',Georgia,serif;color:#e6c79a}
.community-hero-subtitle{font:600 clamp(21px,3vw,30px) 'Barlow Condensed',Arial,sans-serif;letter-spacing:.04em;margin:18px 0 12px;text-transform:uppercase;color:#e7d0ac}
.community-hero-lede{max-width:650px;color:#e3e8e9;font:400 16px/1.8 'DM Sans',Arial,sans-serif;margin:0 0 26px}
.community-gold-link,.community-outline-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;font:800 12px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.07em}
.community-gold-link{padding:14px 20px;background:#e6c79a;color:#172b34;border-radius:7px}
.community-gold-link:hover,.community-gold-link:focus-visible{background:#fff1d4;color:#112837}
.community-mark{display:flex;flex-direction:column;gap:13px;align-items:center;justify-content:center;min-height:250px;border:1px solid rgba(229,198,146,.35);border-radius:22px;background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.01));box-shadow:inset 0 0 0 8px rgba(255,255,255,.018);transform:rotate(2deg)}
.community-mark:before{content:'★';font:38px Georgia,serif;color:#d3b27c}
.community-mark span{font:800 17px/1 'Barlow Condensed',Arial,sans-serif;letter-spacing:.3em;color:#e8dbca}
.community-feature{padding:80px 0 85px}
.community-section-head{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;align-items:center;border-bottom:1px solid #c7bda9;padding:0 0 20px;margin:0 0 36px}
.community-credit-top{color:#5f6e72;font:800 10px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.13em}
.community-story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(350px,.96fr);gap:clamp(24px,5vw,75px);align-items:start}
.community-story-copy h2,.community-commitment h2{font:850 clamp(46px,5.2vw,70px)/.94 'Barlow Condensed',Arial,sans-serif;letter-spacing:-.015em;margin:0 0 25px;color:#0b2b3d;text-transform:uppercase}
.community-story-copy h2 em,.community-commitment h2 em{font:400 italic clamp(44px,5vw,68px)/.95 'Instrument Serif',Georgia,serif;text-transform:none;color:#a3824d}
.community-story-copy>p{font:400 15.5px/1.85 'DM Sans',Arial,sans-serif;color:#324a56;margin:0 0 17px}
.community-story-copy strong{color:#112e40}
.community-story-note{display:flex;gap:13px;align-items:flex-start;border-left:3px solid #bba071;background:#eae5da;padding:18px;margin-top:22px;border-radius:0 10px 10px 0}
.community-star{color:#a17d47;font-size:23px;line-height:1.15}
.community-story-note p{margin:0;font:400 13px/1.65 'DM Sans',Arial,sans-serif;color:#31424a}
.community-media-panel{min-width:0}
.community-video-link{aspect-ratio:16/10;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;color:#fff!important;text-decoration:none!important;border-radius:15px;padding:24px;background:radial-gradient(ellipse at 73% 23%,rgba(189,161,108,.27),transparent 48%),linear-gradient(140deg,#081c2e,#24465a 60%,#082235);border:1px solid #bda478;box-shadow:0 24px 65px rgba(7,28,41,.2)}
.community-video-link:before{content:'';position:absolute;inset:0;background:linear-gradient(125deg,transparent 68%,rgba(185,38,44,.23) 70%,rgba(185,38,44,.23) 74%,transparent 76%);pointer-events:none}
.community-video-kicker{position:absolute;left:22px;top:20px;font:900 12px 'DM Sans',Arial,sans-serif;letter-spacing:.12em;color:#e9c99d}
.community-video-play{width:76px;height:76px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#061d2f;background:#e6c79a;z-index:1;box-shadow:0 0 0 8px rgba(232,207,164,.16);transition:transform .2s}
.community-video-link:hover .community-video-play,.community-video-link:focus-visible .community-video-play{transform:scale(1.1)}
.community-video-headline{z-index:1;text-align:center;margin:22px auto 38px;max-width:350px;font:900 clamp(24px,3vw,34px)/1 'Barlow Condensed',Arial,sans-serif;letter-spacing:.015em}
.community-video-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:12px;padding:15px 20px;background:rgba(4,17,29,.84);font:800 10px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.06em}
.community-media-caption{font:400 12px/1.7 'DM Sans',Arial,sans-serif;color:#526772;margin-top:15px}
.community-article-link{display:inline-block;font:800 12px/1.5 'DM Sans',Arial,sans-serif;margin-top:14px;color:#294e69;text-decoration:underline;text-underline-offset:4px}
.community-commitment{background:#0b293b;color:#dae4e6;padding:66px 0;border-top:3px solid #b8955b}
.community-commitment-inner{display:grid;grid-template-columns:1.1fr .7fr;gap:clamp(25px,6vw,90px);align-items:center}
.community-commitment h2{color:#fff;margin-top:12px;margin-bottom:18px}
.community-commitment h2 em{color:#d8bd91}
.community-commitment p{font:400 15px/1.8 'DM Sans',Arial,sans-serif;color:#dce4e8;max-width:590px;margin:0}
.community-commitment-rule{height:2px;background:linear-gradient(90deg,#dbbd88,transparent);margin-bottom:23px}
.community-commitment-side p{font-size:15px;margin-bottom:22px}
.community-outline-link{border:1px solid #d6bd91;color:#fff!important;padding:13px 18px;border-radius:6px}
.community-outline-link:hover{background:#e6c79a;color:#122b3b!important}
.community-source{padding:21px 0 27px;background:#ede8df}
.community-source p{margin:0;font:400 11px/1.7 'DM Sans',Arial,sans-serif;color:#657075}
@media(max-width:800px){.community-hero-grid{grid-template-columns:1fr;padding:60px 0 70px}.community-mark{display:none}.community-feature{padding:50px 0}.community-story-grid,.community-commitment-inner{grid-template-columns:1fr}.community-video-link{min-height:250px}.community-commitment{padding:42px 0}}
@media(max-width:520px){.community-hero-grid{padding:45px 0 54px}.community-hero h1{font-size:clamp(50px,13vw,72px)}.community-hero h1 em{font-size:clamp(46px,12vw,68px)}.community-hero-lede{font-size:14px}.community-video-link{aspect-ratio:auto;min-height:260px;padding:18px}.community-video-play{width:60px;height:60px}.community-video-headline{font-size:25px;margin-bottom:32px}.community-video-bottom{font-size:9px;padding:12px}.community-story-copy h2{font-size:48px}.community-story-copy h2 em{font-size:44px}.community-section-head{gap:6px}}


/* Susan wording workbook - pages 1 through 10, Working Draft 24.
   Changes confined to Renovations: grouped features / finishes / deck, with approved galleries intact. */
.v24-opening .section-header{align-items:start;gap:clamp(28px,5vw,65px)}
.v24-opening .section-header p{max-width:620px}
.v24-options{background:#f7f8f8;padding:76px 0 83px}
.v24-options .shell > h2,.v24-group-title h2{max-width:1020px}
.v24-section-lede{font-size:15px;line-height:1.85;color:#516273;max-width:850px;margin:23px 0 30px}
.v24-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.v24-option-card{background:#0b2538;color:#fff;text-decoration:none;border-radius:12px;padding:30px 23px 24px;min-height:222px;display:flex;flex-direction:column;align-items:flex-start;border-bottom:4px solid #c5a477;transition:transform .2s ease,background .2s ease}
.v24-option-card:hover,.v24-option-card:focus-visible{background:#17374a;transform:translateY(-2px)}
.v24-option-card > span{color:#e5cca8;font-size:10px;letter-spacing:.13em;font-weight:800}
.v24-option-card strong{font:800 clamp(26px,2.8vw,39px)/.99 'Barlow Condensed',Impact,sans-serif;margin:19px 0 11px}
.v24-option-card small{color:#cedbe1;line-height:1.55;font-size:12px}
.v24-option-card b{margin-top:auto;padding-top:18px;color:#e8d2ac;font-size:11px;letter-spacing:.12em}
.v24-group-title{scroll-margin-top:225px;background:#edf2f3;padding:85px 0 58px;border-top:1px solid #d2dde3}
.v24-group-title .section-label{color:#9b3845}
.v24-dir-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:30px}
.v24-dir-card{display:flex;flex-direction:column;min-height:155px;background:#102b40;color:#fff;border-radius:11px;border-bottom:3px solid #c2a57f;text-decoration:none;padding:21px 15px 17px;transition:background .2s ease,transform .2s ease}
.v24-dir-card:hover,.v24-dir-card:focus-visible{background:#1c455d;transform:translateY(-2px)}
.v24-dir-card-kicker{font-size:9px;font-weight:800;letter-spacing:.09em;color:#dfc7a1;line-height:1.45}
.v24-dir-card strong{font:800 clamp(20px,2vw,29px)/1 'Barlow Condensed',Impact,sans-serif;margin-top:13px}
.v24-dir-card-link{margin-top:auto;padding-top:15px;font-size:9px;letter-spacing:.08em;font-weight:800;color:#e6d4b6}
.v24-equipment-card{scroll-margin-top:225px;display:grid;grid-template-columns:36% minmax(0,1fr);align-items:center;gap:30px;min-height:235px;background:#fff;border-radius:12px;overflow:hidden;margin-top:30px;border:1px solid #cbd8e0;box-shadow:0 14px 32px rgba(8,23,37,.07)}
.v24-equipment-card img{width:100%;height:100%;min-height:240px;object-fit:cover}
.v24-equipment-card > div{padding:29px 31px 30px 0}
.v24-equipment-card h3{font:800 clamp(30px,3.8vw,49px)/.95 'Barlow Condensed',Impact,sans-serif;color:#0e2a3d;margin:10px 0 14px}
.v24-equipment-card p{line-height:1.8;font-size:14px;color:#4b6171;max-width:640px;margin:0}
.v24-finishes{background:#e9eeef}
.v24-finishes .v24-dir-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.v24-text-detail{scroll-margin-top:225px;padding:64px 0 66px;background:#fff;border-top:1px solid #e0e8ed}
.v24-text-detail:nth-of-type(even){background:#f4f6f6}
.v24-text-detail h2{font-size:clamp(46px,5.3vw,70px);line-height:1;margin:0 0 20px}
.v24-text-detail .shell > p{font-size:15px;line-height:1.9;max-width:970px;color:#536573}
.v24-text-detail .text-arrow{display:inline-block;margin-top:18px}
.v24-decking{background:#e7eff0}
.v24-dir-grid-single{grid-template-columns:minmax(220px,320px)}
.renovation-features-wrap .pf-detail{padding:58px 0 60px}
.renovation-features-wrap .pf-detail-grid{display:block}
.renovation-features-wrap .pf-detail-copy{max-width:1020px}
.renovation-features-wrap .pf-detail-copy h2{max-width:980px}
.renovation-features-wrap .pf-detail .pf-lead{max-width:940px}
.renovation-features-wrap .pf-consider{max-width:870px}
.renovation-features-wrap section[id]{scroll-margin-top:220px}
@media(max-width:1100px){.v24-dir-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v24-finishes .v24-dir-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.v24-opening .section-header{display:block}.v24-opening .section-header p{margin-top:24px}.v24-option-grid{grid-template-columns:1fr}.v24-option-card{min-height:160px;padding:22px}.v24-option-card strong{margin:10px 0 8px}.v24-group-title{padding:62px 0 43px}.v24-dir-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v24-equipment-card{grid-template-columns:1fr;gap:0}.v24-equipment-card img{height:210px;min-height:0}.v24-equipment-card>div{padding:23px}.v24-equipment-card h3{font-size:36px}.v24-text-detail{padding:48px 0}.renovation-features-wrap .pf-detail{padding:48px 0}}
@media(max-width:380px){.v24-dir-grid{gap:8px}.v24-dir-card{padding:17px 12px 14px;min-height:150px}.v24-dir-card strong{font-size:22px}.v24-finishes .v24-dir-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v24-option-card{min-height:170px}}
@media(prefers-reduced-motion:reduce){.v24-option-card,.v24-dir-card{transition:none}}
/* Draft 24 final narrow-screen fit: keep equipment text and resurfacing heading inside 320px viewport. */
@media(max-width:760px){
 .v24-equipment-card{grid-template-columns:minmax(0,1fr)}
 .v24-equipment-card>div{min-width:0;max-width:100%}
 .v24-equipment-card img{min-width:0;max-width:100%;width:100%;object-fit:cover}
 .v24-equipment-card h3{overflow-wrap:break-word;font-size:clamp(28px,8.5vw,36px)}
 .v24-text-detail h2{font-size:clamp(31px,8.9vw,54px);overflow-wrap:break-word}
}
@media(max-width:380px){
 .construction-count{max-width:100%;box-sizing:border-box}
}

/* Susan correction 25 — keep Renovations white/content panels inside viewport edges.
   Add modest horizontal breathing room without shrinking full-width hero or footer. */
body.avpc-renovations-v25 main .shell,
body.avpc-renovations-v25 main .renovation-gallery-jump.shell{
  width:min(1160px,calc(100% - 72px));
  max-width:calc(100% - 24px);
  margin-inline:auto;
  box-sizing:border-box;
}
body.avpc-renovations-v25 main .v24-option-grid,
body.avpc-renovations-v25 main .v24-dir-grid,
body.avpc-renovations-v25 main .v24-equipment-card,
body.avpc-renovations-v25 main .coping-photo-grid,
body.avpc-renovations-v25 main .feature-photo-grid{
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
@media(max-width:700px){
 body.avpc-renovations-v25 main .shell,
 body.avpc-renovations-v25 main .renovation-gallery-jump.shell{
   width:calc(100% - 40px);
   max-width:calc(100% - 32px);
 }
}
@media(max-width:380px){
 body.avpc-renovations-v25 main .shell,
 body.avpc-renovations-v25 main .renovation-gallery-jump.shell{
   width:calc(100% - 34px);
   max-width:calc(100% - 30px);
 }
}


/* Working Draft 26: accessible first-visit Zoho lead-form modal.
   The existing standalone estimate.html page remains a non-JavaScript fallback. */
.avpc-estimate-popup {
  box-sizing:border-box!important;
  position:fixed;
  width:min(790px,calc(100vw - 28px));
  height:min(840px,calc(100dvh - 28px));
  max-width:none;
  max-height:calc(100dvh - 28px);
  margin:auto;
  padding:0;
  border:1px solid rgba(215,187,140,.6);
  border-radius:16px;
  background:#fff;
  color:#102738;
  box-shadow:0 24px 85px rgba(0,0,0,.43);
  overflow:hidden;
}
.avpc-estimate-popup::backdrop {background:rgba(2,13,22,.78);backdrop-filter:blur(3px)}
.avpc-estimate-popup__inside {height:100%;min-height:0;display:flex;flex-direction:column}
.avpc-estimate-popup__top {
  display:flex;align-items:center;gap:14px;
  flex:0 0 auto;min-height:87px;
  padding:12px 66px 12px 19px;
  background:#071a29;color:#fff;border-bottom:4px solid #c9a979;
}
.avpc-estimate-popup__brand{width:59px;height:59px;object-fit:contain;flex:0 0 auto}
.avpc-estimate-popup__title{margin:0;font:800 clamp(25px,3.3vw,37px)/1.03 'Barlow Condensed','Arial Narrow',Arial,sans-serif;letter-spacing:.03em;color:#fff}
.avpc-estimate-popup__subtitle{margin:6px 0 0;font:500 12px/1.3 'DM Sans',Arial,sans-serif;color:#e1d1b7}
.avpc-estimate-popup__close {
  position:absolute;top:17px;right:17px;
  display:grid;place-items:center;
  width:42px;height:42px;padding:0;
  border:1px solid rgba(255,255,255,.65);border-radius:50%;
  background:#fff;color:#071a29;font:700 26px/1 Arial,sans-serif;
  cursor:pointer;z-index:1;
}
.avpc-estimate-popup__close:hover{background:#e6c79a}
.avpc-estimate-popup__close:focus-visible,
.avpc-estimate-popup__fallback a:focus-visible{outline:3px solid #ad5160;outline-offset:3px}
.avpc-estimate-popup__frame-wrap{min-height:0;flex:1 1 auto;background:#fff}
.avpc-estimate-popup__iframe{display:block;width:100%;height:100%;border:0;background:#fff}
.avpc-estimate-popup__fallback {
  flex:0 0 auto;margin:0;padding:12px 18px;
  background:#f5f7f8;border-top:1px solid #d5dde0;
  color:#354f60;font:500 12px/1.35 'DM Sans',Arial,sans-serif;text-align:center;
}
.avpc-estimate-popup__fallback a{color:#114d78;text-decoration:underline;font-weight:800}
body.avpc-estimate-popup-open{overflow:hidden!important}
@media(max-width:520px){
  .avpc-estimate-popup{width:calc(100vw - 14px);height:calc(100dvh - 14px);max-height:calc(100dvh - 14px);border-radius:11px}
  .avpc-estimate-popup__top{min-height:79px;gap:9px;padding:10px 48px 10px 10px}
  .avpc-estimate-popup__brand{width:43px;height:43px}
  .avpc-estimate-popup__title{font-size:clamp(22px,6.2vw,30px)}
  .avpc-estimate-popup__subtitle{font-size:10px;line-height:1.2}
  .avpc-estimate-popup__close{width:34px;height:34px;top:14px;right:8px;font-size:23px}
  .avpc-estimate-popup__fallback{padding:9px 12px;font-size:10px}
}


/* Draft 27 — detailed feature explanations and horizontally scrolling photo collections */
.v27-explainer{border:1px solid #d5dfdf;border-left:5px solid #bb9b69;background:#f6f8f8;border-radius:10px;padding:20px 22px;margin:22px 0 25px;max-width:1120px;box-shadow:0 9px 24px rgba(7,26,41,.05)}
.v27-explainer-title{font:800 11px/1.45 'DM Sans',Arial,sans-serif;letter-spacing:.14em;color:#8b3944;margin:0 0 16px}
.v27-explainer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.v27-explainer-card{background:#fff;border:1px solid #dfe7e9;border-radius:7px;padding:17px 16px;min-width:0}
.v27-explainer-card strong{display:block;font:800 12px/1.35 'DM Sans',Arial,sans-serif;color:#132f43;letter-spacing:.055em;margin:0 0 10px}
.v27-explainer-card p{font-size:13px;line-height:1.7;color:#425766;margin:0;overflow-wrap:break-word}
.v27-equipment-detailed{align-items:start}
.v27-equipment-detailed .v27-explainer{margin-top:18px;max-width:none;background:#eef3f4}
.v27-equipment-detailed .v27-explainer-card p{color:#304b5c}
.v27-carousel-toolbar{display:flex;justify-content:space-between;align-items:center;gap:13px;padding:12px 2px 12px;margin-top:12px;margin-bottom:4px}
.v27-carousel-help{font-size:10px;letter-spacing:.08em;font-weight:850;color:#627786}
.v27-carousel-buttons{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.v27-carousel-position{min-width:57px;text-align:center;font-size:12px;font-weight:800;color:#1c3a4b;white-space:nowrap}
.v27-carousel-prev,.v27-carousel-next{width:43px;height:40px;border:1px solid #9f895f;border-radius:6px;background:#0b283b;color:#fff;font-size:21px;line-height:1;cursor:pointer;display:grid;place-items:center}
.v27-carousel-prev:disabled,.v27-carousel-next:disabled{opacity:.35;cursor:not-allowed}
.v27-carousel-prev:focus-visible,.v27-carousel-next:focus-visible,.v27-scroll-gallery:focus-visible{outline:3px solid #b54652;outline-offset:3px}
/* Increase specificity above earlier CSS grid and mobile rules. */
body .v27-scroll-gallery{display:flex!important;flex-wrap:nowrap!important;grid-template-columns:none!important;gap:16px!important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:3px;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;padding:8px 3px 18px;scrollbar-width:thin;scrollbar-color:#c3a575 #e5edee;max-width:100%;width:100%;min-width:0}
body .v27-scroll-gallery>figure{display:block!important;flex:0 0 clamp(235px,32%,355px)!important;min-width:0!important;width:auto!important;margin:0!important;scroll-snap-align:start;scroll-snap-stop:normal}
body .v27-scroll-gallery .photo-view{display:block;width:100%;aspect-ratio:4/3;height:auto;min-height:0}
body .v27-scroll-gallery .photo-view img{display:block;width:100%;height:100%;object-fit:cover}
body .v27-scroll-gallery figcaption{font-size:11px;line-height:1.4;min-height:32px}
@media(max-width:850px){.v27-explainer-grid{grid-template-columns:1fr}.v27-explainer{padding:15px 15px;margin:16px 0 22px}.v27-explainer-card{padding:13px 14px}.v27-explainer-card p{font-size:13px}body .v27-scroll-gallery>figure{flex-basis:clamp(230px,66vw,360px)!important}}
@media(max-width:520px){.v27-carousel-help{font-size:9px;max-width:46%;line-height:1.35}.v27-carousel-toolbar{gap:6px}.v27-carousel-buttons{gap:5px}.v27-carousel-prev,.v27-carousel-next{width:38px;height:37px}body .v27-scroll-gallery{gap:11px!important}body .v27-scroll-gallery>figure{flex-basis:min(80vw,320px)!important}}
@media(prefers-reduced-motion:reduce){body .v27-scroll-gallery{scroll-behavior:auto}}


/* Working Draft 30 — approved real-project blueprint-to-backyard animation.
   Scoped to the Renovations opening; no changes to galleries, forms or global header. */
.avpc-blueprint-section{background:linear-gradient(135deg,#f8f9fa 0%,#f3f6f7 52%,#e9eef0 100%)}
.v24-opening .avpc-blueprint-layout{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:center;gap:clamp(26px,4vw,54px);margin-bottom:0}
.avpc-blueprint-copy{min-width:0}
.v24-opening .avpc-blueprint-copy h2{font-size:clamp(49px,5.15vw,76px);line-height:.98;overflow-wrap:normal}
.v24-opening .avpc-blueprint-copy>p{font-size:15px;color:#4c6270;line-height:1.86;max-width:520px;margin:24px 0 22px}
.avpc-blueprint-link{display:inline-flex;align-items:center;gap:12px;max-width:100%;padding:13px 1px 11px;color:#7b3640;border-bottom:2px solid #bb9464;font:800 11px/1.45 'DM Sans',Arial,sans-serif;letter-spacing:.115em;text-decoration:none;transition:color .2s ease,border-color .2s ease}
.avpc-blueprint-link:hover,.avpc-blueprint-link:focus-visible{color:#0e3045;border-color:#0e3045}
.avpc-blueprint-showcase{margin:0;min-width:0;padding:12px;background:#071a29;border:1px solid #987952;border-radius:18px;box-shadow:0 25px 55px rgba(8,26,38,.23);color:#f7f2e9;position:relative;overflow:hidden}
.avpc-blueprint-showcase:before{content:"";pointer-events:none;position:absolute;inset:4px;border:1px solid rgba(203,167,111,.18);border-radius:14px}
.avpc-blueprint-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 7px 12px;color:#dfc49d;font:700 10px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.13em}
.avpc-blueprint-topline span span{font-size:7px;margin:0 6px;color:#d4b183}
.avpc-blueprint-topline>span:last-child{font-size:9px;color:#a6c5d1;white-space:nowrap}
.avpc-blueprint-viewport{width:100%;aspect-ratio:678 / 378;overflow:hidden;border-radius:9px;position:relative;background:linear-gradient(145deg,#081b2d,#102c43);border:1px solid rgba(215,180,115,.5)}
.avpc-blueprint-viewport img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.avpc-blueprint-still{display:none!important}
.avpc-blueprint-showcase figcaption{padding:14px 7px 5px;font:800 11px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.12em;color:#d9bd92}
.avpc-blueprint-caption-mark{color:#d4a762;padding-right:6px}
.avpc-blueprint-caption-small{display:block;font:400 11px/1.65 'DM Sans',Arial,sans-serif;letter-spacing:normal;color:#bfcdd3;margin-top:3px}
@media(max-width:1050px){.v24-opening .avpc-blueprint-layout{grid-template-columns:minmax(0,1fr);gap:30px}.avpc-blueprint-showcase{width:min(100%,750px)}.v24-opening .avpc-blueprint-copy>p{max-width:750px}.v24-opening .avpc-blueprint-copy h2{font-size:clamp(48px,8vw,74px)}}
@media(max-width:520px){.avpc-blueprint-showcase{padding:8px;border-radius:12px}.avpc-blueprint-topline{padding:7px 5px 9px;font-size:8px;letter-spacing:.065em}.avpc-blueprint-topline>span:last-child{font-size:7px}.avpc-blueprint-showcase figcaption{font-size:10px;letter-spacing:.08em;padding:11px 4px 5px}.avpc-blueprint-caption-small{font-size:10px}.v24-opening .avpc-blueprint-copy h2{font-size:clamp(43px,10vw,60px)}.avpc-blueprint-link{font-size:10px;letter-spacing:.06em}}
@media(max-width:360px){.v24-opening .avpc-blueprint-copy h2{font-size:clamp(39px,10vw,48px);overflow-wrap:anywhere}.avpc-blueprint-topline>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.avpc-blueprint-motion{display:none!important}.avpc-blueprint-still{display:block!important}.avpc-blueprint-link{transition:none!important}}
