@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--ink:#141414;--paper:#f1f1f1;--orange:#d32f2f;--line:#d4d4d4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}header{height:96px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;background:var(--paper);gap:24px}.brand{display:flex;align-items:center;gap:13px;line-height:1;font-size:21px;font-weight:700;letter-spacing:1px}.brand svg{width:58px;color:#d32f2f}.brand small{display:block;font-size:11px;letter-spacing:6px;margin-top:9px}nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:36px;background:var(--orange);color:#ffffff;padding:17px 25px;font-weight:700;border:0;cursor:pointer;font-size:15px;transition:background .2s}.button:hover{background:#b91c1c}.button.small{padding:12px 18px;font-size:13px}.button span{font-size:21px}.hero{position:relative;min-height:650px;background:#0e0e0e;color:white;overflow:hidden}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.95),rgba(10,10,10,.72) 48%,rgba(10,10,10,.12)),url('road.jpg') center 55%/cover}.hero-content{position:relative;padding:88px 7% 105px;max-width:1000px}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:700;margin-bottom:22px;display:flex;align-items:center;gap:10px}.eyebrow span{width:7px;height:7px;background:var(--orange);border-radius:50%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;line-height:1.03;font-weight:600}h1{font-size:clamp(58px,6.8vw,104px);letter-spacing:-1px;margin-bottom:26px}em{font-style:normal;color:var(--orange)}.hero p{max-width:440px;color:#dedede;font-size:17px;margin-bottom:32px}.text-link{font-size:14px;margin-left:28px;border-bottom:1px solid #999999;padding-bottom:6px}.hero-foot{position:absolute;bottom:24px;left:7%;right:7%;display:flex;justify-content:space-between;letter-spacing:2px;font-size:10px;color:#d5d5d5}.service-strip{background:var(--orange);padding:19px 7%;display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;letter-spacing:1.3px}.star{font-size:22px}.section{padding:95px 7%}h2{font-size:clamp(44px,4.2vw,64px);letter-spacing:-.6px;margin-bottom:32px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:40px}.section-heading>p{color:#606060;font-size:15px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:20px}.service-card{border:1px solid #cecece;padding:35px 40px;background:#fafafa}.card-top{display:flex;justify-content:space-between;align-items:center;color:#b92323;margin-bottom:30px}.card-top>span{font-size:13px}.card-top svg{width:75px;height:50px;fill:none;stroke:currentColor;stroke-width:2}h3{font-size:36px;margin-bottom:18px}.service-card p{font-size:15px;color:#595959;max-width:450px}.service-card ul{padding:0;list-style:none;font-size:14px;margin:25px 0 35px}.service-card li{padding:8px 0;border-bottom:1px solid #dedede}.service-card li:before{content:'↗';color:#b92323;margin-right:14px}.service-card>a{display:flex;justify-content:space-between;font-size:14px;font-weight:700}.about{display:grid;grid-template-columns:1fr 1fr;background:#e6e6e6}.about-mark{position:relative;background:#000000;min-height:480px;overflow:hidden;color:#aaaaaa;padding:65px}.about-mark svg{position:absolute;inset:40px 0 0;width:100%;height:100%;fill:none;stroke:#666666;stroke-width:1.5}.about-mark svg .road{stroke:var(--orange);stroke-width:6}.about-mark>span{position:relative;font-size:13px;line-height:1.7;letter-spacing:4px}.about-copy{padding:65px 14% 65px 12%}.about-copy p{color:#595959;font-size:15px}.dark{margin:16px 0 0;display:inline-block;font-weight:600}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:48px}.steps article{border-top:1px solid #bbbbbb;padding-top:22px}.steps span{color:#b92323;font-size:13px}.steps h3{font-size:30px;margin:20px 0 15px}.steps p{font-size:14px;color:#606060}.quote-section{padding:85px 7%;display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;background:var(--ink);color:#fff}.quote-copy h2{font-size:75px}.quote-copy>p{color:#cccccc;max-width:310px}.quote-note{margin-top:70px;border-top:1px solid #555555;padding-top:25px;display:flex;gap:20px}.quote-note span{color:var(--orange);font-size:30px}.quote-note p{color:#bbbbbb;font-size:13px}.form-panel{background:var(--paper);color:var(--ink);padding:38px}.form-panel h3{font-size:31px}.muted{font-size:12px;color:#666666}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field label{display:block;font-size:12px;font-weight:600;margin-bottom:7px}.field input,.field select,.field textarea{border:1px solid #bcbcbc;width:100%;padding:11px;background:#fff;color:#171717;border-radius:0;font-size:14px;min-height:46px}.field.full{grid-column:1/-1}.field textarea{height:110px;resize:vertical}.field .help{font-size:11px;color:#626262;margin:6px 0}.field .error,#form-error{font-size:12px;color:#ad3026;margin:4px 0}.form-actions{display:flex;gap:15px;margin-top:22px}.form-actions .button{width:100%;justify-content:center}.fine{font-size:11px;color:#666666;margin:15px 0 0}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%}.faq details{border-bottom:1px solid #cccccc;padding:20px 0}.faq summary{font-weight:600;font-size:15px;cursor:pointer}.faq details p{font-size:14px;color:#606060;margin:16px 0 0}footer{border-top:1px solid #cccccc;padding:35px 7%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:11px}footer p{margin:0}footer .brand{font-size:16px}footer>a:last-child{font-weight:700}.skip{position:absolute;top:-60px;background:#fff;z-index:20;padding:10px}.skip:focus{top:0}[hidden]{display:none!important}#success{padding:30px 0;font-size:18px}button:disabled{opacity:.65;cursor:wait}@media(max-width:850px){header{height:82px;padding:0 5%}nav>a:not(.button){display:none}.brand{font-size:17px}.brand svg{width:42px}.brand small{font-size:9px}nav .button.small{font-size:11px;padding:10px;gap:10px}.hero-content{padding:70px 6% 110px}.hero{min-height:600px}.hero-photo{background-position:65% center}.hero p{max-width:350px}.hero-foot{font-size:8px;left:6%;right:6%}.section{padding:65px 6%}.section-heading{display:block}.section-heading>p br{display:none}.service-strip{gap:15px;font-size:9px;padding:15px 5%}.service-strip>span:last-child,.service-strip>.star:nth-child(4){display:none}.cards,.about,.quote-section,.faq{grid-template-columns:1fr}.service-card{padding:30px}.about-mark{min-height:280px;padding:35px}.about-copy{padding:45px 6%}.steps{gap:22px}.steps h3{font-size:26px}.quote-section{padding:60px 6%;gap:25px}.quote-copy h2{font-size:60px}.quote-note{margin-top:25px}.form-panel{padding:25px}.faq{gap:5px}footer{flex-wrap:wrap;justify-content:flex-start}.text-link{display:inline-block;margin:24px 0 0 22px}.dark{margin-left:0}}@media(max-width:500px){.hero-content .text-link{display:block;margin-left:0;width:max-content}.steps{grid-template-columns:1fr;gap:20px}.steps article{padding-top:15px}.steps h3{margin-top:12px}.field-grid{grid-template-columns:1fr}.hero-foot span:last-child{display:none}.hero-content{padding-top:55px}.hero{min-height:640px}.brand{font-size:14px}.brand svg{width:33px}.brand small{letter-spacing:4px}.form-panel{padding:24px 20px}h1{font-size:60px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Rolling Ridge brand update */
header{background:#000;color:#eee;height:115px}.brand-logo{display:block;width:245px;height:96px;object-fit:contain}.service-strip{background:#b91c1c;color:#fff}.about-mark{display:flex;align-items:center;justify-content:center;padding:35px}.about-mark img{width:100%;height:auto}footer{background:#000;color:#ddd}footer .brand-logo{width:200px;height:80px}.hero em,.quote-copy em{color:#f15858}.hero .eyebrow span{background:#f15858}@media(max-width:850px){header{height:96px}.brand-logo{width:180px;height:80px}.about-mark{min-height:250px}}@media(max-width:500px){.brand-logo{width:155px;height:70px}header{gap:10px;padding:0 4%}nav .button.small{font-size:10px;padding:10px;gap:6px}.about-mark{min-height:220px}}
