/* Complete theme suite: shared component presentation and individual art direction. */
body.clg-professional.clg-concept { --clg-suite-shadow:0 16px 36px #0003; --clg-suite-rule:2px; }
body.clg-professional.clg-concept:not(.homepage) #wrapper>.inner { max-width:1424px; }
body.clg-professional.clg-concept:not(.homepage) #center>.inner { padding:0; border-radius:var(--clg-radius); box-shadow:var(--clg-suite-shadow); }
.clg-page-banner { position:relative; isolation:isolate; overflow:hidden; min-height:235px; display:flex; align-items:center; padding:34px; background:var(--clg-bg); border-bottom:var(--clg-suite-rule) solid var(--clg-trim); }
.clg-page-banner .clg-page-art { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:70% 58%; }
.clg-page-banner::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,var(--clg-bg) 0%,color-mix(in srgb,var(--clg-bg) 96%,transparent) 32%,color-mix(in srgb,var(--clg-bg) 65%,transparent) 65%,#0003 100%); }
.clg-page-banner-copy { width:68%; max-width:620px; }
.clg-professional.clg-concept #center .clg-page-banner h1 { color:var(--clg-text); font-size:25px!important; line-height:1.3!important; margin:10px 0 13px; padding:0; letter-spacing:-.35px; }
.clg-page-kicker { color:var(--clg-accent); font-size:10px; font-weight:700; letter-spacing:.15em; margin:0; padding:0; }
.clg-page-description { font-size:14px; line-height:1.7; color:var(--clg-text); margin:0; padding:0; }
.clg-page-banner-compact { min-height:160px; padding:27px 34px; }
.clg-page-content { padding:30px 34px 36px; min-width:0; }
.clg-page-content:empty { display:none; }
.clg-professional.clg-concept .clg-page-content .clg-page-intro { border-left:3px solid var(--clg-trim); border-radius:0 var(--clg-radius) var(--clg-radius) 0; margin:0 0 28px; }
.clg-professional.clg-concept #right .tck-module { border-radius:var(--clg-radius); border-top:var(--clg-suite-rule) solid var(--clg-trim); box-shadow:var(--clg-suite-shadow); }
.clg-professional.clg-concept #right h3 { font-size:16px; letter-spacing:.02em; }
.clg-professional.clg-concept #center .clg-page-content h2 { font-size:21px!important; line-height:1.4!important; }
.clg-professional.clg-concept .clg-page-content :is(.form-control,.form-select,input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],textarea,select) { border:1px solid var(--clg-border); border-radius:var(--clg-radius); background-color:var(--clg-input); color:var(--clg-text); max-width:100%; min-height:43px; padding:10px 12px; box-shadow:none; }
.clg-professional.clg-concept .clg-page-content :is(input,textarea,select):focus { border-color:var(--clg-accent); }
.clg-professional.clg-concept .clg-page-content :is(input,textarea)::placeholder { color:var(--clg-muted); opacity:1; }
.clg-professional.clg-concept .clg-page-content :is(label,legend) { color:var(--clg-text); }
.clg-page-content .formResponsive .formControlLabel { font-weight:600; font-size:14px; }
.clg-page-content .formResponsive .rsform-block { margin-bottom:21px; }
.clg-page-content .formResponsive fieldset { min-width:0; }
.clg-page-content .formResponsive .formControls { min-width:0; }
.clg-professional.clg-concept .clg-page-content .formResponsive :is(input[type=text],input[type=email],input[type=password],input[type=tel],input[type=number],textarea,select) { box-sizing:border-box!important; width:100%; max-width:100%!important; }
.clg-professional.clg-concept .clg-page-content :is(.btn,.rsform-submit-button,.rsform-button) { border-radius:var(--clg-radius); min-height:42px; font-weight:600; box-shadow:none; }
.clg-professional.clg-concept #center .clg-page-content .sppb-collection-item { background:var(--clg-panel); padding:14px; border:1px solid var(--clg-border); border-radius:var(--clg-radius); box-shadow:var(--clg-suite-shadow); }
.clg-professional.clg-concept #center .clg-page-content .easystore-product-image { background:var(--clg-raised); border-color:var(--clg-border)!important; border-radius:var(--clg-radius); }
.clg-professional.clg-concept #center .clg-page-content h2.easystore-product-title { font-size:16px!important; }
.clg-page-content .com-users-login { max-width:540px; margin:0 auto; }
.clg-page-content .com-users-login__form { background:var(--clg-panel); border:1px solid var(--clg-border); border-radius:var(--clg-radius); padding:25px; }
.clg-page-content .com-users-login__options { margin-top:22px; }
.clg-professional.clg-concept .clg-page-content .table { --bs-table-bg:var(--clg-panel); --bs-table-color:var(--clg-text); --bs-table-border-color:var(--clg-border); --bs-table-striped-bg:var(--clg-raised); --bs-table-striped-color:var(--clg-text); --bs-table-hover-bg:var(--clg-raised); --bs-table-hover-color:var(--clg-text); }
.clg-page-content .table-responsive { border:1px solid var(--clg-border); border-radius:var(--clg-radius); }
/* The existing store detail builder has separate image/detail sections. */
.clg-professional.clg-concept #easystore-product-detail-sppb { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; align-items:start; }
.clg-professional.clg-concept #easystore-product-detail-sppb>.sppb-section { margin:0!important; padding:0!important; min-width:0; }
.clg-professional.clg-concept #easystore-product-detail-sppb :is(.sppb-row-container,.sppb-row,.sppb-row-column,.sppb-column) { width:100%!important; max-width:100%!important; margin:0!important; padding:0!important; }
.clg-professional.clg-concept #easystore-product-detail-sppb .addon-root-empty-space { display:none; }
.clg-professional.clg-concept #easystore-product-detail-sppb .sppb-addon-wrapper { width:100%!important; max-width:100%!important; }
.clg-professional.clg-concept #easystore-product-detail-sppb .easystore-thumbnail--single { width:100%!important; height:auto!important; }
.clg-professional.clg-concept #easystore-product-detail-sppb .easystore-product-image-wrapper { height:400px; }
.clg-professional.clg-concept #easystore-product-detail-sppb .easystore-product-image-wrapper>img { width:100%; height:100%; max-height:400px; object-fit:contain; }
.clg-professional.clg-concept #easystore-product-detail-sppb .easystore-thumbnail--single { padding:0!important; }
.clg-professional.clg-concept #easystore-product-detail-sppb :is(.easystore-product-image-wrapper,.easystore-product-image-zoom-container) { width:100%; }
.clg-professional.clg-concept #easystore-product-detail-sppb .easystore-product-image-wrapper>img { position:static; }
.clg-professional.clg-concept #easystore-product-detail-sppb :is(.easystore-block-label,.easystore-quantity-selector-btn) { color:var(--clg-text); }
.clg-professional.clg-concept #easystore-product-detail-sppb .easystore-qty-message-info { color:var(--clg-text); background:var(--clg-raised); }
.clg-professional.clg-concept #easystore-product-detail-sppb .easystore-product-gallery { margin-top:16px; gap:8px; }
.clg-professional.clg-concept #easystore-product-detail-sppb .easystore-gallery-image { border:1px solid var(--clg-border); border-radius:var(--clg-radius); overflow:hidden; }
.clg-professional.clg-concept #easystore-product-detail-sppb .easystore-gallery-image.active { border-color:var(--clg-accent); }
.clg-professional.clg-concept #easystore-product-detail-sppb>.sppb-section:nth-child(2) .sppb-column-addons { display:flex; flex-direction:column; gap:16px; }
.clg-professional.clg-concept #easystore-product-detail-sppb .addon-root-easystore-single-description { order:10; border-top:1px solid var(--clg-border); padding-top:20px; font-size:14px; }
.clg-professional.clg-concept #easystore-product-detail-sppb .addon-root-easystore-single-reviews { order:11; }
@media(max-width:1000px) { .clg-professional.clg-concept #easystore-product-detail-sppb { grid-template-columns:minmax(0,1fr); } }
.clg-page-support { margin:0 34px 32px; padding:18px; display:flex; gap:18px; align-items:center; background:var(--clg-raised); border:1px solid var(--clg-border); border-radius:var(--clg-radius); }
.clg-page-support img { width:88px; height:88px; object-fit:cover; border-radius:var(--clg-radius); flex:none; }
.clg-page-support strong { color:var(--clg-text); font-size:16px; }
.clg-page-support p { color:var(--clg-muted); font-size:13px; line-height:1.65; margin:6px 0 0; padding:0; }
.clg-page-support .clg-button { font-size:12px; white-space:nowrap; margin-left:auto; }
body.clg-professional.clg-concept #menu ul.nav>li>a { border-radius:var(--clg-radius); }
body.clg-professional.clg-concept #menu ul.nav>li.current>a { box-shadow:inset 0 -3px 0 var(--clg-trim); }
body.clg-professional.clg-concept .clg-concept-card { border-top:var(--clg-suite-rule) solid var(--clg-trim); box-shadow:var(--clg-suite-shadow); }
body.clg-professional.clg-concept .clg-concept-hero { border-radius:0 0 var(--clg-radius) var(--clg-radius); }
body.clg-professional.clg-concept .clg-footer { border-top:var(--clg-suite-rule) solid var(--clg-trim); }
/* 01: compact photo tiles and rounded cobalt panels. */
body[data-clg-theme=midnight-cobalt] { --clg-suite-rule:2px; }
body[data-clg-theme=midnight-cobalt] .clg-concept-card { background:linear-gradient(145deg,var(--clg-raised),var(--clg-panel)); }
/* 02: squared performance cards and a strong red line. */
body.clg-professional.clg-concept[data-clg-theme=redline-performance] { --clg-suite-rule:4px; }
body[data-clg-theme=redline-performance] .clg-page-kicker { letter-spacing:.22em; }
body[data-clg-theme=redline-performance] .clg-concept-card h2 { letter-spacing:.02em; }
/* 03: precision grid, metallic edges, larger photography. */
body.clg-professional.clg-concept[data-clg-theme=gunmetal-precision] { --clg-suite-shadow:0 12px 25px #0002; --clg-suite-rule:1px; }
body[data-clg-theme=gunmetal-precision] .clg-concept-card { background:linear-gradient(155deg,var(--clg-raised),var(--clg-panel)); }
body[data-clg-theme=gunmetal-precision] .clg-card-art img { height:178px; }
body[data-clg-theme=gunmetal-precision] .clg-page-content { background-image:linear-gradient(90deg,#ffffff02 1px,transparent 1px); background-size:32px 32px; }
/* 04: spacious blue workshop imagery and softly layered cards. */
body[data-clg-theme=deep-blue-workshop] .clg-card-art img { height:190px; }
body[data-clg-theme=deep-blue-workshop] .clg-concept-card-body { padding:24px; }
body[data-clg-theme=deep-blue-workshop] .clg-page-banner { min-height:270px; }
/* 05: subtle carbon texture, crimson rules and sharp cards. */
body.clg-professional.clg-concept[data-clg-theme=carbon-crimson] { --clg-suite-rule:3px; }
body[data-clg-theme=carbon-crimson] .clg-concept-card-body,body[data-clg-theme=carbon-crimson] .clg-page-content { background-image:repeating-linear-gradient(135deg,#ffffff02 0,#ffffff02 1px,transparent 1px,transparent 6px); }
/* 06: centered composition with a broad photograph above the copy. */
body[data-clg-theme=indigo-circuit] .clg-concept-card { border-radius:12px; }
body[data-clg-theme=indigo-circuit] .clg-page-banner { border-left:4px solid var(--clg-trim); }
/* 07: precise titanium frames and clean, flat surfaces. */
body.clg-professional.clg-concept[data-clg-theme=titanium-blue] { --clg-suite-shadow:none; --clg-suite-rule:1px; }
body[data-clg-theme=titanium-blue] .clg-concept-card-body { border-top:1px solid var(--clg-border); }
body[data-clg-theme=titanium-blue] .clg-page-banner { border-left:5px solid var(--clg-trim); }
/* 08: restrained black and silver, compact horizontal service tiles. */
body.clg-professional.clg-concept[data-clg-theme=stealth-garage] { --clg-suite-shadow:none; --clg-suite-rule:1px; }
body[data-clg-theme=stealth-garage] .clg-concept-eyebrow { letter-spacing:.28em; }
/* 09: quiet circuit-board grid and olive frame details. */
body[data-clg-theme=circuit-olive] .clg-page-content,body[data-clg-theme=circuit-olive] .clg-concept-card-body { background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px); background-size:26px 26px; }
body[data-clg-theme=circuit-olive] .clg-page-banner { border-left:3px solid var(--clg-trim); }
/* 10: the logo's blue-and-red signature, prominent imagery and red rules. */
body.clg-professional.clg-concept[data-clg-theme=clg-signature] { --clg-suite-rule:3px; }
body[data-clg-theme=clg-signature] .clg-card-art img { height:170px; }
body[data-clg-theme=clg-signature] .clg-page-banner { border-left:3px solid var(--clg-accent); }
@media(min-width:1100px) {
 body[data-clg-theme=midnight-cobalt] .clg-concept-card,body[data-clg-theme=stealth-garage] .clg-concept-card { display:grid; grid-template-columns:32% 1fr; }
 body[data-clg-theme=midnight-cobalt] .clg-card-art img,body[data-clg-theme=stealth-garage] .clg-card-art img { height:100%; min-height:235px; }
 body[data-clg-theme=midnight-cobalt] .clg-concept-card-body,body[data-clg-theme=stealth-garage] .clg-concept-card-body { display:block; padding:20px 16px; }
 body[data-clg-theme=midnight-cobalt] .clg-concept-card-body>svg,body[data-clg-theme=stealth-garage] .clg-concept-card-body>svg { width:25px; height:25px; margin-bottom:10px; }
 body.clg-professional.clg-concept[data-clg-theme=deep-blue-workshop] .clg-concept-home .clg-concept-hero { min-height:410px; }
 body.clg-professional.clg-concept[data-clg-theme=indigo-circuit] .clg-concept-home .clg-concept-hero { min-height:570px; align-items:flex-end; justify-content:center; text-align:center; padding-top:290px; }
 body[data-clg-theme=indigo-circuit] .clg-concept-hero .clg-concept-art { height:370px; }
 body[data-clg-theme=indigo-circuit] .clg-concept-hero::after { background:linear-gradient(0deg,var(--clg-bg) 0%,var(--clg-bg) 34%,transparent 75%); }
 body[data-clg-theme=indigo-circuit] .clg-concept-copy { width:100%; max-width:700px; }
 body[data-clg-theme=indigo-circuit] .clg-concept-eyebrow,body[data-clg-theme=indigo-circuit] .clg-actions,body[data-clg-theme=indigo-circuit] .clg-concept-appointment { justify-content:center; }
 body[data-clg-theme=indigo-circuit] .clg-concept-lead { margin:auto; max-width:650px; }
}
@media(max-width:1100px) { .clg-page-support { flex-wrap:wrap; } .clg-page-support>div { flex:1; } .clg-page-support .clg-button { margin-left:0; } }
@media(max-width:758px) {
 .clg-page-banner,.clg-page-banner-compact,body[data-clg-theme=deep-blue-workshop] .clg-page-banner { min-height:0; padding:28px 22px; }
 .clg-page-banner-copy { width:100%; }
 .clg-page-banner::after { background:linear-gradient(90deg,color-mix(in srgb,var(--clg-bg) 98%,transparent),color-mix(in srgb,var(--clg-bg) 83%,transparent)); }
 .clg-page-description { font-size:13px; }
 .clg-page-content { padding:24px 18px; }
 .clg-page-support { margin:0 18px 24px; padding:16px; gap:14px; }
 .clg-page-support img { width:70px; height:80px; }
 .clg-page-support .clg-button { width:100%; }
 .clg-page-content .com-users-login__form { padding:18px; }
 .clg-page-content .formResponsive .formHorizontal .formControls { margin-left:0; }
 .clg-page-content .formResponsive .formHorizontal .formControlLabel { float:none; width:auto; text-align:left; }
}
