.gr-hero{background:var(--navy);color:#fff;overflow:hidden}
.gr-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,6vw,90px);align-items:center;padding-block:76px}
.gr-hero-copy{max-width:660px}
.gr-hero h1{max-width:690px}
.gr-hero h1 em,.gr-contact h2 em{color:var(--green)}
.gr-hero-copy>p:not(.eyebrow){max-width:590px;color:#d5e2f4;font-size:1.12rem;line-height:1.8}
.gr-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:34px 0}
.gr-text-link{font-size:.9rem;font-weight:700;text-decoration:underline;text-underline-offset:5px}
.gr-proof{display:flex;gap:10px 22px;flex-wrap:wrap;list-style:none;padding:0;margin:0;color:#d5e2f4;font-size:.79rem}
.gr-proof li::before{content:"✓";color:var(--green);margin-right:7px}
.gr-hero-visual{position:relative;min-height:560px;border-radius:8px 8px 60px 8px;overflow:hidden;background:#244b78}
.gr-hero-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.gr-image-note{position:absolute;right:20px;bottom:20px;left:20px;display:flex;gap:22px;align-items:center;padding:20px 23px;border-radius:5px;background:#fff;color:var(--navy)}
.gr-image-note span{color:#56801e;font-size:.8rem;font-weight:750;white-space:nowrap}
.gr-image-note strong{line-height:1.3}
.gr-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,120px);align-items:end}
.gr-intro h2{margin-bottom:0}
.gr-intro-grid>p{max-width:530px;color:var(--muted);font-size:1.08rem;margin:0 0 5px}
.gr-areas{background:var(--light)}
.gr-section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}
.gr-section-head h2{max-width:670px;margin-bottom:0}
.gr-section-head>p{max-width:300px;color:var(--muted);margin:0 0 5px}
.gr-area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.gr-area-card{display:flex;flex-direction:column;min-height:325px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:5px}
.gr-area-card>span{font-size:.68rem;font-weight:750;letter-spacing:.12em;color:#567333}
.gr-area-card h3{margin:32px 0 13px;font-size:1.45rem}
.gr-area-card p{color:var(--muted);font-size:.91rem;line-height:1.6}
.gr-area-card a{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);color:var(--navy);font-size:.82rem;font-weight:750}
.gr-area-card a span{color:#56801e}
.gr-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;margin:0;padding:0}
.gr-steps li{border-top:2px solid var(--line);padding-top:23px}
.gr-steps span{display:inline-grid;place-items:center;width:44px;height:44px;margin-bottom:20px;border-radius:50%;background:var(--navy);color:#fff;font-size:.79rem}
.gr-steps h3{margin-bottom:8px}
.gr-steps p{color:var(--muted);max-width:310px}
.gr-contact{background:var(--navy);color:#fff}
.gr-contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(40px,7vw,110px);align-items:start}
.gr-contact-copy{position:sticky;top:140px}
.gr-contact-copy>p:not(.eyebrow){max-width:400px;color:#d5e2f4;font-size:1.05rem}
.gr-contact-copy>a{display:inline-block;margin-top:15px;font-weight:700;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:5px}
.gr-contact-copy>a span{color:var(--green)}
.gr-form{position:relative;padding:clamp(24px,4vw,46px);background:#fff;color:var(--ink);border-radius:7px}
.gr-form h3{font-size:1.55rem;margin-bottom:5px}
.gr-form>p:not(.gr-form-status){font-size:.85rem;color:var(--muted);margin-bottom:23px}
.gr-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.gr-form label:not(.gr-consent){display:block;margin:0 0 6px;font-size:.84rem;font-weight:700}
.gr-form input:not([type="checkbox"]),.gr-form select,.gr-form textarea{display:block;width:100%;min-width:0;margin-bottom:18px;padding:12px 13px;border:1px solid #b9c5d1;border-radius:4px;background:#fff;color:var(--ink);font:inherit;font-size:1rem}
.gr-form input:not([type="checkbox"]),.gr-form select{min-height:48px}
.gr-form textarea{resize:vertical;min-height:126px}
.gr-form :is(input,select,textarea):focus-visible{outline:3px solid #629c14;outline-offset:2px}
.gr-form ::placeholder{color:#69798a}
.gr-consent{display:flex;align-items:flex-start;gap:11px;margin:2px 0 24px;color:var(--muted);font-size:.83rem;line-height:1.5}
.gr-consent input{width:19px;height:19px;flex:none;margin:1px 0 0;accent-color:var(--navy)}
.gr-consent a{color:var(--navy);font-weight:700;text-decoration:underline}
.gr-form .button{width:100%;min-height:52px}
.gr-form .button:disabled{opacity:.7;cursor:wait}
.gr-form-status{padding:12px 14px;margin:0 0 18px;border-left:3px solid #a32626;background:#fff1f1;color:#782020;font-size:.9rem}
.gr-form-status[data-state="success"]{border-color:#56801e;background:#eff7df;color:#294b12}
.gr-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:1050px){.gr-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-area-card{min-height:275px}.gr-contact-grid{gap:35px}}
@media(max-width:780px){.gr-hero-grid{grid-template-columns:1fr .85fr;gap:25px}.gr-hero-visual{min-height:470px}.gr-contact-grid{grid-template-columns:1fr}.gr-contact-copy{position:static}.gr-intro-grid{gap:28px}}
@media(max-width:600px){.gr-hero-grid{grid-template-columns:1fr;padding-block:46px 38px}.gr-hero-copy>p:not(.eyebrow){font-size:1rem}.gr-hero-actions{margin:26px 0}.gr-hero-actions .button{width:100%}.gr-proof{font-size:.75rem}.gr-hero-visual{min-height:340px;aspect-ratio:1.25;border-radius:6px 6px 40px 6px}.gr-image-note{left:12px;right:12px;bottom:12px;padding:14px;gap:15px;font-size:.85rem}.gr-intro-grid,.gr-form-row{grid-template-columns:1fr}.gr-section-head{display:block}.gr-section-head>p{margin-top:18px}.gr-area-grid{grid-template-columns:1fr}.gr-area-card{min-height:0;padding:24px}.gr-area-card h3{margin-top:20px}.gr-area-card a{margin-top:12px}.gr-steps{grid-template-columns:1fr;gap:17px}.gr-steps li{position:relative;padding:18px 0 0 58px;min-height:95px}.gr-steps span{position:absolute;left:0;top:18px;width:38px;height:38px}.gr-steps p{margin-bottom:0}.gr-form{padding:23px 19px}.gr-contact-copy>a{font-size:.95rem}}
