/* ============================================================
   Service Pages - Shared Styles
   ============================================================ */

/* === INTRO === */
.svc-intro{max-width:1400px;margin:0 auto;padding:140px 40px;font-family:'DM Sans',sans-serif;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.svc-intro__content{position:relative}
.svc-intro__ghost{font-family:'Outfit',sans-serif;font-size:160px;font-weight:300;line-height:.85;color:transparent;-webkit-text-stroke:1px rgba(0,0,0,.035);position:absolute;top:-60px;left:-14px;user-select:none;pointer-events:none;z-index:0}
.svc-intro__label{font-family:'Outfit',sans-serif;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#d7261e;margin-bottom:24px;display:flex;align-items:center;gap:12px;position:relative;z-index:1}
.svc-intro__label-line{width:28px;height:1px;background:rgba(215,38,30,.4)}
.svc-intro__title{font-family:'Outfit',sans-serif;font-size:40px;font-weight:300;color:#000;line-height:1.15;letter-spacing:-.01em;margin-bottom:32px;position:relative;z-index:1}
.svc-intro__title strong{font-weight:400}
.svc-intro__text{font-size:16px;line-height:1.8;color:#555;margin-bottom:20px;position:relative;z-index:1;max-width:480px}
.svc-intro__btn{font-family:'DM Sans',sans-serif;font-size:14px;font-weight:600;color:#fff;background:#d7261e;border-radius:8px;padding:15px 30px;text-decoration:none;display:inline-flex;align-items:center;gap:10px;transition:background .3s ease,gap .3s ease;position:relative;z-index:1;margin-top:16px}
.svc-intro__btn:hover{background:#c0211a;gap:14px}
.svc-intro__btn svg{width:12px;height:12px}

/* Intro right: stats */
.svc-intro__stats{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.svc-intro__stat{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:36px 30px;position:relative;overflow:hidden;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1),border-color .3s ease}
.svc-intro__stat:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(0,0,0,.08);border-color:transparent}
.svc-intro__stat::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:3px;background:#d7261e;border-radius:0 0 14px 14px;transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1)}
.svc-intro__stat:hover::after{transform:scaleX(1)}
.svc-intro__stat-num{font-family:'Outfit',sans-serif;font-size:44px;font-weight:300;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(0,0,0,.06);margin-bottom:16px;user-select:none}
.svc-intro__stat-title{font-family:'Outfit',sans-serif;font-size:18px;font-weight:400;color:#000;margin-bottom:6px;line-height:1.3}
.svc-intro__stat-text{font-size:14px;line-height:1.6;color:#777}

/* === SYSTEMS === */
.svc-sys{background:#0d0d0d;padding:120px 0;font-family:'DM Sans',sans-serif;position:relative}
.svc-sys::before,.svc-sys::after{content:'';position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 30%,rgba(255,255,255,.06) 70%,transparent 100%)}
.svc-sys::before{top:0}
.svc-sys::after{bottom:0}
.svc-sys__inner{max-width:1400px;margin:0 auto;padding:0 40px}
.svc-sys__header{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:72px}
.svc-sys__label{font-family:'Outfit',sans-serif;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#d7261e;margin-bottom:20px;display:flex;align-items:center;gap:12px}
.svc-sys__label-line{width:28px;height:1px;background:rgba(215,38,30,.4)}
.svc-sys__title{font-family:'Outfit',sans-serif;font-size:40px;font-weight:300;color:#fff;line-height:1.15}
.svc-sys__title strong{font-weight:400}
.svc-sys__header-text{font-size:16px;line-height:1.75;color:rgba(255,255,255,.38);max-width:440px;margin-left:auto}

/* System rows */
.svc-sys__list{display:flex;flex-direction:column;gap:0}
.svc-sys__row{display:grid;grid-template-columns:60px 1fr 1.2fr 48px;gap:28px;align-items:center;padding:32px 0;border-bottom:1px solid rgba(255,255,255,.06);text-decoration:none;cursor:pointer;transition:padding-left .5s cubic-bezier(.22,1,.36,1);position:relative}
.svc-sys__row:first-child{border-top:1px solid rgba(255,255,255,.06)}
.svc-sys__row:hover{padding-left:14px}
.svc-sys__row:hover::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:#d7261e}
.svc-sys__row-num{font-family:'Outfit',sans-serif;font-size:14px;font-weight:400;color:rgba(255,255,255,.12);transition:color .3s ease}
.svc-sys__row:hover .svc-sys__row-num{color:#d7261e}
.svc-sys__row-title-wrap{display:flex;align-items:center;gap:14px}
.svc-sys__row-title{font-family:'Outfit',sans-serif;font-size:22px;font-weight:300;color:rgba(255,255,255,.45);transition:color .4s ease}
.svc-sys__row:hover .svc-sys__row-title{color:#fff}
.svc-sys__row-tag{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.25);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);padding:3px 8px;border-radius:3px;flex-shrink:0}
.svc-sys__row-desc{font-size:14px;line-height:1.6;color:rgba(255,255,255,.22);transition:color .3s ease;max-width:420px}
.svc-sys__row:hover .svc-sys__row-desc{color:rgba(255,255,255,.42)}
.svc-sys__row-arrow{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;transition:background .3s ease,border-color .3s ease;margin-left:auto}
.svc-sys__row:hover .svc-sys__row-arrow{background:#d7261e;border-color:#d7261e}
.svc-sys__row-arrow svg{width:13px;height:13px;stroke:rgba(255,255,255,.18);transition:stroke .3s ease}
.svc-sys__row:hover .svc-sys__row-arrow svg{stroke:#fff}

/* Expand */
.svc-sys__row-expand{grid-column:1/-1;overflow:hidden;max-height:0;transition:max-height .5s cubic-bezier(.22,1,.36,1)}
.svc-sys__row-expand-inner{padding:4px 0 20px 88px;font-size:14px;line-height:1.75;color:rgba(255,255,255,.35);max-width:560px;border-top:1px solid rgba(255,255,255,.04);padding-top:20px;margin-top:8px}
.svc-sys__row-expand-inner p{margin:0}
.svc-sys__row-expand-inner p+p{margin-top:12px}

/* === PROCESS === */
.svc-process{max-width:1400px;margin:0 auto;padding:140px 40px;font-family:'DM Sans',sans-serif}
.svc-process__header{text-align:center;margin-bottom:80px}
.svc-process__label{font-family:'Outfit',sans-serif;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#d7261e;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:12px}
.svc-process__label-line{width:28px;height:1px;background:rgba(215,38,30,.35)}
.svc-process__title{font-family:'Outfit',sans-serif;font-size:40px;font-weight:300;color:#000;line-height:1.15;max-width:520px;margin:0 auto}
.svc-process__title strong{font-weight:400}

.svc-process__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.svc-process__step{padding:48px 36px;border-left:1px solid rgba(0,0,0,.06);position:relative;transition:background .3s ease}
.svc-process__step:first-child{border-left:none}
.svc-process__step:hover{background:rgba(0,0,0,.015)}
.svc-process__step::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:3px;background:#d7261e;transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.22,1,.36,1)}
.svc-process__step:hover::after{transform:scaleX(1)}
.svc-process__step-num{font-family:'Outfit',sans-serif;font-size:56px;font-weight:300;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(0,0,0,.06);margin-bottom:24px;user-select:none;transition:-webkit-text-stroke-color .3s ease}
.svc-process__step:hover .svc-process__step-num{-webkit-text-stroke-color:rgba(215,38,30,.15)}
.svc-process__step-title{font-family:'Outfit',sans-serif;font-size:20px;font-weight:400;color:#000;margin-bottom:10px;line-height:1.3;transition:color .3s ease}
.svc-process__step:hover .svc-process__step-title{color:#d7261e}
.svc-process__step-text{font-size:14px;line-height:1.7;color:#777}

/* === TRUST === */
.svc-trust{background:#0d0d0d;padding:120px 0;font-family:'DM Sans',sans-serif;position:relative}
.svc-trust::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.06) 30%,rgba(255,255,255,.06) 70%,transparent 100%)}
.svc-trust__inner{max-width:1400px;margin:0 auto;padding:0 40px}
.svc-trust__header{text-align:center;margin-bottom:72px}
.svc-trust__label{font-family:'Outfit',sans-serif;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#d7261e;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:12px}
.svc-trust__label-line{width:28px;height:1px;background:rgba(215,38,30,.35)}
.svc-trust__title{font-family:'Outfit',sans-serif;font-size:36px;font-weight:300;color:#fff;line-height:1.15;max-width:480px;margin:0 auto}
.svc-trust__title strong{font-weight:400}
.svc-trust__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.svc-trust__item{padding:44px 36px;border-left:1px solid rgba(255,255,255,.06);transition:background .4s ease}
.svc-trust__item:first-child{border-left:none}
.svc-trust__item:hover{background:rgba(255,255,255,.02)}
.svc-trust__item-num{font-family:'Outfit',sans-serif;font-size:48px;font-weight:300;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.06);margin-bottom:20px;user-select:none;transition:-webkit-text-stroke-color .3s ease}
.svc-trust__item:hover .svc-trust__item-num{-webkit-text-stroke-color:rgba(215,38,30,.2)}
.svc-trust__item-title{font-family:'Outfit',sans-serif;font-size:18px;font-weight:400;color:#fff;margin-bottom:10px;line-height:1.3;transition:color .3s ease}
.svc-trust__item:hover .svc-trust__item-title{color:#d7261e}
.svc-trust__item-text{font-size:14px;line-height:1.7;color:rgba(255,255,255,.33)}


/* === FAQ === */
.svc-faq { max-width:1400px; margin:0 auto; padding:140px 40px; font-family:'DM Sans',sans-serif }
.svc-faq__layout { display:grid; grid-template-columns:400px 1fr; gap:100px; align-items:start }
.svc-faq__side { position:sticky; top:120px }
.svc-faq__label { font-family:'Outfit',sans-serif; font-size:12px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:#d7261e; margin-bottom:24px; display:flex; align-items:center; gap:12px }
.svc-faq__label-line { width:28px; height:1px; background:rgba(215,38,30,.4) }
.svc-faq__title { font-family:'Outfit',sans-serif; font-size:36px; font-weight:300; color:#000; line-height:1.15; letter-spacing:-.01em; margin-bottom:20px }
.svc-faq__title strong { font-weight:400 }
.svc-faq__desc { font-size:16px; line-height:1.75; color:#666; margin-bottom:40px; max-width:340px }
.svc-faq__cta { font-family:'DM Sans',sans-serif; font-size:14px; font-weight:600; color:#fff; background:#d7261e; border-radius:8px; padding:15px 30px; text-decoration:none; display:inline-flex; align-items:center; gap:10px; transition:background .3s ease,gap .3s ease }
.svc-faq__cta:hover { background:#c0211a; gap:14px }
.svc-faq__cta svg { width:12px; height:12px }
.svc-faq__list { display:flex; flex-direction:column }
.svc-faq__item { border-bottom:1px solid rgba(0,0,0,.06) }
.svc-faq__item:first-child { border-top:1px solid rgba(0,0,0,.06) }
.svc-faq__q { width:100%; display:flex; align-items:center; gap:20px; padding:28px 0; background:none; border:none; cursor:pointer; text-align:left; transition:opacity .3s ease }
.svc-faq__q:hover { opacity:.65 }
.svc-faq__q-num { font-family:'Outfit',sans-serif; font-size:14px; font-weight:400; color:#d7261e; flex-shrink:0; width:28px }
.svc-faq__q-text { font-family:'Outfit',sans-serif; font-size:18px; font-weight:400; color:#000; line-height:1.4; flex-grow:1; transition:color .3s ease }
.svc-faq__item.is-on .svc-faq__q-text { color:#d7261e }
.svc-faq__q-icon { width:34px; height:34px; border-radius:50%; background:#f2f2f2; display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:background .3s ease,transform .45s cubic-bezier(.22,1,.36,1) }
.svc-faq__item.is-on .svc-faq__q-icon { background:#fdecea; transform:rotate(180deg) }
.svc-faq__q-icon svg { width:14px; height:14px; stroke:#999; fill:none; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; transition:stroke .3s ease }
.svc-faq__item.is-on .svc-faq__q-icon svg { stroke:#d7261e }
.svc-faq__a-wrap { overflow:hidden; max-height:0; transition:max-height .5s cubic-bezier(.22,1,.36,1) }
.svc-faq__a { padding:0 0 28px 48px; font-size:15px; line-height:1.75; color:#666; max-width:560px }

/* =========================
   RESPONSIVE
   ========================= */
@media (max-width: 1080px) {
  .svc-intro__stats { grid-template-columns: 1fr; }
  .svc-process__grid { grid-template-columns: repeat(2, 1fr); }
  .svc-process__step:nth-child(3) { border-left: none; }
  .svc-process__step { border-bottom: 1px solid var(--color-border); padding: 36px 28px; }
  .svc-trust__grid { grid-template-columns: repeat(2, 1fr); }
  .svc-trust__item:nth-child(3) { border-left: none; }
  .svc-trust__item { border-bottom: 1px solid rgba(255, 255, 255, 0.06); padding: 36px 28px; }
}

@media (max-width: 1000px) {
  .svc-intro { grid-template-columns: 1fr; gap: 60px; padding: var(--section-pad-y-md) 32px; }
  .svc-intro__title { font-size: 32px; }
  .svc-intro__ghost { font-size: 100px; }
  .svc-sys__header { grid-template-columns: 1fr; gap: 16px; }
  .svc-sys__header-text { margin-left: 0; }
  .svc-sys__row { grid-template-columns: 48px 1fr 48px; }
  .svc-sys__row-desc { display: none; }
  .svc-sys__row-expand-inner { padding-left: 48px; }
  .svc-faq__layout { grid-template-columns: 1fr; gap: 48px; }
  .svc-faq__side { position: static; }
  .svc-faq__title { font-size: 30px; }
}

@media (max-width: 900px) {
  .svc-sys { padding: 100px 0; }
  .svc-sys__inner { padding: 0 var(--section-pad-x-md); }
  .svc-trust { padding: 100px 0; }
  .svc-trust__inner { padding: 0 var(--section-pad-x-md); }
  .svc-process { padding: var(--section-pad-y-md) var(--section-pad-x-md); }
  .svc-faq { padding: var(--section-pad-y-md) var(--section-pad-x-md); }
}

@media (max-width: 640px) {
  .svc-intro { padding: var(--section-pad-y-sm) var(--section-pad-x-sm); }
  .svc-intro__title { font-size: 28px; }
  .svc-intro__ghost { font-size: 72px; top: -28px; }
  .svc-sys__title { font-size: 28px; }
  .svc-sys__row { padding: 24px 0; }
  .svc-sys__row-title { font-size: 18px; }
  .svc-process { padding: var(--section-pad-y-sm) var(--section-pad-x-sm); }
  .svc-process__grid { grid-template-columns: 1fr; }
  .svc-process__step { border-left: none; border-bottom: 1px solid var(--color-border); padding: 28px 0; }
  .svc-process__step:last-child { border-bottom: none; }
  .svc-process__title { font-size: 28px; }
  .svc-trust__grid { grid-template-columns: 1fr; }
  .svc-trust__item { border-left: none; border-bottom: 1px solid rgba(255, 255, 255, 0.06); padding: 28px 0; }
  .svc-trust__item:last-child { border-bottom: none; }
  .svc-trust__title { font-size: 26px; }
  .svc-faq { padding: var(--section-pad-y-sm) var(--section-pad-x-sm); }
  .svc-faq__title { font-size: 26px; }
  .svc-faq__q { padding: 22px 0; gap: 14px; }
  .svc-faq__q-text { font-size: 16px; }
  .svc-faq__a { padding: 0 0 22px 42px; }
}