/* EPOXY FLOORING CADILLAC */

.vpc-cad-eyebrow{margin-bottom:18px;color:var(--vpc-red);}
.vpc-cad-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(590px,75vh,790px);overflow:hidden;background:var(--vpc-black);color:var(--vpc-white);}
.vpc-cad-hero-media{position:absolute;inset:0;z-index:-1;}
.vpc-cad-hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;}
.vpc-cad-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,11,.96),rgba(10,10,11,.84) 42%,rgba(10,10,11,.42) 72%,rgba(10,10,11,.15)),linear-gradient(0deg,rgba(10,10,11,.5),transparent 65%);}
.vpc-cad-hero-inner{width:min(100% - 48px,1200px);max-width:1200px;margin:0 auto;padding:clamp(98px,10vw,145px) 0 clamp(76px,8vw,115px);}
.vpc-cad-hero-inner>*{max-width:750px;}
.vpc-cad-hero-eyebrow{margin:0 0 18px;color:var(--vpc-red);}
.vpc-cad-hero h1{margin:0 0 24px;color:var(--vpc-white);font-size:clamp(48px,6.4vw,84px);line-height:.97;letter-spacing:-.025em;}
.vpc-cad-hero p{max-width:680px;margin:0 0 30px;color:var(--vpc-steel-light);font-size:var(--vpc-fs-lead);line-height:1.6;}
.vpc-cad-hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:32px;}
.vpc-cad-hero-actions .vpc-btn-secondary{border-color:rgba(255,255,255,.55);color:var(--vpc-white);}
.vpc-cad-trust{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding-top:22px;border-top:1px solid var(--vpc-line);color:var(--vpc-steel);font-size:13px;letter-spacing:.04em;}
.vpc-cad-trust i{width:3px;height:3px;border-radius:50%;background:var(--vpc-steel);}

.vpc-cad-overview h2,.vpc-cad-lakes h2,.vpc-cad-section-header h2,.vpc-cad-season h2,.vpc-cad-downtown h2,.vpc-cad-prep h2,.vpc-cad-nearby h2{margin:0;color:var(--vpc-white);font-size:clamp(34px,4.8vw,58px);line-height:.97;}
.vpc-cad-overview{padding:clamp(72px,8vw,120px) 0;border-top:1px solid var(--vpc-line);background:var(--vpc-charcoal);color:var(--vpc-white);}
.vpc-cad-overview-inner{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);gap:clamp(48px,7vw,90px);align-items:center;}
.vpc-cad-overview-image{overflow:hidden;border:1px solid var(--vpc-line);border-radius:var(--vpc-radius-lg);box-shadow:0 24px 72px rgba(0,0,0,.4);}
.vpc-cad-overview-image img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;}
.vpc-cad-overview-copy p,.vpc-cad-lakes-copy p,.vpc-cad-downtown-copy p,.vpc-cad-prep p,.vpc-cad-nearby p{margin:20px 0 0;color:var(--vpc-steel-light);font-size:var(--vpc-fs-body);line-height:1.75;}
.vpc-cad-overview-copy a:not(.vpc-btn){color:var(--vpc-white);text-decoration-color:var(--vpc-red);text-underline-offset:3px;}
.vpc-cad-overview-copy .vpc-btn{margin-top:28px;}

.vpc-cad-lakes{padding:clamp(72px,8vw,120px) 0;border-top:1px solid var(--vpc-line);background:var(--vpc-black);color:var(--vpc-white);}
.vpc-cad-lakes-inner,.vpc-cad-prep-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:clamp(48px,7vw,90px);align-items:center;}
.vpc-cad-lakes-stats{display:grid;overflow:hidden;border:1px solid var(--vpc-line);border-radius:var(--vpc-radius-lg);background:var(--vpc-charcoal);}
.vpc-cad-lakes-stats div{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:center;padding:22px 24px;border-bottom:1px solid var(--vpc-line);}
.vpc-cad-lakes-stats div:last-child{border-bottom:0;}
.vpc-cad-lakes-stats span{color:var(--vpc-red);font-family:var(--vpc-font-head);font-size:28px;font-weight:700;}
.vpc-cad-lakes-stats strong{color:var(--vpc-white);font-size:15px;line-height:1.45;}

