/* A shorter Home Hardening homepage. The approved A1 palette and lockup stay intact. */
.hardening-topic-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:16px;}
#app .hardening-topic-links a{font-size:13px;line-height:1.6;min-height:36px;display:inline-flex;align-items:center;color:var(--accent);text-underline-offset:4px;}
#app .hardening-hero{min-height:550px;}
#app .hardening-hero .site-hero-copy{max-width:850px;padding:58px var(--site-gutter);}
#app .hardening-hero h1{max-width:790px;font-size:clamp(40px,4.3vw,65px);line-height:1.08;letter-spacing:-2px;margin:20px 0;}
#app .hardening-hero p{max-width:570px;font-size:17px;line-height:1.65;margin-bottom:24px;}
#app .hardening-hero .hardening-contact-actions{margin-top:22px;}
#app .hardening-hero .hardening-contact-actions .primary{margin-top:0;}
#app .hardening-hero .hero-service-link{width:max-content;max-width:100%;}
#app .hardening-home-services{padding:56px var(--site-gutter) 60px;background:var(--paper);}
#app .hardening-home-services .hardening-services-intro{grid-template-columns:1.3fr 1fr;gap:36px;margin-bottom:28px;}
#app .hardening-home-services .hardening-services-intro h2{font-size:clamp(29px,3vw,42px);line-height:1.15;letter-spacing:-1.25px;}
#app .hardening-home-services .hardening-services-intro>p{max-width:370px;justify-self:end;font-size:15px;line-height:1.65;}
#app .hardening-home-services .hardening-overview-card{color:var(--ink);text-decoration:none;border-radius:10px;box-shadow:none;transition:border-color .18s,box-shadow .18s;}
#app .hardening-home-services .hardening-overview-card:hover{border-color:var(--accent);box-shadow:0 6px 20px #202b2d0d;}
#app .hardening-home-services .hardening-overview-card:focus-visible{outline:3px solid var(--accent);outline-offset:4px;}
#app .hardening-home-services .hardening-overview-image{aspect-ratio:1.5;}
#app .hardening-home-services .hardening-overview-body{padding:22px 20px 16px;}
#app .hardening-home-services .hardening-overview-body h3{font-size:21px;min-height:2.44em;margin:0 0 12px;}
#app .hardening-home-services .hardening-overview-body>p{font-size:14px;line-height:1.65;margin:0 0 20px;}
#app .hardening-home-services .hardening-overview-action{font-size:12px;padding-top:12px;}
#app .hardening-home-process,#app .hardening-home-about,#app .hardening-home-coverage{padding:52px var(--site-gutter);border-bottom:1px solid var(--line);}
#app .hardening-home-process{background:#fffefa;}
#app .hardening-home-process h2,#app .hardening-home-about h2,#app .hardening-home-coverage h2{font-size:clamp(28px,3vw,40px);line-height:1.16;letter-spacing:-1.1px;margin:14px 0 0;color:var(--ink);}
.hardening-home-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;padding:0;margin:34px 0 0;}
.hardening-home-steps li{position:relative;min-width:0;padding-top:20px;border-top:1px solid var(--line);}
.hardening-home-step-number{display:block;color:var(--accent);font:600 13px/1 var(--body);letter-spacing:.06em;margin-bottom:18px;}
#app .hardening-home-steps h3{font:600 23px/1.2 var(--heading);letter-spacing:-.45px;margin:0 0 12px;}
#app .hardening-home-steps p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:280px;}
#app .hardening-home-about{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;background:var(--paper);}
#app .hardening-home-about h2{max-width:530px;}
#app .hardening-home-about p{font-size:16px;line-height:1.75;max-width:530px;margin:0 0 16px;color:var(--muted);}
#app .hardening-home-about .text-action{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:14px;line-height:1.5;color:var(--accent);margin:0;text-decoration:underline;text-underline-offset:4px;}
#app .hardening-home-coverage{display:flex;align-items:center;justify-content:space-between;gap:36px;background:#edece6;}
#app .hardening-home-coverage h2{font-size:clamp(26px,2.8vw,36px);}
#app .hardening-home-coverage p{font-size:14px;line-height:1.6;color:var(--muted);margin:12px 0 0;}
#app .hardening-home-coverage .secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;flex-shrink:0;background:#fffefa;color:var(--ink);border:1px solid #a8aba4;border-radius:7px;padding:14px 20px;font-size:13px;font-weight:600;text-decoration:none;}
#app .hardening-home-coverage .secondary:hover{border-color:var(--accent);}
#app .hardening-home-next{display:block;}
#app .hardening-home-next .next-step-copy{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:50px var(--site-gutter);}
#app .hardening-home-next h2{font-size:clamp(30px,3.2vw,44px);margin:14px 0 12px;}
#app .hardening-home-next p{font-size:15px;margin:0;max-width:540px;}
#app .hardening-home-next .hardening-contact-actions{margin:0;flex-shrink:0;}
#app :is(.hardening-home-about,.hardening-home-coverage) a:focus-visible{outline:3px solid var(--accent);outline-offset:5px;}
@media(max-width:1100px){
 #app .hardening-home-services .hardening-overview-grid{gap:20px;}
 #app .hardening-home-services .hardening-overview-image{aspect-ratio:1.9;}
 #app .hardening-home-services .hardening-overview-body h3{min-height:0;}
 .hardening-home-steps{gap:22px;}
 #app .hardening-home-about{gap:36px;}
 #app .hardening-home-next .next-step-copy{align-items:flex-start;}
 #app .hardening-home-next .hardening-contact-actions{max-width:230px;}
}
@media(max-width:700px){
 #app .hardening-hero{min-height:520px;}
 #app .hardening-hero .site-hero-copy{padding:40px var(--site-gutter);}
 #app .hardening-hero h1{font-size:clamp(35px,7.3vw,49px);letter-spacing:-1.4px;}
 #app .hardening-hero p{font-size:16px;max-width:460px;}
 #app .hardening-home-services{padding-top:38px;padding-bottom:40px;}
 #app .hardening-home-services .hardening-services-intro{grid-template-columns:1fr;gap:16px;margin-bottom:24px;}
 #app .hardening-home-services .hardening-services-intro>p{justify-self:start;max-width:480px;}
 #app .hardening-home-process,#app .hardening-home-about,#app .hardening-home-coverage{padding-top:36px;padding-bottom:36px;}
 .hardening-home-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;margin-top:26px;}
 #app .hardening-home-about{grid-template-columns:1fr;gap:22px;}
 #app .hardening-home-about h2{font-size:32px;}
 #app .hardening-home-about p{font-size:15px;}
 #app .hardening-home-coverage{display:block;}
 #app .hardening-home-coverage .secondary{margin-top:22px;}
 #app .hardening-home-next .next-step-copy{display:block;padding-top:36px;padding-bottom:40px;}
 #app .hardening-home-next .hardening-contact-actions{max-width:none;margin-top:24px;}
}
@media(max-width:620px){
 #app .hardening-home-services .hardening-overview-grid{grid-template-columns:1fr;gap:18px;}
 #app .hardening-home-services .hardening-overview-image{aspect-ratio:1.9;}
 #app .hardening-home-services .hardening-overview-body{padding:20px;}
 #app .hardening-home-services .hardening-overview-body h3{font-size:22px;}
 #app .hardening-home-services .hardening-overview-action{font-size:13px;}
}
@media(max-width:380px){
 #app .hardening-hero h1{font-size:34px;}
 .hardening-home-steps{gap:24px 18px;}
 #app .hardening-home-steps h3{font-size:20px;}
 #app .hardening-home-steps p{font-size:13px;}
}
@media(prefers-reduced-motion:reduce){
 #app .hardening-home-services .hardening-overview-card{transition:none;}
}

