/* ═══ SERVICE DETAIL PAGE ═══ */
.detail-hero{background:var(--charcoal);padding:var(--sp-xl) 0;position:relative;overflow:hidden}
.detail-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(27,94,138,.15),transparent)}
.dh-inner{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem;display:grid;grid-template-columns:1fr auto;gap:var(--sp-xl);align-items:center}
.dh-top{display:flex;align-items:center;gap:16px;margin-bottom:var(--sp-md)}
.dh-ava{width:72px;height:72px;border-radius:50%;background:rgba(255,255,255,.1);border:2px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:32px;flex-shrink:0}
.dh-name{font-family:'Playfair Display',serif;font-size:var(--fs-xl);font-weight:700;color:var(--white);margin-bottom:4px}
.dh-cat{font-size:14px;color:var(--gold-l);margin-bottom:6px}
.dh-badges{display:flex;gap:6px;flex-wrap:wrap}
.dh-meta{display:flex;gap:var(--sp-lg);margin-bottom:var(--sp-md);flex-wrap:wrap}
.dh-meta-item{display:flex;align-items:center;gap:6px;font-size:13.5px;color:rgba(255,255,255,.7)}
.dh-meta-item strong{color:var(--white)}
.dh-actions{display:flex;flex-direction:column;gap:10px;min-width:200px}
.detail-body{max-width:var(--max-w);margin:0 auto;padding:var(--sp-xl) 1.5rem;display:grid;grid-template-columns:1fr 340px;gap:var(--sp-xl);align-items:start}
.detail-tabs{display:flex;gap:0;border-bottom:2px solid var(--border-light);margin-bottom:var(--sp-lg);overflow-x:auto}
.dt-tab{padding:12px 20px;font-size:14px;font-weight:500;color:var(--stone);border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all .2s;white-space:nowrap}
.dt-tab.active{color:var(--svc);border-bottom-color:var(--svc);font-weight:600}
.dt-panel{display:none}.dt-panel.active{display:block}
.dt-section{margin-bottom:var(--sp-xl)}
.dt-section-title{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;color:var(--charcoal);margin-bottom:var(--sp-md)}
.dt-text{font-size:14px;color:var(--stone);line-height:1.8}
.detail-sidebar{position:sticky;top:calc(var(--nav-h)+var(--mnav-h)+16px)}
.ds-card{background:var(--white);border:1px solid var(--border-light);border-radius:10px;padding:20px;margin-bottom:16px}
.ds-price{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;color:var(--charcoal);margin-bottom:4px}
.ds-price-sub{font-size:13px;color:var(--pebble);margin-bottom:var(--sp-md)}
.ds-list{list-style:none}
.ds-list li{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:13.5px;color:var(--stone);border-bottom:1px solid var(--border-light)}
.ds-list li:last-child{border-bottom:none}
.ds-list-ico{font-size:14px;width:20px;text-align:center;flex-shrink:0}
/* ─── Packages ─── */
.pkg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:var(--sp-xl)}
.pkg-card{border:1.5px solid var(--border-light);border-radius:10px;padding:24px;text-align:center;transition:all .2s;position:relative}
.pkg-card.popular{border-color:var(--svc);box-shadow:var(--shadow-sm)}
.pkg-pop-badge{position:absolute;top:-10px;left:50%;transform:translateX(-50%);font-size:11px}
.pkg-name{font-size:16px;font-weight:700;color:var(--charcoal);margin-bottom:6px}
.pkg-price{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;color:var(--svc);margin-bottom:4px}
.pkg-period{font-size:12px;color:var(--pebble);margin-bottom:14px}
.pkg-features{list-style:none;text-align:left;margin-bottom:var(--sp-md)}
.pkg-features li{padding:5px 0;font-size:13px;color:var(--stone);display:flex;align-items:center;gap:7px}
/* ─── Reviews ─── */
.reviews-summary{display:flex;align-items:center;gap:var(--sp-xl);margin-bottom:var(--sp-lg);padding:var(--sp-md);background:var(--off-white);border-radius:10px}
.rs-big{text-align:center;min-width:100px}
.rs-num{font-family:'Playfair Display',serif;font-size:42px;font-weight:700;color:var(--charcoal)}
.rs-stars{font-size:16px;color:var(--gold);margin-bottom:4px}
.rs-ct{font-size:13px;color:var(--pebble)}
.rs-bars{flex:1}
.rs-bar-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.rs-bar-label{font-size:12px;color:var(--stone);width:14px;text-align:right}
.rs-bar-track{flex:1;height:6px;background:var(--border-light);border-radius:3px;overflow:hidden}
.rs-bar-fill{height:100%;background:var(--gold);border-radius:3px}
.rs-bar-ct{font-size:11px;color:var(--pebble);width:28px}
.review-card{border:1px solid var(--border-light);border-radius:10px;padding:16px;margin-bottom:12px}
.rc-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.rc-ava{width:36px;height:36px;border-radius:50%;background:var(--warm-white);display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}
.rc-name{font-size:14px;font-weight:600;color:var(--charcoal)}
.rc-date{font-size:12px;color:var(--pebble)}
.rc-stars{margin-left:auto;font-size:13px;color:var(--gold)}
.rc-text{font-size:13.5px;color:var(--stone);line-height:1.7}

