/* ============================================================
   SHREERAMTECH SOLUTIONS — LOCAL SEO LANDING PAGE STYLES
   Shared CSS for all Maharashtra location pages
   Colors: #0a1429 → #12284c | Accent: #ff520d | Font: Montserrat
   ============================================================ */

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }

:root {
  --accent:       #ff520d;
  --accent-glow:  rgba(255,82,13,0.35);
  --accent-dim:   rgba(255,82,13,0.12);
  --bg1:          #0a1429;
  --bg2:          #12284c;
  --text:         #e8f0ff;
  --text-dim:     rgba(232,240,255,0.42);
  --glass:        rgba(255,255,255,0.03);
  --gb:           rgba(255,255,255,0.07);
  --font:         'Montserrat', sans-serif;
}

html { scroll-behavior: smooth; }

body {
  font-family: var(--font);
  background: linear-gradient(135deg, var(--bg1) 0%, var(--bg2) 100%);
  background-attachment: fixed;
  color: var(--text);
  overflow-x: hidden;
  position: relative;
}

body::after {
  content:'';
  position:fixed; inset:0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");
  pointer-events:none; z-index:0; opacity:0.4;
}

#sr-canvas {
  position:fixed; inset:0; z-index:0;
  pointer-events:none; width:100%; height:100%;
}

.sr-z { position:relative; z-index:2; }

/* ── EYEBROW ── */
.sr-eyebrow {
  font-size:10px; font-weight:700; letter-spacing:0.3em;
  color:var(--accent); text-transform:uppercase;
  display:flex; align-items:center; gap:12px; margin-bottom:20px;
}
.sr-eyebrow::before {
  content:''; width:32px; height:1.5px;
  background:var(--accent); flex-shrink:0;
}

/* ── HEADINGS ── */
.sr-h1 {
  font-weight:900; letter-spacing:-0.04em;
  line-height:0.93; font-size:clamp(36px,7vw,82px);
  margin-bottom:24px;
}
.sr-h1 em { font-style:normal; display:block; color:transparent; -webkit-text-stroke:1.5px var(--accent); }
.sr-h1 strong { display:block; font-weight:900; }

.sr-h2 {
  font-weight:900; letter-spacing:-0.03em;
  line-height:1.02; font-size:clamp(24px,4vw,54px);
  margin-bottom:20px;
}
.sr-h2 .ghost { color:transparent; -webkit-text-stroke:1px rgba(255,255,255,0.13); }

.sr-h3 {
  font-size:20px; font-weight:800;
  letter-spacing:-0.02em; margin-bottom:12px;
  line-height:1.2;
}

.sr-desc {
  font-size:13px; font-weight:400;
  line-height:1.9; color:var(--text-dim); margin-bottom:28px;
}

.sr-body {
  font-size:13.5px; font-weight:400;
  line-height:2; color:var(--text-dim);
}
.sr-body + .sr-body { margin-top:14px; }
.sr-body strong { color:var(--text); font-weight:700; }
.sr-body em { color:var(--accent); font-style:normal; }

/* ── BUTTONS ── */
.sr-btn {
  display:inline-flex; align-items:center; gap:12px;
  background:var(--accent); color:#fff;
  font-family:var(--font); font-size:11px; font-weight:800;
  letter-spacing:0.12em; text-transform:uppercase;
  padding:15px 36px; border:none; cursor:pointer;
  text-decoration:none;
  clip-path:polygon(10px 0%,100% 0%,calc(100% - 10px) 100%,0% 100%);
  position:relative; overflow:hidden;
  transition:box-shadow 0.3s, transform 0.2s;
}
.sr-btn::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,0.18),transparent);
  transform:translateX(-100%); transition:transform 0.5s;
}
.sr-btn:hover::before { transform:translateX(100%); }
.sr-btn:hover {
  box-shadow:0 0 48px var(--accent-glow),0 0 90px rgba(255,82,13,0.15);
  transform:translateY(-2px);
}
.sr-btn__arr {
  width:18px; height:1px; background:currentColor;
  position:relative; transition:width 0.3s; flex-shrink:0;
}
.sr-btn__arr::after {
  content:''; position:absolute; right:0; top:-4px;
  width:8px; height:8px;
  border-top:1.5px solid currentColor;
  border-right:1.5px solid currentColor;
  transform:rotate(45deg);
}
.sr-btn:hover .sr-btn__arr { width:28px; }

