/* Shop-style service cards for the public package menu. */
.package-vehicle-menu { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:2rem 0; }
.package-vehicle-menu a { display:flex; align-items:center; justify-content:center; min-height:56px; padding:14px; border:1px solid #454951; background:#181b20; color:#fff; font-weight:700; text-decoration:none; text-align:center; }
.package-vehicle-menu a:hover,.package-vehicle-menu a:focus-visible { border-color:#ff3838; background:#2a1518; }
.packages-body .package-service-group,.packages-body .package-shop-card { scroll-margin-top:110px; }
.packages-body .package-shop-visual { aspect-ratio:16/9; }
@media(max-width:650px) { .package-vehicle-menu { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.package-vehicle-menu a { padding:10px; font-size:.8rem; } }
.packages-body .package-catalog { background:radial-gradient(circle at 87% 8%,rgba(239,21,21,.18),transparent 25rem),#0b0b0b; }
.packages-body .package-service-group { margin-top:3.5rem; }
.packages-body .package-service-group+.package-service-group { margin-top:5rem; padding-top:3.2rem; border-top:1px solid rgba(255,255,255,.12); }
.packages-body .package-service-group>h3 { display:flex; align-items:center; gap:.8rem; margin:0 0 1.25rem; color:#fff; font-size:clamp(2.25rem,3.7vw,3.75rem); }
.packages-body .package-service-group>h3>span { color:#ff8d86; font:800 .57rem var(--font-body); letter-spacing:.14em; text-transform:uppercase; }
.packages-body .package-service-group>h3>small { margin-left:auto; padding:.45rem .6rem; border:1px solid rgba(255,255,255,.2); color:#bababa; font:800 .52rem var(--font-body); letter-spacing:.1em; text-transform:uppercase; }
.packages-body .package-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.3rem; border:0; background:transparent; }
.packages-body .package-detail-card.package-shop-card { min-height:0; padding:0; overflow:hidden; border:1px solid rgba(255,255,255,.18); background:#111; box-shadow:0 15px 35px rgba(0,0,0,.18); transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease; }
.packages-body .package-detail-card.package-shop-card:hover { border-color:#ff6259; background:#111; box-shadow:0 24px 52px rgba(0,0,0,.42); transform:translateY(-6px); }
.package-shop-visual { position:relative; aspect-ratio:1.22/1; overflow:hidden; background:linear-gradient(145deg,#2a0d0c,#0e0e0e); }
.package-shop-visual::before { content:""; position:absolute; z-index:0; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.82)),var(--package-image) center/cover; filter:grayscale(.18) contrast(1.08) saturate(1.08); transform:scale(1.015); transition:transform .65s ease,filter .35s ease; }
.package-shop-visual::after { content:""; position:absolute; z-index:1; inset:0; background:linear-gradient(135deg,rgba(239,21,21,.22),transparent 35%,rgba(0,0,0,.4)); pointer-events:none; }
.package-detail-card.package-shop-card:hover .package-shop-visual::before { filter:grayscale(0) contrast(1.04) saturate(1.14); transform:scale(1.08); }
.service-standard .package-shop-visual { --package-image:url('/package-images/standard-wash.webp?v=1'); }
.service-advanced .package-shop-visual { --package-image:url('/package-images/advanced-car-wash.webp?v=1'); }
.service-claybar .package-shop-visual { --package-image:url('/package-images/clay-bar-treatment.webp?v=1'); }
.service-full .package-shop-visual { --package-image:url('/package-images/full-package.webp?v=1'); }
.service-luxury .package-shop-visual { --package-image:url('/package-images/luxury-detail.webp?v=1'); }
.service-machinepolish .package-shop-visual { --package-image:url('/package-images/machine-polish.webp?v=1'); }
.service-minibus-exterior .package-shop-visual { --package-image:url('/package-images/minibus-exterior.webp?v=1'); }
.service-minibus-cabin .package-shop-visual { --package-image:url('/package-images/minibus-cabin.webp?v=1'); }
.service-minibus-interior .package-shop-visual { --package-image:url('/package-images/minibus-full-interior.webp?v=1'); }
.service-minibus-seats .package-shop-visual { --package-image:url('/package-images/minibus-seats.webp?v=1'); }
.service-minibus-luxury .package-shop-visual { --package-image:url('/package-images/minibus-luxury.webp?v=1'); }
.service-standard .package-shop-visual::before { background-position:48% 57%; }.service-advanced .package-shop-visual::before { background-position:50% 55%; }.service-claybar .package-shop-visual::before { background-position:55% 55%; }.service-full .package-shop-visual::before { background-position:50% 55%; }.service-luxury .package-shop-visual::before { background-position:58% 52%; }.service-machinepolish .package-shop-visual::before { background-position:50% 55%; }.service-minibus-exterior .package-shop-visual::before { background-position:50% 53%; }.service-minibus-cabin .package-shop-visual::before { background-position:50% 50%; }.service-minibus-interior .package-shop-visual::before { background-position:52% 53%; }.service-minibus-seats .package-shop-visual::before { background-position:52% 53%; }.service-minibus-luxury .package-shop-visual::before { background-position:50% 53%; }
.package-shop-visual .package-card-head { position:absolute; z-index:2; top:1rem; right:1rem; left:1rem; min-height:0; }
.package-shop-visual .package-number { padding:.42rem .55rem; border:1px solid rgba(255,255,255,.5); color:white; background:rgba(10,10,10,.58); backdrop-filter:blur(8px); font-size:.5rem; letter-spacing:.1em; }
.package-shop-visual .package-icon { width:32px; height:32px; border-color:rgba(255,132,124,.75); color:white; background:rgba(130,16,12,.56); box-shadow:none; }
.package-visual-number { position:absolute; z-index:2; right:1rem; bottom:.75rem; color:rgba(255,255,255,.82); font:700 3.1rem/.75 var(--font-display); letter-spacing:-.04em; text-shadow:0 2px 14px #000; }
.package-shop-content { display:flex; flex-direction:column; min-height:320px; padding:1.15rem 1.2rem 1.25rem; }
.package-shop-type { margin:0 0 .5rem; color:#ff9b94; font-size:.52rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.packages-body .package-detail-card h3 { min-height:0; margin:0 0 .65rem; color:#fff; font-size:clamp(1.8rem,2.4vw,2.55rem); line-height:.87; }
.packages-body .package-description { min-height:2.9em; color:#bcbcbc; font:600 .83rem/1.55 var(--font-body); letter-spacing:0; text-transform:none; }
.packages-body .package-card-pricing { display:flex; align-items:flex-end; gap:.7rem; margin:1rem 0 .9rem; }
.packages-body .package-card-pricing strong { color:#fff; font:800 clamp(2.45rem,3.2vw,3.2rem)/.78 var(--font-display); }
.packages-body .package-card-pricing span { padding-bottom:.12rem; color:#9c9c9c; font-size:.56rem; line-height:1.4; }
.packages-body .package-details { margin:0 0 .95rem; border-top:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); }
.packages-body .package-details summary { min-height:39px; font-size:.56rem; }
.packages-body .package-includes { padding:0 0 .9rem; font-size:.62rem; line-height:1.65; }
.package-shop-actions { margin-top:auto; }
.packages-body .package-shop-actions>.button { width:100%; min-height:43px; padding:.62rem .75rem; font-size:.55rem; }
.packages-body .package-detail-card.featured { border-color:#ef3831; background:#131010; }
.packages-body .package-detail-card.featured .package-shop-visual::after { background:linear-gradient(135deg,rgba(239,21,21,.42),transparent 44%,rgba(0,0,0,.42)); }
@media (max-width:1100px) { .packages-body .package-list { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:650px) { .packages-body .package-list { grid-template-columns:1fr; gap:1rem; }.packages-body .package-service-group>h3 { align-items:flex-start; flex-wrap:wrap; }.packages-body .package-service-group>h3>small { margin-left:0; }.package-shop-visual { aspect-ratio:1.45/1; }.package-shop-content { min-height:0; }.packages-body .package-description { min-height:0; } }
