@import url("/fonts/archivo.css?v=green-field-20260907-1");

/* Public Grainwork web family. Product behavior and media provenance live in their own sources. */
:root {
  --gw-ink: #24372f;
  --gw-muted: #58665e;
  --gw-paper: #f7f9f8;
  --gw-panel: #ffffff;
  --gw-line: #d4ddda;
  --gw-brand: #174b3a;
  --gw-soft: #eaf0ec;
  --gw-font: "Avenir Next", Avenir, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --bg-page: var(--gw-paper); --bg-card: var(--gw-panel); --bg-kraft: #eef2ef;
  --border-subtle: var(--gw-line); --text-primary: var(--gw-ink); --text-secondary: var(--gw-muted); --text-tertiary: var(--gw-muted);
  --accent-moss: var(--gw-brand); --accent-moss-hover: #10392c; --accent-wash: var(--gw-soft); --ink-on-accent: #fff;
  --paper: var(--gw-paper); --card: var(--gw-panel); --ink: var(--gw-ink); --muted: var(--gw-muted); --line: var(--gw-line);
  --moss: var(--gw-brand); --kraft: #eef2ef; --forest: var(--gw-brand); --forest-soft: var(--gw-soft);
  --canvas: var(--gw-paper); --gold-soft: #eef2ef;
  --shadow-soft: none;
  color-scheme: light;
}
body { font-family: var(--gw-font); background: var(--gw-paper); color: var(--gw-ink); }
h1,h2,h3,legend,.range,.caption strong,.price-card strong,.brand { font-family: var(--gw-font); font-weight: 550; letter-spacing: -.035em; }
h1 { line-height: 1.08; }
p { line-height: 1.65; }
.logo,.brand { letter-spacing: -.04em; font-size: 25px; font-weight: 650; color: var(--gw-ink); }
button,input,select,textarea { font-family: inherit; }
:where(button,a,input,select,textarea,summary):focus-visible { outline: 3px solid #3b745e; outline-offset: 4px; }
:is(.cta,.button,.secondary-cta,.text-link,.web-trial-cta,.play-store-button,.android-notice-button,button,input,select,textarea) { border-radius: 3px; }
:is(.eyebrow,.section-kicker,.product-group-label,.num) { font-weight: 600; letter-spacing: .09em; color: var(--gw-muted); }
:is(.hero-stage,.product-card,.result-proof,.result-crop,.result-proof-crop,.step,.honest,.sheet,.panel,.card,.closing,.price-card,.offer-grid,.feature,.proof-band,.secondary-offer) { border-radius: 6px; box-shadow: none; }
.product-card,.product-renovate,.product-bid,.product-result,.product-contractors,.product-professionals { background: white; }
.product-card { min-height: 280px; padding: 26px; }
.product-card-top { border-bottom: 1px solid var(--gw-line); padding-bottom: 17px; }
.product-card h3 { margin-top: 28px; }
.product-card a { font-weight: 600; }
.live-pill,.stage-label,.status { border-radius: 3px; letter-spacing: .04em; }
.product-proof-link,.nav-link,.secondary-cta,.cta,.web-trial-cta { font-weight: 600; }
.sheet { border: 0; margin: 0 auto; }
.price-card { background: var(--gw-brand); }
.price-card p { color: #eaf0ec; }
@media (max-width:600px) { .logo,.brand { font-size: 22px; } .sheet { width: 100%; } }

/* Grainwork field system: strong green, open type, precise mineral rules. */
:root { --gw-display:"Archivo","Avenir Next",Avenir,sans-serif; --gw-brand-hover:#10392c; }
h1,h2,h3,.brand,.logo { font-family:var(--gw-display); }
h1 { font-weight:600; letter-spacing:-.04em; }
h2,h3 { font-weight:550; }
:is(.hero-stage,.product-card,.result-proof,.result-crop,.result-proof-crop,.step,.honest,.sheet,.panel,.card,.closing,.price-card,.offer-grid,.feature,.proof-band,.secondary-offer) { border-radius:2px; }
:is(.button,.cta,.secondary-cta,.text-link,.web-trial-cta) { border-radius:2px; }
.company-home .container { width:min(1360px,calc(100% - 64px)); }
.company-home .site-header { min-height:100px; border-bottom:0; }
.company-home .logo { font-family:var(--gw-display); font-size:34px; font-weight:650; letter-spacing:-.06em; color:var(--gw-brand); }
.company-home .nav-links a { font-size:15px; }
.company-home .hero { display:block; padding:0; margin:10px 0 0; background:transparent; color:var(--gw-brand); }
.company-home .hero > div { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:0 80px; padding:36px 0 44px; }
.company-home .hero .eyebrow { grid-column:1 / -1; color:var(--gw-muted); margin:0 0 30px; font-size:12px; letter-spacing:.13em; }
.company-home .hero h1 { grid-column:1; grid-row:2 / 4; align-self:start; max-width:780px; color:var(--gw-brand); margin:0; font-family:var(--gw-display); font-size:clamp(52px,5.8vw,82px); font-weight:600; line-height:1.01; letter-spacing:-.04em; text-wrap:balance; }
.company-home .hero .lede { grid-column:2; align-self:start; margin:5px 0 0; max-width:440px; color:var(--gw-muted); font-size:18px; line-height:1.65; }
.company-home .hero .actions { grid-column:2; align-self:end; gap:16px 24px; margin-top:28px; }
.company-home .hero .button { background:var(--gw-brand); border-color:var(--gw-brand); color:white; font-size:14px; padding:15px 19px; }
.company-home .hero .button:hover { background:var(--gw-brand-hover); }
.company-home .hero .text-action { color:var(--gw-brand); }
.company-home .hero figure { position:relative; }
.company-home .hero-photo { display:block; height:auto; width:100%; aspect-ratio:3 / 2; object-fit:contain; border-radius:0; }
.company-home .hero-note { margin:0; padding:13px 20px; background:var(--gw-paper); color:var(--gw-muted); border-bottom:1px solid var(--gw-line); }
.company-home .product-nav { padding-block:16px; border-top:0; border-bottom:1px solid var(--gw-ink); }
.company-home .product-nav p { color:var(--gw-ink); font-weight:600; }
.company-home .section-heading { max-width:850px; }
.company-home h2 { font-family:var(--gw-display); font-size:clamp(36px,3.5vw,52px); font-weight:550; letter-spacing:-.045em; line-height:1.09; }
.company-home .business-grid { gap:50px; border-top:2px solid var(--gw-brand); }
.company-home .business-offer { border:0; border-radius:0; background:transparent; padding:32px 0 0; }
.company-home .business-offer + .business-offer { border-left:1px solid var(--gw-line); padding-left:50px; }
.company-home .business-offer h3 { font-family:var(--gw-display); font-size:clamp(29px,2.8vw,40px); max-width:470px; letter-spacing:-.035em; }
.company-home .offer-label { font-size:13px; font-weight:650; margin-bottom:24px; }
.company-home .offer-points li { padding-block:15px; font-size:15px; }
.company-home .photo { border-radius:0; }
.company-home .photo-story { grid-template-columns:1.2fr .8fr; padding-top:76px; gap:56px; }
.company-home .photo-story figure { height:470px; }
.company-home .photo-story h3 { font-family:var(--gw-display); font-size:42px; line-height:1.08; }
.company-home .homeowners { border-top:2px solid var(--gw-brand); }
.company-home .home-offer { border-top:1px solid var(--gw-ink); }
.company-home .home-offer h3 { font-family:var(--gw-display); font-size:28px; line-height:1.12; }
.company-home .follow-on { border-left:3px solid var(--gw-brand); border-radius:0; background:var(--gw-soft); }
.company-home .app-section { border-radius:0; background:var(--gw-brand); color:white; }
.company-home .app-section :is(h2,h3) { color:white; }
.company-home .app-section p { color:#e4ece6; }
.company-home .app-section .web-trial-cta { background:white; color:var(--gw-brand); border-color:white; }
.company-home .app-trial { border-color:#709382; }
.company-home .site-footer { border-top:2px solid var(--gw-brand); }
.company-home .site-footer .logo { font-size:38px; }
@media(max-width:1000px) {
 .company-home .hero > div { gap:0 36px; padding:28px 0 36px; }
 .company-home .hero h1 { font-size:58px; }
 .company-home .hero .lede { font-size:17px; }
 .company-home .hero-photo { height:auto; }
}
@media(max-width:720px) {
 .company-home .container { width:calc(100% - 32px); }
 .company-home .site-header { min-height:84px; padding-top:22px; }
 .company-home .site-header .logo { font-size:30px; }
 .company-home .nav-links a { font-size:12px; }
 .company-home .hero { margin-top:8px; }
 .company-home .hero > div { display:block; padding:22px 0 30px; }
 .company-home .hero .eyebrow { font-size:11px; margin-bottom:18px; }
 .company-home .hero h1 { font-size:clamp(44px,10.5vw,64px); max-width:560px; line-height:1.03; margin-bottom:20px; }
 .company-home .hero .lede { font-size:17px; line-height:1.6; }
 .company-home .hero .actions { margin-top:18px; gap:12px; }
 .company-home .hero .button { text-align:left; line-height:1.5; }
 .company-home .hero-photo { height:auto; aspect-ratio:3 / 2; }
 .company-home .hero-note { padding:12px 0; font-size:11px; gap:8px; }
 .company-home .business-grid { display:block; }
 .company-home .business-offer { padding:26px 0 0; }
 .company-home .business-offer + .business-offer { padding:28px 0 0; margin-top:30px; border-left:0; border-top:1px solid var(--gw-line); }
 .company-home h2 { font-size:36px; }
 .company-home .business-offer h3 { font-size:32px; }
 .company-home .photo-story { grid-template-columns:1fr; gap:25px; padding-top:40px; }
 .company-home .photo-story figure { height:auto; aspect-ratio:1.25; }
 .company-home .photo-story h3 { font-size:34px; }
 .company-home .app-section { padding:28px 24px; }
}

:where(a,button,input,select,textarea,summary):focus-visible { outline:2px solid white; outline-offset:2px; box-shadow:0 0 0 5px var(--gw-brand); }

.company-home .hero :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid white; outline-offset:2px; box-shadow:0 0 0 5px var(--gw-brand); }