/* ═══ LISTING FORM ═══ */
.listing-header{background:var(--charcoal);padding:var(--sp-xl) 0;text-align:center}
.listing-header .section-eyebrow{justify-content:center;color:var(--gold-l)}
.listing-header .section-eyebrow::before{background:var(--gold-l)}
.listing-header .section-heading{color:var(--white)}
.listing-header .section-sub{color:rgba(255,255,255,.6);margin:0 auto}
.listing-steps{max-width:900px;margin:-24px auto 0;padding:0 1.5rem;position:relative;z-index:2}
.steps-bar{display:flex;background:var(--white);border-radius:10px;border:1px solid var(--border-light);overflow:hidden;box-shadow:var(--shadow-sm)}
.step-item{flex:1;padding:14px 8px;text-align:center;font-size:12px;font-weight:500;color:var(--pebble);position:relative;cursor:pointer;transition:all .2s}
.step-item.active{background:var(--svc-bg);color:var(--svc);font-weight:600}
.step-item.done{color:var(--green)}
.step-num{display:block;font-family:'Playfair Display',serif;font-size:20px;font-weight:700;margin-bottom:2px}
.listing-form{max-width:900px;margin:var(--sp-xl) auto;padding:0 1.5rem}
.form-section{background:var(--white);border:1px solid var(--border-light);border-radius:10px;padding:var(--sp-lg);margin-bottom:var(--sp-md)}
.fs-title{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:var(--charcoal);margin-bottom:var(--sp-md);display:flex;align-items:center;gap:10px}
.fs-title-ico{font-size:22px}
.form-nav{display:flex;justify-content:space-between;align-items:center;margin-top:var(--sp-lg)}
/* ─── Plan Cards ─── */
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.plan-card{border:2px solid var(--border-light);border-radius:12px;padding:var(--sp-lg);text-align:center;cursor:pointer;transition:all .2s;position:relative}
.plan-card:hover,.plan-card.selected{border-color:var(--svc);box-shadow:var(--shadow-sm)}
.plan-card.selected::after{content:'✓';position:absolute;top:10px;right:10px;width:22px;height:22px;border-radius:50%;background:var(--svc);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center}
.plan-popular{position:absolute;top:-10px;left:50%;transform:translateX(-50%)}
.plan-name{font-size:16px;font-weight:700;color:var(--charcoal);margin-bottom:6px}
.plan-price{font-family:'Playfair Display',serif;font-size:32px;font-weight:700;color:var(--svc);margin-bottom:4px}
.plan-period{font-size:12px;color:var(--pebble);margin-bottom:14px}
.plan-features{list-style:none;text-align:left}
.plan-features li{padding:5px 0;font-size:13px;color:var(--stone);display:flex;align-items:center;gap:7px}

