.hero-banner{text-align:center;background:url(/umich_campus.jpg) 50%/cover no-repeat;justify-content:center;align-items:center;min-height:clamp(300px,60svh,600px);padding:clamp(32px,6vw,72px) clamp(16px,8vw,120px);display:flex;position:relative}.hero-banner:before{content:"";background:color-mix(in srgb, var(--color-navy-overlay) 66.7%, transparent);position:absolute;inset:0}.hero-banner-content{width:min(100%,46rem);color:var(--color-white);text-shadow:0 1px 3px color-mix(in srgb, var(--color-black) 70%, transparent), 0 0 1px color-mix(in srgb, var(--color-black) 90%, transparent);position:relative}.hero-banner-content h1{margin-bottom:clamp(16px,2.5vh,28px);font-size:clamp(2.2rem,4vw + 1.3vh,4.1rem);font-weight:700;line-height:1.1}.hero-banner-content p{opacity:.92;margin-bottom:clamp(28px,4vh,44px);font-size:clamp(1rem,1vw + .5rem,1.2rem)}.btn-maize{background:var(--color-maize-light);color:var(--color-blue);border:none;border-radius:14px;max-width:100%;padding:clamp(14px,1.5vw + 5px,20px) clamp(28px,4vw,48px);font-size:clamp(.95rem,.3vw + .78rem,1.12rem);font-weight:600;transition:background .2s,transform .2s,box-shadow .2s}.btn-maize:hover{background:var(--color-maize);box-shadow:0 8px 24px -6px color-mix(in srgb, var(--color-maize-light) 45%, transparent);transform:translateY(-2px)}.hero-section{background:linear-gradient(135deg, var(--color-maize-soft), var(--color-white));padding:40px 8vw 56px}.hero{text-align:left;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center;gap:48px;padding:0;display:grid}.hero-content h1{color:var(--color-blue);margin-bottom:16px;font-size:clamp(2.5rem,3vw + 1.5rem,3.5rem)}.hero-subtitle{color:var(--color-muted);margin-bottom:24px;font-size:1.1rem}.eyebrow{color:var(--color-navy);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:.75rem;font-weight:600}.hero-actions{flex-wrap:wrap;gap:16px;margin-bottom:32px;display:flex}.hero-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.stat-value{color:var(--color-blue);font-size:1.5rem;font-weight:700;display:block}.stat-label{color:var(--color-muted);font-size:.9rem}.hero-card{background:var(--color-white);box-shadow:var(--shadow-card);border:1px solid color-mix(in srgb, var(--color-ink) 8%, transparent);border-radius:24px;margin-top:-32px;padding:24px 32px 32px}.card-header h3{color:var(--color-blue);margin-top:12px;margin-bottom:12px}.card-header p{color:var(--color-muted);margin-bottom:20px}.card-list{gap:12px;display:grid}.card-item{color:var(--color-slate);align-items:center;gap:12px;font-weight:500;display:flex}.icon{background:color-mix(in srgb, var(--color-blue) 8%, transparent);width:28px;height:28px;color:var(--color-blue);border-radius:8px;place-items:center;display:grid}.section{padding:clamp(40px,7vh,72px) clamp(16px,3vw,24px)}.section-header{text-align:center;max-width:560px;margin:0 auto 32px}.section-header h2{color:var(--color-navy);margin-bottom:12px;font-size:clamp(1.5rem,2vw + .5rem,2rem)}.section-header p{color:var(--color-muted)}.muted{background:var(--color-fog)}.savings-section{background:var(--color-fog);padding:clamp(56px,10vh,104px) clamp(24px,6vw,80px)}.savings-calc{text-align:center;max-width:560px;margin:0 auto}.savings-heading{color:var(--color-navy);margin-bottom:clamp(12px,2vh,20px);font-size:clamp(1.8rem,3.5vw + .5rem,3rem);font-weight:800;line-height:1.15}.savings-amount{color:var(--color-navy);font-variant-numeric:tabular-nums}.savings-detail{color:var(--color-muted);margin-bottom:4px;font-size:clamp(.92rem,.3vw + .78rem,1.08rem)}.savings-detail-underline{color:var(--color-navy);text-underline-offset:3px;font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px}.savings-learn-text{color:var(--color-muted);margin-bottom:0;font-size:clamp(.82rem,.2vw + .72rem,.92rem)}.savings-learn-link{font:inherit;color:var(--color-muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline;transition:color .2s;display:inline}.savings-learn-link:hover{color:var(--color-navy)}.savings-info-area{max-width:400px;margin:0 auto clamp(16px,2.5vh,28px);padding:0 8px;position:relative}.savings-info-text{transition:opacity .2s}.savings-info-text .savings-detail{margin-bottom:4px}.savings-calc--dragging .savings-info-text{opacity:0;pointer-events:none}.savings-bubble{top:50%;left:var(--pct,0%);transform:translateX(calc(var(--pct,0%) * -1)) translateY(calc(-50% + 4px));pointer-events:none;opacity:0;background:var(--color-navy);color:var(--color-white);white-space:nowrap;border-radius:999px;padding:6px 16px;font-size:.92rem;font-weight:600;transition:opacity .2s,transform .15s,left .15s;position:absolute}.savings-calc--dragging .savings-bubble{opacity:1;transform:translateX(calc(var(--pct,0%) * -1)) translateY(-50%)}.savings-slider-wrap{max-width:400px;margin:0 auto clamp(32px,4.5vh,52px);padding:0 8px}.savings-slider{appearance:none;background:linear-gradient(to right, var(--color-maize-light) 0%, var(--color-maize-light) var(--pct,66.6%), color-mix(in srgb, var(--color-ink) 12%, transparent) var(--pct,66.6%), color-mix(in srgb, var(--color-ink) 12%, transparent) 100%);cursor:pointer;border-radius:2px;outline:none;width:100%;height:4px}.savings-slider::-webkit-slider-thumb{appearance:none;background:var(--color-white);border:1.5px solid color-mix(in srgb, var(--color-ink) 20%, transparent);width:28px;height:28px;box-shadow:0 2px 6px color-mix(in srgb, var(--color-ink) 15%, transparent);cursor:pointer;border-radius:50%;transition:box-shadow .2s,transform .2s}.savings-slider::-webkit-slider-thumb:hover{box-shadow:0 4px 12px color-mix(in srgb, var(--color-ink) 22%, transparent);transform:scale(1.1)}.savings-slider::-moz-range-thumb{background:var(--color-white);border:1.5px solid color-mix(in srgb, var(--color-ink) 20%, transparent);width:28px;height:28px;box-shadow:0 2px 6px color-mix(in srgb, var(--color-ink) 15%, transparent);cursor:pointer;border-radius:50%}.savings-slider::-moz-range-track{background:0 0;border-radius:2px;height:4px}.estimate-backdrop{z-index:2000;background:color-mix(in srgb, var(--color-ink) 40%, transparent);place-items:center;padding:24px;animation:.2s fadeIn;display:grid;position:fixed;inset:0}.estimate-modal{background:var(--color-white);width:100%;max-width:540px;max-height:calc(100dvh - 48px);box-shadow:0 24px 60px -16px color-mix(in srgb, var(--color-ink) 30%, transparent);border-radius:20px;padding:clamp(28px,4vw,44px);animation:.25s modalSlideUp;position:relative;overflow-y:auto}.estimate-modal h2{color:var(--color-navy);margin-bottom:20px;font-size:clamp(1.3rem,.5vw + 1rem,1.7rem);font-weight:700;line-height:1.2}.estimate-modal p{color:var(--color-slate);margin-bottom:16px;font-size:clamp(.88rem,.15vw + .8rem,.98rem);line-height:1.7}.estimate-modal p:last-child{margin-bottom:0}.estimate-close{background:var(--color-fog);width:36px;height:36px;color:var(--color-navy);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .15s;display:flex;position:absolute;top:16px;right:16px}.estimate-close svg{display:block}.estimate-close:hover{background:color-mix(in srgb, var(--color-ink) 10%, transparent)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.section-listings{--listings-space-unit:clamp(6px, 1vw, 12px);--listings-inline-pad:clamp(16px, 3vw, 24px);--listings-header-pad:var(--listings-space-unit);--listings-carousel-pad:var(--listings-space-unit);padding:calc(var(--listings-space-unit) * 2) var(--listings-inline-pad);background:var(--color-white);overflow:visible}.carousel-header{padding-block:var(--listings-header-pad);justify-content:space-between;align-items:center;gap:16px;margin:0;display:flex}.carousel-header h2{color:var(--color-navy);margin:0;font-size:clamp(1.3rem,1.5vw + .5rem,1.5rem)}.carousel-link{color:var(--color-navy);white-space:nowrap;font-weight:500;transition:color .2s}.carousel-link:hover{color:var(--color-blue)}.listing-carousel{scroll-snap-type:x mandatory;scroll-padding-inline:var(--listings-inline-pad);-webkit-overflow-scrolling:touch;padding:var(--listings-carousel-pad) var(--listings-inline-pad) 40px;margin:0 calc(var(--listings-inline-pad) * -1) -20px;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-mask-image:linear-gradient(to right, transparent 0, var(--color-black) calc(var(--listings-inline-pad) * .75), var(--color-black) calc(100% - var(--listings-inline-pad) * .75), transparent 100%);-webkit-mask-image:linear-gradient(to right, transparent 0, var(--color-black) calc(var(--listings-inline-pad) * .75), var(--color-black) calc(100% - var(--listings-inline-pad) * .75), transparent 100%);mask-image:linear-gradient(to right, transparent 0, var(--color-black) calc(var(--listings-inline-pad) * .75), var(--color-black) calc(100% - var(--listings-inline-pad) * .75), transparent 100%);gap:clamp(10px,1.6vw,18px);display:flex;overflow-x:auto}.listing-carousel:active{cursor:grabbing}.listing-carousel::-webkit-scrollbar{height:0;display:none}.listing-carousel .listing-card{scroll-snap-align:start;flex:0 0 clamp(240px,32vw,320px)}.listing-carousel .listing-card-image{aspect-ratio:1}@media (max-height:760px){.listing-carousel .listing-card-image{aspect-ratio:4/3}}.split{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center;gap:40px;display:grid}.checklist{color:var(--color-slate);gap:12px;margin-top:16px;list-style:none;display:grid}.checklist li{padding-left:28px;position:relative}.checklist li:before{content:"✔";color:var(--color-blue);font-weight:600;position:absolute;left:0}.listing-preview{gap:16px;display:grid}.marketing-listing-card{background:var(--color-white);box-shadow:0 18px 40px -30px color-mix(in srgb, var(--color-ink) 50%, transparent);border:1px solid color-mix(in srgb, var(--color-ink) 8%, transparent);border-radius:20px;padding:22px}.marketing-listing-tag{background:color-mix(in srgb, var(--color-blue) 10%, transparent);color:var(--color-navy);border-radius:999px;margin-bottom:10px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-block}.marketing-listing-card h3{color:var(--color-blue);margin-bottom:8px}.marketing-listing-card p{color:var(--color-muted);margin-bottom:16px}.legal-page{background:var(--color-white);padding:64px 8vw 80px}.legal-hero{max-width:720px;margin-bottom:32px}.legal-hero h1{color:var(--color-blue);margin-bottom:12px;font-size:clamp(2.2rem,2.5vw + 1.5rem,3rem)}.legal-hero p{color:var(--color-muted)}.legal-content{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.legal-card{background:var(--color-white);border:1px solid color-mix(in srgb, var(--color-ink) 8%, transparent);box-shadow:0 18px 40px -30px color-mix(in srgb, var(--color-ink) 40%, transparent);border-radius:20px;padding:28px}.legal-card h2{color:var(--color-blue);margin-bottom:12px}.legal-card p{color:var(--color-muted);margin-bottom:12px}.legal-card ul{color:var(--color-slate);gap:8px;margin-bottom:16px;margin-left:20px;display:grid}.legal-card a{color:var(--color-blue);text-decoration:underline}@media (max-width:600px){.hero-banner{min-height:clamp(260px,52svh,400px);padding:32px 6vw}.hero-banner-content{text-align:left}.hero-banner-content p{text-align:center;margin-bottom:24px}.hero-banner-content h1{text-align:center}.hero-banner-content .btn-maize{width:100%;padding:14px 18px}.section{padding:clamp(32px,6vh,56px) 6vw}.carousel-header{flex-direction:column;align-items:flex-start}.listing-carousel{margin-inline:-6vw;padding-inline:6vw;scroll-padding-inline:6vw}.listing-carousel .listing-card{flex-basis:min(84vw,320px)}.savings-section{padding-left:6vw;padding-right:6vw}.legal-page{padding:56px 6vw 64px}}
