/* Brightline Painting — responsive.css  (breakpoints 1180 / 1024 / 860 / 640 / 560 / 420) */
@media (max-width:1180px){
  .header-phone{display:none}
  .fc-1{left:-16px}.fc-2{right:-8px}.fc-3{left:-8px}
  .trust-list{grid-template-columns:repeat(3,1fr)}
  .steps{grid-template-columns:repeat(3,1fr);row-gap:48px}
  .steps li:nth-child(3)::after{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:1024px){
  :root{--header-h:72px}
  .brand img{height:48px}
  .menu-toggle{display:inline-flex}
  .header-actions{margin-left:auto}
  .nav{position:absolute;top:calc(100% + 12px);left:0;right:0;z-index:150;background:var(--ink);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-md);padding:16px;max-height:calc(100vh - var(--header-h) - 56px);max-height:calc(100dvh - var(--header-h) - 56px);overflow-y:auto;display:none;margin:0}
  .nav.open{display:block}
  .nav-list{flex-direction:column;align-items:stretch;gap:8px}
  .nav-list a,.sub-toggle{color:var(--heading);font-size:1.25rem;padding:16px;width:100%;justify-content:space-between}
  .nav-list a:hover,.sub-toggle:hover{background:rgba(242,246,252,.06);color:var(--heading)}
  .nav-list a[aria-current="page"]{color:var(--accent-soft);box-shadow:inset 3px 0 0 var(--primary)}
  .sub-menu{position:static;background:transparent;box-shadow:none;padding:0 0 0 16px}
  .sub-menu a{font-size:1.0625rem;color:var(--silver)}
  .header-bar{position:relative}
  .hero-grid,.page-hero-grid,.intro-grid,.split,.areas-grid,.contact-grid,.cta-band,.featured-post{grid-template-columns:1fr}
  .hero{padding-top:152px}
  .hero-media{max-width:520px}
  .page-hero{padding-top:144px}
  .page-hero .media{max-width:640px}
  .intro-grid{gap:48px}
  .portrait-wrap{max-width:420px}
  .bento{grid-template-columns:repeat(2,1fr)}
  .tile-feature{grid-column:1/-1;grid-row:auto}
  .tile-wide{grid-column:auto;flex-direction:column}
  .tile-wide .media{flex:none}
  .tile-wide .body{padding:24px 32px 32px}
  .tile-wide h3{font-size:1.25rem}
  .tile-feature .media{aspect-ratio:16/10;min-height:0;flex:none}
  .tile-feature .media img{position:static}
  .grid-4,.diff-grid,.strip{grid-template-columns:repeat(2,1fr)}
  .grid-3{grid-template-columns:repeat(2,1fr)}
  .slide,.quote{flex-basis:calc((100% - 24px)/2)}
  .map-frame{position:static;aspect-ratio:16/10}
  .article-layout{grid-template-columns:1fr}
  .toc{position:static}
  .cta-band{padding:64px 40px}
}
@media (max-width:860px){
  .section{padding:96px 0}
  .stats-grid{grid-template-columns:repeat(2,1fr);row-gap:48px}
  .trust-list{grid-template-columns:repeat(2,1fr)}
  .tile-wide{flex-direction:column}
  .tile-wide .media{flex:none}
  .tile-wide .body{padding:24px 32px 32px}
  .footer-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  body{font-size:1rem}
  .container{padding:0 20px}
  .section{padding:80px 0}
  .section-tight{padding:64px 0}
  .bento,.grid-3,.grid-2,.grid-4,.city-cards{grid-template-columns:1fr}
  .tile-wide,.tile-feature{grid-column:auto}
  .steps{grid-template-columns:1fr}
  .steps li::after{display:none}
  .slide,.quote{flex-basis:86%}
  .form{padding:24px}
  .form-row{grid-template-columns:1fr}
  .featured-post .body{padding:32px 24px}
  .float-card{padding:8px 16px;gap:8px}
  .float-card strong{font-size:1.0625rem}
  .float-card .ico{width:32px;height:32px}
  .fc-2{display:none}
  .fc-1{left:8px;top:16px}.fc-3{left:8px;bottom:16px}
  .cta-band{padding:48px 24px;border-radius:var(--r-lg)}
  .newsletter{flex-direction:column}
  .hours-table th,.hours-table td{padding:16px}
  .author-box{flex-direction:column;align-items:flex-start}
  .lightbox-prev,.lightbox-next{top:auto;bottom:24px}
}
@media (max-width:560px){
  .site-header{top:8px;padding:0 8px}
  .header-bar{padding:0 8px 0 16px;gap:8px;border-radius:var(--r-md)}
  .header-actions .btn{display:none}
  .call-circle{display:inline-flex}
  .brand img{height:40px}
  .diff-grid,.strip{grid-template-columns:1fr}
  .trust-list{grid-template-columns:1fr}
  .to-top{right:16px;bottom:16px}
}
@media (max-width:420px){
  .brand img{height:34px}
  .call-circle,.menu-toggle{width:44px;height:44px}
  h1{font-size:2.25rem}
  .hero-ctas .btn{width:100%}
  .stats-grid{grid-template-columns:1fr}
}
