/* Внутренние страницы (услуги, политика, 404). Общие стили — в site.css */

/* шапка страницы */
.phero{position:relative;color:#fff;background:var(--navy);padding:150px 0 70px;overflow:hidden}
.phero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.35}
.phero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,14,27,.95) 0%,rgba(0,14,27,.75) 55%,rgba(0,14,27,.45) 100%)}
.phero .wrap{position:relative;z-index:2}
.phero h1{font-size:clamp(32px,4.6vw,62px);font-weight:800;max-width:900px;margin-bottom:22px}
.phero h1 em{font-style:normal;color:var(--accent)}
.phero p{font-size:clamp(16px,1.5vw,19px);max-width:680px;opacity:.85;margin-bottom:32px}
.phero-sm{padding:140px 0 50px}
.phero-sm h1{font-size:clamp(28px,3.6vw,44px);margin-bottom:0}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;font-weight:600;opacity:.7;margin-bottom:22px}
.crumbs a:hover{color:var(--accent)}
.ph-badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}
.ph-badges span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:14px 20px;font-size:13px;opacity:.95}
.ph-badges b{display:block;font-family:Unbounded,sans-serif;font-size:20px;margin-bottom:2px;color:#fff}

/* об услуге */
.about-grid{display:grid;grid-template-columns:1.25fr .95fr;gap:40px;align-items:start}
.about-text h2{margin-bottom:22px}
.about-text p{font-size:17px;color:#2b3846;margin-bottom:16px;max-width:720px}
.about-side{background:var(--white);border-radius:var(--r);padding:34px;box-shadow:var(--shadow)}
.about-side h3{font-size:20px;margin-bottom:20px}
.about-side .checks li{color:var(--text);font-weight:600}

/* цены одной колонкой */
.p-prices .prices{padding:10px 36px}
.disclaimer a{color:var(--accent);font-weight:700}

.steps4{grid-template-columns:repeat(4,1fr)}

/* фото */
.p-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.p-gallery figure{margin:0;border-radius:16px;overflow:hidden;aspect-ratio:4/3;cursor:zoom-in;background:var(--navy)}
.p-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.p-gallery figure:hover img{transform:scale(1.05)}

/* заявка */
.z-card{display:grid;grid-template-columns:1fr 1fr;gap:40px;background:var(--navy);color:#fff;border-radius:28px;padding:50px;box-shadow:var(--shadow)}
.z-text h2{margin-bottom:16px}
.z-text>p{opacity:.75;margin-bottom:26px}
.z-contacts{list-style:none;display:grid;gap:14px}
.z-contacts span{display:block;font-size:13px;opacity:.6}
.z-contacts a,.z-contacts b{font-weight:800;font-size:17px}
.z-card form{display:grid;gap:12px;align-content:start}
.z-card input,.z-card select,.z-card textarea{background:#fff}
.z-card .form-note{color:rgba(255,255,255,.6)}
.form-note a{text-decoration:underline}

/* другие услуги */
.other-h{font-size:clamp(22px,2.6vw,32px);margin-bottom:22px}
.other-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.other-links a{background:var(--white);border-radius:16px;padding:20px 22px;box-shadow:0 10px 30px -20px rgba(0,14,27,.35);transition:transform .2s,box-shadow .2s}
.other-links a:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.other-links b{display:block;font-size:16px;margin-bottom:4px}
.other-links span{font-size:14px;color:var(--accent);font-weight:700}

/* подвал */
footer .foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px;align-items:start}
.foot-addr{margin-top:16px;line-height:1.8}
.foot-addr a:hover{color:#fff}
.foot-links{display:grid;gap:8px}
.foot-links b{color:#fff;margin-bottom:4px}
.foot-links a:hover,.foot-links a[aria-current]{color:#fff}
footer .foot-copy{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:block}

/* документ */
.doc{padding:60px 0 90px}
.doc-body{max-width:860px}
.doc-body h2{font-size:22px;margin:32px 0 12px}
.doc-body p{color:#2b3846;margin-bottom:12px}

/* 404 */
.nf{padding:170px 0 110px;text-align:left}
.nf-code{font-family:Unbounded,sans-serif;font-size:clamp(80px,14vw,180px);font-weight:800;line-height:1;color:var(--accent);margin-bottom:10px}
.nf-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px}
.nf-links a{padding:10px 16px;border-radius:100px;background:rgba(255,255,255,.08);font-weight:700;font-size:14px}
.nf-links a:hover{background:var(--accent)}

@media (max-width:1080px){
  .about-grid,.z-card{grid-template-columns:1fr}
  .steps4{grid-template-columns:1fr 1fr}
  footer .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  .phero{padding:120px 0 50px}
  .z-card{padding:30px 22px}
  .about-side{padding:26px 22px}
  .steps4{grid-template-columns:1fr}
  .p-prices .prices{padding:6px 22px}
  .prow{flex-wrap:wrap}
  footer .foot-grid{grid-template-columns:1fr}
}
