:root{--ink:#222421;--paper:#f4f2eb;--accent:#bf430d;--muted:#565a53;--line:#b9bbb1}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Avenir Next',Avenir,sans-serif;font-size:18px;line-height:1.6}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--accent)}.skip{position:absolute;left:-1000px}.skip:focus{left:1rem;top:1rem;background:white;padding:1rem;z-index:2}header,main,footer{max-width:1180px;margin:auto;padding:28px 36px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{font-weight:800;letter-spacing:-1.5px;font-size:27px;text-decoration:none;display:flex;align-items:center;gap:12px}.mark{background:var(--accent);color:white;padding:0 9px;font-family:monospace;border-radius:5px;letter-spacing:-2px}nav{display:flex;gap:24px;font-size:15px;flex-wrap:wrap}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:800;color:var(--accent)}h1,h2,h3{line-height:1.06;letter-spacing:-.045em}h1{font-size:clamp(48px,7.5vw,96px);max-width:850px;margin:24px 0 30px;font-weight:750}h2{font-size:clamp(30px,4vw,52px);font-weight:650}h3{font-size:25px}.hero{padding:65px 0 52px}.hero p{max-width:640px}.lead{font-size:23px}.button,button{background:var(--accent);color:white;border:0;padding:14px 24px;display:inline-block;font:inherit;font-weight:650;text-decoration:none;cursor:pointer;border-radius:4px;min-height:48px}.button:hover,button:hover{background:#963309;color:white}:focus-visible{outline:3px solid #175ba3;outline-offset:4px}.note{font-size:14px;color:var(--muted)}.rule{border-top:1px solid var(--line);padding:42px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.step-number{font-family:monospace;color:var(--accent);font-size:15px}.calculator-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:start;margin:42px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:15px;font-weight:650}input,select{display:block;width:100%;margin-top:8px;background:white;border:1px solid #808579;border-radius:3px;padding:13px;font:inherit;color:var(--ink);min-height:48px}form button{margin-top:28px}.result{background:var(--ink);color:white;padding:30px;min-height:240px;border-top:5px solid var(--accent)}.result .eyebrow{color:#ff9a68}.result strong{display:block;font-size:clamp(42px,5vw,68px);letter-spacing:-3px;line-height:1.2;margin:20px 0 6px}.result .note{color:#deded5}article{max-width:790px;padding:30px 0 70px}article h1{font-size:clamp(42px,6vw,68px)}article h2{font-size:30px;margin-top:40px}footer{font-size:14px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px}footer nav{font-size:14px}.shot{width:250px;height:auto;border:8px solid var(--ink);border-radius:34px}.product-proof{display:flex;gap:64px;align-items:center;margin:40px 0}.product-proof p{max-width:520px}@media(max-width:700px){header,main,footer{padding:22px}header,footer{align-items:flex-start;flex-direction:column}nav{gap:16px}.hero{padding-top:36px}.steps,.calculator-layout{grid-template-columns:1fr;gap:26px}.fields{gap:14px}.product-proof{flex-direction:column;align-items:flex-start;gap:20px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* App marketing page */
.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.intro>p{max-width:780px}.feature-row{display:grid;grid-template-columns:1fr 1.35fr;gap:64px;padding:36px 0;border-bottom:1px solid var(--line)}.feature-row:last-child{border-bottom:0}.feature-row h3{font-size:clamp(28px,3vw,38px);max-width:350px;margin-top:16px}.feature-row p:first-child{margin-top:0}.benefit{border-left:3px solid var(--accent);padding-left:18px;font-weight:600}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:21px;font-weight:650;padding-right:12px}.faq details p{max-width:800px;margin-bottom:8px}.closing .lead{max-width:740px}#workflow{scroll-margin-top:24px}@media(max-width:700px){.feature-row{grid-template-columns:1fr;gap:8px;padding:28px 0}.feature-row h3{max-width:none}.actions{align-items:flex-start;flex-direction:column;gap:18px}.faq summary{font-size:19px}}

/* Contractor photography series */
.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:38px;align-items:center}.hero h1{font-size:clamp(48px,6.2vw,78px)}.hero-photo{display:block;width:100%;height:580px;object-fit:cover;object-position:40% center;border-radius:6px}.workflow-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;margin-top:26px;border-radius:4px}.feature-row{grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding:48px 0}.feature-row h3{max-width:440px}.campaign-note{margin-bottom:0}@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-photo{height:auto;max-height:520px;aspect-ratio:3/2;object-fit:cover}.hero h1{font-size:clamp(48px,8vw,78px)}}@media(max-width:700px){.feature-row{grid-template-columns:1fr;gap:24px}.hero{gap:24px}.workflow-photo{margin-top:22px}}

/* Paving guide library */
.guide-hero{padding:48px 0 20px}.guide-hero .lead{max-width:780px}.guide-banner{display:block;width:100%;height:auto;aspect-ratio:2.5;object-fit:cover;object-position:center 12%;border-radius:4px;margin:32px 0}.guide-topics{padding:20px 0;gap:12px 28px;font-size:17px}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px}.guide-card{padding:12px 0 24px;border-bottom:1px solid var(--line)}.guide-card h3{font-size:28px;line-height:1.18;margin:12px 0}.guide-card p{font-size:17px}.guide-article{max-width:900px;margin:auto}.guide-article>p,.guide-article>ul,.guide-article>ol{max-width:780px}.guide-article h1{font-size:clamp(40px,5.5vw,68px)}.guide-article h2{line-height:1.2;scroll-margin-top:24px}.breadcrumbs{font-size:14px;gap:10px}.article-meta{font-size:14px;color:var(--muted)}.article-toc{display:block;border-left:3px solid var(--accent);padding:16px 24px;margin:32px 0;background:#eae7dc}.article-toc ol{margin-bottom:0;padding-left:22px}.article-toc li{margin:6px 0}.guide-article table{border-collapse:collapse;width:100%;font-size:16px;margin:28px 0}.guide-article th,.guide-article td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.guide-article th{background:#eae7dc}.formula,.template-block{padding:24px;background:#eae7dc;margin:28px 0;overflow-wrap:anywhere}.formula{font-size:17px;line-height:1.9}.template-block p:first-child{margin-top:0}.template-block p:last-child{margin-bottom:0}.guide-app{border-top:3px solid var(--accent);padding:24px 0;margin-top:48px}.guide-app .button{margin:0 20px 16px 0}.related-guides{border-top:1px solid var(--line);margin-top:28px}.related-guides>.guide-grid{margin-bottom:26px}@media(max-width:700px){.guide-grid{grid-template-columns:1fr;gap:12px}.guide-banner{aspect-ratio:1.5}.guide-article th,.guide-article td{padding:8px 5px;font-size:14px}.guide-hero{padding-top:24px}.formula{font-size:15px;padding:16px}}@media print{header,footer,.article-toc,.guide-app,.related-guides,.guide-banner,.skip{display:none}body{background:white;font-size:12pt}article,main{max-width:none;padding:0}.guide-article h1{font-size:28pt}.guide-article h2{break-after:avoid}.guide-article table{break-inside:avoid}}

.guide-thumb{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px;margin-bottom:22px}.guide-article>.guide-banner{aspect-ratio:3/2;object-position:center}.guide-card{min-width:0}

.calculator-intro{padding:30px 0 42px}#asphalt,#paving-packs{scroll-margin-top:24px}.calculator-intro nav{gap:16px}

.launch-notice{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;padding:16px 20px;background:var(--ink);color:var(--paper);font-size:14px;line-height:1.5}.launch-notice strong{color:#ffb28c;font-size:16px;white-space:nowrap}
