/* Consolidated homepage: existing palette and contact components preserved. */
/* Original apartment ink reveal, integrated into the service catalog. */
#gw-apartment-ink{background:var(--gwb-soft)}
#gw-apartment-ink .gwi-art{position:relative;width:100%;aspect-ratio:4/3;isolation:isolate;-webkit-mask-image:linear-gradient(to right,transparent,var(--gwb-ink) 2%,var(--gwb-ink) 98%,transparent),linear-gradient(to bottom,transparent,var(--gwb-ink) 1%,var(--gwb-ink) 96%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,var(--gwb-ink) 2%,var(--gwb-ink) 98%,transparent),linear-gradient(to bottom,transparent,var(--gwb-ink) 1%,var(--gwb-ink) 96%,transparent);mask-composite:intersect}
#gw-apartment-ink .gwi-real,#gw-apartment-ink .gwi-composite{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:contain;max-width:100%}
#gw-apartment-ink .gwi-real{visibility:visible}
#gw-apartment-ink .gwi-composite{visibility:hidden;overflow:hidden;pointer-events:none}
#gw-apartment-ink.gwi-ready .gwi-real{visibility:hidden}
#gw-apartment-ink.gwi-ready .gwi-composite{visibility:visible}
#gw-apartment-ink.gwi-static .gwi-real{visibility:visible}
#gw-apartment-ink.gwi-static .gwi-composite{visibility:hidden}

