.project-page{max-width:1280px;margin:auto;padding:32px clamp(20px,5vw,72px) 64px}.project-page .breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;margin-bottom:30px}.breadcrumbs a{text-decoration:underline}.project-page h1{font-size:clamp(32px,4vw,58px);margin:18px 0}.project-overview{display:grid;grid-template-columns:1.35fr 1fr;gap:32px;margin:32px 0}.project-overview img{width:100%;height:auto}.project-facts{display:grid;gap:14px;margin:20px 0}.project-facts div{border-bottom:1px solid var(--line);padding-bottom:10px}.project-facts dt{font-size:13px;color:var(--muted)}.project-facts dd{margin:0;font-size:20px}.project-page section{margin-top:48px}.project-page h2{font-size:32px;margin-bottom:20px}.project-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-photos img{width:100%;height:auto}.project-photos figcaption{font-size:13px;margin-top:8px}.project-page p{max-width:850px;margin-bottom:14px}.project-related{display:flex;flex-wrap:wrap;gap:20px}.project-related a{text-decoration:underline}.project-page .button{margin-top:12px}.project-page-header{height:auto;min-height:90px;flex-wrap:wrap;padding-top:20px;padding-bottom:20px}.project-page-header nav{display:flex;gap:20px;flex-wrap:wrap}.project-picture{display:block}.seo-catalog-links{margin-top:24px}.seo-catalog-links summary{cursor:pointer}.seo-catalog-links ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-left:20px}.seo-catalog-links a{text-decoration:underline}@media(max-width:700px){.project-overview,.project-photos,.seo-catalog-links ul{grid-template-columns:1fr}.project-page-header .brand-name{font-size:25px}}
.related-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.related-controls:not([hidden]){display:flex;gap:10px}.related-controls button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:inherit;cursor:pointer;font-size:22px}.related-controls button:disabled{opacity:.3;cursor:default}.project-related{display:flex;flex-wrap:nowrap;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 18px;scroll-padding:2px}.project-related .related-card{flex:0 0 calc((100% - 40px)/3);min-width:0;scroll-snap-align:start;text-decoration:none}.related-card img{display:block;width:100%;height:auto;aspect-ratio:700/480;object-fit:cover}.related-card-title{display:flex;justify-content:space-between;gap:10px;font-size:21px;margin:14px 0 6px}.related-card-details{display:block;font-size:14px;color:var(--muted)}.related-card:focus-visible,.project-related:focus-visible,.related-controls button:focus-visible{outline:2px solid #a74b2a;outline-offset:2px}@media(max-width:700px){.project-related .related-card{flex-basis:82%}.related-heading{align-items:flex-start}.related-heading h2{font-size:26px}.related-controls{flex-shrink:0}}
.category-links{display:flex;flex-wrap:wrap;gap:20px;margin:28px 0}.project-page details{padding:18px 0;border-bottom:1px solid var(--line)}.project-page summary{cursor:pointer;font-size:19px}.project-page details p{margin-top:16px}
.payment-stages{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:28px}.payment-stages li{border-top:1px solid var(--line);padding-top:20px}.payment-stages strong{display:block;font-size:44px;color:var(--rust);font-weight:400;margin-bottom:18px}.payment-stages h3{font-size:23px;margin-bottom:12px}.payment-stages p{font-size:15px}@media(max-width:900px){.payment-stages{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.payment-stages{grid-template-columns:1fr}}
.pricing-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.pricing-rules article{border-top:1px solid var(--line);padding-top:18px}.pricing-rules article>span{font-size:12px;color:var(--rust)}.pricing-rules h2{font-size:25px;margin:14px 0}.price-project-list{display:grid;gap:32px}.price-project-card{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:30px;border-top:1px solid var(--line);padding-top:30px}.price-project-card img{width:100%;height:auto;aspect-ratio:700/480;object-fit:cover}.price-project-copy h2{font-size:32px;margin:8px 0 18px}.price-project-copy dl{display:grid;gap:10px}.price-project-copy dl div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;border-bottom:1px solid var(--line);padding-bottom:9px}.price-project-copy dt{font-size:14px}.price-project-copy dd{margin:0;font-size:17px;white-space:nowrap}.price-card-note{font-size:13px;color:var(--muted)}@media(max-width:750px){.pricing-rules,.price-project-card{grid-template-columns:1fr}.price-project-card{gap:18px}.price-project-copy dl div{display:block}.price-project-copy dd{margin-top:5px}}

/* Mobile project pages: prevent desktop navigation and content grids from spreading. */
@media(max-width:700px){
  .project-page-header{display:block;min-height:0;padding:14px 18px 10px}
  .project-page-header .brand{width:max-content}
  .project-page-header nav{display:flex;flex-wrap:nowrap;gap:0;width:100%;margin-top:12px;padding-top:7px;border-top:1px solid var(--line);overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}
  .project-page-header nav::-webkit-scrollbar{display:none}
  .project-page-header nav a{flex:0 0 auto;white-space:nowrap;padding:7px 20px 7px 0;font-size:14px;min-height:40px;display:flex;align-items:center}
  .project-page{width:100%;padding:22px 18px 92px;overflow:hidden}
  .project-page .breadcrumbs{gap:7px;margin-bottom:22px;font-size:12px;line-height:1.5}
  .project-page h1{font-size:clamp(29px,8.6vw,38px);overflow-wrap:anywhere}
  .project-page h2{font-size:25px;line-height:1.15}
  .project-page p{font-size:14px;line-height:1.55}
  .project-page section{margin-top:38px}
  .project-overview{gap:22px;margin:24px 0}.project-photos{gap:16px}
  .project-facts dd{font-size:17px}.project-page .button{width:100%;justify-content:space-between;min-height:46px;font-size:13px}
  .related-heading{gap:12px}.related-controls button{width:42px;height:42px}.project-related .related-card{flex-basis:88%}
  .price-project-copy h2{font-size:28px}.payment-stages strong{font-size:38px}
}

/* Compact mobile project detail pages. */
@media(max-width:700px){
  .project-page-header nav a{font-size:12px;min-height:34px;padding-top:5px;padding-bottom:5px}
  .project-page{padding-top:17px}
  .project-page .breadcrumbs{font-size:10px;margin-bottom:15px}
  .project-page .eyebrow{font-size:9px}
  .project-page h1{font-size:clamp(20px,5.5vw,24px);line-height:1.15;margin:11px 0 10px}
  .project-page h2,.related-heading h2{font-size:20px}
  .project-page p{font-size:12px;line-height:1.5}
  .project-page section{margin-top:28px}
  .project-facts dt{font-size:11px}.project-facts dd{font-size:14px}
  .related-card-title{font-size:16px}.related-card-details{font-size:11px}
  .project-photos figcaption{font-size:11px}
}

/* Dense mobile project pages with complete images. */
@media(max-width:700px){
  .project-page-header{padding:9px 14px 6px}
  .project-page-header .brand-name{font-size:20px}
  .project-page-header nav{margin-top:6px;padding-top:3px}
  .project-page-header nav a{font-size:10px;min-height:28px;padding:3px 14px 3px 0}
  .project-page{padding:12px 14px 48px}
  .project-page .breadcrumbs{font-size:8px;margin-bottom:9px;gap:4px}
  .project-page .eyebrow{font-size:8px}
  .project-page h1{font-size:18px;line-height:1.12;margin:7px 0}
  .project-page h2,.related-heading h2{font-size:17px;margin-bottom:10px}
  .project-page p{font-size:11px;line-height:1.38;margin-bottom:8px}
  .project-page section{margin-top:20px}
  .project-overview{gap:12px;margin:14px 0}.project-overview>img{width:100%;height:auto;object-fit:contain}
  .project-facts{gap:7px;margin:10px 0}.project-facts div{padding-bottom:6px}.project-facts dt{font-size:9px}.project-facts dd{font-size:12px}
  .project-photos{gap:10px}.project-photos img{width:100%;height:auto;object-fit:contain}
  .project-related{gap:10px}.project-related .related-card{flex-basis:72%}.related-card img{height:auto;object-fit:contain}
  .related-card-title{font-size:13px;margin:6px 0 3px}.related-card-details{font-size:9px}
  .project-page .button{width:100%;min-height:36px;padding:8px 12px;font-size:10px;line-height:1.2;justify-content:center}
}

/* Touch-friendly project navigation; horizontal scrolling stays inside the strip. */
@media(max-width:700px){
 .project-page-header nav a{min-height:44px}
 .related-controls button{width:44px;height:44px}
 .project-related{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
 .category-links a{display:inline-flex;align-items:center;min-height:44px}
}
