:root{--ink:#0c0f11;--paper:#f4f5f2;--muted:#9ca39f;--rose:#ff7597;--line:rgba(255,255,255,.15)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;background:var(--ink);color:var(--paper);font:16px/1.55 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}a{color:inherit;text-decoration:none}
.topbar{position:absolute;z-index:20;inset:0 0 auto;min-height:82px;padding:0 clamp(22px,4vw,68px);display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid rgba(255,255,255,.16)}.logo{display:flex;align-items:center;gap:11px}.logo>span{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--rose);color:#111;font-weight:950;letter-spacing:-.08em}.logo strong{font-size:.72rem;line-height:1.15;letter-spacing:.17em}.topbar nav{display:flex;gap:28px;padding:11px 19px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(8,10,12,.82);box-shadow:0 8px 24px rgba(0,0,0,.22);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff;font-size:.78rem;font-weight:850;letter-spacing:.015em}.topbar nav a{text-shadow:0 1px 3px rgba(0,0,0,.8)}.call-pill{padding:11px 17px;border:1px solid #ffffff70;border-radius:999px;font-size:.78rem}.call-pill b{margin-left:8px}
.hero{min-height:100svh;position:relative;display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);grid-template-rows:1fr auto;overflow:hidden;background:var(--ink)}.hero-media{grid-column:2;grid-row:1/3;min-height:100svh;background:url('/assets/modern-pasadena-floor.png') 58% 72%/cover no-repeat;animation:cameraMove 12s cubic-bezier(.2,.7,.2,1) both}.hero-copy{grid-column:1;grid-row:1;z-index:3;align-self:center;max-width:760px;padding:125px clamp(28px,5.2vw,90px) 44px}.kicker,.section-tag{margin:0 0 22px;color:var(--rose);font-size:.72rem;font-weight:900;letter-spacing:.19em;text-transform:uppercase}.hero h1,.statement h2,.services h2,.contact h2{margin:0;font-size:clamp(3.7rem,6.7vw,7.4rem);line-height:.86;letter-spacing:-.07em;font-weight:620}.hero h1 em,.contact h2 em{font-style:normal;color:var(--rose)}.lead{max-width:580px;margin:30px 0;color:#c9cfcc;font-size:1.02rem;line-height:1.7}.actions{display:flex;flex-wrap:wrap;gap:11px}.actions a{min-height:52px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:999px;font-size:.82rem;font-weight:850}.primary{background:var(--rose);color:#111}.primary span{font-size:1.1rem}.secondary{border:1px solid #ffffff61}
.hero-proof{grid-column:1;grid-row:2;z-index:4;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.hero-proof>div,.hero-proof>a{min-height:94px;padding:18px clamp(12px,2vw,28px);display:flex;flex-direction:column;justify-content:center;gap:3px;border-right:1px solid var(--line)}.hero-proof>*:last-child{border-right:0}.hero-proof b{color:var(--rose);font-size:1.22rem;letter-spacing:-.03em}.hero-proof span{color:#bfc5c2;font-size:.67rem;line-height:1.3;letter-spacing:.07em;text-transform:uppercase}
.statement{padding:130px clamp(22px,7vw,112px);background:var(--paper);color:#151719}.statement h2{font-size:clamp(3.8rem,7vw,7.8rem)}.statement h2 span{color:#9aa09d}.statement-grid{margin-top:66px;display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,150px);align-items:start}.statement-grid p{margin:0;color:#5f6763;font-size:1.08rem;line-height:1.8}.statement-grid .big-copy{color:#171a18;font-size:clamp(1.7rem,3vw,3rem);line-height:1.2;font-weight:650;letter-spacing:-.045em}
.care-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#15181a}.care-strip article{min-height:160px;padding:32px clamp(24px,3.4vw,52px);display:flex;align-items:flex-start;gap:22px;border-right:1px solid var(--line)}.care-strip article:last-child{border-right:0}.care-strip article>span,.service-list article>span{color:var(--rose);font-size:.7rem;font-weight:900;letter-spacing:.19em}.care-strip h3{margin:0 0 7px;font-size:1.2rem}.care-strip p{margin:0;color:#9da5a1;line-height:1.55}
.services{padding:130px clamp(22px,7vw,112px);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(60px,9vw,150px);background:#0b0d0f}.services-head{position:sticky;top:50px;align-self:start}.services h2{font-size:clamp(3.7rem,6.2vw,6.5rem)}.service-list{border-top:1px solid var(--line)}.service-list article{min-height:170px;display:grid;grid-template-columns:48px .8fr 1fr;gap:22px;align-items:center;border-bottom:1px solid var(--line)}.service-list h3{margin:0;font-size:1.45rem}.service-list p{margin:0;color:#9ba39f;line-height:1.7}
.contact{min-height:700px;padding:110px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 50% 115%,#ff75974a,transparent 44%),#0c0e10}.contact h2{font-size:clamp(4rem,8.2vw,8.4rem)}.contact>p:not(.section-tag){max-width:610px;margin:28px 0 35px;color:#aeb5b1;line-height:1.75}.contact>a{min-width:min(100%,430px);padding:20px 22px;display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left;border:1px solid #ffffff5c;border-radius:20px}.contact small{grid-column:1/-1;color:var(--rose);font-weight:900;letter-spacing:.17em}.contact strong,.contact>a span{font-size:1.4rem}
footer{padding:52px clamp(22px,5vw,80px);display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:35px;align-items:center;border-top:1px solid var(--line);color:#939b97;font-size:.76rem}footer>div:last-child{display:flex;flex-direction:column;gap:7px;text-align:right;color:#fff}.mobile-call{display:none}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}@keyframes cameraMove{from{transform:scale(1.05)}to{transform:scale(1)}}
@media(max-width:900px){.topbar nav{display:none}.statement-grid,.services{grid-template-columns:1fr}.services-head{position:static}.care-strip{grid-template-columns:1fr}.care-strip article{min-height:120px;border-right:0;border-bottom:1px solid var(--line)}.service-list article{grid-template-columns:42px 1fr}.service-list p{grid-column:2}footer{grid-template-columns:1fr}footer>div:last-child{text-align:left}}
@media(max-width:680px){body{padding-bottom:72px;overflow-x:hidden}.topbar{min-height:70px;padding:0 16px;border-bottom-color:rgba(255,255,255,.2);background:linear-gradient(#080a0cde,transparent)}.logo>span{width:40px;height:40px}.logo strong{font-size:.62rem}.call-pill{width:42px;height:42px;padding:0;display:grid;place-items:center;font-size:0}.hero{min-height:auto;display:flex;flex-direction:column;isolation:isolate}.hero:before{content:"";position:absolute;z-index:1;inset:0 0 auto;height:100svh;pointer-events:none;background:linear-gradient(180deg,rgba(8,10,12,.18) 18%,rgba(8,10,12,.04) 38%,rgba(8,10,12,.88) 78%,#0c0f11 100%)}.hero-media{position:absolute;z-index:0;inset:0 0 auto;width:100%;min-height:100svh;background-position:55% 74%;animation-duration:10s}.hero-copy{position:relative;z-index:3;order:1;width:100%;max-width:none;min-height:100svh;padding:116px 20px 30px;display:flex;flex-direction:column;justify-content:flex-end}.kicker{margin-bottom:12px;font-size:.64rem;letter-spacing:.16em}.hero h1{font-size:clamp(2.95rem,12.9vw,3.8rem);line-height:.88;letter-spacing:-.065em}.lead{max-width:34rem;margin:16px 0 18px;color:#eef1ef;font-size:.96rem;line-height:1.45}.actions{display:grid;grid-template-columns:1fr;gap:8px;align-items:center}.actions .primary{width:100%;min-height:54px;font-size:.84rem}.actions .secondary{width:100%;min-height:48px;padding:0;border:0;justify-content:flex-start;color:#fff}.hero-proof{position:relative;z-index:3;order:2;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#0c0f11;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.hero-proof>div,.hero-proof>a{min-height:88px;padding:13px 8px;align-items:center;text-align:center}.hero-proof b{font-size:1rem}.hero-proof span{font-size:.57rem;letter-spacing:.045em}.statement,.services{padding:78px 20px}.statement h2{font-size:clamp(3.1rem,14vw,4.4rem)}.statement-grid{margin-top:40px;gap:24px}.statement-grid .big-copy{font-size:1.7rem}.statement-grid p{font-size:1rem}.care-strip article{min-height:108px;padding:24px 20px;align-items:flex-start}.care-strip h3{font-size:1.05rem}.care-strip p{font-size:.92rem}.services h2{font-size:clamp(3.2rem,14vw,4.5rem)}.service-list{margin-top:44px}.service-list article{min-height:165px;padding:25px 0;align-items:start}.service-list h3{align-self:center;font-size:1.25rem}.service-list p{font-size:.96rem}.contact{min-height:580px;padding:78px 20px}.contact h2{font-size:clamp(3.35rem,15vw,4.7rem)}.contact>p:not(.section-tag){margin:22px 0 28px}footer{padding:40px 20px}.mobile-call{position:fixed;z-index:40;inset:auto max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));min-height:58px;padding:9px 18px;display:flex;align-items:center;justify-content:space-between;border-radius:18px;background:var(--rose);color:#111;box-shadow:0 12px 34px #0008;opacity:0;transform:translateY(84px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}body.past-hero .mobile-call{opacity:1;transform:none;pointer-events:auto}.mobile-call span{font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.mobile-call strong{font-size:1.08rem}}
.yelp-love{display:grid!important;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:12px!important;row-gap:0!important;padding:7px 15px!important;text-align:left}.yelp-love img.yelp-logo{grid-row:1/3;align-self:center;width:48px;height:48px;object-fit:cover;object-position:center;clip-path:circle(44% at 50% 50%)}.yelp-message{font-size:.77rem;line-height:1.15}.yelp-love small{color:#bfc5c2;font-size:.66rem;line-height:1.15;font-weight:650}
@media(max-width:680px){.text-pill:before{content:"✉"}.actions .secondary.yelp-love{width:auto;display:grid!important;grid-template-columns:auto auto;justify-content:start;gap:0 10px!important}.yelp-love .yelp-logo{padding-right:2px}.yelp-message,.yelp-love small{padding:0}}
@media(max-width:680px){.yelp-love img.yelp-logo{padding:0;margin-right:2px}}
@media(max-width:680px){.call-pill.text-pill{position:relative;z-index:30;background:#34c759;border-color:#34c759;color:#fff;pointer-events:auto}.call-pill.text-pill:before{content:"☎";color:#fff;font-size:1.08rem}}
.call-pill.text-pill{min-height:46px;display:inline-flex;align-items:center;gap:8px;padding:9px 17px 9px 10px;border-color:#68ef82;background:linear-gradient(180deg,#55e874 0%,#20bf43 100%);color:#fff;font-weight:850;box-shadow:0 8px 24px rgba(17,157,55,.3),inset 0 1px 0 rgba(255,255,255,.28);text-shadow:0 1px 2px rgba(0,0,0,.22)}.call-pill.text-pill b{margin-left:2px}.messages-logo{display:block;width:28px;height:28px;flex:0 0 28px;border-radius:8px;object-fit:cover;object-position:center}
@media(max-width:680px){.call-pill.text-pill{width:42px;height:42px;min-height:42px;padding:0;display:grid;place-items:center;gap:0;overflow:hidden;background:#34c759;border:0;box-shadow:none}.call-pill.text-pill:before{display:none}.call-pill.text-pill .messages-logo{display:block;position:absolute;width:47px;height:auto;max-width:none;left:-4px;top:-4px;pointer-events:none}}
@media(max-width:390px){.hero-copy{padding-left:16px;padding-right:16px}.hero h1{font-size:clamp(2.7rem,12.6vw,3.25rem)}.lead{font-size:.91rem}.yelp-love img.yelp-logo{width:44px;height:44px}.hero-proof span{font-size:.54rem}.mobile-call strong{font-size:1rem}}
@media(max-width:360px){.hero h1{font-size:2.62rem}.logo strong{display:none}.lead{margin:13px 0 15px}.actions .primary{min-height:50px}.hero-copy{padding-bottom:24px}}
@media(max-height:700px) and (max-width:680px){.hero-copy{padding-top:92px;padding-bottom:20px}.hero h1{font-size:clamp(2.55rem,11.8vw,3.2rem)}.lead{margin:12px 0 14px;font-size:.9rem}.actions .primary{min-height:50px}.actions .secondary{min-height:44px}.kicker{margin-bottom:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-media{animation:none}.reveal{opacity:1;transform:none;transition:none}}