body.gw-home-consolidated #gw-apartment-ink{display:block;width:min(100%,760px);min-width:0;margin:28px auto 0;scroll-margin-top:80px}
body.gw-home-consolidated #services #gw-apartment-ink .gwi-art{aspect-ratio:4/3}
body.gw-home-consolidated #how-it-works,body.gw-home-consolidated #pricing-info{padding-block:64px}
body.gw-home-consolidated #how-it-works .gp-process{display:block}
body.gw-home-consolidated #how-it-works .gp-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
body.gw-home-consolidated #how-it-works .gp-steps li{display:flex;flex-direction:column;align-items:flex-start;margin:0}
body.gw-home-consolidated #how-it-works .gp-section-head{margin-bottom:32px}
body.gw-home-consolidated #pricing-info .gp-price-heading{margin-top:0;margin-bottom:28px}
body.gw-home-consolidated #pricing-info .gp-price-grid article h3{font-size:1.25rem;line-height:1.5;font-weight:600;margin:20px 0 12px;color:var(--gwb-ink)}
body.gw-home-consolidated .gw-home-terms{border-top:1px solid var(--gwb-soft);margin-top:28px;padding-top:28px}
body.gw-home-consolidated .gw-home-terms h3{font-size:1.25rem;line-height:1.5;margin:0 0 20px}
body.gw-home-consolidated .gw-home-terms ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 32px;list-style:none;margin:0;padding:0}
body.gw-home-consolidated .gw-home-terms li{color:var(--gwb-muted);line-height:1.7;font-size:1rem}
body.gw-home-consolidated .gw-home-terms strong{color:var(--gwb-ink);font-weight:600}
body.gw-home-consolidated .gw-home-area-intro{max-width:850px;margin:20px 0 24px;font-size:1.125rem;line-height:1.7;color:var(--gwb-muted)}
@media(max-width:900px){body.gw-home-consolidated #how-it-works .gp-steps{grid-template-columns:minmax(0,1fr)}body.gw-home-consolidated #how-it-works .gp-steps li{flex-direction:row}body.gw-home-consolidated .gw-home-terms ul{grid-template-columns:minmax(0,1fr)}}
@media(max-width:800px){body.gw-home-consolidated #how-it-works,body.gw-home-consolidated #pricing-info{padding-block:48px}body.gw-home-consolidated #gw-apartment-ink{margin-top:24px}}
@media(max-width:360px){body.gw-home-consolidated #how-it-works .gp-steps li{flex-direction:column}}

body.gw-home-consolidated #gw-area-preview .gz-area-caption{max-width:none;margin:20px 4px 0;font-size:14px;line-height:1.7;color:var(--gwb-muted)}

html:has(body.gw-home-consolidated){overflow-x:clip}body.gw-home-consolidated{overflow-x:clip}
body.gw-home-consolidated .gp-header{background:transparent}
body.gw-home-consolidated #gw-animated-hero{overflow:clip;overflow-clip-margin:var(--gwh-header-height,104px);clip-path:inset(calc(-1 * var(--gwh-header-height,104px)) 0 0)}
body.gw-home-consolidated #gw-animated-hero .gwh-orbit-geometry{overflow:visible}
body.gw-home-consolidated #gw-animated-hero .gwh-outer-ring{fill:var(--gwb-soft)}

body.gw-home-consolidated #pricing-info,body.gw-home-consolidated #faq,body.gw-home-consolidated #contact{background:var(--gwb-white)}
body.gw-home-consolidated #service-area,body.gw-home-consolidated #preparation,body.gw-home-consolidated #guides{background:var(--gwb-soft)}

@media(max-width:991px){
 body.gw-home-consolidated #gw-animated-hero .gwh-wrap{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:32px 20px 48px;gap:0}
 body.gw-home-consolidated #gw-animated-hero .gwh-workflow-scene{width:calc(100% + 40px);max-width:none;margin:28px -20px 0}
 body.gw-home-consolidated #gw-animated-hero .gwh-flow-card{min-height:96px;padding:12px;gap:10px}
 body.gw-home-consolidated #gw-animated-hero .gwh-result-card{padding:16px;min-height:104px}
 body.gw-home-consolidated #gw-animated-hero .gwh-result-head h2{font-size:1rem;line-height:1.5}
 body.gw-home-consolidated #gw-animated-hero .gwh-result-icon{width:32px;height:38px}
 body.gw-home-consolidated #gw-animated-hero .gwh-result-foot{font-size:.875rem;line-height:1.5;margin-top:12px}
 body.gw-home-consolidated #gw-animated-hero .gwh-flow-icon{width:32px;height:38px}
 body.gw-home-consolidated #gw-animated-hero .gwh-flow-copy span{font-size:.75rem;line-height:1.4}
 body.gw-home-consolidated #gw-animated-hero .gwh-flow-copy h2{font-size:1rem;line-height:1.5}
 body.gw-home-consolidated #gw-animated-hero .gwh-flow-copy p{font-size:.875rem;line-height:1.5}
}
@media(max-width:360px){body.gw-home-consolidated #gw-animated-hero .gwh-wrap{padding-inline:16px}body.gw-home-consolidated #gw-animated-hero .gwh-workflow-scene{width:calc(100% + 32px);margin-inline:-16px}}

/* Mobile contact size contract: equal columns, 12px gap, >=52px height. */
@media(max-width:760px){
 body.gw-home-consolidated #gw-animated-hero .gwh-flow-card,body.gw-home-consolidated #gw-animated-hero .gwh-result-card{will-change:transform,opacity}
 body.gw-home-consolidated #gw-animated-hero .gwh-contact-actions,body.gw-home-consolidated #contact .gp-contact-channels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;max-width:none;container-type:inline-size;container-name:gw-mobile-contact}
 body.gw-home-consolidated #gw-animated-hero .gwh-contact-actions a,body.gw-home-consolidated #contact .gp-contact-channels a{width:100%!important;max-width:100%!important;min-width:0!important;min-height:52px!important;height:auto!important;padding:13px 8px!important;font-size:1rem!important;line-height:1.5!important;gap:6px!important;white-space:nowrap}
 body.gw-home-consolidated #gw-animated-hero .gwh-contact-actions a span,body.gw-home-consolidated #contact .gp-contact-channels a span{white-space:nowrap}
 body.gw-home-consolidated #gw-animated-hero .gwh-contact-actions a svg,body.gw-home-consolidated #contact .gp-contact-channels a svg{width:1rem;height:1rem;flex:none}
 @container gw-mobile-contact (max-width:17rem){body.gw-home-consolidated #gw-animated-hero .gwh-contact-actions a,body.gw-home-consolidated #contact .gp-contact-channels a{grid-column:1/-1}}
}


/* Native source motion: original transforms and responsive compositions. */
body.gw-home-consolidated #gw-animated-hero.gwh-native-ready{z-index:2;overflow:visible;clip-path:inset(calc(-1 * var(--gwh-header-height,104px)) 0 calc(-1 * var(--gwh-after-height,2000px)))}
body.gw-home-consolidated #gw-animated-hero.gwh-native-ready .gwh-orbit-geometry,body.gw-home-consolidated #gw-animated-hero.gwh-native-ready .gwh-flow-card,body.gw-home-consolidated #gw-animated-hero.gwh-native-ready .gwh-result-card{display:none}
body.gw-home-consolidated .gwh-native-art{position:absolute;z-index:0;pointer-events:none;overflow:visible}
body.gw-home-consolidated .gwh-native-art svg{display:block;overflow:visible}
body.gw-home-consolidated #gw-animated-hero.gwh-native-ready .gwh-wrap{position:relative;z-index:1}
body.gw-home-consolidated #pricing-info .gp-lead{max-width:none;margin:24px 0 20px;padding:18px 24px;border:1px solid var(--gwb-soft);border-radius:16px;font-size:1rem;line-height:1.7}
body.gw-home-consolidated #pricing-info .gw-home-terms{padding:28px;border:1px solid var(--gwb-soft);border-radius:24px;background:var(--gwb-soft);margin-top:0}
body.gw-home-consolidated #pricing-info .gw-home-terms h3{margin:0 0 20px}
body.gw-home-consolidated #pricing-info .gw-home-terms ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;list-style:none;padding:0;margin:0;counter-reset:terms;columns:auto}
body.gw-home-consolidated #pricing-info .gw-home-terms li{position:relative;margin:0;padding:20px 20px 20px 68px;border:1px solid var(--gwb-soft);border-radius:16px;background:var(--gwb-white);line-height:1.7;counter-increment:terms}
body.gw-home-consolidated #pricing-info .gw-home-terms li::before{content:counter(terms,decimal-leading-zero);position:absolute;left:18px;top:20px;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--gwb-soft);color:var(--gwb-blue);font-size:.8125rem;font-weight:600}
body.gw-home-consolidated #pricing-info .gw-home-terms li:last-child{grid-column:1/-1}
body.gw-home-consolidated #pricing-info .gw-home-terms strong{display:block;margin-bottom:4px;color:var(--gwb-ink)}
@media(max-width:760px){body.gw-home-consolidated #pricing-info .gw-home-terms{padding:18px;border-radius:20px}body.gw-home-consolidated #pricing-info .gw-home-terms ul{grid-template-columns:minmax(0,1fr)}body.gw-home-consolidated #pricing-info .gw-home-terms li{padding:16px 14px 16px 58px}body.gw-home-consolidated #pricing-info .gw-home-terms li::before{left:12px;top:16px;width:30px;height:30px}body.gw-home-consolidated #pricing-info .gp-lead{padding:16px 18px}}

/* Services content stays above the continued native artwork, as navigation does. */
body.gw-home-consolidated #services>div{position:relative;z-index:3}
/* Pricing palette only: white, charcoal and the reference emerald. */
body.gw-home-consolidated #pricing-info .gp-price-heading h2,body.gw-home-consolidated #pricing-info .gp-price-heading p,body.gw-home-consolidated #pricing-info .gp-price-grid p,body.gw-home-consolidated #pricing-info .gp-lead{color:var(--gwb-ink)}
body.gw-home-consolidated #pricing-info .gp-price-grid h3,body.gw-home-consolidated #pricing-info .gz-feature-icon{color:var(--gwb-blue)}
body.gw-home-consolidated #pricing-info .gz-feature-icon{background:var(--gwb-white)}
body.gw-home-consolidated #pricing-info .gw-home-terms{background:var(--gwb-white);border-color:var(--gwb-line)}
body.gw-home-consolidated #pricing-info .gw-home-terms h3,body.gw-home-consolidated #pricing-info .gw-home-terms strong{color:var(--gwb-ink)}
body.gw-home-consolidated #pricing-info .gw-home-terms li{background:var(--gwb-white);border-color:var(--gwb-line);color:var(--gwb-blue)}
body.gw-home-consolidated #pricing-info .gw-home-terms li::before{background:var(--gwb-blue);color:var(--gwb-white)}
body.gw-home-consolidated #pricing-info .gp-lead,body.gw-home-consolidated #pricing-info .gp-price-grid article{border-color:var(--gwb-line)}

/* Pricing: three color fields, followed by one clear list of conditions. */
body.gw-home-consolidated #pricing-info .gp-price-heading{max-width:none;margin-bottom:28px}
body.gw-home-consolidated #pricing-info .gp-price-heading h2{font-size:clamp(1.75rem,2.5vw,2.25rem);line-height:1.4;max-width:820px;color:var(--gwb-ink)}
body.gw-home-consolidated #pricing-info .gp-price-heading p{max-width:780px;font-size:1rem;line-height:1.8;color:var(--gwb-muted)}
body.gw-home-consolidated #pricing-info .gp-price-grid{gap:18px;align-items:stretch}
body.gw-home-consolidated #pricing-info .gp-price-grid article{padding:28px;min-height:0;border:0;border-radius:24px;box-shadow:none;display:flex;flex-direction:column}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(3){background:var(--gwb-white);box-shadow:inset 0 0 0 .5px var(--gwb-blue),0 3px 10px rgba(206,60,43,.06)}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(2){background:var(--gwb-soft)}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(1){background:var(--gwb-blue)}
body.gw-home-consolidated #pricing-info .gp-price-grid article h3{font-size:1.25rem;line-height:1.5;margin:24px 0 12px}
body.gw-home-consolidated #pricing-info .gp-price-grid article p{font-size:1rem;line-height:1.75;margin:0;overflow-wrap:anywhere}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(1) h3{color:var(--gwb-white)}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(1) p{color:var(--gwb-white)}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(n+2) h3{color:var(--gwb-ink)}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(n+2) p{color:var(--gwb-muted)}
body.gw-home-consolidated #pricing-info .gp-price-grid article .gz-feature-icon{width:48px;height:48px;border-radius:14px;margin:0;display:grid;place-items:center}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(1) .gz-feature-icon{background:rgba(255,255,255,.13);color:var(--gwb-white)}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(2) .gz-feature-icon{background:var(--gwb-soft);color:var(--gwb-blue)}
body.gw-home-consolidated #pricing-info .gp-lead{margin:24px 0 36px;padding:4px 0 4px 18px;border:0;border-left:3px solid var(--gwb-blue);border-radius:0;background:transparent;color:var(--gwb-muted);font-size:1rem;line-height:1.75}
body.gw-home-consolidated #pricing-info .gw-home-terms{padding:0;margin:0;border:0;border-radius:0;background:transparent}
body.gw-home-consolidated #pricing-info .gw-home-terms h3{margin:0 0 8px;color:var(--gwb-ink);font-size:1.5rem;line-height:1.5}
body.gw-home-consolidated #pricing-info .gw-home-terms ul{display:block;margin:0;padding:0;list-style:none;counter-reset:terms}
body.gw-home-consolidated #pricing-info .gw-home-terms li{display:grid;grid-template-columns:minmax(140px,210px) minmax(0,1fr);gap:20px;position:relative;padding:22px 0 22px 54px;margin:0;border:0;border-bottom:1px solid var(--gwb-soft);border-radius:0;background:transparent;color:var(--gwb-muted);font-size:1rem;line-height:1.75;counter-increment:terms;overflow-wrap:anywhere}
body.gw-home-consolidated #pricing-info .gw-home-terms li:last-child{border-bottom:0}
body.gw-home-consolidated #pricing-info .gw-home-terms li::before{position:absolute;top:22px;left:0;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--gwb-blue);color:var(--gwb-white);font-size:.75rem;line-height:1;font-weight:600}
body.gw-home-consolidated #pricing-info .gw-home-terms strong{display:block;margin:0;color:var(--gwb-ink);font-weight:600}
body.gw-home-consolidated #pricing-info .gw-term-copy{color:var(--gwb-muted)}
@media(max-width:760px){
 body.gw-home-consolidated #pricing-info .gp-price-grid{gap:14px}
 body.gw-home-consolidated #pricing-info .gp-price-grid article{padding:24px;border-radius:20px}
 body.gw-home-consolidated #pricing-info .gp-price-grid article h3{margin-top:18px}
 body.gw-home-consolidated #pricing-info .gw-home-terms li{display:block;padding:20px 0 20px 46px}
 body.gw-home-consolidated #pricing-info .gw-home-terms li::before{top:20px;width:30px;height:30px}
 body.gw-home-consolidated #pricing-info .gw-home-terms strong{margin-bottom:6px}
}

body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(3) .gz-feature-icon{background:var(--gwb-paper);color:var(--gwb-blue)}

/* Goodworks icon contract: semantic 24-unit line drawings, rounded 1.8-unit strokes. */
body.gw-home-consolidated svg[data-gw-icon]{display:block;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.gw-home-consolidated #services[data-gw-home-services] .gw-hs-icon{width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--gwb-paper);color:var(--gwb-blue)}
body.gw-home-consolidated #services[data-gw-home-services] .gw-hs-icon svg{width:24px;height:24px}
body.gw-home-consolidated #services .gw-hs-arrow{width:18px;height:18px;stroke-width:1.8}
body.gw-home-consolidated #pricing-info .gz-feature-icon svg,body.gw-home-consolidated #preparation .gz-feature-icon svg{width:24px;height:24px}
body.gw-home-consolidated #pricing-info .gp-price-grid article:nth-child(2) .gz-feature-icon{color:var(--gwb-blue)}
body.gw-home-consolidated #preparation .gz-feature-icon{width:48px;min-width:48px;height:48px;flex:none;display:grid;place-items:center;border-radius:14px;background:var(--gwb-soft);color:var(--gwb-blue)}
body.gw-home-consolidated #gw-animated-hero .gwh-contact-actions .gwh-call svg{display:block}
body.gw-home-consolidated #gw-animated-hero .gwh-contact-actions svg,body.gw-home-consolidated #contact .gp-contact-channels svg{width:18px;height:18px;flex:none;stroke-width:1.8}
body.gw-home-consolidated .gp-mobile-dock svg{width:1rem;height:1rem;flex:none;stroke-width:1.8}
body.gw-home-consolidated #gw-animated-hero .gwh-flow-icon svg,body.gw-home-consolidated #gw-animated-hero .gwh-result-icon svg{width:24px;height:24px}
body.gw-home-consolidated #gw-animated-hero .gwh-mint,body.gw-home-consolidated #gw-animated-hero .gwh-warm{background:var(--gwb-soft);color:var(--gwb-blue)}
body.gw-home-consolidated #gw-animated-hero .gwh-blue{color:var(--gwb-ink)}
body.gw-home-consolidated #gw-animated-hero .gwh-peach{color:var(--gwb-blue)}
body.gw-home-consolidated #gw-animated-hero .gwh-result-work .gwh-result-icon{color:var(--gwb-white)}
@media(max-width:760px){body.gw-home-consolidated #services[data-gw-home-services] .gw-hs-icon{width:40px;height:40px}body.gw-home-consolidated #services[data-gw-home-services] .gw-hs-icon svg{width:22px;height:22px}body.gw-home-consolidated #gw-animated-hero .gwh-contact-actions svg,body.gw-home-consolidated #contact .gp-contact-channels svg{width:1rem;height:1rem}}

/* GW-HOME-HERO-HEADER-BLEED-v1: keep header controls above the existing hero artwork, and its background below. */
html body[class].gwb.gw-home-consolidated #gw-site-header{z-index:auto;isolation:auto}
html body[class].gwb.gw-home-consolidated #gw-site-header .gwn-header-row{position:relative;z-index:60}
