/* Illustrated rows retain the native price accordion and configured texts. */
body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-table { display:grid; gap:12px; background:transparent!important; border:0!important; box-shadow:none!important; overflow:visible; }
body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-row { display:grid; grid-template-columns:150px minmax(0,1fr) 270px!important; gap:18px!important; padding:0 18px 0 0!important; border:1px solid #9b713b55!important; border-radius:14px; background:linear-gradient(115deg,#12202a,#0a1720)!important; overflow:hidden; min-height:120px!important; align-items:center; }
.price-guide-illustrated .price-photo { height:100%; min-height:120px; width:100%; overflow:hidden; }
.price-guide-illustrated .price-photo img { display:block; width:100%; height:100%; min-height:120px; object-fit:cover; max-height:200px; }
.price-guide-illustrated .price-photo-placeholder { display:grid; place-items:center; background:linear-gradient(135deg,#263f4b,#102330); font-size:36px; }
body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-service-cell { grid-template-columns:46px minmax(0,1fr)!important; gap:12px!important; padding:14px 0!important; min-width:0; }
body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-icon { width:44px!important; height:48px!important; border-radius:12px!important; }
body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-side { grid-template-columns:minmax(85px,1fr) auto!important; padding-left:18px!important; gap:12px!important; }
body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-name { font-size:18px!important; line-height:1.3!important; }
@media(max-width:1100px) { body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-row { grid-template-columns:120px minmax(0,1fr)!important; gap:0 16px!important; padding:0 16px 0 0!important; } .price-guide-illustrated .price-photo { grid-row:1/3; } body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-side { grid-column:2; border-left:0!important; padding:0 0 14px!important; min-height:0!important; } }
@media(max-width:600px) { body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-row { grid-template-columns:90px minmax(0,1fr)!important; gap:0 12px!important; padding-right:12px!important; } body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-service-cell { grid-template-columns:1fr!important; padding:14px 0 8px!important; } body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-icon { display:none!important; } body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-name { font-size:15px!important; } body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-tags { display:none!important; } body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-side { grid-template-columns:1fr!important; gap:8px!important; } body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail { width:100%; justify-content:center; } .price-guide-illustrated .price-photo img { max-height:none; } }
/* Mobile cards use the full width for readable content. */
@media(max-width:600px) {
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-row { grid-template-columns:minmax(0,1fr)!important; gap:0!important; padding:0!important; }
 .price-guide-illustrated .price-photo { grid-column:1!important; grid-row:auto!important; height:135px; min-height:0; }
 .price-guide-illustrated .price-photo img { height:135px; min-height:0; max-height:135px; object-position:center; }
 .price-guide-illustrated .price-photo-placeholder { height:100px; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-service-cell { grid-column:1!important; padding:16px 16px 12px!important; gap:0!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-name { font-size:17px!important; line-height:1.35!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-copy small { font-size:13px!important; line-height:1.6!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-side { grid-column:1!important; grid-template-columns:1fr!important; margin:0 16px!important; padding:12px 0 16px!important; gap:12px!important; border-top:1px solid #ffffff18!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-amount { display:flex!important; flex-wrap:wrap; align-items:baseline; gap:5px 9px; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-amount > span:not(:where(.home-visual-strong,.home-visual-b)):last-child { flex-basis:100%; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-value { font-size:26px!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail { min-height:44px; }
}
/* Compact mobile price cards. */
@media(max-width:600px) {
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-row { grid-template-columns:64px minmax(0,1fr)!important; gap:10px 12px!important; padding:12px!important; min-height:0!important; align-items:start; }
 .price-guide-illustrated .price-photo { grid-column:1!important; grid-row:1!important; width:64px; height:64px; min-height:0; border-radius:9px; }
 .price-guide-illustrated .price-photo img { width:64px; height:64px; min-height:0; max-height:64px; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-service-cell { grid-column:2!important; grid-row:1!important; padding:0!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-name { font-size:14px!important; line-height:1.35!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-copy small { font-size:11px!important; line-height:1.45!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-copy em { font-size:10px!important; padding:4px 6px!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-side { grid-column:1/-1!important; grid-row:2!important; grid-template-columns:minmax(0,1fr) auto!important; margin:0!important; padding:9px 0 0!important; gap:10px!important; min-width:0; align-items:center; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-value { font-size:22px!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-amount > span:not(:where(.home-visual-strong,.home-visual-b)):last-child { display:none!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail { width:auto!important; min-height:36px; padding:8px 12px!important; font-size:11px!important; }
}
/* Clear price hierarchy within compact mobile cards. */
@media(max-width:600px) {
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-amount { display:grid!important; grid-template-columns:auto minmax(0,1fr); gap:3px 7px; align-items:baseline; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-amount > small { color:#ffb52b!important; font-size:9px!important; font-weight:700!important; letter-spacing:.7px; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-value { color:#fff!important; font-size:24px!important; font-weight:800!important; line-height:1.1!important; letter-spacing:-.5px; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-amount > span:not(:where(.home-visual-strong,.home-visual-b)):last-child { display:block!important; grid-column:1/-1; color:#96aab9!important; font-size:9px!important; font-weight:500!important; line-height:1.3!important; letter-spacing:.3px; text-transform:none!important; }
}
/* Refined action button for compact mobile price cards. */
@media(max-width:600px) {
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail { display:inline-flex!important; align-items:center; justify-content:center; gap:9px; width:auto!important; min-height:40px; padding:9px 13px!important; border:1px solid #ffbf5b!important; border-radius:11px!important; background:linear-gradient(135deg,#ffbe38,#ff8b16)!important; color:#13202b!important; font-size:12px!important; font-weight:750!important; line-height:1.2; box-shadow:0 4px 12px #ff8b161c!important; transition:background .18s ease,transform .18s ease; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail > span:not(:where(.home-visual-strong,.home-visual-b)) { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; border-radius:50%; background:#ffffff35; font-size:19px; line-height:1; color:inherit; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail:active { transform:scale(.97); }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail:focus-visible { outline:2px solid #fff; outline-offset:3px; }
}
@media(prefers-reduced-motion:reduce) { .price-guide-illustrated .price-detail { transition:none!important; } }
/* Understated mobile detail action. */
@media(max-width:600px) {
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail { background:#152b38!important; border:1px solid #e8a544!important; color:#ffd18a!important; border-radius:9px!important; box-shadow:none!important; font-size:12px!important; font-weight:650!important; min-height:40px; padding:9px 12px!important; gap:9px; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail > span:not(:where(.home-visual-strong,.home-visual-b)) { background:transparent!important; border-radius:0!important; width:14px; height:18px; font-size:21px; color:#ffb441!important; }
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail:hover { background:#1c3544!important; box-shadow:none!important; transform:none; }
}
@media(max-width:600px) {
 body:not(.theme-pro-app) .price-guide.wrap.price-guide-illustrated .price-detail { min-width:132px; padding:9px 16px!important; justify-content:space-between!important; gap:14px; }
}
