/* Landing pages: трасса, обслуживание, FAQ. Uses the main site's visual system. */
.landing-page{background:#f7fbff;color:#10233f}
.landing-page .site-header{background:rgba(247,251,255,.84)}
.landing-page .nav-current{color:#0878e8}
.landing-page .nav-current::after{right:0}
.landing-hero{min-height:790px;padding-top:165px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 78% 22%,rgba(61,172,255,.19),transparent 33%),linear-gradient(180deg,#f5fbff,#edf8ff 72%,#f7fbff)}
.landing-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:78px;align-items:center}
.landing-hero-copy{position:relative;z-index:2}
.landing-hero h1,.faq-hero h1{margin:0;color:#0c2746;font-size:clamp(46px,5.5vw,76px);line-height:1.02;letter-spacing:-.052em}
.landing-hero h1 em,.faq-hero h1 em{color:#0878e8;font-style:normal}
.landing-lead{max-width:700px;margin:25px 0 32px;color:#526d87;font-size:20px}
.landing-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:44px;padding-top:25px;border-top:1px solid rgba(33,91,143,.13)}
.landing-trust div{display:flex;flex-direction:column;padding-right:20px}
.landing-trust strong{color:#153d65;font-size:16px}
.landing-trust span{color:#71869a;font-size:12px}
.landing-visual{position:relative;padding:20px 0 35px 35px}
.landing-visual::before{content:"";position:absolute;inset:0 25px 15px 0;border:1px solid rgba(9,127,237,.22);border-radius:42px}
.landing-visual img{position:relative;width:100%;height:570px;object-fit:cover;border-radius:38px;box-shadow:0 35px 80px rgba(20,83,141,.22)}
.service-hero .landing-visual img{object-position:center}
.landing-visual-card{position:absolute;left:-15px;top:70px;display:flex;align-items:center;gap:12px;padding:15px 18px;border:1px solid rgba(255,255,255,.82);border-radius:18px;background:rgba(255,255,255,.92);box-shadow:0 18px 45px rgba(16,67,112,.18);backdrop-filter:blur(14px)}
.landing-visual-card.second{left:auto;right:-25px;top:auto;bottom:72px}
.landing-visual-card>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:#0878e8;background:#e7f6ff;font-weight:900}
.landing-visual-card strong,.landing-visual-card small{display:block}
.landing-visual-card strong{font-size:14px}
.landing-visual-card small{color:#718397;font-size:11px}
.landing-orb{position:absolute;border-radius:50%;pointer-events:none}
.landing-orb-a{width:330px;height:330px;left:-135px;top:180px;background:rgba(36,170,255,.08)}
.landing-orb-b{width:260px;height:260px;right:-90px;bottom:50px;border:1px solid rgba(26,147,239,.12)}
.landing-intro{padding-top:105px}
.feature-grid,.symptom-grid,.service-offer-grid,.related-grid{display:grid;gap:18px}
.feature-grid{grid-template-columns:repeat(3,1fr)}
.feature-card,.symptom-card,.offer-card,.related-card{position:relative;border:1px solid rgba(27,88,140,.1);background:rgba(255,255,255,.88);box-shadow:0 15px 40px rgba(21,69,111,.07)}
.feature-card{min-height:260px;padding:30px 28px;border-radius:26px}
.feature-card>span,.offer-card>span{display:grid;width:48px;height:48px;place-items:center;margin-bottom:28px;border-radius:16px;color:#0878e8;background:#eaf7ff;font-size:12px;font-weight:900}
.feature-card h3,.offer-card h3,.related-card h3{margin:0 0 12px;color:#173a5c;font-size:23px}
.feature-card p,.offer-card p,.related-card p{margin:0;color:#667d92}
.landing-dark{overflow:hidden;color:#fff;background:#0b2d4f}
.landing-dark::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 20%,rgba(31,158,255,.2),transparent 33%),linear-gradient(120deg,transparent 65%,rgba(12,128,231,.13));pointer-events:none}
.split-heading{position:relative;display:grid;grid-template-columns:.78fr 1.22fr;gap:90px;align-items:start}
.split-heading h2{margin:10px 0 20px;color:#fff;font-size:clamp(38px,4.6vw,58px);line-height:1.06;letter-spacing:-.04em}
.split-heading>div>p{max-width:520px;margin:0 0 30px;color:#a9c1d7;font-size:17px}
.landing-check-list{list-style:none;margin:0;padding:0;display:grid}
.landing-check-list li{display:grid;grid-template-columns:minmax(165px,.45fr) 1fr;gap:24px;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.landing-check-list li:first-child{padding-top:4px}
.landing-check-list b{font-size:18px}
.landing-check-list span{color:#a9c1d7}
.stage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.stage-card{min-height:440px;display:flex;flex-direction:column;padding:38px 34px;border:1px solid rgba(27,88,140,.1);border-radius:30px;background:#fff;box-shadow:0 20px 50px rgba(21,69,111,.08)}
.stage-card.featured{color:#fff;background:linear-gradient(145deg,#0c8af7,#0064d2)}
.stage-number{width:max-content;margin-bottom:42px;padding:9px 12px;border-radius:999px;color:#0878e8;background:#eaf7ff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.stage-card.featured .stage-number{color:#fff;background:rgba(255,255,255,.16)}
.stage-card h3{margin:0 0 20px;font-size:30px;letter-spacing:-.025em}
.stage-card ul{margin:0 0 28px;padding-left:20px;color:#667d92}
.stage-card.featured ul{color:rgba(255,255,255,.84)}
.stage-card li+li{margin-top:10px}
.stage-card .text-link{margin-top:auto;align-self:flex-start}
.stage-card.featured .text-link{color:#fff}
.planning-section{padding-top:15px}
.planning-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;padding:55px 58px;border:1px solid #dcebf6;border-radius:34px;background:linear-gradient(135deg,#edf8ff,#fff);box-shadow:0 22px 55px rgba(21,69,111,.08)}
.planning-card h2{margin:8px 0 15px;font-size:clamp(34px,4vw,50px);line-height:1.08;letter-spacing:-.035em}
.planning-card p{margin:0;color:#667d92}
.planning-points{display:flex;flex-wrap:wrap;gap:10px}
.planning-points span{padding:12px 15px;border:1px solid #d7e9f7;border-radius:999px;color:#17496f;background:#fff;font-size:13px;font-weight:750}
.landing-faq{background:#fff}
.landing-faq .faq-heading .btn{margin-top:24px}
.landing-cta{padding:70px 0 110px}
.cta-panel{position:relative;overflow:hidden;min-height:330px;display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:center;padding:60px 64px;border-radius:36px;color:#fff;background:linear-gradient(140deg,#0a84ff,#0059c4);box-shadow:0 28px 75px rgba(0,92,196,.22)}
.cta-panel::after{content:"";position:absolute;width:330px;height:330px;right:-100px;top:-120px;border:1px solid rgba(255,255,255,.18);border-radius:50%}
.cta-panel h2{position:relative;z-index:1;margin:9px 0 15px;color:#fff;font-size:clamp(38px,4.5vw,57px);line-height:1.05;letter-spacing:-.04em}
.cta-panel p{position:relative;z-index:1;max-width:730px;margin:0;color:rgba(255,255,255,.82);font-size:17px}
.cta-actions{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.cta-phone{font-size:24px;font-weight:900;letter-spacing:-.025em}
.symptom-grid{grid-template-columns:repeat(3,1fr)}
.symptom-card{min-height:190px;padding:26px;border-radius:23px;transition:.25s}
.symptom-card:hover{transform:translateY(-5px);border-color:rgba(10,132,255,.28);box-shadow:0 24px 55px rgba(21,69,111,.12)}
.symptom-card b{display:block;margin-bottom:10px;color:#173a5c;font-size:20px}
.symptom-card p{margin:0;color:#667d92;font-size:14px}
.service-offer-grid{grid-template-columns:repeat(3,1fr)}
.offer-card{min-height:390px;display:flex;flex-direction:column;padding:31px 28px;border-radius:27px}
.offer-card.featured{color:#fff;background:linear-gradient(150deg,#0f8cf5,#0065d3)}
.offer-card.featured h3,.offer-card.featured p,.offer-card.featured .text-link{color:#fff}
.offer-card.featured>span{color:#fff;background:rgba(255,255,255,.16)}
.offer-card strong{display:block;margin:26px 0 20px;color:#0d3153;font-size:22px}
.offer-card.featured strong{color:#fff}
.offer-card .text-link{margin-top:auto;align-self:flex-start}
.process-light{background:linear-gradient(180deg,#eef8ff,#f7fbff)}
.numbered-process{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:0;padding:0}
.numbered-process li{min-height:300px;padding:27px 23px;border:1px solid rgba(27,88,140,.1);border-radius:24px;background:#fff}
.numbered-process li>span{display:grid;width:46px;height:46px;place-items:center;margin-bottom:55px;border-radius:50%;color:#0878e8;background:#eaf7ff;font-size:12px;font-weight:900}
.numbered-process h3{margin:0 0 10px;color:#173a5c;font-size:20px}
.numbered-process p{margin:0;color:#667d92;font-size:14px}
.faq-hero{padding:175px 0 85px;background:radial-gradient(circle at 76% 10%,rgba(75,177,255,.18),transparent 33%),linear-gradient(180deg,#f5fbff,#edf8ff)}
.faq-hero h1{max-width:900px}
.faq-hero>div>p{max-width:760px;margin:24px 0 0;color:#526d87;font-size:19px}
.faq-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}
.faq-jump a{padding:12px 16px;border:1px solid #d7e9f7;border-radius:999px;color:#17496f;background:#fff;font-size:13px;font-weight:800;box-shadow:0 8px 24px rgba(21,69,111,.05)}
.faq-jump a:hover{border-color:#8ecbfa;color:#0878e8}
.faq-directory{padding-top:90px}
.faq-directory-grid{display:grid;grid-template-columns:310px minmax(0,1fr);gap:70px;align-items:start}
.faq-aside{position:sticky;top:120px;padding:30px 28px;border:1px solid #dcebf6;border-radius:27px;background:linear-gradient(145deg,#eef8ff,#fff);box-shadow:0 18px 48px rgba(21,69,111,.08)}
.faq-aside h2{margin:8px 0 14px;font-size:31px;line-height:1.08;letter-spacing:-.03em}
.faq-aside p{margin:0 0 22px;color:#667d92}
.faq-aside .inline-phone{display:block;margin-top:20px}
.faq-categories{display:grid;gap:75px}
.faq-category{scroll-margin-top:110px}
.faq-category-head{display:grid;grid-template-columns:62px 1fr;gap:18px;align-items:start;margin-bottom:24px}
.faq-category-head>span{display:grid;width:56px;height:56px;place-items:center;border-radius:18px;color:#0878e8;background:#eaf7ff;font-size:13px;font-weight:900}
.faq-category-head h2{margin:0;color:#102d4d;font-size:38px;letter-spacing:-.035em}
.faq-category-head p{margin:4px 0 0;color:#71869a}
.related-pages{background:#fff}
.related-grid{grid-template-columns:repeat(3,1fr)}
.related-card{min-height:285px;padding:30px 28px;border-radius:27px;transition:.25s}
.related-card:hover{transform:translateY(-5px);border-color:rgba(10,132,255,.28);box-shadow:0 24px 55px rgba(21,69,111,.12)}
.related-card>span{display:inline-block;margin-bottom:34px;color:#0878e8;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.related-card b{display:block;margin-top:25px;color:#0878e8;font-size:13px}
@media(max-width:1120px){.landing-hero-grid{gap:45px}.landing-page .desktop-nav{gap:18px;font-size:13px}.landing-page .phone-link span:last-child{display:none}.split-heading{gap:55px}.numbered-process{grid-template-columns:repeat(2,1fr)}.faq-directory-grid{grid-template-columns:270px minmax(0,1fr);gap:40px}}
@media(max-width:900px){.landing-hero{min-height:auto;padding-top:135px}.landing-hero-grid{grid-template-columns:1fr}.landing-visual{max-width:650px;margin-inline:auto}.feature-grid,.symptom-grid,.service-offer-grid,.related-grid{grid-template-columns:repeat(2,1fr)}.feature-card:last-child,.service-offer-grid .offer-card:last-child,.related-card:last-child{grid-column:1/-1}.split-heading,.planning-card,.cta-panel{grid-template-columns:1fr}.split-heading{gap:45px}.stage-grid{grid-template-columns:1fr}.planning-card{gap:35px}.faq-directory-grid{grid-template-columns:1fr}.faq-aside{position:relative;top:auto}.faq-categories{gap:55px}.cta-actions{align-items:flex-start}}
@media(max-width:720px){.landing-page .section{padding:78px 0}.landing-hero{padding-top:125px}.landing-hero h1,.faq-hero h1{font-size:clamp(42px,12vw,60px)}.landing-lead{font-size:17px}.landing-trust{grid-template-columns:1fr;gap:14px}.landing-trust div{padding:0}.landing-visual{padding-left:0}.landing-visual::before{inset:0 10px 10px}.landing-visual img{height:470px;border-radius:30px}.landing-visual-card{left:-5px;top:45px}.landing-visual-card.second{right:-5px;bottom:55px}.feature-grid,.symptom-grid,.service-offer-grid,.related-grid{grid-template-columns:1fr}.feature-card:last-child,.service-offer-grid .offer-card:last-child,.related-card:last-child{grid-column:auto}.section-heading{align-items:start}.landing-check-list li{grid-template-columns:1fr;gap:7px}.planning-card,.cta-panel{padding:40px 28px;border-radius:28px}.numbered-process{grid-template-columns:1fr}.numbered-process li{min-height:auto}.numbered-process li>span{margin-bottom:28px}.faq-hero{padding:145px 0 65px}.faq-hero>div>p{font-size:16px}.faq-category-head h2{font-size:31px}}
@media(max-width:520px){.landing-visual img{height:400px}.landing-visual-card{max-width:210px;padding:12px}.landing-visual-card.second{bottom:35px}.stage-card{min-height:auto;padding:30px 24px}.planning-points span{width:100%;text-align:center}.cta-panel{padding:38px 24px}.cta-phone{font-size:21px}.faq-category-head{grid-template-columns:48px 1fr}.faq-category-head>span{width:44px;height:44px;border-radius:14px}.faq-category-head h2{font-size:28px}.faq-jump{display:grid}.faq-jump a{text-align:center}}

/* v20260809: landscape pages keep their two-column composition */
@media (orientation:landscape) and (max-height:720px) and (min-width:640px){
  .landing-page .section{padding:64px 0}
  .landing-hero{min-height:auto;padding-top:96px;padding-bottom:50px}
  .landing-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);gap:32px;align-items:center}
  .landing-hero h1,.faq-hero h1{font-size:clamp(36px,5.2vw,52px)}
  .landing-lead{margin:18px 0 22px;font-size:15px;line-height:1.48}
  .landing-trust{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:24px;padding-top:17px}
  .landing-trust div{padding-right:8px}
  .landing-trust strong{font-size:13px}
  .landing-trust span{font-size:10px}
  .landing-visual{max-width:none;margin:0;padding:12px 0 18px 18px}
  .landing-visual::before{inset:0 12px 10px 4px;border-radius:31px}
  .landing-visual img{height:clamp(250px,39vw,350px);border-radius:28px}
  .landing-visual-card{left:-2px;top:35px;padding:11px 13px}
  .landing-visual-card.second{right:-3px;bottom:42px}
  .landing-visual-card>span{width:32px;height:32px}
  .landing-visual-card strong{font-size:11px}
  .landing-visual-card small{font-size:9px}
  .feature-grid,.symptom-grid,.service-offer-grid,.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature-card:last-child,.service-offer-grid .offer-card:last-child,.related-card:last-child{grid-column:auto}
  .split-heading{grid-template-columns:.82fr 1.18fr;gap:42px}
  .stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stage-card{min-height:360px;padding:30px 27px}
  .planning-card{grid-template-columns:.9fr 1.1fr;gap:38px;padding:40px 42px}
  .cta-panel{grid-template-columns:1.2fr .8fr;gap:38px;min-height:260px;padding:42px 46px}
  .numbered-process{grid-template-columns:repeat(2,minmax(0,1fr))}
  .faq-hero{padding:108px 0 48px}
  .faq-directory-grid{grid-template-columns:240px minmax(0,1fr);gap:36px}
  .faq-aside{position:sticky;top:82px;padding:23px 21px}
}
