:root{--ink:#f8f2f5;--paper:#111014;--lime:#ff76b4;--muted:#bdb1bc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.65 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ff92c5;outline-offset:5px}.skip-link{position:absolute;top:-100px;left:20px;background:var(--lime);padding:15px;z-index:100}.skip-link:focus{top:10px}.scroll-progress{display:none}header{display:flex;justify-content:space-between;align-items:center;padding:26px 5%;gap:30px}.brand{display:flex;gap:12px;align-items:center;font-family:Manrope,sans-serif;font-size:34px;font-weight:800;letter-spacing:-2px;line-height:1}.brand-n{color:#ff76b4}.brand small{font:600 11px 'DM Sans';letter-spacing:.8px;display:block;margin-top:10px}.brand-icon{background:var(--ink);color:var(--lime);height:46px;width:46px;border-radius:50%;display:grid;place-content:center;position:relative;font-size:39px;padding-bottom:5px}.brand-icon>span{position:absolute;right:0;top:0;line-height:1}.arrow-icon{width:21px;height:21px;vertical-align:middle;display:inline-block;flex-shrink:0}nav{display:flex;gap:32px;font-size:17px;font-weight:500}nav a:hover{text-decoration:underline}.header-cta{font-size:18px;font-weight:600;display:flex;align-items:center;gap:12px}.live-dot{width:8px;height:8px;display:inline-block;background:#ff76b4;border-radius:50%;flex-shrink:0}.menu-button{display:none}.hero{margin:0 20px;position:relative;overflow:hidden;border-radius:6px;min-height:650px;color:white;display:flex;align-items:center}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#100d16ed,#190d1c7a)}.hero-content{position:relative;padding:70px 6%;width:100%;max-width:1250px}.eyebrow{font-size:14px;letter-spacing:1.4px;font-weight:700;margin:0 0 24px;line-height:1.5}.hero h1{font:500 clamp(48px,5.5vw,84px)/1.1 Manrope,sans-serif;letter-spacing:-3.5px;margin:0 0 28px}.hero h1 span{color:var(--lime)}.hero-bottom p{font-size:21px;line-height:1.65;max-width:560px;margin:0 0 30px}.button{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:18px;font-weight:600;padding:18px 25px;border:0;border-radius:3px;width:max-content}.lime{background:var(--lime);color:var(--ink)}.button:hover{background:#ffa1cc}.trust-strip{display:flex;justify-content:center;gap:60px;padding:30px 5%;border-bottom:1px solid #352a35;font-size:17px;font-weight:500}.trust-strip span:before{content:'✓';color:#ff76b4;margin-right:10px}.section-pad{padding:85px 7%;max-width:1500px;margin:auto}h2{font:500 clamp(36px,4vw,60px)/1.15 Manrope,sans-serif;letter-spacing:-2px;margin:0}h3{font:600 27px/1.3 Manrope,sans-serif;letter-spacing:-.7px;margin:0 0 16px}em{font-style:normal;color:#ff76b4}.dark{color:#ff8cbe}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;align-items:end;margin-bottom:45px}.section-heading>p{font-size:20px;color:var(--muted);margin:0;max-width:450px}.service-list article{display:grid;grid-template-columns:65px 1fr 55px;gap:25px;align-items:start;padding:34px 0;border-top:1px solid #3a2d3a}.service-list article:last-child{border-bottom:1px solid #3a2d3a}.service-number{font-size:18px;color:#ff8cbe;padding-top:5px}.service-list p{max-width:780px;color:var(--muted);font-size:19px;margin:0}.service-list article>a{width:50px;height:50px;display:grid;place-items:center;border:1px solid #6f4965;border-radius:50%}.service-list article>a:hover{background:var(--lime)}.video-section{position:relative;margin:0 3%;border-radius:5px;overflow:hidden;background:var(--ink);height:500px}.video-section video{width:100%;height:100%;object-fit:cover}.video-caption{position:absolute;top:45px;left:5%;color:white;pointer-events:none;text-shadow:0 2px 20px #000;padding:20px;background:#130e18cc;border-radius:4px}.video-caption span{font-size:14px;font-weight:600;letter-spacing:1px}.video-caption p{font:500 44px/1.15 Manrope;letter-spacing:-1.5px;margin:20px 0 0}.about{display:grid;grid-template-columns:1fr 1fr;max-width:1500px;margin:85px auto 0}.about-visual{min-height:620px;position:relative;overflow:hidden}.about-visual img{height:100%;width:100%;object-fit:cover;position:absolute}.about-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#170d1ed9,transparent)}.location-chip{position:absolute;top:35px;left:7%;z-index:1;color:white;background:#170e1bd9;padding:12px 18px;border-radius:30px;font-size:14px}.location-chip .arrow-icon{width:16px;height:16px}.arizona-word{position:absolute;left:9%;bottom:45px;font:500 70px/1.05 Manrope;letter-spacing:-3px;color:white;z-index:1}.arizona-word em{color:var(--lime)}.about-copy{padding:55px 12%;background:#1c1620}.about-copy h2{margin-bottom:25px}.about-copy p{font-size:18px;color:#c6bac4;line-height:1.8}.about-points{display:flex;flex-direction:column;gap:12px;font-size:17px;font-weight:500;margin-top:25px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:10%}.faq-list details{border-top:1px solid #3a2d3a;padding:22px 0}.faq-list details:last-child{border-bottom:1px solid #3a2d3a}.faq-list summary{font-size:21px;font-weight:500;cursor:pointer;line-height:1.5}.faq-list p{font-size:18px;color:var(--muted);margin-bottom:0}.contact{max-width:none;background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1fr 1.25fr;gap:10%;padding:85px 7%}.contact-copy h2{font-size:clamp(48px,5vw,72px);margin:30px 0}.contact-copy em{color:var(--lime)}.contact-copy p{max-width:390px;font-size:20px;color:#cfc2cd}.phone-link{font-size:30px;letter-spacing:-1px;display:block;margin-top:35px}.contact-hours{font-size:14px;display:flex;align-items:center;gap:10px;margin-top:20px}.contact-hours .live-dot{background:var(--lime)}form{background:var(--paper);color:var(--ink);padding:35px;border-radius:5px;align-self:start}form h3{margin-bottom:28px;font-size:28px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:flex;flex-direction:column;gap:8px;font-size:16px;margin-bottom:24px;font-weight:600}input,select,textarea{width:100%;padding:12px;border:1px solid #594151;border-radius:3px;background:#fff;color:var(--ink);font-size:17px;line-height:1.5;min-height:48px}input::placeholder,textarea::placeholder{color:#aa97a6}textarea{resize:vertical}form .button{width:100%}.form-note{font-size:15px;line-height:1.6;color:#bdb1bc;margin:18px 0 0}.form-note a{text-decoration:underline}#form-status{font-size:17px}footer{padding:45px 7% 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-bottom:35px}.footer-top p{max-width:340px;font-size:17px;color:var(--muted)}.back-top{font-size:14px;font-weight:600}.footer-bottom{display:flex;justify-content:space-between;gap:25px;font-size:14px;border-top:1px solid #352a35;padding-top:25px}.brand-details{font-size:14px;color:var(--muted);margin-top:25px;max-width:800px}.brand-details summary{cursor:pointer}.brand-details img{width:300px;max-width:100%;margin-top:20px}.brand-details p{font-size:14px}
@media(max-width:1000px){header{gap:20px}.header-cta{font-size:16px}nav{gap:20px;font-size:16px}.brand{font-size:29px}.brand small{font-size:9px}.hero h1{font-size:64px}.section-heading{gap:7%}.section-pad{padding:65px 6%}.about-copy{padding:45px 9%}.about{margin-top:65px}.contact{gap:5%;padding:65px 6%}.field-row{grid-template-columns:1fr;gap:0}form{padding:28px}.video-section{height:460px}.footer-bottom{flex-wrap:wrap}}
@media(max-width:700px){body{font-size:18px}header{padding:24px 6%;position:relative}.brand{font-size:30px}.brand small{font-size:9px;letter-spacing:.5px}.header-cta{display:none}.menu-button{display:block;border:0;background:none;font-size:27px;color:var(--ink);padding:5px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:25px 6%;z-index:20;box-shadow:0 12px 15px #0001;font-size:18px}nav.open{display:flex;flex-direction:column;gap:20px}.hero{margin:0 12px;min-height:570px}.hero-content{padding:50px 7%}.hero h1{font-size:clamp(39px,9.5vw,60px);letter-spacing:-1.8px;line-height:1.14}.hero-bottom p{font-size:20px;margin-top:25px}.eyebrow{font-size:13px;letter-spacing:1px}.hero .eyebrow{font-size:12px}.button{font-size:18px;padding:18px 20px;min-height:60px}.trust-strip{gap:12px;flex-direction:column;padding:25px 7%;font-size:17px}.section-pad{padding:55px 7%}h2{font-size:39px;letter-spacing:-1.5px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{font-size:19px;margin-top:25px}.service-list article{grid-template-columns:30px 1fr;gap:15px;padding:28px 0;position:relative}.service-number{font-size:16px}.service-list h3{font-size:25px;padding-right:32px}.service-list p{font-size:18px}.service-list article>a{position:absolute;right:0;top:30px;width:30px;height:30px;border:0}.service-list .arrow-icon{width:20px;height:20px}.video-section{margin:0 12px;height:370px}.video-caption{top:20px;left:20px;right:20px;padding:18px;width:max-content;max-width:calc(100% - 40px)}.video-caption p{font-size:33px;margin-top:12px}.video-caption span{font-size:12px}.about{grid-template-columns:1fr;margin-top:55px}.about-visual{min-height:390px}.arizona-word{font-size:60px}.location-chip{font-size:12px}.about-copy{padding:45px 7%}.about-copy h2{font-size:42px}.about-copy p{font-size:18px}.faq{display:block}.faq-list{margin-top:30px}.faq-list summary{font-size:20px}.contact{grid-template-columns:1fr;gap:35px;padding:55px 7%}.contact-copy h2{font-size:57px;margin:20px 0}.contact-copy p{font-size:19px}.phone-link{font-size:28px}.contact-hours{font-size:12px}form{padding:25px 20px}form h3{font-size:26px}label{font-size:16px}.form-note{font-size:15px}.footer-top{align-items:start;flex-wrap:wrap;gap:25px}.footer-top p{margin:0;order:3}.footer-bottom{flex-direction:column;gap:15px;font-size:14px}.back-top{font-size:12px;padding-top:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* A quiet seasonal touch, with the same readable layout. */
header{position:sticky;top:0;z-index:30;background:var(--paper);box-shadow:0 1px 0 #ff76b41c}html{scroll-padding-top:155px}
header nav{gap:22px}header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}
.holiday-lights{position:absolute;inset:0 0 auto;height:30px;border-top:2px solid #70475f;border-radius:0 0 50% 35%;display:flex;justify-content:space-around;z-index:3;pointer-events:none;padding:0 8px}
.holiday-lights>span{position:relative;width:8px;height:13px;top:5px;display:block;border-radius:50% 50% 45% 45%;background:#ff92c5;box-shadow:0 0 13px #ff92c5aa}
.holiday-lights>span:before{content:'';position:absolute;width:5px;height:6px;top:-5px;left:1.5px;background:#70475f;border-radius:1px}
.holiday-lights>span:nth-child(3n){background:#ff76b4;box-shadow:0 0 12px #ff76b499;top:9px}.holiday-lights>span:nth-child(3n + 2){background:#ffadd3;box-shadow:0 0 12px #ffadd399;top:7px}
.seasonal-banner{background:#231823;border-bottom:1px solid #493044;padding:26px 7%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:17px}
.seasonal-banner p{margin:0;flex:1}.seasonal-banner p strong{font-weight:600}.seasonal-banner>a{white-space:nowrap;font-weight:600;text-decoration:underline;text-underline-offset:6px}.holiday-star{font-size:34px;color:#ff92c5;line-height:1}
.footer-services{display:flex;gap:30px;padding:0 0 25px;font-size:17px}.footer-services a{text-decoration:underline;text-underline-offset:5px}
#holiday-offer{border:0;padding:0;border-radius:10px;width:min(620px,calc(100% - 30px));max-height:calc(100svh - 40px);color:var(--paper);background:#f8f2f5;box-shadow:0 20px 100px #0005;overflow:auto}
#holiday-offer::backdrop{background:#09070de6;backdrop-filter:blur(5px)}.holiday-dialog-body{padding:58px 44px 30px;position:relative;overflow:hidden;text-align:center}
.holiday-close{position:absolute;right:12px;top:28px;width:38px;height:38px;border:1px solid #ffffff55;border-radius:50%;color:white;background:transparent;display:grid;place-items:center}.holiday-close svg{width:20px;height:20px}
.holiday-dialog-body>.eyebrow{font-size:12px;letter-spacing:1.2px;color:#ff76b4;margin:10px 0 26px}.holiday-kicker{font-size:17px;color:#ffb8d9}.holiday-dialog-body h2{font-size:45px;line-height:1.16;margin:18px 0 22px;letter-spacing:-1.6px}.holiday-dialog-body h2 em{color:var(--lime)}#holiday-description{font-size:19px;line-height:1.65;margin:0 0 22px;color:#ddd1dc}.holiday-perks{display:grid;gap:6px;font-size:15px;color:#c7b7c4;margin-bottom:26px}.holiday-book{width:100%;text-align:left}.holiday-call{display:block;font-size:18px;margin-top:20px;text-decoration:underline;text-underline-offset:5px}.holiday-later{display:block;margin:20px auto 0;background:none;border:0;color:#d3c0ce;font-size:16px;text-decoration:underline;text-underline-offset:4px}.holiday-fine{font-size:13px;line-height:1.5;margin:22px 0 0;color:#ba9db1}
@media(max-width:1100px) and (min-width:701px){header{display:grid;grid-template-columns:1fr auto;gap:8px 20px;padding:8px 5%}header nav{grid-row:2;grid-column:1/-1;justify-content:center;padding-bottom:8px}header>.header-cta{grid-column:2;grid-row:1}html{scroll-padding-top:175px}}
@media(max-width:700px){header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:5px 5% 13px}header a.brand{width:190px;height:70px}header a.brand>img{width:190px;height:190px;top:-60px}header>.header-cta{display:flex;font-size:16px;gap:6px;grid-column:2;grid-row:1;white-space:nowrap}header>.header-cta>.live-dot{display:none}header>.header-cta>.arrow-icon{width:16px;height:16px}header nav{display:flex;position:static;grid-column:1/-1;grid-row:2;gap:12px;flex-direction:row;justify-content:space-between;padding:5px 0 0;box-shadow:none;font-size:15px}header .menu-button{display:none}html{scroll-padding-top:125px}.seasonal-banner{padding:25px 7%;flex-wrap:wrap;gap:12px;font-size:17px}.seasonal-banner p{flex-basis:calc(100% - 45px)}.seasonal-banner a{margin-left:38px;font-size:16px}.holiday-star{font-size:28px}.footer-services{flex-wrap:wrap;gap:12px 25px}.holiday-dialog-body{padding:54px 25px 25px}.holiday-dialog-body h2{font-size:37px}.holiday-dialog-body>.eyebrow{font-size:10px;letter-spacing:1px;margin:10px 0 20px}#holiday-description{font-size:18px}.holiday-book{font-size:16px;padding:17px}.holiday-perks{font-size:14px}.holiday-lights>span:nth-child(even){display:none}}
@media(max-width:400px){header a.brand{width:160px;height:60px}header a.brand>img{width:160px;height:160px;top:-50px}header>.header-cta{font-size:15px;gap:4px}header nav{font-size:14px}.holiday-dialog-body h2{font-size:33px}}
body:has(dialog[open]){overflow:hidden}
[hidden]{display:none!important}
.holiday-form-panel{text-align:left}.holiday-form-panel h2{font-size:37px;margin:16px 0}.holiday-form-panel h2:focus{outline:none}.holiday-form-intro{font-size:17px;line-height:1.6;color:#ddd1dc;margin:0 0 24px}.holiday-form-panel form{padding:25px;margin:0}.holiday-form-panel .field-row{gap:15px}.holiday-form-panel label{font-size:15px;margin-bottom:18px;gap:6px}.holiday-form-panel input,.holiday-form-panel select,.holiday-form-panel textarea{font-size:16px;padding:10px}.holiday-form-panel .optional-label{display:inline;font-size:13px;font-weight:400}.holiday-form-panel .button{font-size:17px;padding:16px 18px}.holiday-form-panel .form-note{font-size:14px}.holiday-back{background:none;border:0;color:#ff76b4;padding:0;font-size:15px;text-decoration:underline;text-underline-offset:5px;margin-top:5px}.holiday-form-panel>.holiday-call{text-align:center;font-size:16px}.holiday-form-panel #holiday-request-status{font-size:15px;line-height:1.6;color:var(--ink);margin-bottom:0}
@media(max-width:700px){.holiday-form-panel h2{font-size:33px}.holiday-form-panel form{padding:22px 17px}.holiday-form-panel .field-row{grid-template-columns:1fr;gap:0}.holiday-form-panel .button{font-size:16px}.holiday-form-panel .form-note{font-size:14px}.holiday-form-panel .holiday-back{font-size:14px}}
.about{position:relative}.about>.holiday-lights{inset:0 0 auto;z-index:5}
.snow-scene{position:relative;isolation:isolate}.snow-scene>.soft-snow{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1;color:#ff8cbe}.hero-content>.soft-snow,.contact-copy>.soft-snow,.holiday-offer-panel>.soft-snow{color:#fff}.soft-snow>span{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);opacity:.12;animation:gentle-snow var(--duration) linear var(--delay) infinite}.soft-snow svg{width:100%;height:100%}.hero-content>.soft-snow>span,.contact-copy>.soft-snow>span,.holiday-offer-panel>.soft-snow>span{opacity:.16}.holiday-offer-panel.snow-scene{isolation:isolate}
@keyframes gentle-snow{0%{transform:translate3d(-8px,-35px,0) rotate(0)}50%{transform:translate3d(8px,10px,0) rotate(20deg)}100%{transform:translate3d(-8px,55px,0) rotate(40deg)}}
@media(prefers-reduced-motion:reduce){.soft-snow>span{animation:none}}


/* Pink accents on charcoal surfaces. */
:root{color-scheme:dark;--surface:#1c1620;--border:#493044;--pink:#ff76b4}
body{background:var(--paper);color:var(--ink)}
header{background:#111014f5;box-shadow:0 1px 0 #ff76b42b;padding:14px 5%;backdrop-filter:blur(14px)}
a.brand,.footer-top a.brand{display:block;position:relative;flex-shrink:0;width:340px;height:112px;overflow:visible}
a.brand>img{display:block;position:static;width:100%;height:100%;max-width:100%;object-fit:contain;border-radius:0}
html{scroll-padding-top:155px}
.brand-icon,.video-section{background:#1c1620}
.lime,.service-list article>a:hover,.skip-link{background:var(--pink);color:#1b0c16}
.button:hover{background:#ffa1cc;color:#1b0c16}
.hero-shade{background:linear-gradient(90deg,#100d16ed,#190d1c7a)}
.contact{background:#1c1420;color:var(--ink);border-top:1px solid var(--border)}
form{background:#251c29;border:1px solid var(--border);color:var(--ink)}
input,select,textarea{background:#151117;color:var(--ink);border-color:#63485d}
input::placeholder,textarea::placeholder{color:#bba7b6}
.form-note{color:#c3b0bf}.form-note a{color:#ff9bc9}
#holiday-offer{background:#211626;color:var(--ink);border:1px solid #73435e}
.holiday-form-panel #holiday-request-status{color:var(--ink)}
.holiday-close:hover{background:#4b2941}
footer{background:#0d0b10;border-top:1px solid #352a35}
.footer-services a,nav a:hover,.header-cta:hover{color:#ff92c5}
@media(max-width:1100px) and (min-width:701px){a.brand,.footer-top a.brand{width:300px;height:100px}header{padding:10px 5%}html{scroll-padding-top:175px}}
@media(max-width:700px){header{padding:9px 5% 12px;gap:6px 10px}header a.brand{width:190px;height:70px}header a.brand>img{position:static;width:100%;height:100%;object-fit:contain}header>.header-cta{font-size:16px}header nav{background:transparent}.footer-top a.brand{width:300px;max-width:100%;height:105px}html{scroll-padding-top:135px}}
@media(max-width:380px){header a.brand{width:155px;height:60px}header>.header-cta{font-size:14px;gap:4px}header>.header-cta>span:last-child{display:none}}
