/* CELQOR Page-Specific Master Styles */

/* Concierge-first experience — ASK · DECIDE · DONE */
.cq-device-detection { display:flex; justify-content:space-between; align-items:center; gap:22px; margin-bottom:24px; padding:22px; border:1px solid rgba(194,155,114,.3); border-radius:16px; background:linear-gradient(135deg,rgba(226,199,164,.14),rgba(255,255,255,.55)); }
.cq-device-detection span,.cq-device-actions>span { display:block; color:var(--cq-gold-mid); font-size:10px; font-weight:800; letter-spacing:.14em; margin-bottom:6px; }
.cq-device-detection strong { display:block; font-size:19px; }
.cq-device-detection p { color:var(--cq-muted); font-size:13px; margin:4px 0 0; }
.cq-device-detection>div:last-child { display:flex; gap:8px; flex-wrap:wrap; flex:0 0 auto; }
.cq-device-actions { grid-column:1/-1; margin-top:14px; }
.cq-device-actions>div { display:flex; flex-wrap:wrap; gap:8px; }
.cq-device-actions button { border:1px solid var(--cq-border); border-radius:999px; padding:9px 13px; background:rgba(255,255,255,.68); color:var(--cq-ink); font-size:11px; text-transform:uppercase; letter-spacing:.07em; }
.cq-device-actions button:hover { border-color:var(--cq-gold-mid); background:#fff; }
.cq-concierge-hero {
  min-height: calc(100svh - 40px);
  display: grid;
  align-items: center;
  color: #faf9f6;
  background:
    radial-gradient(circle at 78% 38%, rgba(210,171,119,.2), transparent 24%),
    radial-gradient(circle at 54% 120%, rgba(102,83,64,.36), transparent 45%),
    linear-gradient(132deg,#080a0c 0%,#111417 55%,#090a0b 100%);
  position: relative;
  overflow: hidden;
}
.cq-concierge-hero:before { content:""; position:absolute; inset:0; opacity:.22; background:linear-gradient(120deg,transparent 48%,rgba(255,255,255,.08) 49%,transparent 50%); background-size:120px 120px; }
.cq-concierge-hero__grid { position:relative; display:grid; grid-template-columns:minmax(0,.96fr) minmax(400px,1.04fr); gap:0; align-items:center; padding:clamp(72px,10vw,132px) 0; }
.cq-concierge-hero__copy { position:relative; z-index:3; }
.cq-concierge-hero .cq-h1 { color:#faf9f6; font-size:clamp(48px,6.4vw,94px); letter-spacing:-.055em; max-width:860px; }
.cq-concierge-hero .cq-lead { color:rgba(250,249,246,.7); max-width:690px; font-size:clamp(17px,1.6vw,22px); }
.cq-ask-panel { margin-top:30px; padding:10px; display:flex; gap:10px; align-items:center; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.07); box-shadow:0 26px 80px rgba(0,0,0,.35); border-radius:20px; backdrop-filter:blur(20px); max-width:730px; }
.cq-ask-panel button:first-child { flex:0 0 auto; }
.cq-home-ask { flex:1; min-height:56px; border-radius:13px; background:#faf9f6; color:#101214; padding:0 18px; text-align:left; font-size:15px; }
.cq-home-quick { display:flex; flex-wrap:wrap; gap:9px; margin-top:18px; }
.cq-home-quick a,.cq-home-quick button { border:1px solid rgba(255,255,255,.18); color:#faf9f6; border-radius:999px; padding:10px 14px; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.cq-home-quick a:hover,.cq-home-quick button:hover { background:rgba(226,199,164,.15); border-color:#d1aa77; }
.cq-emblem-stage { position:relative; aspect-ratio:1; max-width:520px; margin:auto; display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.09),rgba(255,255,255,.025) 47%,transparent 69%); }
.cq-emblem-stage:before,.cq-emblem-stage:after { content:""; position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,.13); inset:9%; box-shadow:inset 0 0 90px rgba(226,199,164,.08),0 0 90px rgba(194,155,114,.12); animation:cqPulse 4s ease-in-out infinite; }
.cq-emblem-stage:after { inset:23%; animation-delay:-2s; }
.cq-emblem-stage img { width:76%; height:76%; object-fit:contain; mix-blend-mode:screen; filter:drop-shadow(0 18px 30px rgba(0,0,0,.6)) drop-shadow(0 0 18px rgba(226,199,164,.25)); position:relative; z-index:1; }
@keyframes cqPulse { 50% { transform:scale(1.025); border-color:rgba(226,199,164,.38); } }

.cq-concierge-modal { width:min(820px,calc(100vw - 30px)); background:linear-gradient(145deg,#16191c,#090b0d); border-color:rgba(226,199,164,.24); box-shadow:0 40px 120px rgba(0,0,0,.7); }
.cq-concierge-modal .cq-modal__header > div { display:flex; align-items:center; gap:12px; }
.cq-concierge-modal .cq-modal__header strong,.cq-concierge-modal .cq-modal__header small { display:block; }
.cq-concierge-modal .cq-modal__header small { color:rgba(250,249,246,.48); font-size:10px; letter-spacing:.16em; margin-top:3px; }
.cq-concierge-mini-mark { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(226,199,164,.26); border-radius:50%; background:rgba(255,255,255,.06); }
.cq-concierge-mini-mark img { width:38px; height:32px; object-fit:contain; mix-blend-mode:screen; filter:drop-shadow(0 0 9px rgba(226,199,164,.5)); }
.cq-concierge-kicker { color:rgba(250,249,246,.72); margin:0 0 18px; }
.cq-concierge-welcome { margin:0 0 10px; padding:14px 16px; border:1px solid rgba(226,199,164,.22); border-radius:16px; background:linear-gradient(135deg,rgba(226,199,164,.1),rgba(255,255,255,.025)); }
.cq-concierge-welcome h2 { color:#faf9f6; margin:4px 0 6px; font-size:clamp(21px,2.7vw,27px); }
.cq-concierge-welcome p { color:rgba(250,249,246,.7); margin:0; font-size:13px; line-height:1.38; }
.cq-concierge-device-context { margin-top:8px!important; color:#f0d7b3!important; }
.cq-concierge-device-choices { display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.cq-concierge-device-choices[hidden] { display:none; }
.cq-concierge-composer { border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.06); border-radius:18px; padding:10px 12px; }
.cq-concierge-composer textarea { width:100%; min-height:38px; resize:none; border:0; background:transparent; color:#faf9f6; font:inherit; outline:0; padding:4px; }
.cq-composer-actions { display:flex; align-items:center; gap:10px; margin-top:5px; }
.cq-composer-actions .cq-btn { margin-left:auto; }
.cq-voice-button,.cq-photo-ready { border:1px solid rgba(255,255,255,.15); border-radius:999px; color:rgba(250,249,246,.72); padding:8px 12px; font-size:11px; letter-spacing:.06em; }
.cq-voice-button { display:inline-flex; align-items:center; gap:7px; }
.cq-voice-button .cq-mic-icon { width:16px; height:16px; }
.cq-is-listening .cq-voice-button { color:#f2d1a1; border-color:#d1aa77; box-shadow:0 0 20px rgba(209,170,119,.35); }
.cq-voice-status { color:rgba(250,249,246,.62); font-size:10px; letter-spacing:.04em; }
.cq-voice-button.is-listening { color:#f2d1a1; border-color:#d1aa77; box-shadow:0 0 20px rgba(209,170,119,.35); }
.cq-concierge-quick { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:7px; margin:10px 0; }
.cq-concierge-quick button { min-height:42px; padding:5px; border:1px solid rgba(255,255,255,.12); color:#faf9f6; border-radius:11px; font-size:10px; }
.cq-concierge-quick button:hover { background:rgba(255,255,255,.07); }
.cq-concierge-other { display:block; width:100%; margin:0 0 8px; padding:9px 12px; border:1px dashed rgba(226,199,164,.3); border-radius:11px; color:#f0d7b3; text-align:left; font-size:11px; }
.cq-concierge-other:hover { background:rgba(226,199,164,.08); }
.cq-answer-card { padding:22px; border:1px solid rgba(226,199,164,.24); border-radius:16px; background:linear-gradient(135deg,rgba(226,199,164,.1),rgba(255,255,255,.035)); }
.cq-answer-label { color:#e2c7a4; letter-spacing:.15em; font-size:10px; font-weight:800; }
.cq-answer-card h3 { color:#faf9f6; font-size:24px; margin:8px 0; }
.cq-answer-card p { color:rgba(250,249,246,.72); margin:0; line-height:1.55; }
.cq-answer-card small { display:block; color:rgba(250,249,246,.5); margin-top:8px; }
.cq-answer-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:18px; }
.cq-modal__body.cq-has-answer .cq-concierge-quick,
.cq-modal__body.cq-has-answer .cq-concierge-welcome,
.cq-modal__body.cq-has-answer .cq-concierge-other,
.cq-modal__body.cq-has-answer .cq-concierge-consultation { display:none; }
.cq-modal__body.cq-has-answer .cq-search-results { margin-top:16px; }
.cq-modal__body.cq-has-answer .cq-answer-card { animation:cqAnswerReveal .28s ease-out both; }
.cq-answer-card:focus { outline:2px solid rgba(226,199,164,.72); outline-offset:3px; }
@keyframes cqAnswerReveal { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }

/* Light CELQOR concierge — matched to the approved cream-and-gold reference. */
#cq-search-modal { background:rgba(76,67,57,.38); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); }
.cq-concierge-modal--light {
  width:min(1160px,calc(100vw - 36px));
  max-height:calc(100vh - 30px);
  color:#1d1d1c;
  background:
    radial-gradient(circle at 82% 18%,rgba(255,255,255,.9),transparent 28%),
    linear-gradient(135deg,#f8f2e9 0%,#eee3d4 54%,#f8f4ed 100%);
  border:1px solid rgba(183,126,52,.62);
  border-radius:20px;
  box-shadow:0 34px 100px rgba(65,47,28,.28),inset 0 0 0 1px rgba(255,255,255,.68);
}
.cq-concierge-modal--light .cq-modal__header { padding:14px 22px; border-color:rgba(139,100,52,.2); background:rgba(255,255,255,.28); }
.cq-concierge-modal--light .cq-modal__header > div { gap:10px; margin-right:auto; }
.cq-concierge-brand-mark { display:grid; place-items:center; width:48px; height:48px; }
.cq-concierge-brand-mark img { width:46px; height:46px; object-fit:contain; }
.cq-concierge-brand-copy strong { color:#171717; font-size:20px; font-weight:500; letter-spacing:.25em; }
.cq-concierge-modal--light .cq-concierge-brand-copy small { color:#171717; margin-top:2px; font-size:8px; font-weight:700; letter-spacing:.28em; }
.cq-concierge-live { display:inline-flex; align-items:center; gap:8px; margin-right:14px; padding:8px 13px; color:#282622; background:rgba(255,255,255,.62); border:1px solid rgba(68,59,49,.14); border-radius:999px; font-size:11px; box-shadow:0 7px 20px rgba(82,61,38,.08); }
.cq-concierge-live i { width:7px; height:7px; border-radius:50%; background:#45b94c; box-shadow:0 0 0 3px rgba(69,185,76,.1); }
.cq-concierge-modal--light .cq-close-btn { width:42px; height:42px; color:#171717; background:rgba(255,255,255,.75); box-shadow:0 8px 22px rgba(66,48,29,.1); }
.cq-concierge-modal--light .cq-close-btn:hover { background:#fff; }
.cq-concierge-modal--light .cq-modal__body { padding:20px 26px 24px; }
.cq-concierge-modal--light .cq-concierge-welcome { display:grid; grid-template-columns:1.08fr .92fr; min-height:280px; margin:0 0 14px; padding:0; overflow:hidden; background:rgba(255,255,255,.43); border:1px solid rgba(133,95,48,.2); box-shadow:0 10px 30px rgba(90,65,38,.06); }
.cq-concierge-welcome-copy { position:relative; z-index:2; padding:24px 8px 20px 28px; }
.cq-concierge-modal--light .cq-answer-label,.cq-concierge-help-label { display:block; color:#a36f2d; font-size:11px; font-weight:800; letter-spacing:.18em; }
.cq-concierge-modal--light .cq-concierge-welcome h2 { margin:8px 0 12px; color:#191918; font-size:clamp(38px,4vw,56px); font-weight:400; letter-spacing:.16em; line-height:1; }
.cq-concierge-modal--light .cq-concierge-welcome-copy > p { max-width:520px; color:#514d47; font-size:14px; line-height:1.5; }
.cq-concierge-welcome-visual { position:relative; min-height:280px; background:linear-gradient(90deg,#f5eee4 0%,rgba(245,238,228,.08) 24%),url('../images/celqor-home-cq-clean-v8.jpg') 66% center/cover no-repeat; }
.cq-concierge-welcome-visual:after { content:""; position:absolute; inset:0; background:radial-gradient(circle at 62% 45%,transparent 0 22%,rgba(255,255,255,.06) 40%,rgba(248,242,233,.24) 100%); }
.cq-concierge-device-panel { display:grid; grid-template-columns:58px minmax(0,1fr) auto; align-items:center; gap:12px; margin-top:18px; padding:12px; background:rgba(255,255,255,.7); border:1px solid rgba(120,91,57,.2); border-radius:14px; box-shadow:0 8px 20px rgba(82,58,31,.05); }
.cq-concierge-device-icon { display:grid; place-items:center; width:56px; height:70px; color:#ae7b39; border-radius:10px; background:linear-gradient(160deg,#f0dfc7,#fff); }
.cq-concierge-device-icon svg { width:42px; height:54px; }
.cq-concierge-modal--light .cq-concierge-device-context { margin:0!important; color:#4e4a44!important; font-size:12px; line-height:1.4; }
.cq-concierge-modal--light .cq-concierge-device-choices { flex-direction:column; margin:0; }
.cq-concierge-modal--light .cq-concierge-device-choices .cq-btn { min-width:124px; justify-content:center; border-radius:999px; }
.cq-concierge-modal--light .cq-concierge-composer { display:grid; grid-template-columns:1fr auto; align-items:center; gap:12px; padding:8px 10px 8px 18px; background:rgba(255,255,255,.78); border:1px solid rgba(173,116,42,.27); border-radius:999px; box-shadow:0 12px 30px rgba(88,60,29,.09); }
.cq-concierge-modal--light .cq-concierge-composer textarea { min-height:42px; padding:10px 6px; color:#272521; }
.cq-concierge-modal--light .cq-concierge-composer textarea::placeholder { color:#8a847c; }
.cq-concierge-modal--light .cq-composer-actions { margin:0; }
.cq-concierge-modal--light .cq-voice-button { order:2; color:#815a28; background:#fff; border-color:rgba(139,98,45,.2); box-shadow:0 5px 14px rgba(93,65,31,.08); }
.cq-concierge-modal--light .cq-voice-status { color:#6d675f; }
.cq-concierge-modal--light .cq-composer-actions .cq-btn { min-width:112px; min-height:44px; margin-left:4px; border-radius:999px; color:#fff; background:linear-gradient(135deg,#c99c57,#9b692d); }
.cq-concierge-help-label { margin:16px 0 9px 2px; }
.cq-concierge-modal--light .cq-concierge-quick { gap:9px; margin:0 0 10px; }
.cq-concierge-modal--light .cq-concierge-quick button { display:flex; min-height:104px; flex-direction:column; align-items:center; justify-content:center; gap:5px; padding:10px 7px; color:#1d1c1a; background:rgba(255,255,255,.62); border-color:rgba(102,78,49,.17); border-radius:14px; box-shadow:0 8px 22px rgba(82,58,31,.05); }
.cq-concierge-modal--light .cq-concierge-quick button:hover { transform:translateY(-2px); background:#fff; border-color:rgba(168,112,42,.42); }
.cq-concierge-action-icon { width:28px; height:28px; color:#b27c35; }
.cq-concierge-modal--light .cq-concierge-quick strong { font-size:11px; text-transform:uppercase; letter-spacing:.05em; }
.cq-concierge-modal--light .cq-concierge-quick small { color:#6d675f; font-size:10px; }
.cq-concierge-modal--light .cq-concierge-other { margin-bottom:0; padding:10px 14px; color:#5e574e; background:rgba(255,255,255,.48); border:1px solid rgba(115,87,54,.16); border-radius:999px; }
.cq-concierge-modal--light .cq-concierge-other span { color:#ae7731; margin-right:7px; }
.cq-concierge-modal--light .cq-answer-card { color:#22201d; background:rgba(255,255,255,.72); border-color:rgba(154,106,45,.28); box-shadow:0 12px 34px rgba(78,54,27,.09); }
.cq-concierge-modal--light .cq-answer-card h3 { color:#211f1c; }
.cq-concierge-modal--light .cq-answer-card p { color:#575149; }
.cq-concierge-modal--light .cq-answer-card small { color:#777067; }
.cq-concierge-modal--light .cq-answer-card .cq-btn--outline-light { color:#2c2925; border-color:rgba(55,49,42,.3); }
.cq-concierge-modal--light .cq-answer-card:focus { outline-color:rgba(171,114,42,.66); }
.cq-ai-product-results{display:grid;gap:10px;margin-top:18px}.cq-ai-product-result{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;padding:10px;border:1px solid rgba(174,126,63,.24);border-radius:14px;background:rgba(255,255,255,.62)}.cq-ai-product-result img{width:52px;height:52px;object-fit:contain;border-radius:10px}.cq-ai-product-result strong,.cq-ai-product-result span{display:block}.cq-ai-product-result strong{font-size:13px;color:#211f1c}.cq-ai-product-result span{margin-top:3px;font-size:11px;color:#6b645c}.cq-ai-product-result button{padding:8px 10px;border-radius:999px;background:#211f1c;color:#fff;font-size:11px;font-weight:700}.cq-ai-upsell-note{padding:4px 2px;color:#746b61!important}.cq-ai-action-confirmation{display:grid;gap:4px;margin-top:16px;padding:14px;border:1px solid rgba(154,106,45,.3);border-radius:12px;background:rgba(218,178,121,.18)}.cq-ai-action-confirmation strong{color:#211f1c}.cq-ai-action-confirmation span{font-size:12px;color:#5e574f}@media(max-width:640px){.cq-ai-product-result{grid-template-columns:44px 1fr}.cq-ai-product-result img{width:44px;height:44px}.cq-ai-product-result button{grid-column:1/-1;width:100%}}
.cq-modal__body.cq-has-answer .cq-concierge-help-label { display:none; }

@media (max-width:900px) {
  .cq-concierge-modal--light { width:min(760px,calc(100vw - 24px)); }
  .cq-concierge-modal--light .cq-concierge-welcome { grid-template-columns:1fr; }
  .cq-concierge-welcome-visual { display:none; }
  .cq-concierge-modal--light .cq-concierge-quick { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:600px) {
  #cq-search-modal { padding:8px; align-items:flex-start; }
  .cq-concierge-modal--light { width:100%; max-height:calc(100vh - 16px); border-radius:16px; }
  .cq-concierge-modal--light .cq-modal__header { padding:10px 12px; }
  .cq-concierge-live { display:none; }
  .cq-concierge-modal--light .cq-modal__body { padding:12px; }
  .cq-concierge-welcome-copy { padding:18px; }
  .cq-concierge-modal--light .cq-concierge-welcome h2 { font-size:36px; }
  .cq-concierge-device-panel { grid-template-columns:48px 1fr; }
  .cq-concierge-device-icon { width:46px; height:58px; }
  .cq-concierge-modal--light .cq-concierge-device-choices { grid-column:1/-1; flex-direction:row; }
  .cq-concierge-modal--light .cq-concierge-composer { grid-template-columns:1fr; border-radius:18px; }
  .cq-concierge-modal--light .cq-composer-actions { flex-wrap:wrap; }
  .cq-concierge-modal--light .cq-composer-actions .cq-btn { margin-left:auto; }
  .cq-concierge-modal--light .cq-concierge-quick { grid-template-columns:repeat(2,1fr); }
}
.cq-intent-dock { display:none; }
.cq-voice-session-bar { position:fixed; z-index:2600; left:50%; bottom:24px; transform:translateX(-50%); width:min(760px,calc(100vw - 32px)); min-height:66px; padding:12px 14px; display:grid; grid-template-columns:auto minmax(120px,1fr) auto; align-items:center; gap:12px; color:#15120e; background:rgba(253,248,239,.96); border:1px solid rgba(183,132,66,.55); border-radius:20px; box-shadow:0 18px 48px rgba(31,22,13,.24); backdrop-filter:blur(18px); }
.cq-voice-session-bar[hidden] { display:none; }
.cq-voice-session-bar__pulse { width:13px; height:13px; border-radius:50%; background:#b98a4b; box-shadow:0 0 0 7px rgba(185,138,75,.14); }
.cq-voice-session-bar[data-state="listening"] .cq-voice-session-bar__pulse { animation:cq-voice-pulse 1.25s ease-in-out infinite; background:#2d9b61; }
.cq-voice-session-bar[data-state="thinking"] .cq-voice-session-bar__pulse { animation:cq-voice-pulse .8s ease-in-out infinite; }
.cq-voice-session-bar[data-state="error"] .cq-voice-session-bar__pulse { background:#a74737; }
.cq-voice-session-bar__copy { min-width:0; display:grid; gap:2px; }
.cq-voice-session-bar__controls{display:flex;align-items:center;gap:7px}
.cq-voice-session-bar strong { font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.cq-voice-session-bar [data-cq-session-status] { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; color:#5b5147; }
.cq-voice-session-bar button { min-height:38px; padding:0 14px; border:1px solid rgba(36,29,22,.18); border-radius:999px; background:#171512; color:#fff; font:700 12px/1 inherit; white-space:nowrap; }
.cq-voice-session-bar [data-cq-session-mute],.cq-voice-session-bar [data-cq-session-type]{background:#fffaf2;color:#2c261f}
@keyframes cq-voice-pulse { 50% { transform:scale(1.2); box-shadow:0 0 0 11px rgba(185,138,75,.08); } }
.cq-utilities > a[href="repair.html"].cq-btn { display:none; }

@media (max-width: 860px) {
  .cq-concierge-hero__grid { grid-template-columns:1fr; padding:94px 0 76px; }
  .cq-emblem-stage { width:min(76vw,360px); grid-row:1; }
  .cq-concierge-hero__copy { grid-row:2; }
}
@media (max-width: 768px) {
  body { padding-bottom:68px; }
  .cq-intent-dock { display:grid; grid-template-columns:1.35fr 1fr 1fr 1fr; position:fixed; z-index:2000; left:0; right:0; bottom:0; min-height:64px; padding-bottom:env(safe-area-inset-bottom); background:rgba(10,12,14,.96); backdrop-filter:blur(18px); border-top:1px solid rgba(255,255,255,.14); }
  .cq-intent-dock a,.cq-intent-dock button { display:grid; place-items:center; color:#faf9f6; font-size:11px; border-left:1px solid rgba(255,255,255,.08); }
  .cq-intent-dock button { color:#111315; background:linear-gradient(135deg,#f0d7b3,#bd8953); font-weight:800; }
  .cq-voice-session-bar { bottom:calc(76px + env(safe-area-inset-bottom)); width:calc(100vw - 20px); border-radius:16px; }
  .cq-voice-session-bar { grid-template-columns:auto minmax(0,1fr); }
  .cq-voice-session-bar__controls{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);width:100%}
  .cq-voice-session-bar [data-cq-session-status] { max-width:70vw; }
  .cq-voice-session-bar button{min-height:36px;padding:0 8px;font-size:10px}
  .cq-ask-panel { flex-wrap:wrap; }
  .cq-ask-panel .cq-voice-button { flex:0 0 auto; }
  .cq-home-ask { min-width:calc(100% - 100px); }
  .cq-concierge-quick { grid-template-columns:repeat(2,1fr); }
  .cq-photo-ready { display:none; }
  #cq-repair-story + * { min-width:0; }
  .cq-card:has(#cq-repair-story) > div,.cq-card:has(#cq-saved-brand) > div { grid-template-columns:1fr !important; }
  .cq-device-detection { align-items:flex-start; flex-direction:column; }
}
@media (prefers-reduced-motion: reduce) { .cq-emblem-stage:before,.cq-emblem-stage:after { animation:none; } }

/* CELQOR HD scene system — artwork is cropped to remove package labels and keep the subject cinematic. */
.cq-hd-visual {
  position:relative;
  overflow:hidden;
  aspect-ratio:1.48;
  min-height:220px;
  border:1px solid rgba(226,199,164,.22);
  border-radius:clamp(18px,2.2vw,30px);
  background:#0c0f12;
  box-shadow:0 28px 70px rgba(0,0,0,.24),inset 0 0 0 1px rgba(255,255,255,.025);
  isolation:isolate;
}
.cq-hd-visual--wide { aspect-ratio:1.68; }
.cq-hd-visual--graphic-strip { aspect-ratio:1.95; min-height:0; }
.cq-hd-visual--graphic-strip img { object-position:center top; }
.cq-hd-visual.cq-hd-visual--graphic-strip:after { z-index:5; inset:auto 0 5%; height:28%; background:#0c0f12; box-shadow:0 -12px 18px #0c0f12; }
.cq-hd-visual--compact { min-height:180px; margin-top:28px; }
.cq-hd-visual picture,.cq-hd-visual img { display:block; width:100%; height:100%; }
.cq-hd-visual img {
  object-fit:cover;
  object-position:center;
  filter:saturate(.9) contrast(1.03);
  animation:cqHdDrift 14s ease-in-out infinite alternate;
}
.cq-hd-visual:after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.07),transparent 32%,transparent 72%,rgba(194,155,114,.08));
  box-shadow:inset 0 0 70px rgba(0,0,0,.14);
}
.cq-hd-visual--light-sweep:before {
  content:"";
  position:absolute;
  z-index:2;
  inset:-25% auto -25% -35%;
  width:26%;
  transform:skewX(-14deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);
  animation:cqHdSweep 9s ease-in-out infinite;
  pointer-events:none;
}
.cq-emblem-stage--graphic {
  width:clamp(660px,58vw,960px);
  max-width:none;
  aspect-ratio:1.48;
  margin-left:clamp(-150px,-8vw,-70px);
  margin-right:clamp(-250px,-14vw,-100px);
  border-radius:0;
  overflow:visible;
  border:0;
  background:transparent;
  box-shadow:none;
  pointer-events:none;
}
.cq-emblem-stage--graphic:before,.cq-emblem-stage--graphic:after { display:none; }
.cq-emblem-stage--graphic picture,.cq-emblem-stage--graphic img { width:100%; height:100%; }
.cq-emblem-stage--graphic img {
  object-fit:cover;
  mix-blend-mode:screen;
  filter:saturate(.95) contrast(1.05) drop-shadow(0 26px 70px rgba(0,0,0,.45));
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 16%,#000 82%,transparent 100%),radial-gradient(ellipse 76% 82% at 58% 50%,#000 54%,rgba(0,0,0,.94) 68%,rgba(0,0,0,.28) 88%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to bottom,transparent 0,#000 16%,#000 82%,transparent 100%),radial-gradient(ellipse 76% 82% at 58% 50%,#000 54%,rgba(0,0,0,.94) 68%,rgba(0,0,0,.28) 88%,transparent 100%);
  mask-composite:intersect;
 }
.cq-emblem-stage--graphic img { transform:none; }
.cq-pdp-main-view--hd { aspect-ratio:1.65!important; padding:0!important; background:#0c0f12!important; }
.cq-pdp-main-view--hd img { transform:scale(1.1); }
.cq-pdp-thumb img[src*="celqor-hd3d"] { transform:scale(1.32); }
.cq-hd-inline { margin:0 0 34px; }
.cq-footer { position:relative; isolation:isolate; overflow:hidden; }
.cq-footer:before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:linear-gradient(120deg,#0b0d0f,#171a1d);
  opacity:.7;
}
@keyframes cqHdDrift { from { transform:scale(1.11) translate3d(-.35%,0,0); } to { transform:scale(1.14) translate3d(.35%,-.25%,0); } }
@keyframes cqHdSweep { 0%,56% { left:-35%; opacity:0; } 64% { opacity:.65; } 82%,100% { left:116%; opacity:0; } }

@media (max-width:900px) {
  .cq-hd-visual,.cq-hd-visual--wide { aspect-ratio:1.28; min-height:250px; }
  .cq-hd-visual img { animation:none; transform:scale(1.1); }
  .cq-emblem-stage--graphic { width:min(112vw,720px); aspect-ratio:1.48; margin:-30px auto -10px; }
  .cq-emblem-stage--graphic img { transform:none; }
  .cq-hd-visual--graphic-strip { aspect-ratio:1.95; min-height:0; }
  .cq-hd-visual--graphic-strip img { transform:none; }
}
@media (max-width:560px) {
  .cq-hd-visual,.cq-hd-visual--wide { aspect-ratio:1.25; min-height:240px; border-radius:18px; }
  .cq-hd-visual img { object-position:center; }
  .cq-emblem-stage--graphic { width:112%; aspect-ratio:1.48; margin:-26px -6% -12px; border-radius:0; }
  .cq-hd-visual--graphic-strip { aspect-ratio:1.95; min-height:0; }
}
@media (prefers-reduced-motion:reduce) {
  .cq-hd-visual img,.cq-hd-visual--light-sweep:before { animation:none; }
}

.cq-studio-intelligence-hero {
  padding-top:96px;
  background:#000;
  line-height:0;
  overflow:hidden;
}
.cq-studio-intelligence-hero img {
  display:block;
  width:min(100%,1536px);
  height:auto;
  margin:0 auto;
}
.cq-studio-intelligence-art { position:relative; width:min(100%,1536px); margin:0 auto; }
.cq-studio-art-action { position:absolute; z-index:3; left:3.05%; width:15.6%; height:5.5%; border-radius:8px; background:transparent; cursor:pointer; }
.cq-studio-art-action--ask { top:62.75%; }
.cq-studio-art-action--explore { top:70.35%; }
.cq-studio-art-action:hover { background:rgba(226,199,164,.1); box-shadow:0 0 24px rgba(226,199,164,.34); }
.cq-studio-art-action:focus-visible { outline:3px solid #f3c56f; outline-offset:3px; background:rgba(226,199,164,.12); }
.cq-business-hero-grid { min-height:clamp(540px,65vw,760px); display:flex; align-items:center; }
.cq-business-hero-grid .cq-architectural-banner__copy { max-width:850px; }
.cq-form-delivery-note { margin:14px 0 0; padding-top:13px; border-top:1px solid var(--cq-border); color:var(--cq-muted); font-size:12px; line-height:1.55; }

/* Unified request forms */
.cq-form-group { display:grid; gap:8px; margin-bottom:18px; }
.cq-label { display:block; color:var(--cq-ink); font-size:12px; font-weight:750; letter-spacing:.055em; text-transform:uppercase; }
.cq-input,.cq-select,.cq-textarea {
  width:100%;
  max-width:100%;
  color:var(--cq-ink);
  background:#fff;
  border:1px solid rgba(28,31,34,.18);
  border-radius:12px;
  box-shadow:0 1px 0 rgba(255,255,255,.7),inset 0 1px 2px rgba(14,16,18,.025);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.cq-input,.cq-select { min-height:52px; padding:0 14px; }
.cq-select { padding-right:42px; }
.cq-textarea { display:block; min-height:116px; padding:13px 14px; resize:vertical; line-height:1.5; }
.cq-input::placeholder,.cq-textarea::placeholder { color:#8a8b8d; }
.cq-input:focus,.cq-select:focus,.cq-textarea:focus { outline:0; border-color:#b88a59; background:#fff; box-shadow:0 0 0 4px rgba(194,155,114,.17); }
.cq-request-form .cq-btn[type="submit"] { width:100%; justify-content:center; }

@media (max-width:560px) {
  .cq-studio-art-action { width:18%; height:8%; min-height:22px; left:2.5%; }
  .cq-studio-art-action--ask { top:61.25%; }
  .cq-studio-art-action--explore { top:69.15%; }
  .cq-request-form > div[style*="grid-template-columns"] { grid-template-columns:1fr!important; gap:0!important; }
  .cq-input,.cq-select { min-height:50px; }
}
.cq-sr-only {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
@media (max-width:900px) {
  .cq-studio-intelligence-hero { padding-top:70px; }
}

/* ========================================================
   1. HOMEPAGE SPECIFIC
   ======================================================== */
.cq-home-hero {
  min-height: 100vh;
  padding: 160px 0 100px;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  background: radial-gradient(circle at 75% 35%, #25282D 0%, #15181B 45%, #0B0D0F 85%);
}

.cq-home-hero__grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  align-items: center;
  gap: 60px;
}

.cq-home-hero__visual {
  position: relative;
  height: 600px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cq-home-orb {
  position: absolute;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, #E2C7A4 0%, #8F6A44 24%, #25282B 55%, #0C0E10 85%);
  box-shadow: 0 0 140px rgba(194, 155, 114, 0.18), inset -30px -35px 80px rgba(0, 0, 0, 0.7);
  animation: cqFloat 12s ease-in-out infinite alternate;
}

@keyframes cqFloat {
  0% { transform: translateY(0) scale(1); }
  100% { transform: translateY(-16px) scale(1.02); }
}

.cq-hero-brand-card {
  position: absolute;
  bottom: 8%;
  right: 5%;
  width: min(380px, 90%);
  padding: 28px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--radius-lg);
  background: rgba(23, 26, 29, 0.72);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  box-shadow: var(--cq-shadow-dark);
}

.cq-hero-brand-card span {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--cq-gold-start);
  font-weight: 700;
}

.cq-hero-brand-card strong {
  display: block;
  font-family: var(--font-display);
  font-size: 26px;
  font-weight: 600;
  line-height: 1.2;
  margin: 10px 0 6px;
  color: var(--cq-porcelain);
}

.cq-hero-brand-card small {
  color: rgba(250, 249, 246, 0.6);
  font-size: 13px;
}

/* 4 Asymmetric Pillars */
.cq-pillars-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--cq-border);
  margin-top: 48px;
}

.cq-pillar-card {
  padding: 44px 32px 52px;
  border-right: 1px solid var(--cq-border);
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 320px;
}

.cq-pillar-card:first-child {
  border-left: 1px solid var(--cq-border);
}

.cq-pillar-card:hover {
  background: rgba(255, 255, 255, 0.6);
  transform: translateY(-6px);
  box-shadow: var(--cq-shadow-sm);
}

.cq-pillar-card__num {
  font-family: var(--font-display);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.16em;
  color: var(--cq-gold-mid);
}

.cq-pillar-card h3 {
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: 600;
  margin: 32px 0 12px;
  line-height: 1.2;
}

.cq-pillar-card p {
  font-size: 14.5px;
  color: var(--cq-muted);
  line-height: 1.55;
}

/* Split Showcase */
.cq-split-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(40px, 6vw, 100px);
  align-items: center;
}

.cq-split-layout--reverse {
  grid-template-columns: 0.9fr 1.1fr;
}

.cq-material-hero-card {
  background: linear-gradient(145deg, #DFD7CC 0%, #A89B8D 50%, #2A2D30 100%);
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--cq-shadow-lg);
  color: var(--cq-porcelain);
  position: relative;
}

.cq-material-hero-card__visual {
  height: 380px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.cq-material-hero-card__content {
  padding: 36px;
  background: rgba(17, 20, 23, 0.88);
  backdrop-filter: blur(16px);
}

/* Repair 3D Precision Stage */
.cq-repair-stage-box {
  height: 540px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cq-device-mock {
  width: 270px;
  height: 520px;
  border-radius: 46px;
  background: linear-gradient(155deg, #2D3135 0%, #121417 100%);
  border: 3px solid #5A5F64;
  box-shadow: inset 0 0 0 7px #0A0C0E, 0 32px 100px rgba(0, 0, 0, 0.55);
  transform: rotate(-6deg);
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.cq-device-mock__screen {
  position: absolute;
  inset: 10px;
  border-radius: 38px;
  background: radial-gradient(circle at 30% 25%, rgba(226, 199, 164, 0.22) 0%, transparent 40%), linear-gradient(140deg, #1A1D20 0%, #0B0D0F 100%);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 24px 20px;
}

.cq-device-glow-back {
  position: absolute;
  width: 440px;
  height: 440px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(194, 155, 114, 0.28) 0%, transparent 65%);
  filter: blur(28px);
}

/* AI Concierge Task Chips */
.cq-concierge-box {
  text-align: center;
  max-width: 920px;
  margin: 0 auto;
}

.cq-concierge-search-bar {
  display: flex;
  align-items: center;
  background: var(--cq-white);
  border: 1px solid var(--cq-border-strong);
  border-radius: var(--radius-pill);
  padding: 8px 12px 8px 24px;
  margin: 36px 0 28px;
  box-shadow: var(--cq-shadow-md);
  transition: all 0.25s ease;
}

.cq-concierge-search-bar:focus-within {
  border-color: var(--cq-gold-mid);
  box-shadow: 0 8px 32px rgba(194, 155, 114, 0.2);
}

.cq-concierge-search-bar input {
  flex: 1;
  font-size: 16px;
}

.cq-chip-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

.cq-chip {
  padding: 12px 22px;
  border-radius: var(--radius-pill);
  border: 1px solid var(--cq-border);
  background: rgba(255, 255, 255, 0.8);
  font-size: 13.5px;
  font-weight: 550;
  color: var(--cq-graphite);
  transition: all 0.2s ease;
}

.cq-chip:hover {
  background: var(--cq-graphite);
  color: var(--cq-porcelain);
  border-color: var(--cq-graphite);
  transform: translateY(-2px);
}

/* ========================================================
   2. SHOP & PRODUCT DETAIL SPECIFIC
   ======================================================== */
.cq-shop-filter-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--cq-border);
  margin-bottom: 44px;
  flex-wrap: wrap;
}

.cq-category-pills {
  display: flex;
  align-items: center;
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 4px;
}

.cq-pill-btn {
  padding: 9px 20px;
  border-radius: var(--radius-pill);
  font-size: 13.5px;
  font-weight: 600;
  background: rgba(23, 26, 29, 0.05);
  color: var(--cq-graphite);
  transition: all 0.2s ease;
  white-space: nowrap;
}

.cq-pill-btn:hover,
.cq-pill-btn.is-active {
  background: var(--cq-graphite);
  color: var(--cq-porcelain);
}

.cq-products-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 28px;
}

.cq-product-card {
  display: flex;
  flex-direction: column;
  position: relative;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.cq-product-card:hover {
  transform: translateY(-4px);
}

.cq-product-card__stage {
  aspect-ratio: 1 / 1.08;
  border-radius: var(--radius-lg);
  background: #EFEBE5;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  transition: all 0.3s ease;
}

.cq-product-card:hover .cq-product-card__stage {
  background: #E8E2D9;
}

.cq-product-card__stage-art {
  width: 75%;
  height: 75%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.4s ease;
}

.cq-product-card:hover .cq-product-card__stage-art {
  transform: scale(1.05);
}

.cq-product-card__badges {
  position: absolute;
  top: 16px;
  left: 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  z-index: 2;
}

.cq-product-card__info {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.cq-product-card__title {
  font-family: var(--font-display);
  font-size: 19px;
  font-weight: 600;
  color: var(--cq-graphite);
  line-height: 1.25;
}

.cq-product-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 4px;
}

.cq-product-card__price {
  font-size: 15px;
  font-weight: 650;
  color: var(--cq-graphite);
}

.cq-product-card__stock {
  font-size: 12px;
  font-weight: 600;
  color: #15803D;
  display: flex;
  align-items: center;
  gap: 5px;
}

.cq-product-card__stock::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

/* Product Detail Page */
.cq-pdp-layout {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: clamp(40px, 6vw, 80px);
  padding: 140px 0 80px;
}

.cq-pdp-gallery {
  position: sticky;
  top: 110px;
}

.cq-pdp-main-view {
  aspect-ratio: 1 / 1;
  border-radius: var(--radius-xl);
  background: linear-gradient(145deg, #F1ECE4 0%, #E3DCCE 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  box-shadow: var(--cq-shadow-md);
}

.cq-pdp-thumbnails {
  display: flex;
  gap: 14px;
  margin-top: 18px;
}

.cq-pdp-thumb {
  width: 80px;
  height: 80px;
  border-radius: var(--radius-md);
  background: #EFEBE5;
  border: 2px solid transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}

.cq-pdp-thumb.is-active {
  border-color: var(--cq-graphite);
}

.cq-finish-swatches {
  display: flex;
  gap: 12px;
  margin: 14px 0 24px;
}

.cq-swatch {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 2px solid var(--cq-white);
  box-shadow: 0 0 0 1px var(--cq-border-strong);
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative;
}

.cq-swatch.is-active {
  box-shadow: 0 0 0 2px var(--cq-graphite);
}

.cq-spec-table {
  width: 100%;
  border-collapse: collapse;
  margin: 24px 0;
  font-size: 14px;
}

.cq-spec-table tr {
  border-bottom: 1px solid var(--cq-border);
}

.cq-spec-table th {
  text-align: left;
  padding: 14px 0;
  color: var(--cq-muted);
  font-weight: 500;
  width: 35%;
}

.cq-spec-table td {
  padding: 14px 0;
  color: var(--cq-graphite);
  font-weight: 600;
}

/* ========================================================
   3. REPAIR HUB & TRIAGE WIZARD SPECIFIC
   ======================================================== */
.cq-triage-wizard {
  background: var(--cq-white);
  border: 1px solid var(--cq-border);
  border-radius: var(--radius-xl);
  box-shadow: var(--cq-shadow-lg);
  overflow: hidden;
  margin-top: 36px;
}

.cq-wizard-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  background: var(--cq-graphite);
  color: var(--cq-porcelain);
  border-bottom: 1px solid var(--cq-border-dark);
}

.cq-wizard-step-tab {
  padding: 20px 24px;
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 13px;
  font-weight: 600;
  opacity: 0.55;
  transition: all 0.2s ease;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.cq-wizard-step-tab.is-active {
  opacity: 1;
  background: rgba(255, 255, 255, 0.06);
  color: var(--cq-gold-start);
}

.cq-wizard-step-tab.is-complete {
  opacity: 0.85;
}

.cq-step-badge {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
}

.cq-wizard-step-tab.is-active .cq-step-badge {
  background: var(--cq-gradient-gold);
  color: var(--cq-ink);
}

.cq-wizard-content {
  padding: clamp(28px, 4vw, 52px);
}

.cq-selection-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 16px;
  margin: 24px 0 32px;
}

.cq-select-card {
  padding: 24px 20px;
  border: 1px solid var(--cq-border-strong);
  border-radius: var(--radius-md);
  text-align: center;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.cq-select-card:hover {
  border-color: var(--cq-graphite);
  background: rgba(23, 26, 29, 0.02);
  transform: translateY(-2px);
}

.cq-select-card.is-selected {
  border-color: var(--cq-gold-mid);
  background: var(--cq-gradient-gold-subtle);
  box-shadow: 0 0 0 2px var(--cq-gold-mid);
}

.cq-estimate-summary-card {
  background: var(--cq-stone);
  border-radius: var(--radius-lg);
  padding: 32px;
  margin: 28px 0;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 28px;
  align-items: center;
}

.cq-estimate-price {
  font-family: var(--font-display);
  font-size: 42px;
  font-weight: 700;
  color: var(--cq-graphite);
  line-height: 1;
}

/* Repair Tracker Timeline */
.cq-tracker-timeline {
  display: flex;
  justify-content: space-between;
  position: relative;
  margin: 48px 0;
}

.cq-tracker-timeline::before {
  content: '';
  position: absolute;
  top: 20px;
  left: 30px;
  right: 30px;
  height: 2px;
  background: var(--cq-border);
  z-index: 1;
}

.cq-tracker-node {
  position: relative;
  z-index: 2;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  max-width: 140px;
}

.cq-node-icon {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--cq-porcelain);
  border: 2px solid var(--cq-border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 14px;
}

.cq-tracker-node.is-complete .cq-node-icon {
  background: var(--cq-graphite);
  border-color: var(--cq-graphite);
  color: var(--cq-porcelain);
}

.cq-tracker-node.is-current .cq-node-icon {
  background: var(--cq-gradient-gold);
  border-color: var(--cq-gold-mid);
  color: var(--cq-ink);
  box-shadow: 0 0 0 6px rgba(194, 155, 114, 0.2);
}

/* ========================================================
   4. CONNECTIVITY & ADDRESS QUALIFIER SPECIFIC
   ======================================================== */
.cq-connect-speed-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-top: 48px;
}

.cq-plan-card {
  background: var(--cq-white);
  border: 1px solid var(--cq-border);
  border-radius: var(--radius-lg);
  padding: 36px 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
}

.cq-plan-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--cq-shadow-lg);
  border-color: var(--cq-border-strong);
}

.cq-plan-card--featured {
  border-color: var(--cq-gold-mid);
  background: linear-gradient(180deg, #FFFFFF 0%, #FAF6EE 100%);
  box-shadow: var(--cq-shadow-md);
}

.cq-plan-card__speed {
  font-family: var(--font-display);
  font-size: 44px;
  font-weight: 700;
  color: var(--cq-graphite);
  margin: 18px 0 6px;
  line-height: 1;
}

.cq-plan-card__price {
  font-size: 24px;
  font-weight: 700;
  color: var(--cq-graphite);
  margin: 20px 0;
}

/* ========================================================
   5. STUDIO EXPERIENCE SPECIFIC
   ======================================================== */
.cq-studio-gallery-grid {
  display: grid;
  grid-template-columns: 1.3fr 0.7fr;
  grid-template-rows: 320px 320px;
  gap: 24px;
  margin-top: 48px;
}

.cq-studio-space-card {
  border-radius: var(--radius-xl);
  overflow: hidden;
  position: relative;
  box-shadow: var(--cq-shadow-md);
  color: var(--cq-porcelain);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 32px;
  background-size: cover;
  background-position: center;
}

.cq-studio-space-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 13, 15, 0.1) 0%, rgba(11, 13, 15, 0.85) 100%);
}

.cq-studio-space-card > * {
  position: relative;
  z-index: 2;
}

.cq-studio-space-card--large {
  grid-row: span 2;
}

/* Responsive Overrides */
@media (max-width: 1024px) {
  .cq-home-hero__grid,
  .cq-split-layout,
  .cq-split-layout--reverse,
  .cq-pdp-layout,
  .cq-estimate-summary-card {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .cq-pillars-grid,
  .cq-products-grid,
  .cq-connect-speed-cards {
    grid-template-columns: 1fr 1fr;
  }

  .cq-studio-gallery-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }

  .cq-studio-space-card--large {
    grid-row: auto;
    min-height: 400px;
  }
}

@media (max-width: 680px) {
  .cq-pillars-grid,
  .cq-products-grid,
  .cq-connect-speed-cards,
  .cq-wizard-steps {
    grid-template-columns: 1fr;
  }

  .cq-home-hero__visual {
    height: 380px;
  }

  .cq-home-orb {
    width: 320px;
    height: 320px;
  }

  .cq-tracker-timeline {
    flex-direction: column;
    gap: 28px;
    align-items: flex-start;
  }

  .cq-tracker-timeline::before {
    top: 20px;
    bottom: 20px;
    left: 20px;
    width: 2px;
    height: auto;
  }

  .cq-tracker-node {
    flex-direction: row;
    max-width: 100%;
    text-align: left;
  }
}

/* ========================================================
   FINAL MASTER HANDOFF — LOCKED HOME/LANDING VISUAL SYSTEM
   ======================================================== */
.cq-concierge-hero {
  min-height: min(900px, calc(100svh - 24px));
  color: var(--cq-ink);
  background:
    radial-gradient(circle at 72% 28%, rgba(212,175,122,.16), transparent 26%),
    linear-gradient(135deg, #faf9f6 0%, #f3efe8 62%, #ebe4da 100%);
}
.cq-concierge-hero:before { opacity:.22; background:linear-gradient(115deg,transparent 48%,rgba(184,115,51,.08) 49%,transparent 50%); background-size:150px 150px; }
.cq-concierge-hero .cq-h1 { color:var(--cq-ink); font-size:clamp(44px,5.4vw,76px); max-width:720px; }
.cq-concierge-hero .cq-lead { color:var(--cq-muted); }
.cq-ask-panel { max-width:680px; border-color:rgba(28,31,34,.14); background:rgba(255,255,255,.86); box-shadow:0 24px 64px rgba(32,27,21,.1); backdrop-filter:blur(18px); }
.cq-ask-panel .cq-voice-button { color:var(--cq-graphite); border-color:rgba(28,31,34,.18); }
.cq-home-ask { background:var(--cq-ink); color:var(--cq-porcelain); }
.cq-home-quick a,.cq-home-quick button { color:var(--cq-graphite); border-color:rgba(28,31,34,.18); background:rgba(255,255,255,.42); }
.cq-home-quick a:hover,.cq-home-quick button:hover { color:var(--cq-ink); background:#fff; border-color:var(--cq-champagne); }
.cq-emblem-stage--graphic { width:min(720px,54vw); aspect-ratio:1.25; margin:0 -5vw 0 -2vw; }
.cq-emblem-stage--graphic img { object-fit:contain; mix-blend-mode:normal; filter:drop-shadow(0 32px 44px rgba(31,25,20,.18)); -webkit-mask-image:none; mask-image:none; }
.cq-curated-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cq-hd-visual img { object-fit:contain; animation:none; transform:none; }
.cq-footer:before { display:none; }
.cq-architectural-banner { background-image:radial-gradient(circle at 82% 28%,rgba(212,175,122,.16),transparent 24%),linear-gradient(122deg,#0b0d0f 0%,#171a1d 68%,#211d18 100%) !important; background-position:center !important; }
.cq-primary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.cq-products-grid,.cq-business-grid,.cq-option-grid,.cq-appointment-types { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cq-progressive[hidden],[hidden] { display:none !important; }
.cq-process-grid--twelve { grid-template-columns:repeat(3,minmax(0,1fr)); }
.cq-process-grid--twelve .cq-process-step:nth-child(n+4) { background:rgba(255,255,255,.46); }
.cq-manual-device { margin-top:20px; padding-top:18px; border-top:1px solid var(--cq-border); }
.cq-manual-device summary,.cq-support-details summary { cursor:pointer; font-weight:750; }
.cq-manual-device[open] summary,.cq-support-details[open] summary { margin-bottom:18px; }
.cq-check-row { display:flex; align-items:center; gap:8px; margin-top:12px; color:var(--cq-muted); font-size:13px; }
.cq-shop-category-more { display:contents; }
.cq-repair-progress { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; counter-reset:repair; }
.cq-repair-progress li { padding:10px 14px; border:1px solid var(--cq-border); border-radius:999px; background:#fff; font-size:13px; font-weight:700; }
.cq-repair-progress li:before { counter-increment:repair; content:counter(repair) " · "; color:var(--cq-copper); }
.cq-support-details { margin-top:34px; padding:clamp(24px,4vw,36px); background:var(--cq-stone); }
.cq-legal-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:34px; }
.cq-legal-links section { scroll-margin-top:110px; padding:24px 0; border-top:1px solid var(--cq-border); color:var(--cq-muted); font-size:13px; line-height:1.7; }
.cq-legal-links h2 { color:var(--cq-ink); font-size:16px; margin-bottom:8px; }
.cq-material-hero { min-height:clamp(520px,66vw,760px); display:grid; align-items:center; background:linear-gradient(90deg,rgba(11,13,15,.94),rgba(11,13,15,.54)),url('../images/02_Studio_Collection_Leather_AirPods_Macro.webp') center/cover; }
.cq-material-hero__copy { max-width:690px; color:var(--cq-porcelain); }
.cq-material-hero__copy .cq-h1 { color:var(--cq-porcelain); }
.cq-studio-material-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:22px; }
.cq-studio-material-grid article { min-height:360px; border-radius:20px; overflow:hidden; padding:26px; display:flex; flex-direction:column; justify-content:flex-end; color:#fff; background-position:center; background-size:cover; }
.cq-material-strip { display:grid; grid-template-columns:1.25fr .8fr .8fr; gap:14px; margin-bottom:34px; }
.cq-material-strip img { width:100%; height:clamp(180px,24vw,310px); object-fit:cover; border-radius:18px; }
.cq-serviceability-visual { display:flex; align-items:center; justify-content:center; gap:14px; min-height:190px; margin-top:28px; padding:24px; border:1px solid rgba(212,175,122,.26); border-radius:24px; background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(212,175,122,.08)),url('../images/07_Aramid_Carbon_Fiber_Case.webp') center/cover; box-shadow:0 26px 60px rgba(0,0,0,.2); }
.cq-serviceability-visual span { padding:11px 15px; border-radius:999px; color:var(--cq-porcelain); background:rgba(11,13,15,.82); border:1px solid rgba(255,255,255,.16); font-size:12px; font-weight:750; }
.cq-serviceability-visual i { color:var(--cq-champagne); font-style:normal; }
.cq-mailin-details { margin-top:28px; }
.cq-mailin-details summary { cursor:pointer; display:inline-flex; padding:13px 18px; border:1px solid var(--cq-border); border-radius:999px; font-weight:750; }
.cq-mailin-details[open] summary { border-color:var(--cq-champagne); background:#fff; }
.cq-hd-visual--editorial { background:linear-gradient(145deg,#f4f0e9,#e8e0d5); }

@media (max-width:900px) {
  .cq-emblem-stage--graphic { width:min(100%,620px); margin:0 auto 20px; }
  .cq-curated-grid,.cq-studio-material-grid,.cq-primary-grid,.cq-legal-links,.cq-products-grid,.cq-business-grid,.cq-option-grid,.cq-appointment-types { grid-template-columns:1fr; }
  .cq-material-strip { grid-template-columns:1fr; }
  .cq-process-grid--twelve { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cq-footer[data-master="final"] .cq-footer__grid { grid-template-columns:1fr; }
  .cq-footer__brand-col,.cq-footer__col { min-width:0; width:auto; }
}
@media (max-width:560px) {
  .cq-process-grid--twelve { grid-template-columns:1fr; }
}

/* Production refinement layer */
.cq-product-card__stage-art {
  width: 100% !important;
  height: 100% !important;
}

.cq-product-card__stage-art img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  filter: none !important;
}

.cq-pdp-layout > *,
.cq-page-stage__grid > * {
  min-width: 0;
}

.cq-select {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0 40px 0 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: var(--cq-white);
  border: 1px solid var(--cq-border);
  border-radius: var(--radius-sm);
}

.cq-pdp-main-view img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cq-pdp-thumb {
  overflow: hidden;
}

.cq-pdp-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
}

.cq-studio-space-card {
  background-position: center;
}

@media (max-width: 1024px) {
  .cq-repair-proof-grid,
  .cq-service-proof-grid {
    grid-template-columns: 1fr !important;
  }

  .cq-pdp-gallery {
    position: static;
  }
}

@media (max-width: 680px) {
  .cq-pdp-layout {
    padding: 108px 0 54px;
  }

  .cq-pdp-layout .cq-h1 {
    width: 100%;
    max-width: 100%;
    font-size: clamp(30px, 9vw, 38px) !important;
    overflow-wrap: anywhere;
  }

  .cq-pdp-thumbnails {
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .cq-pdp-main-view {
    aspect-ratio: 4 / 3;
  }

  .cq-product-card__stage {
    aspect-ratio: 4 / 3;
  }

  .cq-wizard-step-tab {
    min-height: 54px;
    padding: 14px 18px;
  }

  .cq-category-pills {
    width: 100%;
  }
}

/* Launch-ready service and commerce workflows */
.cq-process-grid,
.cq-connect-flow,
.cq-business-grid,
.cq-account-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.cq-process-step,
.cq-connect-step,
.cq-account-module {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 8px;
  padding: 22px;
  background: var(--cq-white);
  border: 1px solid var(--cq-border);
  border-radius: var(--radius-md);
}

.cq-process-step b,
.cq-connect-step b,
.cq-account-module b,
.cq-appointment-type b {
  color: var(--cq-gold-mid);
  font-size: 12px;
  letter-spacing: .12em;
}

.cq-process-step span,
.cq-connect-step p,
.cq-account-module span,
.cq-business-grid p,
.cq-appointment-type span {
  color: var(--cq-muted);
  font-size: 13px;
  line-height: 1.55;
}

.cq-connect-step.is-active {
  color: var(--cq-porcelain);
  background: var(--cq-graphite);
}

.cq-connect-step.is-active p { color: rgba(250,249,246,.66); }

.cq-option-grid,
.cq-product-story-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.cq-option-card {
  display: flex;
  min-height: 190px;
  cursor: pointer;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  padding: 24px;
  text-align: left;
  background: var(--cq-stone);
  border: 1px solid var(--cq-border);
  border-radius: var(--radius-md);
  transition: transform .2s ease, border-color .2s ease;
}

.cq-option-card:hover { transform: translateY(-3px); border-color: var(--cq-gold-mid); }
.cq-option-card strong { font-size: 18px; }
.cq-option-card p { color: var(--cq-muted); font-size: 13.5px; line-height: 1.55; }

.cq-connect-activation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 26px;
  padding-top: 26px;
  border-top: 1px solid var(--cq-border);
}
.cq-connect-activation[hidden] { display: none; }

.cq-appointment-types {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.cq-appointment-type {
  display: flex;
  min-height: 180px;
  cursor: pointer;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  padding: 26px;
  text-align: left;
  background: var(--cq-white);
  border: 1px solid var(--cq-border);
  border-radius: var(--radius-md);
  transition: transform .2s ease, background .2s ease;
}
.cq-appointment-type:hover { transform: translateY(-3px); background: var(--cq-stone); }
.cq-appointment-type strong { font-size: 18px; }

.cq-compatibility-finder {
  padding: clamp(24px, 4vw, 38px);
  background: var(--cq-stone);
  border: 1px solid var(--cq-border);
  border-radius: var(--radius-lg);
}
.cq-compatibility-finder > div:first-child p,
.cq-compatibility-status { color: var(--cq-muted); font-size: 13.5px; }
.cq-compatibility-controls {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 12px;
  margin: 22px 0 12px;
}
.cq-shop-category-cloud { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:24px; }
.cq-shop-category-cloud button { cursor:pointer; padding:9px 14px; background:var(--cq-stone); border:1px solid var(--cq-border); border-radius:999px; font-size:12.5px; }
.cq-shop-category-cloud button:hover { color:var(--cq-porcelain); background:var(--cq-graphite); }

.cq-product-story-grid figure { overflow:hidden; background:var(--cq-white); border:1px solid var(--cq-border); border-radius:var(--radius-lg); }
.cq-product-story-grid img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.cq-product-story-grid figcaption { display:flex; flex-direction:column; gap:5px; padding:18px; }
.cq-product-story-grid figcaption span { color:var(--cq-muted); font-size:13px; }

.cq-account-module { min-height:150px; transition:transform .2s ease, background .2s ease; }
.cq-account-module:hover { transform:translateY(-3px); background:var(--cq-stone); }
.cq-account-module strong { font-size:18px; }

.cq-tracker-summary { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; padding-bottom:24px; border-bottom:1px solid var(--cq-border-dark); }
.cq-tracker-summary p { color:rgba(250,249,246,.68); margin-top:6px; }
.cq-tracker-summary > div:last-child { text-align:right; }
.cq-tracker-summary > div:last-child strong { display:block; color:var(--cq-gold-start); margin-top:6px; }

.cq-serviceability-visual--large { min-height:220px; align-content:center; justify-content:center; flex-wrap:wrap; padding:34px; }
.cq-address-card--centered { max-width:760px; margin:34px auto 0; }
.cq-connect-hero .cq-page-stage__grid { grid-template-columns:minmax(0,900px); }
.cq-concierge-consultation { display:inline-flex; margin-top:14px; color:var(--cq-gold-start); font-size:13px; font-weight:700; text-decoration:none; }

@media (max-width: 1024px) {
  .cq-process-grid,
  .cq-connect-flow,
  .cq-business-grid,
  .cq-account-grid,
  .cq-appointment-types,
  .cq-option-grid,
  .cq-product-story-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cq-compatibility-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .cq-process-grid,
  .cq-connect-flow,
  .cq-business-grid,
  .cq-account-grid,
  .cq-appointment-types,
  .cq-option-grid,
  .cq-product-story-grid,
  .cq-compatibility-controls { grid-template-columns: minmax(0, 1fr); }
  .cq-connect-activation,
  .cq-tracker-summary { align-items:flex-start; flex-direction:column; }
  .cq-tracker-summary > div:last-child { text-align:left; }
}
