@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('/assets/fonts/dm-sans-latin.woff2') format('woff2')}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#f7f4ed;color:#20232a;font:16px/1.65 'DM Sans',system-ui,sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.045em;line-height:1.08}h2{font-size:35px}h3{font-size:23px}a{color:inherit;text-underline-offset:4px}img{max-width:100%;display:block}input,select,textarea,button{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #294cff;outline-offset:4px}[hidden]{display:none!important}.wrap{max-width:1200px;margin:auto;padding-inline:30px}.demo-notice{padding:12px 25px;background:#20242c;color:#fff;font-size:12px;text-align:center}.demo-notice a{margin-left:12px;display:inline-flex;align-items:center;min-height:24px}.demo-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:26px}.demo-brand{font-weight:800;font-size:24px;text-decoration:none;letter-spacing:-.055em}.demo-brand small{display:block;font-size:8px;font-weight:600;letter-spacing:.16em;margin-top:4px}.demo-header nav{display:flex;gap:24px;align-items:center;font-size:13px}.demo-header nav a{display:inline-flex;min-height:44px;align-items:center;text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;background:#263d72;color:white;border:1px solid transparent;border-radius:4px;text-decoration:none;font-size:14px;font-weight:650;cursor:pointer}.btn:hover{background:#152750}.btn.coral{background:#f39a7b;color:#20232a}.btn.coral:hover{background:#ed8865}.btn.outline{background:transparent;color:inherit;border-color:#c9c8c1}.btn:disabled{opacity:.5;cursor:not-allowed}.kicker{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}.roof-hero{background:linear-gradient(90deg,#101b29e8,#101b2930),url('/services-assets/roof-home@2x.webp') center 48%/cover;padding-block:88px;color:white}.roof-hero h1{font-size:clamp(40px,5.5vw,76px);max-width:9.5ch}.roof-hero p{max-width:46ch;margin:22px 0 26px;color:#e4e7ee}.roof-hero .kicker{color:#f5bc9e}.roof-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-block:23px;font-size:12px;border-bottom:1px solid #dddcd4}.block{padding-block:65px}.intro{max-width:680px;margin-bottom:30px}.intro p{margin-top:16px;color:#535862}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.service-grid article{padding:27px;border:1px solid #dddcd4;background:#fffdf9;border-radius:5px}.service-grid p{margin:14px 0 18px;font-size:14px;color:#555963}.service-grid a{font-size:13px;font-weight:650;min-height:44px;display:inline-flex;align-items:center}.roof-process{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;background:#eeece4;border-radius:8px;overflow:hidden}.roof-process img{width:100%;height:415px;object-fit:cover;object-position:center 38%}.roof-process>div{padding:30px 35px 30px 0}.roof-process ol{padding-left:22px;margin:22px 0 0}.roof-process li{padding:7px 0;font-size:14px}.quote-section{background:#243b67;color:white}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.quote-grid p{color:#e4e8f0;font-size:14px;margin:18px 0}.demo-form{display:grid;gap:15px}.demo-form label{font-size:13px;display:grid;gap:6px}.demo-form input,.demo-form select,.demo-form textarea{min-height:46px;padding:11px 12px;border:1px solid #bbc1cd;border-radius:4px;background:#fffdf9;color:#20232a;font-size:16px;width:100%}.demo-form textarea{resize:vertical}.demo-status{font-size:13px;min-height:20px;margin-top:14px}.demo-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:30px;font-size:11px;color:#555963}.demo-footer a{min-height:44px;display:inline-flex;align-items:center}.faq details{border-bottom:1px solid #ccc;padding:15px 0}.faq summary{cursor:pointer;font-size:14px;min-height:32px}.faq details p{padding:10px 0;font-size:14px;color:#555963}.store-hero{background:#eee7da url('/services-assets/store-still-life.webp') center 61%/cover;min-height:480px;padding-block:50px}.store-hero h1{font-size:clamp(42px,5vw,67px);max-width:12ch}.store-hero p{max-width:38ch;font-size:14px;margin:18px 0 22px}.store-hero .hero-text{width:max-content;max-width:100%;padding:22px 25px;background:#f7f4eddc;border-radius:6px}.store-layout{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:40px;align-items:start}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.product{min-width:0}.product-photo{height:215px;background-image:url('/services-assets/store-still-life.webp');background-size:310% auto;background-position:4% 70%;background-repeat:no-repeat;background-color:#eee8dc;border-radius:5px}.product:nth-child(2) .product-photo{background-position:49% 70%}.product:nth-child(3) .product-photo{background-position:98% 70%}.product h3{font-size:20px;margin:16px 0 8px}.product p{font-size:12px;color:#555963;min-height:45px}.product .product-price{font-size:15px;min-height:0;margin:12px 0;color:#20232a;font-weight:650}.product .btn{width:100%;margin-top:12px;padding-inline:8px;font-size:13px}.product details{margin-top:12px;font-size:12px}.product summary{cursor:pointer;min-height:32px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px}.product details p{padding-top:8px;min-height:0}.cart-panel{background:#fffdf9;border:1px solid #dddcd4;border-radius:6px;padding:24px}.cart-panel h2{font-size:26px;margin-bottom:20px}.cart-row{padding:15px 0;border-bottom:1px solid #e2e0d9}.cart-row strong{font-size:14px}.cart-row p{font-size:12px;color:#555963;margin-top:5px}.quantity{display:flex;align-items:center;gap:12px;margin-top:12px}.quantity button{min-width:36px;min-height:36px;border:1px solid #c9c8c1;border-radius:3px;background:#f7f4ed;cursor:pointer}.quantity .remove{margin-left:auto;font-size:11px;padding-inline:8px}.cart-totals{display:grid;gap:8px;padding-block:20px;font-size:13px}.cart-totals div{display:flex;justify-content:space-between;gap:10px}.cart-totals .total{border-top:1px solid #dddcd4;padding-top:10px;font-size:16px;font-weight:650}.cart-panel label{font-size:13px;display:grid;gap:6px;margin-top:16px}.cart-panel select{font-size:16px;min-height:46px;padding:10px;border:1px solid #c9c8c1;background:white;border-radius:3px;width:100%}.cart-panel>.btn{width:100%;margin-top:15px}.cart-note{font-size:11px;color:#555963;margin-top:16px}.reset-cart{background:none;border:0;text-decoration:underline;text-underline-offset:4px;padding:10px 0;min-height:44px;font-size:12px;cursor:pointer;color:#555963}.order-done{padding:20px;background:#eef1e9;border-radius:5px;outline-offset:4px}.order-done h3{font-size:22px}.order-done p{font-size:13px;margin-top:12px}.cart-jump{display:none!important}.skip{position:absolute;top:-80px;left:15px;background:#20242c;color:white;padding:10px;z-index:100}.skip:focus{top:10px}
@media(max-width:1000px){.store-layout{grid-template-columns:1fr 300px;gap:25px}.product-grid{grid-template-columns:1fr 1fr}.product-photo{height:205px}}
@media(max-width:760px){.wrap{padding-inline:20px}.demo-header{padding-block:20px}.demo-header nav{gap:14px;font-size:12px}.demo-header nav .optional{display:none}.demo-brand{font-size:20px}.roof-hero{padding-block:50px;background-position:61% center}.roof-hero h1{font-size:47px;max-width:10ch}.roof-hero p{font-size:15px}.roof-strip{gap:12px;font-size:10px}.block{padding-block:45px}.service-grid,.quote-grid,.roof-process,.store-layout{grid-template-columns:1fr}.service-grid{gap:16px}.roof-process{gap:0}.roof-process img{height:265px}.roof-process>div{padding:28px}.quote-grid{gap:25px}.demo-footer{flex-direction:column;align-items:start;gap:10px}.demo-notice{padding:10px 18px;font-size:10px}.store-hero{min-height:430px;padding-block:30px;background-position:55% center}.store-hero .hero-text{padding:18px;width:80%;background:#f7f4edf0}.store-hero h1{font-size:43px}.store-layout{gap:32px}.product-grid{gap:23px 15px}.product-photo{height:190px}.product h3{font-size:20px}.product p{min-height:57px}.cart-jump{display:inline-flex!important}.cart-panel{padding:23px}.quantity button{min-height:44px;min-width:44px}.cart-panel .btn{min-height:48px}h2{font-size:31px}}
@media(max-width:390px){.demo-header nav{gap:9px}.demo-header nav a{font-size:11px}.product-photo{height:175px}.product h3{font-size:18px}.store-hero h1{font-size:40px}.roof-strip{grid-template-columns:1fr;gap:8px;font-size:12px}.product-grid{grid-template-columns:1fr}.product-photo{height:270px;background-size:310% auto}.product p{min-height:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
