/* Strategia (Law Firm) theme — classic corporate law-firm look
   Palette: white, black text, burgundy accent (--stp-accent), light-grey rules */
:root{
  --stp-accent:#9e0000;
  --stp-accent-dk:color-mix(in srgb,var(--stp-accent) 82%,#000);
  --stp-text:#000;
  --stp-muted:#555;
  --stp-line:#dcdcdc;
  --stp-bg:#fff;
  --stp-font:'Montserrat',Arial,Helvetica,sans-serif;
  --stp-serif:'PT Serif',Georgia,'Times New Roman',serif;
  --stp-max:1170px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.stp-body{margin:0;background:var(--stp-bg);color:var(--stp-text);font-family:var(--stp-font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
.stp-body a{color:var(--stp-accent)}
.stp-body img{max-width:100%;height:auto}
.stp-container{max-width:var(--stp-max);margin:0 auto;padding:0 15px}

/* ── Header ─────────────────────────────────────────── */
.stp-header{background:#fff;position:relative;z-index:50}
.stp-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:90px;gap:24px}
.stp-header-line{height:2px;background:#e3e3e3;margin:0 16px}
.stp-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--stp-text)}
.stp-logo-img{max-height:60px;width:auto;display:block}
.stp-logo-mono,.stp-hero-mono{font-family:var(--stp-serif);display:inline-flex;align-items:flex-start;line-height:1}
.stp-logo-mono{font-size:44px;height:52px}
.stp-logo-mono .m1,.stp-hero-mono .m1{color:var(--stp-accent)}
.stp-logo-mono .m2,.stp-hero-mono .m2{color:#000;margin-left:-.28em;margin-top:.22em}
.stp-logo-name{font-family:var(--stp-serif);font-size:17px;color:#000;white-space:nowrap}

.stp-nav{display:flex;align-items:stretch;align-self:stretch;padding:10px 0}
.stp-nav a{display:flex;align-items:center;padding:0 36px;font-size:13px;line-height:50px;text-transform:uppercase;letter-spacing:.02em;color:#000;text-decoration:none;transition:background .2s,color .2s}
.stp-nav a:hover{color:var(--stp-accent)}
.stp-nav a.active{background:var(--stp-accent);color:#fff}
.stp-burger{display:none;background:none;border:0;padding:10px;cursor:pointer}
.stp-burger span{display:block;width:26px;height:2px;background:#000;margin:5px 0;transition:.25s}
.stp-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.stp-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.stp-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ── Hero ───────────────────────────────────────────── */
.stp-hero{text-align:center;padding:110px 0 60px}
.stp-hero-logo{display:flex;flex-direction:column;align-items:center;margin-bottom:80px}
.stp-hero-img{max-width:300px;max-height:220px;width:auto}
.stp-hero-mono{font-size:150px;height:150px}
.stp-hero-name{font-family:var(--stp-serif);font-size:38px;color:#000;margin-top:14px}
.stp-hero-title{font-size:38px;font-weight:400;line-height:1.2;margin:0}
.stp-hero-sub{font-size:24px;margin:6px 0 0}
.stp-btn{display:inline-flex;align-items:center;gap:8px;margin-top:100px;padding:6px 22px;background:var(--stp-accent);color:#fff!important;border-radius:3px;box-shadow:0 0 0 1px var(--stp-line) inset,0 1px 2px rgba(0,0,0,.15);font-size:16px;font-weight:500;text-decoration:none;transition:background .2s}
.stp-btn:hover{background:var(--stp-accent-dk)}

/* ── Intro & content ────────────────────────────────── */
.stp-intro{padding:10px 0 40px}
.stp-intro p{margin:0;font-size:16px;line-height:24px}
.stp-content{padding:40px 0}
.stp-page{padding:50px 0 60px;min-height:40vh}
.stp-content p{line-height:24px}
.stp-content h1,.stp-content h2,.stp-content h3{font-weight:400;line-height:1.25}
.stp-content h2{font-size:32px}
.stp-content h3{font-size:24px}
.stp-content .cms-breadcrumbs{font-size:13px;color:var(--stp-muted);margin-bottom:20px}
.stp-content .cms-breadcrumbs a{color:var(--stp-muted);text-decoration:none}
.stp-content .cms-breadcrumbs a:hover{color:var(--stp-accent)}

/* ── Section titles & service tiles ─────────────────── */
.stp-section-title{text-align:center;color:var(--stp-accent);font-size:48px;font-weight:400;line-height:1.2;margin:0 0 40px}
.stp-services{padding:30px 0 50px}
.stp-tiles{display:grid;grid-template-columns:1fr 1fr;gap:21px 30px}
.stp-tile{display:flex;align-items:center;justify-content:center;min-height:64px;padding:12px 23px;background:var(--stp-accent);color:#fff!important;text-align:center;font-size:16px;font-weight:500;text-decoration:none;border-radius:3px;box-shadow:0 0 0 1px var(--stp-line) inset;transition:background .2s,transform .2s}
.stp-tile:hover{background:var(--stp-accent-dk)}

/* ── Footer ─────────────────────────────────────────── */
.stp-footer{text-align:center;padding:40px 0 50px}
.stp-footer p{margin:0;font-size:18px;line-height:34.5px}
.stp-footer a{color:#000;text-decoration:none}
.stp-footer a:hover{color:var(--stp-accent)}
.stp-footer .stp-copy{font-size:13px;color:#999;margin-top:18px;line-height:1.5}

/* ── Responsive ─────────────────────────────────────── */
@media (max-width:1000px){.stp-nav a{padding:0 18px}}
@media (max-width:860px){
  .stp-header-inner{min-height:70px}
  .stp-burger{display:block}
  .stp-nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;background:#fff;padding:0;border-bottom:2px solid #e3e3e3;box-shadow:0 8px 16px rgba(0,0,0,.06)}
  .stp-nav.open{display:flex}
  .stp-nav a{padding:0 24px;line-height:48px;border-top:1px solid #f0f0f0}
  .stp-logo-mono{font-size:36px;height:44px}
  .stp-hero{padding:60px 0 40px}
  .stp-hero-logo{margin-bottom:44px}
  .stp-hero-mono{font-size:100px;height:100px}
  .stp-hero-name{font-size:28px}
  .stp-hero-title{font-size:28px}
  .stp-hero-sub{font-size:19px}
  .stp-btn{margin-top:50px}
  .stp-section-title{font-size:34px;margin-bottom:28px}
  .stp-tiles{grid-template-columns:1fr;gap:14px}
  .stp-footer p{font-size:16px;line-height:30px}
}
@media (max-width:420px){.stp-logo-name{display:none}}

/* guard against full-bleed builder sections causing sideways scroll */
.stp-main{overflow-x:clip}

/* ── Inner-page title band (matches strategia-prava.ru/about.html) ── */
.stp-pagehead{position:relative;overflow:hidden;border-bottom:8px solid #e3e3e3;margin:0 16px}
.stp-pagehead-inner{position:relative;display:flex;align-items:center;justify-content:center;min-height:300px;padding-top:30px;padding-bottom:30px;box-sizing:border-box}
.stp-pagehead-mark{position:absolute;right:15%;bottom:-.08em;display:inline-flex;align-items:flex-start;font-family:var(--stp-serif);font-size:290px;line-height:1;color:#e6e6e6;pointer-events:none;user-select:none;z-index:0}
.stp-pagehead-mark .m2{margin-left:-.28em;margin-top:.22em}
.stp-pagehead-mark img{height:260px;width:auto;opacity:.12;filter:grayscale(1)}
.stp-page-title{position:relative;z-index:1;margin:0;text-align:center;color:var(--stp-accent);font-family:var(--stp-font);font-size:36px;font-weight:700;line-height:1.2;text-transform:uppercase;letter-spacing:.01em}
.stp-pagehead + .stp-page{padding-top:40px}
@media (max-width:860px){
  .stp-pagehead{margin:0}
  .stp-pagehead-inner{min-height:180px}
  .stp-pagehead-mark{font-size:170px;right:4%}
  .stp-pagehead-mark img{height:150px}
  .stp-page-title{font-size:26px}
}
@media (max-width:420px){
  .stp-pagehead-inner{min-height:140px}
  .stp-pagehead-mark{font-size:130px}
  .stp-page-title{font-size:22px}
}