/* ═══ MESSAGES ═══ */
.messages-layout{max-width:var(--max-w);margin:0 auto;padding:var(--sp-md) 1.5rem;display:grid;grid-template-columns:320px 1fr;gap:0;height:calc(100vh - var(--nav-h) - var(--mnav-h) - 40px);border:1px solid var(--border-light);border-radius:12px;overflow:hidden;background:var(--white)}
.msg-sidebar{border-right:1px solid var(--border-light);display:flex;flex-direction:column}
.msg-sb-head{padding:16px;border-bottom:1px solid var(--border-light)}
.msg-sb-title{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:var(--charcoal);margin-bottom:10px}
.msg-search{width:100%;border:1.5px solid var(--border);border-radius:6px;padding:8px 12px;font-size:13px}
.msg-search:focus{border-color:var(--svc)}
.msg-threads{flex:1;overflow-y:auto}
.msg-thread{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-light);transition:background .15s}
.msg-thread:hover{background:var(--off-white)}
.msg-thread.active{background:var(--svc-bg);border-left:3px solid var(--svc)}
.msg-thread.unread{background:var(--gold-bg)}
.mt-ava{width:40px;height:40px;border-radius:50%;background:var(--warm-white);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.mt-body{flex:1;min-width:0}
.mt-name{font-size:13.5px;font-weight:600;color:var(--charcoal);margin-bottom:2px}
.mt-preview{font-size:12.5px;color:var(--pebble);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}
.mt-time{font-size:11px;color:var(--pebble)}
.mt-unread-badge{width:18px;height:18px;border-radius:50%;background:var(--svc);color:#fff;font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:700}
.msg-main{display:flex;flex-direction:column}
.msg-main-head{padding:16px;border-bottom:1px solid var(--border-light);display:flex;align-items:center;gap:12px}
.mmh-ava{width:36px;height:36px;border-radius:50%;background:var(--svc-bg);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.mmh-name{font-size:15px;font-weight:700;color:var(--charcoal)}
.mmh-status{font-size:12px;color:var(--green);display:flex;align-items:center;gap:4px}
.mmh-status::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--green)}
.msg-body{flex:1;overflow-y:auto;padding:var(--sp-md);display:flex;flex-direction:column;gap:12px}
.msg-bubble{max-width:75%;padding:12px 16px;border-radius:12px;font-size:14px;line-height:1.6;position:relative}
.msg-bubble.sent{background:var(--svc);color:#fff;border-radius:12px 12px 4px 12px;align-self:flex-end}
.msg-bubble.received{background:var(--off-white);color:var(--ink);border-radius:12px 12px 12px 4px;border:1px solid var(--border-light);align-self:flex-start}
.msg-time{font-size:10.5px;margin-top:4px;opacity:.65}
.msg-attachment{display:flex;align-items:center;gap:8px;padding:8px 12px;background:rgba(255,255,255,.15);border-radius:6px;margin-top:6px;font-size:12px;cursor:pointer}
.msg-bubble.received .msg-attachment{background:var(--warm-white);border:1px solid var(--border)}
.msg-input-area{padding:12px 16px;border-top:1px solid var(--border-light);display:flex;gap:8px;align-items:center}
.msg-input{flex:1;border:1.5px solid var(--border);border-radius:8px;padding:10px 14px;font-size:14px;resize:none;max-height:80px}
.msg-input:focus{border-color:var(--svc)}
.msg-attach-btn{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--stone);cursor:pointer;transition:all .2s;flex-shrink:0}
.msg-attach-btn:hover{border-color:var(--svc);color:var(--svc)}
.msg-send-btn{width:36px;height:36px;border-radius:50%;background:var(--svc);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:all .2s;flex-shrink:0;border:none}
.msg-send-btn:hover{background:#144b70}
.msg-gdrive-btn{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--stone);cursor:pointer;transition:all .2s;flex-shrink:0}
.msg-gdrive-btn:hover{border-color:var(--svc);color:var(--svc)}

/* ═══ COMPARE ═══ */
.compare-bar{position:fixed;bottom:0;left:0;right:0;background:var(--charcoal);color:var(--white);z-index:800;transform:translateY(100%);transition:transform .3s;box-shadow:0 -4px 20px rgba(0,0,0,.15)}
.compare-bar.show{transform:translateY(0)}
.cb-inner{max-width:var(--max-w);margin:0 auto;padding:12px 1.5rem;display:flex;align-items:center;gap:16px}
.cb-items{display:flex;gap:10px;flex:1}
.cb-item{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);padding:6px 12px;border-radius:6px;font-size:13px}
.cb-item-remove{cursor:pointer;opacity:.6;transition:opacity .15s}
.cb-item-remove:hover{opacity:1}
.cb-compare-btn{background:var(--gold-l);color:var(--charcoal);padding:9px 20px;border-radius:6px;font-size:13px;font-weight:700;cursor:pointer;border:none;transition:all .2s}
.cb-compare-btn:hover{background:var(--gold)}
.cb-clear{font-size:12px;color:rgba(255,255,255,.5);cursor:pointer;text-decoration:underline}
.compare-table-wrap{overflow-x:auto;margin-top:var(--sp-lg)}
.compare-table{width:100%;border-collapse:collapse;min-width:700px}
.compare-table th,.compare-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-light);font-size:14px}
.compare-table th{background:var(--off-white);font-weight:600;color:var(--charcoal);position:sticky;top:0}
.compare-table td{color:var(--stone)}
.ct-label{font-weight:600;color:var(--charcoal);width:180px}

