/* Clear choices, an explicit amount due, and calmer type in the working part of the page. */
.catalog-choice{display:flex;align-items:center;justify-content:space-between;min-height:44px;margin:18px 20px 0;padding:10px 14px;border:1px solid var(--control);font-size:13px;font-weight:600;color:var(--accent)}
.svc input:checked+.box .catalog-choice{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
@media(hover:hover){.svc:hover .catalog-choice{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}}
.summary-due{margin-bottom:22px;padding-bottom:21px;border-bottom:1px solid #779380}
.summary-due>span{display:block;font-size:12px;color:#d7e1d6;margin-bottom:10px}
.summary-due>strong{font-size:42px;line-height:1.12;font-weight:550;letter-spacing:-.035em;white-space:nowrap;display:block;margin-bottom:22px}
.summary-due p{display:flex;justify-content:space-between;align-items:baseline;gap:15px;font-size:12px;margin-top:9px}
.summary-due b{font-weight:550;white-space:nowrap}
.inline-due{grid-column:1/-1;padding-top:15px;border-top:1px solid var(--line)}
.inline-due strong{font-size:31px}
.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-3px 0 13px}
.calendar-nav>span{font-size:11px;color:var(--muted)}
.calendar-nav>div{display:flex;gap:12px}
.calendar-nav button{font:600 12px Manrope,sans-serif;min-height:44px;padding:8px 4px;color:var(--accent);border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer}
.calendar-nav button:disabled{opacity:.4;cursor:default}
.done-total-row dd{font-size:26px;font-weight:600;letter-spacing:-.03em}
.done-total-row{align-items:center}
.done-top h2{font-size:clamp(38px,4.6vw,66px);line-height:1.08;letter-spacing:-.04em;word-spacing:.07em}
.section-heading h2,.questions-heading h2,.inquiry-intro h2,.brand-heading h2,.help-intro h2{letter-spacing:-.04em;word-spacing:.065em}
.inquiry-panel .contact-input[aria-invalid=true]{border:1px solid #ffdeba}
.inquiry-panel .contact-input[aria-invalid=true]:focus-visible{outline:2px solid #ffdeba;outline-offset:3px}
/* Directional light changes with the silhouette, keeping the tools themselves sharp. */
.tool-stage:before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(122deg,transparent 43%,#ffffff35 43.2%,#ffffff0d 65%,transparent 65.2%);opacity:.6}
.scene-floor{right:11%;bottom:14%;width:39%;height:5%;background:radial-gradient(ellipse,#3d563b35 0%,#506b3d13 43%,transparent 72%);transform:skewX(-20deg);transition:all .65s ease}
.tool-stage[data-scene="1"] .scene-halo{background:radial-gradient(ellipse at 40% 70%,#e0e99cbb,transparent 64%)}
.tool-stage[data-scene="1"] .scene-floor{right:13%;width:32%;height:4%;bottom:15%}
.tool-stage[data-scene="2"] .scene-halo{width:37%;right:9%;background:radial-gradient(ellipse at 66% 43%,#e2ec9ce0,transparent 64%)}
.tool-stage[data-scene="2"] .scene-floor{width:26%;right:16%;height:4%}
.tool-stage[data-scene="3"]:before{background:linear-gradient(147deg,transparent 51%,#e5edb25c 51.2%,#faffdf88 66%,transparent 66.2%);opacity:.9}
.tool-stage[data-scene="3"] .scene-halo{opacity:.55}
.tool-stage[data-scene="3"] .scene-floor{bottom:18%;right:6%;width:46%;height:6%;opacity:.5}
.tool-stage[data-scene="4"] .scene-halo{background:radial-gradient(ellipse at 55% 65%,#e8e89acc,transparent 66%)}
@media(prefers-reduced-motion:reduce){.scene-floor{transition:none}}
@media(max-width:700px){
 .hero-copy h1,.hero-copy h2{font-size:clamp(53px,16vw,88px);line-height:1.02;letter-spacing:-.052em;word-spacing:.09em}
 .section-heading h2,.questions h2,.brand-heading h2,.help-section h2{font-size:clamp(34px,10.4vw,43px);line-height:1.1;letter-spacing:-.035em;word-spacing:.06em}
 .booking>.section-heading h2{font-size:clamp(32px,9.8vw,41px)}
 .inquiry-intro h2{font-size:clamp(36px,11vw,46px);letter-spacing:-.04em}
 .done-top h2{font-size:clamp(32px,10vw,40px);letter-spacing:-.035em}
 .bundle-copy h3{letter-spacing:-.04em;word-spacing:.06em}
 .step-h{letter-spacing:-.025em;word-spacing:.06em}
 .catalog-grid{grid-template-columns:1fr;gap:17px}
 .svc .box{display:grid;grid-template-columns:43% minmax(0,1fr);column-gap:15px;row-gap:8px;align-items:start;padding:14px 0;border-top:1px solid var(--line);border-radius:0}
 .svc .box>span:not(.product-image){grid-column:2;margin:0 10px 0 0}
 .svc .product-image{grid-column:1;grid-row:1/6;height:100%;min-height:218px;margin:0}
 .svc .product-image img{padding:12px!important}
 .svc .product-category{font-size:10px;line-height:1.4;padding-top:5px}
 .svc .svc-name{font-size:19px;letter-spacing:-.025em;line-height:1.25;min-height:0}
 .svc .svc-meta{font-size:12px;line-height:1.65}
 .svc .svc-price{font-size:11px;line-height:1.5}
 .svc .catalog-choice{font-size:12px;padding:10px 11px;min-height:44px;align-self:end}
 .svc input:checked+.box:after{top:24px;left:10px;right:auto}
 .summary-due>strong{font-size:39px}
 .summary-due p{font-size:13px}
 .rental-summary h3{letter-spacing:-.03em;word-spacing:.05em;line-height:1.2}
 .inline-quote strong{letter-spacing:-.025em}
 .inline-quote .inline-due strong{font-size:31px}
 .done-total-row dd{font-size:22px}
 .tool-stage:before{background:linear-gradient(130deg,transparent 44%,#ffffff33 44.2%,#ffffff12 76%,transparent 76.2%)}
 .scene-floor,.tool-stage[data-scene="1"] .scene-floor,.tool-stage[data-scene="2"] .scene-floor{right:17%;width:65%;bottom:24%;height:3.4%}
 .tool-stage[data-scene="2"] .scene-halo{width:72%;right:7%;top:31%}
 .tool-stage[data-scene="3"] .scene-floor{right:9%;width:79%;bottom:27%;height:4%}
}
