/* Foundations */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px;scrollbar-color:var(--subtle) var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font:500 var(--text-body)/1.75 var(--font);letter-spacing:.005em;-webkit-font-smoothing:antialiased}
::selection{background:var(--accent);color:var(--on-accent)}
a{color:inherit;text-decoration:none;text-underline-offset:5px}
button,input,select,textarea{font:inherit;color:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}
button:focus-visible,a:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,p,figure{margin:0}
h1,h2,h3{font-weight:500;line-height:1.15}
h1,h2{text-wrap:balance;letter-spacing:-.04em}
p{text-wrap:pretty}
h2{font-size:clamp(34px,3.8vw,60px)}
h2>span,h1>span{color:var(--muted)}
h3{font-size:24px;letter-spacing:-.025em}
main{overflow:clip}
[hidden]{display:none!important}
.wrap{max-width:1680px;margin-inline:auto;padding:var(--section) var(--gutter)}
.skip{position:fixed;z-index:10;left:20px;top:-100px;background:var(--accent);color:var(--on-accent);padding:12px 20px}
.skip:focus{top:12px}
.small-note{font-size:var(--text-small);color:var(--muted);line-height:1.7}
.lead{font-size:clamp(19px,1.8vw,25px);line-height:1.6;color:var(--text)}
.text-link,.text-button{display:inline-flex;align-items:center;gap:22px;min-height:44px;font-size:var(--text-ui);font-weight:500}
.text-link:hover,.text-button:hover{text-decoration:underline}
.text-button{border:0;padding:0;background:none;text-decoration:underline}
.arrow{display:inline-block;position:relative;width:20px;height:14px;flex:0 0 20px;transition:translate .3s var(--ease)}
.arrow::before{content:'';position:absolute;left:0;top:6px;width:19px;height:1.5px;background:currentColor}
.arrow::after{content:'';position:absolute;right:0;top:1.5px;width:10px;height:10px;border-right:1.5px solid;border-top:1.5px solid;transform:rotate(45deg)}
.diagonal{transform:rotate(-45deg)}.left{transform:rotate(180deg)}.down{transform:rotate(90deg)}.up{transform:rotate(-90deg)}
a:hover>.arrow,button:hover>.arrow{translate:3px -2px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:56px;padding:15px 22px;border:1px solid transparent;border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-size:var(--text-ui);font-weight:600;line-height:1.4;transition:background .2s,transform .3s var(--ease)}
.button:hover{background:var(--accent-hover);transform:translateY(-2px)}
.button:active{transform:scale(.98);transition:transform 90ms ease-out}
.button-secondary{background:transparent;border-color:var(--line);color:var(--text)}
.button-secondary:hover{background:var(--surface-raised)}

/* Navigation is visible on every screen. No menus or overlays. */
.site-header{padding-inline:var(--gutter);max-width:1680px;margin-inline:auto}
.header-main{display:flex;align-items:center;justify-content:space-between;gap:35px;min-height:100px;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:16px;flex-shrink:0;min-height:44px}
.brand-mark{position:relative;font-weight:700;font-size:35px;line-height:1;letter-spacing:-6px;padding-right:7px}
.brand-mark>span{position:relative;top:9px;left:-2px}
.brand-mark>i{width:5px;height:5px;position:absolute;left:0;bottom:-6px;background:var(--accent)}
.brand-name{font-size:var(--text-ui);letter-spacing:.05em;line-height:1.25;font-weight:600}
.brand-name>span{display:block;font-size:var(--text-small);letter-spacing:.14em;margin-top:5px}
.site-header nav{display:flex;align-items:center;gap:clamp(22px,2.7vw,45px)}
.site-header nav>a{font-weight:600;min-width:44px;justify-content:center;padding-inline:6px;font-size:var(--text-ui);color:var(--muted);min-height:44px;display:inline-flex;align-items:center;position:relative}
.site-header nav>a[aria-current],.site-header nav>a:hover{color:var(--text)}
.site-header nav>a[aria-current]::after{content:'';height:4px;width:4px;border-radius:50%;background:var(--accent);position:absolute;left:50%;bottom:0}
.header-contact{display:inline-flex;align-items:center;gap:30px;font-size:var(--text-ui);min-height:46px;color:var(--accent)}

/* Landing: services lead; the finish study and its controls stay together. */
.landing-hero{padding-top:0;padding-bottom:30px}
.hero-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;color:var(--muted);font-size:var(--text-small);letter-spacing:.025em}
.hero-meta>span:last-child{display:flex;align-items:center;gap:12px}.hero-meta i{width:3px;height:3px;background:var(--muted);border-radius:50%}
.hero-main{display:grid;grid-template-columns:1fr 1.15fr;gap:5vw;align-items:center;padding:18px 0 22px}
.hero-copy{position:relative;padding:15px 0}
.hero-copy h1{font-size:clamp(54px,5.7vw,92px);line-height:1.01;letter-spacing:-.035em}
.hero-copy .hero-service{font-size:clamp(18px,1.5vw,22px);line-height:1.5;margin-top:25px;color:var(--text)}
.hero-copy .hero-description{font-size:16px;line-height:1.7;color:var(--muted);max-width:39ch;margin-top:15px}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}
.hero-actions .text-link{font-size:var(--text-ui);gap:14px}
.hero-evidence{display:flex;align-items:center;gap:17px;padding:23px 0 0;border-top:1px solid var(--line);margin-top:34px;max-width:390px;min-height:80px}
.hero-evidence img{width:70px;height:65px;object-fit:cover;border-radius:var(--radius)}
.hero-evidence>span{font-size:var(--text-small);color:var(--muted);line-height:1.5}
.hero-evidence strong{display:block;font-size:var(--text-ui);font-weight:500;color:var(--text);margin-top:5px}
.hero-evidence>.arrow{margin-left:auto}
.hero-evidence:hover strong{text-decoration:underline}
.engine-viewer{min-width:0}
.engine-stage{position:relative;isolation:isolate;height:clamp(300px,calc(100svh - 440px),440px);min-width:0;cursor:grab;touch-action:pan-y;outline-offset:3px}
.engine-stage:active{cursor:grabbing}
.engine-stage canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.engine-poster{position:absolute;inset:9% 0;width:100%;height:82%;object-fit:contain;filter:saturate(.15);transition:opacity .2s}
.engine-stage.is-ready .engine-poster{opacity:0;visibility:hidden}
.engine-background-word{position:absolute;inset:8% 0 auto;text-align:center;font-size:clamp(140px,19vw,290px);font-weight:700;line-height:1;letter-spacing:-.04em;color:#1b2019;z-index:-1;user-select:none}
.engine-meta{position:absolute;top:8px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:var(--text-small);color:var(--muted)}


.engine-toolbar button{display:inline-flex;align-items:center;justify-content:center;background:none;border:0;color:var(--muted);min-width:44px;min-height:44px;padding:8px;font-size:var(--text-small);border-radius:var(--radius);transition:background .15s,color .15s,transform .1s}

.engine-toolbar button:hover{background:var(--surface-raised);color:var(--text)}
.engine-toolbar button:active{transform:scale(.93);background:var(--surface-raised)}
.engine-toolbar button[aria-pressed=true]{color:var(--accent)}


.coating-console{display:block;padding:17px 0 0}
.coating-progress>div{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:var(--text-ui);color:var(--muted)}
.coating-progress label{font-size:var(--text-ui)}
input[type=range]{appearance:none;-webkit-appearance:none;background:transparent;border:0;box-shadow:none;padding:0;width:100%;height:44px;min-height:44px;cursor:ew-resize;accent-color:var(--accent)}
input[type=range]::-webkit-slider-runnable-track{height:2px;background:var(--line)}
input[type=range]::-moz-range-track{height:2px;background:var(--line)}
input[type=range]::-webkit-slider-thumb{appearance:none;width:16px;height:16px;background:var(--accent);border:3px solid var(--bg);outline:1px solid var(--accent);border-radius:50%;margin-top:-7px}
input[type=range]::-moz-range-thumb{width:10px;height:10px;background:var(--accent);border:3px solid var(--bg);outline:1px solid var(--accent);border-radius:50%}
.finish-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.finish-options{display:flex;gap:5px;align-items:center;margin:0;padding:0;border:0;min-width:0}
.finish-option{position:relative;display:inline-flex;align-items:center;gap:7px;min-width:44px;min-height:44px;padding:7px 9px;border-radius:var(--radius);color:var(--muted);font-size:var(--text-ui);cursor:pointer;transition:background .15s,color .15s,transform .1s}
.finish-option>input[type=radio]{position:absolute;inset:0;width:100%;height:100%;min-height:44px;opacity:0;margin:0;padding:0;cursor:pointer;border:0}
.finish-option i{width:13px;height:13px;background:var(--finish);border-radius:50%;box-shadow:inset 0 1px 2px #ffffff50}
.finish-option:has(input:checked){color:var(--text);background:var(--surface-raised)}
.finish-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}
.finish-option:active{transform:scale(.96);background:var(--surface-raised)}
.finish-option:hover{color:var(--text)}
#finish-inquire{font-size:var(--text-small);gap:12px}
.engine-qualification{font-size:var(--text-small);line-height:1.6;color:var(--muted);margin-top:14px}
.capability-band{display:grid;grid-template-columns:1.1fr 1fr .9fr 1fr;gap:40px;align-items:center;background:var(--surface);padding-block:36px;border-block:1px solid var(--line)}
.capability-band>span{color:var(--muted);font-size:var(--text-ui)}
.capability-band strong{display:block;font-weight:500;font-size:24px;letter-spacing:-.025em;line-height:1.2}
.capability-band div>span{display:block;color:var(--muted);font-size:var(--text-small);margin-top:8px}
.capability-band>a{min-height:44px;display:inline-flex;align-items:center;justify-content:space-between;gap:20px;font-size:var(--text-small)}
.capability-band>a:hover{color:var(--accent)}

/* Comparison: genuine archive evidence, keyboard-accessible wipe. */
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:48px}
.section-heading>p,.section-heading>div{max-width:350px;color:var(--muted);font-size:var(--text-ui)}
.section-heading>div>.text-link{color:var(--text);margin-top:14px}






