:root{--bg:#f8f9fc;--ink:#152238;--navy:#0b1829;--purple:#6248ee;--lavender:#eceaff;--gold:#ffd48c;--line:#e1e7f0;--muted:#68778b;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);line-height:1.56}a{color:var(--purple);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{line-height:1.16;letter-spacing:-.04em}h1{font-size:clamp(2.8rem,6vw,5.8rem);margin:.4em 0}h2{font-size:clamp(2rem,3.5vw,3rem)}h3{font-size:1.3rem}.topbar{background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px max(5%,calc((100% - 1180px)/2));border-bottom:1px solid #ffffff1c}.logo{font-weight:800;letter-spacing:-.025em;color:#fff;font-size:1.15rem}.logo:hover{text-decoration:none}.topbar nav{display:flex;flex-wrap:wrap;gap:22px}.topbar nav a{color:#d8e0f3;font-size:.88rem}.container{width:min(1180px,90%);margin:auto}.narrow{max-width:730px}.center{text-align:center}.section{padding:85px 0}.hero{background:linear-gradient(120deg,#071526,#182546 65%,#2b225a);color:#fff;position:relative;min-height:560px;overflow:hidden;display:flex;align-items:center}.hero .container{position:relative;z-index:2}.hero h1{max-width:880px}.hero h1 em{font-style:normal;color:var(--gold)}.hero p{max-width:640px;color:#d7dfeb;font-size:1.1rem}.hero .small{font-size:.83rem}.aura{position:absolute;right:-180px;bottom:-350px;width:900px;height:850px;background:radial-gradient(closest-side,#cfa46c55,#5e4aed22 48%,transparent 75%);filter:blur(12px);pointer-events:none}.eyebrow{font-size:.74rem;font-weight:900;letter-spacing:.22em;color:#a58cff}.hero .eyebrow{color:var(--gold)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0}.button{display:inline-block;border:0;background:var(--purple);color:white;padding:14px 23px;font-size:.92rem;font-weight:750;border-radius:10px;cursor:pointer;text-decoration:none}.button:hover{background:#4832d5;text-decoration:none}.button.outline{background:transparent;border:1px solid #9197aa;color:inherit}.hero .button.outline{color:white;border-color:#9da4b9}.button.compact{padding:9px 14px;font-size:.83rem}.button.full{width:100%}.grid{display:grid;gap:21px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:white;border:1px solid var(--line);border-radius:15px;padding:28px;box-shadow:0 7px 25px #0d1e3a07}.card-icon{font-size:2rem;color:var(--purple)}.muted{color:var(--muted)}.small,small{font-size:.79rem}.dark{background:var(--navy);color:#fff}.dark p{color:#b9c6d7}.number{font-size:2rem;color:var(--gold)}.split{display:grid;grid-template-columns: .78fr 1.22fr;gap:70px;align-items:start}.form{background:#fff;padding:32px;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 45px #0d1e3a09}.form label,.ticket label{display:block;font-weight:650;font-size:.88rem;margin:0 0 17px}input,select,textarea{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #cbd4e0;background:white;border-radius:8px;color:#202b40;font:inherit;min-height:43px}textarea{resize:vertical}.checkbox{display:flex!important;align-items:flex-start;gap:12px;font-weight:400!important}.checkbox input{width:18px;min-height:18px;flex:none}.hp{position:absolute;left:-9999px;top:-9999px}.flash{margin:12px auto;background:#e8f7f2;border-left:4px solid #15966e;padding:12px 20px;max-width:900px}.flash.error{background:#ffebed;border-color:#da4a57}.admin-head{display:flex;justify-content:space-between;align-items:center;gap:30px}.admin-head h1{font-size:2.8rem}.admin-columns{margin:25px 0}.toolrow{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:30px 0}.toolrow form{display:flex;gap:8px}.toolrow select{width:auto;margin:0}.stats b{font-size:2.5rem;display:block;color:var(--purple)}.stats small{display:block;text-transform:uppercase;letter-spacing:.09em}.tablewrap{overflow-x:auto;margin:25px 0 60px}table{width:100%;border-collapse:collapse;background:#fff}td,th{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:13px 15px}th{background:#eff2fa;font-size:.83rem}.pill{background:#eeedff;color:#4b3fb0;padding:5px 8px;border-radius:6px;font-size:.76rem}.price{font-size:2.4rem;font-weight:800;color:var(--purple)}.proposal h1{font-size:2.8rem}.preserve{white-space:pre-wrap}.ticket{margin-bottom:20px}.ticket .admin-head{align-items:flex-start}footer{background:var(--navy);color:#d6dfed;display:flex;justify-content:space-between;gap:20px;padding:35px 5%;font-size:.75rem}@media(max-width:850px){.grid.three,.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr;gap:20px}.topbar{flex-direction:column}.hero{min-height:570px}}@media(max-width:520px){.grid.two,.grid.three,.grid.four{grid-template-columns:1fr}.hero{min-height:620px}.section{padding:55px 0}.form{padding:21px}.admin-head{align-items:flex-start;flex-direction:column}.topbar nav{justify-content:center;gap:12px}.toolrow{align-items:stretch}}@media print{.topbar,footer,.no-print,.button{display:none!important}.section{padding:10px 0}.proposal{width:100%}body{background:white}}

.minimum-card{margin:25px 0;background:#fff9e8;border:1px solid #f3d590;padding:21px;border-radius:12px}.minimum-card p{margin-bottom:0}.info-banner{margin:16px 0;background:#edf5fb;border:1px solid #bdd9ea;padding:18px;border-radius:10px;color:#173a59}.warning{padding:13px;background:#ffebe7;border:1px solid #db8772;border-radius:8px;color:#842d1b}.pill.priority{background:#fff0ca;color:#7a4909}.form h3{margin:30px 0 18px}.form h3:first-of-type{margin-top:0}[hidden]{display:none!important}
/* v4: photo-led premium page and six-question progressive intake */
.hero-photo{min-height:690px;background:radial-gradient(circle at 10% 6%,#29436e77,transparent 50%),#071523}
.hero-content{display:grid;grid-template-columns:1fr 1.02fr;gap:50px;align-items:center;padding-block:65px}
.hero-copy h1{font-size:clamp(3.2rem,5.5vw,5.9rem)}.hero-copy p{font-size:1.13rem}
.hero-photo-frame,.install-photo{position:relative;overflow:hidden;border-radius:20px;box-shadow:0 30px 70px #0007}
.hero-photo-frame{height:510px}.hero-photo-frame img,.install-photo img{width:100%;height:100%;object-fit:cover;display:block}
.photo-label{position:absolute;bottom:14px;left:14px;background:#081725dd;color:#fff;padding:6px 12px;font-size:.69rem;border-radius:6px;letter-spacing:.02em;backdrop-filter:blur(4px)}
.button-gold{background:#ffc974;color:#152238;font-weight:800}.button-gold:hover{background:#ffe0a5;color:#152238}.hero .hero-note{color:#e5e0d2;font-size:.79rem}
.experience-bar{background:#112538;color:#f9ead5;padding:26px 0;border-top:1px solid #a9b8c32e}.experience-items{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.experience-items div{display:grid;gap:5px}.experience-items b{font-size:.68rem;letter-spacing:.16em;color:#ffcb7e}.experience-items span{font-size:.9rem;line-height:1.4}
.section-intro{max-width:790px;margin-bottom:28px}.section-intro p{color:var(--muted);font-size:1.06rem;max-width:710px}
.inspiration-grid{display:grid;grid-template-columns:1.18fr 1fr;grid-template-rows:240px 240px;gap:18px}.image-card{position:relative;overflow:hidden;border-radius:18px;background:#13283b;color:#fff}.image-card-large{grid-row:span 2}.image-card img{width:100%;height:100%;object-fit:cover;filter:brightness(.76);transition:transform .35s ease}.image-card:hover img{transform:scale(1.04)}.image-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#06172ced,transparent 67%)}.image-card-copy{position:absolute;bottom:0;left:0;padding:25px;z-index:1}.image-card-copy span{font-size:.66rem;font-weight:850;letter-spacing:.16em;color:#ffcd87}.image-card-copy h3{font-size:1.58rem;margin:6px 0}.image-card-copy p{margin:0;color:#e1e4ec;font-size:.88rem}.source-note{color:#657387;font-size:.72rem;margin:15px 4px 0}
.feature-cards .card{background:#172e44;border-color:#2d4259;color:#fff}.feature-cards .card p{color:#cbd6e2}.feature-cards .card .icon{font-size:2rem;color:#ffcb7e}
.pathways .card{min-height:275px}.path-number{font-weight:800;color:#9983fd;font-size:.72rem;letter-spacing:.15em}.pathways .card h3{font-size:1.55rem}.pathways .card p{min-height:100px}.pathways .card span:last-child{font-size:.67rem;font-weight:800;color:#4f5875;letter-spacing:.08em}.pathways .card-highlight{border-color:#a391fa;box-shadow:0 15px 40px #5545a91d}
.care-band{background:#e9edf6}.care-number{font-size:2rem;font-weight:850;color:#6753cf}.care-band h3{font-size:1.2rem}.care-band p{font-size:.9rem}.care-fine{border-top:1px solid #cbd5e4;padding-top:20px;margin-top:32px;color:#586a7f}
.install-story{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.install-photo{height:405px}.install-story p{max-width:520px}.text-link{font-weight:800}
.quote-bg{background:linear-gradient(145deg,#0b1b2e,#1b2c44)}.quote-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:52px;align-items:start}.quote-intro{color:#fff;padding-top:40px}.quote-intro h2{font-size:clamp(2.3rem,3.8vw,3.8rem)}.quote-intro p{color:#ced9e4}.quote-intro .eyebrow{color:#ffcd87}.value-points{padding:15px 0}.value-points p{margin:10px 0;font-size:.94rem}.value-points b{color:#ffd18b;margin-right:7px}.trust-note{border-left:2px solid #ffca79;color:#e1e5ea;padding-left:17px;font-size:.85rem;margin-top:20px}
.wizard{min-height:540px;position:relative}.wizard-top{display:flex;justify-content:space-between;gap:12px;color:#596783;font-size:.72rem;letter-spacing:.08em;font-weight:850}.wizard-progress{background:#e8eaf3;height:7px;border-radius:8px;overflow:hidden;margin:14px 0 26px}.wizard-progress span{display:block;height:100%;width:14%;background:linear-gradient(90deg,#6d60ea,#d9a45a);transition:width .2s}.wizard-eyebrow{font-size:.72rem;font-weight:850;color:#7657ca;letter-spacing:.14em}.wizard .wizard-step h3{font-size:1.85rem;margin:10px 0}.wizard .wizard-step>p{color:#5d6d80;font-size:.94rem;margin-bottom:25px}.wizard-controls{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #e6e8ef;padding-top:23px;margin-top:23px}.wizard-controls .wizard-next{margin-left:auto}.wizard-back{background:#e9ecf5;color:#2e3c51}.wizard-back:hover{background:#dfe4ef;color:#2e3c51}.optional{color:#77859b;font-weight:400}
.style-options{border:0;padding:0;margin:0 0 22px}.style-options legend{font-weight:650;font-size:.88rem;margin-bottom:9px}.style-options label{display:flex!important;align-items:center;gap:13px;border:1px solid #d7dfea;border-radius:9px;padding:12px 14px;margin:7px 0!important;cursor:pointer}.style-options label:has(input:checked){border-color:#6655d8;background:#f2f0ff}.style-options label input{width:18px;height:18px;min-height:0;margin:0;flex:none}.style-options label span{display:grid}.style-options label b{font-size:.88rem}.style-options label small{font-size:.75rem;color:#65758a}
.investment-showcase{background:#101f37;color:#fff;border-radius:13px;padding:21px 24px;margin:10px 0 20px;display:grid;gap:5px}.investment-showcase>span{font-size:.7rem;color:#c0c8d5;font-weight:850;letter-spacing:.16em}.investment-showcase strong{color:#ffce85;font-size:2.45rem;letter-spacing:-.05em}.investment-showcase small{color:#d0d7e2}.wizard .info-banner{font-size:.88rem}.wizard .checkbox{font-size:.8rem}
@media(max-width:1000px){.hero-content{grid-template-columns:1fr 1fr;gap:20px}.hero-photo-frame{height:440px}.quote-layout{grid-template-columns:1fr 1.25fr;gap:25px}.install-story{gap:30px}}
@media(max-width:760px){.hero-content,.quote-layout,.install-story{grid-template-columns:1fr}.hero-photo{min-height:auto}.hero-content{padding-block:48px}.hero-photo-frame{height:370px}.experience-items{grid-template-columns:1fr;gap:18px}.inspiration-grid{grid-template-columns:1fr;grid-template-rows:260px 220px 220px}.image-card-large{grid-row:span 1}.quote-intro{padding:0}.install-photo{height:340px}.wizard{min-height:auto}}
@media(max-width:520px){.hero-copy h1{font-size:3.2rem}.hero-photo-frame{height:315px}.wizard .wizard-step h3{font-size:1.55rem}.inspiration-grid{grid-template-rows:240px 205px 205px}.image-card-copy{padding:18px}.image-card-copy h3{font-size:1.4rem}}

.inspiration-grid{grid-template-rows:repeat(3,158px)}
.image-card-large{grid-row:span 3}
.image-card:not(.image-card-large) .image-card-copy{padding:16px 20px}
.image-card:not(.image-card-large) .image-card-copy h3{font-size:1.36rem;margin:4px 0}
.image-card:not(.image-card-large) .image-card-copy p{font-size:.78rem}
@media(max-width:760px){.inspiration-grid{grid-template-rows:260px repeat(3,205px)}.image-card-large{grid-row:span 1}}

.investment-copy{border-left:3px solid #c79c58;padding:14px 18px;background:#f4f0e8;border-radius:0 9px 9px 0;color:#24314a;line-height:1.65}.image-card img{background:#172238}.hero-photo-frame img{object-position:center center}

/* Compact Utah service-area line and contact page */
.service-area-strip{background:#0f1d32;color:#e8edfa;border-top:1px solid #ffffff21}
.service-area-strip .container{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px 22px;padding:16px 0;text-align:center}
.service-area-strip strong{font-size:.66rem;letter-spacing:.16em;color:#ffce85}
.service-area-strip span{font-weight:700;font-size:.91rem;letter-spacing:.005em}
.service-area-strip small{font-size:.78rem;color:#b6c2d5}
.footer-contact{display:flex;gap:10px 18px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.footer-contact a{overflow-wrap:anywhere}
.contact-page{max-width:1100px}
.contact-intro{max-width:760px;margin-bottom:36px}
.contact-intro h1{margin:12px 0 16px}
.contact-intro>p{font-size:1.15rem;color:#54627a;max-width:700px}
.contact-options{align-items:stretch}
.contact-option{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:30px}
.contact-option h2{font-size:clamp(1.25rem,2.5vw,1.85rem);line-height:1.25;margin:10px 0;overflow-wrap:anywhere}
.contact-option h2 a{color:var(--ink)}
.contact-option h2 a:hover{color:var(--purple)}
.contact-option p{margin:6px 0 20px;color:#55647a;flex:1}
.contact-next{margin-top:36px;padding:30px;border-radius:16px;background:#eaeafd}
.contact-next h2{font-size:clamp(1.5rem,3vw,2rem);margin:10px 0 12px}
.contact-next p{max-width:750px}
@media(max-width:760px){.contact-options{grid-template-columns:1fr}.contact-option{padding:24px}.footer-contact{justify-content:flex-start}.service-area-strip .container{gap:6px 14px;padding:13px 0}.service-area-strip span{font-size:.83rem}}

/* Our Commitment feature and dedicated editorial page */
.commitment-feature{background:linear-gradient(125deg,#131d34 0%,#251d45 100%);color:#fff;overflow:hidden}
.commitment-feature-inner{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(220px,.75fr);align-items:center;gap:40px}
.commitment-feature h2{font-size:clamp(2rem,4vw,3.6rem);margin:16px 0 20px}
.commitment-feature p{max-width:640px;color:#d0d7e7;font-size:1.06rem;line-height:1.8;margin-bottom:28px}
.commitment-feature .button{background:#ffd48c;color:#142035}
.commitment-feature-accent{border:1px solid #ffffff25;border-radius:22px;min-height:245px;background:radial-gradient(circle at 60% 35%,#7257bc88,transparent 63%),#1a2740;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:28px}
.commitment-feature-accent span{color:#ffd48c;font-size:4.3rem;line-height:1}
.commitment-feature-accent strong{font-size:1.2rem;line-height:1.5;font-weight:600;color:#ebdeff}
.commitment-page-hero{background:linear-gradient(125deg,#0c192c,#242041 75%,#44315e);color:#fff;padding:100px 0 90px}
.commitment-page-hero h1{max-width:1060px;margin:18px 0 25px;font-size:clamp(2.6rem,5vw,5.3rem)}
.commitment-page-hero h1 em{font-style:normal;color:#ffd48c}
.commitment-page-hero p{font-size:1.16rem;color:#d6d9e6;max-width:740px}
.commitment-page-body{max-width:1040px;padding-top:70px;padding-bottom:85px}
.commitment-statement{max-width:860px;margin:auto}
.commitment-statement>.eyebrow{display:block;margin-bottom:24px}
.commitment-statement p{font-size:clamp(1.12rem,2vw,1.35rem);line-height:1.9;color:#36455d;margin-bottom:26px}
.commitment-page-cta{margin-top:68px;background:#edeafc;border:1px solid #ded7f7;border-radius:18px;padding:42px}
.commitment-page-cta h2{margin:13px 0}
.commitment-page-cta p{color:#58647b}
.commitment-page-cta .button.outline{color:#263652;border-color:#8a86ab}
@media(max-width:760px){.commitment-feature-inner{grid-template-columns:1fr}.commitment-feature-accent{min-height:160px}.commitment-page-hero{padding:65px 0}.commitment-page-body{padding-top:45px}.commitment-page-cta{padding:25px;margin-top:40px}}
