/* Keep the public home and quote flow visually connected. */
#customer-screen,
.quote-page {
  --home-surface: #f4fbff;
  --home-border: #d6e7f0;
}

#customer-screen .hero {
  background: linear-gradient(180deg, #fff 0%, #f4fbff 100%);
}

#customer-screen .review-shortcut,
#customer-screen .reviews {
  background: var(--home-surface);
}

#customer-screen #quote {
  background: linear-gradient(180deg, #f4fbff 0%, #fff 100%);
}

#customer-screen .review-rail article {
  border-color: var(--home-border);
  box-shadow: 0 4px 14px rgba(7, 47, 100, .04);
}

#customer-screen .service-area-precheck {
  border-color: transparent;
  border-radius: 12px;
  background: transparent;
  box-shadow: none;
}

#customer-screen .quote-form,
.quote-page .quote-form {
  border-color: var(--home-border);
  box-shadow: 0 8px 24px rgba(7, 47, 100, .04);
}

#customer-screen .calculator-hero-card {
  margin-bottom: 20px;
  border: 1px solid var(--home-border);
  border-radius: 14px;
  background: linear-gradient(180deg, #fff 0%, #f4fbff 100%);
  box-shadow: 0 8px 22px rgba(7, 47, 100, .05);
}

#customer-screen .calculator-hero-card:before {
  height: 6px;
  background: #cbdfea;
}

#customer-screen .calculator-hero-card .calculator-booking-note {
  margin-top: 16px;
}

#customer-screen .calculator-help {
  margin: 0 8px 20px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

#customer-screen .calculator-help h3 {
  margin: 0 0 4px;
  color: #526a7b;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}

#customer-screen .calculator-help p {
  margin: 0;
  color: #526a7b;
  font-size: 1rem;
  line-height: 1.6;
}

#customer-screen .calculator-help-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  margin-top: 2px;
  color: #315f7d;
  font-size: 1rem;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 4px;
}

#customer-screen .calculator-help-link:focus-visible {
  outline: 3px solid #0878ed;
  outline-offset: 3px;
  border-radius: 3px;
}

#customer-screen #quote-layout .calculator-minimum-notice {
  margin: 0 0 24px;
  padding: 12px 14px;
  border-color: var(--home-border);
  border-radius: 10px;
  background: #f4fbff;
  color: #315f7d;
  font-weight: 700;
}

#customer-screen #quote-layout .calculator-duration-notice {
  display: none;
}

#customer-screen #quote-layout .quote-summary .total {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px 4px;
  align-items: baseline;
}

#customer-screen #quote-layout .quote-summary .total small {
  align-self: baseline;
  margin: 0;
}

#customer-screen #quote-layout .quote-summary .total b {
  min-width: 0;
  font-size: 2.5rem;
  line-height: 1.15;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

#customer-screen #quote-layout .quote-summary .total span {
  grid-column: 1 / -1;
  margin: 0;
  font-size: 1rem;
  line-height: 1.5;
}

#customer-screen #quote-layout .quote-duration {
  display: block;
  margin: 0 0 20px;
  padding: 0 0 20px;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,.22);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

#customer-screen #quote-layout .quote-duration span {
  display: block;
  margin-bottom: 6px;
  color: #9ed5ff;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

#customer-screen #quote-layout .quote-duration b {
  display: block;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.35;
}

#customer-screen #quote-layout .quote-duration small {
  display: block;
  margin-top: 8px;
  color: #d6e9ff;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
}

#customer-screen #quote-layout .quote-total-label {
  margin: 20px 0 8px;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
}

#customer-screen #quote-layout .quote-lines {
  border-top: 0;
}

#customer-screen #quote-layout .quote-lines div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  font-size: 1rem;
}

#customer-screen #quote-layout .quote-lines b {
  max-width: 12ch;
  overflow-wrap: anywhere;
}

#customer-screen .quote-bottom-actions .continue-estimate,
#customer-screen #house-quote-actions > small {
  display: none;
}

