/* Lighting landing page: calm neutrals with selective festive accents. */
body.service-page.holiday-page{--teal:#b7192a;--ink:#262326;--tan:#fff;--pale:#fff;color:#262326;background:#fff}
body.service-page.holiday-page main{color:#262326}
body.service-page.holiday-page main p{color:#514b4e!important}
body.service-page.holiday-page main h2,
body.service-page.holiday-page main h3,
body.service-page.holiday-page .faq-item summary{color:#262326!important}
body.service-page.holiday-page main em,
body.service-page.holiday-page main .eyebrow{color:#b7192a!important}
body.service-page.holiday-page .holiday-intro,
body.service-page.holiday-page .holiday-why,
body.service-page.holiday-page .soft-section,
body.service-page.holiday-page .holiday-gallery-link{background:#fff!important}
body.service-page.holiday-page .holiday-details span{color:#262326!important;background:#fff!important;border-color:#d9d5d7!important}
body.service-page.holiday-page .value-card{background:#fff!important;border-color:#d9d5d7!important;box-shadow:0 12px 30px #2623260d!important}
body.service-page.holiday-page .value-card h3{color:#b7192a!important}
body.service-page.holiday-page .sub-hero:before{background:linear-gradient(180deg,rgba(20,18,20,.45),rgba(20,18,20,.8))!important}
body.service-page.holiday-page .sub-hero p,
body.service-page.holiday-page .sub-hero .eyebrow{color:#fff!important}
body.service-page.holiday-page .holiday-journey{background:#262326!important}
body.service-page.holiday-page .holiday-journey h2,
body.service-page.holiday-page .holiday-journey h3,
body.service-page.holiday-page .holiday-journey p,
body.service-page.holiday-page .holiday-journey em{color:#fff!important}
body.service-page.holiday-page .holiday-step{background:#262326!important;border-color:#686166!important}
body.service-page.holiday-page .holiday-step b{background:#b7192a!important;color:#fff!important}
body.service-page.holiday-page .sub-button,
body.service-page.holiday-page .nav-actions .primary,
body.service-page.holiday-page .mobile-quote-link{background:#b7192a!important;color:#fff!important}
body.service-page.holiday-page .sub-button:hover{background:#971523!important;color:#fff!important}
body.service-page.holiday-page .quote-band{background:#262326!important}
body.service-page.holiday-page .quote-band h2,
body.service-page.holiday-page .quote-band p{color:#fff!important}
body.service-page.holiday-page .quote-band h2 em{color:#fff!important}
body.service-page.holiday-page .faq-item{border-color:#d9d5d7!important}
body.service-page.holiday-page .faq-item summary i{color:transparent!important;background:transparent!important;font-size:0!important}
body.service-page.holiday-page .faq-item summary i::before{border-color:#b7192a!important}
body.service-page.holiday-page .nav-pill{background:#fff!important;color:#262326!important}
body.service-page.holiday-page .nav-pill nav a{color:#262326!important}
body.service-page.holiday-page .nav-actions .phone,
body.service-page.holiday-page .mobile-window-link{background:#262326!important;color:#fff!important}
body.service-page.holiday-page .nav-pill nav .mobile-quote-link,
body.service-page.holiday-page .nav-pill nav .mobile-window-link{color:#fff!important}
body.service-page.holiday-page .brand img{filter:grayscale(1) brightness(.45)}
body.service-page.holiday-page footer{background:#262326!important;color:#fff!important}
body.service-page.holiday-page footer h3{color:#fff!important}
body.service-page.holiday-page footer a,
body.service-page.holiday-page footer span{color:#d4cfd1!important}
body.service-page.holiday-page footer a:hover{color:#fff!important}
body.service-page.holiday-page footer .social-links a{background:#b7192a!important;color:#fff!important}
body.service-page.holiday-page footer .social-links a:hover{background:#971523!important}
body.service-page.holiday-page footer .social-links a svg,
body.service-page.holiday-page footer .social-links a svg path{fill:currentColor!important;color:#fff!important}
body.service-page.holiday-page footer .footer-brand>img{filter:brightness(0) invert(1)!important;object-fit:contain;width:150px!important;height:auto!important;margin:0 0 12px!important}
body.service-page.holiday-page footer .powered-by-amplify{filter:brightness(0) invert(1)!important}
body.service-page.holiday-page footer .powered-by-amplify{opacity:.85}
body.service-page.holiday-page footer .copyright{color:#bfb8bc!important}
body.service-page.holiday-page footer a:focus-visible{outline:2px solid #fff;outline-offset:5px}
body.service-page.holiday-page .site-header.menu-open,
body.service-page.holiday-page .site-header.menu-open nav{background:#fff!important}
body.service-page.holiday-page .site-header.menu-open .nav-pill nav{background:#fff!important;color:#262326!important}
body.service-page.holiday-page .site-header.menu-open .nav-pill nav .mobile-window-link{background:#262326!important;color:#fff!important}
body.service-page.holiday-page .site-header.menu-open .nav-pill nav .mobile-quote-link{background:#b7192a!important;color:#fff!important}
body.service-page.holiday-page .site-header .menu-toggle{color:#262326!important}

/* Offers, process, gallery, benefits, and reviews follow one consistent rhythm. */
body.service-page.holiday-page .sub-wrap{max-width:1240px;padding:80px 28px}
.holiday-trust{max-width:1240px;margin:auto;padding:36px 28px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;text-align:center;border:0}
.holiday-trust-icon{display:block;width:48px;height:48px;margin:0 auto 18px;color:#b7192a}
.holiday-trust strong{display:block;color:#b7192a;font-size:17px;margin-bottom:8px}
.holiday-trust span{font-size:14px;color:#514b4e}
.holiday-offer-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}
.holiday-offer-card{grid-column:span 2;border:1px solid #e4dbd7;border-radius:20px;padding:30px;text-align:left;position:relative;isolation:isolate;overflow:hidden;background:#fff;box-shadow:0 12px 36px rgba(38,35,38,.08),0 2px 8px rgba(38,35,38,.03)}
.holiday-offer-card::before{content:"";position:absolute;z-index:-1;pointer-events:none;top:-40px;right:-40px;width:155px;height:155px;border-radius:50%;background:radial-gradient(circle,rgba(220,180,111,.19),rgba(183,25,42,.035) 50%,transparent 72%);filter:blur(16px)}
.holiday-offer-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:23px;border:1px solid #e5d6c1;border-radius:15px;background:#faf5ed;color:#a52630}
.holiday-offer-icon svg{display:block;width:27px;height:27px}
.holiday-offer-card:nth-child(4){grid-column:2/span 2}
.holiday-offer-card h3,.holiday-reason h3{font-size:21px;line-height:1.2;margin:0 0 16px}
.holiday-offer-card p,.holiday-reason p{font-size:16px;line-height:1.65;margin:0}
.holiday-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:24px;margin-top:36px}
.holiday-call{font-weight:700;font-size:15px;text-decoration:underline;text-underline-offset:5px}
body.service-page.holiday-page .holiday-journey-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 36px}
body.service-page.holiday-page .holiday-step{min-height:0;padding:0 16px;border:0;text-align:center;grid-column:auto}
body.service-page.holiday-page .holiday-journey .sub-wrap{max-width:1120px;padding-top:64px;padding-bottom:64px}
body.service-page.holiday-page .holiday-journey .heading{margin-bottom:40px}
body.service-page.holiday-page main .heading h2,
body.service-page.holiday-page main .faq-heading h2,
body.service-page.holiday-page main .quote-band h2{font-size:clamp(36px,5.5vw,68px)!important;line-height:1.05}
@media(max-width:680px){
  body.service-page.holiday-page main .heading h2,
  body.service-page.holiday-page main .faq-heading h2,
  body.service-page.holiday-page main .quote-band h2{font-size:clamp(38px,11vw,58px)!important}
}
body.service-page.holiday-page .holiday-journey .heading .eyebrow{font-size:12px!important;letter-spacing:.16em;font-weight:600!important}
body.service-page.holiday-page .holiday-step b{width:56px;height:56px;margin:0 auto 18px;font-size:23px;box-shadow:0 8px 24px rgba(183,25,42,.3),0 0 16px rgba(183,25,42,.16)}
body.service-page.holiday-page .holiday-step h3{font-size:17px!important;line-height:1.25;margin-bottom:10px;letter-spacing:-.02em}
body.service-page.holiday-page .holiday-journey .holiday-step p{font-size:16px!important;font-weight:400!important;line-height:1.55;color:#c4bfc2!important;max-width:30ch;margin:0 auto}
.holiday-gallery-preview{display:block;max-width:1060px;margin:auto;overflow:hidden;border-radius:24px}
.holiday-gallery-preview img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover;transition:transform .5s ease}
.holiday-gallery-preview:hover img{transform:scale(1.025)}
.holiday-reasons-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:960px;margin:0 auto}
.holiday-reason{border:1px solid #e8e0dc;border-radius:20px;padding:24px;background:linear-gradient(140deg,#faf6f1,#fff 65%);box-shadow:0 8px 24px #26232608}
.holiday-reason-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#b7192a0d;color:#b7192a;margin-bottom:18px}
.holiday-reason-icon svg{width:25px;height:25px}
body.service-page.holiday-page .holiday-why .sub-wrap{padding-top:80px;padding-bottom:80px}
body.service-page.holiday-page .holiday-why .heading{margin-bottom:56px}
.holiday-reason h3{font-size:17px;line-height:1.25;margin-bottom:10px;letter-spacing:0}
.holiday-reason p{max-width:32ch;font-weight:400;line-height:1.6}
.holiday-reviews{border-top:1px solid #d9d5d7}
@media(max-width:900px){.holiday-reasons-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.holiday-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.holiday-offer-card,.holiday-offer-card:nth-child(4){grid-column:auto}.holiday-offer-card:last-child{grid-column:1/-1}body.service-page.holiday-page .holiday-journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body.service-page.holiday-page .sub-wrap{padding:54px 22px}.holiday-trust{grid-template-columns:repeat(2,minmax(0,1fr));padding:28px 22px;gap:24px 16px}.holiday-trust strong{font-size:14px}.holiday-trust span{font-size:13px}.holiday-offer-grid,.holiday-reasons-grid{grid-template-columns:1fr}.holiday-offer-card{padding:25px}.holiday-offer-card:last-child{grid-column:auto}body.service-page.holiday-page .holiday-journey-grid{grid-template-columns:1fr;gap:36px}.holiday-actions{gap:20px}.holiday-gallery-preview img{max-height:none}}
@media(prefers-reduced-motion:reduce){.holiday-gallery-preview img{transition:none}}

/* Leave the next section visible, while allowing room for enlarged text. */
body.service-page.holiday-page .sub-hero{
  box-sizing:border-box;
  min-height:80vh!important;
  min-height:80svh!important;
  height:auto!important;
  padding:120px 24px 56px!important;
  background-size:cover!important;
  background-position:center!important;
}
body.service-page.holiday-page .sub-hero>.reveal{position:relative;z-index:1}
/* Rich festive fades, used on feature words rather than every heading. */
@supports (background-clip:text) or (-webkit-background-clip:text){
  body.service-page.holiday-page .sub-hero h1,
  body.service-page.holiday-page .quote-band h2 em{
    background:linear-gradient(105deg,#f3d29b 0%,#ed9c78 24%,#ef6269 53%,#81c39b 100%);
    background-clip:text;-webkit-background-clip:text;
    color:transparent!important;-webkit-text-fill-color:transparent;
  }
  body.service-page.holiday-page .holiday-offer h2 em,
  body.service-page.holiday-page .holiday-why h2 em{
    background:linear-gradient(105deg,#865927 0%,#b7192a 48%,#276140 100%);
    background-clip:text;-webkit-background-clip:text;
    color:transparent!important;-webkit-text-fill-color:transparent;
  }
}
body.service-page.holiday-page .sub-hero .hero-button,
body.service-page.holiday-page .quote-band .sub-button{
  background:linear-gradient(110deg,#80552c 0%,#ae2630 46%,#24573c 100%)!important;
  color:#fff!important;
}
@media(forced-colors:active){
  body.service-page.holiday-page .sub-hero h1,
  body.service-page.holiday-page .quote-band h2 em,
  body.service-page.holiday-page .holiday-offer h2 em,
  body.service-page.holiday-page .holiday-why h2 em{
    background:none;color:CanvasText!important;-webkit-text-fill-color:CanvasText;
  }
}
body.service-page.holiday-page .holiday-snow{
  position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2;
}
.holiday-snow i{
  position:absolute;top:-12px;left:var(--x);
  width:var(--size);height:var(--size);border-radius:50%;background:#fff;
  opacity:.65;pointer-events:none;
  animation:holiday-snowfall var(--duration) var(--delay) linear infinite;
}
@keyframes holiday-snowfall{
  from{transform:translate3d(0,-20px,0)}
  to{transform:translate3d(var(--drift),max(110vh,800px),0)}
}
@media(max-width:680px){
  body.service-page.holiday-page .sub-hero{min-height:78svh!important;padding:110px 22px 36px!important}
  .holiday-snow i:nth-child(3n){display:none}
}
@media(prefers-reduced-motion:reduce){
  body.service-page.holiday-page .holiday-snow{display:none}
  .holiday-snow i{animation:none}
}