.comparison-layer{position:absolute;inset:0;background:#22271f;overflow:hidden}
.comparison-after{background:#1b221d;clip-path:inset(0 0 0 var(--split));z-index:1}


.comparison-divider{position:absolute;left:var(--split);top:0;bottom:0;width:1px;background:var(--text);z-index:2;pointer-events:none}
.comparison-divider>span{position:absolute;left:0;top:50%;width:48px;height:48px;background:var(--text);color:var(--bg);border-radius:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:8px}
.comparison-divider i{width:7px;height:7px;border-left:1.5px solid;border-bottom:1.5px solid;transform:rotate(45deg)}
.comparison-divider i:last-child{transform:rotate(225deg)}
.comparison .comparison-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;z-index:3;cursor:ew-resize}
.comparison:focus-within{outline:2px solid var(--accent);outline-offset:4px}



/* Services and actual project work */
.services-section{padding-top:0}
.service-list{border-top:1px solid var(--line)}
.service-row{display:grid;grid-template-columns:1fr 1.2fr 20px;gap:30px;padding:35px 0;border-bottom:1px solid var(--line);align-items:center}
.service-title{font-size:clamp(23px,2.6vw,38px);letter-spacing:-.035em;line-height:1.2;transition:translate .3s var(--ease)}
.service-row>p{font-size:var(--text-ui);color:var(--muted);line-height:1.7}

.service-row:hover .service-title{translate:6px 0;color:var(--accent)}
.featured-work{padding-top:0}
.featured-grid{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:0 40px;align-items:stretch}

.project-photo{position:relative;aspect-ratio:1.35;overflow:hidden;background:#22271e;border-radius:var(--radius)}
.project-photo>img{width:100%;height:100%;object-fit:contain;padding:22px;transition:transform .8s var(--ease)}
.project-card:hover .project-photo>img{transform:scale(1.025)}
.featured-grid .project-photo{aspect-ratio:4/3}.featured-grid .project-photo>img{padding:0;object-fit:cover}
.project-photo>span{position:absolute;bottom:15px;left:15px;background:#13180ee8;padding:6px 11px;font-size:var(--text-small);border-radius:2px;color:var(--text)}
.project-card-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:23px}
.project-card h3{font-size:clamp(22px,2.3vw,32px);line-height:1.25;letter-spacing:-.03em}
.project-dot{width:6px;height:6px;flex-shrink:0;background:var(--accent);border-radius:50%}
.project-card>p{font-size:var(--text-ui);line-height:1.8;color:var(--muted);max-width:50ch;margin-top:12px}
.project-inquire{font-size:var(--text-small);display:inline-flex;align-items:center;gap:18px;min-height:44px;margin-top:10px}
.project-inquire:hover{text-decoration:underline}
.project-inquire .arrow{scale:.8}
.application-helper{display:grid;grid-template-columns:1fr 1.25fr;gap:10vw;border-block:1px solid var(--line);background:var(--surface)}
.application-helper>div>p{color:var(--muted);font-size:var(--text-ui);max-width:37ch;margin-top:25px}
.choice-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.choice-buttons>button{background:transparent;border:1px solid var(--line);padding:15px 17px;min-height:54px;text-align:left;border-radius:var(--radius);font-size:var(--text-small);transition:background .2s,border-color .2s}
.choice-buttons>button:hover{background:var(--surface-raised)}
.choice-buttons>button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}
.condition-result{padding-top:30px;min-height:220px}
.condition-result h3{font-size:24px}
.condition-result p{margin-top:15px;color:var(--muted);font-size:var(--text-ui)}
.condition-result>.text-link{margin-top:15px}
.application-helper>div>p.small-note{max-width:none;font-size:var(--text-small);margin-top:5px}
.home-heritage{display:grid;grid-template-columns:1fr 1.3fr;gap:10vw;align-items:center}
.heritage-number{font-size:clamp(90px,11.5vw,185px);font-weight:500;letter-spacing:-.04em;line-height:1;color:var(--accent)}
.heritage-number>span{display:block;font-size:var(--text-small);letter-spacing:0;color:var(--muted);margin-top:22px}
.home-heritage>div>p{max-width:44ch;color:var(--muted);font-size:var(--text-ui);margin:24px 0 15px}
.project-cta{border-block:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:50px}
.project-cta h2{font-size:clamp(35px,4.5vw,70px)}
.project-cta p{max-width:46ch;font-size:var(--text-ui);color:var(--muted);margin-top:25px}
.project-cta .button{flex-shrink:0}

/* Interior page composition */
.page-hero{padding-top:58px;padding-bottom:42px;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(44px,5.1vw,76px);line-height:1.04}
.page-hero>p{font-size:16px;line-height:1.85;max-width:61ch;margin:25px 0 0 auto;color:var(--muted)}
.page-meta{font-size:var(--text-small);color:var(--muted);margin-bottom:20px}
.section-nav{padding-block:20px;display:flex;gap:35px;border-bottom:1px solid var(--line);justify-content:space-between}
.section-nav>a{display:inline-flex;gap:25px;align-items:center;font-size:var(--text-small);min-height:44px}
.section-nav>a:hover{color:var(--accent)}
.capability-detail-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:50px}
.capability-detail-heading>span{font-size:var(--text-ui);color:var(--accent)}
.capability-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,80px);align-items:start}
.capability-detail-grid>div>p:not(.lead){margin-top:20px;color:var(--muted);font-size:var(--text-ui);max-width:52ch}
.capability-detail-grid h3{font-size:18px;margin-top:32px}
.capability-detail-grid .button{margin-top:30px}
.material-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px;list-style:none;padding:0;margin:20px 0 0}
.material-list>li{font-size:var(--text-small);position:relative;padding-left:13px}
.material-list>li::before{content:'';width:3px;height:3px;background:var(--accent);position:absolute;left:0;top:9px;border-radius:50%}
.archive-feature{position:relative;background:var(--surface);border-radius:var(--radius);overflow:hidden}
.archive-feature img{width:100%;aspect-ratio:4/3;object-fit:cover}
.archive-feature.contain img{object-fit:contain;padding:24px;aspect-ratio:4/3}
.archive-feature figcaption{font-size:var(--text-small);color:var(--muted);padding:17px 22px;border-top:1px solid var(--line)}
.alternate{background:var(--surface)}
.alternate .archive-feature{background:var(--bg)}
.process-section{border-top:1px solid var(--line)}
.preparation-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;margin:0}
.preparation-list>li{border-top:1px solid var(--line);padding-top:25px}
.preparation-list>li>span{font-size:var(--text-small);color:var(--accent)}
.preparation-list h3{font-size:22px;margin:25px 0 15px}
.preparation-list p{color:var(--muted);font-size:var(--text-ui)}
.process-section>.text-link{margin-top:35px}
.projects-section{padding-top:35px}
.filter-bar,.price-toolbar{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:45px}
.filter-buttons{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.filter-buttons>button{border:0;border-bottom:1px solid transparent;background:none;min-height:44px;font-size:var(--text-small);color:var(--muted);padding:8px 0}
.filter-buttons>button:hover{color:var(--text)}
.filter-buttons>button[aria-pressed=true]{color:var(--text);border-bottom-color:var(--accent)}
#project-count,#price-count{font-size:var(--text-small);color:var(--muted);white-space:nowrap}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px 30px}
.project-grid h3{font-size:23px}
.archive-note{border-top:1px solid var(--line);padding-top:25px;color:var(--muted);font-size:var(--text-small);margin-top:60px}

/* Pricing: readable, searchable, explicitly bounded estimates. */
.estimate-section{display:grid;grid-template-columns:.8fr 1.6fr;gap:7vw;background:var(--surface);border-bottom:1px solid var(--line)}
.estimate-intro h2{font-size:40px}
.estimate-intro>p{color:var(--muted);font-size:var(--text-ui);max-width:34ch;margin:25px 0 20px}
.estimate-intro .text-link{font-size:var(--text-small)}
.estimate-form{display:grid;grid-template-columns:1fr .85fr;gap:40px}
.estimate-fields{display:grid;gap:22px}
label{display:grid;gap:10px;font-size:var(--text-small);line-height:1.5;font-weight:500}
input:not([type=range]):not([type=checkbox]),select,textarea{width:100%;min-width:0;border:1px solid var(--line);background:var(--bg);border-radius:var(--radius);padding:13px 15px;color:var(--text);font-size:var(--text-ui);min-height:49px;caret-color:var(--accent)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:.9}
input:not([type=range]):focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}
input:user-invalid,textarea:user-invalid{border-color:var(--error)}
select{cursor:pointer;padding-right:25px}option{background:var(--surface);color:var(--text)}
textarea{resize:vertical;min-height:140px}
.checkbox-label{display:block;font-size:var(--text-small);line-height:1.6}
.checkbox-label input{width:16px;height:16px;accent-color:var(--accent);vertical-align:middle;margin:0 7px 3px 0}
.checkbox-label span{display:block;font-weight:400;color:var(--muted);font-size:var(--text-small);margin-left:27px}
.estimate-result{border-left:1px solid var(--line);padding-left:35px;display:flex;flex-direction:column;justify-content:center;align-items:start}
.estimate-result>span{font-size:var(--text-small);color:var(--muted)}
.estimate-result>output{display:block;font-size:clamp(33px,3.3vw,54px);line-height:1.2;letter-spacing:-.04em;color:var(--accent);margin-top:17px;overflow-wrap:anywhere}
.estimate-result>p{font-size:var(--text-small);margin-top:18px}
.estimate-result>p.estimate-disclaimer{font-size:var(--text-small);color:var(--muted);margin-top:18px}
.estimate-result>.button{font-size:var(--text-small);gap:20px;min-height:50px;margin-top:25px}
.price-toolbar{align-items:end;gap:30px;margin-bottom:30px}
.search-field{width:min(360px,100%)}
.search-field>span{font-size:var(--text-small)}
.search-field>input{margin:0}
.table-scroll{overflow-x:auto;scrollbar-width:thin;border-block:1px solid var(--line)}
.price-table{width:100%;border-collapse:collapse;min-width:740px;font-size:var(--text-ui);font-variant-numeric:tabular-nums}
.price-table caption{text-align:left;padding:18px 0;font-size:var(--text-small);color:var(--muted);caption-side:bottom}
.price-table th,.price-table td{padding:19px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.price-table thead th{font-size:var(--text-small);color:var(--muted);font-weight:500;white-space:nowrap;background:var(--surface)}
.price-table thead th:first-child{width:32%}
.price-table tbody th{font-size:var(--text-ui);font-weight:500;max-width:260px;padding-left:0}
.price-table td{font-size:var(--text-small);width:22%}
.price-table small{display:block;color:var(--muted);font-size:var(--text-small);line-height:1.6;margin-top:6px;font-weight:400}
.price-table tbody tr:hover{background:#1b2118}
.price-table tbody tr:last-child>*{border-bottom:0}
.price-uncertain{color:var(--accent)}
.price-guide>.small-note{margin-top:25px}
.empty-state{padding:50px 0;border-bottom:1px solid var(--line)}
.empty-state>p{color:var(--muted);margin:15px 0}
.shop-notes{padding-top:0}
.notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 70px}
.notes-grid article{border-top:1px solid var(--line);padding-top:25px}
.notes-grid h3{font-size:23px}
.notes-grid p{color:var(--muted);font-size:var(--text-ui);max-width:55ch;margin-top:17px}

/* About & contact */
.about-story{display:grid;grid-template-columns:1fr 1.15fr;gap:10vw;align-items:center}
.about-year{font-size:clamp(90px,12vw,185px);color:var(--accent);letter-spacing:-.04em;line-height:1.1}
.about-year>span{display:block;font-size:var(--text-small);letter-spacing:0;color:var(--muted);margin-top:20px}
.about-story h2{font-size:clamp(34px,3.3vw,52px)}
.about-story p{margin-top:25px;color:var(--muted);font-size:var(--text-ui);max-width:48ch}
.about-story p.lead{color:var(--text);font-size:21px}
.about-story .text-link{margin-top:20px}
.shop-capacity{background:var(--surface);border-block:1px solid var(--line)}
.capacity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}
.capacity-grid article{padding-top:25px;border-top:1px solid var(--line)}
.capacity-grid span{color:var(--muted);font-size:var(--text-small)}
.capacity-grid strong{display:block;font-size:clamp(22px,2.6vw,40px);font-weight:500;letter-spacing:-.03em;line-height:1.3;margin-top:17px}
.capacity-grid p{font-size:var(--text-small);color:var(--muted);margin-top:10px}
.wide-archive{margin-top:60px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end}
.wide-archive img{width:100%;max-height:500px;object-fit:contain;background:var(--bg);border-radius:var(--radius)}
.wide-archive figcaption{font-size:var(--text-ui);color:var(--muted);max-width:30ch}
.values-section{display:grid;grid-template-columns:1fr 1.15fr;gap:10vw}
.values-section article{border-top:1px solid var(--line);padding:25px 0}
.values-section article:first-child{padding-top:0;border-top:0}
.values-section p{font-size:var(--text-ui);color:var(--muted);margin-top:15px;max-width:45ch}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;padding-top:48px}
.big-phone{font-size:clamp(28px,3vw,45px);letter-spacing:-.035em;line-height:1.2;display:block;white-space:nowrap}
.big-phone:hover{color:var(--accent)}
.contact-email{display:inline-block;border-bottom:1px solid var(--line);font-size:17px;margin-top:15px}
.contact-block{border-top:1px solid var(--line);margin-top:38px;padding-top:28px}
.contact-block h2{font-size:18px;letter-spacing:-.02em}
.contact-block>p{font-size:var(--text-ui);line-height:1.9;color:var(--muted);margin-top:17px}
.contact-block>p.small-note{font-size:var(--text-small)}
.contact-block .text-link{font-size:var(--text-small);margin-top:12px}
.contact-checklist{margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}
.contact-checklist h3{font-size:18px}
.contact-checklist ul{margin:20px 0 0;padding:0;list-style:none;color:var(--muted);font-size:var(--text-small);line-height:2.4}
.contact-checklist li::before{content:'';display:inline-block;width:4px;height:4px;background:var(--accent);margin-right:13px;vertical-align:middle}
.inquiry h2{font-size:30px;letter-spacing:-.03em}
.inquiry>p{color:var(--muted);font-size:var(--text-ui);margin-top:13px;max-width:47ch}
#quote-form{display:grid;gap:25px;margin-top:35px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.form-row>*{min-width:0}
.form-submit{display:flex;align-items:center;gap:25px}
.form-submit>span{color:var(--muted);font-size:var(--text-small)}
.form-note{font-size:var(--text-small);line-height:1.7;color:var(--muted)}
.email-preview{border-top:1px solid var(--line);padding-top:30px}
.email-preview>h3{font-size:23px}
.email-preview pre{font:400 var(--text-ui)/1.8 var(--font);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);padding:22px;margin:22px 0}
.draft-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.draft-actions .text-link{font-size:var(--text-small)}
.credits-body{max-width:950px;margin-left:0}
.credits-body h2{font-size:27px;margin-bottom:20px}
.credits-body p{color:var(--muted);font-size:var(--text-ui);max-width:70ch;margin-bottom:55px}
.credits-body p>a{text-decoration:underline;color:var(--text)}

