/* Homepage aligned with Sonoma's Arizona founder story. */
:root{--gold:#967023;--gold-bright:#d7b66e;--gold-soft:#ead9b2;--teal:#173d32;--teal-deep:#102d3c;--teal-soft:#e4e8db;--ink:#102d3c;--ink-soft:#526058;--paper:#f4eddf;--mist:#e9e0ce;--line:#d8cdb8}
body.site-home,.site-home .section{background:#f4eddf}.site-home .section.alt{background:#e9e0ce}.site-home h1,.site-home h2{letter-spacing:-.045em}.site-home h2 em,.site-home h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.04em}.site-home .eyebrow,.site-home .head .eyebrow{color:#896522}.site-home .section{padding-block:88px}.site-home .head{max-width:760px}.site-home .head h2{font-size:clamp(32px,4vw,52px)}
.site-home .nav-shell,.site-home header.scrolled .nav-shell{background:#102d3cf5;border-color:#d7b66e44}.site-home .nav-shell.open .nav-links{background:#102d3c}.site-home .nav-links a::after{background:#d7b66e}.site-home .btn-gold{background:linear-gradient(125deg,#e1c58c,#ba8c33);color:#102d3c;box-shadow:0 8px 24px #102d3c14}.site-home .btn-teal{background:#173d32}.site-home .btn{border-radius:8px}.site-home .nav-cta .btn,.site-home .fab{border-radius:999px}
.site-home .hero{min-height:780px;min-height:min(900px,100svh);padding-top:200px;padding-bottom:96px;align-items:center}.site-home .hero-video{transform:none}.site-home .hero-scrim{background:linear-gradient(90deg,#081f2bef 0%,#102d3cb3 44%,#102d3c22 85%),linear-gradient(0deg,#102d3c77,transparent 45%)}.site-home .hero h1{max-width:900px;font-size:clamp(52px,7.5vw,100px);line-height:1.02;color:#f4eddf}.site-home .hero h1 em{color:#ecd6a9}.site-home .hero .eyebrow{color:#e2bf74;padding:0;border:0;border-radius:0;background:none;backdrop-filter:none}.site-home .hero p.lead{max-width:540px;font-size:17px;line-height:1.8;color:#f4eddf}.site-home .hero .btn-ghost{color:#f4eddf;border-color:#f4eddf66}
.home-roots{background:#173d32;color:#f4eddf}.home-roots>.wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:28px;padding-block:28px;align-items:center}.home-roots span{display:block;color:#d7b66e;font:10px Inter,sans-serif;letter-spacing:.14em;margin-bottom:8px}.home-roots div div,.home-roots p{font:23px Georgia,serif}.home-roots p{font-size:20px;padding-right:20px;border-right:1px solid #d7b66e55}
.site-home .card{background:transparent;border:1px solid #c9b993;border-radius:12px;box-shadow:none}.site-home .card:nth-child(2){background:#173d32}.site-home .card:nth-child(2) h3{color:#f4eddf}.site-home .card .ic{background:#e5dcc7;border-radius:50%;width:52px;height:52px}.site-home .card:nth-child(2) .ic{background:#ffffff18}.site-home .card:hover,.site-home .prod:hover{transform:translateY(-3px)}.site-home .card::before{display:none}.site-home .save{border-radius:12px}.site-home .save.energy{background:#173d32}.site-home .save.tax{background:#102d3c}.site-home .save .big{color:#ecd6a9;font-size:clamp(32px,4vw,48px)}.site-home .save h3{margin-top:16px}.site-home .prod,.site-home .step,.site-home .finance-card,.site-home .review-card,.site-home .q,.site-home .cform{border-radius:12px;box-shadow:0 10px 26px #102d3c08}.site-home .prod .pic{background:#f7f2e9}.site-home .prod .body{background:#fffbf3}.site-home .finance-card.featured{background:#102d3c}.site-home .finance-card.featured .eyebrow{color:#d7b66e}.site-home .program-list span{background:#eee6d6}.site-home .lease-offer{background:#e8d6b0;color:#102d3c;border-radius:8px}.site-home .lease-offer b,.site-home .lease-offer small{color:#102d3c}.site-home .how img{border-radius:12px}.site-home .how-caption{background:#102d3cdd}.site-home .how-caption b{color:#f4eddf}
.home-projects{padding:64px 0;background:#102d3c;color:#f4eddf}.home-projects>.wrap{display:grid;grid-template-columns:1fr 340px;align-items:center;gap:80px;max-width:1050px}.home-projects h2{color:#f4eddf;font-size:clamp(38px,5vw,64px);margin:20px 0 24px}.site-home .home-projects .eyebrow{color:#d7b66e}.home-project-copy p{max-width:440px;color:#d8dfd6;line-height:1.8}.home-story-link{display:inline-block;margin-top:28px;padding-bottom:10px;border-bottom:1px solid #d7b66e;color:#ecd6a9;font-size:14px}.home-panels{margin-top:38px}.home-projects video{width:100%;aspect-ratio:512/910;display:block;object-fit:contain;border-radius:12px;border:1px solid #d7b66e55}
.site-home #about .about-photos{display:grid;grid-template-columns:1fr;gap:20px;max-width:420px}.site-home #about .about-photos img{width:100%;border-radius:12px;aspect-ratio:auto;object-fit:cover}.home-founder{max-height:420px;object-position:center 28%}.home-pinetop img{height:190px!important;object-fit:cover}.home-pinetop figcaption{font-size:10px;line-height:1.7;margin-top:10px;letter-spacing:.04em;color:#526058}.home-pinetop figcaption a{text-decoration:underline}.site-home #about .about{align-items:center}.site-home #about .mission{border-left-color:#ba8c33}.site-home #contact{background:#102d3c}.site-home #contact .eyebrow{color:#d7b66e}.site-home #contact::before{display:none}.site-home footer{background:#0b202c}.site-home .ask-suggestions button{border-color:#c9b993;background:#fffbf3;color:#173d32}.site-home .ask-suggestions button:hover{background:#e5dcc7}.site-home .reviewer-avatar{background:#e9e0ce;color:#173d32}
@media(max-width:800px){.site-home .section{padding-block:60px}.home-roots>.wrap{grid-template-columns:repeat(3,1fr);gap:16px}.home-roots p{grid-column:1/-1;border-right:0;border-bottom:1px solid #d7b66e44;padding-bottom:18px}.home-roots div div{font-size:18px}.home-projects>.wrap{grid-template-columns:1fr;gap:32px}.home-projects video{max-width:340px;justify-self:center}.home-projects{padding:48px 0}.site-home #about .about-photos{width:100%;max-width:420px;margin:auto}.site-home .hero{min-height:760px;padding-top:210px;padding-bottom:64px}.site-home .hero h1{font-size:clamp(47px,10vw,76px)}.site-home .hero p.lead{font-size:16px}.site-home .hero-cta .btn{white-space:normal;justify-content:center}.site-home .head h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.site-home .card:hover,.site-home .prod:hover{transform:none}}

.site-home #about .home-about-intro{grid-template-columns:1.05fr 1fr;gap:clamp(32px,5vw,72px)}.home-about-image{position:relative;overflow:hidden;border-radius:12px}.home-about-image img{width:100%;height:480px;object-fit:cover;object-position:58% center}.home-about-image span{position:absolute;bottom:22px;left:22px;background:#102d3ce6;color:#f4eddf;padding:9px 13px;font-size:10px;letter-spacing:.14em}.home-about-intro h2{font-size:clamp(34px,4vw,52px);margin:18px 0 24px}.home-about-note{color:#526058;font-size:15px;line-height:1.8;margin-top:20px}.home-about-intro .home-story-link{color:#896522}.site-home .prod .pic.blueprint-shot{padding:0;background:#102d3c;aspect-ratio:1}.site-home .prod .pic.blueprint-shot img{width:100%;height:100%;object-fit:cover;max-height:none}@media(max-width:800px){.site-home #about .home-about-intro{grid-template-columns:1fr}.home-about-image img{height:320px}}
/* Review contrast: maroon cards, ivory copy, gold ratings. */
.site-home .section.reviews-section{background:#f4eddf;color:#102d3c}.site-home .reviews-section::before{display:none}.site-home .reviews-section .head h2{color:#102d3c}.site-home .reviews-section .head .lead{color:#526058}.site-home .reviews-section .review-summary{color:#102d3c;background:#fffaf0;border-color:#d8cdb8}.site-home .reviews-section .review-card{background:#541f30;border:1px solid #71364a;color:#f4eddf;backdrop-filter:none;box-shadow:0 12px 28px #541f3014}.site-home .reviews-section .review-card blockquote,.site-home .reviews-section .reviewer b{color:#fff5e6}.site-home .reviews-section .reviewer small{color:#e3cdd2}.site-home .reviews-section .reviewer-avatar{background:#f4eddf;color:#541f30}.site-home .reviews-section .review-stars{color:#edc46e}

/* Balanced homepage details */
.site-home .reviews-section .review-summary{background:#102d3c;color:#f4eddf;border-color:#254858}.site-home .reviews-section .review-summary strong{color:#f4eddf}
.site-home .review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.site-home .review-grid .review-card{grid-column:auto}
.site-home .fgrid{grid-template-columns:1.1fr 1.6fr 1fr 1.1fr;gap:40px;align-items:start}.site-home .fgrid>div{min-width:0}.site-home .fgrid h4{margin:0 0 20px;line-height:1.4}.site-home .footer-explore ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;align-items:start}.site-home footer li{margin:0;line-height:1.6}.site-home footer a{overflow-wrap:anywhere}.site-home .fbrand p{margin-top:20px}.site-home .powerwall-dimensions{position:relative}.site-home .dimension-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
@media(max-width:1100px){.site-home .fgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.site-home .review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.site-home .fgrid,.site-home .review-grid{grid-template-columns:1fr}.site-home .fgrid{gap:32px}}

/* Desktop rows: three cards, two wide cards, then three cards. */
@media(min-width:1101px){.site-home .review-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.site-home .review-grid .review-card:nth-child(n){grid-column:span 2}.site-home .review-grid .review-card:nth-child(4),.site-home .review-grid .review-card:nth-child(5){grid-column:span 3}}
@media(min-width:601px) and (max-width:1100px){.site-home .review-grid .review-card{grid-column:auto}.site-home .review-grid .review-card:last-child:nth-child(odd){grid-column:1/-1}}

/* Rating uses the same quiet typography as the introduction above. */
.site-home .reviews-section .head .review-summary{display:flex;flex-direction:column;align-items:center;gap:8px;background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;margin:24px auto 0;color:#526058;font-family:inherit;font-size:1.06rem;font-weight:400;line-height:1.7;max-width:62ch}.site-home .reviews-section .review-summary .stars{font-size:1.05rem;color:#ba8c33;letter-spacing:.12em;line-height:1.2}.site-home .review-summary:hover>span:last-child{text-decoration:underline;text-underline-offset:4px}

/* Keep the drone still visible before playback and if autoplay is blocked. */
.site-home .hero{background:#102d3c url("/assets/drone-poster.jpg") center/cover no-repeat}
