/* Content-driven layout. Artwork and copy participate in document flow. */
.page .etagere-study{grid-column:2;grid-row:1;margin:0;align-self:center;min-width:0}
.page .etagere-study>img,.page .review-sketch>img{display:block;width:100%;height:auto;object-fit:contain}
.page .etagere-study figcaption{font-size:9px;line-height:1.6;letter-spacing:.12em;margin-top:12px;color:#6b715f}
.page .review-sketch{transform:rotate(-1deg)}
@media(max-width:1100px){.page .etagere-study{grid-column:1;grid-row:2;max-width:900px;justify-self:center}}
.about-studio{padding:64px clamp(22px,5vw,78px);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px 5%;border-top:1px solid #ded9cf}
.about-studio h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,3.5vw,56px);font-weight:400;line-height:1.04;letter-spacing:-.03em;margin:18px 0}
.about-studio p{font-family:inherit;font-size:13px;line-height:1.65;margin:0 0 18px}
.about-studio .software-note{font-size:13px}
.working-with{grid-column:1 / -1;border-top:1px solid #c9c4b8;padding-top:24px}
.working-with h3{font-family:inherit;font-size:9px;font-weight:700;line-height:1.5;letter-spacing:.34em;text-transform:uppercase;margin:0 0 20px}
.working-with dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0}
.working-with dt{font-family:Georgia,"Times New Roman",serif;font-size:18px;font-weight:400;line-height:1.15;margin-bottom:10px}
.working-with dd{font-family:inherit;font-size:10px;line-height:1.45;margin:0;color:#575954}
.study-note{font-size:13px;line-height:1.6;max-width:800px;margin:0 0 30px;color:#575954}
.page .cap-study-note{max-width:none;margin:0;padding:22px 6%;font-size:13px;line-height:1.6;border-bottom:1px solid #dfdfd7}
.cta{flex-wrap:wrap}.cta>div:first-child{flex:1 1 420px}
.contact-fallback{flex:1 0 100%;min-width:0;max-width:100%;font-family:inherit}
.contact-fallback label{display:block;font-size:12px;line-height:1.5;margin-bottom:10px}
.email-copy-row{display:flex;flex-wrap:wrap;gap:10px;max-width:540px}
.email-copy-row input{min-width:0;flex:1 1 250px;font-family:inherit;font-size:13px;font-weight:400;line-height:1.5;padding:13px 12px;border:1px solid #c9c4b8;background:#f6f4ee;color:#263b32;border-radius:0}
.email-copy-row button{font-family:inherit;font-size:9px;font-weight:400;line-height:1.5;letter-spacing:.06em;text-transform:uppercase;padding:13px 16px;border:1px solid #c9c4b8;background:#f6f4ee;color:#263b32;cursor:pointer;min-height:44px}
.page .email-copy-row button{font-size:10px;font-weight:600;letter-spacing:normal}
.copy-status{display:block;min-height:1.5em;font-size:12px;line-height:1.5;margin-top:8px}
.email-copy-row input:focus-visible,.email-copy-row button:focus-visible{outline:2px solid #d3cab7;outline-offset:3px}
@media(max-width:700px){.about-studio{grid-template-columns:1fr;padding:36px 22px}.working-with dl{grid-template-columns:1fr;gap:24px}.cta>div:first-child{flex-basis:auto}.page .cap-study-note{padding:22px}.contact-fallback{flex-basis:auto;width:100%}}
body{overflow-wrap:break-word}
main,section,figure,header,footer,div{min-width:0}
img{display:block;max-width:100%}
figcaption{line-height:1.5;overflow-wrap:anywhere}
.site-header{grid-template-columns:minmax(0,1fr) auto auto 42px;gap:24px;height:auto;min-height:96px;padding-block:20px}
.site-header nav{flex-wrap:wrap;gap:20px}
.hero,.capabilities,.field,.packages{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:40px 5%;min-height:0;padding-block:70px;overflow:visible}
.hero{overflow:hidden}
.hero-copy,.cap-copy,.field-copy,.packages-copy{width:auto;max-width:none;grid-column:1;grid-row:1 / span 2}
.hero h1{font-size:clamp(42px,4.7vw,78px)}
.cap-copy h2,.field h2,.packages h2{font-size:clamp(38px,4.5vw,70px)}
.hero-drawing,.cap-drawing,.field-drawing,.trim-drawing{position:relative;inset:auto;width:100%;height:auto;margin:0;grid-column:2;align-self:center}
.hero-main-detail{grid-row:1}.hero-transition-detail{grid-row:2;display:block;width:48%;justify-self:end}
.hero-drawing img,.cap-drawing img,.field-drawing img,.trim-drawing img{height:auto;width:100%;object-fit:contain}
.hero-drawing figcaption,.cap-drawing figcaption,.field-drawing figcaption,.trim-drawing figcaption{margin-top:12px}
.cap-plan{grid-row:1}.cap-details{grid-row:2}
.cap-footer,.process-wrap,.built-strip{position:relative;inset:auto;grid-column:1 / -1;margin:20px 0 0;width:100%;height:auto}
.cap-footer{grid-template-columns:1fr 1.15fr;gap:28px}
.process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.built-strip{grid-template-columns:1fr 1fr;align-items:center;overflow:visible}
.built-strip img{height:auto;width:100%;object-fit:contain}
.selected-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);align-items:start}
.tambour-drawing,.render-card{min-height:0}
.tambour-drawing img,.render-card img{height:auto;width:100%;object-fit:contain}
.tambour-drawing figcaption{margin-top:14px}
.actions{flex-wrap:wrap}.btn{min-height:46px;height:auto;padding-block:14px}
.cta{gap:32px}.cta .btn{min-width:0;flex-shrink:0}
footer{gap:20px;flex-wrap:wrap;line-height:1.6}
@media(max-width:1150px){
 .site-header{grid-template-columns:1fr auto}.site-header nav{display:flex;grid-column:1 / -1;grid-row:2}.header-note{display:none}.header-icon{grid-column:2;grid-row:1}
 .hero,.capabilities,.field,.packages{grid-template-columns:minmax(0,1fr);padding:48px clamp(22px,5vw,60px);gap:32px}
 .hero-copy,.cap-copy,.field-copy,.packages-copy{grid-column:1;grid-row:auto;max-width:760px}
 .hero-drawing,.cap-drawing,.field-drawing,.trim-drawing{grid-column:1;grid-row:auto;width:100%;max-width:900px;justify-self:center}
 .hero-transition-detail{width:38%;justify-self:end}.hero-underlay,.cap-underlay{opacity:.12}
 .hero h1{font-size:clamp(42px,6vw,68px)}
 .process-wrap,.built-strip,.cap-footer{grid-column:1;margin-top:12px}
 .cap-footer{grid-template-columns:1fr 1fr}
 .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .cta h2{font-size:38px}
}
@media(max-width:700px){
 .site-header{padding-inline:20px;gap:14px}.brand-main{font-size:clamp(14px,4.4vw,22px)}.brand-sub{font-size:5.5px;letter-spacing:.22em}.header-icon{width:28px;height:42px}
 .site-header nav{gap:12px 24px;font-size:10px}.site-header nav a{padding-block:8px}
 .hero,.capabilities,.field,.packages,.selected{padding:36px 22px}
 .hero h1{font-size:clamp(38px,10vw,54px)}
 .hero-transition-detail{width:62%}.actions{flex-direction:column}.btn{width:100%;min-width:0}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid article{padding-inline:8px}
 .cap-footer,.built-strip,.selected-grid{grid-template-columns:1fr}
 .built-strip>div{padding:24px}.built-strip img{height:auto}
 .process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-grid article{padding:16px 10px}
 .selected-grid{gap:28px}.render-card{width:min(100%,420px);justify-self:center}
 .cta{align-items:stretch;gap:24px}.cta h2{font-size:36px}.cta .btn{min-width:0}
 .capability-table div{grid-template-columns:1fr;gap:6px}
 footer{font-size:9px;letter-spacing:.05em;align-items:flex-start}
}

/* Rust Capabilities page: independent selectors, complete responsive SVG frames. */
.page{max-width:1600px}
.page header{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto auto 28px;gap:26px;align-items:center;height:auto;min-height:76px;padding:20px 6%}
.page .brand,.page nav,.page .note,.page .brand-mark{position:static;inset:auto;width:auto;height:auto}
.page .brand>span{font-size:clamp(16px,1.65vw,25px)}.page .brand small{font-size:8px;letter-spacing:.2em}
.page nav{font-size:10px;gap:20px;flex-wrap:wrap}.page .note{font-size:8px}.page .brand-mark{width:28px;height:50px}
.page .eyebrow{font-size:10px;line-height:1.5;letter-spacing:.22em}
.page .hero,.page .packages,.page .details,.page .field{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:32px 4%;height:auto;min-height:0;padding:36px 6%;overflow:visible}
.page .hero-copy,.page .packages .copy,.page .details .copy,.page .field .copy{position:static;inset:auto;width:auto;max-width:none;grid-column:1;grid-row:1}
.page .hero-art,.page .package-art,.page .details-art{position:static;inset:auto;width:100%;height:auto;margin:0;grid-column:2;grid-row:1;align-self:center}
.page .hero h1{font-size:clamp(38px,4.3vw,66px);line-height:1;margin:12px 0 20px}
.page .hero p,.page .copy p{font-size:clamp(14px,1.15vw,18px);line-height:1.5;margin:16px 0}
.page .actions{margin-top:24px;gap:12px;flex-wrap:wrap;flex-direction:row}
.page .button{font-size:10px;min-height:44px;height:auto;padding:14px 16px}
.page .actions .button:first-child,.page .actions .button:last-child{width:auto;min-width:0;flex:1 1 145px}
.page .services{height:auto;padding:24px 6%}
.page .service-grid{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:20px}
.page .service-grid>div{height:auto;min-height:105px;padding:10px 6px}
.page .service-icon{width:40px;height:37px}.page .service-grid h2{font-size:17px;line-height:1.15;margin-top:10px}
.page .copy h2,.page .details .copy h2,.page .field .copy h2{font-size:clamp(32px,3.3vw,50px);line-height:1.03;margin-top:12px}
.page ul,.page .field ul{margin-top:22px}.page li,.page .field li{font-size:11px;line-height:1.5;padding:9px 0}
.page .built{position:static;inset:auto;grid-column:1 / -1;width:100%;height:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:0;margin:8px 0 0;align-items:center}
.page .built-copy{padding:24px;align-self:stretch}.page .built-copy h2{font-size:clamp(28px,2.75vw,42px);margin-top:12px}
.page .built-copy .eyebrow{font-size:9px}.page .built-art{width:100%;height:auto;display:block}
.page .field{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
.page .field-drawing,.page .field-render{position:static;inset:auto;width:100%;height:auto;margin:0;align-self:center;grid-row:1}
.page .field-drawing{grid-column:2}.page .field-render{grid-column:3}
.page .field figcaption{font-size:9px;line-height:1.6;letter-spacing:.12em;white-space:normal;margin-top:12px}
.page .contact{height:auto;gap:28px;padding:32px 6%;flex-wrap:wrap}
.page .contact h2{font-size:clamp(32px,3vw,46px);margin-top:10px}.page .contact p{font-size:16px;line-height:1.5}
.page .email{width:auto;max-width:100%;font-size:clamp(10px,1.15vw,14px);gap:12px}.page .email span{font-size:24px}
.page footer{height:auto;padding:24px 6%;font-size:13px;gap:20px;flex-wrap:wrap}.page footer div{font-size:11px;gap:14px;flex-wrap:wrap}
@media(max-width:1100px){
 .page header{grid-template-columns:1fr auto}.page nav{grid-row:2;grid-column:1 / -1}.page .note{display:none}.page .brand-mark{grid-column:2;grid-row:1}
 .page .hero,.page .packages,.page .details{grid-template-columns:minmax(0,1fr)}
 .page .hero-copy,.page .packages .copy,.page .details .copy{grid-column:1;grid-row:1;max-width:760px}
 .page .hero-art,.page .package-art,.page .details-art{grid-column:1;grid-row:2;width:100%;max-width:900px;justify-self:center}
 .page .hero h1{font-size:clamp(40px,6vw,62px)}
 .page .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 0}.page .service-grid>div:nth-child(3n){border-right:0}
 .page .field{grid-template-columns:repeat(2,minmax(0,1fr))}.page .field .copy{grid-column:1 / -1;grid-row:1}
 .page .field-drawing{grid-column:1;grid-row:2}.page .field-render{grid-column:2;grid-row:2}
}
@media(max-width:700px){
 .page header{padding:20px 22px;min-height:0}.page .brand small{font-size:6px;letter-spacing:.15em}.page .brand-mark{display:none}.page nav{font-size:11px;gap:12px 24px;margin:0}.page nav a{padding-block:8px}
 .page .hero,.page .packages,.page .details,.page .field{padding:30px 22px;gap:26px}
 .page .hero h1{font-size:clamp(36px,10vw,48px)}
 .page .services{padding:24px 22px}.page .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .page .service-grid>div:nth-child(3n){border-right:1px solid #c7c9c1}.page .service-grid>div:nth-child(2n){border-right:0}
 .page .built{grid-template-columns:1fr}.page .built-copy{padding:24px}.page .built-art{width:100%;height:auto}
 .page .field{grid-template-columns:minmax(0,1fr)}.page .field .copy,.page .field-drawing,.page .field-render{grid-column:1;grid-row:auto}
 .page .contact{padding:30px 22px;display:flex;flex-direction:column;align-items:stretch}.page .email{width:100%;margin:0;padding-inline:10px;gap:8px}
 .page footer{padding:24px 22px;display:flex;flex-direction:column;align-items:flex-start}.page footer div{margin:0}
}

/* V19: gate / site hero and larger kitchen field elevation. */
.page .hero.gate-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:34px 4%;padding:48px 6%;overflow:hidden}
.page .gate-hero .drive-underlay{position:absolute;z-index:-1;right:0;top:0;width:78%;height:100%;object-fit:contain;opacity:.13;pointer-events:none}
.page .gate-hero .hero-copy{position:relative;grid-column:1;grid-row:1;align-self:start;padding-top:20px}
.page .gate-hero h1{font-size:clamp(38px,4.3vw,66px);line-height:1.03}
.page .gate-hero .hero-copy>p{line-height:1.55}
.page .gate-artwork{grid-column:2;grid-row:1;min-width:0;align-self:center}
.page .gate-artwork figure{margin:0;min-width:0}
.page .gate-artwork img{display:block;width:100%;height:auto;filter:invert(1);mix-blend-mode:screen}
.page .gate-artwork a{display:block}
.page .gate-artwork figcaption{font-size:9px;letter-spacing:.14em;line-height:1.6;margin-top:10px;color:#d8c7b5}
.page .gate-detail-row{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:18px;align-items:end;margin-top:24px}
.page .gate-hero .site-note{font-size:9px;line-height:1.6;letter-spacing:.13em;color:#d8c7b5;margin:0 0 8px;border-top:1px solid #946850;padding-top:12px}
.page .gate-hero .site-note span{display:block;font-size:11px;letter-spacing:0;line-height:1.5;margin-top:8px}
.page .field.field-survey{grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:28px 4%;align-items:start}
.page .field-survey .copy{grid-column:1;grid-row:1}
.page .field-survey .kitchen-survey{position:static;inset:auto;width:100%;grid-column:2;grid-row:1 / span 2;margin:0;align-self:center}
.page .kitchen-survey img{display:block;width:100%;height:auto;object-fit:contain}
.page .field-survey .field-render{grid-column:1;grid-row:2;width:100%;margin:0;align-self:end}
.page .field-survey figcaption{white-space:normal;font-size:9px;line-height:1.7}
.page .kitchen-survey figcaption a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){
 .page .hero.gate-hero{grid-template-columns:minmax(0,1fr)}
 .page .gate-hero .hero-copy{grid-column:1;grid-row:1;max-width:650px;padding:0}
 .page .gate-artwork{grid-column:1;grid-row:2;width:100%;max-width:850px;justify-self:center}
 .page .gate-hero .drive-underlay{width:100%;height:75%;top:auto;bottom:0}
 .page .field.field-survey{grid-template-columns:minmax(0,1fr)}
 .page .field-survey .copy{grid-column:1;grid-row:1;max-width:650px}
 .page .field-survey .kitchen-survey{grid-column:1;grid-row:2;width:100%;max-width:900px;justify-self:center}
 .page .field-survey .field-render{grid-column:1;grid-row:3;max-width:480px;justify-self:end}
}
@media(max-width:700px){
 .page .hero.gate-hero{padding:32px 6%}
 .page .gate-detail-row{grid-template-columns:minmax(0,1fr);gap:22px}
 .page .gate-connection{max-width:430px;width:100%;justify-self:end}
 .page .gate-hero .site-note{max-width:260px}
 .page .gate-artwork figcaption{font-size:8px}
}

/* V20: page palette, overall display elevation and installation coordination. */
.home-page .email-copy-row input,.home-page .email-copy-row button{color:#263b32}
.page .brand-mark{object-fit:contain}
.page .display-package>.copy{grid-column:1 / -1;grid-row:1;max-width:750px}
.page .display-package>.copy ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
.page .display-gallery{grid-column:1 / -1;grid-row:2;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:4%;align-items:center;width:100%;min-width:0}
.page .display-gallery figure{position:static;grid-column:auto;grid-row:auto;min-width:0;width:100%;margin:0}
.page .display-gallery img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.page .display-gallery figcaption{font-family:Arial,sans-serif;font-size:9px;line-height:1.7;letter-spacing:.12em;margin-top:14px;color:#6b715f}
.page .display-gallery figcaption a{text-decoration:underline;text-underline-offset:3px}
.page .display-package>.built{grid-row:3}
.page .installation-support{padding:42px 6%;border-top:1px solid #dfe0d8;background:#f6f4ee}
.page .installation-intro{max-width:760px}
.page .installation-support h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(34px,3.5vw,54px);line-height:1.03;margin:14px 0 20px;letter-spacing:-.035em}
.page .installation-support p{font-family:Arial,sans-serif;font-size:14px;line-height:1.6;color:#565851}
.page .installation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:30px}
.page .installation-grid article{min-width:0;border-top:1px solid #c9c4b8;padding-top:12px}
.page .installation-grid img{display:block;width:100%;height:auto;margin-bottom:24px}
.page .installation-grid .eyebrow{font-family:Arial,sans-serif;font-size:9px;line-height:1.6;letter-spacing:.16em;color:#92543e}
.page .installation-grid h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:26px;line-height:1.1;letter-spacing:-.025em;margin:12px 0}
.page .installation-support .installation-note{font-size:11px;line-height:1.6;margin:30px 0 0;color:#6b715f}
@media(max-width:700px){
 .page .display-gallery{grid-template-columns:minmax(0,1fr);gap:30px}
 .page .display-overall{max-width:480px;justify-self:center}
 .page .installation-grid{grid-template-columns:minmax(0,1fr);gap:30px}
 .page .installation-grid img{max-width:460px;margin:0 auto 24px}
 .page .installation-support{padding:32px 6%}
}
