/*
Theme Name: MLM Forge
Theme URI: https://mountainlaurelmetalworks.com
Author: Mountain Laurel Metalworks
Description: Art-forward custom theme for Mountain Laurel Metalworks. Dark gallery look ("Forge").
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.9
Requires PHP: 7.4
Text Domain: mlm-forge
*/

*{box-sizing:border-box;margin:0;padding:0}
img{display:block;max-width:100%}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}
body{line-height:1.6;-webkit-font-smoothing:antialiased;background:#0d0d10;color:#cfcdc8;font-family:'Inter',system-ui,sans-serif}
a{color:inherit}
h1,h2,.brand,.split-body h3,.gsec h2,.ghead h1{font-family:'Cormorant Garamond',Georgia,serif;color:#f3f1ea;font-weight:600}

/* nav */
.nav{position:sticky;top:0;z-index:20;background:rgba(13,13,16,.82);backdrop-filter:blur(10px);border-bottom:1px solid #20201f}
.navwrap{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:#f3f1ea}
.brandmark{height:44px;width:44px;border-radius:50%;flex:none}
.brandtext{display:flex;flex-direction:column;line-height:1;font-weight:700;letter-spacing:.02em}
.brandtext em{font-style:normal;font-weight:500;font-size:.6em;letter-spacing:.3em;text-transform:uppercase;margin-top:6px;color:#b8884e;font-family:'Inter',sans-serif}
.links a{text-decoration:none;margin-left:28px;font-size:.84rem;letter-spacing:.04em;text-transform:uppercase;color:#b6b4ad}
.links a:hover{color:#d9a567}

/* generic */
section{padding:7vw 0}
.kicker{font-weight:600;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:14px;color:#b8884e}
h2{font-size:clamp(1.8rem,3.6vw,2.9rem);line-height:1.1;letter-spacing:-.01em;margin-bottom:18px}
.btn{display:inline-block;text-decoration:none;padding:14px 26px;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;background:#c8924c;color:#11110e;border:1px solid #c8924c}
.btn.ghost{background:transparent;color:#e7e4dc;border:1px solid #4a4944}
.cta{display:flex;gap:14px;flex-wrap:wrap}

/* hero */
.hero{min-height:88vh;display:flex;align-items:flex-end;background-image:linear-gradient(rgba(10,10,12,.34),rgba(10,10,12,.72)),var(--bg);background-size:cover;background-position:center}
.hero-inner{padding-bottom:8vh}
.eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;margin-bottom:18px;color:#b8884e}
h1{font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.04;letter-spacing:-.01em}
.lede{max-width:600px;margin:22px 0 30px;font-size:1.12rem;color:#b6b4ad}

/* statement */
.statement{padding:9vw 0;background:linear-gradient(180deg,#100d09,#0d0d10);border-top:1px solid #1c1c20;border-bottom:1px solid #1c1c20}
.statement h2{max-width:16ch;margin-bottom:26px}
.statement .big{font-size:clamp(1.12rem,1.8vw,1.45rem);max-width:760px;margin-bottom:20px;line-height:1.55;color:#d7d4cc}
.statement .big:first-of-type{color:#f1efe8}

/* feature */
.feature{border-top:1px solid #1c1c20}
.feat-grid .feat-text p{max-width:640px;font-size:1.08rem}
.phaserow{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.phaserow img{aspect-ratio:3/4;object-fit:cover;width:100%}
.phaserow figcaption{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;margin-top:10px;color:#9b988f}

/* signs grid */
.gallery-sec{background:#0a0a0c}
.sechead{margin-bottom:34px;max-width:640px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:240px;gap:16px}
.grid figure{position:relative;overflow:hidden}
.grid img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.grid figure:hover img{transform:scale(1.05)}
.g-lg{grid-column:span 2;grid-row:span 2}
.grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:14px 16px;font-size:.78rem;background:linear-gradient(transparent,rgba(8,8,10,.92));color:#e8e5dd}

/* split */
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.split-card{min-height:420px;display:flex;align-items:flex-end;background-image:linear-gradient(rgba(10,10,12,.15),rgba(10,10,12,.82)),var(--img);background-size:cover;background-position:center;outline:1px solid #1f1f22}
.split-body{padding:32px}
.split-body h3{font-size:1.6rem;margin-bottom:10px;color:#f3f1ea}

/* furniture */
.furn{background:#101013}
.furn-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.furn-grid>img{width:100%;aspect-ratio:4/3;object-fit:cover}
.flange-inline{width:100%;aspect-ratio:16/9;object-fit:cover;margin-top:24px}

/* contact */
.contact{text-align:center;background:radial-gradient(120% 140% at 50% 0,#17130d,#0d0d10)}
.contact .cta{justify-content:center;margin-top:24px}
.addr{margin-top:24px;font-size:.86rem;letter-spacing:.04em;color:#9b988f}

/* footer */
.foot{padding:40px 0;font-size:.8rem;letter-spacing:.04em;color:#6f6d67;border-top:1px solid #1c1c20}
.footwrap{display:flex;align-items:center;gap:18px}
.footlogo{height:56px;width:56px;border-radius:50%;flex:none}
.foot a{color:#b8884e;text-decoration:none}

/* gallery page */
.ghead{padding:7vw 0 2vw}
.ghead h1{font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.05}
.ghead p{color:#b6b4ad;max-width:620px;margin-top:16px;font-size:1.08rem}
.gsec{padding:3.4vw 0;border-top:1px solid #1a1a1d}
.gsec h2{font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:24px}
.masonry{column-count:4;column-gap:16px}
.masonry figure{break-inside:avoid;margin:0 0 16px;overflow:hidden;background:#161619;cursor:zoom-in}
.masonry img{width:100%;transition:transform .5s,opacity .3s;opacity:.94}
.masonry figure:hover img{transform:scale(1.04);opacity:1}
.lb{position:fixed;inset:0;background:rgba(6,6,8,.94);display:none;align-items:center;justify-content:center;z-index:50;cursor:zoom-out;padding:30px}
.lb.open{display:flex}
.lb img{max-width:94vw;max-height:92vh;box-shadow:0 20px 60px rgba(0,0,0,.6)}

@media(max-width:1000px){.masonry{column-count:3}}
@media(max-width:820px){.feat-grid,.split-grid,.furn-grid{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.g-lg{grid-column:span 2}.links{display:none}}
@media(max-width:680px){.masonry{column-count:2}}
