/* A concise Terrain front door. The complete interactive workspace lives at /explore. */
#app .terrain-home{background:var(--paper);}
#app .terrain-home .terrain-service-hero{gap:52px;padding-block:52px;background:var(--paper);}
#app .terrain-home .terrain-service-copy h1{font-size:clamp(39px,4.7vw,66px);line-height:1.08;letter-spacing:-2px;margin:22px 0;}
#app .terrain-home .terrain-service-copy>p{font-size:17px;line-height:1.65;color:var(--muted);max-width:520px;margin:0 0 26px;}
#app .terrain-home .terrain-hero-actions{gap:12px;margin:0 0 20px;}
#app .terrain-home .terrain-hero-actions a,#app .terrain-home-next>a{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:14px 20px;border-radius:7px;font-size:13px;font-weight:600;line-height:1.5;text-decoration:none;}
#app .terrain-home .terrain-hero-actions .secondary{border:1px solid #a8aba4;background:#fffefa;color:var(--ink);}
#app .terrain-home .terrain-service-copy>.terrain-home-caption{font-size:12px;line-height:1.6;max-width:390px;margin:0;}
#app .terrain-home .terrain-property-model{box-shadow:none;border-radius:12px;}
#app .terrain-home :is(.terrain-home-services,.terrain-home-process,.terrain-home-next){padding:52px var(--site-gutter);border-bottom:1px solid var(--line);}
#app .terrain-home .terrain-home-services{background:#fffefa;scroll-margin-top:145px;}
#app .terrain-home-section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:end;margin-bottom:28px;}
#app .terrain-home h2{font-size:clamp(29px,3vw,42px);line-height:1.16;letter-spacing:-1.15px;color:var(--ink);margin:14px 0 0;}
#app .terrain-home-section-heading>p{font-size:15px;line-height:1.7;color:var(--muted);max-width:360px;justify-self:end;margin:0;}
#app .terrain-home-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
#app .terrain-home-service-card{display:flex;flex-direction:column;min-width:0;padding:28px 26px 22px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:10px;text-decoration:none;transition:border-color .18s,box-shadow .18s;}
#app .terrain-home-service-card:hover{border-color:var(--accent);box-shadow:0 6px 20px #202b2d0d;}
#app .terrain-home-card-number{display:block;font:600 13px/1 var(--body);letter-spacing:.06em;color:var(--accent);margin-bottom:25px;}
#app .terrain-home-service-card h3{font:600 24px/1.2 var(--heading);letter-spacing:-.5px;margin:0 0 14px;}
#app .terrain-home-service-card p{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 24px;}
#app .terrain-home-card-link{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:15px;font-size:13px;font-weight:600;margin-top:auto;}
#app .terrain-home-process{background:var(--paper);scroll-margin-top:145px;}
#app .terrain-home-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;list-style:none;padding:0;margin:34px 0 0;}
#app .terrain-home-steps li{min-width:0;padding-top:20px;border-top:1px solid var(--line);}
#app .terrain-home-steps li>span{display:block;color:var(--accent);font:600 13px/1 var(--body);letter-spacing:.06em;margin-bottom:18px;}
#app .terrain-home-steps h3{font:600 23px/1.2 var(--heading);letter-spacing:-.45px;margin:0 0 12px;}
#app .terrain-home-steps p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:310px;}
#app .terrain-home .terrain-home-next{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#edece6;}
#app .terrain-home-next h2{font-size:clamp(29px,3vw,40px);}
#app .terrain-home-next p{font-size:15px;line-height:1.65;color:var(--muted);max-width:540px;margin:14px 0 0;}
#app .terrain-home-next>a{flex-shrink:0;}
#app .terrain-home a:focus-visible{outline:3px solid var(--accent);outline-offset:5px;}
@media(max-width:1100px){
 #app .terrain-home .terrain-service-hero{gap:30px;padding-block:44px;}
 #app .terrain-home-service-card{padding:24px 22px 20px;}
 #app .terrain-home-service-card h3{font-size:22px;}
}
@media(max-width:850px){
 #app .terrain-home .terrain-service-hero{grid-template-columns:1fr;gap:32px;}
 #app .terrain-home .terrain-service-copy h1{font-size:clamp(40px,7vw,58px);}
 #app .terrain-home .terrain-property-model{max-width:620px;justify-self:start;}
 #app .terrain-home-service-grid{gap:16px;}
 #app .terrain-home-service-card{padding:22px 18px 18px;}
 #app .terrain-home-section-heading{gap:28px;}
 #app .terrain-home-steps{gap:24px;}
}
@media(max-width:700px){
 #app .terrain-home .terrain-service-hero{padding-block:36px;}
 #app .terrain-home .terrain-service-copy h1{font-size:clamp(37px,7.3vw,49px);letter-spacing:-1.4px;}
 #app .terrain-home .terrain-service-copy>p{font-size:16px;}
 #app .terrain-home :is(.terrain-home-services,.terrain-home-process,.terrain-home-next){padding-block:36px;}
 #app .terrain-home-section-heading{grid-template-columns:1fr;gap:16px;margin-bottom:24px;}
 #app .terrain-home-section-heading>p{justify-self:start;max-width:460px;}
 #app .terrain-home-service-grid{grid-template-columns:1fr;gap:16px;}
 #app .terrain-home-service-card{padding:24px;}
 #app .terrain-home-card-number{margin-bottom:20px;}
 #app .terrain-home-service-card h3{font-size:24px;}
 #app .terrain-home-service-card p{max-width:500px;}
 #app .terrain-home-steps{grid-template-columns:1fr;gap:24px;margin-top:28px;}
 #app .terrain-home-steps p{max-width:500px;}
 #app .terrain-home .terrain-home-next{display:block;}
 #app .terrain-home-next>a{margin-top:24px;}
}
@media(max-width:380px){
 #app .terrain-home .terrain-service-copy h1{font-size:35px;}
 #app .terrain-home .terrain-hero-actions{flex-direction:column;align-items:stretch;}
}
@media(prefers-reduced-motion:reduce){#app .terrain-home-service-card{transition:none;}}
