
:root { color-scheme: dark; }
html { scroll-padding-top: 100px; }
button:focus-visible,a:focus-visible,summary:focus-visible { outline:3px solid var(--acid); outline-offset:4px; }
.nav-links { gap:clamp(12px, 1.55vw, 26px); }
.nav-cta .btn { white-space:nowrap; }
.mobile-toggle { align-items:center;justify-content:center;min-width:42px;min-height:42px;line-height:1; }
@media(max-width:1100px){
  nav {position:relative;}
  .nav-links {display:none;}
  .mobile-toggle {display:flex;}
  .nav-links.open {display:flex;position:absolute;top:100%;left:0;right:0;background:#131313;flex-direction:column;gap:0;padding:10px 24px 18px;border-bottom:1px solid var(--line);max-height:calc(100vh - 100px);overflow-y:auto;box-shadow:0 18px 30px #0008;}
  .nav-links.open a {display:block;padding:12px 2px;border-bottom:1px solid #252525;}
}
.section-kicker {display:inline-flex;align-items:center;gap:9px;color:var(--acid);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px;}
.section-kicker::before{content:'';width:18px;height:2px;background:var(--acid)}
.section-title {font-size:clamp(28px,4.3vw,47px);margin:0 0 16px;}
.section-text {max-width:680px;color:#c9c9c3;font-size:15px;line-height:1.8;}
.showcase-section {background:#0d0d0d;border-top:1px solid var(--line);}
.showcase-heading {display:flex;align-items:end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:32px;}
.showcase-heading .btn {flex-shrink:0;}
.showcase-preview {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.showcase-preview-card {position:relative;display:block;background:#171717;border:1px solid #303029;min-width:0;overflow:hidden;}
.showcase-preview-card img {width:100%;height:285px;object-fit:cover;transition:transform .3s ease;}
.showcase-preview-card:hover img {transform:scale(1.035);}
.showcase-preview-card .preview-overlay {padding:17px 17px 20px;}
.preview-number {display:block;color:var(--acid);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;}
.showcase-preview-card strong {display:block;font-size:17px;font-weight:800;text-transform:uppercase;}
.showcase-preview-card small{display:block;color:var(--muted);font-size:12px;margin-top:6px;}
.preview-footer {display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:28px;color:#c9c9c3;font-size:13px;}
.preview-footer .dot {height:5px;width:5px;border-radius:50%;background:var(--acid);display:inline-block;}
.review-section {background:#111;border-top:1px solid #282823;}
.review-header-layout {display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:30px;}
.rating-summary {display:flex;align-items:center;gap:17px;flex-wrap:wrap;}
.rating-large {font-family:'Archivo Black',sans-serif;font-size:52px;line-height:1;color:#f5f5f0;}
.rating-stars {font-size:20px;color:var(--acid);letter-spacing:.1em;line-height:1.1;}
.rating-count {display:block;color:var(--muted);font-size:12px;margin-top:5px;}
.review-grid-new {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.review-tile {background:#1a1a1a;border:1px solid #30302a;padding:27px;display:flex;flex-direction:column;min-height:250px;}
.review-tile .stars {color:var(--acid);margin-bottom:16px;letter-spacing:3px;}
.review-tile blockquote {font-size:15px;line-height:1.85;color:#e7e7df;margin:0 0 22px;font-style:normal;flex:1;}
.review-tile .review-author {color:var(--white);font-size:13px;font-weight:800;}
.review-tile .review-source {display:block;color:var(--muted);font-size:12px;margin-top:4px;}
.reviews-note {font-size:12px;color:var(--muted);margin-top:19px;line-height:1.6;}
.page-feature-hero {padding:95px 0 60px;background:linear-gradient(135deg,#1c220b 0,#0b0b0b 70%);border-bottom:1px solid var(--line);}
.page-feature-hero h1 {font-size:clamp(35px,5.5vw,70px);max-width:920px;margin:13px 0 20px;}
.page-feature-hero .section-text {font-size:17px;max-width:780px;}
.project-cover {display:grid;grid-template-columns:1.25fr .75fr;gap:20px;align-items:stretch;}
.project-cover > img {width:100%;max-height:470px;object-fit:cover;object-position:center 57%;border:1px solid #303029;}
.project-fact-panel {padding:34px;background:#181818;border:1px solid #303029;display:flex;flex-direction:column;justify-content:center;gap:20px;}
.project-fact-panel h2 {font-size:25px;}
.project-fact-panel p {font-size:14px;line-height:1.7;color:#c9c9c3;}
.project-fact-panel ul{margin:0;padding:0;list-style:none;}
.project-fact-panel li{padding:11px 0;border-bottom:1px solid #303029;font-size:14px;}
.project-fact-panel li::before{content:'✓';color:var(--acid);margin-right:12px;font-weight:900;}
.stage-jump {display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 0;}
.stage-jump a{padding:11px 18px;border:1px solid #565647;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.06em;}
.stage-jump a:hover{background:var(--acid);border-color:var(--acid);color:var(--black);}
.stage-section {padding:78px 0 12px;border-top:1px solid var(--line);}
.stage-head {display:flex;justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:28px;}
.stage-head h2 {font-size:clamp(28px,4vw,45px);}
.stage-head small {color:var(--acid);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;}
.project-gallery-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.project-shot {margin:0;background:#181818;border:1px solid #303029;min-width:0;}
.project-shot a {display:block;overflow:hidden;}
.project-shot img {width:100%;height:280px;object-fit:cover;transition:transform .3s ease;}
.project-shot a:hover img {transform:scale(1.045);}
.project-shot figcaption {font-size:12px;color:#c9c9c3;min-height:60px;line-height:1.5;padding:12px 14px;}
.review-page-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.review-page-grid .review-tile {min-height:auto;}
.review-page-grid .review-tile:first-child {grid-column:span 2;}
.inline-project-callout {display:flex;align-items:center;gap:25px;padding:22px;border:1px solid var(--line);background:var(--panel);margin-top:35px;}
.inline-project-callout img{width:145px;height:120px;object-fit:cover;flex-shrink:0;}
.inline-project-callout h3{font-size:19px;margin-bottom:10px;}
.inline-project-callout p{font-size:14px;color:var(--muted);margin-bottom:13px;}
.inline-project-callout a{font-size:13px;color:var(--acid);font-weight:800;}
@media(max-width:900px){
 .project-gallery-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
 .review-grid-new {grid-template-columns:1fr;}
 .review-tile {min-height:auto;}
 .project-cover{grid-template-columns:1fr;}
}
@media(max-width:650px){
 .showcase-preview {grid-template-columns:1fr;}
 .showcase-preview-card img {height:280px;}
 .project-gallery-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
 .project-shot img {height:220px;}
 .project-shot figcaption {padding:11px;min-height:80px;}
 .review-page-grid {grid-template-columns:1fr;}
 .review-page-grid .review-tile:first-child {grid-column:auto;}
 .inline-project-callout{align-items:flex-start;flex-direction:column;}
 .inline-project-callout img {width:100%;height:180px;}
}
@media(max-width:400px){.project-gallery-grid{grid-template-columns:1fr}.project-shot img{height:320px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.showcase-preview-card img,.project-shot img{transition:none;}}

/* Additional verified project galleries — Oct 2026 staging update */
.portfolio-category-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.portfolio-category-jump a{padding:11px 15px;border:1px solid #52524c;color:var(--white);font-size:12px;font-weight:800;letter-spacing:.035em;text-transform:uppercase;transition:background .15s ease,color .15s ease}
.portfolio-category-jump a:hover,.portfolio-category-jump a:focus-visible{border-color:var(--acid);color:var(--acid)}
.portfolio-group{padding:80px 0;border-top:1px solid var(--line);background:#0d0d0d;scroll-margin-top:92px}
.portfolio-group:nth-of-type(even){background:#111}
.portfolio-feature-intro{padding:65px 0 16px;background:#101010}
.portfolio-group-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:27px}
.portfolio-count{color:var(--acid);font-size:12px;font-weight:800;letter-spacing:.12em;white-space:nowrap}
.portfolio-toplink{text-align:right;margin-top:18px}
.portfolio-toplink a{color:var(--acid);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.extended-work{padding:76px 0}
.extended-work .showcase-preview-card img{object-position:center}
.service-portfolio{padding:45px 0 75px}
@media(max-width:650px){.portfolio-group{padding:55px 0}.portfolio-group-heading{align-items:flex-start;flex-direction:column;gap:7px}.portfolio-category-jump a{flex:1 1 160px;text-align:center}.extended-work{padding:55px 0}}

#leadForm {scroll-margin-top:100px;} .detail-card a{color:var(--acid);text-decoration:underline;text-underline-offset:3px;}
