/* Home only: the administration continues to use site.css. */
:root { --paper:#f7f5f0; --paper-2:#ede9e0; --accent:#875334; --accent-dark:#704229; --orange:#875334; --orange-light:#e3b994; font-family:"Segoe UI",Arial,sans-serif; }
.site-header { background:#f7f5f0f5; padding-inline:max(24px,calc((100vw - 1320px)/2)); }
.hero { display:grid; grid-template-columns:1fr 1fr; min-height:650px; margin:24px auto 0; width:min(1440px,calc(100% - 48px)); background:#eae5db; overflow:hidden; }
.hero-media { inset:0 0 0 auto; width:51%; object-position:60% center; }
.hero-overlay { display:none; }
.hero-content { margin:0; padding:76px clamp(28px,4vw,64px) 110px; width:100%; color:var(--ink); }
.hero h1 { font-size:clamp(3rem,4.7vw,5rem); line-height:1.02; letter-spacing:-.055em; margin:30px 0; }
.hero h1 em { color:var(--accent); }
.hero p { color:#55564f; font-size:1.05rem; }
.hero .eyebrow { color:var(--accent-dark); font-size:.7rem; letter-spacing:.15em; }
.hero-actions { gap:18px; align-items:center; }
.hero .button-light { padding:8px 0; border:0; border-bottom:1px solid #aaa094; background:transparent; color:var(--ink); }
.hero-caption { position:absolute; right:26px; bottom:20px; max-width:45%; padding:14px 18px; background:#f7f5f0ed; color:var(--ink)!important; font-weight:600; font-size:.82rem!important; }
.hero-caption span { display:block; font-weight:400; font-size:.72rem; margin-top:2px; }
.home-strip { max-width:1320px; margin:auto; padding:26px 24px; display:flex; justify-content:space-between; gap:22px; border-bottom:1px solid var(--line); font-size:.8rem; color:var(--muted); }
.home-strip a { color:var(--accent-dark); text-underline-offset:5px; }
.section,.services { max-width:1440px; margin-inline:auto; }
.intro { padding-bottom:46px; }
h2 { font-size:clamp(2.2rem,3.7vw,3.6rem); font-weight:500; }
.services { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
.services article { background:transparent; border:0; }
.services article:hover { transform:none; box-shadow:none; }
.services img { aspect-ratio:16/10; }
.services .service-body { padding:22px 0 10px; display:grid; grid-template-columns:36px 1fr; column-gap:12px; }
.services b { grid-row:1/3; padding-top:2px; }
.services h3 { font-size:1.45rem; font-weight:500; }
.services p { grid-column:2; }
.craft { max-width:1440px; margin:auto; background:var(--paper-2); color:var(--ink); }
.craft-copy > p { color:var(--muted); }
.craft-copy .eyebrow,.craft-copy li::before { color:var(--accent); }
.craft-copy li { border-color:var(--line); }
.steps article { border-top:1px solid var(--line); }
.steps h3 { font-weight:500; }
.showroom-carousel { background:transparent; }
.carousel-card { box-shadow:none; }
.contact { background:var(--paper-2); }
.contact-form { box-shadow:none; }
.location { gap:clamp(30px,5vw,80px); }
.map-card { border:1px solid var(--line); box-shadow:none; }
.button:active { transform:translateY(1px); }
.craft>img { width:100%; height:100%; object-fit:cover; min-height:360px; }
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(24px,5vw,72px); margin-top:36px; }
.contact-grid iframe { border:0; max-width:100%; margin-top:24px; }
@media(max-width:800px) { .contact-grid { grid-template-columns:1fr; } .craft>img { min-height:260px; } }
@media(min-width:1700px) { .hero { min-height:720px; } }
@media(max-width:1000px) { .hero { grid-template-columns:1fr; min-height:0; } .hero-content { padding:52px 32px; max-width:640px; } .hero-media { position:relative; grid-row:2; width:100%; height:380px; } .hero-caption { bottom:18px; max-width:80%; } .hero h1 { font-size:clamp(3rem,7vw,4.5rem); } .home-strip { flex-wrap:wrap; } }
@media(max-width:600px) { .hero { width:calc(100% - 24px); margin-top:12px; } .hero-content { padding:36px 22px 42px; } .hero h1 { font-size:2.9rem; } .hero-media { height:280px; } .home-strip { display:grid; grid-template-columns:1fr 1fr; gap:14px; font-size:.72rem; } .services { grid-template-columns:1fr; gap:24px; } .hero-caption { right:12px; font-size:.74rem!important; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; } }