#customer-screen .surface-picker > .surface-card:not(.is-selected),
#customer-screen .surface-picker > .room-picker,
#customer-screen .special-rooms-section {
  border-color: #cbdfea;
  border-radius: 12px;
  background: #fbfeff;
}

#customer-screen .surface-picker > .room-picker[open],
#customer-screen .special-rooms-section[open] {
  border-color: var(--blue);
}

#customer-screen .surface-picker > .room-picker[open] > summary,
#customer-screen .special-rooms-section[open] > summary {
  background: #eaf6ff;
}

#quote-space-stage .room-picker[open] > summary > .surface-status,
#quote-space-stage .special-rooms-section[open] > summary > .surface-status {
  background: var(--blue);
  color: #fff;
}

#customer-screen .quote-detail-toggle,
.quote-page .quote-detail-toggle {
  margin: 20px 0;
  border-width: 1px;
  border-color: var(--home-border);
  border-radius: 12px;
  background: var(--home-surface);
}

#customer-screen .quote-detail-toggle summary small,
.quote-page .quote-detail-toggle summary small {
  font-weight: 400;
}

#customer-screen .form-step,
.quote-page .form-step {
  margin-bottom: 24px;
  padding-bottom: 24px;
  border-color: var(--home-border);
}

#customer-screen .form-step h3,
.quote-page .form-step h3 {
  margin-bottom: 16px;
}

#customer-screen .step-help,
.quote-page .step-help {
  margin-bottom: 20px;
}

#customer-screen .quote-bottom-actions,
.quote-page .quote-bottom-actions {
  border-color: var(--home-border);
  border-radius: 12px;
  box-shadow: none;
}

