/* Centered animated hero, neon borders, ambient light and scroll reveal. */
html{scroll-padding-bottom:130px}
.hero{min-height:800px;height:min(980px,100svh)}
.hero-model{inset:0;width:100%;height:100%;mask-image:none;opacity:1;filter:none}
.hero-model img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;filter:none;animation:none}
.hero-shade{background:linear-gradient(180deg,#12051566 0%,transparent 29%,#13081800 42%,#17081799 76%,#0d0711 100%)}
.hero-content{inset:auto 0 135px;padding-top:0;text-align:center}
.hero-brand{margin-inline:auto;font-size:clamp(4rem,8.7vw,8.8rem);filter:drop-shadow(0 0 28px #f736b94d)}
.hero-category,.hero-manager{padding-left:0;margin-inline:auto;text-align:center}
.hero-foot{bottom:35px;display:grid;grid-template-columns:48px minmax(0,1fr) 48px;gap:16px}
.hero-foot .motion-toggle{grid-column:3;grid-row:1;justify-self:end;margin:0}
.hero-inquiry{grid-column:2;grid-row:1;text-align:center;justify-self:center;margin:0;color:#ffe7f7;font-size:1.1rem;font-weight:600;line-height:1.65;word-break:keep-all;text-shadow:0 0 14px #f038a65c}
.section-top>p.pricing-promotion{text-align:right;color:#ffabe1;font-weight:600;line-height:1.9}
.hero .motion-toggle{border:1px solid #ff81d980;box-shadow:0 0 16px #ff42bc2e;background:#1d0923b3}
.ambient-sparkles{position:fixed;inset:0;z-index:3;pointer-events:none;overflow:hidden}
.ambient-sparkles i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#ffe8fa;box-shadow:0 0 7px 2px #ff6ed386,0 0 18px #ff25ad73;opacity:.12;animation:ambientTwinkle var(--duration) ease-in-out var(--offset) infinite;will-change:opacity,transform}
@keyframes ambientTwinkle{0%,100%{opacity:.1;transform:translateY(5px) scale(.7)}45%,60%{opacity:.75;transform:translateY(-5px) scale(1.18)}}
.model-photo,.space-photo,.calculator,.contact-card,.map-frame,.pickup-note,.service-grid{border-color:#fa60c7a8;box-shadow:0 0 0 1px #fa60c717,0 0 15px #fc32bb26,0 0 32px #c326dd17,inset 0 0 10px #ff50bd0a}
.model-photo:hover,.space-photo:hover,.contact-card:hover{border-color:#ffa0e5;box-shadow:0 0 0 1px #ff83d751,0 0 22px #f930b854,0 0 48px #c22af229,inset 0 0 12px #ff50bd12}
.outline,.header-book,.primary{border-color:#fc81d1a6;box-shadow:0 0 10px #f938b12b,inset 0 0 9px #ff71ce0a}
.outline:hover,.primary:hover,.header-book:hover{border-color:#ffb1e8;box-shadow:0 0 20px #ff45b94d,inset 0 0 12px #ff8fd11a}
.stepper button,.time-option span{border-color:#e963bf85;box-shadow:0 0 7px #ea31ad14}
.time-option input:checked+span{border-color:#ff9ddc;box-shadow:0 0 13px #f432b847,inset 0 0 7px #ffc4eb17}
.header,.gallery-section,.contact-section,.about,.footer{border-color:#f36dc87d}
.calc-summary,.service+.service,.calc-heading,.total,.space-heading,.footer-bottom{border-color:#db58b365}
.quote-dialog,.notice-dialog{border-color:#ff7bd3b3;box-shadow:0 0 0 1px #ff6ace17,0 0 35px #fa3acb4d,0 20px 80px #0009}
.dialog-close,.lightbox-prev,.lightbox-next{border-color:#ff78d194;box-shadow:0 0 14px #ed43bd2b}
.reveal-item{opacity:0;translate:0 25px;filter:blur(3px);transition:opacity .75s ease,translate .75s cubic-bezier(.2,.7,.2,1),filter .75s ease,box-shadow .3s,transform .35s;transition-delay:var(--reveal-delay,0ms)}
.reveal-item.is-revealed{opacity:1;translate:0 0;filter:none}
.contact-dock{position:fixed;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));z-index:40;left:50%;right:auto;bottom:calc(20px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(820px,calc(100% - 48px));padding:6px;border:1px solid #ff83d2ad;border-radius:16px;background:linear-gradient(130deg,#200c27f0,#160c20f5);backdrop-filter:blur(22px);box-shadow:0 0 0 1px #ff8de817,0 0 24px #f62cbb47,0 16px 50px #0009;gap:5px}
.contact-dock a{display:flex;flex-direction:row;gap:10px;align-items:center;justify-content:center;min-height:58px;padding:10px 8px;border:0;border-radius:10px;background:transparent;color:#ffe9f8;font-size:.9rem;font-weight:600;line-height:1.45;transition:background .2s,box-shadow .2s}
.contact-dock a:first-child{color:#ffb0e5}.contact-dock a:nth-child(2){background:transparent;color:#ffe9f8}
.contact-dock a:hover{background:#6b22543b;box-shadow:inset 0 0 0 1px #ee74c359}
.contact-dock a:last-child{background:var(--pink-gradient);color:white;box-shadow:0 0 17px #ee299831}
.contact-dock a>.brand-logo,.contact-dock a>.ui-icon{width:25px;height:25px}
.footer{padding-bottom:145px}.toast{bottom:calc(112px + env(safe-area-inset-bottom))}
.motion-paused .reveal-item{opacity:1;translate:none;filter:none}
.counter-section{padding-block:38px 10px}
.counter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.counter-card{padding:28px 24px;text-align:center;border:1px solid #fa60c7a8;border-radius:16px;background:linear-gradient(145deg,#28102a,#140b1d);box-shadow:0 0 0 1px #fa60c717,0 0 20px #fc32bb26,inset 0 0 16px #ff50bd0a}
.counter-label{margin:0 0 10px;color:#f4dbed;font-size:1rem;font-weight:600}
.counter-total{display:flex;justify-content:center;align-items:baseline;gap:8px;margin:0;line-height:1.1}
.counter-total strong{font-size:clamp(2rem,4.5vw,3.9rem);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.035em;color:#ff96dd;text-shadow:0 0 24px #f343b952}
.counter-total>span{color:#d5b7cd;font-size:1rem}
.counter-total strong.counter-updated{animation:counterShine .85s ease-out}
@keyframes counterShine{0%{color:#fff0fb;text-shadow:0 0 26px #ff86daaa}100%{color:#ff96dd;text-shadow:0 0 24px #f343b952}}
.motion-paused .counter-total strong{animation:none}
@media(max-width:600px){.counter-grid{gap:12px}.counter-card{padding:23px 12px;border-radius:12px}.counter-label{font-size:.875rem}.counter-total{gap:5px}.counter-total>span{font-size:.875rem}.counter-section{padding-top:24px}}
@media(max-width:1100px){.hero-content{padding-top:0}.hero-model{width:100%}}
@media(max-width:800px){.hero{min-height:780px;height:96svh;max-height:980px}.hero-model img{object-position:51% 0%}.hero-shade{background:linear-gradient(180deg,#12051555 0%,transparent 25%,#17081708 41%,#170817b8 77%,#0d0711 100%)}.hero-content{inset:auto 0 155px;text-align:center;padding-top:0}.hero-brand{font-size:clamp(2.8rem,12.7vw,6rem)}.hero-category{font-size:.8rem;letter-spacing:.24em;margin-top:17px}.hero-manager{font-size:.95rem;margin-top:24px}.hero-foot{bottom:108px}.contact-dock{width:calc(100% - 20px);bottom:calc(10px + env(safe-area-inset-bottom));padding:4px;gap:2px;border-radius:13px}.contact-dock a{flex-direction:column;gap:5px;min-height:61px;font-size:.68rem;padding:6px 2px;border-radius:9px;line-height:1.3}.contact-dock a>.brand-logo,.contact-dock a>.ui-icon{width:23px;height:23px}.footer{padding-bottom:145px}.toast{bottom:calc(99px + env(safe-area-inset-bottom))}.ambient-sparkles i:nth-child(3n){display:none}}
@media(max-width:390px){.hero{min-height:750px}.hero-content{padding-top:0}.hero-category{letter-spacing:.18em}.contact-dock a{font-size:.65rem}}
@media(max-width:800px){.hero-content{bottom:185px}.hero-foot{grid-template-columns:40px minmax(0,1fr) 40px;gap:8px}.hero-inquiry{font-size:.875rem;line-height:1.55}.section-top>p.pricing-promotion{text-align:left}.section-top>p.pricing-promotion br{display:block}}
@media(prefers-reduced-motion:reduce){.ambient-sparkles{display:none}.reveal-item{opacity:1;translate:none;filter:none;transition:none}.counter-total strong{animation:none}}

.footer-guide{color:#f4add9;font-size:.875rem;text-underline-offset:5px}.footer-guide:hover{text-decoration:underline}