/* ═══ RFQ WIZARD ═══ */
.rfq-wizard{max-width:720px;margin:var(--sp-xl) auto;padding:0 1.5rem}
.rfq-progress{display:flex;align-items:center;margin-bottom:var(--sp-xl)}
.rfq-step{display:flex;align-items:center;gap:8px;flex:1}
.rfq-step-num{width:32px;height:32px;border-radius:50%;border:2px solid var(--border);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;color:var(--pebble);transition:all .2s}
.rfq-step.active .rfq-step-num{background:var(--svc);color:#fff;border-color:var(--svc)}
.rfq-step.done .rfq-step-num{background:var(--green);color:#fff;border-color:var(--green)}
.rfq-step-label{font-size:12.5px;color:var(--pebble)}
.rfq-step.active .rfq-step-label{color:var(--svc);font-weight:600}
.rfq-step-line{flex:1;height:2px;background:var(--border);margin:0 8px}
.rfq-panel{display:none}.rfq-panel.active{display:block}
.rfq-options{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:var(--sp-lg)}
.rfq-opt{border:1.5px solid var(--border);border-radius:8px;padding:14px;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:10px}
.rfq-opt:hover,.rfq-opt.selected{border-color:var(--svc);background:var(--svc-bg)}
.rfq-opt-ico{font-size:22px}
.rfq-opt-name{font-size:14px;font-weight:600;color:var(--charcoal)}
.rfq-opt-desc{font-size:12px;color:var(--pebble)}
.rfq-nav{display:flex;justify-content:space-between;margin-top:var(--sp-lg)}

/* ═══ ANALYTICS ═══ */
.analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.an-card{background:var(--white);border:1px solid var(--border-light);border-radius:10px;padding:20px}
.an-card-full{grid-column:1/-1}
.an-title{font-size:14px;font-weight:700;color:var(--charcoal);margin-bottom:var(--sp-md);display:flex;align-items:center;justify-content:space-between}
.an-period{font-size:12px;color:var(--pebble);cursor:pointer}
.chart-area{height:200px;display:flex;align-items:flex-end;gap:8px;padding:0 8px}
.chart-bar{flex:1;background:var(--svc-bg);border-radius:4px 4px 0 0;position:relative;transition:height .4s;min-height:4px;cursor:pointer}
.chart-bar:hover{background:var(--svc)}
.chart-bar-label{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);font-size:10px;color:var(--pebble);white-space:nowrap}
.chart-bar-val{position:absolute;top:-18px;left:50%;transform:translateX(-50%);font-size:11px;font-weight:600;color:var(--charcoal);opacity:0;transition:opacity .2s}
.chart-bar:hover .chart-bar-val{opacity:1}
.traffic-list{display:flex;flex-direction:column;gap:10px}
.tl-row{display:flex;align-items:center;gap:10px}
.tl-label{font-size:13px;color:var(--stone);width:100px}
.tl-bar{flex:1;height:8px;background:var(--border-light);border-radius:4px;overflow:hidden}
.tl-fill{height:100%;border-radius:4px}
.tl-val{font-size:12px;font-weight:600;color:var(--charcoal);width:36px;text-align:right}

/* ═══ VERIFICATION ═══ */
.verify-steps{max-width:700px;margin:var(--sp-xl) auto;padding:0 1.5rem}
.vs-step{display:flex;gap:16px;margin-bottom:var(--sp-lg);padding:var(--sp-md);border:1px solid var(--border-light);border-radius:10px;transition:all .2s}
.vs-step.current{border-color:var(--svc);background:var(--svc-bg)}
.vs-step.completed{border-color:var(--green);background:rgba(34,117,58,.04)}
.vs-num{width:36px;height:36px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--pebble);flex-shrink:0}
.vs-step.current .vs-num{background:var(--svc);color:#fff;border-color:var(--svc)}
.vs-step.completed .vs-num{background:var(--green);color:#fff;border-color:var(--green)}
.vs-title{font-size:15px;font-weight:700;color:var(--charcoal);margin-bottom:4px}
.vs-desc{font-size:13px;color:var(--stone);line-height:1.6}
.vs-status{margin-left:auto;display:flex;align-items:center;font-size:12px;font-weight:600;gap:5px;flex-shrink:0}

/* ═══ CATEGORY LANDING ═══ */
.cat-landing-hero{background:var(--svc-bg);padding:var(--sp-xl) 0;border-bottom:1px solid var(--svc-pale)}
.clh-inner{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;gap:var(--sp-lg)}
.clh-ico{font-size:52px}
.clh-title{font-family:'Playfair Display',serif;font-size:var(--fs-2xl);font-weight:700;color:var(--charcoal);margin-bottom:6px}
.clh-desc{font-size:var(--fs-base);color:var(--stone);max-width:480px}
.clh-stats{margin-left:auto;display:flex;gap:var(--sp-lg)}
.clhs-item{text-align:center}
.clhs-val{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;color:var(--svc)}
.clhs-label{font-size:12px;color:var(--pebble);text-transform:uppercase;letter-spacing:.5px}