/* Approved opening: one offer, one calculator action, compact booking overview. */
#customer-screen .hero.hero-refresh{padding:58px 0 40px;background:radial-gradient(ellipse at 82% 28%,#dff3ff 0,transparent 55%),linear-gradient(180deg,#f1faff 0%,#f4fbff 100%)}
#customer-screen .hero-refresh::after{display:none}
#customer-screen .hero-refresh .hero-grid{grid-template-columns:1.15fr 1fr;gap:44px;min-height:0}
#customer-screen .hero-refresh .hero-message>.eyebrow{color:#315f7d;font-size:13px;letter-spacing:.09em;margin:0 0 18px}
#customer-screen .hero-refresh h1{line-height:1.07;letter-spacing:-.035em}
#customer-screen .hero-refresh h1 .hero-offer{padding:0;background:none;box-shadow:none;color:var(--blue);font-size:clamp(60px,7vw,94px);letter-spacing:-.05em;animation:none}
#customer-screen .hero-refresh h1 .hero-title-line{padding:0;background:none;box-shadow:none;font-size:clamp(29px,3.3vw,44px);letter-spacing:-.035em;animation:none}
#customer-screen .hero-refresh h1 .hero-title-line::after{display:none}
#customer-screen .hero-refresh .hero-copy{margin:18px 0 24px;font-size:19px;color:#315f7d}
#customer-screen .hero-refresh .hero-actions .button{min-height:56px;padding:14px 28px;font-size:19px}
#customer-screen .hero-refresh .hero-booking-note{margin:15px 0 0;color:var(--navy);font-size:17px}
#customer-screen .hero-refresh .hero-message>*{animation:none}
.hero-process{padding:28px;border:1px solid #deedf6;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(8,120,237,.08);color:var(--navy)}
.hero-process h2{margin:0 0 24px;font-size:25px;line-height:1.2;letter-spacing:-.025em}
.hero-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;list-style:none;padding:0;margin:0 0 24px;text-align:center}
.hero-steps li{position:relative;display:grid;justify-items:center;align-content:start;gap:10px;line-height:1.25}
.hero-steps li:not(:last-child)::after{content:'→';position:absolute;top:9px;right:-14px;color:#7995ae;font-size:23px}
.hero-steps li>span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#edf7ff;color:var(--blue);font-size:21px;font-weight:700}
.hero-steps b{font-size:16px;font-weight:700}
.hero-fishing{display:flex;align-items:center;gap:12px;padding:14px;border-radius:12px;background:linear-gradient(110deg,#f1faff,#fffbe8)}
.hero-fishing img{flex:none}
.hero-fishing b{display:block;font-size:16px;line-height:1.3}
.hero-fishing small{display:block;margin-top:4px;font-size:14px;line-height:1.4;color:#45627a}
.fishing-teaser-icon img,.fish-button-mark img{display:block;width:100%;height:100%;object-fit:contain}
.fishing-teaser-icon:has(img),.fish-button-mark:has(img){background:transparent;border:0;box-shadow:none}
@media(max-width:800px){
#customer-screen .hero.hero-refresh{padding:32px 0 24px}
#customer-screen .hero-refresh .hero-grid{grid-template-columns:1fr;gap:24px}
#customer-screen .hero-refresh .hero-message>.eyebrow{font-size:11px;margin-bottom:12px}
#customer-screen .hero-refresh h1 .hero-offer{font-size:clamp(58px,16vw,84px)}
#customer-screen .hero-refresh h1 .hero-title-line{font-size:clamp(29px,7.5vw,38px)}
#customer-screen .hero-refresh .hero-copy{font-size:17px;margin:14px 0 20px}
#customer-screen .hero-refresh .hero-actions .button{width:100%;font-size:18px}
#customer-screen .hero-refresh .hero-booking-note{text-align:center;font-size:16px}
.hero-process{padding:20px;border-radius:16px}
.hero-process h2{font-size:21px;margin-bottom:18px}
.hero-steps{gap:12px;margin-bottom:18px}
.hero-steps b{font-size:14px}
.hero-steps li>span{width:36px;height:36px;font-size:18px}
.hero-steps li:not(:last-child)::after{top:5px;right:-12px;font-size:21px}
.hero-fishing{padding:12px;gap:10px}
.hero-fishing b{font-size:15px}
.hero-fishing small{font-size:13px}
}

/* Approved hybrid: familiar yellow offer, compact process, budget symbol. */
#customer-screen .hero.hero-refresh{background:radial-gradient(ellipse at 95% 18%,#def6ff 0,transparent 52%),radial-gradient(ellipse at 5% 72%,#fffbe6 0,transparent 50%),linear-gradient(180deg,#f1faff,#f4fbff)}
#customer-screen .hero-refresh h1 .hero-offer{padding:3px 12px 7px;border-radius:9px;background:var(--yellow);color:var(--navy);font-size:clamp(60px,7vw,88px)}
.hero-process{padding:22px;border:0;box-shadow:none;background:transparent}
.hero-process .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hero-steps{padding:20px 16px;background:#fff;border-radius:16px;box-shadow:0 6px 20px rgba(8,120,237,.05);margin:0 0 16px}
.hero-fishing{background:#fff8d8;border:1px solid #f6e6a1;border-radius:16px;padding:16px}
.hero-fish-symbol{flex:0 0 44px;font-size:35px;line-height:1.2}
.site-header .header-contact{color:var(--blue);font-weight:700;text-decoration:none;font-size:16px;padding:10px 0}
@media(max-width:800px){
#customer-screen .hero-refresh .hero-grid{gap:20px}
#customer-screen .hero-refresh h1 .hero-offer{font-size:clamp(58px,15vw,80px)}
.hero-process{padding:0}
.hero-steps{padding:16px 12px;gap:10px}
.hero-steps li{grid-template-columns:auto 1fr;align-items:center;gap:7px;text-align:left}
.hero-steps li>span{width:28px;height:28px;font-size:17px}
.hero-steps li:not(:last-child)::after{top:5px;right:-10px;font-size:17px}
.hero-steps b{font-size:13px}
.hero-fishing{padding:14px}
}
@media(max-width:360px){.hero-steps li{grid-template-columns:1fr;text-align:center}.hero-steps b{font-size:13px}.hero-steps li:not(:last-child)::after{top:4px}}

/* Light flow refinement: preserve content and controls; reduce introductory gaps. */
.site-header .header-contact{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
#customer-screen .review-shortcut{padding:4px 0 0}
#customer-screen .reviews{padding:28px 0 36px}
#customer-screen .reviews .section-intro h2{font-size:clamp(30px,3.2vw,42px);line-height:1.12;letter-spacing:-.035em}
#customer-screen .reviews .section-intro>p:last-child{margin-top:12px;color:#3c5871;font-size:18px}
#customer-screen .review-rail{margin-top:22px}
#customer-screen #quote{padding:40px 0 50px}
#customer-screen .quote-intro{margin-bottom:20px}
#customer-screen .quote-intro h2{font-size:clamp(30px,3.5vw,44px);line-height:1.12}
#customer-screen .quote-intro>p:last-child{margin-top:12px;color:#3c5871}
#customer-screen .service-area-precheck{margin-bottom:16px;padding-top:10px;padding-bottom:10px}
#customer-screen .service-area-precheck>span:last-child{color:#3c5871}
#customer-screen .calculator-hero-card{padding:20px 18px 16px;margin-bottom:14px;box-shadow:none}
#customer-screen .calculator-hero-card>span{margin-bottom:12px;min-height:24px;font-size:11px}
#customer-screen .calculator-hero-card h2{font-size:28px;margin-bottom:10px;line-height:1.15}
#customer-screen .calculator-hero-card p{color:#3c5871}
#customer-screen .calculator-booking-note{margin-top:8px}
#customer-screen .calculator-help{margin:0 0 16px;padding:0 4px}
#customer-screen .calculator-help h3{margin:0 0 4px;font-size:16px;color:#31516a}
#customer-screen .calculator-help p{margin:0;color:#3c5871;font-size:15px;line-height:1.45}
#customer-screen .calculator-help-link{font-size:15px;min-height:44px;margin:0}
#customer-screen #quote-layout .calculator-minimum-notice{margin-bottom:18px;color:#31516a}
#customer-screen .step-help,#customer-screen .surface-toggle small,#customer-screen .surface-card summary small,#customer-screen .room-picker summary small{color:#3c5871}
@media(max-width:800px){
#customer-screen .reviews{padding:22px 0 28px}
#customer-screen .reviews .section-intro>p:last-child{font-size:17px}
#customer-screen #quote{padding:30px 0 36px}
#customer-screen .quote-intro{margin-bottom:16px}
#customer-screen .calculator-hero-card{padding:18px 14px 14px}
#customer-screen .calculator-hero-card h2{font-size:25px}
#customer-screen .quote-form{padding:20px 16px}
#customer-screen .calculator-help p{font-size:15px}
}

/* Slightly stronger brand presence without enlarging the header. */
.site-header .wordmark{font-size:33px}
@media(max-width:800px){.site-header .wordmark{font-size:27.5px}}
@media(max-width:360px){.site-header .wordmark{font-size:26.5px}}

/* Approved polished hybrid: familiar accents with a direct calculator entrance. */
#customer-screen .hero-refresh h1 .hero-offer{transform:rotate(-1deg);box-shadow:4px 4px 0 rgba(230,189,36,.22)}
.hero-steps{border:1px solid #dcebf4;box-shadow:0 5px 15px rgba(9,61,96,.04)}
.hero-fishing{background:linear-gradient(110deg,#fff9df,#fff5cb);border-color:#f1df94}
.hero-fish-symbol{display:grid;place-items:center;flex-basis:43px;width:43px;height:43px;border-radius:50%;background:#ffea80;font-size:28px}
#customer-screen .reviews .section-intro h2{font-size:clamp(27px,3.1vw,38px);line-height:1.15}
#customer-screen .reviews .section-intro>p:last-child{font-size:17px}
#customer-screen .review-rail article{min-height:0;gap:8px;padding:20px;border-radius:13px;border-color:#deebf4;box-shadow:0 7px 20px rgba(9,61,96,.035)}
#customer-screen .review-rail article p{font-size:16px;line-height:1.5}
#customer-screen #quote{padding-top:30px}
#customer-screen .service-area-precheck{display:flex;align-items:center;gap:10px;margin:0 0 16px;padding:0 4px;color:#31516a}
#customer-screen .service-area-precheck>span:last-child{font-size:15px;line-height:1.45}
#customer-screen .service-area-precheck a{color:var(--blue)}
#customer-screen .quote-form{border-color:#ccdfec;border-radius:16px;box-shadow:0 8px 24px rgba(9,61,96,.035)}
#customer-screen .calculator-hero-card{margin:0 0 12px;padding:20px 0 0;background:transparent;border:0;border-radius:0;overflow:visible}
#customer-screen .calculator-hero-card::before{top:-28px;left:-28px;right:-28px;height:5px;border-radius:16px 16px 0 0;background:linear-gradient(90deg,#092c59,#0878ed,#27c4e6)}
#customer-screen .calculator-hero-card h2{font-size:28px;margin:0 0 10px}
.quote-progress{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:0 0 16px;color:#31516a;font-size:13px;line-height:1.4}
.quote-progress b{color:var(--blue)}
#customer-screen .calculator-help{margin:0 0 14px;padding:0}
#customer-screen .calculator-help p{font-size:15px}
#customer-screen .calculator-help-link{display:inline;min-height:0;font-size:15px;color:var(--blue);font-weight:500}
.calculator-measurement-help{margin:6px 0 0;color:#31516a;font-size:14px}
.calculator-measurement-help summary{min-height:36px;display:list-item;list-style:disclosure-closed;align-content:center;text-decoration:none}
.calculator-measurement-help[open] summary{list-style:disclosure-open}
#customer-screen .calculator-measurement-help p{margin-top:4px;font-size:14px;line-height:1.5}
#customer-screen #quote-layout .calculator-minimum-notice{margin-bottom:20px;padding:11px 12px;background:#edf7ff;color:#244b6b;font-size:14px;font-weight:500}
#customer-screen .surface-picker>.surface-card:not(.is-selected),#customer-screen .surface-picker>.room-picker,#customer-screen .special-rooms-section{background:#f6fbff;border-color:#d3e2ec;border-radius:11px}
@media(max-width:800px){
#customer-screen .reviews .section-intro h2{font-size:27px}
#customer-screen .reviews .section-intro>p:last-child{font-size:16px}
#customer-screen #quote{padding-top:22px}
#customer-screen .quote-form{padding:21px 16px}
#customer-screen .calculator-hero-card{padding-top:0}
#customer-screen .calculator-hero-card::before{top:-21px;left:-16px;right:-16px}
#customer-screen .calculator-hero-card h2{font-size:26px}
.quote-progress{font-size:12px;margin-bottom:17px}
#customer-screen .service-area-precheck>span:last-child{font-size:14px}
}

/* Compact calculator entrance; retain all selection and estimate controls. */
#customer-screen .calculator-hero-card h2{font-size:clamp(24px,3vw,30px);line-height:1.18;margin-bottom:8px}
#customer-screen .calculator-hero-card>p{font-size:16px;line-height:1.45;margin-bottom:0}
#customer-screen .quote-progress{justify-content:flex-start;gap:8px 18px;margin-bottom:14px;font-size:12px}
#customer-screen .calculator-help{margin:0 0 6px}
#customer-screen .calculator-measurement-help{margin:0;font-size:14px}
#customer-screen .calculator-measurement-help summary{min-height:44px;cursor:pointer;color:#31516a}
#customer-screen #quote-layout .calculator-minimum-notice{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;margin:0 0 8px;font-size:14px;line-height:1.5;color:#456079}
#customer-screen #quote-space-stage>.form-step>.step-help{font-size:14px;line-height:1.5;margin:0 0 16px;color:#456079}
#customer-screen .surface-picker>.room-picker>summary,#customer-screen .special-rooms-section>summary{gap:12px;cursor:pointer}
#customer-screen .surface-picker>.room-picker>summary::after,#customer-screen .special-rooms-section>summary::after{content:"";flex:0 0 8px;width:8px;height:8px;border-right:2px solid #31516a;border-bottom:2px solid #31516a;transform:rotate(45deg);margin-right:4px}
#customer-screen .surface-picker>.room-picker[open]>summary::after,#customer-screen .special-rooms-section[open]>summary::after{transform:rotate(225deg)}
#customer-screen .surface-picker>.room-picker>summary>span:first-child,#customer-screen .special-rooms-section>summary>span:first-child{flex:1}
#customer-screen .service-area-precheck{margin-bottom:14px}
@media(max-width:800px){#customer-screen .calculator-hero-card h2{font-size:25px}#customer-screen .calculator-hero-card{margin-bottom:4px}}
/* Main surface rows: use the verified wall-row grid without visible checkboxes. */
#customer-screen :is(#walls-card,#baseboards-card,#crown-card)>.surface-toggle{position:relative;grid-template-columns:minmax(0,1fr) auto 8px;gap:12px;min-height:68px;padding:14px 16px}
#customer-screen :is(#walls-card,#baseboards-card,#crown-card)>.surface-toggle>input[type=checkbox]{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:0!important;padding:0!important;opacity:0;clip-path:inset(50%);overflow:hidden}
#customer-screen :is(#walls-card,#baseboards-card,#crown-card)>.surface-toggle>span{min-width:0;grid-column:1}
#customer-screen :is(#walls-card,#baseboards-card,#crown-card)>.surface-toggle>.surface-status{grid-column:2;justify-self:end;align-self:center;width:auto;min-width:0;white-space:nowrap}
#customer-screen :is(#walls-card,#baseboards-card,#crown-card)>.surface-toggle::after{content:"";grid-column:3;width:8px;height:8px;border-right:2px solid #31516a;border-bottom:2px solid #31516a;transform:rotate(45deg)}
#customer-screen :is(#walls-card,#baseboards-card,#crown-card).is-selected>.surface-toggle::after{transform:rotate(225deg)}
#customer-screen :is(#walls-card,#baseboards-card,#crown-card)>.surface-toggle:focus-within{outline:3px solid #0878ed;outline-offset:3px;border-radius:10px}
#customer-screen .calculator-hero-card::before{display:none}
#customer-screen .quote-form{border-top:5px solid #438bec;border-radius:16px}
#customer-screen .calculator-hero-card{margin-bottom:0;padding-top:8px}
#customer-screen .calculator-hero-card h2{font-size:25px;line-height:1.18;margin-bottom:8px}
#customer-screen .calculator-hero-card>p{margin:0;font-size:15px}
#customer-screen .quote-progress{margin-bottom:12px}
#customer-screen .calculator-help{margin:0}
#customer-screen .calculator-measurement-help summary{min-height:40px}
#customer-screen #quote-layout .calculator-minimum-notice{margin-bottom:4px;font-size:13px}
#customer-screen #quote-space-stage>.form-step>.step-help{font-size:13px;margin-bottom:12px}
@media(max-width:800px){#customer-screen .quote-form{padding:18px 16px}#customer-screen .calculator-hero-card{padding-top:0}#customer-screen .calculator-hero-card::before{top:-18px}#customer-screen .calculator-hero-card h2{font-size:24px}}

#customer-screen .painting-team-note{margin:0 0 10px;color:#31516a;font-size:14px;line-height:1.5}
#customer-screen .painting-team-note strong{font-weight:700;color:var(--navy)}

/* Keep project information and optional help outside the calculator entrance. */
#customer-screen .calculator-entry-support{margin:0 0 12px;padding:14px 16px;background:#f7fbfe;border:1px solid #d5e5f0;border-radius:12px}
#customer-screen .calculator-entry-support .service-area-precheck{margin:0;padding:0}
#customer-screen .calculator-entry-support .calculator-help{margin:10px 0 0;padding:0;border-top:1px solid #deebf3}
#customer-screen .calculator-entry-support .calculator-measurement-help summary{min-height:44px;font-size:14px;font-weight:600;color:var(--blue)}
#customer-screen .calculator-entry-support .calculator-measurement-help p{margin:0 0 4px;font-size:14px;line-height:1.5}
#customer-screen .calculator-project-note{margin:0 0 16px;padding:0 4px;color:#456079}
#customer-screen #quote-layout .calculator-project-note .calculator-minimum-notice{margin:0 0 4px;font-size:14px;line-height:1.45}
#customer-screen .calculator-project-note .painting-team-note{margin:0;font-size:14px;line-height:1.45}
#customer-screen .calculator-hero-card{margin-bottom:20px}

/* Compact service-area and optional quote support bar. */
#customer-screen .calculator-entry-support{padding:10px 14px;border-radius:14px;background:#edf7ff;margin-bottom:14px}
#customer-screen .calculator-entry-support .service-area-icon{width:27px;height:32px;flex:0 0 27px;background:transparent;border:0;box-shadow:none}
#customer-screen .calculator-entry-support .service-area-precheck{gap:8px}
#customer-screen .calculator-entry-support .service-area-precheck>span:last-child{font-size:14px;line-height:1.4}
#customer-screen .calculator-entry-support .calculator-help{margin:0 0 0 35px;border:0}
#customer-screen .calculator-entry-support .calculator-measurement-help summary{min-height:44px;font-weight:600}
#customer-screen .calculator-entry-support .calculator-help-link{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
#customer-screen .calculator-entry-support .calculator-area-help{padding-top:4px;font-size:13px}
#customer-screen .calculator-project-note{margin-bottom:14px}
#customer-screen .calculator-project-note .painting-team-note{margin-bottom:3px;font-size:15px}
#customer-screen #quote-layout .calculator-project-note .calculator-minimum-notice{font-size:13px;margin:0}

#customer-screen .calculator-entry-support .calculator-measurement-help summary{padding:8px 0}
#customer-screen .calculator-entry-support .calculator-help-description{display:block;margin:3px 0 0;font-size:13px;line-height:1.45;font-weight:400;color:#456079}

#customer-screen .calculator-entry-support .calculator-help-plain{margin-top:8px}
#customer-screen .calculator-entry-support .calculator-help-plain p{margin:0;font-size:13px;line-height:1.5}
#customer-screen .calculator-entry-support .calculator-help-plain #calculator-help-title{margin-bottom:3px;font-size:14px;color:var(--navy)}
#customer-screen .calculator-entry-support .calculator-help-plain .calculator-help-link{display:inline;min-height:0;font-size:13px;text-decoration:underline}

/* Separate service-area, help and crew notes before the calculator form. */
#customer-screen .calculator-entry-support{margin-bottom:16px;padding:12px 14px;border:1px solid #cfe2ee}
#customer-screen .calculator-help-separate{margin:0 0 14px;padding:12px 14px;border:1px solid #d5e5f0;border-radius:12px;background:#fff;box-shadow:none}
#customer-screen .calculator-help-separate #calculator-help-title{margin:0 0 4px;font-size:14px;line-height:1.4;color:var(--navy)}
#customer-screen .calculator-help-separate .calculator-help-description{margin:0;font-size:13px;line-height:1.5;color:#456079}
#customer-screen .calculator-help-separate .calculator-help-link{display:inline;min-height:0;font-size:13px;font-weight:600;color:var(--blue);text-decoration:underline}
#customer-screen .calculator-project-note{display:grid;gap:5px;margin:0 0 22px;padding:12px 14px;border:1px solid #d8e8f1;border-radius:12px;background:#fff}
#customer-screen .calculator-project-note .painting-team-note{margin:0;font-size:14px}
#customer-screen #quote-layout .calculator-project-note .calculator-minimum-notice{margin:0;font-size:13px}
#customer-screen .quote-main-column>.quote-form{margin-top:2px}

/* Brief opening sequence; no layout movement or looping text. */
@media (prefers-reduced-motion:no-preference){
  #customer-screen .hero-refresh .hero-message>.eyebrow{animation:bpEntrance .45s ease-out both}
  #customer-screen .hero-refresh .hero-message>h1{animation:none}
  #customer-screen .hero-refresh h1 .hero-offer{animation:bpOfferPop .75s cubic-bezier(.22,.76,.28,1) .05s both;transform-origin:left center}
  #customer-screen .hero-refresh h1 .hero-title-line{animation:bpEntrance .5s ease-out .15s both}
  #customer-screen .hero-refresh .hero-message>.hero-copy{animation:bpEntrance .5s ease-out .22s both}
  #customer-screen .hero-refresh .hero-message>.hero-actions{animation:bpEntrance .5s ease-out .28s both}
  #customer-screen .hero-refresh .hero-message>.hero-booking-note{animation:bpEntrance .5s ease-out .34s both}
  #customer-screen .hero-refresh .hero-steps{animation:bpEntrance .55s ease-out .38s both}
  #customer-screen .hero-refresh .hero-fishing{animation:bpEntrance .55s ease-out .45s both}
  #customer-screen .hero-refresh .hero-fish-symbol{animation:bpFishingHello .9s ease-in-out .8s 2}
  #customer-screen .hero-refresh .hero-steps li{animation:bpStepPop .5s cubic-bezier(.22,.76,.28,1) .5s both}
  #customer-screen .hero-refresh .hero-steps li:nth-child(2){animation-delay:.65s}
  #customer-screen .hero-refresh .hero-steps li:nth-child(3){animation-delay:.8s}
  #customer-screen .hero-refresh .hero-actions .button-blue{position:relative;overflow:hidden;isolation:isolate;animation:bpButtonHello .7s ease-in-out .9s 2}
  #customer-screen .hero-refresh .hero-actions .button-blue::after{content:"";position:absolute;inset:-50% auto -50% -50%;width:25%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transform:skewX(-20deg);pointer-events:none;animation:bpButtonShine .85s ease-out 1.1s 2 both}
  #customer-screen .hero-refresh .hero-actions .button-blue i{animation:bpArrowHello .6s ease-in-out 1s 3}
}
@keyframes bpEntrance{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes bpOfferPop{0%{opacity:0;transform:translateY(20px) scale(.8) rotate(-4deg)}58%{opacity:1;transform:translateY(-4px) scale(1.05) rotate(1deg)}78%{transform:translateY(1px) scale(.985) rotate(-2deg)}100%{opacity:1;transform:translateY(0) scale(1) rotate(-1deg)}}
@keyframes bpFishingHello{0%,100%{transform:rotate(0)}35%{transform:rotate(-9deg)}70%{transform:rotate(5deg)}}
@keyframes bpStepPop{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes bpButtonHello{0%,100%{box-shadow:0 10px 20px rgba(8,120,237,.22)}50%{box-shadow:0 12px 28px rgba(8,120,237,.35),0 0 0 5px rgba(8,120,237,.1)}}
@keyframes bpButtonShine{0%{left:-50%;opacity:0}15%{opacity:1}100%{left:125%;opacity:0}}
@keyframes bpArrowHello{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}

/* Slightly tighten the transition from reviews to the service-area bar. */
#customer-screen .reviews{padding-bottom:28px}
#customer-screen #quote{padding-top:26px}
@media(max-width:800px){
  #customer-screen .reviews{padding-bottom:20px}
  #customer-screen #quote{padding-top:18px}
}
