:root{--bg:#f0eee4;--text:#263128;--accent:#68745b;--muted:#c8bda3;--surface:#fbfaf4;--radius:0px;--heading:Georgia, 'Times New Roman', serif;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}img{display:block;width:100%;object-fit:cover}a{color:inherit}h1,h2{font-family:var(--heading);line-height:1.08;margin:0 0 .65em}h1{font-size:clamp(2.5rem,7vw,6.6rem);letter-spacing:-.045em}h2{font-size:clamp(1.45rem,3vw,2.5rem)}p{margin:.45em 0 1.1em}main{min-height:65vh}.site-header{max-width:1460px;margin:auto;padding:1.25rem 3vw;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid color-mix(in srgb,var(--text) 18%,transparent)}.brand{font:700 1.35rem var(--heading);text-decoration:none;letter-spacing:-.03em}.site-header nav{display:flex;gap:clamp(.8rem,2.5vw,2.2rem);flex-wrap:wrap}.site-header nav a,.site-footer a{text-underline-offset:4px}.hero{max-width:1460px;margin:auto;padding:clamp(3rem,8vw,8rem) 3vw;display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(2rem,6vw,7rem);align-items:center}.hero-copy{max-width:790px}.hero-media{height:min(68vh,760px);border-radius:var(--radius)}.eyebrow,.kicker{font-size:.76rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--accent)}.lead{font-size:clamp(1.1rem,1.8vw,1.45rem);max-width:720px}.button{display:inline-block;background:var(--accent);color:var(--surface);padding:.85rem 1.2rem;border-radius:var(--radius);text-decoration:none;font-weight:700}.section-head,.page-intro{max-width:1100px;margin:auto;padding:clamp(3rem,8vw,7rem) 3vw 2rem}.card-grid,.catalog-grid{max-width:1460px;margin:auto;padding:0 3vw 6rem;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2vw,2.2rem)}.catalog-grid{grid-template-columns:repeat(4,1fr)}.feature-card,.catalog-card{background:var(--surface);padding:1rem;border-radius:var(--radius)}.feature-card .card-media,.catalog-card .card-media{height:280px;margin-bottom:1.25rem;border-radius:calc(var(--radius) * .75)}.catalog-card .card-media{height:230px}.text-link,.catalog-card a{font-weight:750;text-underline-offset:5px}.split-note{max-width:1460px;margin:0 auto 6rem;padding:clamp(2rem,6vw,5rem);background:var(--text);color:var(--bg);display:flex;justify-content:space-between;gap:2rem;border-radius:var(--radius)}.split-note div{display:flex;flex-direction:column;gap:.75rem;font-size:1.15rem}.detail{max-width:1460px;margin:auto;padding:clamp(3rem,8vw,8rem) 3vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,7rem)}.detail-copy{position:sticky;top:2rem;align-self:start}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.gallery img{height:380px;border-radius:var(--radius)}.contact-panel,.legal{max-width:900px;margin:0 auto 7rem;padding:clamp(2rem,5vw,4rem);background:var(--surface);border-radius:var(--radius)}.contact-mail{font:700 clamp(1.4rem,4vw,3rem) var(--heading);overflow-wrap:anywhere}.legal h1{font-size:clamp(2.4rem,6vw,5rem)}.legal h2{margin-top:2rem}.site-footer{max-width:1460px;margin:auto;padding:3rem 3vw;display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;border-top:1px solid color-mix(in srgb,var(--text) 18%,transparent)}.site-footer nav{display:flex;flex-direction:column;gap:.6rem}
.theme-natural-journal .site-header{border-bottom-style:dashed}.theme-natural-journal .hero{grid-template-columns:.8fr 1.2fr}.theme-natural-journal .feature-card{padding:0;background:transparent}.theme-soft-studio .hero-media{box-shadow:22px 22px 0 var(--muted)}.theme-soft-studio .feature-card{border:2px solid var(--muted)}.theme-lab-grid{background-image:linear-gradient(color-mix(in srgb,var(--accent) 9%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--accent) 9%,transparent) 1px,transparent 1px);background-size:42px 42px}.theme-lab-grid .feature-card{border-top:5px solid var(--accent)}.theme-architectural .hero{min-height:78vh}.theme-architectural .feature-card,.theme-architectural .catalog-card{border:1px solid var(--muted)}
@media(max-width:950px){.hero,.detail{grid-template-columns:1fr}.detail-copy{position:static}.card-grid,.catalog-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.site-header{align-items:flex-start;flex-direction:column}.site-header nav{font-size:.9rem}.hero{padding-top:3rem}.hero-media{height:52vh}.card-grid,.catalog-grid,.gallery,.site-footer{grid-template-columns:1fr}.gallery img{height:300px}.split-note{margin-left:3vw;margin-right:3vw;flex-direction:column}}
