:root{--background:#f5f1e8;--foreground:#27110f;--card:#fffdf7;--card-foreground:#27110f;--popover:#fff;--popover-foreground:#171717;--primary:#3b1315;--primary-foreground:#fff8e9;--secondary:#d7b56d;--secondary-foreground:#27110f;--muted:#f5f5f5;--muted-foreground:#737373;--accent:#f5f5f5;--accent-foreground:#171717;--destructive:#e7000b;--border:#e5e5e5;--input:#e5e5e5;--ring:#a1a1a1;--chart-1:#f54900;--chart-2:#009689;--chart-3:#104e64;--chart-4:#ffb900;--chart-5:#fe9a00;--radius:.25rem;--sidebar:#fafafa;--sidebar-foreground:#171717;--sidebar-primary:#171717;--sidebar-primary-foreground:#fafafa;--sidebar-accent:#f5f5f5;--sidebar-accent-foreground:#171717;--sidebar-border:#e5e5e5;--sidebar-ring:#a1a1a1}body{background:var(--background);color:var(--foreground);margin:0;font-family:Trebuchet MS,Arial,sans-serif;font-size:16px}html{scroll-behavior:smooth}*{box-sizing:border-box}a{color:inherit;text-decoration:none}.roost-portfolio-bar{color:#f7f1e7;letter-spacing:.12em;text-transform:uppercase;background:#132a35;justify-content:space-between;align-items:center;gap:1rem;min-height:36px;padding:0 clamp(1.25rem,4vw,4.5rem);font-size:.68rem;font-weight:800;display:flex}.roost-portfolio-bar a:hover{color:#d7b56d}.site-header{z-index:5;background:#fffdf7;border-bottom:1px solid #ddcfb5;justify-content:space-between;align-items:center;height:88px;padding:0 clamp(1.25rem,4vw,4.5rem);display:flex;position:relative}.brand{align-items:center;gap:.75rem;display:inline-flex}.brand img{object-fit:contain;width:205px;height:74px;display:block}.brand-mark{color:#d7b56d;border:1px solid #d7b56d;border-radius:50%;place-items:center;width:43px;height:43px;display:grid}.brand strong,.brand small{line-height:1;display:block}.brand strong{letter-spacing:.16em;font-family:Georgia,serif;font-size:1.28rem}.brand small{letter-spacing:.34em;color:#6e5647;margin-top:.35rem;font-size:.62rem}nav{gap:2rem;font-size:.92rem;display:flex}nav a:hover{color:#7d3331}.header-call{color:#fff8e9;background:#3b1315;align-items:center;gap:.5rem;padding:.8rem 1.05rem;font-weight:700;display:inline-flex}.hero{color:#fff;align-items:center;min-height:730px;display:flex;position:relative;overflow:hidden}.hero-image{background:url(/ferrum-hero.png) 50%/cover no-repeat;position:absolute;inset:0;transform:scale(1.01)}.hero-shade{background:linear-gradient(90deg,#1f0809f2 0%,#2b0e0fc2 38%,#19140b30 70%,#00000014 100%);position:absolute;inset:0}.hero-content{z-index:1;width:min(700px,90%);margin-left:clamp(1.25rem,8vw,8rem);padding:5rem 0;position:relative}.eyebrow,.section-kicker{color:#a97538;text-transform:uppercase;letter-spacing:.22em;margin:0 0 1rem;font-size:.78rem;font-weight:800}.eyebrow{color:#e3c37c}.hero h1,h2{font-family:Georgia,Times New Roman,serif;font-weight:400}.hero h1{letter-spacing:-.045em;margin:0;font-size:clamp(3.8rem,7vw,7.4rem);line-height:.9}.hero-copy{color:#eee6d8;max-width:570px;margin:1.7rem 0 2.2rem;font-size:1.18rem;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:.85rem;display:flex}.button{justify-content:center;align-items:center;gap:.6rem;min-height:52px;padding:.9rem 1.2rem;font-weight:800;display:inline-flex}.button-gold{color:#29100f;background:#d7b56d}.button-ghost{background:#ffffff0f;border:1px solid #ffffff80}.discount{color:#e6dcc7;align-items:center;gap:.6rem;margin-top:2rem;font-size:.92rem;display:flex}.hero-tag{z-index:2;text-transform:uppercase;letter-spacing:.16em;align-items:center;gap:.8rem;font-size:.68rem;display:flex;position:absolute;bottom:2.5rem;right:3rem}.hero-tag span{background:#d7b56d;width:34px;height:1px}.intro{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(3rem,8vw,8rem);padding:7rem clamp(1.25rem,8vw,8rem);display:grid}.intro h2,.section-heading h2,.community h2,.contact h2{letter-spacing:-.035em;margin:0;font-size:clamp(2.6rem,5vw,5rem);line-height:1.02}.intro-copy{color:#58433a;border-left:1px solid #bea778;padding-left:2.5rem;font-family:Georgia,serif;font-size:1.18rem;line-height:1.8}.services{color:#fff8e9;background:#321113;padding:7rem clamp(1.25rem,6vw,6rem)}.section-kicker.light{color:#d7b56d}.section-heading{grid-template-columns:1.35fr .65fr;align-items:end;gap:4rem;max-width:1220px;margin:0 auto 3.5rem;display:grid}.section-heading>p{color:#d1c2af;line-height:1.7}.service-grid{border-top:1px solid #795252;border-left:1px solid #795252;grid-template-columns:repeat(3,1fr);max-width:1220px;margin:auto;display:grid}.service-card{border-bottom:1px solid #795252;border-right:1px solid #795252;min-height:290px;padding:2rem;transition:background .2s,color .2s;position:relative}.service-card:hover{color:#28100f;background:#d7b56d}.service-card svg{color:#d7b56d;margin:2.5rem 0 1.4rem}.service-card:hover svg{color:#5b221e}.service-number{color:#b98c68;letter-spacing:.14em;font:.75rem Georgia,serif}.service-card h3{margin:0 0 .8rem;font:1.35rem Georgia,serif}.service-card p{color:#cdbeba;margin:0;font-size:.93rem;line-height:1.65}.service-card:hover p{color:#4b2a23}.yard-planner{color:#fff8e9;background:#3b1315;grid-template-columns:.72fr 1.28fr;align-items:start;gap:clamp(3rem,7vw,7rem);padding:7rem clamp(1.25rem,6vw,6rem);display:grid}.planner-intro{position:sticky;top:2rem}.planner-intro h2{letter-spacing:-.04em;margin:0;font:400 clamp(2.7rem,5vw,5.1rem)/.98 Georgia,serif}.planner-intro>p:not(.section-kicker){color:#d2c0b5;max-width:520px;line-height:1.8}.planner-progress{grid-template-columns:repeat(4,1fr);gap:.5rem;max-width:360px;margin-top:2.4rem;display:grid}.planner-progress span{background:#704446;height:3px;transition:background .25s}.planner-progress span.active{background:#d7b56d}.planner-intro>small{color:#ad8d83;text-transform:uppercase;letter-spacing:.15em;margin-top:.75rem;display:block}.planner-panel{color:#2a1010;background:#fffaf0;flex-direction:column;min-height:630px;padding:clamp(1.5rem,4vw,3.5rem);display:flex;box-shadow:0 24px 60px #14030447}.planner-step{flex:1}.step-label{text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:#8b4e3f!important;font-size:.72rem!important}.planner-step h3{margin:.7rem 0 .55rem;font:400 clamp(2rem,3.4vw,3.4rem)/1.08 Georgia,serif}.planner-step>p:not(.step-label){color:#765e53;margin:0 0 1.8rem}.planner-options{grid-template-columns:repeat(2,1fr);gap:.7rem;display:grid}.planner-options label{cursor:pointer;border:1px solid #d6c9b3;align-items:center;gap:.8rem;min-height:82px;padding:1rem;transition:border .18s,background .18s,transform .18s;display:flex}.planner-options label:hover{border-color:#9a6d50;transform:translateY(-1px)}.planner-options label.selected{background:#f2e7d2;border-color:#3b1315}.planner-options label>svg:last-child,.planner-options label>b{color:#7f342d;margin-left:auto}.planner-options label>span{flex:1}.planner-options label strong,.planner-options label small{display:block}.planner-options label strong{font-size:1rem}.planner-options label small{color:#826d61;margin-top:.28rem;line-height:1.4}.planner-options [data-slot=checkbox],.planner-options [data-slot=radio-group-item]{border-color:#9c806c;width:20px;height:20px}.planner-options [data-slot=checkbox][data-state=checked]{color:#fff8e9;background:#3b1315}.planner-options input{accent-color:#3b1315;flex:none;width:20px;height:20px}.notes-label{margin-top:1.3rem;font-weight:700;display:block}.notes-label>span{color:#967e72;margin-left:.4rem;font-size:.78rem;font-weight:400}.notes-label textarea{resize:vertical;color:#2a1010;width:100%;font:inherit;background:#fff;border:1px solid #d6c9b3;margin-top:.6rem;padding:.9rem}.notes-label textarea:focus{outline-offset:2px;outline:2px solid #d7b56d}.planner-controls{border-top:1px solid #ded1bd;justify-content:space-between;gap:.8rem;margin-top:2rem;padding-top:1.4rem;display:flex}.planner-controls button,.planner-text,.planner-restart{cursor:pointer;border:0;justify-content:center;align-items:center;gap:.5rem;min-height:50px;padding:.8rem 1.1rem;font:800 .92rem Trebuchet MS,Arial,sans-serif;display:inline-flex}.planner-back{color:#5b4540;background:0 0}.planner-back:disabled{opacity:0;pointer-events:none}.planner-next{color:#fff;background:#3b1315;margin-left:auto}.planner-next:disabled{opacity:.4;cursor:not-allowed}.result-check{color:#3b1315;background:#d7b56d;border-radius:50%;place-items:center;width:56px;height:56px;margin-bottom:1.3rem;display:grid}.planner-result dl{border-top:1px solid #d6c9b3;margin:2rem 0}.planner-result dl>div{border-bottom:1px solid #d6c9b3;grid-template-columns:120px 1fr;gap:1rem;padding:1rem 0;display:grid}.planner-result dt{color:#896f61;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}.planner-result dd{margin:0;font-weight:700;line-height:1.5}.planner-text{color:#fff;background:#3b1315;width:100%}.planner-restart{color:#6b5149;background:0 0;margin:.75rem auto 0;display:flex}.community{color:#f6f0df;background:#173322;grid-template-columns:1fr .75fr;align-items:center;gap:7rem;padding:7rem clamp(1.25rem,8vw,8rem);display:grid}.community-copy>p:not(.section-kicker){color:#c8d2c5;max-width:650px;font-size:1.05rem;line-height:1.8}.community-card{aspect-ratio:1.25;background:linear-gradient(145deg,#d7b56d1f,#0000);border:1px solid #657b68;flex-direction:column;justify-content:end;padding:3rem;display:flex}.community-card svg{color:#d7b56d;margin-bottom:auto}.community-card p{color:#d7b56d;text-transform:uppercase;letter-spacing:.16em;margin:0 0 .5rem;font-size:.72rem}.community-card strong{font:2rem/1.25 Georgia,serif}.contact{grid-template-columns:.9fr 1.1fr;gap:7rem;padding:7rem clamp(1.25rem,8vw,8rem);display:grid}.contact-lead>p:last-child{color:#6f5850;max-width:600px;line-height:1.8}.phone-list{border-top:1px solid #c8bba5}.phone-row{border-bottom:1px solid #c8bba5;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 0;display:flex}.phone-row small,.phone-row strong{display:block}.phone-row small{color:#8a6d58;text-transform:uppercase;letter-spacing:.16em;margin-bottom:.35rem;font-size:.68rem}.phone-row strong{font:1.35rem Georgia,serif}.phone-actions{gap:.5rem;display:flex}.phone-actions a{border:1px solid #a99376;align-items:center;gap:.35rem;padding:.65rem .8rem;font-size:.85rem;font-weight:700;display:flex}.phone-actions a:last-child{color:#fff;background:#3b1315;border-color:#3b1315}footer{color:#f4ead7;background:#1f0b0d;justify-content:space-between;align-items:center;gap:2rem;padding:2.5rem clamp(1.25rem,5vw,5rem);display:flex}.footer-logo{color:#d7b56d;flex-direction:column;align-items:center;gap:.35rem;display:inline-flex}.footer-crest{aspect-ratio:1.735;background:url(/ferrum-footer-crest.png) 50%/contain no-repeat;width:128px;transition:transform .2s,filter .2s;display:block}.footer-logo>span:last-child{letter-spacing:.16em;text-transform:uppercase;font-size:.67rem;font-weight:800}.footer-logo:hover .footer-crest{filter:brightness(1.08);transform:translateY(-3px)}.footer-logo:focus-visible{outline-offset:6px;outline:2px solid #d7b56d}footer>p{color:#a98f84;font-size:.8rem}footer>a:last-child{color:#d7b56d;align-items:center;gap:.4rem;font-weight:700;display:flex}.mobile-cta{display:none}@media (max-width:900px){nav,.header-call{display:none}.site-header{height:76px}.hero{min-height:670px}.hero-content{margin-left:1.25rem}.hero-tag{display:none}.intro,.section-heading,.community,.contact{grid-template-columns:1fr;gap:2.5rem}.yard-planner{grid-template-columns:1fr}.planner-intro{position:static}.service-grid{grid-template-columns:repeat(2,1fr)}footer{text-align:center;flex-direction:column;padding-bottom:6rem}.mobile-cta{z-index:20;bottom:0;grid-template-columns:.7fr 1.3fr;display:grid;position:fixed;inset-inline:0;box-shadow:0 -5px 20px #0000002e}.mobile-cta a{color:#2c1010;background:#d7b56d;justify-content:center;align-items:center;gap:.45rem;min-height:58px;font-weight:800;display:flex}.mobile-cta a:last-child{color:#fff;background:#3b1315}}@media (max-width:600px){.hero{min-height:640px}.hero h1{font-size:3.6rem}.hero-shade{background:linear-gradient(90deg,#1f0809f0,#2b0e0fad)}.button{width:100%}.intro,.services,.community,.contact{padding-top:5rem;padding-bottom:5rem}.intro-copy{padding-left:1.25rem}.service-grid,.planner-options{grid-template-columns:1fr}.planner-panel{min-height:0}.service-card{min-height:250px}.phone-row{flex-direction:column;align-items:flex-start}.phone-actions{width:100%}.phone-actions a{flex:1;justify-content:center}}
