:root{--ink:#111315;--charcoal:#1a1c1e;--steel:#a7a9ac;--copper:#b87333;--stone:#e8e5df;--paper:#f7f5f0;--white:#fff;--max:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Inter,Arial,sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}
.site-header{height:80px;padding:0 max(20px,calc((100% - var(--max))/2));display:flex;align-items:center;gap:28px;background:#121416f2;color:#fff;position:fixed;inset:0 0 auto;z-index:10;border-bottom:1px solid #ffffff1f;backdrop-filter:blur(10px)}
.brand{display:flex;align-items:center;gap:10px;line-height:1}
.brand .mark{width:39px;height:44px;fill:var(--steel)}
.brand .copper{fill:var(--copper)}
.brand strong{display:block;font-size:18px;letter-spacing:.12em}
.brand small{display:block;font-size:10px;color:var(--copper);letter-spacing:.45em;margin-top:5px}
.site-header nav{display:flex;gap:24px;margin-left:auto}
.site-header nav a{font-size:13px;color:#ddd}
.site-header nav a:hover{color:#fff}
.header-phone{font-weight:700;font-size:13px}
.button{display:inline-flex;align-items:center;justify-content:center;background:var(--copper);color:white;border:0;padding:16px 24px;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.11em;cursor:pointer;transition:.2s}
.button:hover{background:#cf8544;transform:translateY(-1px)}
.button.small{padding:12px 17px}
.menu{display:none}
.hero{height:min(860px,92vh);min-height:680px;position:relative;color:#fff;display:flex;align-items:center;overflow:hidden}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0b0d0fe8 0%,#0b0d0fb8 34%,#0b0d0f25 75%),linear-gradient(0deg,#090a0bcc,transparent 40%)}
.hero-copy{position:relative;padding-top:85px}
.eyebrow{color:var(--copper);text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:800;margin:0 0 18px}
.hero h1,.section h2,.dark-section h2,.split-copy h2,.estimate h2,.faq h2{font-family:Impact,"Arial Narrow",sans-serif;text-transform:uppercase;letter-spacing:.025em;line-height:.95;margin:0}
.hero h1{font-size:clamp(55px,7.7vw,104px);max-width:850px}
.hero h1 span,.split-copy h2 span{color:var(--copper)}
.lede{font-size:18px;max-width:620px;color:#d5d5d5;margin:28px 0}
.hero-actions{display:flex;align-items:center;gap:28px}
.text-link{font-weight:700}
.hero-band{position:absolute;left:50%;transform:translateX(-50%);bottom:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff47}
.hero-band span{text-align:center;padding:25px;border-right:1px solid #ffffff30;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.14em}
.hero-band span:last-child{border:0}
.section{padding:110px 0}
.intro{display:grid;grid-template-columns:1.2fr .8fr;gap:100px;align-items:end}
.section h2,.dark-section h2,.split-copy h2,.estimate h2,.faq h2{font-size:clamp(42px,5vw,72px)}
.intro>p{font-size:18px;color:#53565a;margin:0}
.cards{display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:110px}
.cards article{padding:32px;border:1px solid #d1cec7;border-right:0;min-height:310px}
.cards article:last-child{border-right:1px solid #d1cec7}
.cards span{color:var(--copper);font-size:12px;font-weight:800}
.cards h3,.material-grid h3,.steps h3{font-size:21px;text-transform:uppercase;margin:55px 0 10px}
.cards p,.material-grid p,.steps p{color:#666;font-size:14px}
.cards a{display:block;margin-top:25px;font-size:13px;font-weight:800;color:var(--copper)}
.dark-section{background:var(--charcoal);color:#fff;padding:110px 0}
.material-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#ffffff1f;margin-top:60px}
.material-grid article{background:var(--charcoal);padding:30px 26px}
.pickets{height:80px;display:block;border-bottom:4px solid var(--copper);background:repeating-linear-gradient(90deg,transparent 0 13px,var(--steel) 13px 18px,transparent 18px 29px);opacity:.9}
.pickets.wood{background:repeating-linear-gradient(90deg,transparent 0 8px,#86664d 8px 26px,transparent 26px 31px)}
.pickets.vinyl{background:repeating-linear-gradient(90deg,transparent 0 8px,#e9e9e9 8px 28px,transparent 28px 32px)}
.pickets.chain{background:repeating-linear-gradient(45deg,transparent 0 9px,#8c8f91 10px 12px),repeating-linear-gradient(-45deg,transparent 0 9px,#8c8f91 10px 12px)}
.pickets.utility{background:repeating-linear-gradient(0deg,transparent 0 20px,#9b6f4f 20px 25px)}
.material-grid h3{margin:22px 0 8px}
.material-grid p{color:#aaa}
.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:65px}
.steps article{border-top:3px solid #c9c6bf;padding:28px 28px 0 0;margin-right:30px;position:relative}
.steps b{position:absolute;right:0;top:-24px;background:var(--paper);padding-left:8px;color:var(--copper);font-size:14px}
.steps h3{margin:8px 0}
.split-section{display:grid;grid-template-columns:1fr 1fr;background:#dcd8d0}
.split-copy{padding:110px max(40px,calc((100vw - var(--max))/2)) 110px max(40px,calc((100vw - var(--max))/2));padding-right:70px}
.split-copy p:not(.eyebrow){color:#555;max-width:600px}
.split-copy ul{list-style:none;padding:0;margin-top:30px}
.split-copy li{padding:12px 0;border-bottom:1px solid #bbb;font-weight:700}
.split-copy li:before{content:"◆";color:var(--copper);margin-right:12px}
.ridge-art{position:relative;min-height:600px;background:linear-gradient(#383c40,#16191c);overflow:hidden}
.sun{position:absolute;width:260px;height:260px;border-radius:50%;background:#b8733360;right:18%;top:15%}
.mountain{position:absolute;bottom:110px;width:0;height:0;border-left:370px solid transparent;border-right:370px solid transparent;border-bottom:360px solid #2a2e31}
.mountain.one{left:-150px}
.mountain.two{right:-200px;border-bottom-color:#202326;transform:scale(.8)}
.fence-line{position:absolute;inset:auto 0 0;height:180px;border-top:7px solid #b87333;background:repeating-linear-gradient(90deg,transparent 0 27px,#0e1012 27px 40px)}
.estimate{background:#101214;color:#fff;padding:110px 0}
.estimate-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}
.estimate p{color:#aaa}
.contact-lines{display:flex;flex-direction:column;margin:35px 0;font-size:20px;font-weight:800}
.contact-lines a{margin:4px 0}
.estimate form{display:grid;gap:16px}
.estimate label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#bbb}
.estimate input,.estimate select,.estimate textarea{display:block;width:100%;margin-top:7px;padding:15px;border:1px solid #515357;background:#1e2124;color:#fff;font:inherit}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.estimate form .button{justify-self:start}
.form-note{font-size:12px;margin:0}
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}
.accordions details{border-top:1px solid #c9c6bf;padding:22px 0}
.accordions details:last-child{border-bottom:1px solid #c9c6bf}
.accordions summary{font-weight:800;cursor:pointer}
.accordions p{color:#666}
footer{background:#0b0d0f;color:#ccc;padding:60px 0 25px}
.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center}
.footer-grid>p{text-align:center}
.footer-grid>div:last-child{display:flex;flex-direction:column;text-align:right}
.legal{display:flex;justify-content:space-between;border-top:1px solid #ffffff1f;margin-top:45px;padding-top:20px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#777}
@media(max-width:1000px){.site-header nav,.header-phone{display:none}
.site-header .button{margin-left:auto}
.cards{grid-template-columns:1fr 1fr}
.cards article:nth-child(2){border-right:1px solid #d1cec7}
.material-grid{grid-template-columns:repeat(3,1fr)}
.estimate-grid,.faq{gap:50px}
.split-copy{padding:80px 40px}
}
@media(max-width:700px){.wrap{width:min(100% - 28px,var(--max))}
.site-header{height:68px;padding:0 14px;gap:10px}
.site-header .button{display:none}
.menu{display:block;margin-left:auto;background:transparent;color:white;border:1px solid #555;padding:8px}
.site-header.open nav{display:flex;position:absolute;top:68px;left:0;right:0;background:#121416;flex-direction:column;padding:25px}
.brand strong{font-size:15px}
.hero{min-height:700px;height:92vh}
.hero-shade{background:linear-gradient(90deg,#0b0d0fe8,#0b0d0f66),linear-gradient(0deg,#090a0be8,transparent)}
.hero h1{font-size:52px}
.hero-band{grid-template-columns:1fr 1fr}
.hero-band span{padding:15px}
.intro,.estimate-grid,.faq,.split-section{grid-template-columns:1fr;gap:35px}
.section,.dark-section,.estimate{padding:75px 0}
.cards{grid-template-columns:1fr;padding-bottom:75px}
.cards article,.cards article:nth-child(2){border:1px solid #d1cec7;border-bottom:0;min-height:auto}
.cards article:last-child{border-bottom:1px solid #d1cec7}
.cards h3{margin-top:25px}
.material-grid{grid-template-columns:1fr}
.steps{grid-template-columns:1fr 1fr;gap:35px 10px}
.split-copy{padding:75px 20px}
.ridge-art{min-height:380px}
.form-row{grid-template-columns:1fr}
.footer-grid{grid-template-columns:1fr;gap:25px;text-align:center}
.footer-grid .brand{justify-content:center}
.footer-grid>div:last-child{text-align:center}
.legal{flex-direction:column;gap:8px;text-align:center}
.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}
}

/* Iron Ridge approved brand system */
:root{--ink:#101214;--charcoal:#1a1c1e;--steel:#a7a9ac;--copper:#b87333;--stone:#e6e6e6;--paper:#f3f3f2}
.brand{display:flex;align-items:center;line-height:1}
.brand-logo{display:block;width:250px;height:66px;object-fit:contain;object-position:left center}
.brand .mark,.brand>span{display:none}
.hero h1,.section h2,.dark-section h2,.split-copy h2,.estimate h2,.faq h2{font-family:"Arial Narrow","Roboto Condensed",Impact,sans-serif;font-stretch:condensed;font-weight:900;letter-spacing:.015em}
.button{background:linear-gradient(180deg,#c17a3a,#9c5622);box-shadow:inset 0 1px 0 #ffffff24}
.button:hover{background:linear-gradient(180deg,#cf8746,#a95c25)}
.hero-band{grid-template-columns:repeat(5,1fr)}
.footer-grid>p{text-transform:uppercase;letter-spacing:.09em;font-size:13px}
.footer-brand .brand-logo{width:290px;height:100px}
@media(max-width:700px){.site-header .brand-logo{width:190px;height:54px}.hero-band{grid-template-columns:repeat(5,1fr);overflow-x:auto}.hero-band span{min-width:90px;font-size:11px}.footer-brand .brand-logo{width:270px;height:auto}}

.button.outline{background:transparent;border:1px solid #ffffff8c;box-shadow:none}.button.outline:hover{background:#ffffff12}.planning-section{background:var(--stone);padding:110px 0}.planning-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:start}.planning-grid h2,.start-options h2{font-family:"Arial Narrow","Roboto Condensed",Impact,sans-serif;font-weight:900;text-transform:uppercase;font-size:clamp(42px,5vw,72px);line-height:.95;margin:0 0 25px}.planning-grid>div>p:not(.eyebrow){font-size:17px;color:#56595c}.dark-link{display:inline-block;color:var(--copper);margin-top:22px}.planning-list{border-top:1px solid #bcbcbc}.planning-list article{display:grid;grid-template-columns:55px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid #bcbcbc}.planning-list b{color:var(--copper);font-size:13px}.planning-list h3{margin:0 0 4px;text-transform:uppercase;font-size:18px}.planning-list p{margin:0;color:#626568}.start-options{padding:100px 0;background:#24272a;color:white}.start-options>div>h2{max-width:850px}.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:45px}.option-grid article{background:#151719;padding:42px}.option-grid article:last-child{background:#2f3337}.option-grid span{color:var(--copper);text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800}.option-grid h3{font-size:28px;text-transform:uppercase;margin:18px 0 8px}.option-grid p{color:#b8b8b8;max-width:550px}.option-grid .button{margin-top:22px}.light-outline{border-color:var(--copper)!important;color:#fff}
@media(max-width:700px){.planning-section,.start-options{padding:75px 0}.planning-grid,.option-grid{grid-template-columns:1fr;gap:40px}.planning-grid{gap:45px}.option-grid{gap:2px}.option-grid article{padding:30px 24px}.hero-actions .button{width:100%}}