/* Savings leads the customer journey; the same example opens in the calculator. */
#app .hardening-hero .hardening-savings-hero{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.85fr);align-items:center;gap:48px;width:100%;padding:48px var(--site-gutter);}
#app .hardening-savings-hero .site-hero-copy{padding:0;max-width:none;}
#app .hardening-savings-hero h1{font-size:clamp(38px,4.25vw,62px);max-width:700px;}
#app .hardening-savings-hero .site-hero-copy>p{max-width:540px;font-size:16px;line-height:1.7;}
#app .hardening-savings-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;}
body:not(.studio-open):not(.internal-view) #app .hardening-savings-actions .a1-hero-savings-cta{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:54px;padding:15px 22px;margin:0;border:1px solid #af4f24;border-radius:6px;background:#af4f24;color:#fff;font-size:15px;font-weight:650;text-decoration:none;}
body:not(.studio-open):not(.internal-view) #app .hardening-savings-actions .a1-hero-savings-cta:hover{background:#963f1b;border-color:#963f1b;}
body:not(.studio-open):not(.internal-view) #app .hardening-savings-actions .hero-service-link{display:inline-flex;font-size:13px;margin:0;gap:18px;}
#app .hardening-savings-example{background:#fffaf1;color:#202b2d;border:1px solid #d9c6b4;border-radius:12px;padding:30px;box-shadow:0 16px 40px #0002;min-width:0;}
#app .hardening-example-label{display:inline-block;border:1px solid #b77853;border-radius:4px;padding:6px 8px;font:700 10px/1.4 var(--body);letter-spacing:1px;color:#823818;}
#app .hardening-savings-example p{max-width:none;color:#202b2d;}
#app .hardening-savings-example .hardening-example-caption{font-size:14px;line-height:1.5;margin:22px 0 4px;}
#app .hardening-savings-example .hardening-example-amount{display:flex;align-items:baseline;gap:12px;margin:0 0 16px;line-height:1.1;}
#app .hardening-example-amount strong{font:650 clamp(44px,4.7vw,66px)/1.1 var(--heading);letter-spacing:-2px;}
#app .hardening-example-amount>span{font-size:16px;color:#626963;}
#app .hardening-savings-example .hardening-example-five-year{font-size:16px;font-weight:650;line-height:1.5;margin:0;padding:15px 0;border-block:1px solid #ddd7cc;}
#app .hardening-example-five-year>span{display:block;font-size:11px;font-weight:400;color:#626963;margin-top:3px;}
#app .hardening-savings-example .hardening-example-assumptions{font-size:12px;line-height:1.7;color:#58615b;margin:17px 0 10px;}
#app .hardening-savings-example>a{display:inline-flex;align-items:center;gap:18px;font-size:13px;font-weight:600;color:#97401d;text-underline-offset:4px;min-height:40px;}
#app .hardening-savings-hero a:focus-visible{outline:3px solid #c65e2d;outline-offset:5px;}
@media(max-width:1000px){
 #app .hardening-hero .hardening-savings-hero{gap:28px;grid-template-columns:minmax(0,1.1fr) minmax(280px,1fr);}
 #app .hardening-savings-hero h1{font-size:40px;letter-spacing:-1.5px;}
 #app .hardening-savings-example{padding:24px;}
}
@media(max-width:800px){
 #app .hardening-hero .hardening-savings-hero{grid-template-columns:1fr;gap:28px;padding:32px var(--site-gutter);}
 #app .hardening-savings-hero h1{font-size:clamp(32px,6vw,44px);margin:14px 0;}
 #app .hardening-savings-hero .site-hero-copy>p{font-size:15px;line-height:1.65;margin-bottom:20px;max-width:560px;}
 #app .hardening-savings-example{max-width:560px;}
 #app .hardening-example-amount strong{font-size:52px;}
}
