:root{--green:#285137;--ink:#233e2c;--orange:#ef761b;--paper:#f3f5f0;--line:#d4dbd1;--muted:#586454;--gutter:clamp(20px,4.8vw,76px)}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:130px}
body{margin:0;color:var(--ink);background:white;font:17px/1.5 Barlow,Arial,sans-serif}
button,input,textarea{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{cursor:pointer;color:inherit;border:0;background:none}
a{color:inherit;text-decoration:none}
a,button,input,textarea{scroll-margin-top:140px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #c44c00;outline-offset:5px}
h1:focus,h2:focus,main:focus{outline:none}
img{display:block;max-width:100%}
svg{flex-shrink:0;vertical-align:middle}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:600;line-height:1.08;letter-spacing:-.025em}
h1{font-size:clamp(44px,5.4vw,80px)}
h2{font-size:clamp(32px,3.4vw,50px)}
h3{font-size:27px}
p{max-width:74ch}
input,textarea{width:100%;min-width:0;border:1px solid #97a58f;background:white;border-radius:3px;padding:12px 14px;color:var(--ink)}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{color:#657260;opacity:1}
[hidden]{display:none!important}
.wrap{max-width:1600px;margin-inline:auto;padding-inline:var(--gutter)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip-link{position:fixed;top:-90px;left:20px;background:white;z-index:50;padding:16px}
.skip-link:focus{top:12px}
.topline{padding:8px var(--gutter);background:var(--green);color:white;display:flex;justify-content:space-between;font-size:13px}
.header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:15px var(--gutter);gap:28px;background:#fffffff9;border-bottom:1px solid var(--line)}
.brand{display:block;flex-shrink:0}
.brand img{width:161px;height:66px;object-fit:contain}
.header nav{display:flex;align-items:center;gap:36px}
.header nav>a{min-height:46px;display:flex;gap:10px;align-items:center;font-weight:500;position:relative}
.header nav>a:not(.nav-query):after{content:'';height:2px;background:var(--orange);position:absolute;bottom:2px;left:0;right:0;transform:scaleX(0);transition:transform .18s}
.header nav>a:hover:after,.header nav>a[aria-current]:after{transform:scaleX(1)}
.header nav .nav-query{border:1px solid var(--green);border-radius:5px;padding:10px 17px;margin-left:12px}
.count{display:inline-flex;justify-content:center;align-items:center;min-width:25px;height:25px;border-radius:50%;background:var(--green);color:white;font-size:13px;font-weight:600;padding:0 7px}
.menu-toggle{display:none}
.button{display:inline-flex;align-items:center;justify-content:center;gap:21px;min-height:54px;padding:14px 23px;border-radius:5px;font-size:17px;font-weight:600;transition:background .18s,transform .18s}
.button:hover{transform:translateY(-2px)}
.primary{background:var(--orange);color:#1e311f}
.primary:hover{background:#f48a36}
.outline{border:1px solid var(--green)}
.outline:hover{background:#e8eee5}
.light{background:white;color:var(--ink)}
.light:hover{background:#e6ede1}
.text-link{font-weight:500;display:inline-flex;gap:10px;align-items:center;text-decoration:underline;text-underline-offset:5px;min-height:44px}
.section-kicker{font-size:15px;font-weight:500;display:block;margin-bottom:17px;color:var(--muted)}

.hero{padding-top:48px;padding-bottom:50px;display:grid;grid-template-columns:.98fr 1.02fr;gap:40px;min-height:670px;align-items:center}
.hero-place{font-size:16px;margin-bottom:25px;font-weight:500}
.hero h1{line-height:1.02;letter-spacing:-.035em}
.hero-description{font-size:19px;line-height:1.55;max-width:390px;margin-top:28px;color:var(--muted)}
.hero-actions{display:flex;align-items:center;gap:27px;margin-top:31px;flex-wrap:wrap}
.hero-foot{display:flex;align-items:center;gap:12px;margin-top:43px;font-size:14px;color:var(--muted)}
.mini-line{width:28px;height:3px;background:var(--orange);flex-shrink:0}
.material-scene{background:var(--paper);padding:23px 30px 17px;position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0;overflow:hidden}
.scene-label{display:flex;justify-content:space-between;font-size:14px;margin-bottom:12px}
.scene-label>span:last-child{font-size:22px;line-height:20px}
.hero-board{position:relative;display:block}
.hero-board>img{width:100%;height:370px;object-fit:cover;mix-blend-mode:multiply}
.hero-board>span{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;padding:12px 17px;background:var(--green);color:white;font-size:16px;font-weight:600}
.hero-board>span>span{display:flex;gap:14px;align-items:center;font-size:13px;font-weight:400}
.hero-samples{display:flex;justify-content:flex-end;gap:10px;padding:18px 0 12px}
.hero-samples img{width:71px;height:88px;object-fit:cover;box-shadow:3px 3px 0 #c1ad8d,5px 6px 8px #0002}
.scene-credit{font-size:11px;color:#53604d;max-width:none;text-align:right}
.family-strip{display:flex;background:var(--paper);padding:0 var(--gutter);border-block:1px solid var(--line);justify-content:space-between;gap:25px}
.family-strip>a{display:flex;align-items:center;gap:28px;min-height:75px;font-size:18px;font-weight:500}
.family-strip>a:hover{color:#a33e05}
.family-strip svg{width:19px}
.home-catalog{padding-top:88px;padding-bottom:76px}
.section-head{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:35px}
.section-head h2{max-width:650px}
.section-head>p{color:var(--muted);font-size:16px;flex-shrink:0}
.featured{display:grid;grid-template-columns:1.15fr 1fr;gap:25px;min-height:442px}
.feature-main{background:#dfe7d9;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden}
.feature-photo{height:100%;position:relative;padding:40px 0 40px 30px}
.feature-photo>img:first-child{height:100%;width:80%;object-fit:cover}
.feature-photo>img+img{position:absolute;right:20px;bottom:62px;width:49%;height:65%;object-fit:cover;box-shadow:6px 7px 0 #b49a73}
.feature-main>div+div{padding:30px 24px 30px 15px}
.feature-main span,.feature-side span{font-size:14px;display:block;margin-bottom:18px}
.feature-main h3,.feature-side h3{font-size:clamp(29px,2.8vw,42px);margin-bottom:24px}
.feature-main p{font-size:15px;margin-bottom:23px}
.feature-side{position:relative;overflow:hidden;background:#dae0d2;min-height:440px}
.feature-side>img{width:100%;height:100%;object-fit:cover;filter:brightness(.69)}
.feature-side>div{position:absolute;bottom:0;left:0;right:0;padding:32px;color:white;background:linear-gradient(transparent,#142018c7)}
.feature-side p{display:flex;align-items:center;gap:20px}
.feature-side h3{margin-bottom:15px}
.catalog-foot{display:flex;justify-content:space-between;gap:32px;align-items:center;margin-top:28px}
.catalog-foot p{color:var(--muted);font-size:13px}
.catalog-foot>a:not(.button){font-size:15px;display:flex;gap:10px;align-items:center;text-decoration:underline;text-underline-offset:4px}

.services{padding:70px var(--gutter);background:var(--green);color:white;display:grid;grid-template-columns:1fr 1.2fr;gap:100px}
.services .section-kicker{color:#d7e6ce}
.service-intro>p{max-width:350px;font-size:18px;color:#d7e6ce;margin:25px 0 30px}
.service-list article{display:flex;gap:30px;padding:29px 0;border-bottom:1px solid #73916c}
.service-list article:first-child{padding-top:0}
.service-list article>svg{width:34px;height:34px;margin-top:3px}
.service-list h3{font-size:31px;margin-bottom:15px}
.service-list p{max-width:470px;color:#d7e6ce}
.service-list a{display:inline-flex;align-items:center;gap:15px;border-bottom:1px solid #9bad91;margin-top:20px;min-height:44px;font-size:15px}
.location{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:50px;padding-top:80px;padding-bottom:80px}
.location-title>svg{width:30px;height:30px;margin-bottom:17px}
.location h2{font-size:43px}
.location-title p{font-size:16px;color:var(--muted);margin-top:20px}
.address,.contact{padding-top:20px}
.address>span,.contact>span{font-size:13px;color:var(--muted)}
.address h3{margin-top:20px;font-size:30px;margin-bottom:15px}
.address p,.contact p{font-size:16px;color:var(--muted)}
.address>a,.contact>a{display:inline-flex;gap:10px;align-items:center;border-bottom:1px solid #8e9d86;min-height:44px;font-size:15px;margin-top:19px}
.contact .phone{font-size:25px;font-weight:500;color:var(--ink);margin:21px 0 16px}
.socials{display:flex;gap:20px;font-size:13px;margin-top:20px}
.footer{border-top:1px solid var(--line);padding:35px var(--gutter);display:grid;grid-template-columns:.75fr 1.4fr 1fr;gap:30px;align-items:center;background:var(--paper)}
.footer p{font-size:14px;color:var(--muted)}
.footer>a:not(.brand){justify-self:end;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.footer-note{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px;font-size:12px;color:var(--muted)}

.catalog-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;background:var(--paper);max-width:none;padding-top:54px;padding-bottom:48px}
.catalog-heading h1{font-size:clamp(42px,4vw,60px)}
.catalog-heading>p{font-size:17px;color:var(--muted);flex-shrink:0;padding-bottom:4px}
.catalog{padding-top:35px;padding-bottom:70px}
.catalog-tools{display:flex;align-items:center;gap:30px;justify-content:space-between}
.search{display:flex;align-items:center;width:58%;border:1px solid #97a58f;padding-left:17px;border-radius:4px}
.search input{border:0;min-height:52px;background:none}
.search:focus-within{outline:3px solid #c44c00;outline-offset:3px}
.search input:focus-visible{outline:none}
.selection-link{display:flex;gap:14px;align-items:center;min-height:48px;font-size:15px;font-weight:500}
.family-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}
.family-filters button{min-height:46px;padding:10px 19px;border:1px solid var(--line);border-radius:30px;font-size:15px;transition:background .18s}
.family-filters button:hover{background:var(--paper)}
.family-filters button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:white}
.results-meta{display:flex;justify-content:space-between;align-items:center;min-height:70px;gap:15px}
.results-meta p{font-size:14px;color:var(--muted)}
.clear-filters{font-size:14px;text-decoration:underline;min-height:44px;padding:10px}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 25px}
.material-card{min-width:0;border-bottom:1px solid var(--line);padding-bottom:19px;display:flex;flex-direction:column}
.material-image{height:270px;display:block;position:relative;background:var(--paper);overflow:hidden;border-radius:3px}
.material-image>img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.material-image:hover>img:first-child{transform:scale(1.035)}
.material-image.contain>img{object-fit:contain;mix-blend-mode:multiply;padding:32px}
.material-image.melamine-image>img:first-child{width:63%;height:88%;position:absolute;top:6%;left:10%;box-shadow:5px 5px 0 #b49a73}
.material-image>img.sample{position:absolute;width:29%;height:61%;right:7%;top:27%;left:auto;object-fit:cover;box-shadow:4px 4px 0 #b49a73}
.material-image>img.sample-b{width:23%;height:49%;top:12%;right:4%}
.image-open{position:absolute;left:13px;bottom:12px;background:#fffffff2;padding:7px 10px;border-radius:3px;display:flex;gap:12px;align-items:center;font-size:12px}
.image-open svg{width:16px;height:16px}
.material-body{padding:18px 0 0;display:flex;flex-direction:column;flex:1}
.material-family{font-size:12px;color:var(--muted);margin-bottom:8px}
.material-body h3{font-size:27px;margin-bottom:12px}
.material-body h3 a:hover{text-decoration:underline;text-underline-offset:5px}
.material-body>p:not(.material-family){font-size:16px;color:var(--muted);max-width:34ch;margin-bottom:20px}
.card-bottom{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px}
.card-bottom>span{font-size:12px;color:var(--muted)}
.add-button{display:flex;gap:7px;align-items:center;min-height:44px;padding:10px 8px;font-size:13px;font-weight:600;border:1px solid var(--green);border-radius:4px;white-space:nowrap}
.add-button svg{width:16px;height:16px}
.add-button:hover{background:var(--paper)}
.is-added{background:#e3eddd;color:var(--ink);border-color:#a7b79e}
.help-strip{margin-top:65px;display:flex;justify-content:space-between;gap:30px;padding:32px;background:var(--paper);align-items:center}
.help-strip h2{font-size:30px;margin-bottom:9px}
.help-strip p{font-size:16px;color:var(--muted)}
.empty-results{grid-column:1/-1;background:var(--paper);padding:55px 30px;text-align:center}
.empty-results h2{font-size:32px}
.empty-results p{margin:20px auto;color:var(--muted)}
.empty-results>a{display:block;text-decoration:underline;margin-top:20px;font-size:15px}

.detail-wrap{padding-top:25px;padding-bottom:70px}
.back-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:15px;margin-bottom:25px}
.detail{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center}
.detail-figure{background:var(--paper);min-width:0}
.detail-figure>img{width:100%;height:460px;object-fit:cover}
.detail-figure.contain>img{object-fit:contain;padding:55px;mix-blend-mode:multiply}
.detail-figure figcaption{padding:12px 18px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}
.detail-copy h1{font-size:clamp(40px,4.8vw,65px)}
.detail-short{font-size:23px;margin-top:18px}
.detail-intro{font-size:18px;color:var(--muted);margin-top:20px;max-width:44ch}
.uses{display:flex;gap:8px;margin:22px 0}
.uses span{font-size:13px;border:1px solid #9cac93;border-radius:30px;padding:4px 12px}
.detail-query{display:flex;align-items:center;gap:13px;margin-top:17px;min-height:44px;font-size:15px}
.detail-information{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;margin-top:65px}
.detail-information h2{font-size:32px}
.detail-information dl{margin:25px 0 0}
.detail-information dl>div{border-top:1px solid var(--line);padding:20px 0;display:grid;grid-template-columns:.7fr 1.4fr;gap:20px}
.detail-information dt{font-size:15px;font-weight:600}
.detail-information dd{font-size:16px;color:var(--muted);margin:0}
.source-detail{border-block:1px solid var(--line);font-size:14px}
.source-detail summary{cursor:pointer;min-height:50px;padding:14px 0;font-weight:500}
.source-detail p{padding-bottom:14px;font-size:13px;color:var(--muted)}
.source-detail a{text-decoration:underline;text-underline-offset:4px}
.ask-panel{align-self:start;background:#e5eddf;padding:35px}
.ask-panel>span{font-size:13px}
.ask-panel h2{margin-top:20px;font-size:36px}
.ask-panel ul{padding-left:19px;margin:25px 0}
.ask-panel li{font-size:17px;margin-bottom:13px;padding-left:5px}
.ask-panel>p{font-size:14px;color:var(--muted);margin-bottom:17px}
.ask-panel>a{font-weight:500;display:inline-flex;gap:12px;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:6px}
.detail-next{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:30px;margin-top:55px;gap:20px}
.detail-next h2{font-size:30px}

.query-heading{background:var(--paper);padding-top:45px;padding-bottom:40px;max-width:none}
.query-heading h1{font-size:clamp(42px,4.4vw,64px)}
.query-heading>p:last-child{margin-top:22px;color:var(--muted);font-size:18px}
.query-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:65px;padding-top:40px;padding-bottom:70px;align-items:start}
.query-section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.query-section-title h2{font-size:28px;display:flex;align-items:center;gap:13px}
.query-section-title>a{font-size:14px;min-height:44px;display:flex;align-items:center;gap:9px}
.query-item{padding:23px 0;border-bottom:1px solid var(--line)}
.query-item-head{display:flex;gap:17px;align-items:center}
.query-item-head>img{width:64px;height:64px;object-fit:cover;background:var(--paper);border-radius:4px}
.query-item-head>div{flex:1}
.query-item-head span{font-size:12px;color:var(--muted)}
.query-item-head h2{font-size:23px;margin-top:4px}
.query-item-head h2 a:hover{text-decoration:underline}
.remove{font-size:13px;text-decoration:underline;padding:10px 0 10px 14px;min-height:44px}
.item-fields{display:grid;grid-template-columns:.65fr 1fr;gap:18px;margin-top:20px}
.item-fields label{font-size:14px;font-weight:500}
.item-fields label>span,.project-field label>span{font-size:13px;font-weight:400;color:var(--muted)}
.item-fields input,.item-fields textarea{display:block;font-size:15px;margin-top:7px}
.item-fields input{min-height:50px}
.item-fields textarea{min-height:80px}
.project-field{margin-top:35px}
.project-field label{font-size:22px;font-weight:500;display:block;line-height:1.35}
.project-field p{font-size:15px;color:var(--muted);margin:10px 0 15px}
.project-field textarea{font-size:16px}
.project-field small{font-size:12px;color:var(--muted);display:block;margin-top:10px}
.summary-panel{background:#e5eddf;padding:33px;position:sticky;top:122px}
.summary-panel>span{font-size:13px}
.summary-panel h2{font-size:39px;margin-top:17px}
.summary-panel>p{font-size:16px;color:var(--muted);margin-top:20px}
.summary-panel #summary-info{display:flex;align-items:center;gap:18px;border-block:1px solid #b7c8ab;padding:20px 0;margin:25px 0}
.summary-total{font-size:42px;line-height:1;font-weight:500}
.summary-panel #summary-info>span+span{font-size:15px}
.summary-panel #summary-info small{font-size:12px;color:var(--muted)}
.summary-panel .button{width:100%;gap:15px}
.summary-panel .demo-notice{font-size:12px;margin-top:17px}
.summary-panel #summary-output{border-top:1px solid #b7c8ab;padding-top:22px;margin-top:24px}
.summary-panel #summary-output label{font-size:15px;font-weight:500}
.summary-panel #summary-text{display:block;font-size:14px;line-height:1.5;margin:10px 0 15px;min-height:260px}
.summary-panel #copy-feedback{font-size:13px;margin-top:12px}
.general-empty{padding:30px;background:var(--paper);margin-top:22px}
.general-empty h2{font-size:28px}
.general-empty p{font-size:16px;color:var(--muted);margin:18px 0}
.source-page{padding-top:55px;padding-bottom:65px;max-width:1000px}
.source-page h1{font-size:60px}
.source-page h2{font-size:28px;margin:35px 0 15px}
.source-page p{color:var(--muted);margin-bottom:20px}
.source-page .lead{font-size:23px;margin-top:25px}
.source-page li{padding:8px 0;font-size:16px}
.source-page li a{text-decoration:underline;text-underline-offset:5px}
.source-page .button{margin-top:15px}
.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,15px);opacity:0;pointer-events:none;z-index:40;background:var(--green);color:white;box-shadow:0 5px 24px #0002;padding:13px 22px;border-radius:5px;max-width:calc(100% - 32px);width:max-content;font-size:15px;transition:opacity .2s,transform .2s}
.toast.visible{opacity:1;transform:translate(-50%,0)}
.no-script{margin:50px;padding:20px;background:var(--paper)}

@media(max-width:1150px){.header nav{gap:25px}
.hero{gap:27px;min-height:620px}
.hero h1{font-size:66px}
.hero-board>img{height:310px}
.hero-description{font-size:18px}
.hero-actions{gap:13px}
.hero-foot{margin-top:30px;font-size:12px}
.material-scene{padding-inline:20px}
.family-strip{gap:14px;flex-wrap:wrap;justify-content:flex-start;padding-block:9px}
.family-strip>a{font-size:15px;min-height:44px;gap:12px;margin-right:16px}
.section-head{align-items:start;flex-direction:column;gap:15px}
.section-head>p br{display:none}
.services{gap:50px}
.location{gap:30px}
.location h2{font-size:37px}
.location h3{font-size:26px}
.contact .phone{font-size:21px}
.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.material-image{height:290px}
.catalog-heading{align-items:start;flex-direction:column;gap:24px}
.catalog-heading>p br{display:none}
.detail,.detail-information,.query-layout{gap:35px}
.query-layout{grid-template-columns:1.2fr 1fr}
.summary-panel{padding:25px}
.summary-panel h2{font-size:34px}
.item-fields{grid-template-columns:1fr}
}

@media(max-width:800px){:root{--gutter:28px}
.topline{font-size:12px}
.topline>span:first-child{display:none}
.topline>span:last-child{margin:auto}
.header{padding-block:11px;gap:15px}
.brand img{width:130px;height:54px}
.header nav{gap:17px;font-size:15px}
.header nav .nav-query{padding:8px 11px;margin:0}
.hero{min-height:0;padding-top:38px;padding-bottom:38px;gap:25px}
.hero h1{font-size:52px}
.hero-place{font-size:13px;margin-bottom:20px}
.hero-description{font-size:16px;margin-top:24px}
.hero-actions{margin-top:24px}
.hero-actions .button{font-size:15px;padding:12px 17px;gap:12px}
.hero-actions .text-link{font-size:14px}
.hero-foot{font-size:12px;line-height:1.4}
.hero-board>img{height:290px}
.material-scene{padding:16px 15px}
.scene-label{font-size:11px}
.scene-credit{font-size:10px;line-height:1.4}
.hero-samples{gap:8px;padding-top:16px}
.hero-samples img{width:52px;height:70px}
.hero-board>span{padding:9px;font-size:13px}
.hero-board>span>span{font-size:11px;gap:5px}
.hero-board svg{width:16px}
.home-catalog{padding-top:56px;padding-bottom:50px}
.section-head h2{font-size:37px}
.featured{gap:20px;grid-template-columns:1fr 1fr;min-height:375px}
.feature-main{grid-template-columns:1fr}
.feature-photo{display:none}
.feature-main>div+div{padding:35px}
.feature-main h3,.feature-side h3{font-size:34px}
.feature-side{min-height:375px}
.feature-side>div{padding:25px}
.feature-side>img{height:375px}
.catalog-foot{gap:20px}
.catalog-foot .button{font-size:14px;gap:10px;white-space:nowrap}
.services{gap:35px;padding-block:50px}
.services h2{font-size:40px}
.service-list article{gap:15px}
.service-list article>svg{width:26px;height:26px}
.service-list h3{font-size:27px}
.service-list p,.service-intro>p{font-size:16px}
.service-intro .button{font-size:15px;padding-inline:14px;gap:10px}
.location{grid-template-columns:1fr 1fr;padding-block:55px;gap:32px}
.location-title{grid-column:1/-1}
.location-title h2 br{display:none}
.location-title>svg{float:left;margin:5px 15px 0 0}
.location-title p{margin-top:15px}
.address,.contact{padding-top:0}
.footer{grid-template-columns:1fr 1fr;gap:22px}
.footer>a:not(.brand){justify-self:start}
.footer p{font-size:13px}
.catalog-heading{padding-top:38px;padding-bottom:35px}
.catalog-heading h1{font-size:43px}
.catalog-tools{gap:20px}
.search{width:65%}
.search input{font-size:15px}
.selection-link{font-size:13px;gap:8px}
.family-filters button{padding:9px 15px;font-size:14px}
.catalog-grid{gap:32px 22px}
.material-image{height:235px}
.material-body h3{font-size:25px}
.material-body>p:not(.material-family){font-size:15px}
.card-bottom{flex-wrap:wrap;gap:10px}
.help-strip{padding:25px;align-items:start;flex-direction:column;gap:20px}
.help-strip h2{font-size:28px}
.detail,.detail-information{grid-template-columns:1fr 1fr;gap:28px}
.detail-figure>img{height:380px}
.detail-copy h1{font-size:40px}
.detail-copy .section-kicker{font-size:12px}
.detail-short{font-size:20px;margin-top:16px}
.detail-intro{font-size:16px}
.detail-copy .button{font-size:15px;padding-inline:13px;gap:10px}
.detail-information dl>div{grid-template-columns:1fr;gap:9px}
.ask-panel{padding:25px}
.ask-panel h2{font-size:31px}
.ask-panel li{font-size:16px}
.query-layout{grid-template-columns:1fr}
.summary-panel{position:static;max-width:none;padding:30px}
.summary-panel h2 br{display:none}
.summary-panel h2{font-size:37px}
.summary-panel .button{max-width:380px}
.item-fields{grid-template-columns:.7fr 1fr}
.summary-panel #summary-output{max-width:650px}
.summary-panel #summary-text{min-height:270px}
.summary-panel #summary-info{max-width:400px}
}

@media(max-width:600px){:root{--gutter:20px}
html{scroll-padding-top:105px}
.header{padding-block:10px;position:sticky}
.header .brand img{width:120px;height:50px}
.menu-toggle{display:flex;min-height:46px;align-items:center;gap:12px;border:1px solid var(--line);border-radius:4px;padding:8px 12px;font-size:15px}
.menu-toggle span{font-size:17px}
.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:12px 20px 22px;border-bottom:1px solid var(--line);box-shadow:0 12px 16px #233e2c15;gap:0}
.header nav.open{display:flex;flex-direction:column;align-items:stretch}
.header nav>a{font-size:17px;min-height:52px;border-bottom:1px solid var(--line);justify-content:space-between}
.header nav .nav-query{margin:12px 0 0;padding:12px 15px}
.hero{grid-template-columns:1fr;padding-top:31px;padding-bottom:29px;gap:30px}
.hero h1{font-size:60px;line-height:1.01}
.hero h1 br:first-child{display:none}
.hero-place{font-size:13px;margin-bottom:18px}
.hero-description{margin-top:22px;max-width:34ch;font-size:17px}
.hero-actions{gap:17px;margin-top:23px}
.hero-actions .button{font-size:16px;min-height:52px;padding-inline:19px}
.hero-actions .text-link{font-size:14px}
.hero-foot{margin-top:23px;font-size:12px;max-width:34ch}
.material-scene{padding:15px 18px 12px}
.scene-label{font-size:12px;margin-bottom:0}
.hero-board>img{height:255px;object-position:50% 45%}
.hero-samples{position:absolute;right:20px;bottom:60px;padding:0;gap:7px}
.hero-samples img{width:45px;height:58px}
.hero-board>span{padding:10px 13px;font-size:14px}
.hero-board>span>span{font-size:12px;gap:12px}
.scene-credit{margin-top:13px;font-size:10px;text-align:left}
.family-strip{gap:0;padding:10px 20px;display:grid;grid-template-columns:1fr 1fr}
.family-strip>a{font-size:14px;gap:8px;margin:0;justify-content:space-between;padding:5px 12px 5px 0;min-height:44px}
.family-strip>a:nth-child(even){padding-left:10px}
.family-strip>a:last-child{grid-column:1/-1;border-top:1px solid var(--line);padding-right:12px}
.family-strip svg{width:17px}
.home-catalog{padding-top:45px;padding-bottom:43px}
.section-kicker{font-size:13px;margin-bottom:14px}
.section-head{gap:14px;margin-bottom:25px}
.section-head h2{font-size:37px}
.section-head>p{font-size:16px;max-width:32ch}
.featured{grid-template-columns:1fr;gap:20px}
.feature-main{grid-template-columns:.9fr 1.1fr;min-height:320px}
.feature-photo{display:block;padding:30px 0 30px 20px}
.feature-photo>img:first-child{width:78%}
.feature-photo>img+img{right:10px;bottom:50px;width:55%;height:60%}
.feature-main>div+div{padding:28px 18px 28px 13px}
.feature-main h3{font-size:31px;margin-bottom:20px}
.feature-main span{font-size:12px;margin-bottom:18px}
.feature-main p{font-size:13px}
.feature-side{min-height:350px}
.feature-side>img{height:350px}
.feature-side>div{padding:27px}
.feature-side h3{font-size:36px}
.feature-side span{font-size:13px}
.feature-side p{font-size:14px}
.catalog-foot{flex-direction:column;align-items:start;gap:18px}
.catalog-foot p{font-size:12px}
.catalog-foot p br{display:none}
.catalog-foot .button{font-size:15px;padding-inline:19px}
.services{grid-template-columns:1fr;padding:42px 20px;gap:38px}
.service-intro h2{font-size:44px}
.service-intro>p{max-width:32ch;margin:20px 0 23px;font-size:17px}
.service-intro .button{font-size:16px;padding-inline:19px;gap:15px}
.service-list article{gap:20px;padding-block:26px}
.service-list h3{font-size:29px}
.service-list p{font-size:16px}
.service-list a{font-size:14px}
.location{padding-block:42px;grid-template-columns:1fr;gap:30px}
.location-title{grid-column:auto}
.location-title>svg{float:none;margin:0 0 15px}
.location h2{font-size:42px}
.location-title h2 br{display:block}
.location-title p{margin-top:15px;font-size:15px}
.address,.contact{border-top:1px solid var(--line);padding-top:23px}
.address h3{margin-top:15px;font-size:29px}
.address a,.contact>a{font-size:15px;margin-top:15px}
.contact .phone{font-size:27px;margin-top:15px}
.socials{font-size:14px}
.footer{padding:27px 20px;grid-template-columns:1fr;gap:20px}
.footer .brand img{width:120px;height:50px}
.footer-note{padding-top:17px;font-size:11px}
.catalog-heading{padding-top:32px;padding-bottom:30px;gap:20px}
.catalog-heading h1{font-size:43px;line-height:1.06}
.catalog-heading h1 br{display:none}
.catalog-heading>p{font-size:16px;max-width:32ch}
.catalog{padding-top:25px;padding-bottom:45px}
.catalog-tools{flex-direction:column;align-items:stretch;gap:12px}
.search{width:100%;padding-left:13px}
.search input{padding:12px 9px;font-size:14px}
.search svg{width:20px}
.selection-link{font-size:14px;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:7px;min-height:45px}
.family-filters{margin-top:20px;gap:8px}
.family-filters button{font-size:13px;padding:8px 12px;min-height:44px}
.results-meta{min-height:65px}
.results-meta p{font-size:12px}
.clear-filters{font-size:12px;padding:8px 0}
.catalog-grid{grid-template-columns:1fr;gap:30px}
.material-image{height:285px}
.material-body{padding-top:17px}
.material-body h3{font-size:29px}
.material-body>p:not(.material-family){font-size:16px;margin-bottom:20px;max-width:35ch}
.card-bottom{flex-wrap:nowrap}
.add-button{font-size:13px;padding:10px 9px}
.help-strip{margin-top:40px;padding:25px 22px}
.help-strip h2{font-size:30px}
.help-strip p{font-size:16px}
.help-strip .button{font-size:15px;padding-inline:18px;gap:15px}
.empty-results{padding:35px 20px}
.empty-results h2{font-size:29px}
.detail-wrap{padding-top:16px;padding-bottom:42px}
.back-link{font-size:14px;margin-bottom:16px}
.detail{display:flex;flex-direction:column;gap:26px;align-items:stretch}
.detail-figure>img{height:320px}
.detail-figure.contain>img{padding:35px}
.detail-figure figcaption{font-size:11px;padding:10px 13px}
.detail-copy h1{font-size:43px}
.detail-copy .section-kicker{font-size:13px}
.detail-short{font-size:23px;margin-top:15px}
.detail-intro{font-size:17px;margin-top:20px}
.detail-copy .button{width:100%;font-size:17px;gap:16px}
.detail-query{font-size:15px;justify-content:center;margin-top:15px}
.detail-information{grid-template-columns:1fr;margin-top:40px;gap:32px}
.detail-information h2{font-size:30px}
.detail-information dl>div{padding-block:18px;gap:10px}
.ask-panel{padding:28px 25px}
.ask-panel h2{font-size:33px;margin-top:17px}
.ask-panel li{font-size:16px}
.source-detail summary{font-size:14px}
.detail-next{flex-direction:column;align-items:start;gap:20px;margin-top:35px;padding-top:25px}
.detail-next h2{font-size:30px}
.query-heading{padding-top:31px;padding-bottom:30px}
.query-heading h1{font-size:45px}
.query-heading>p:last-child{font-size:17px;margin-top:20px}
.query-heading>p:last-child br{display:none}
.query-layout{padding-top:25px;padding-bottom:43px;gap:32px}
.query-section-title{gap:8px;padding-bottom:15px}
.query-section-title h2{font-size:25px;gap:9px}
.query-section-title>a{font-size:12px;gap:4px}
.query-section-title svg{width:17px}
.query-item-head{gap:12px}
.query-item-head>img{width:53px;height:58px}
.query-item-head h2{font-size:21px}
.query-item-head span{font-size:11px}
.remove{font-size:12px;padding-left:7px}
.item-fields{grid-template-columns:1fr;gap:17px}
.item-fields textarea{min-height:84px}
.project-field{margin-top:28px}
.project-field label{font-size:24px}
.project-field label span{display:block;margin-top:6px}
.summary-panel{padding:28px 24px}
.summary-panel h2{font-size:36px}
.summary-panel h2 br{display:block}
.summary-panel .button{padding-inline:16px;font-size:16px}
.general-empty{padding:25px 22px}
.general-empty h2{font-size:29px}
.source-page{padding-top:30px;padding-bottom:40px}
.source-page h1{font-size:45px}
.source-page .lead{font-size:21px}
.source-page h2{font-size:28px}
.source-page li{font-size:14px;overflow-wrap:anywhere}
.toast{font-size:13px;padding:12px 17px;bottom:15px;max-width:calc(100% - 24px)}
}

@media(max-width:360px){.hero h1{font-size:52px}
.hero-actions{gap:12px}
.hero-actions .button{padding-inline:15px;font-size:15px}
.hero-actions .text-link{font-size:13px}
.hero-board>img{height:225px}
.scene-label{font-size:11px}
.hero-samples img{width:38px;height:49px}
.feature-main{min-height:300px;grid-template-columns:.85fr 1.15fr}
.feature-main h3{font-size:28px}
.feature-main p{font-size:12px}
.catalog-heading h1{font-size:38px}
.material-image{height:245px}
.card-bottom{flex-wrap:wrap}
.material-body h3{font-size:28px}
.query-section-title h2{font-size:23px}
.query-section-title>a{font-size:11px}
.query-item-head h2{font-size:19px}
.query-item-head>img{width:45px;height:52px}
.query-heading h1{font-size:40px}
.detail-copy h1{font-size:39px}
.detail-figure>img{height:275px}
.family-filters{gap:7px}
.family-filters button{padding-inline:10px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{transition:none!important;animation:none!important}
.button:hover,.material-image:hover>img:first-child{transform:none}
}


.catalog-scope{font-size:13px;color:var(--muted);margin:-5px 0 20px}
.socials a,.footer>a:not(.brand),.source-detail a{display:inline-flex;align-items:center;min-height:44px}
.source-page li a{display:inline-block;min-height:44px;padding-block:10px}

/* Refinamiento 19/10: titulares compuestos por escala; Barlow conserva la interfaz. */
h1,h2,h3{font-family:Archivo,Arial,sans-serif;font-stretch:normal;font-weight:700;letter-spacing:-.035em;line-height:1.13}
.hero h1{font-size:clamp(54px,5vw,72px);font-weight:800;line-height:1.04;letter-spacing:-.045em}
.hero h1 br{display:initial}
.hero-description{max-width:39ch}
.section-head h2{font-size:clamp(32px,3vw,43px);max-width:700px}
.catalog-heading h1{font-size:clamp(39px,3.5vw,51px);line-height:1.15}
.detail-copy h1{font-size:clamp(38px,4.1vw,58px);line-height:1.12}
.material-body h3{font-size:25px;letter-spacing:-.03em;line-height:1.16}
.feature-main h3,.feature-side h3{font-size:clamp(28px,2.55vw,37px);line-height:1.15}
.service-intro h2{font-size:clamp(37px,3.4vw,49px)}
.service-list h3{font-size:29px}
.location h2{font-size:40px}
.address h3{font-size:28px}
.ask-panel h2{font-size:32px;line-height:1.2}
.detail-information h2,.detail-next h2{font-size:29px}
.query-heading h1{font-size:clamp(40px,4vw,57px)}
.summary-panel h2{font-size:35px;line-height:1.16}
.query-section-title h2,.query-item-head h2{font-family:Barlow,Arial,sans-serif;font-weight:600;letter-spacing:-.02em}
.family-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding-block:0}
.family-strip>a{justify-content:center;min-height:74px;padding:15px 20px;margin:0;text-align:center;font-size:17px;border-right:1px solid var(--line)}
.family-strip>a:first-child{border-left:1px solid var(--line)}
.family-strip>a:hover{background:#e5eddf;color:var(--ink)}
.feature-main p,.feature-side p,.detail-query{ text-decoration:underline;text-underline-offset:5px }
.external-tag{font:11px/1.3 Barlow,Arial,sans-serif;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:2px 5px;margin-left:8px;text-decoration:none;display:inline-block}
.source-detail .external-link{flex-wrap:wrap;gap:4px}
.whatsapp-link{display:inline-flex;align-items:center;gap:11px;min-height:48px;font-size:15px;font-weight:500;border:1px solid var(--green);padding:10px 13px;border-radius:4px;color:var(--green)}
.whatsapp-link svg{width:22px;height:22px;flex-shrink:0}
.whatsapp-link:hover{background:#e5eddf}
.service-list .whatsapp-link{background:white;color:var(--green);border:0;padding:12px 15px;margin-top:22px}
.service-list .whatsapp-link:hover{background:#e5eddf}
.contact .whatsapp-link{margin-top:0;text-decoration:none}
.socials{gap:8px;flex-wrap:wrap;margin-top:13px}
.socials a{gap:9px;min-width:44px;min-height:44px;padding:8px 10px;font-size:14px}
.socials a:hover{background:var(--paper)}
.socials svg{width:21px;height:21px}
.location-map{grid-column:1/-1;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--paper)}
.location-map iframe{display:block;width:100%;height:380px;border:0}
.location-map figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:13px;padding:12px 18px}
.location-map figcaption a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.query-intent{border-left:3px solid var(--orange);padding:15px 17px;background:var(--paper);margin-bottom:25px;display:flex;gap:16px;align-items:center;justify-content:space-between}
.query-intent strong{font-size:17px;font-weight:600}
.query-intent p{font-size:14px;margin:6px 0 0}
.query-intent button{min-height:44px;font-size:13px;text-decoration:underline;flex-shrink:0}
.footer-nav{display:grid;grid-template-columns:repeat(2,auto);gap:8px 24px;justify-content:end;font-size:15px}
.footer-nav a{min-height:44px;display:flex;align-items:center;padding:6px 8px}
.footer-nav a:hover{background:#e5eddf;text-decoration:underline;text-underline-offset:4px}
.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:15px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:14px}
.footer-bottom>a{min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:5px}
.footer-bottom button{display:inline-flex;align-items:center;gap:10px;padding:10px;min-height:44px}
.footer .footer-note{border:0;padding-top:0}
@media(max-width:1150px){.hero h1{font-size:58px}.family-strip>a{padding:15px 12px;font-size:15px}.location{column-gap:30px}.contact .whatsapp-link{font-size:14px;padding:10px;gap:8px}.socials a{padding-inline:4px}.material-body h3{font-size:25px}}
@media(max-width:800px){.hero h1{font-size:45px}.hero-description{font-size:16px}.catalog-heading h1{font-size:40px}.detail-copy h1{font-size:38px}.family-strip>a{font-size:14px;padding-inline:9px}.feature-main h3,.feature-side h3{font-size:31px}.footer-nav{justify-content:start}.location-title h2 br{display:initial}.location-map iframe{height:350px}}
@media(max-width:600px){.hero h1{font-size:48px;line-height:1.08;letter-spacing:-.045em}.hero h1 br:first-child{display:initial}.hero-description{font-size:17px}.hero-actions{gap:17px}.hero-actions .button{font-size:16px}.section-head h2{font-size:33px}.catalog-heading h1{font-size:35px;line-height:1.17}.detail-copy h1{font-size:38px;line-height:1.15}.query-heading h1{font-size:37px}.family-strip{grid-template-columns:1fr 1fr;gap:8px;padding:16px 20px}.family-strip>a,.family-strip>a:first-child,.family-strip>a:nth-child(even){background:white;border:1px solid var(--line);border-radius:3px;justify-content:flex-start;text-align:left;min-height:54px;padding:12px;font-size:15px}.family-strip>a:last-child{grid-column:1/-1}.feature-main h3{font-size:27px}.feature-side h3{font-size:32px}.service-intro h2{font-size:39px}.location h2{font-size:37px}.address h3{font-size:28px}.contact .whatsapp-link{font-size:15px;padding:12px 14px}.socials a{padding:9px 12px}.location-map iframe{height:315px}.location-map figcaption{flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px}.location{row-gap:28px}.query-intent{align-items:flex-start;flex-direction:column;gap:7px}.query-intent button{padding:8px 0}.footer-nav{grid-template-columns:repeat(2,1fr);width:100%;gap:8px}.footer-nav a{padding:10px 0}.footer-bottom{gap:12px;flex-wrap:wrap}.summary-panel h2{font-size:32px}}
@media(max-width:360px){.hero h1{font-size:42px}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-actions .text-link{font-size:14px}.catalog-heading h1{font-size:31px}.detail-copy h1{font-size:34px}.material-body h3{font-size:24px}.feature-main h3{font-size:24px}.query-heading h1{font-size:33px}.family-strip>a{font-size:14px}.footer-bottom{font-size:13px}.summary-panel h2{font-size:29px}}