/* Closing identity */
.site-footer{max-width:1680px;margin-inline:auto;padding:65px var(--gutter) 25px}
.footer-upper{display:grid;grid-template-columns:1.1fr .7fr 1fr 1.2fr;gap:50px}
.footer-upper>div:first-child>p{color:var(--muted);font-size:var(--text-ui);margin-top:30px}
.footer-upper h3{font-size:var(--text-small);letter-spacing:0;color:var(--muted);margin-bottom:20px}
.footer-links>a{display:flex;align-items:center;font-size:var(--text-ui);width:fit-content;min-width:44px;min-height:44px}
.footer-links>a:hover{text-decoration:underline}
.footer-address>p{font-size:var(--text-small);line-height:1.9;margin-top:15px}
.footer-address>a{display:inline-flex;align-items:center;gap:20px;font-size:var(--text-small);min-height:44px}
.footer-contact>a{display:flex;align-items:center;min-height:44px;font-size:16px}
.footer-contact>a+a{font-size:var(--text-small)}
.footer-contact>span{display:block;font-size:var(--text-small);color:var(--muted);margin-top:22px}
.footer-wordmark{font-size:clamp(40px,calc((100vw - var(--gutter) - var(--gutter)) / 8.05),187px);font-weight:600;line-height:1.05;letter-spacing:-.04em;white-space:nowrap;padding:75px 0 35px;color:#d7ddcf}
.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:25px;align-items:center;color:var(--muted);font-size:var(--text-small)}
.footer-bottom>a:last-child{display:inline-flex;align-items:center;gap:15px;min-height:44px}
.footer-bottom>a:hover{color:var(--text)}
.footer-bottom>a{display:inline-flex;align-items:center;min-height:44px}
.noscript-note{padding:25px var(--gutter);background:var(--surface);font-size:var(--text-ui);color:var(--muted)}
.noscript-note a{text-decoration:underline}

