/* Store configuration, cart, checkout and public content inside the shared site shell. */

body.theme-ligahosting .lh-page :is(.contact-form-panel, .contact-channel-panel, .contact-ticket-panel,
    .about-profile, .about-location, .news-featured, .news-card) {
    background: linear-gradient(120deg, #1c223b, #191d34);
    border-color: var(--border);
    box-shadow: none;
}
body.theme-ligahosting .lh-page :is(.contact-form-panel, .contact-channel-panel, .contact-ticket-panel,
    .about-profile, .about-location, .news-featured, .news-card)::before { content: none; }

/* Catalogue and configuration: equal controls and clear selected states. */
body.theme-ligahosting .lh-page .store-category-switcher { width: fit-content; background: var(--surface); padding: .5rem; border-color: var(--border); }
body.theme-ligahosting .lh-page .store-category-option { padding: .9rem 1.1rem; background: transparent; }
body.theme-ligahosting .lh-page .store-category-option.is-active { background: var(--purple-soft); border-color: var(--border-strong); }
body.theme-ligahosting .lh-page .store-category-icon { color: var(--purple-4); background: var(--purple-soft); }
body.theme-ligahosting .lh-page .store-category-copy strong { font-weight: 600; }
body.theme-ligahosting .lh-page .store-category-copy small { font-size: .75rem; }
body.theme-ligahosting .lh-page :is(.store-infra-strip, .flash-sale-overview) { background: transparent; border: 0; border-radius: 0; box-shadow: none; }
body.theme-ligahosting .lh-page .product-card { background: var(--surface); }
body.theme-ligahosting .lh-page .product-card.is-performance-plan { background: #2b2150; border-color: rgba(196,181,253,.35); }
body.theme-ligahosting .lh-page .product-card.is-web-plan { background: #1b3034; border-color: rgba(161,232,201,.22); }
body.theme-ligahosting .lh-page .product-card h3 { font-size: 1.25rem; font-weight: 600; }
body.theme-ligahosting .lh-page .product-price .amount { background: none; -webkit-text-fill-color: var(--text); color: var(--text); font-weight: 600; }
body.theme-ligahosting .lh-page .product-hero { background: transparent; padding-inline: 0; border: 0; border-radius: 0; box-shadow: none; }
body.theme-ligahosting .lh-page .product-hero::before { display: none; }
body.theme-ligahosting .lh-page .ph-pricetag { background: transparent; border: 0; padding-right: 0; }
body.theme-ligahosting .lh-page .ph-icon { color: var(--purple-4); background: var(--purple-soft); box-shadow: none; }
body.theme-ligahosting .lh-page .specs-strip { background: var(--surface-subtle); border-radius: 8px; box-shadow: none; }
body.theme-ligahosting .lh-page .product-grid > .u-stack-lg > .card,
body.theme-ligahosting .lh-page .product-sidebar > .card { background: var(--surface); border-color: var(--border); }
body.theme-ligahosting .lh-page .config-header h3 { font-size: 1.125rem; }
body.theme-ligahosting .lh-page .config-num { background: var(--purple-soft); color: var(--purple-4); border: 1px solid var(--border); }
body.theme-ligahosting .lh-page :is(.cycle-card, .location-card) { border-radius: 8px; }
body.theme-ligahosting .lh-page :is(.product-sidebar, .cart-grid > aside, .checkout-summary-panel) {
    position: static;
    min-width: 0;
}
body.theme-ligahosting .lh-page .cart-item { background: var(--surface); }
body.theme-ligahosting .lh-page .cart-item.is-performance { background: #2b2150; }
body.theme-ligahosting .lh-page :is(.cart-item-top, .cart-item-details, .cart-item-actions) { padding: 1rem 1.25rem; }
body.theme-ligahosting .lh-page :is(.cart-item-family, .cart-detail-label, .cart-item-actions label > span) { font-size: .7rem; font-weight: 500; }
body.theme-ligahosting .lh-page .cart-item-cycle { font-size: .8rem; }
body.theme-ligahosting .lh-page .cart-item-specs { display: block; }
body.theme-ligahosting .lh-page .cart-item-specs > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .5rem; }
body.theme-ligahosting .lh-page .cart-item-specs > div > span { font-size: .8rem; background: transparent; border: 0; padding: .2rem 0; }
body.theme-ligahosting .lh-page .cart-item-details > div { background: transparent; border: 0; padding: 0; }
body.theme-ligahosting .lh-page :is(.checkout-billing-panel, .checkout-summary-panel) { background: var(--surface); }
body.theme-ligahosting .lh-page .checkout-success-panel { background: transparent; border: 0; box-shadow: none; }

/* About and contact pages. */
body.theme-ligahosting .lh-page .contact-shell { max-width: 1440px !important; }
body.theme-ligahosting .lh-page .contact-shell .section-header { text-align: left; margin-bottom: 2rem; }
body.theme-ligahosting .lh-page .contact-shell .section-header h1 { font-size: 2.5rem; }
body.theme-ligahosting .lh-page :is(.contact-form-panel, .contact-channel-panel, .contact-ticket-panel) { border-radius: 12px; }
body.theme-ligahosting .lh-page .contact-form-body { padding: 1.5rem; }
body.theme-ligahosting .lh-page :is(.contact-form-head, .contact-channel-panel) h2 { font-size: 1.125rem; }
body.theme-ligahosting .lh-page .contact-channel-list strong { font-size: 1rem; }
body.theme-ligahosting .lh-page .contact-channel-list small { font-size: .85rem; }
body.theme-ligahosting .lh-page .contact-ticket-panel p { font-size: .875rem; }
body.theme-ligahosting .lh-page .contact-channel-icon { flex-shrink: 0; }
body.theme-ligahosting .lh-page .about-hero { gap: 2.5rem; }
body.theme-ligahosting .lh-page .about-copy h1 { font-size: 3rem; font-weight: 600; line-height: 1.15; }
body.theme-ligahosting .lh-page .about-story { max-width: 700px; }
body.theme-ligahosting .lh-page .about-lede { font-weight: 500; }
body.theme-ligahosting .lh-page .about-profile { border-radius: 12px; align-self: start; }
body.theme-ligahosting .lh-page .about-profile-grid div { background: transparent; border: 0; border-bottom: 1px solid var(--border-soft); border-radius: 0; }
body.theme-ligahosting .lh-page .about-value-card { min-height: 0; background: transparent; border: 0; border-top: 1px solid var(--border); border-radius: 0; padding: 1.5rem 0; }
body.theme-ligahosting .lh-page .about-value-grid { gap: 2rem; }
body.theme-ligahosting .lh-page .about-footprint { background: transparent; border: 0; border-top: 1px solid var(--border); border-radius: 0; padding: 2rem 0 0; gap: 2rem; }
body.theme-ligahosting .lh-page .about-location { padding: 1.4rem; border-radius: 12px; }
body.theme-ligahosting .lh-page .about-stats { border-block: 1px solid var(--border); gap: 0; }
body.theme-ligahosting .lh-page .about-stat { background: transparent; border: 0; border-radius: 0; }
body.theme-ligahosting .lh-page .about-stat + .about-stat { border-left: 1px solid var(--border); }

/* News and legal copy get a reading width, without oversized boxed sections. */
body.theme-ligahosting .lh-page .news-layout { gap: 2.5rem; }
body.theme-ligahosting .lh-page .news-title { font-size: 2.5rem; line-height: 1.2; font-weight: 600; }
body.theme-ligahosting .lh-page .news-article { min-width: 0; }
body.theme-ligahosting .lh-page .article-content { max-width: 800px; font-size: 1rem; line-height: 1.85; }
body.theme-ligahosting .lh-page .news-sidebar { position: static; }
body.theme-ligahosting .lh-page .terms-grid { grid-template-columns: 270px minmax(0,850px); gap: 3rem; }
body.theme-ligahosting .lh-page .terms-lede { max-width: 1168px; padding: 1.4rem; line-height: 1.8; }
body.theme-ligahosting .lh-page .terms-toc > .card { background: transparent; border: 0; border-right: 1px solid var(--border); border-radius: 0; box-shadow: none; padding: 0 1.25rem 0 0; }
body.theme-ligahosting .lh-page .terms-toc-list a { padding: .5rem .35rem; font-size: .8rem; line-height: 1.45; }
body.theme-ligahosting .lh-page .terms-section h2 { font-size: 1.35rem; font-weight: 600; }
body.theme-ligahosting .lh-page .terms-section-body { line-height: 1.85; overflow-wrap: anywhere; }
body.theme-ligahosting .lh-page .status-overall { background: var(--green-soft); }
body.theme-ligahosting .lh-page .status-overall.is-degraded { background: var(--orange-soft); }
body.theme-ligahosting .lh-page .status-overall.is-offline { background: var(--red-soft); }
body.theme-ligahosting .lh-page .status-overall strong { font-size: 1rem; }
body.theme-ligahosting .lh-page :is(.status-overall p, .status-location-main small) { font-size: .85rem; }
body.theme-ligahosting .lh-page .status-location-main strong { font-size: .95rem; }

@media (max-width: 1100px) {
    body.theme-ligahosting .lh-page :is(.hero-grid, .about-hero, .about-footprint, .contact-layout,
        .product-grid, .cart-grid, .checkout-grid, .news-layout) { grid-template-columns: minmax(0,1fr); }
    body.theme-ligahosting .lh-page .terms-grid { gap: 1.5rem; }
    body.theme-ligahosting .lh-page .store-category-switcher { max-width: 100%; }
}
@media (max-width: 880px) {
    body.theme-ligahosting .lh-page .terms-grid { grid-template-columns: minmax(0,1fr); }
    body.theme-ligahosting .lh-page .terms-toc > .card { border: 0; border-bottom: 1px solid var(--border); padding: 0 0 1.5rem; }
}
@media (max-width: 700px) {
    body.theme-ligahosting .lh-page :is(.section-header h1, .contact-shell .section-header h1, .news-title, .about-copy h1) { font-size: 2rem; }
    body.theme-ligahosting .lh-page .section-header h2 { font-size: 1.65rem; }
    body.theme-ligahosting .lh-page :is(.ds-layout, .product-hero, .cart-item-details, .about-location-grid, .about-value-grid) { grid-template-columns: minmax(0,1fr); }
    body.theme-ligahosting .lh-page .store-category-option { padding: .75rem; }
    body.theme-ligahosting .lh-page .product-hero { gap: 1rem; }
    body.theme-ligahosting .lh-page .ph-pricetag { text-align: left; padding: 0; }
    body.theme-ligahosting .lh-page .ph-left { align-items: flex-start; gap: .8rem; }
    body.theme-ligahosting .lh-page .ph-icon { width: 46px; height: 46px; }
    body.theme-ligahosting .lh-page .cart-item-top { flex-wrap: wrap; }
    body.theme-ligahosting .lh-page .cart-item-specs > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
    body.theme-ligahosting .lh-page .news-featured { grid-template-columns: minmax(0,1fr) !important; }
    body.theme-ligahosting .lh-page .about-stats { grid-template-columns: minmax(0,1fr); }
    body.theme-ligahosting .lh-page .about-stat + .about-stat { border-left: 0; border-top: 1px solid var(--border); }
    body.theme-ligahosting .lh-page :is(.contact-form-body, .contact-form-head) { padding: 1.2rem; }
    body.theme-ligahosting .lh-page .feature-grid { grid-template-columns: minmax(0,1fr); }
    body.theme-ligahosting .lh-page .feature-card { grid-column: auto; }
}