.sr-btn-ghost {
  display:inline-flex; align-items:center; gap:10px;
  background:transparent; color:var(--text-dim);
  font-family:var(--font); font-size:11px; font-weight:700;
  letter-spacing:0.1em; text-transform:uppercase;
  padding:14px 30px; border:1px solid var(--gb); cursor:pointer;
  text-decoration:none;
  clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
  transition:border-color 0.3s, color 0.3s;
}
.sr-btn-ghost:hover { border-color:rgba(255,255,255,0.25); color:var(--text); }


/* ══════════════════════════════════════════════
   BREADCRUMB
   ══════════════════════════════════════════════ */
.sr-breadcrumb {
  padding:14px 80px; display:none;
  align-items:center; gap:8px;
  border-bottom:1px solid var(--gb);
}
.sr-bc a {
  font-size:10px; font-weight:600;
  letter-spacing:0.06em; text-transform:uppercase;
  color:var(--text-dim); text-decoration:none;
  transition:color 0.2s;
}
.sr-bc a:hover { color:var(--accent); }
.sr-bc-sep { font-size:10px; color:rgba(255,255,255,0.15); }
.sr-bc-cur { font-size:10px; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; color:var(--accent); }


/* ══════════════════════════════════════════════
   HERO
   ══════════════════════════════════════════════ */
.sr-hero {
  display:grid; grid-template-columns:1fr 1fr;
  gap:60px; align-items:center;
  padding:100px 80px 86px; max-width:1320px; margin:0 auto;
}

/* orbit rings */
.sr-orbit {
  position:absolute; border-radius:50%;
  border:1px solid rgba(255,82,13,0.07);
  animation:srSpin linear infinite;
  pointer-events:none; top:50%; left:50%;
}
.sr-orbit-1 { width:470px;height:470px;margin:-235px;animation-duration:24s; }
.sr-orbit-2 { width:330px;height:330px;margin:-165px;border-color:rgba(100,180,255,0.05);animation-duration:15s;animation-direction:reverse; }
.sr-orbit-dot {
  position:absolute; top:-5px; left:50%; margin-left:-5px;
  width:10px; height:10px; border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 12px var(--accent),0 0 28px var(--accent-glow);
}
.sr-orbit-dot-b { background:rgba(100,180,255,0.9); box-shadow:0 0 12px rgba(100,180,255,0.7); top:auto; bottom:-5px; }

/* hero left */
.sr-hero__left .sr-eyebrow { opacity:0; animation:srFU 0.8s 0.2s forwards; }
.sr-h1 { opacity:0; animation:srFU 0.8s 0.4s forwards; }
.sr-hero__left .sr-desc { opacity:0; animation:srFU 0.8s 0.55s forwards; max-width:460px; }
.sr-hero__pills { opacity:0; animation:srFU 0.8s 0.7s forwards; }
.sr-hero__cta { opacity:0; animation:srFU 0.8s 0.85s forwards; }
.sr-hero__stats { opacity:0; animation:srFU 0.8s 1s forwards; }

