@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#143d49;--body:#426272;--teal:#108f9b;--teal-dark:#0a7180;--pale:#e8f5f3;--line:#dbece9;--shadow:0 12px 45px rgba(28,83,87,.08)}*{box-sizing:border-box}body{margin:0;background:#f2f7f6;color:var(--ink);font-family:Manrope,'DejaVu Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}.shell{max-width:920px;margin:30px auto 50px;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 22px 70px rgba(20,61,73,.1)}.hero{background:linear-gradient(116deg,#fff 32%,#f3fbfa 85%);position:relative;min-height:395px;display:flex;align-items:center;padding:56px 58px 92px}.hero-inner{position:relative;z-index:2;max-width:520px}.kicker,.eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--teal-dark)}.kicker{display:flex;gap:9px;align-items:center;margin-bottom:22px}.kicker-dot{background:#10a3aa;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #d9f0ed}.hero-title{font-family:Georgia,'DejaVu Serif',serif;font-size:clamp(32px,4.55vw,50px);font-weight:400;line-height:1.13;color:#115268;letter-spacing:-.035em;display:flex;flex-direction:column}.hero-rule{background:#1ba0a9;width:49px;height:2px;margin:22px 0 15px}.profession{font-size:19px;font-weight:600;margin:0 0 11px;max-width:360px}.intro{color:var(--body);font-size:13px;max-width:350px;line-height:1.75;margin:0}.art{position:absolute;right:7px;top:46px;width:315px;opacity:.85;z-index:1}.art svg{display:block;width:100%}.hero-wave{position:absolute;width:100%;height:83px;bottom:-1px;left:0}.section{padding:35px 58px 27px}.section-title{display:flex;align-items:end;gap:18px;margin-bottom:9px}.section-title h2,.social-panel h2{font-size:30px;margin:3px 0 0;font-weight:800;letter-spacing:-.045em;color:#0b6c7b}.tiny-line{background:#7dc5c8;height:1px;flex:1;margin-bottom:10px}.section-intro{margin:0 0 23px;color:var(--body);font-size:13px;line-height:1.7}.locations{display:grid;grid-template-columns:1fr 1fr;gap:18px}.location-card{background:white;border:1px solid var(--line);border-radius:17px;padding:22px;box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:214px}.location-logo{height:54px;display:flex;align-items:center;margin-bottom:12px}.location-logo img{object-fit:contain;max-height:47px;max-width:167px}.location-logo.teal img{max-width:178px}.location-content{margin-bottom:auto}.place-kind{color:#6c8390;font-size:11px;font-weight:600}.location-card h3{font-size:21px;margin:1px 0;color:#133c49}.place-meta{font-size:12px;color:#82959b}.action{margin-top:20px;background:#eef7f6;color:#166d79;border:1px solid #d9ece9;border-radius:10px;min-height:45px;display:flex;gap:9px;align-items:center;justify-content:center;padding:10px 8px;text-decoration:none;font-weight:750;font-size:12px;text-align:center}.action svg,.save svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.action:not(.disabled){background:#128e99;color:#fff;border-color:#128e99}.action:not(.disabled):hover{background:#096f79}.disabled{cursor:default}.social-panel{margin:13px 58px 0;background:linear-gradient(115deg,#f1faf9,#e6f5f3);padding:25px;border-radius:19px;display:flex;align-items:flex-start;gap:19px}.social-icon{width:46px;height:46px;border-radius:13px;background:white;display:grid;place-items:center;color:var(--teal);box-shadow:0 5px 19px rgba(32,103,103,.09);flex-shrink:0}.social-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2}.social-copy h2{font-size:19px;margin:5px 0 7px}.social-copy p{font-size:12.5px;color:var(--body);line-height:1.65;max-width:560px;margin:0 0 11px}.instagram-link{color:#0d8391;text-decoration:none;font-size:12.5px;font-weight:800}.instagram-link:not(.disabled):hover{text-decoration:underline}.save-row{margin:26px 58px 36px;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.save{border-radius:11px;padding:12px 17px;background:#fff;border:1px solid #a7d6d4;color:#0c6878;cursor:pointer;font-weight:800;font-size:12px;display:inline-flex;gap:10px;align-items:center}.save:hover{background:#f2fafa}.save-row span{color:#7c9096;font-size:11px}footer{border-top:1px solid #e4efed;padding:21px 58px 24px;font-size:11px;color:#71858b}.dot{padding:0 7px}.disclaimer{font-size:10px;color:#8ba1a5;margin-top:9px;line-height:1.6}@media (max-width:720px){body{background:#fff}.shell{margin:0;border-radius:0;box-shadow:none}.hero{min-height:443px;padding:39px 27px 125px;align-items:start}.hero-inner{max-width:100%}.kicker{font-size:9px;letter-spacing:.09em;margin-bottom:17px}.hero-title{font-size:clamp(30px,8.1vw,43px)}.hero-rule{margin:19px 0 12px}.profession{font-size:16px;max-width:280px}.intro{font-size:11.5px;max-width:215px}.art{right:-46px;top:172px;width:244px;opacity:.69}.hero-wave{height:58px}.section{padding:25px 24px}.section-title h2{font-size:26px}.locations{grid-template-columns:1fr;gap:13px}.location-card{min-height:183px;padding:18px}.location-logo{height:40px;margin-bottom:9px}.location-logo img{max-height:38px}.action{margin-top:14px}.social-panel{margin:0 24px;padding:20px;gap:12px}.social-icon{width:40px;height:40px}.social-copy h2{font-size:16px}.save-row{margin:23px 24px 28px}.save-row span{max-width:230px}footer{padding:21px 24px}}
@media (max-width:390px){.hero{min-height:431px}.art{width:218px;top:180px}.intro{max-width:185px}}

/* Две самостоятельные кнопки для регистратуры «Рошес». */
.phone-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:20px}
.phone-actions .action{margin-top:0;min-width:0;font-size:11px;padding:10px 5px}
@media(max-width:480px){.phone-actions{grid-template-columns:1fr;gap:8px;margin-top:14px}.phone-actions .action{min-height:43px;font-size:12px}}


/* Mobile hero: illustration is in normal document flow below ALL hero text.
   Prevents overlap at narrow widths and with larger system font sizes. */
@media (max-width:720px) {
  .hero {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    min-height:0;
    height:auto;
    padding:39px 27px 62px;
  }
  .hero-inner {position:relative;z-index:2;width:100%;max-width:none;}
  .hero-title {overflow-wrap:break-word;hyphens:auto;}
  .profession {max-width:none;line-height:1.5;margin-bottom:12px;}
  .intro {max-width:340px;}
  .art {
    position:relative;
    inset:auto;
    right:auto;top:auto;
    align-self:flex-end;
    width:min(244px,75%);
    margin-top:20px;
    margin-right:-21px;
    opacity:.72;
    z-index:1;
    flex-shrink:0;
  }
  .hero-wave {z-index:0;pointer-events:none;}
}
@media (max-width:390px) {
  .hero {min-height:0;}
  .art {width:min(218px,75%);margin-top:18px;right:auto;top:auto;}
}