.vpc-cad-projects,.vpc-cad-systems,.vpc-cad-faq{padding:clamp(72px,8vw,120px) 0;border-top:1px solid var(--vpc-line);color:var(--vpc-white);}
.vpc-cad-projects,.vpc-cad-faq{background:var(--vpc-charcoal);}
.vpc-cad-systems{background:var(--vpc-black);}
.vpc-cad-section-inner{display:flex;flex-direction:column;gap:clamp(44px,6vw,60px);}
.vpc-cad-section-header p{max-width:720px;margin:16px 0 0;color:var(--vpc-steel-light);font-size:var(--vpc-fs-lead);line-height:1.65;}
.vpc-cad-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.vpc-cad-project-grid article{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(28px,4vw,40px);border:1px solid var(--vpc-line);border-radius:var(--vpc-radius-lg);background:var(--vpc-black);}
.vpc-cad-card-num{margin-bottom:22px;color:var(--vpc-red);font-family:var(--vpc-font-head);font-size:32px;font-weight:700;}
.vpc-cad-project-grid h3{margin:0;color:var(--vpc-white);font-family:var(--vpc-font-head);font-size:clamp(21px,2.6vw,31px);line-height:1.08;text-transform:uppercase;}
.vpc-cad-project-grid p{margin:14px 0 24px;color:var(--vpc-steel-light);font-size:15px;line-height:1.7;}
.vpc-cad-project-grid a{margin-top:auto;color:var(--vpc-white);font-size:14px;font-weight:700;letter-spacing:.04em;text-decoration:none;text-transform:uppercase;}
.vpc-cad-project-grid a:hover{color:var(--vpc-red);}

.vpc-cad-season{padding:clamp(72px,8vw,120px) 0;border-top:1px solid var(--vpc-line);background:var(--vpc-black);color:var(--vpc-white);}
.vpc-cad-season-inner{display:flex;flex-direction:column;gap:50px;}
.vpc-cad-season-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.vpc-cad-season-grid article{padding:26px;border:1px solid var(--vpc-line);border-radius:var(--vpc-radius-lg);background:var(--vpc-charcoal);}
.vpc-cad-season-grid strong{color:var(--vpc-red);font-family:var(--vpc-font-head);font-size:24px;text-transform:uppercase;}
.vpc-cad-season-grid p{margin:12px 0 0;color:var(--vpc-steel-light);font-size:14px;line-height:1.7;}

.vpc-cad-downtown{padding:clamp(72px,8vw,120px) 0;border-top:1px solid var(--vpc-line);background:var(--vpc-charcoal);color:var(--vpc-white);}
.vpc-cad-downtown-inner{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(48px,7vw,90px);align-items:center;}
.vpc-cad-downtown-copy .vpc-btn{margin-top:28px;}
.vpc-cad-downtown-image{overflow:hidden;border:1px solid var(--vpc-line);border-radius:var(--vpc-radius-lg);}
.vpc-cad-downtown-image img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;}

.vpc-cad-system-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.vpc-cad-system-list a{display:grid;grid-template-columns:48px 1fr auto;gap:16px;align-items:center;padding:22px;border:1px solid var(--vpc-line);border-radius:var(--vpc-radius);background:var(--vpc-charcoal);color:var(--vpc-white);text-decoration:none;}
.vpc-cad-system-list a:last-child{grid-column:1/-1;max-width:calc(50% - 7px);}
.vpc-cad-system-list a:hover{border-color:rgba(224,30,43,.45);}
.vpc-cad-system-list span{color:var(--vpc-red);font-family:var(--vpc-font-head);font-size:26px;font-weight:700;}
.vpc-cad-system-list strong{display:block;font-family:var(--vpc-font-head);font-size:18px;text-transform:uppercase;}
.vpc-cad-system-list small{color:var(--vpc-steel);font-size:13px;}
.vpc-cad-system-list b{color:var(--vpc-red);font-size:22px;}

.vpc-cad-prep{padding:clamp(72px,8vw,120px) 0;border-top:1px solid var(--vpc-line);background:var(--vpc-charcoal);color:var(--vpc-white);}
.vpc-cad-prep-list{display:grid;margin:0;padding:0;overflow:hidden;border:1px solid var(--vpc-line);border-radius:var(--vpc-radius-lg);background:var(--vpc-black);list-style:none;}
.vpc-cad-prep-list li{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:20px 22px;border-bottom:1px solid var(--vpc-line);}
.vpc-cad-prep-list li:last-child{border-bottom:0;}
.vpc-cad-prep-list span{color:var(--vpc-red);font-family:var(--vpc-font-head);font-size:26px;font-weight:700;}
.vpc-cad-prep-list strong{color:var(--vpc-white);font-family:var(--vpc-font-head);font-size:18px;text-transform:uppercase;}
.vpc-cad-prep-list p{margin:5px 0 0;font-size:13px;line-height:1.55;}