/* pills */
.sr-pills { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:36px; }
.sr-pill {
  font-size:10px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase;
  padding:6px 14px; border-radius:3px; border:1px solid var(--gb);
  background:var(--glass); color:var(--text-dim);
  transition:border-color 0.3s,color 0.3s,box-shadow 0.3s,transform 0.2s;
  cursor:default; display:flex; align-items:center; gap:6px;
}
.sr-pill:hover { transform:translateY(-2px); }
.sr-pill .dot { width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0; }
.p-web  { color:rgba(97,218,251,0.85); border-color:rgba(97,218,251,0.2); }  .p-web:hover  { border-color:#61dafb;color:#61dafb;box-shadow:0 0 16px rgba(97,218,251,.3); }
.p-and  { color:rgba(61,220,132,0.85); border-color:rgba(61,220,132,0.2); }  .p-and:hover  { border-color:#3ddc84;color:#3ddc84;box-shadow:0 0 16px rgba(61,220,132,.3); }
.p-soft { color:rgba(255,82,13,0.95);  border-color:rgba(255,82,13,0.25); }  .p-soft:hover { border-color:var(--accent);color:var(--accent);box-shadow:0 0 16px var(--accent-glow); }
.p-seo  { color:rgba(255,212,59,0.85); border-color:rgba(255,212,59,0.2); }  .p-seo:hover  { border-color:#ffd43b;color:#ffd43b;box-shadow:0 0 16px rgba(255,212,59,.3); }
.p-ui   { color:rgba(192,132,252,0.85);border-color:rgba(192,132,252,0.2);} .p-ui:hover   { border-color:#c084fc;color:#c084fc;box-shadow:0 0 16px rgba(192,132,252,.3); }

/* stats */
.sr-stats { display:flex;gap:0;margin-top:44px;padding-top:30px;border-top:1px solid var(--gb); }
.sr-stat { flex:1;padding-right:22px;border-right:1px solid var(--gb);margin-right:22px; }
.sr-stat:last-child { border:none;margin:0;padding:0; }
.sr-stat__num { font-size:clamp(24px,3vw,38px);font-weight:900;letter-spacing:-0.03em;line-height:1; }
.sr-stat__num span { color:var(--accent); }
.sr-stat__lbl { font-size:9px;font-weight:600;letter-spacing:0.2em;text-transform:uppercase;color:var(--text-dim);margin-top:6px; }

/* hero right */
.sr-hero__right { position:relative;height:500px;display:flex;align-items:center;justify-content:center;perspective:1100px; }

.sr-trio { position:relative;width:340px;height:380px;transform-style:preserve-3d;opacity:0;animation:srDevIn 1.1s 0.8s cubic-bezier(0.16,1,0.3,1) forwards; }

.sr-c3d {
  position:absolute; background:linear-gradient(145deg,#0c1e3a,#182e52);
  border-radius:12px; padding:22px 20px;
  transition:transform 0.4s,box-shadow 0.4s;
}
.sr-c3d:hover { transform:translateY(-10px) !important; }
.c3d-web  { top:0;left:0;width:220px;border:1.5px solid rgba(97,218,251,0.22);box-shadow:0 24px 60px rgba(0,0,0,0.5),0 0 24px rgba(97,218,251,0.04); }
.c3d-and  { top:85px;right:0;width:200px;border:1.5px solid rgba(61,220,132,0.22);box-shadow:0 24px 60px rgba(0,0,0,0.45);transform:translateZ(-20px); }
.c3d-soft { bottom:8px;left:15px;width:215px;border:1.5px solid rgba(255,82,13,0.22);box-shadow:0 20px 50px rgba(0,0,0,0.5);transform:translateZ(-40px); }
.sr-c3d__ico { width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:17px;margin-bottom:14px; }
.ic-web  { background:rgba(97,218,251,0.1); border:1px solid rgba(97,218,251,0.2); }
.ic-and  { background:rgba(61,220,132,0.1); border:1px solid rgba(61,220,132,0.2); }
.ic-soft { background:rgba(255,82,13,0.12); border:1px solid rgba(255,82,13,0.2); }
.sr-c3d__ttl { font-size:12px;font-weight:800;letter-spacing:-0.01em;margin-bottom:9px; }
.sr-c3d__line { height:2.5px;border-radius:2px;background:rgba(255,255,255,0.07);margin-bottom:5px; }
.sr-c3d__bar { height:2.5px;border-radius:2px;margin-bottom:5px;animation:srPulse 2.2s ease-in-out infinite; }
.bar-web  { width:72%;background:rgba(97,218,251,0.5); }
.bar-and  { width:62%;background:rgba(61,220,132,0.5);animation-delay:0.4s; }
.bar-soft { width:80%;background:rgba(255,82,13,0.5);animation-delay:0.8s; }
.sr-c3d__badge { display:inline-flex;align-items:center;gap:5px;font-size:8px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:4px 9px;border-radius:3px;margin-top:10px; }
.bdg-web  { background:rgba(97,218,251,0.1); color:rgba(97,218,251,0.85); }
.bdg-and  { background:rgba(61,220,132,0.1); color:rgba(61,220,132,0.85); }
.bdg-soft { background:rgba(255,82,13,0.1);  color:var(--accent); }
.bdg-dot  { width:5px;height:5px;border-radius:50%;background:currentColor; }

/* floating tags */
.sr-ftag {
  position:absolute; font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;
  padding:7px 12px; background:rgba(10,20,41,0.9); border:1px solid var(--gb);
  backdrop-filter:blur(12px); border-radius:4px; color:var(--text-dim);
  display:flex;align-items:center;gap:6px; white-space:nowrap;
  animation:srFloat 4s ease-in-out infinite; pointer-events:none;
}
.sr-ftag .dot { width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0; }
.ft-city  { top:6%;   left:-16%; color:var(--accent);         border-color:rgba(255,82,13,.3);     animation-delay:0s;   }
.ft-react { top:30%;  right:-13%;color:#61dafb;               border-color:rgba(97,218,251,.25);   animation-delay:0.8s; }
.ft-kt    { bottom:30%;left:-20%;color:#3ddc84;               border-color:rgba(61,220,132,.25);   animation-delay:0.4s; }
.ft-aws   { bottom:10%;right:-9%;color:rgba(232,240,255,0.6); border-color:var(--gb);              animation-delay:1.2s; }


/* ══════════════════════════════════════════════
   TICKER
   ══════════════════════════════════════════════ */
.sr-ticker { padding:18px 0;overflow:hidden;border-top:1px solid var(--gb);border-bottom:1px solid var(--gb);background:rgba(255,82,13,0.022); }
.sr-ticker__track { display:flex;align-items:center;width:max-content;animation:srMarq 34s linear infinite; }
.sr-ticker__item { font-size:10px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-dim);padding:0 28px;display:flex;align-items:center;gap:12px;white-space:nowrap;transition:color 0.3s; }
.sr-ticker__item:hover { color:var(--accent); }
.sr-ticker__sep { color:var(--accent); font-size:11px; }


/* ══════════════════════════════════════════════
   SHARED SECTION WRAPPER
   ══════════════════════════════════════════════ */
.sr-section {
  padding:90px 80px; max-width:1320px; margin:0 auto;
}
.sr-section-full {
  padding:0; background:rgba(0,0,0,0.16); border-top:1px solid var(--gb);
}
.sr-section-full .sr-section { padding:90px 80px; }
.sr-sep { border:none;border-top:1px solid var(--gb); }


/* ══════════════════════════════════════════════
   ABOUT / INTRO GRID
   ══════════════════════════════════════════════ */
.sr-intro-grid { display:grid;grid-template-columns:1.15fr 1fr;gap:72px;align-items:start;margin-top:52px; }
.sr-mini-cards { display:grid;gap:14px; }
.sr-mc {
  padding:20px 24px; background:var(--glass); border:1px solid var(--gb);
  border-radius:4px; transition:border-color 0.3s,background 0.3s,transform 0.3s; cursor:default;
}
.sr-mc:hover { border-color:rgba(255,82,13,0.3);background:rgba(255,82,13,0.04);transform:translateX(6px); }
.sr-mc__n   { font-size:9px;font-weight:700;letter-spacing:0.24em;color:var(--accent);opacity:0.55;margin-bottom:8px;text-transform:uppercase; }
.sr-mc__ttl { font-size:14px;font-weight:800;letter-spacing:-0.01em;margin-bottom:6px; }
.sr-mc__txt { font-size:11.5px;font-weight:400;line-height:1.8;color:var(--text-dim); }


/* ══════════════════════════════════════════════
   SERVICE BLOCKS
   ══════════════════════════════════════════════ */
.sr-svc-wrap { margin-top:56px;display:grid;gap:0; }
.sr-svc {
  display:grid; grid-template-columns:1fr 1fr;
  gap:72px; align-items:center;
  padding:60px 0; border-top:1px solid var(--gb);
}
.sr-svc:first-child { border-top:none;padding-top:20px; }
.sr-svc--rev { direction:rtl; }
.sr-svc--rev > * { direction:ltr; }

.sr-svc__num { font-size:10px;font-weight:700;letter-spacing:0.24em;text-transform:uppercase;color:var(--accent);opacity:0.5;margin-bottom:12px; }

.sr-checks { list-style:none;display:grid;gap:10px;margin-top:20px;margin-bottom:26px; }
.sr-checks li { display:flex;align-items:flex-start;gap:10px;font-size:12.5px;font-weight:500;color:var(--text-dim);line-height:1.65; }
.sr-chk { flex-shrink:0;width:17px;height:17px;background:var(--accent-dim);border:1px solid rgba(255,82,13,0.3);border-radius:3px;display:flex;align-items:center;justify-content:center;margin-top:1px;font-size:9px;color:var(--accent);font-weight:900; }

.sr-tags { display:flex;flex-wrap:wrap;gap:6px;margin-top:20px; }
.sr-tag { font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:5px 11px;border-radius:2px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.07);color:var(--text-dim);transition:all 0.2s;cursor:default; }
.sr-tag:hover { border-color:var(--accent);color:var(--accent); }

/* service visual panels */
.sr-vis { position:relative;display:flex;align-items:center;justify-content:center;height:340px; }

/* browser */
.sr-browser { width:100%;max-width:360px;background:linear-gradient(145deg,#0c1e3a,#182e52);border:1.5px solid rgba(97,218,251,0.18);border-radius:10px;overflow:hidden;box-shadow:0 32px 80px rgba(0,0,0,0.55); }
.sr-browser__bar { background:rgba(0,0,0,0.3);padding:10px 14px;display:flex;align-items:center;gap:7px;border-bottom:1px solid rgba(255,255,255,0.05); }
.s-dot-r { width:8px;height:8px;border-radius:50%;background:rgba(255,82,13,0.6); }
.s-dot-y { width:8px;height:8px;border-radius:50%;background:rgba(255,212,59,0.4); }
.s-dot-g { width:8px;height:8px;border-radius:50%;background:rgba(61,220,132,0.4); }
.s-url { flex:1;height:18px;background:rgba(255,255,255,0.04);border-radius:3px;margin:0 8px;display:flex;align-items:center;padding:0 8px;font-size:9px;color:rgba(255,255,255,0.2); }
.sr-browser__body { padding:16px; }
.scl { height:2.5px;border-radius:2px;margin-bottom:6px;animation:srPulse 2.8s ease-in-out infinite; }
.cl1  {width:46%;background:#c586c0;}            .cl2  {width:64%;background:#569cd6;margin-left:13px;animation-delay:.12s;}
.cl3  {width:50%;background:#4ec9b0;margin-left:13px;animation-delay:.24s;} .cl4  {height:8px;background:none;}
.cl5  {width:70%;background:var(--accent);opacity:.85;animation-delay:.36s;} .cl6  {width:42%;background:#ffd43b;margin-left:13px;animation-delay:.48s;}
.cl7  {width:56%;background:#61dafb;margin-left:13px;animation-delay:.6s;}  .cl8  {height:8px;background:none;}
.cl9  {width:62%;background:#6a9955;animation-delay:.72s;}                   .cl10 {width:48%;background:#3c873a;margin-left:13px;animation-delay:.84s;}
.cl11 {height:8px;background:none;}                                           .cl12 {width:60%;background:#569cd6;animation-delay:.18s;}
.cl13 {width:44%;background:#c586c0;margin-left:13px;animation-delay:.3s;}
.cl-cur{width:7px;height:12px;background:var(--accent);border-radius:1px;margin-left:13px;animation:srBlink 1s step-end infinite;}

/* phone */
.sr-phone-pair { display:flex;align-items:center;justify-content:center;gap:18px; }
.sr-phone { width:102px;height:194px;background:linear-gradient(145deg,#0c1e3a,#182e52);border:1.5px solid rgba(61,220,132,0.22);border-radius:18px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,0.55);position:relative;flex-shrink:0; }
.sr-phone::before { content:'';position:absolute;top:9px;left:50%;transform:translateX(-50%);width:28px;height:3px;background:rgba(61,220,132,0.25);border-radius:3px; }
.sr-phone__s { position:absolute;inset:20px 7px 7px;background:#040d1a;border-radius:9px;overflow:hidden;padding:8px; }
.sp-bar { height:14px;background:rgba(61,220,132,0.45);border-radius:3px;margin-bottom:6px;animation:srPulse 2.5s ease-in-out infinite; }
.sp-row { display:flex;gap:5px;margin-bottom:6px; }
.sp-bl  { height:24px;flex:1;border-radius:3px;background:rgba(61,220,132,0.14);animation:srPulse 2.5s ease-in-out infinite; }
.sp-bl:nth-child(2){animation-delay:.3s;background:rgba(255,82,13,0.1);}
.sp-ln  { height:2.5px;margin-bottom:6px;border-radius:2px;background:rgba(255,255,255,0.1);animation:srPulse 2.5s ease-in-out infinite; }
.sp-ln.w75{width:75%;animation-delay:.2s;}
.sp-mb  { height:8px;border-radius:3px;background:rgba(61,220,132,0.22);margin-bottom:5px;animation:srPulse 2.5s ease-in-out infinite;animation-delay:.6s; }
.sr-phone-2 { transform:rotate(-8deg) translateY(18px);opacity:0.72;border-color:rgba(97,218,251,0.18); }
.sr-phone-2::before { background:rgba(97,218,251,0.2); }

/* dashboard */
.sr-dash { width:100%;max-width:360px;background:linear-gradient(145deg,#0c1e3a,#182e52);border:1.5px solid rgba(255,82,13,0.18);border-radius:10px;overflow:hidden;box-shadow:0 32px 80px rgba(0,0,0,0.55); }
.sr-dash__bar { background:rgba(0,0,0,0.3);padding:10px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,0.05); }
.sr-dash__ttl { font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-dim); }
.sr-dash__body { padding:14px; }
.sr-dg { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px; }
.sr-dm { background:rgba(255,82,13,0.06);border:1px solid rgba(255,82,13,0.12);border-radius:6px;padding:10px;animation:srPulse 3s ease-in-out infinite; }
.sr-dm:nth-child(2){animation-delay:.4s;background:rgba(97,218,251,0.06);border-color:rgba(97,218,251,0.12);}
.sr-dm:nth-child(3){animation-delay:.8s;background:rgba(61,220,132,0.06);border-color:rgba(61,220,132,0.12);}
.sr-dm:nth-child(4){animation-delay:1.2s;background:rgba(255,212,59,0.06);border-color:rgba(255,212,59,0.12);}
.sr-dm__l { font-size:7px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-dim);margin-bottom:5px; }
.sr-dm__v { font-size:15px;font-weight:900;letter-spacing:-0.02em; }
.sr-dchart { height:52px;display:flex;align-items:flex-end;gap:4px; }
.sr-db { flex:1;border-radius:2px 2px 0 0;animation:srPulse 2.5s ease-in-out infinite; }


/* ══════════════════════════════════════════════
   WHY BEST IN [CITY] — 6-CARD GRID
   ══════════════════════════════════════════════ */
.sr-why-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:48px; }
.sr-why {
  padding:36px 28px; background:var(--glass); border:1px solid var(--gb);
  position:relative;overflow:hidden; transition:border-color 0.4s,background 0.4s,transform 0.3s; cursor:default;
}
.sr-why:hover { border-color:rgba(255,82,13,0.3);background:rgba(255,82,13,0.04);transform:translateY(-6px); }
.sr-why::before { content:'';position:absolute;top:-60px;left:-60px;width:160px;height:160px;background:radial-gradient(circle,rgba(255,82,13,0.05),transparent 70%);opacity:0;transition:opacity 0.4s;pointer-events:none; }
.sr-why:hover::before { opacity:1; }
.sr-why__n    { font-size:9px;font-weight:700;letter-spacing:0.24em;color:var(--accent);opacity:0.5;margin-bottom:18px;text-transform:uppercase; }
.sr-why__ico  { font-size:26px;margin-bottom:14px; }
.sr-why__ttl  { font-size:15px;font-weight:800;letter-spacing:-0.01em;margin-bottom:10px; }
.sr-why__txt  { font-size:12px;font-weight:400;line-height:1.9;color:var(--text-dim); }


/* ══════════════════════════════════════════════
   PROCESS STEPS
   ══════════════════════════════════════════════ */
.sr-steps { display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:48px; }
.sr-step {
  padding:32px 24px; border:1px solid var(--gb); background:var(--glass);
  position:relative;overflow:hidden; transition:border-color 0.4s,background 0.4s; cursor:default;
}
.sr-step:hover { border-color:rgba(255,82,13,0.28);background:rgba(255,82,13,0.04); }
.sr-step__conn { position:absolute;top:32px;right:-1px;width:18px;height:1px;background:var(--accent);opacity:0.3;z-index:2; }
.sr-step:last-child .sr-step__conn { display:none; }
.sr-step__num { font-size:44px;font-weight:900;letter-spacing:-0.05em;color:transparent;-webkit-text-stroke:1px rgba(255,82,13,0.18);line-height:1;margin-bottom:16px;transition:-webkit-text-stroke-color 0.3s; }
.sr-step:hover .sr-step__num { -webkit-text-stroke-color:rgba(255,82,13,0.45); }
.sr-step__ttl { font-size:14px;font-weight:800;margin-bottom:8px;letter-spacing:-0.01em; }
.sr-step__txt { font-size:11.5px;font-weight:400;line-height:1.88;color:var(--text-dim); }


/* ══════════════════════════════════════════════
   FAQ
   ══════════════════════════════════════════════ */
.sr-faq { margin-top:48px;display:grid;gap:2px; }
.sr-faq-item { border:1px solid var(--gb);background:var(--glass);overflow:hidden;transition:border-color 0.3s; }
.sr-faq-item.open { border-color:rgba(255,82,13,0.28); }
.sr-faq-q {
  width:100%;text-align:left;padding:22px 28px;background:none;border:none;
  font-family:var(--font);font-size:13px;font-weight:700;color:var(--text);
  cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;letter-spacing:-0.01em;
}
.sr-faq-q:hover { color:var(--accent); }
.sr-faq-arr { flex-shrink:0;width:20px;height:20px;border:1px solid var(--gb);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-dim);transition:transform 0.3s,border-color 0.3s,color 0.3s; }
.sr-faq-item.open .sr-faq-arr { transform:rotate(45deg);border-color:var(--accent);color:var(--accent); }
.sr-faq-a { max-height:0;overflow:hidden;transition:max-height 0.42s cubic-bezier(0.16,1,0.3,1);padding:0 28px; }
.sr-faq-item.open .sr-faq-a { max-height:300px;padding-bottom:22px; }
.sr-faq-a p { font-size:12.5px;font-weight:400;line-height:1.95;color:var(--text-dim);border-top:1px solid var(--gb);padding-top:16px; }


/* ══════════════════════════════════════════════
   CTA
   ══════════════════════════════════════════════ */
.sr-cta {
  padding:90px 80px; max-width:1320px; margin:0 auto;
  display:grid; grid-template-columns:1fr auto;
  align-items:center; gap:50px; position:relative;
}
.sr-cta::before { content:'';position:absolute;top:50%;left:0;transform:translateY(-50%);width:50%;height:280px;background:radial-gradient(ellipse,rgba(255,82,13,0.07),transparent 70%);pointer-events:none; }
.sr-cta__lbl { font-size:10px;font-weight:700;letter-spacing:0.28em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;display:flex;align-items:center;gap:12px; }
.sr-cta__lbl::before { content:'';width:26px;height:1.5px;background:var(--accent); }
.sr-cta__ttl { font-size:clamp(26px,3.5vw,52px);font-weight:900;letter-spacing:-0.03em;line-height:1.0; }
.sr-cta__ttl .ghost { color:transparent;-webkit-text-stroke:1px rgba(255,255,255,0.14); }
.sr-cta__right { display:flex;flex-direction:column;gap:14px;align-items:flex-start;flex-shrink:0; }
.sr-cta__tel { font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-dim);margin-top:4px; }


/* ══════════════════════════════════════════════
   SCROLL REVEAL
   ══════════════════════════════════════════════ */
.sr-reveal { opacity:0;transform:translateY(28px);transition:opacity 0.75s cubic-bezier(0.16,1,0.3,1),transform 0.75s cubic-bezier(0.16,1,0.3,1); }
.sr-reveal.in { opacity:1;transform:translateY(0); }
.d1{transition-delay:0.1s;} .d2{transition-delay:0.2s;} .d3{transition-delay:0.3s;} .d4{transition-delay:0.4s;}


/* ══════════════════════════════════════════════
   INTERNAL LINKS GRID (Location pages)
   ══════════════════════════════════════════════ */
.sr-links-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-top:32px; }
.sr-link-card {
  padding:14px 18px; background:var(--glass); border:1px solid var(--gb);
  border-radius:4px; text-decoration:none; color:var(--text-dim);
  font-size:12px; font-weight:600; letter-spacing:0.02em;
  transition:border-color 0.3s,color 0.3s,background 0.3s,transform 0.2s;
  display:flex; align-items:center; gap:8px;
}
.sr-link-card:hover { border-color:rgba(255,82,13,0.3);color:var(--accent);background:rgba(255,82,13,0.04);transform:translateY(-2px); }
.sr-link-card::before { content:'→'; color:var(--accent); font-weight:900; }


/* ══════════════════════════════════════════════
   KEYFRAMES
   ══════════════════════════════════════════════ */
@keyframes srFU    {from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
@keyframes srDevIn {from{opacity:0;transform:perspective(1100px) rotateY(20deg) translateY(30px)}to{opacity:1;transform:perspective(1100px) rotateY(0) translateY(0)}}
@keyframes srPulse {0%,100%{opacity:.55}50%{opacity:1}}
@keyframes srBlink {0%,100%{opacity:1}50%{opacity:0}}
@keyframes srFloat {0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes srSpin  {from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes srMarq  {from{transform:translateX(0)}to{transform:translateX(-50%)}}


/* ══════════════════════════════════════════════
   RESPONSIVE — TABLET ≤ 1023px
   ══════════════════════════════════════════════ */
@media (max-width:1023px){
  .sr-hero,.sr-cta           { padding:78px 48px; }
  .sr-hero                   { grid-template-columns:1fr; gap:0; }
  .sr-hero__right            { display:none; }
  .sr-hero__left .sr-desc    { max-width:100%; }
  .sr-breadcrumb             { display:none; }
  .sr-section                { padding:70px 48px; }
  .sr-section-full .sr-section { padding:70px 48px; }
  .sr-intro-grid             { grid-template-columns:1fr; gap:44px; }
  .sr-svc                    { grid-template-columns:1fr; gap:40px; }
  .sr-svc--rev               { direction:ltr; }
  .sr-why-grid               { grid-template-columns:1fr 1fr; }
  .sr-steps                  { grid-template-columns:1fr 1fr; }
  .sr-step:nth-child(2) .sr-step__conn,
  .sr-step:nth-child(4) .sr-step__conn { display:none; }
  .sr-cta                    { grid-template-columns:1fr; gap:32px; }
  .sr-cta__right             { flex-direction:row; }
}

/* ══════════════════════════════════════════════
   RESPONSIVE — MOBILE ≤ 480px
   ══════════════════════════════════════════════ */
@media (max-width:480px){
  .sr-hero,.sr-cta           { padding:54px 22px; }
  .sr-breadcrumb             { padding:12px 22px; }
  .sr-section                { padding:50px 22px; }
  .sr-section-full .sr-section { padding:50px 22px; }
  .sr-h1                     { font-size:36px; }
  .sr-h2                     { font-size:26px; }
  .sr-why-grid               { grid-template-columns:1fr; }
  .sr-steps                  { grid-template-columns:1fr; }
  .sr-step .sr-step__conn    { display:none; }
  .sr-cta__right             { flex-direction:column;align-items:stretch; }
  .sr-cta__right .sr-btn,
  .sr-cta__right .sr-btn-ghost { text-align:center;justify-content:center; }
  .sr-stats                  { flex-direction:column;gap:24px; }
  .sr-stat                   { border:none;margin:0;padding:0; }
}
