/* Project previews are cropped at the source viewport edge, not covered by fake UI. */
.preview-crop{display:block;width:100%;aspect-ratio:1270/714;overflow:hidden;border-radius:8px 8px 0 0;isolation:isolate}
.hero-viewport>img,.preview-crop>img{width:102%;max-width:none;height:100%;object-fit:fill;object-position:left top;border-radius:0;box-shadow:none}
.project-image:hover .preview-crop>img{transform:none}
.hero-viewport,.project-window{scrollbar-width:none}
.hero-viewport::-webkit-scrollbar,.project-window::-webkit-scrollbar{display:none}
/* Keep preview boundaries on the page axes: rotation aliases at small sizes. */
.project-window,.hero-viewport,.preview-crop{
 -webkit-mask-image:none;
 mask-image:none;
 outline:none;
}
.project-window,.hero-art:hover .project-window{transform:none;transition:none}
.hero-viewport>img,.preview-crop>img{backface-visibility:hidden;image-rendering:auto}
/* Quiet calculation surfaces let the selected work and the total carry the accent. */
.extra-card{background:var(--white);border-radius:12px}
.extra-card:has(input:checked){box-shadow:none;border-color:var(--accent-ink)}
.extra-card:has(input:checked) .ui-icon{transform:none}
.extra-card .check-option{padding:20px;min-height:136px}
.extra-card .service-help{margin:0 20px;padding:16px 0}
.extra-heading{font-weight:600;line-height:1.4;gap:12px}
.extra-heading .ui-icon{width:24px;height:24px;flex:0 0 24px}
.ui-icon{stroke:none;fill:currentColor}
.quote-saving{background:#21172e;border-color:#745a91;padding:20px}
.saving-part+.saving-part{border-top:1px solid #735d8459;padding-top:16px;margin-top:16px}
.quote .saving-part>strong{display:block;font-family:Plex,sans-serif;font-size:24px;line-height:1.2;letter-spacing:0;color:#f1dcff;margin:0 0 8px}
.quote .saving-part p{font-size:13px;line-height:1.6;color:#d8cbe5}
.quote-breakdown li b,.quote-summary strong,.launch-total strong{font-variant-numeric:tabular-nums}
.quote-benefits li{border:0;background:#ffffff0c;border-radius:4px;padding:6px 8px}
.extra-group h4{font-family:Plex,sans-serif;letter-spacing:0}
.select-trigger{min-height:52px}
.select-list{transform-origin:top center;animation:none}
.service-dialog{transform-origin:50% 85%}
.section-top>.eyebrow{display:none}
.section-top{grid-template-columns:minmax(0,1fr)}
.section-top>div{max-width:900px}
.section-top p{max-width:64ch}
.hero-top{margin-bottom:24px}
.hero-top .status-dot{display:none}
.hero-top .eyebrow{font-family:Plex,sans-serif;font-size:13px;text-transform:none;letter-spacing:0}
.hero-note{display:none}
.orbit-label{display:none}
.art-caption{padding-right:0}
.hero-art{animation:none;transform:none}
.hero-art:hover{transform:none}
.cyber-haze{opacity:.12}
.cyber-grid{opacity:.2}
.float-code{opacity:.1}
.orbit-field{opacity:.12}
.cursor-aura:before{opacity:.5}
.price-card,.quote,.brief-panel{backdrop-filter:none}
.button{position:relative;isolation:isolate;overflow:hidden;transform-origin:center}
.button-ripple{position:absolute;pointer-events:none;border-radius:50%;background:currentColor;opacity:0;translate:-50% -50%;animation:button-wave .5s ease-out forwards;z-index:-1}
@keyframes button-wave{from{transform:scale(0);opacity:.2}to{transform:scale(1);opacity:0}}
@media(max-width:600px){.extra-card .check-option{padding:16px}.extra-card .service-help{margin-inline:16px}.quote-saving{padding:16px}.quote .saving-part>strong{font-size:22px}.art-caption>span:last-child{display:inline}.section-top{gap:0}.hero-top{margin-bottom:16px}}
@media(prefers-reduced-motion:reduce){.button-ripple{animation:none;display:none}}