/* Motion belongs to the engine and to changes of state. */
@media(prefers-reduced-motion:no-preference){
  .hero-copy{animation:hero-in 900ms var(--ease) both}
  @keyframes hero-in{from{transform:translateY(18px);opacity:.5}to{transform:none;opacity:1}}
  @view-transition{navigation:auto}
  ::view-transition-old(root){animation:page-out 140ms ease both}
  ::view-transition-new(root){animation:page-in 250ms ease both}
  @keyframes page-out{to{opacity:0}}@keyframes page-in{from{opacity:0}}
}
/* All grid children can shrink with real content. */
.hero-main>*,.engine-viewer>*,.coating-console>*,.capability-band>*,.featured-grid>*,.application-helper>*,.home-heritage>*,.capability-detail-grid>*,.project-grid>*,.estimate-section>*,.estimate-form>*,.about-story>*,.contact-layout>*,.footer-upper>*{min-width:0}

@media(max-width:1100px){
  .header-main{gap:25px}.site-header nav{gap:22px}.brand-name{font-size:var(--text-small)}.brand-name>span{font-size:var(--text-small)}.header-contact{gap:20px}
  
  
  .capability-band{grid-template-columns:1fr 1fr 1fr;gap:30px}.capability-band>a{grid-column:1/-1;justify-content:flex-start}.service-row{grid-template-columns:1fr 1.1fr 20px}
  .project-grid{grid-template-columns:1fr 1fr}.project-grid h3{font-size:26px}.estimate-section{grid-template-columns:1fr}.estimate-intro{display:grid;grid-template-columns:1fr 1fr;gap:15px 40px}.estimate-intro>p{margin:0;max-width:44ch}.estimate-intro>.text-link{grid-column:2}.estimate-intro h2{grid-row:span 2}.estimate-form{grid-template-columns:1fr 1fr;gap:60px}.estimate-result>output{font-size:52px}.price-toolbar{flex-wrap:wrap}.price-toolbar .filter-buttons{margin-left:auto}
  .preparation-list{grid-template-columns:1fr 1fr;gap:40px}.footer-upper{gap:25px}.footer-contact>a{font-size:var(--text-ui)}.footer-contact>a+a{font-size:var(--text-small)}
}
@media(max-width:800px){
  .header-main{min-height:125px;flex-wrap:wrap;padding-top:20px;gap:15px}.site-header nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--line);gap:20px}.site-header nav>a{min-height:48px}.site-header nav>a[aria-current]::after{bottom:4px}.header-contact{margin-left:auto}
  
  .capability-band strong{font-size:22px}.capability-band>span{font-size:var(--text-small)}.capability-band div>span{font-size:var(--text-small)}
  .section-heading{gap:35px}.section-heading>p,.section-heading>div{font-size:var(--text-ui);max-width:260px}h2{font-size:38px}.service-row{gap:25px}.service-title{font-size:27px}.service-row p{font-size:var(--text-small)}.featured-grid{gap:30px}.project-card h3{font-size:25px}.application-helper{grid-template-columns:1fr;gap:40px}.application-helper>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:35px}.application-helper>div:first-child>p{margin:0;align-self:end}.condition-result{min-height:190px}.home-heritage{gap:50px}.heritage-number{font-size:100px}.home-heritage h2{font-size:34px}.home-heritage>div>p{font-size:var(--text-ui)}
  .page-hero{padding-top:65px}.page-hero h1{font-size:64px}.page-hero>p{font-size:var(--text-ui);max-width:48ch}.section-nav{gap:18px;flex-wrap:wrap}.section-nav>a{font-size:var(--text-small);gap:15px}.capability-detail-grid{gap:40px}.capability-detail-grid>.archive-feature{align-self:start}.archive-feature img,.archive-feature.contain img{aspect-ratio:.8}.capability-detail-grid>div>p:not(.lead){font-size:var(--text-ui)}.material-list{grid-template-columns:1fr}.capability-detail-heading h2{font-size:36px}.capability-detail-heading>span{font-size:var(--text-small)}.filter-bar{align-items:start}.filter-buttons{gap:20px}.filter-buttons>button{font-size:var(--text-small)}.project-grid{gap:45px 25px}.project-grid h3{font-size:23px}.project-photo>img{padding:15px}.project-photo>span{font-size:var(--text-small)}.project-inquire{font-size:var(--text-small);gap:12px}.estimate-form{gap:35px}.estimate-result{padding-left:25px}.estimate-result>output{font-size:44px}.estimate-result>.button{gap:15px}.price-toolbar .filter-buttons{margin-left:0}.price-toolbar #price-count{margin-left:auto}.notes-grid{gap:35px}.notes-grid h3{font-size:22px}.notes-grid p{font-size:var(--text-ui)}
  .about-story{gap:45px}.about-year{font-size:100px}.about-story h2{font-size:34px}.about-story p{font-size:var(--text-ui)}.about-story p.lead{font-size:18px}.capacity-grid strong{font-size:25px}.capacity-grid{gap:25px}.capacity-grid span,.capacity-grid p{font-size:var(--text-small)}.values-section{gap:45px}.values-section h3{font-size:22px}.values-section p{font-size:var(--text-ui)}.contact-layout{gap:45px;grid-template-columns:.8fr 1.2fr}.big-phone{font-size:27px}.contact-email{font-size:var(--text-ui)}.form-row{grid-template-columns:1fr}.inquiry h2{font-size:27px}.form-submit{flex-wrap:wrap;gap:15px}.form-submit>span{font-size:var(--text-small)}.footer-upper{grid-template-columns:1fr 1fr;gap:45px}.footer-contact>a{font-size:16px}.footer-contact>a+a{font-size:var(--text-ui)}.footer-bottom{flex-wrap:wrap;gap:15px;font-size:var(--text-small)}
}
@media(max-width:540px){
  :root{--section:76px}.site-header nav{gap:12px}.site-header nav>a{font-size:var(--text-small)}.brand-name{font-size:var(--text-small)}.brand-name>span{font-size:var(--text-small)}.brand-mark{font-size:31px}.brand{gap:14px}.header-contact{font-size:var(--text-small);gap:18px}.hero-meta{flex-wrap:wrap;gap:8px;font-size:var(--text-small);padding-top:19px}.hero-meta>span:last-child{gap:8px}
  
  .capability-band{grid-template-columns:1fr 1fr;gap:28px 20px;padding-block:30px}.capability-band>span{grid-column:1/-1;font-size:var(--text-ui)}.capability-band strong{font-size:21px}.capability-band div>span{font-size:var(--text-small)}.capability-band>a{font-size:var(--text-small)}
  .section-heading{display:block;margin-bottom:35px}.section-heading>p,.section-heading>div{margin-top:23px;max-width:36ch;font-size:var(--text-ui)}.section-heading>.text-link{margin-top:20px}h2{font-size:36px}.comparison-divider>span{width:44px;height:44px}.service-row{grid-template-columns:1fr 20px;gap:20px 15px;padding-block:28px}.service-title{font-size:27px}.service-row>p{grid-column:1;grid-row:2;font-size:var(--text-ui)}.service-row>.arrow{grid-column:2;grid-row:1}.featured-grid{grid-template-columns:1fr;gap:40px}.featured-grid .project-photo{aspect-ratio:1.15}.project-card h3{font-size:26px}.project-card>p{font-size:var(--text-ui)}.project-inquire{font-size:var(--text-small)}.project-photo>span{font-size:var(--text-small)}.application-helper>div:first-child{display:block}.application-helper>div:first-child>p{margin-top:23px;max-width:37ch}.choice-buttons{gap:9px}.choice-buttons>button{font-size:var(--text-small);min-height:57px;padding:12px}.condition-result{min-height:230px}.condition-result h3{font-size:24px}.condition-result p{font-size:var(--text-ui)}.application-helper>div>p.small-note{font-size:var(--text-small)}.home-heritage{grid-template-columns:1fr;gap:45px}.heritage-number{font-size:110px}.home-heritage h2{font-size:36px}.home-heritage>div>p{font-size:var(--text-ui)}.project-cta{display:block}.project-cta h2{font-size:38px}.project-cta p{font-size:var(--text-ui)}.project-cta>.button{margin-top:30px}
  .page-hero{padding-top:50px;padding-bottom:45px}.page-hero h1{font-size:clamp(43px,10.7vw,58px)}.page-hero>p{font-size:var(--text-ui);margin-top:28px}.section-nav{display:grid;grid-template-columns:1fr 1fr;gap:5px 18px;padding-block:20px}.section-nav>a{font-size:var(--text-small);justify-content:space-between;gap:10px}.section-nav .arrow{scale:.8}.capability-detail-heading{display:block;margin-bottom:30px}.capability-detail-heading>span{display:block;margin-top:20px;font-size:var(--text-small)}.capability-detail-heading h2{font-size:36px}.capability-detail-grid{grid-template-columns:1fr;gap:40px}.capability-detail-grid>div>p:not(.lead){font-size:var(--text-ui)}.lead{font-size:20px}.material-list{grid-template-columns:1fr 1fr;gap:14px}.material-list>li{font-size:var(--text-small)}.archive-feature img,.archive-feature.contain img{aspect-ratio:1.1}.archive-feature figcaption{font-size:var(--text-small);padding:16px}.preparation-list{grid-template-columns:1fr;gap:28px}.preparation-list h3{margin-top:15px;font-size:24px}.preparation-list p{font-size:var(--text-ui)}.process-section>.text-link{font-size:var(--text-small)}.projects-section{padding-top:25px}.filter-bar{display:block;margin-bottom:30px}.filter-buttons{gap:8px 20px}.filter-buttons>button{font-size:var(--text-small)}.filter-bar>span{display:block;margin-top:20px}.project-grid{grid-template-columns:1fr;gap:42px}.project-grid h3{font-size:26px}.project-photo{aspect-ratio:1.22}.project-photo>img{padding:20px}.archive-note{font-size:var(--text-small);line-height:1.8;margin-top:40px}
  .estimate-intro{display:block}.estimate-intro h2{font-size:36px}.estimate-intro>p{font-size:var(--text-ui);margin-top:25px;max-width:40ch}.estimate-intro>.text-link{margin-top:15px}.estimate-form{grid-template-columns:1fr;gap:30px}.estimate-fields{gap:23px}.estimate-result{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.estimate-result>output{font-size:48px}.estimate-result>.button{font-size:var(--text-small)}.estimate-result>p.estimate-disclaimer{font-size:var(--text-small)}.estimate-result>p{font-size:var(--text-ui)}.price-toolbar{display:block;margin-bottom:25px}.price-toolbar .filter-buttons{margin-top:25px}.price-toolbar #price-count{margin-top:15px;font-size:var(--text-small)}.price-table{min-width:700px}.price-table th,.price-table td{padding:17px 14px}.price-guide>.small-note{font-size:var(--text-small)}.notes-grid{grid-template-columns:1fr;gap:30px}.notes-grid h3{font-size:23px}.notes-grid p{font-size:var(--text-ui)}
  .about-story{grid-template-columns:1fr;gap:45px}.about-year{font-size:110px}.about-story h2{font-size:36px}.about-story p{font-size:var(--text-ui)}.about-story p.lead{font-size:21px}.capacity-grid{grid-template-columns:1fr;gap:30px}.capacity-grid strong{font-size:34px}.capacity-grid span,.capacity-grid p{font-size:var(--text-small)}.wide-archive{display:block;margin-top:40px}.wide-archive figcaption{font-size:var(--text-small);margin-top:17px}.values-section{grid-template-columns:1fr;gap:35px}.values-section article:first-child{padding-top:25px;border-top:1px solid var(--line)}.values-section p{font-size:var(--text-ui)}.contact-layout{grid-template-columns:1fr;gap:65px}.big-phone{font-size:34px}.contact-email{font-size:16px}.contact-block h2{font-size:20px}.contact-checklist ul{font-size:var(--text-ui)}.inquiry h2{font-size:28px}.inquiry>p{font-size:var(--text-ui)}.form-row{grid-template-columns:1fr;gap:25px}label{font-size:var(--text-small)}input:not([type=range]):not([type=checkbox]),select,textarea{font-size:16px}.form-submit .button{font-size:var(--text-small)}.form-submit>span{font-size:var(--text-small)}.email-preview pre{font-size:var(--text-ui);padding:17px}.credits-body h2{font-size:25px}.credits-body p{font-size:var(--text-ui)}
  .site-footer{padding-top:50px}.footer-upper{gap:40px 25px;grid-template-columns:1fr 1fr}.footer-upper>div:first-child{grid-column:1/-1}.footer-upper>div:first-child>p{font-size:var(--text-small);margin-top:25px}.footer-upper h3{font-size:var(--text-small)}.footer-contact{grid-column:1/-1}.footer-contact>a{font-size:22px}.footer-contact>a+a{font-size:var(--text-ui)}.footer-wordmark{padding-top:45px;padding-bottom:25px}.footer-bottom{display:grid;grid-template-columns:1fr 1fr;font-size:var(--text-small);gap:15px}.footer-bottom>a:last-child{justify-self:end;font-size:var(--text-small)}.footer-bottom>span:nth-child(2){text-align:right}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover,.project-card:hover .project-photo>img{transform:none}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Task surfaces expose useful actions before the marketing rhythm resumes. */
.task-hero{padding-block:42px 32px}
.task-hero h1{font-size:clamp(36px,4vw,62px)}
.task-hero>p{margin:18px 0 0;max-width:65ch;font-size:16px}
.contact-shortcuts{display:flex;align-items:center;gap:32px;flex-wrap:wrap;padding-block:12px;border-bottom:1px solid var(--line)}
.contact-shortcuts .text-link{font-size:var(--text-ui);min-width:44px}
.contact-layout .inquiry{grid-column:2;grid-row:1}
.contact-layout .contact-details{grid-column:1;grid-row:1}
.contact-details .contact-block:first-child{margin-top:0;padding-top:0;border:0}
#inquiry{scroll-margin-top:24px}
.inquiry>p{font-size:var(--text-ui);max-width:52ch}
#quote-form{gap:23px;margin-top:27px}
.optional-contact,.full-draft{border-block:1px solid var(--line);padding-block:7px}
.optional-contact>summary,.full-draft>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;font-size:var(--text-ui);list-style:none}
.optional-contact>summary::-webkit-details-marker,.full-draft>summary::-webkit-details-marker{display:none}
.optional-contact>summary>span{color:var(--muted);font-size:var(--text-small);margin-left:auto}
.optional-contact>summary::after,.full-draft>summary::after{content:'+';font-size:22px;line-height:1;color:var(--muted)}
.optional-contact[open]>summary::after,.full-draft[open]>summary::after{content:'−'}
.optional-contact-fields{display:grid;gap:23px;padding:15px 0 20px}
.email-preview{padding-top:25px;scroll-margin-top:25px}
.draft-summary{margin:20px 0;color:var(--muted);font-size:var(--text-ui);line-height:1.7}
.draft-summary>p{overflow-wrap:anywhere}
.draft-project-summary{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-top:12px;white-space:pre-wrap}
.draft-actions{margin-bottom:20px}
.full-draft>pre{margin-bottom:10px;max-height:340px;overflow:auto}
.filter-buttons>button:active,.choice-buttons>button:active,.text-button:active{background:var(--surface-raised);color:var(--text)}
@media(min-width:1680px){.hero-main{min-height:0}.engine-stage{height:470px}}
@media(max-width:1100px){.hero-main{gap:30px}.hero-copy h1{font-size:clamp(54px,6.4vw,76px)}.hero-copy .hero-service{font-size:18px}.hero-copy .hero-description{font-size:16px}.engine-stage{height:370px}.engine-toolbar button{font-size:var(--text-small)}.finish-row{display:block}#finish-inquire{margin-top:4px}.hero-actions{gap:16px}.hero-actions .text-link{font-size:var(--text-ui)}}
@media(max-width:800px){.hero-main{grid-template-columns:1fr 1.15fr;gap:25px;min-height:0}.hero-copy h1{font-size:clamp(46px,6.6vw,61px)}.hero-copy .hero-service{font-size:17px}.hero-copy .hero-description{font-size:var(--text-ui);line-height:1.7}.hero-evidence{gap:12px;margin-top:24px}.hero-evidence img{width:50px;height:50px}.hero-evidence strong{font-size:var(--text-ui)}.engine-stage{height:335px}.engine-meta{font-size:var(--text-small);gap:10px}.engine-meta>span:last-child{display:none}.contact-layout{grid-template-columns:1fr 1.5fr;gap:35px}.task-hero{padding-block:36px 28px}.page-hero h1{font-size:54px}}
@media(max-width:540px){
 .site-header nav{gap:2px}.site-header nav>a{padding-inline:0;min-width:44px;font-size:var(--text-small)}
 .hero-meta{flex-wrap:wrap;gap:6px 18px;font-size:var(--text-small);padding-top:17px}.hero-meta>span:last-child{gap:8px}
 .hero-main{display:flex;flex-direction:column;align-items:stretch;gap:27px;padding-top:28px}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(52px,13vw,70px)}.hero-copy .hero-service{font-size:18px;margin-top:21px}.hero-copy .hero-description{font-size:16px;max-width:38ch;margin-top:14px}.hero-actions{margin-top:23px;gap:12px 20px}.hero-actions .button{font-size:var(--text-ui);padding-inline:18px}.hero-actions .text-link{font-size:var(--text-ui)}.hero-evidence{margin-top:23px;padding-top:18px;min-height:64px}.hero-evidence img{width:52px;height:48px}.hero-evidence strong{font-size:var(--text-ui)}.hero-evidence>span{font-size:var(--text-small)}
 .engine-stage{height:330px;margin:0}.engine-background-word{top:12%;font-size:60vw}.engine-meta>span:last-child{display:initial}.finish-row{display:flex;gap:6px 12px}.finish-options{gap:3px}.finish-option{padding-inline:8px;font-size:var(--text-ui)}#finish-inquire{font-size:var(--text-ui)}.engine-qualification{font-size:var(--text-small)}
 .comparison-divider>span{width:44px;height:44px}
 .page-hero{padding-top:36px;padding-bottom:32px}.page-hero h1{font-size:clamp(39px,10.2vw,54px)}.page-hero>p{font-size:16px;margin-top:23px}.task-hero{padding-block:32px 25px}.task-hero h1{font-size:clamp(35px,9vw,46px)}.task-hero>p{font-size:16px;line-height:1.7;margin-top:18px}
 .contact-shortcuts{gap:3px 23px;padding-block:10px}.contact-shortcuts .text-link{font-size:var(--text-ui)}.contact-layout{grid-template-columns:1fr;gap:55px;padding-top:32px}.contact-layout .inquiry,.contact-layout .contact-details{grid-column:auto;grid-row:auto}.contact-layout .inquiry{order:0}.contact-layout .contact-details{order:1}.form-row{gap:20px}.form-submit{gap:13px}.form-submit .button{font-size:var(--text-ui)}.form-submit>span{font-size:var(--text-small)}#quote-form{gap:22px}.inquiry>p{font-size:var(--text-ui)}.draft-actions{gap:12px 20px}.draft-actions .button{font-size:var(--text-ui)}.draft-actions .text-link,.draft-actions .text-button{font-size:var(--text-ui)}.optional-contact>summary,.full-draft>summary{font-size:var(--text-ui)}
 .estimate-section{padding-top:40px;gap:30px}.estimate-intro h2{font-size:29px}.estimate-intro>p{font-size:var(--text-ui);margin-top:15px}.estimate-intro>.text-link{margin-top:10px}.estimate-result>p{font-size:var(--text-ui)}.estimate-result>p.estimate-disclaimer{font-size:var(--text-ui)}.price-table td{font-size:var(--text-ui)}.price-table tbody th{font-size:var(--text-ui)}.service-row>p,.project-card>p,.notes-grid p,.values-section p{font-size:var(--text-ui)}.section-heading>p,.section-heading>div{font-size:var(--text-ui)}.footer-links>a{font-size:var(--text-ui)}.footer-address>a,.footer-address>p{font-size:var(--text-ui)}
}

/* Reading roles: comfortable body copy, distinct controls, restrained metadata. */
p{font-weight:400}
.section-heading>p,.section-heading>div,.service-row>p,.project-card>p,.application-helper>div>p,.condition-result p,.home-heritage>div>p,.project-cta p,.page-hero>p,.capability-detail-grid>div>p:not(.lead),.preparation-list p,.notes-grid p,.about-story p,.values-section p,.contact-block>p,.inquiry>p,.credits-body p{font-size:var(--text-body);line-height:1.75}
.small-note,.application-helper>div>p.small-note,.contact-block>p.small-note{font-size:var(--text-small);line-height:1.7}
.section-heading>div{max-width:44ch}.section-heading>p{max-width:42ch}
.text-link,.text-button,.button,.project-inquire,.filter-buttons>button,.choice-buttons>button,.section-nav>a,.draft-actions .text-link{font-size:var(--text-ui)}
.site-header nav>a{font-size:var(--text-ui)}
.header-contact{font-size:var(--text-ui);font-weight:600}
label,.search-field>span,.checkbox-label{font-size:var(--text-label)}
input:not([type=range]):not([type=checkbox]):not([type=radio]),select,textarea{font-size:var(--text-ui);font-weight:500}
.hero-copy .hero-description{font-size:var(--text-body);max-width:40ch}
.hero-meta{font-size:var(--text-small)}
.brand-name{font-size:var(--text-small)}.brand-name>span{font-size:.8125rem}
.footer-links>a,.footer-address>p,.footer-address>a,.footer-contact>a+a{font-size:var(--text-ui)}
.footer-upper>div:first-child>p{font-size:var(--text-ui)}
.footer-upper h3{font-size:var(--text-label);color:var(--text)}
.price-table tbody th,.price-table td{font-size:var(--text-ui)}
.price-table thead th,.price-table caption,.price-table small{font-size:var(--text-small)}
.estimate-intro>p,.estimate-result>p,.estimate-result>p.estimate-disclaimer{font-size:var(--text-ui);line-height:1.75}
.engine-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:7px 0}
.engine-help{font-size:var(--text-small);color:var(--muted);margin:0;line-height:1.6;max-width:30ch}
.engine-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-shrink:0}
.engine-toolbar button{font-size:var(--text-label);padding:8px 10px}
.coating-console{padding-top:20px}
.coating-progress>div:first-child{align-items:start;gap:20px;color:var(--text)}
.coating-progress label{font-size:var(--text-ui);font-weight:600}
#coat-output{font-size:var(--text-label);color:var(--muted);white-space:nowrap}
.coating-progress input{margin-block:2px}
.coating-progress input::-webkit-slider-runnable-track{height:4px;border-radius:3px;background:linear-gradient(to right,var(--accent) var(--coat-position,55%),var(--line) var(--coat-position,55%))}
.coating-progress input::-moz-range-track{height:4px;border-radius:3px;background:linear-gradient(to right,var(--accent) var(--coat-position,55%),var(--line) var(--coat-position,55%))}
.coating-progress input::-webkit-slider-thumb{width:20px;height:20px;margin-top:-8px}
.coating-progress input::-moz-range-thumb{width:14px;height:14px}
.coating-progress .coat-endpoints{font-size:var(--text-small);color:var(--muted);margin-top:-4px;margin-bottom:19px}
.finish-option,#finish-inquire{font-size:var(--text-label)}
.engine-qualification{font-size:var(--text-small);max-width:66ch}
/* A substantial surface image replaces the tiny archive crop. Its provenance stays visible. */
.comparison-section{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(32px,5vw,80px);align-items:start}
.comparison-section>.section-heading{display:block;margin:0}
.comparison-section .section-heading h2{font-size:clamp(34px,3.6vw,56px)}
.comparison-section .section-heading>div{margin-top:27px;max-width:36ch}
.comparison-section .section-heading .text-link{margin-top:22px}
.comparison-view{min-width:0}
.comparison-shell{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}
.comparison-heading{display:flex;justify-content:space-between;gap:24px;padding:21px 24px;font-size:var(--text-ui);line-height:1.45}
.comparison-heading>span:last-child{text-align:right}
.comparison-heading small{display:block;font-size:var(--text-small);color:var(--muted);font-weight:400;margin-top:5px}
.comparison{height:auto;aspect-ratio:3/2;position:relative;overflow:hidden;isolation:isolate}
.comparison-object{position:absolute;inset:0;background-image:url('assets/polishing-study.jpg');background-size:200% 100%;background-position:left center}
.vessel-after{background-position:right center}
.comparison-source-note{font-size:var(--text-small);color:var(--muted);padding:15px 24px;line-height:1.6}
.comparison-caption{display:flex;justify-content:space-between;gap:12px 24px;align-items:start;flex-wrap:wrap;margin-top:15px;color:var(--muted);font-size:var(--text-small)}
.comparison-caption>.text-link{font-size:var(--text-label);min-height:44px;margin-top:-8px}
/* Equal image, title, description and action rows; filters retain normal grid reflow. */
.featured-grid{row-gap:0}
.featured-grid .project-card,.project-grid .project-card{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0}
.featured-grid .project-photo{aspect-ratio:4/3}
.featured-grid .project-inquire,.project-grid .project-inquire{align-self:end;justify-self:start}
.featured-grid .project-card-title,.project-grid .project-card-title{align-items:start}
.project-dot{margin-top:13px}
.project-inquire{margin-top:18px}
.choice-buttons{gap:12px}
.choice-buttons>button{min-height:60px;padding:16px 20px;font-size:var(--text-ui);line-height:1.5;font-weight:500}
.condition-result{padding-top:32px;min-height:260px}
.condition-result h3{font-size:clamp(24px,2vw,30px);line-height:1.35;max-width:30ch}
.condition-result p{max-width:58ch;margin-top:19px}
.condition-result>.text-link{margin-top:22px}
.application-helper{gap:clamp(40px,6vw,96px);grid-template-columns:1fr 1.35fr}
.capability-detail-heading{margin-bottom:35px}
.capability-detail-heading h2{font-size:clamp(34px,3.3vw,52px)}
.capability-detail-grid .lead{font-size:clamp(21px,1.6vw,25px);line-height:1.6;max-width:43ch}
.capability-detail-grid>div>p:not(.lead){max-width:54ch;margin-top:24px}
.capability-detail-grid .button{margin-top:29px}
.archive-feature img,.archive-feature.contain img{aspect-ratio:4/3}
.archive-feature figcaption{font-size:var(--text-small);line-height:1.65;padding:17px 20px}
.material-catalog{display:grid;grid-template-columns:1fr 1.35fr;gap:clamp(32px,6vw,96px);border-top:1px solid var(--line);margin-top:48px;padding-top:32px}
.material-catalog h3{font-size:23px}
.material-catalog p{font-size:var(--text-ui);line-height:1.75;color:var(--muted);margin-top:16px;max-width:49ch}
.material-catalog .material-list{margin:0;gap:16px 30px;align-content:start}
.material-list>li{font-size:var(--text-ui);line-height:1.6;padding-left:16px}
.material-list>li::before{top:11px;width:4px;height:4px}
@media(max-width:1100px){.engine-controls{flex-wrap:wrap}.engine-help{max-width:none}.engine-toolbar{margin-left:auto}.comparison-section{grid-template-columns:1fr 1.25fr;gap:32px}}
@media(max-width:900px){.comparison-section{grid-template-columns:1fr}.comparison-section>.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:32px}.comparison-section .section-heading>div{margin:0;max-width:40ch}.comparison-caption{align-items:center}.application-helper{grid-template-columns:1fr;gap:35px}.application-helper>div:first-child{display:block}.application-helper>div:first-child>p{max-width:52ch;margin-top:20px}.condition-result{min-height:245px}.material-catalog{grid-template-columns:1fr 1.5fr;gap:32px}.capability-detail-grid{gap:32px}}
@media(max-width:640px){
 .header-main{column-gap:16px}.site-header nav{flex-wrap:wrap;justify-content:flex-start;gap:3px 8px;padding-block:6px}.site-header nav>a{font-size:var(--text-label);padding-inline:0;min-height:44px}.header-contact{font-size:var(--text-label);gap:15px}.brand{gap:14px}
 .hero-copy h1{font-size:clamp(47px,12.5vw,70px)}.hero-copy .hero-service{font-size:20px}.hero-actions{gap:10px 22px}.hero-actions .button,.hero-actions .text-link{font-size:var(--text-ui)}.hero-evidence strong{font-size:var(--text-ui)}
 .engine-controls{gap:8px;padding-block:10px}.engine-help{font-size:var(--text-small)}.engine-toolbar{margin-left:0;justify-content:space-between;flex:1 0 100%}.engine-toolbar button{font-size:var(--text-label)}
 .coating-progress label{font-size:var(--text-ui);max-width:18ch;line-height:1.5}#coat-output{font-size:var(--text-small);padding-top:2px}.finish-row{gap:8px 16px}.finish-option,#finish-inquire{font-size:var(--text-label)}.finish-options{gap:3px}.engine-stage{height:330px}
 .comparison-section>.section-heading{display:block}.comparison-section .section-heading>div{margin-top:23px}.comparison-section .section-heading h2{font-size:36px}.comparison-heading{padding:17px 16px;font-size:var(--text-label);gap:16px}.comparison-heading small{font-size:var(--text-small);max-width:14ch}.comparison-source-note{padding:15px 16px}.comparison-caption{display:block}.comparison-caption>.text-link{margin-top:7px}
 .featured-grid{display:flex;flex-direction:column;gap:44px}.featured-grid .project-card{display:block}.featured-grid .project-photo{aspect-ratio:4/3}.project-card h3{font-size:27px}.project-card>p{font-size:var(--text-body)}
 .choice-buttons{grid-template-columns:1fr 1fr;gap:12px}.choice-buttons>button{padding:14px;font-size:var(--text-label);min-height:70px}.condition-result{min-height:300px}.condition-result h3{font-size:26px}.condition-result p{font-size:var(--text-body)}
 .capability-detail-grid,.material-catalog{grid-template-columns:1fr;gap:28px}.capability-detail-heading h2{font-size:36px}.material-catalog{margin-top:32px;padding-top:27px}.material-catalog .material-list{gap:16px 22px}.material-list>li{font-size:var(--text-label)}.archive-feature img,.archive-feature.contain img{aspect-ratio:4/3}
 .section-nav{gap:7px 20px}.section-nav>a{font-size:var(--text-label)}.section-nav .arrow{flex-basis:16px;width:16px}.footer-upper{grid-template-columns:1fr 1fr;gap:36px 20px}.footer-address>p{font-size:var(--text-label)}.footer-bottom{display:flex;gap:8px 24px;flex-wrap:wrap}.footer-bottom>span{flex-basis:100%;text-align:left!important}.footer-contact>a+a{font-size:var(--text-ui)}
}

@media(max-width:360px){.header-contact .arrow{display:none}.site-header nav{display:grid;grid-template-columns:1fr max-content 1fr;column-gap:10px}.site-header nav>a{justify-content:flex-start}}