.vpc-cad-nearby{padding:clamp(68px,8vw,108px) 0;border-top:1px solid var(--vpc-line);background:var(--vpc-black);color:var(--vpc-white);}
.vpc-cad-nearby-inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,7vw,90px);align-items:end;}
.vpc-cad-nearby p{margin-top:0;}
.vpc-cad-text-link{display:inline-flex;gap:8px;align-items:center;color:var(--vpc-white);font-size:14px;font-weight:700;letter-spacing:.04em;text-decoration:none;text-transform:uppercase;}
.vpc-cad-text-link:hover{color:var(--vpc-red);}

.vpc-cad-faq-list{display:grid;gap:12px;}
.vpc-cad-faq-list details{border:1px solid var(--vpc-line);border-radius:var(--vpc-radius);background:var(--vpc-black);}
.vpc-cad-faq-list summary{position:relative;padding:22px 58px 22px 24px;cursor:pointer;list-style:none;color:var(--vpc-white);font-family:var(--vpc-font-head);font-size:clamp(17px,1.8vw,21px);font-weight:700;line-height:1.3;text-transform:uppercase;}
.vpc-cad-faq-list summary::-webkit-details-marker{display:none;}
.vpc-cad-faq-list summary::after{position:absolute;top:50%;right:24px;transform:translateY(-50%);color:var(--vpc-red);font-size:28px;content:"+";}
.vpc-cad-faq-list details[open] summary::after{content:"−";}
.vpc-cad-faq-list p{margin:0;padding:0 24px 24px;color:var(--vpc-steel-light);font-size:15px;line-height:1.75;}

.vpc-cad-cta{position:relative;overflow:hidden;padding:clamp(80px,10vw,140px) 0;border-top:1px solid var(--vpc-line);background:radial-gradient(ellipse 80% 60% at 50% 50%,rgba(224,30,43,.14),transparent 70%),var(--vpc-charcoal);color:var(--vpc-white);text-align:center;}
.vpc-cad-cta-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:48px 48px;}
.vpc-cad-cta-inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:22px;max-width:740px;margin:0 auto;}
.vpc-cad-cta-eyebrow{justify-content:center;color:var(--vpc-red);}
.vpc-cad-cta h2{margin:0;color:var(--vpc-white);font-size:clamp(36px,5.5vw,68px);line-height:.97;}
.vpc-cad-cta p{max-width:580px;margin:0;color:var(--vpc-steel-light);font-size:var(--vpc-fs-lead);line-height:1.65;}

@media(max-width:980px){.vpc-cad-season-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:900px){.vpc-cad-overview-inner,.vpc-cad-lakes-inner,.vpc-cad-downtown-inner,.vpc-cad-prep-inner,.vpc-cad-nearby-inner{grid-template-columns:1fr;gap:38px;}.vpc-cad-overview-image{max-width:600px;}}
@media(max-width:760px){.vpc-cad-project-grid,.vpc-cad-system-list{grid-template-columns:1fr;}.vpc-cad-system-list a:last-child{grid-column:auto;max-width:none;}}
@media(max-width:767px){.vpc-cad-hero{align-items:flex-end;min-height:650px;}.vpc-cad-hero-media img{object-position:62% center;}.vpc-cad-hero-overlay{background:linear-gradient(0deg,rgba(10,10,11,.98),rgba(10,10,11,.87) 58%,rgba(10,10,11,.35));}.vpc-cad-hero-inner{width:min(100% - 36px,1200px);padding:155px 0 52px;}.vpc-cad-hero h1{font-size:clamp(40px,11vw,58px);}.vpc-cad-hero p{font-size:17px;}.vpc-cad-hero-actions{gap:10px;}.vpc-cad-hero-actions .vpc-btn,.vpc-cad-cta .vpc-btn{width:100%;text-align:center;}}
@media(max-width:620px){.vpc-cad-season-grid{grid-template-columns:1fr;}}
