@layer reset,tokens,base,layout,utilities,components;@layer pages{.guidance-grid{align-items:stretch;gap:clamp(1rem,2.4vw,2rem)}.guidance-grid>article{border:1px solid var(--line);border-block-start:.28rem solid var(--signal-500);border-radius:var(--radius-lg);background:linear-gradient(145deg, color-mix(in srgb, var(--signal-500) 7%, transparent), transparent 38%), var(--surface);box-shadow:var(--shadow-sm);align-content:start;gap:clamp(.9rem,1.6vw,1.2rem);padding:clamp(1.4rem,2.8vw,2.4rem);display:grid;position:relative;overflow:hidden}.guidance-grid>article>.eyebrow{justify-self:start}.guidance-grid>article>h2{max-inline-size:20ch;font-size:clamp(1.7rem,1.38rem + 1vw,2.3rem);line-height:1.24}.guidance-grid>article>p{max-inline-size:62ch;line-height:1.85}.guidance-grid>article>:where(.check-list,.contact-dl){border-block-start:1px solid var(--line);margin-block-start:.15rem}.guidance-grid .check-list{gap:0}.guidance-grid .check-list li{border-block-end:1px solid var(--line);overflow-wrap:break-word;min-inline-size:0;padding-block:.72rem;padding-inline-start:2rem;line-height:1.7}.guidance-grid .check-list li:before{background:color-mix(in srgb, var(--success) 10%, transparent);border-radius:50%;place-items:center;block-size:1.25rem;inline-size:1.25rem;font-size:.78rem;line-height:1;display:grid;inset-block-start:.9rem}.guidance-grid .contact-dl>div:last-child,.guidance-grid .check-list li:last-child{border-block-end:0}@media (width<=40rem){.guidance-grid>article{border-radius:var(--radius-md);padding:1.25rem}.guidance-grid>article>h2{text-wrap:pretty;font-size:clamp(1.55rem,7vw,1.9rem)}}.direct-answer{border:1px solid var(--line);border-inline-start:.32rem solid var(--signal-500);border-radius:var(--radius-md);background:var(--surface);max-inline-size:72ch;color:var(--ink-800);font-size:var(--step-1);box-shadow:var(--shadow-sm);padding:clamp(1.2rem,2.5vw,1.8rem);font-weight:600;line-height:1.8;position:relative}.section-note{border-radius:var(--radius-sm);background:var(--concrete-100);color:var(--ink-600);font-size:var(--step--1);margin-block-start:1rem;padding:1rem}.video-detail-hero{border-block-end:1px solid var(--line);background:radial-gradient(circle at 84% 18%, color-mix(in srgb, var(--signal-500) 11%, transparent), transparent 29rem), linear-gradient(135deg, var(--concrete-25), var(--concrete-100))}.video-detail-hero>.video-detail-hero-layout{grid-template-rows:auto auto;grid-template-columns:minmax(19rem,.82fr) minmax(0,1.35fr);align-items:center;gap:1.4rem clamp(2rem,4.5vw,4.75rem);min-block-size:auto;padding-block:clamp(2.75rem,5vw,4.5rem);display:grid}.video-detail-hero-copy{grid-area:1/1;align-self:end;justify-items:start;gap:1rem;display:grid}.video-detail-hero-copy h1{max-inline-size:17ch;font-size:clamp(2rem,1.5rem + 1.55vw,3.25rem);line-height:1.35}.video-detail-hero-copy>p{max-inline-size:52ch;color:var(--ink-600);font-size:var(--type-lead);line-height:1.85}.video-detail-hero-player{border:1px solid color-mix(in srgb, var(--ink-950) 34%, transparent);border-radius:var(--radius-xl) var(--radius-xs) var(--radius-xl) var(--radius-xl);background:var(--ink-950);box-shadow:var(--shadow-lg);grid-area:1/2/span 2;align-self:center;overflow:hidden}.video-detail-hero-player .video-embed{box-shadow:none;border-radius:0}.video-detail-hero-player figcaption{color:#ffffffb8;min-block-size:3.75rem;font-size:var(--step--2);justify-content:space-between;align-items:center;gap:.75rem 1.25rem;padding:.8rem 1.1rem;line-height:1.6;display:flex}.video-detail-hero-player figcaption>span{font-weight:650}.video-detail-hero-player figcaption a{color:var(--signal-400);white-space:nowrap;align-items:center;gap:.4rem;font-weight:800;text-decoration:none;display:inline-flex}.video-detail-hero-summary{border:1px solid var(--line);border-radius:var(--radius-md);background:color-mix(in srgb, var(--surface) 86%, transparent);box-shadow:var(--shadow-sm);backdrop-filter:blur(.5rem);grid-area:2/1;align-self:start;gap:1rem;padding:clamp(1rem,2vw,1.35rem);display:grid}.video-detail-summary-heading{gap:.1rem;display:grid}.video-detail-summary-heading span,.video-detail-meta dt{color:var(--ink-500);font-size:var(--step--2);font-weight:700}.video-detail-summary-heading strong{color:var(--ink-950);font-size:var(--type-card-title);line-height:1.5}.video-detail-highlights{flex-wrap:wrap;gap:.5rem;list-style:none;display:flex}.video-detail-highlights li{border:1px solid var(--line);background:var(--concrete-50);min-block-size:2.2rem;color:var(--ink-800);font-size:var(--step--2);border-radius:99rem;align-items:center;gap:.42rem;padding:.35rem .65rem;font-weight:750;line-height:1.5;display:inline-flex}.video-detail-highlights li:before{content:"✓";background:color-mix(in srgb, var(--success) 12%, transparent);block-size:1rem;inline-size:1rem;color:var(--success);border-radius:50%;place-items:center;font-size:.68rem;line-height:1;display:grid}.video-detail-meta{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.video-detail-meta>div{background:var(--surface);align-content:start;gap:.2rem;min-inline-size:0;padding:.7rem;display:grid}.video-detail-meta dd{color:var(--ink-900);font-size:var(--step--2);font-weight:800;line-height:1.55}@media (width<=64rem){.video-detail-hero>.video-detail-hero-layout{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);gap:1.75rem}.video-detail-hero-copy,.video-detail-hero-player,.video-detail-hero-summary{grid-column:1}.video-detail-hero-copy{grid-row:1}.video-detail-hero-player{grid-row:2}.video-detail-hero-summary{grid-row:3}}@media (width<=42rem){.video-detail-hero>.video-detail-hero-layout{gap:1.35rem;padding-block:2rem 2.5rem}.video-detail-hero-copy{gap:.8rem}.video-detail-hero-copy h1{max-inline-size:100%;font-size:clamp(1.8rem,8.2vw,2.35rem);line-height:1.42}.video-detail-hero-copy>p{font-size:1rem;line-height:1.78}.video-detail-hero-player{border-radius:var(--radius-lg) var(--radius-xs) var(--radius-lg) var(--radius-lg)}.video-detail-hero-player figcaption{flex-direction:column;align-items:flex-start;min-block-size:auto;padding:.75rem .9rem}.video-detail-meta{grid-template-columns:1fr}}.article-layout{grid-template-columns:minmax(0,1fr) minmax(15rem,18rem);align-items:start;gap:clamp(2rem,5vw,5rem);display:grid}.article-aside{gap:1rem;display:grid}.prose{max-inline-size:var(--container-reading);color:var(--ink-700)}.article-layout>.prose{max-inline-size:none}.prose>*+*{margin-block-start:1.25rem}.prose :where(h2,h3,h4){scroll-margin-block-start:calc(var(--header-offset) + 1.5rem)}.prose h2{border-block-start:1px solid var(--line);font-size:var(--step-2);margin-block-start:clamp(2.8rem,6vw,4.8rem);padding-block-start:1rem}.prose h3{font-size:var(--step-1);margin-block-start:2.2rem}.prose p,.prose li{color:var(--ink-700);line-height:1.9}.prose :where(ul,ol){gap:.45rem;padding-inline-start:1.35rem;display:grid}.prose a:not(.button){color:var(--ink-950);font-weight:700}.opening-decision-table{table-layout:fixed}.opening-decision-table :is(th,td){border:1px solid var(--line);text-align:start;vertical-align:top;overflow-wrap:anywhere;padding:.75rem}.opening-decision-table .opening-decision-label{display:none}@media (width<=48rem){.opening-decision-table{display:block}.opening-decision-table thead{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.opening-decision-table tbody{gap:1rem;display:grid}.opening-decision-table tbody tr{border:1px solid var(--line);border-radius:var(--radius-md);padding:1rem;display:block}.opening-decision-table tbody :is(th,td){border:0;inline-size:100%;padding:0;display:block}.opening-decision-table tbody td{margin-block-start:.85rem}.opening-decision-table .opening-decision-label{color:var(--ink-950);margin-block-end:.2rem;font-weight:700;display:block}}.prose blockquote{border-inline-start:.32rem solid var(--signal-500);background:var(--concrete-100);color:var(--ink-800);font-size:var(--step-1);padding:1.25rem 1.5rem;font-weight:650}.prose img,.photo-detail-figure img,.project-work-image img{border-radius:var(--radius-lg);inline-size:100%}.video-related-images,.photo-related-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));align-items:stretch;gap:1rem;display:grid}.video-related-images>figure,.service-evidence-images>figure,.photo-related-grid>a{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);min-inline-size:0;color:var(--ink-800);box-shadow:var(--shadow-sm);grid-template-rows:auto 1fr;align-content:start;display:grid;overflow:hidden}.video-related-images>figure>picture,.video-related-images>figure>.work-image-placeholder{aspect-ratio:4/3;background:var(--ink-800);border-radius:0;min-block-size:0;inline-size:100%;overflow:hidden}.video-related-images>figure>picture>img{object-fit:cover;object-position:center;border-radius:0;block-size:100%;inline-size:100%}.service-evidence-images>figure>img,.photo-related-grid>a>img,.archive-photo-preview>a>img{aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:0;inline-size:100%}.article-detail-page .prose>img{aspect-ratio:4/3;background:var(--ink-800);object-fit:contain;object-position:center}.video-related-images figcaption,.service-evidence-images figcaption,.photo-related-grid>a>:is(strong,span){min-block-size:3.5rem;color:inherit;font-size:var(--step--2);align-items:center;padding:.75rem .9rem;font-weight:750;line-height:1.65;display:flex}.photo-related-grid>a{text-decoration:none}.service-evidence-images>figure{background:var(--ink-900);color:var(--surface);border-color:#ffffff29}.photo-detail-figure,.project-work-image{border-radius:var(--radius-lg);background:var(--ink-800);box-shadow:var(--shadow-md);overflow:hidden}.photo-detail-figure figcaption{background:var(--ink-950);color:#ffffffb3;font-size:var(--step--2);padding:.8rem 1rem}@media (width<=58rem){.article-layout{grid-template-columns:1fr}.article-aside{grid-row:1}}.final-cta,.cta-panel,.final-cta-box{border-radius:var(--radius-lg);background:var(--ink-950);color:var(--surface);box-shadow:var(--shadow-md);gap:1rem;padding:clamp(1.5rem,4.5vw,3.5rem);display:grid;position:relative;overflow:hidden}.final-cta:after,.cta-panel:after,.final-cta-box:after{content:"";pointer-events:none;border:3rem solid #f6c70017;border-radius:50%;block-size:15rem;inline-size:15rem;position:absolute;inset-block-start:-5rem;inset-inline-end:-4rem}.final-cta :where(h2,h3),.cta-panel :where(h2,h3),.final-cta-box :where(h2,h3){z-index:1;max-inline-size:22ch;color:var(--surface);position:relative}.final-cta p,.cta-panel p,.final-cta-box p{z-index:1;color:#fffc;max-inline-size:60ch;position:relative}.final-cta .kicker,.cta-panel .kicker,.final-cta-box .kicker{color:var(--signal-400)}.final-cta .button-row,.final-cta .final-cta-buttons,.cta-panel .button-row,.final-cta-box .final-cta-buttons{z-index:1;flex-wrap:wrap;gap:.75rem;margin-block-start:.5rem;display:flex;position:relative}.service-directory{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));align-items:stretch;gap:clamp(1rem,2.2vw,1.5rem);display:grid}.service-directory-card{isolation:isolate;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-inline-size:0;box-shadow:var(--shadow-sm);transition:translate var(--motion-standard) var(--ease-out), border-color var(--motion-standard) ease, box-shadow var(--motion-standard) ease;grid-template-rows:auto 1fr;display:grid;position:relative;overflow:hidden}.service-directory-card:hover,.service-directory-card:focus-within{border-color:var(--line-strong);box-shadow:var(--shadow-md);translate:0 -.3rem}.service-directory-media{aspect-ratio:16/10;background:var(--ink-800);text-decoration:none;display:block;position:relative;overflow:hidden}.service-directory-media:after{content:"";pointer-events:none;background:linear-gradient(#1013161a,#0000 55%,#10131661);position:absolute;inset:0}.service-directory-media :where(picture,img){block-size:100%;inline-size:100%}.service-directory-media img{object-fit:cover;object-position:center;transition:scale var(--motion-slow) var(--ease-out)}.service-directory-card:hover .service-directory-media img,.service-directory-card:focus-within .service-directory-media img{scale:1.045}.service-directory-index{z-index:2;background:var(--signal-500);block-size:2.8rem;inline-size:2.8rem;color:var(--ink-950);font-family:var(--font-mono);font-size:var(--step--1);border-radius:50%;place-items:center;font-weight:900;line-height:1;display:grid;position:absolute;inset-block-start:1rem;inset-inline-start:1rem;box-shadow:0 .45rem 1.3rem #1013163d}.service-directory-content{grid-template-rows:auto auto auto auto 1fr;align-content:start;gap:.95rem;padding:clamp(1.15rem,2.5vw,1.6rem);display:grid}.service-directory-heading{gap:.35rem;display:grid}.service-directory-heading>span{color:var(--signal-700);font-family:var(--font-mono);font-size:var(--step--2);font-weight:800}.service-directory-heading h2{font-size:var(--step-1);text-wrap:balance;line-height:1.5}.service-directory-summary{color:var(--ink-600);font-size:var(--step--1);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.8;display:-webkit-box;overflow:hidden}.service-directory-equipment{border-inline-start:.2rem solid var(--signal-500);border-radius:var(--radius-xs);background:var(--concrete-50);gap:.2rem;margin:0;padding:.65rem .8rem;display:grid}.service-directory-equipment span{color:var(--ink-500);font-size:var(--step--2);font-weight:750}.service-directory-equipment strong{color:var(--ink-900);font-size:var(--step--1);line-height:1.6}.service-directory-card .tag-list{align-content:start}.service-directory-card .tag-list li{background:var(--concrete-50)}.service-directory-link{border-block-start:1px solid var(--line);min-block-size:3.1rem;color:var(--ink-950);font-size:var(--step--1);justify-content:space-between;align-self:end;align-items:center;gap:1rem;margin-block-start:.15rem;padding-block-start:.9rem;font-weight:850;text-decoration:none;display:flex}.service-directory-link>:last-child{background:var(--ink-950);block-size:2.15rem;inline-size:2.15rem;color:var(--signal-400);transition:translate var(--motion-standard) var(--ease-out), background var(--motion-fast) ease;border-radius:50%;flex:none;place-items:center;display:grid}.service-directory-link:hover>:last-child,.service-directory-link:focus-visible>:last-child{background:var(--signal-500);color:var(--ink-950);translate:-.22rem}.service-overview-section{border-block:1px solid var(--line);background:var(--surface)}.service-overview-strip{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.service-overview-strip>div{border-inline-end:1px solid var(--line);align-content:center;gap:.3rem;min-block-size:7rem;padding:1.2rem;display:grid}.service-overview-strip small,.meta-title,.meta-label{color:var(--ink-500);font-family:var(--font-mono);font-size:var(--step--2);font-weight:700}.service-overview-strip strong,.meta-value{color:var(--ink-900);font-size:var(--step--1)}.numbered-detail-list{counter-reset:detail;list-style:none;display:grid}.numbered-detail-list>li{border-block-end:1px solid var(--line);counter-increment:detail;gap:.45rem;padding:1.2rem 3.5rem 1.2rem 0;display:grid;position:relative}.numbered-detail-list>li:before{content:counter(detail, decimal-leading-zero);color:var(--signal-700);font-family:var(--font-mono);font-size:var(--step--1);font-weight:900;position:absolute;inset-inline-start:0}.service-evidence-section{background:var(--ink-950);color:var(--surface)}.service-evidence-section :where(h2,h3){color:var(--surface)}.service-evidence-section .eyebrow{color:var(--signal-400)}.service-evidence-section .section-header>p{color:color-mix(in srgb, var(--surface) 78%, transparent)}.service-evidence-group+.service-evidence-group{margin-block-start:3rem}.service-evidence-group-header{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-block-end:1.5rem;display:flex}.service-evidence-group-header .text-link{color:var(--surface)}.service-evidence-projects,.service-evidence-images,.service-evidence-videos,.project-video-proof-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;display:grid}.service-project-chip{border-radius:var(--radius-sm);min-block-size:4.5rem;color:var(--surface);border:1px solid #ffffff29;align-items:center;padding:1rem;font-weight:750;text-decoration:none;display:flex}@media (width<=42rem){.service-directory{grid-template-columns:1fr}.service-directory-media{aspect-ratio:16/9}.service-directory-content{padding:1.1rem}.service-directory-index{block-size:2.55rem;inline-size:2.55rem;inset-block-start:.75rem;inset-inline-start:.75rem}.service-overview-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.service-overview-strip>div{border-block-end:1px solid var(--line)}}.decision-panel,.city-process-panel,.contractor-proof-box{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);grid-template-columns:minmax(14rem,.75fr) minmax(0,1.25fr);gap:clamp(1.5rem,4vw,4rem);padding:clamp(1.5rem,4vw,3rem);display:grid}.decision-intro,.proof-header{align-content:start;gap:.8rem;display:grid}.method-comparison{gap:1rem;display:grid}.method-comparison>article,.method-comparison>div{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:4.5rem minmax(13rem,.55fr) minmax(0,1fr) auto;align-items:center;gap:1.25rem;padding:1.4rem;display:grid}.method-number{color:var(--signal-700);font-family:var(--font-mono);font-size:var(--step-2);font-weight:900}.method-name{gap:.2rem;display:grid}.safety-gates{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem;display:grid}.safety-gates>*{border-block-start:.28rem solid var(--signal-500);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);padding:1.5rem}@media (width<=50rem){.decision-panel,.city-process-panel,.contractor-proof-box,.method-comparison>article,.method-comparison>div{grid-template-columns:1fr}}.area-showcase,.city-assurance-grid,.city-detail-layout,.city-bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.area-panel{border-radius:var(--radius-lg);background:linear-gradient(to top, #101316eb, #1013164d), var(--ink-800);min-block-size:23rem;color:var(--surface);align-items:stretch;padding:clamp(1.5rem,4vw,3rem);display:flex;position:relative;overflow:hidden}.area-panel-content{grid-template-rows:auto 1fr;gap:.9rem;inline-size:100%;display:grid}.area-panel-content>:first-child{min-block-size:8.5rem}.area-panel-content>:last-child{grid-template-rows:1fr auto;align-items:start;gap:1rem;display:grid}.area-panel .area-links{align-content:start}.area-panel :where(h2,h3){color:var(--surface)}.area-panel p{color:#ffffffd1}.metric-row{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--line);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1px;display:grid;overflow:hidden}.metric-row>*{background:var(--surface);text-align:center;place-content:center;gap:.35rem;min-block-size:8rem;padding:1rem;display:grid}.metric-row strong{color:var(--ink-950);font-size:var(--step-2)}.area-directory-card h2,.area-directory-card h3{font-size:var(--step-1)}.taxonomy-grid>a,.new-city-links>a,.area-links>a{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-block-size:3.2rem;font-size:var(--step--1);justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem 1rem;font-weight:750;text-decoration:none;display:flex}.taxonomy-grid>a:after,.new-city-links>a:after,.area-links>a:after{content:"←";color:var(--signal-700)}@media (width<=46rem){.area-showcase,.city-assurance-grid,.city-detail-layout,.city-bottom-grid{grid-template-columns:1fr}.area-panel-content>:first-child{min-block-size:0}}.projects-editorial-stack{gap:clamp(1.5rem,4vw,3rem);display:grid}.project-case-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);grid-template-columns:minmax(17rem,.72fr) minmax(0,1.28fr);display:grid;overflow:hidden}.project-card-visual{background:var(--ink-800);min-block-size:24rem;position:relative}.project-card-visual picture,.project-card-visual img{block-size:100%;inline-size:100%}.project-card-visual img{object-fit:cover}.project-visual-badges{z-index:2;border-radius:var(--radius-xs);-webkit-backdrop-filter:blur(10px);background:#101316e0;border:1px solid #ffffff38;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.4rem .75rem;display:flex;position:absolute;inset-block-end:.85rem;inset-inline:.85rem;box-shadow:0 4px 18px #10131659}.project-visual-badges .badge-item{color:var(--surface);font-size:.73rem;font-weight:750;line-height:1.35}.project-visual-badges .badge-element{color:var(--signal-400);font-weight:850}.project-visual-badges .badge-separator{color:#fff6;font-weight:900}.project-card-content{align-content:start;gap:clamp(.8rem,1.6vw,1.05rem);padding:clamp(1.35rem,3vw,2.25rem);display:grid}.project-tech-grid,.proof-pillars-grid,.project-meta-grid{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.tech-box,.pillar-item,.project-meta-grid>*{background:var(--concrete-50);gap:.25rem;padding:.9rem;display:grid}.tech-box-full{grid-column:1/-1}.project-card-cta,.project-story-actions,.dark-project-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.projects-page .project-card-cta{gap:.6rem .9rem}.project-detail-page .page-hero>.container{min-block-size:auto;padding-block:clamp(2.5rem,4vw,3.5rem)}.project-detail-page .page-hero-grid{gap:clamp(2rem,4vw,3.75rem)}.project-detail-page .page-hero-media{block-size:clamp(17rem,24vw,20rem)}.project-detail-page .photo-detail-figure>.project-work-image{aspect-ratio:16/9;inline-size:100%;box-shadow:none;border-radius:0;display:block}.project-detail-page .photo-detail-figure>.project-work-image>img{object-fit:cover;object-position:center;border-radius:0;block-size:100%;inline-size:100%}@media (width<=56rem){.project-case-card{grid-template-columns:1fr}.project-card-visual{aspect-ratio:16/9;min-block-size:auto}}@media (width<=60rem){.project-detail-page .page-hero-media{aspect-ratio:16/9;block-size:auto;max-block-size:20rem}}@media (width<=42rem){.projects-page .project-card-content{gap:.75rem;padding:1.15rem}.projects-page .project-card-content h2{font-size:clamp(1.55rem,7vw,1.9rem);line-height:1.45}.projects-page .project-summary-text{line-height:1.75}}.photo-detail-main{background:var(--surface)}.photo-detail-hero{isolation:isolate;border-block-end:1px solid var(--line);background:radial-gradient(circle at 8% 16%, #f6c7002e, transparent 24rem), linear-gradient(145deg, var(--concrete-25) 0%, var(--concrete-100) 100%);padding-block:clamp(.9rem,1.8vw,1.35rem) clamp(3.25rem,6vw,5.5rem);position:relative;overflow:hidden}.photo-detail-hero:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(#10131609 1px,#0000 1px),linear-gradient(90deg,#10131609 1px,#0000 1px);background-size:4.5rem 4.5rem;position:absolute;inset:0;mask-image:linear-gradient(#000,#0000 82%)}.photo-detail-hero .breadcrumbs{margin-block-end:clamp(1rem,2vw,1.5rem)}.photo-detail-grid{grid-template-columns:minmax(19rem,.74fr) minmax(0,1.36fr);align-items:stretch;gap:clamp(1rem,2.6vw,2.25rem);display:grid}.photo-detail-copy{isolation:isolate;border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);background:#fffffff0;align-content:center;gap:clamp(1rem,1.75vw,1.35rem);padding:clamp(1.5rem,3.1vw,2.65rem);display:grid;position:relative;overflow:hidden}.photo-detail-copy:before{content:"";z-index:-1;background:var(--signal-500);border-radius:0 0 99rem 99rem;block-size:.3rem;inline-size:clamp(5rem,34%,9rem);position:absolute;inset-block-start:0;inset-inline-start:0}.photo-detail-copy:after{content:"";z-index:-1;aspect-ratio:1;pointer-events:none;border:2.5rem solid #f6c70014;border-radius:50%;inline-size:12rem;position:absolute;inset-block-start:-5rem;inset-inline-end:-4rem}.photo-detail-kicker-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.photo-detail-counter{color:var(--ink-500);font-family:var(--font-mono);direction:ltr;flex:none;align-items:baseline;gap:.28rem;font-size:.72rem;font-weight:750;display:inline-flex}.photo-detail-counter b{color:var(--ink-950);font-size:1rem}.photo-detail-counter i{color:var(--signal-600);font-style:normal}.photo-detail-copy h1{max-inline-size:14ch;font-size:clamp(1.95rem,1.58rem + 1.2vw,2.8rem);line-height:1.3}.photo-detail-lead{max-inline-size:52ch;color:var(--ink-600);font-size:var(--type-lead);line-height:1.85}.photo-detail-tags{flex-wrap:wrap;gap:.55rem;display:flex}.photo-detail-tags>span{border:1px solid var(--line);background:var(--concrete-50);min-block-size:2.35rem;color:var(--ink-700);font-size:var(--step--2);border-radius:99rem;align-items:center;gap:.5rem;padding:.42rem .72rem;font-weight:750;line-height:1.45;display:inline-flex}.photo-detail-tags .industrial-icon{color:var(--signal-700);flex:none}.photo-facts{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.photo-facts>div{background:var(--concrete-25);grid-template-columns:1fr;align-content:start;align-items:start;gap:.25rem;padding:.82rem .9rem;display:grid}.photo-facts dt{color:var(--ink-500);font-size:var(--step--2);font-weight:750}.photo-facts dd{color:var(--ink-900);font-size:var(--step--1);font-weight:800;line-height:1.65}.photo-detail-cta{gap:.75rem;padding-block-start:.2rem;display:grid}.photo-detail-cta .button-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.photo-detail-cta .button-row>.button:nth-child(3){grid-column:1/-1}.photo-detail-cta .button{min-inline-size:0;padding-inline:.72rem}.photo-detail-cta>p{color:var(--ink-500);font-size:var(--step--2);align-items:center;gap:.5rem;display:flex}.photo-detail-cta>p>span{background:var(--success);block-size:.48rem;inline-size:.48rem;box-shadow:0 0 0 .25rem color-mix(in srgb, var(--success) 13%, transparent);border-radius:50%;flex:none}.photo-detail-figure{isolation:isolate;border-radius:var(--radius-xl);background:var(--ink-950);block-size:auto;min-block-size:clamp(31rem,47vw,41rem);box-shadow:var(--shadow-lg);border:1px solid #ffffff1f;grid-template-rows:minmax(0,1fr) auto;display:grid;position:relative;overflow:hidden}.photo-detail-image-button{isolation:isolate;background:radial-gradient(circle at 12% 18%, #f6c70021, transparent 16rem), radial-gradient(circle at 88% 82%, #ffffff12, transparent 18rem), linear-gradient(145deg, var(--ink-800), var(--ink-950));cursor:zoom-in;border:0;place-items:center;block-size:auto;min-block-size:0;inline-size:100%;padding:0;display:grid;position:relative;overflow:hidden}.photo-detail-image-button:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0000 62%,#080a0c57),#080a0c47;position:absolute;inset:0}.photo-detail-figure .photo-detail-image-button>.photo-detail-image{z-index:2;object-fit:contain;object-position:center;block-size:100%;max-block-size:100%;inline-size:100%;max-inline-size:100%;transition:scale var(--motion-slow) var(--ease-out);border-radius:0;position:absolute;inset:0;box-shadow:0 20px 60px #00000038}.photo-detail-image-button:hover>.photo-detail-image,.photo-detail-image-button:focus-visible>.photo-detail-image{scale:1.012}.photo-detail-zoom{z-index:3;min-block-size:2.65rem;color:var(--surface);font-size:var(--step--2);backdrop-filter:blur(12px);background:#101316b8;border:1px solid #fff3;border-radius:99rem;align-items:center;gap:.5rem;padding:.55rem .8rem;font-weight:800;display:inline-flex;position:absolute;inset-block-end:1rem;inset-inline-end:1rem;box-shadow:0 10px 30px #0003}.photo-detail-figure figcaption{z-index:2;background:var(--ink-950);color:#ffffffc7;min-block-size:4.5rem;font-size:var(--step--2);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.1rem;line-height:1.7;display:flex;position:relative}.photo-detail-figure figcaption>span{max-inline-size:72ch}.photo-detail-figure figcaption>small{color:var(--signal-400);white-space:nowrap;flex:none;font-size:.69rem;font-weight:750}.photo-sequence-nav{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--line);box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:1px;margin-block-start:clamp(1rem,2vw,1.35rem);display:grid;overflow:hidden}.photo-sequence-nav>a{min-block-size:5.1rem;color:var(--ink-900);transition:background var(--motion-fast) ease, color var(--motion-fast) ease;background:#fffffff0;align-content:center;gap:.3rem;padding:.8rem clamp(.9rem,2vw,1.25rem);text-decoration:none;display:grid}.photo-sequence-link:last-child{text-align:end}.photo-sequence-link>span{color:var(--ink-500);font-size:var(--step--2);font-weight:750}.photo-sequence-link>span b{color:var(--signal-700);font-size:1rem}.photo-sequence-link>strong{color:var(--ink-900);font-size:var(--step--1);text-overflow:ellipsis;white-space:nowrap;font-weight:800;line-height:1.5;overflow:hidden}.photo-sequence-nav>.photo-sequence-gallery{background:var(--ink-950);min-inline-size:10.5rem;color:var(--surface);font-size:var(--step--1);align-content:center;place-items:center;font-weight:800}.photo-sequence-gallery .industrial-icon{color:var(--signal-400)}.photo-sequence-link:hover,.photo-sequence-link:focus-visible{background:var(--concrete-100)}.photo-sequence-gallery:hover,.photo-sequence-gallery:focus-visible{background:var(--ink-800)}.photo-context-section{background:var(--surface)}.photo-context-grid{grid-template-columns:minmax(0,1.4fr) minmax(20rem,.62fr);align-items:start;gap:clamp(1.25rem,3.5vw,3.25rem);display:grid}.photo-story-card{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--concrete-25);max-inline-size:none;box-shadow:var(--shadow-sm);gap:0;display:grid;overflow:hidden}.photo-story-card>*+*{margin-block-start:0}.photo-story-header{border-block-end:1px solid var(--line);background:var(--surface);gap:.85rem;padding:clamp(1.5rem,3vw,2.5rem);display:grid}.photo-story-header h2{max-inline-size:20ch}.photo-story-header>p{max-inline-size:65ch;font-size:var(--type-lead);line-height:1.85}.photo-story-detail,.photo-services-heading{grid-template-columns:3rem minmax(0,1fr);align-items:start;gap:clamp(1rem,2.2vw,1.75rem);padding:clamp(1.35rem,3vw,2.25rem);display:grid}.photo-story-detail{border-block-end:1px solid var(--line)}.photo-story-detail>p{max-inline-size:68ch;color:var(--ink-700);font-size:var(--step-0);line-height:1.95}.photo-story-index{border:1px solid var(--line);background:var(--surface);block-size:2.55rem;inline-size:2.55rem;color:var(--signal-700);font-family:var(--font-mono);direction:ltr;border-radius:50%;place-items:center;font-size:.7rem;font-weight:850;display:grid}.photo-services-heading{align-items:center;padding-block-end:0}.photo-services-heading h2{font-size:clamp(1.5rem,1.28rem + .7vw,2rem)}.photo-story-card>.link-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:1.25rem clamp(1.35rem,3vw,2.25rem) clamp(1.5rem,3vw,2.25rem)}.photo-story-card .link-panel{background:var(--surface);min-block-size:8rem}.photo-archive-aside{isolation:isolate;border-radius:var(--radius-xl);background:radial-gradient(circle at 0 0, #f6c70029, transparent 15rem), var(--ink-950);color:var(--surface);box-shadow:var(--shadow-lg);border:1px solid #ffffff1f;gap:1rem;padding:clamp(1.5rem,3vw,2.25rem);display:grid;position:sticky;inset-block-start:calc(var(--header-offset) + 1.25rem);overflow:hidden}.photo-archive-aside:after{content:"";z-index:-1;aspect-ratio:1;border:2rem solid #ffffff09;border-radius:50%;inline-size:11rem;position:absolute;inset-block-end:-5rem;inset-inline-end:-4rem}.photo-aside-kicker{color:var(--signal-400);font-size:var(--step--2);font-weight:850}.photo-archive-aside h2{max-inline-size:11ch;color:var(--surface);font-size:clamp(1.75rem,1.42rem + 1vw,2.35rem)}.photo-archive-aside>p{color:#ffffffbd;line-height:1.85}.photo-brief-list{border-block:1px solid #ffffff1f;gap:.65rem;padding-block:1rem;list-style:none;display:grid}.photo-brief-list li{color:#ffffffdb;font-size:var(--step--1);align-items:center;gap:.65rem;display:flex}.photo-brief-list .industrial-icon{color:var(--signal-400);flex:none}.photo-archive-aside .button-row{gap:.55rem;display:grid}.photo-archive-aside .button{inline-size:100%}.photo-aside-link{color:var(--surface);font-size:var(--step--1);border-block-start:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:1rem;padding-block-start:.85rem;font-weight:800;text-decoration:none;display:flex}.photo-aside-link span{color:var(--signal-400);font-size:1.1rem}.photo-related-section{background:linear-gradient(#10131606 1px, transparent 1px), linear-gradient(90deg, #10131606 1px, transparent 1px), var(--concrete-50);background-size:4.5rem 4.5rem}.photo-related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.85rem,2vw,1.35rem)}.photo-related-grid>a{border-radius:var(--radius-lg);transition:translate var(--motion-standard) var(--ease-out), border-color var(--motion-standard) ease, box-shadow var(--motion-standard) ease;grid-template-rows:auto 1fr}.photo-related-grid>a:hover,.photo-related-grid>a:focus-visible{border-color:var(--line-strong);box-shadow:var(--shadow-md);translate:0 -.3rem}.photo-related-media{aspect-ratio:4/3;background:var(--ink-800);display:block;position:relative;overflow:hidden}.photo-related-media>img{object-fit:cover;object-position:center;block-size:100%;inline-size:100%;transition:scale var(--motion-slow) var(--ease-out)}.photo-related-grid>a:hover .photo-related-media>img,.photo-related-grid>a:focus-visible .photo-related-media>img{scale:1.045}.photo-related-media>span{color:var(--surface);backdrop-filter:blur(8px);background:#101316c2;border-radius:99rem;padding:.3rem .6rem;font-size:.68rem;font-weight:800;position:absolute;inset-block-start:.75rem;inset-inline-start:.75rem}.photo-related-copy{align-content:space-between;gap:1rem;min-block-size:8.25rem;padding:1rem 1.1rem;display:grid}.photo-related-grid>a>.photo-related-copy :is(strong,small){min-block-size:0;padding:0;display:block}.photo-related-copy strong{color:var(--ink-950);font-size:var(--type-card-title);font-weight:800;line-height:1.65}.photo-related-copy small{color:var(--ink-600);font-size:var(--step--2);font-weight:750}.photo-related-copy small b{color:var(--signal-700);font-size:1rem}.photo-related-action{justify-content:center;margin-block-start:clamp(1.5rem,3vw,2.25rem);display:flex}.photo-detail-viewer{border-radius:var(--radius-xl);max-block-size:92dvh;inline-size:min(94vw,82rem);max-inline-size:none;color:var(--surface);background:0 0;border:0;padding:0;overflow:visible}.photo-detail-viewer::backdrop{backdrop-filter:blur(12px);background:#080a0ce0}.photo-detail-viewer-inner{border-radius:var(--radius-xl);background:var(--ink-950);border:1px solid #ffffff29;grid-template-rows:minmax(0,1fr) auto;max-block-size:92dvh;display:grid;position:relative;overflow:hidden;box-shadow:0 36px 100px #00000080}.photo-detail-viewer-media{background:#080a0c;place-items:center;block-size:min(76dvh,50rem);min-block-size:18rem;display:grid;overflow:hidden}.photo-detail-viewer-media img{object-fit:contain;block-size:100%;inline-size:100%}.photo-detail-viewer-close{z-index:3;block-size:3rem;inline-size:3rem;color:var(--surface);backdrop-filter:blur(10px);background:#101316c7;border:1px solid #ffffff38;border-radius:50%;place-items:center;padding:0;font-size:1.65rem;line-height:1;display:grid;position:absolute;inset-block-start:.9rem;inset-inline-end:.9rem}.photo-detail-viewer-caption{border-block-start:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:1.25rem;min-block-size:5.5rem;padding:.9rem 1.25rem;display:flex}.photo-detail-viewer-caption>div{gap:.25rem;display:grid}.photo-detail-viewer-caption small{color:var(--signal-400);font-size:var(--step--2);font-weight:800}.photo-detail-viewer-caption strong{color:var(--surface);font-size:var(--step-0)}.photo-detail-viewer-caption>a{border-radius:var(--radius-sm);color:var(--surface);font-size:var(--step--2);border:1px solid #ffffff38;flex:none;padding:.6rem .8rem;font-weight:800;text-decoration:none}@media (width<=68rem){.photo-detail-grid{grid-template-columns:1fr}.photo-detail-copy{grid-row:2;align-content:start}.photo-detail-copy h1{max-inline-size:20ch}.photo-detail-figure{grid-row:1;block-size:clamp(28rem,68vw,40rem)}.photo-context-grid{grid-template-columns:1fr}.photo-archive-aside{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;position:relative;inset-block-start:auto}.photo-archive-aside>:is(.photo-aside-kicker,h2,p,.photo-brief-list,.photo-aside-link){grid-column:1}.photo-archive-aside>[data-contact-actions]{grid-area:2/2/span 4;align-self:center}}@media (width<=48rem){.photo-sequence-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-sequence-nav>.photo-sequence-gallery{grid-area:1/1/auto/-1;min-block-size:3.8rem;display:flex}.photo-sequence-nav>.photo-sequence-link{min-block-size:4.7rem}.photo-sequence-link>strong{display:none}.photo-story-card>.link-panel-grid,.photo-related-grid{grid-template-columns:1fr}.photo-related-grid>a{grid-template-rows:1fr;grid-template-columns:minmax(8.5rem,.62fr) minmax(0,1fr)}.photo-related-media{aspect-ratio:1;block-size:100%}.photo-related-copy{min-block-size:0}.photo-archive-aside{grid-template-columns:1fr}.photo-archive-aside>:is(.photo-aside-kicker,h2,p,.photo-brief-list,.photo-aside-link),.photo-archive-aside>[data-contact-actions]{grid-area:auto/1}}@media (width<=38rem){.photo-detail-hero{padding-block:.6rem 3rem}.photo-detail-copy{border-radius:var(--radius-lg);gap:.9rem;padding:1.25rem}.photo-detail-kicker-row{align-items:flex-start}.photo-detail-copy h1{font-size:clamp(1.8rem,8.2vw,2.35rem);line-height:1.4}.photo-detail-lead{font-size:.98rem;line-height:1.8}.photo-detail-tags{display:grid}.photo-detail-tags>span{border-radius:var(--radius-sm)}.photo-facts>div{grid-template-columns:1fr;gap:.2rem}.photo-facts,.photo-detail-cta .button-row{grid-template-columns:1fr}.photo-detail-cta .button-row>.button:nth-child(3){grid-column:auto}.photo-detail-figure{border-radius:var(--radius-lg);block-size:clamp(24rem,118vw,32rem)}.photo-detail-figure[data-orientation=landscape]{block-size:clamp(19rem,75vw,25rem)}.photo-detail-figure[data-orientation=square]{block-size:clamp(22rem,96vw,28rem)}.photo-detail-zoom{inset-block-end:.7rem;inset-inline-end:.7rem}.photo-detail-figure figcaption{flex-direction:column;align-items:flex-start;gap:.25rem;padding:.8rem .9rem}.photo-detail-figure figcaption>small{white-space:normal}.photo-story-header,.photo-story-detail,.photo-services-heading{padding:1.25rem}.photo-story-detail,.photo-services-heading{grid-template-columns:2.5rem minmax(0,1fr);gap:.8rem}.photo-story-index{block-size:2.25rem;inline-size:2.25rem}.photo-story-card>.link-panel-grid{padding:0 1.25rem 1.25rem}.photo-related-grid>a{grid-template-rows:auto 1fr;grid-template-columns:1fr}.photo-related-media{aspect-ratio:16/10}.photo-related-copy{min-block-size:7.25rem}.photo-detail-viewer{max-block-size:calc(100dvh - 1rem);inline-size:calc(100vw - 1rem)}.photo-detail-viewer-inner{border-radius:var(--radius-lg);max-block-size:calc(100dvh - 1rem)}.photo-detail-viewer-media{block-size:min(72dvh,40rem)}.photo-detail-viewer-caption{flex-direction:column;align-items:flex-start;gap:.75rem;padding:.85rem 1rem}.photo-detail-viewer-caption>a{text-align:center;inline-size:100%}}@media (prefers-reduced-motion:reduce){.photo-detail-image-button>img,.photo-related-media>img,.photo-related-grid>a{transition:none}}.gallery-filters{gap:.5rem;padding-block:1rem;display:flex;overflow-x:auto}.filter-btn{border:1px solid var(--line);background:var(--surface);min-block-size:2.8rem;color:var(--ink-700);font-size:var(--step--1);border-radius:99rem;flex:none;padding-inline:1rem;font-weight:750}.filter-btn.active{border-color:var(--ink-950);background:var(--ink-950);color:var(--surface)}.photo-archive-page .archive-file-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}.archive-file-card{min-block-size:100%;color:var(--ink-950);transition:translate var(--motion-standard) var(--ease-out), border-color var(--motion-standard) ease, box-shadow var(--motion-standard) ease;grid-template-rows:auto 1fr;padding:0;text-decoration:none;display:grid;overflow:hidden}.archive-file-card:hover,.archive-file-card:focus-visible{border-color:var(--line-strong);box-shadow:var(--shadow-md);text-decoration:none;translate:0 -.32rem}.archive-file-media{isolation:isolate;aspect-ratio:16/10;background:var(--ink-800);display:block;position:relative;overflow:hidden}.archive-file-media:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(145deg,#0000 48%,#1013166b);position:absolute;inset:0}.archive-file-media picture,.archive-file-media img{block-size:100%;inline-size:100%}.archive-file-media img{object-fit:cover;transition:scale var(--motion-slow) var(--ease-out)}.archive-file-card:hover .archive-file-media img,.archive-file-card:focus-visible .archive-file-media img{scale:1.045}.archive-file-number{z-index:2;background:var(--signal-500);block-size:2.55rem;inline-size:2.55rem;color:var(--ink-950);font-family:var(--font-mono);border-radius:50%;place-items:center;font-size:.72rem;font-weight:850;display:grid;position:absolute;inset-block-start:.85rem;inset-inline-end:.85rem;box-shadow:0 8px 22px #1013162e}.archive-file-copy{grid-template-rows:auto auto 1fr auto;align-content:start;gap:.65rem;min-inline-size:0;padding:clamp(1.2rem,2.4vw,1.65rem);display:grid}.archive-file-code{color:var(--signal-700);font-family:var(--font-mono);letter-spacing:.035em;justify-self:start;font-size:.69rem;font-weight:850;line-height:1.3}.archive-file-copy>strong{color:var(--ink-950);font-size:var(--type-card-title);text-wrap:balance;font-weight:800;line-height:1.62}.archive-file-summary{color:var(--ink-600);font-size:var(--step--1);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.75;display:-webkit-box;overflow:hidden}.archive-file-action{border-block-start:1px solid var(--line);color:var(--ink-900);font-size:var(--step--2);justify-content:space-between;align-items:center;gap:1rem;margin-block-start:.35rem;padding-block-start:.85rem;font-weight:800;display:flex}.archive-file-action b{color:var(--signal-700);transition:translate var(--motion-standard) var(--ease-out);font-size:1rem}.archive-file-card:hover .archive-file-action b,.archive-file-card:focus-visible .archive-file-action b{translate:-.25rem}@media (width<=64rem){.photo-archive-page .archive-file-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=42rem){.photo-archive-page .archive-file-grid{grid-template-columns:1fr}.archive-file-media{aspect-ratio:16/9}.archive-file-summary{-webkit-line-clamp:4}}.gallery-masonry,.archive-photo-preview,.gallery-grid{columns:3 18rem;column-gap:1rem}.gallery-card,.gallery-item,.archive-photo-preview>*{break-inside:avoid;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);margin-block-end:1rem;overflow:hidden}.gallery-media-wrap,.gallery-item .image-wrapper{aspect-ratio:4/3;background:var(--ink-800);position:relative;overflow:hidden}.gallery-card-badge-overlay{z-index:2;border-radius:var(--radius-xs);-webkit-backdrop-filter:blur(8px);color:var(--surface);pointer-events:none;background:#101316e0;border:1px solid #ffffff38;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.3rem .6rem;font-size:.72rem;font-weight:750;line-height:1.35;display:flex;position:absolute;inset-block-start:.65rem;inset-inline:.65rem;box-shadow:0 4px 14px #1013164d}.gallery-card-badge-overlay .badge-accent{color:var(--signal-400);font-weight:850}.gallery-card-badge-overlay .badge-separator{color:#ffffff73;font-weight:900}.gallery-media-wrap picture,.gallery-media-wrap img,.gallery-item picture,.gallery-item img{block-size:100%;inline-size:100%}.gallery-media-wrap img,.gallery-item img{object-fit:cover;object-position:center}.gallery-card-body,.gallery-item .image-overlay{gap:.55rem;padding:1rem;display:grid}.gallery-open{background:0 0;border:0;block-size:100%;inline-size:100%;padding:0;display:block;position:relative}.gallery-hover-overlay{color:var(--surface);opacity:0;transition:opacity var(--motion-standard) ease;background:#1013168c;place-items:center;display:grid;position:absolute;inset:0}.gallery-open:hover .gallery-hover-overlay,.gallery-open:focus-visible .gallery-hover-overlay{opacity:1}.lightbox-dialog,.lightbox{border-radius:var(--radius-lg);background:var(--ink-950);max-block-size:90vh;inline-size:min(92vw,68rem);color:var(--surface);box-shadow:var(--shadow-lg);border:0;padding:0;overflow:hidden}.lightbox-dialog::backdrop,.lightbox::backdrop{backdrop-filter:blur(8px);background:#080a0cd1}.lightbox-content{grid-template-columns:minmax(0,2fr) minmax(17rem,.85fr);min-block-size:min(44rem,84vh);display:grid;position:relative}.lightbox-close,.lightbox-nav{block-size:2.8rem;inline-size:2.8rem;color:var(--surface);background:#101316b8;border:1px solid #fff3;border-radius:50%;place-items:center;display:grid}.lightbox-close{z-index:3;position:absolute;inset-block-start:.8rem;inset-inline-end:.8rem}.lightbox-media,.lightbox-image-container{background:#0b0e11;place-items:center;min-block-size:18rem;display:grid;overflow:hidden}.lightbox-media img,.lightbox-image-container img{object-fit:contain;block-size:100%;max-block-size:84vh;inline-size:100%}.lightbox-info,.lightbox-footer{background:var(--ink-950);border-inline-start:1px solid #ffffff1f;align-content:center;gap:1rem;padding:clamp(1.5rem,3vw,2.5rem);display:grid}.lightbox-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;display:flex}.lightbox-badge{color:var(--signal-400);font-size:var(--step--2);font-weight:800}.lightbox-counter{color:#ffffffd1;font-size:var(--step--2)}.lightbox-info h3{color:var(--surface);font-size:var(--step-1)}.lightbox-info p{color:#ffffffb8;line-height:1.8}.lightbox-nav-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-block-start:.5rem;display:grid}.lightbox-nav-buttons .button-secondary{color:var(--surface);background:#ffffff12;border-color:#ffffff3d}.gallery-info-box{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.info-item{background:var(--surface);text-align:center;justify-items:center;gap:.75rem;padding:1.5rem;display:grid}@media (width<=40rem){.lightbox-dialog,.lightbox{max-block-size:90dvh;overflow-y:auto}.lightbox-content{grid-template-columns:1fr;min-block-size:0}.lightbox-media,.lightbox-image-container{min-block-size:15rem;max-block-size:52dvh}.lightbox-media img,.lightbox-image-container img{max-block-size:52dvh}.lightbox-info,.lightbox-footer{border-block-start:1px solid #ffffff1f;border-inline-start:0}.gallery-masonry,.archive-photo-preview,.gallery-grid{columns:1}.gallery-info-box{grid-template-columns:1fr}}.related-content-section{isolation:isolate;background:radial-gradient(circle at 12% 20%, color-mix(in srgb, var(--signal-500) 10%, transparent) 0, transparent 18rem), linear-gradient(180deg, var(--concrete-100), var(--concrete-50));position:relative;overflow:clip}.related-content-section:before{content:"";z-index:-1;inset-block:clamp(2.5rem,6vw,5rem) auto;inset-inline:auto max(var(--gutter), calc((100% - var(--container-standard)) / 2));background:linear-gradient(90deg, var(--signal-500) 0 38%, var(--line) 38% 100%);opacity:.8;border-radius:99rem;block-size:.25rem;inline-size:clamp(5rem,10vw,9rem);position:absolute}.related-content-header{align-items:end}.related-content-header>div{gap:.65rem}.related-content-intro{max-inline-size:62ch;color:var(--ink-600);font-size:var(--step--1);line-height:1.8}.related-index-link{border:1px solid var(--line-strong);background:color-mix(in srgb, var(--surface) 86%, transparent);min-block-size:3rem;box-shadow:var(--shadow-sm);transition:background var(--motion-fast) ease, border-color var(--motion-fast) ease, translate var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) ease;border-radius:99rem;justify-content:center;justify-self:start;padding:.7rem 1rem}.related-index-link:hover,.related-index-link:focus-visible{border-color:var(--ink-900);background:var(--surface);box-shadow:var(--shadow-md);translate:0 -.15rem}.related-articles-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));align-items:stretch;gap:clamp(1rem,2.2vw,1.5rem);display:grid}.related-articles-grid .article-feature-card{border-color:var(--line-strong);border-radius:var(--radius-lg) var(--radius-xs) var(--radius-lg) var(--radius-lg);block-size:100%;box-shadow:0 16px 40px #10131614}.related-articles-grid .article-feature-card .image-wrapper{position:relative}.related-articles-grid .article-feature-card .image-wrapper:after{content:"";background:var(--signal-500);block-size:.28rem;position:absolute;inset:auto 0 0}.related-articles-grid .article-feature-card .content{grid-template-rows:auto auto 1fr auto}.related-articles-grid .article-feature-card .category{border:1px solid color-mix(in srgb, var(--signal-600) 28%, transparent);background:color-mix(in srgb, var(--signal-500) 13%, var(--surface));inline-size:fit-content;color:var(--signal-700);border-radius:99rem;padding:.32rem .65rem;line-height:1.45}.related-articles-grid .article-feature-card .title{text-wrap:balance}.related-articles-grid .article-feature-card .excerpt{color:var(--ink-600);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.8;display:-webkit-box;overflow:hidden}.related-articles-grid .article-feature-card .read-more{border-block-start:1px solid var(--line);justify-content:space-between;inline-size:100%;margin-block-start:.2rem;padding-block-start:.85rem}.related-articles-grid .article-feature-card .read-more>:last-child{background:var(--ink-950);block-size:2rem;inline-size:2rem;color:var(--signal-400);transition:translate var(--motion-standard) var(--ease-out);border-radius:50%;place-items:center;display:grid}.related-articles-grid .article-feature-card:hover .read-more>:last-child,.related-articles-grid .article-feature-card:focus-within .read-more>:last-child{translate:-.2rem}@media (width<=48rem){.related-content-header{align-items:start}.related-index-link{justify-content:space-between;inline-size:100%}.related-articles-grid{grid-template-columns:1fr}}.pillar-hero-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--ink-950);color:var(--surface);box-shadow:var(--shadow-md);grid-template-columns:minmax(0,1.15fr) minmax(15rem,.85fr);gap:2rem;padding:clamp(1.5rem,4vw,3.5rem);display:grid}.pillar-card-content{align-content:center;gap:1rem;display:grid}.pillar-card-content :where(h2,h3){color:var(--surface)}.pillar-card-content p{color:#ffffffc7}.pillar-tag-row,.pillar-cta-row,.blog-card-top,.blog-card-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.pillar-topics-list{color:#ffffffb8;gap:.55rem;list-style:none;display:grid}.blog-entry-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);padding:1.3rem;display:grid}.blog-card-body{gap:.9rem;display:grid}.blog-entry-card h2,.blog-entry-card h3{font-size:var(--step-1)}.blog-read-link{color:var(--ink-900);font-size:var(--step--1);font-weight:800;text-decoration:none}@media (width<=48rem){.pillar-hero-card{grid-template-columns:1fr}}.contact-method{align-content:start;gap:.85rem;display:grid}.contact-method .button{margin-block-start:auto}.quote-layout{grid-template-columns:minmax(0,1fr) minmax(16rem,21rem);align-items:start;gap:clamp(1.5rem,4vw,3.5rem);display:grid}.quote-side{gap:1rem;display:grid;position:sticky;inset-block-start:calc(var(--header-offset) + 1rem)}.quote-trust-list{flex-wrap:wrap;gap:.55rem;list-style:none;display:flex}.quote-trust-list li{border:1px solid var(--line);color:var(--ink-700);font-size:var(--step--2);background:#ffffff9e;border-radius:99rem;padding:.45rem .75rem;font-weight:700}.quote-wizard{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md);scroll-margin-block-start:1rem;overflow:hidden}.quote-reassurance-badge{border-block-end:1px solid var(--line);background:color-mix(in srgb, var(--success) 9%, var(--surface));color:var(--ink-950);font-size:var(--step--1);align-items:center;gap:.75rem;padding:.85rem 1.25rem;display:flex}.quote-reassurance-badge .reassurance-icon{background:var(--success);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;block-size:1.6rem;inline-size:1.6rem;font-size:.82rem;font-weight:900;display:grid}.wizard-progress{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;padding:0;list-style:none;display:grid}.wizard-progress li{background:var(--concrete-50);min-block-size:4.5rem;color:var(--ink-500);font-size:var(--step--2);text-align:center;place-content:center;justify-items:center;gap:.35rem;padding:.75rem;display:grid}.wizard-progress li b{border:1px solid var(--line-strong);background:var(--surface);block-size:1.85rem;inline-size:1.85rem;color:var(--ink-500);font-family:var(--font-mono);border-radius:50%;place-items:center;font-size:.68rem;font-weight:900;display:grid}.wizard-progress li.is-current{background:var(--signal-500);color:var(--ink-950);font-weight:850}.wizard-progress li.is-current b{background:var(--ink-950);color:var(--surface)}.wizard-progress li.is-complete{background:var(--ink-900);color:var(--surface)}.wizard-progress li.is-complete b{background:var(--signal-500);color:var(--ink-950)}.wizard-step{padding:clamp(1.25rem,4vw,3rem)}.wizard-step>header{gap:.6rem;margin-block-end:1.5rem;display:grid}.wizard-step>header h2{font-size:var(--step-2)}.wizard-step>header h2:focus{outline:none}.quick-service-tiles{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--concrete-50);gap:.65rem;margin-block-end:1.5rem;padding:1rem;display:grid}.quick-service-title{color:var(--ink-800);font-size:var(--step--1);font-weight:750}.quick-tiles-grid{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.6rem;display:grid}.quick-tile{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-900);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:.85rem .6rem;transition:border-color .2s cubic-bezier(.2,.7,.2,1),background-color .2s cubic-bezier(.2,.7,.2,1),translate .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s cubic-bezier(.2,.7,.2,1);display:flex}.quick-tile:hover{border-color:var(--signal-500);box-shadow:var(--shadow-sm);translate:0 -2px}.quick-tile.is-selected{border-color:var(--ink-950);background:var(--ink-950);color:var(--surface);box-shadow:var(--shadow-md)}.quick-tile.is-selected .quick-tile-icon{color:var(--signal-400)}.quick-tile.is-selected small{color:#ffffffbf}.quick-tile-icon{color:var(--signal-700);place-items:center;display:grid}.quick-tile-name{font-size:.84rem;font-weight:800;line-height:1.25}.quick-tile small{color:var(--ink-500);font-size:.7rem;line-height:1.2}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.field{align-content:start;gap:.4rem;min-inline-size:0;display:grid}.field-full{grid-column:1/-1}.field label{color:var(--ink-800);font-size:var(--step--1);font-weight:750}.field :where(input,select,textarea),.input-with-unit{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--concrete-25);min-block-size:3.15rem;inline-size:100%;transition:border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease, background var(--motion-fast) ease}.field :where(input,select,textarea){padding:.7rem .8rem;font-size:max(1rem,16px)}.field textarea{resize:vertical;min-block-size:8.5rem}.field :where(input,select,textarea):focus{border-color:var(--focus);background:var(--surface);box-shadow:0 0 0 .22rem color-mix(in srgb, var(--focus) 14%, transparent);outline:none}.input-with-unit{grid-template-columns:minmax(0,1fr) 5.5rem;display:grid;overflow:hidden}.input-with-unit :where(input,select){border:0;border-radius:0;min-inline-size:0}.input-with-unit select{border-inline-start:1px solid var(--line);background:var(--concrete-100)}.form-hint{color:var(--ink-500);font-size:var(--step--2)}.consent-row{border-radius:var(--radius-sm);background:var(--concrete-100);color:var(--ink-700);font-size:var(--step--1);grid-template-columns:1.4rem minmax(0,1fr);align-items:start;gap:.75rem;margin:0 clamp(1.25rem,4vw,3rem) clamp(1.25rem,3vw,2rem);padding:1rem;display:grid}.consent-row input{block-size:1.25rem;inline-size:1.25rem;accent-color:var(--ink-950);margin-block-start:.2rem}.wizard-actions{border-block-start:1px solid var(--line);background:var(--concrete-50);justify-content:space-between;gap:.75rem;padding:1.2rem clamp(1.25rem,4vw,3rem);display:flex}.form-result{border:1px solid color-mix(in srgb, var(--success) 35%, transparent);border-radius:var(--radius-md);background:color-mix(in srgb, var(--success) 7%, var(--surface));margin:0 clamp(1.25rem,4vw,3rem) clamp(1.25rem,4vw,3rem);padding:1.25rem}.form-result>*+*{margin-block-start:.85rem}.form-result pre{border-radius:var(--radius-sm);background:var(--ink-950);max-block-size:20rem;color:var(--surface);white-space:pre-wrap;padding:1rem;font-size:.75rem;line-height:1.7;overflow:auto}.form-status{min-block-size:1.6rem;color:var(--danger);font-size:var(--step--1);padding-inline:clamp(1.25rem,4vw,3rem);font-weight:700}.selected-files li{border-radius:var(--radius-xs);background:var(--concrete-100);color:var(--ink-700);font-size:var(--step--2);padding:.45rem .7rem}@media (width<=56rem){.quote-layout{grid-template-columns:1fr}.quote-side{position:static}}@media (width<=38rem){.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}.wizard-progress li{min-block-size:4.35rem;padding-inline:.45rem;font-size:.68rem}.wizard-progress li b{block-size:1.65rem;inline-size:1.65rem;font-size:.62rem}.wizard-actions{grid-template-columns:1fr 1fr;display:grid}.wizard-actions .button:only-child,.wizard-actions #create-summary{grid-column:1/-1}}.empty-state{border:1px dashed var(--concrete-400);border-radius:var(--radius-lg);background:var(--surface);text-align:center;justify-items:center;gap:.8rem;padding:clamp(2rem,6vw,5rem);display:grid}}@layer home;@media (width>=60.01rem){.route-request-a-quote .page-hero>.container{min-block-size:29rem;padding-block:3.25rem}.route-request-a-quote .page-hero h1{font-size:clamp(2.55rem,4vw,4rem)}.route-request-a-quote .page-hero-media{min-block-size:19rem;max-block-size:25rem}}.route-request-a-quote .section-compact{padding-block-start:clamp(1.5rem,3vw,2.5rem)}@media (width<=60rem){.route-request-a-quote .page-hero-media{display:none}.route-request-a-quote .page-hero>.container{padding-block:clamp(2.5rem,6vw,3.75rem)}}@media (width<=42rem){.route-request-a-quote .page-hero>.container{padding-block:1.8rem}.route-request-a-quote .page-hero h1{font-size:2rem}.route-request-a-quote .page-hero-inner>p{font-size:.94rem}}
