.registry-main { background:linear-gradient(#fff,#f8f9fb 650px,#fff); padding-bottom:32px; }
.registry-hero { position:relative; padding:24px 0 88px; background:#f6f5f3; overflow:hidden; }
.registry-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#f8f7f5 2%,#f8f7f5f7 35%,#f8f7f5ad 58%,#f8f7f510 86%),url('../newspictures/tarsashazak_ujepitesu_ChatGPT.png') center right/cover no-repeat; }
.registry-hero>.home-container { position:relative; }
.registry-breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:11px; color:#5d636d; font-size:11px; margin-bottom:30px; }
.registry-breadcrumbs i { font-size:8px; }
.registry-hero-layout { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:34px; }
.registry-intro h1 { font-family:var(--heading); font-size:clamp(36px,4.25vw,58px); font-weight:700; line-height:1.04; letter-spacing:-1.5px; border-left:6px solid var(--red); padding-left:20px; color:#15181b; }
.registry-intro h1 span { color:var(--red); display:block; }
.registry-intro p { max-width:555px; font-size:16px; line-height:1.65; color:#46505e; margin-top:21px; }
.registry-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid #ffffffa8; background:#ffffffea; border-radius:14px; padding:22px 10px; box-shadow:0 9px 35px #1726380b; backdrop-filter:blur(6px); }
.registry-stats>div { padding:0 10px; display:flex; flex-direction:column; text-align:center; align-items:center; border-right:1px solid #c9cdd3; }
.registry-stats>div:last-child { border:0; }
.registry-stats i { font-size:31px; color:var(--red); margin-bottom:13px; }
.registry-stats strong { font-family:var(--heading); font-size:21px; color:#16191d; line-height:1.2; }
.registry-stats span { font-size:12px; color:#46505e; margin-top:5px; }
.registry-directory { position:relative; margin-top:-44px; }
.registry-filters { display:grid; grid-template-columns:minmax(230px,2fr) minmax(120px,1fr) minmax(165px,1.25fr) minmax(125px,1fr) auto; align-items:end; gap:18px; background:#fff; border:1px solid #eeeef0; border-radius:10px; padding:24px 20px; box-shadow:0 12px 28px #1f2f4410; }
.registry-field { min-width:0; }
.registry-field label { display:block; font-size:11px; font-weight:500; margin:0 0 7px 2px; color:#46505e; }
.registry-main select { font:inherit; color:#252a32; border:1px solid #d7dce3; border-radius:6px; background:#fff; padding:10px 28px 10px 11px; min-height:41px; max-width:100%; }
.registry-main select:focus-visible { outline:3px solid #2462b2; outline-offset:3px; }
.registry-field select { width:100%; font-size:12px; }
.registry-search-field { position:relative; }
.registry-search-field i { position:absolute; top:50%; left:15px; transform:translateY(-50%); font-size:17px; color:#414953; pointer-events:none; }
.registry-search-field input { width:100%; min-height:43px; border:1px solid #d7dce3; border-radius:6px; background:#fff; padding:11px 12px 11px 42px; font-size:12px; color:var(--ink); }
.registry-search-field input::placeholder { color:#647080; opacity:1; }
.registry-search-submit { min-height:43px; font-size:12px; padding:10px 23px; border-radius:7px; }
.registry-results { padding-top:28px; }
.registry-results-header { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:20px; }
.registry-results-header>div { display:flex; align-items:center; gap:18px; }
.registry-results h2 { font-family:var(--heading); font-size:23px; font-weight:700; }
.registry-reset { display:inline-flex; gap:7px; align-items:center; font-size:11px; color:var(--red); }
.registry-sort { display:flex; align-items:center; gap:11px; font-size:12px; }
.registry-sort select { min-width:185px; padding:8px 28px 8px 11px; min-height:36px; font-size:12px; }
.registry-sort-submit { border:1px solid #d7dce3; border-radius:5px; background:#fff; padding:8px; font:inherit; color:var(--ink); }
.registry-main.is-enhanced .registry-sort-submit { display:none; }
.registry-list { display:grid; gap:12px; }
.registry-card { display:grid; grid-template-columns:125px minmax(200px,1.65fr) minmax(150px,1fr) minmax(170px,1fr) 48px; align-items:center; gap:20px; min-height:88px; padding-left:18px; border:1px solid #dde1e7; background:#fff; border-radius:9px; color:var(--ink); overflow:hidden; box-shadow:0 7px 17px #24304108; transition:border-color .16s,box-shadow .16s; }
.registry-card:hover { color:var(--ink); border-color:#c57b80; box-shadow:0 7px 20px #24304113; }
.registry-logo { display:flex; align-items:center; justify-content:center; padding:12px 6px; height:86px; }
.registry-logo img { max-width:118px; max-height:65px; width:auto; height:auto; object-fit:contain; }
.registry-logo-placeholder { width:57px; height:57px; border-radius:12px; display:grid; place-items:center; color:var(--red); background:linear-gradient(135deg,#fff7f7,#f2f0f1); font-size:30px; }
.registry-company { padding-block:16px; min-width:0; }
.registry-company>strong { display:block; font-family:var(--heading); font-size:21px; line-height:1.25; overflow-wrap:anywhere; }
.registry-company>span { display:block; font-size:12px; margin-top:5px; color:#59616e; }
.registry-location { display:flex; align-items:flex-start; gap:10px; font-size:12px; line-height:1.5; color:#303742; padding-block:12px; }
.registry-location>i { margin-top:3px; font-size:14px; color:#333b47; }
.registry-location small { display:block; font-size:10px; color:#79808a; margin-top:2px; }
.registry-tags { display:flex; flex-wrap:wrap; gap:7px; padding-block:12px; }
.registry-tags>span { border-radius:8px; background:#f0f1f7; color:#4c5566; padding:6px 9px; font-size:10px; white-space:nowrap; }
.registry-card-arrow { align-self:stretch; display:grid; place-items:center; background:linear-gradient(145deg,var(--red),#a20f17); color:#fff; font-size:19px; }
.registry-card:hover .registry-card-arrow { background:var(--red-dark); }
.registry-pagination { display:flex; align-items:center; justify-content:center; gap:6px; padding-top:24px; }
.registry-pagination>a,.registry-page-gap { min-width:33px; height:35px; display:grid; place-items:center; font-size:12px; border:1px solid #dce1e7; border-radius:5px; background:#fff; }
.registry-pagination>a[aria-current="page"] { background:var(--red); border-color:var(--red); color:#fff; }
.registry-pagination>a:hover { border-color:var(--red); }
.registry-page-gap { border:0; background:none; min-width:18px; color:#858b94; }
.registry-pagination i { font-size:10px; }
.registry-page-size { display:flex; align-items:center; justify-content:center; gap:10px; margin-top:12px; font-size:10px; color:#737b87; }
.registry-page-size select { padding:4px 6px; min-height:28px; font-size:11px; }
.registry-access-note { text-align:center; font-size:11px; color:#79808a; padding:23px 0 0; line-height:1.8; }
.registry-access-note>i { margin-right:5px; }
.registry-access-note a { color:var(--red); margin-left:7px; }
.registry-empty { background:#fff; border:1px solid #e2e6eb; border-radius:9px; text-align:center; padding:55px 20px; }
.registry-empty>i { font-size:28px; color:var(--red); margin-bottom:17px; }
.registry-empty h3 { font:700 24px/1.3 var(--heading); }
.registry-empty p { color:#677180; margin-top:10px; }
.registry-empty .btn { margin-top:22px; }
.registry-detail-hero { position:relative; overflow:hidden; border-bottom:1px solid #e7e9ec; background:#f6f5f3; }
.registry-detail-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#f8f7f5 0%,#f8f7f5f5 50%,#f8f7f58a 72%,#f8f7f51f),url('../newspictures/tarsashazak_ujepitesu_ChatGPT.png') center right/cover no-repeat; }
.registry-detail-hero>.home-container { position:relative; padding-top:20px; padding-bottom:43px; }
.registry-detail-hero .registry-breadcrumbs { margin-bottom:25px; }
.registry-detail-identity { display:grid; grid-template-columns:145px minmax(0,1fr) auto; align-items:center; gap:28px; }
.registry-detail-logo { width:145px; height:125px; display:grid; place-items:center; padding:17px; border:1px solid #e1e3e6; border-radius:10px; background:#fffffff2; box-shadow:0 8px 25px #202a360c; color:var(--red); font-size:50px; }
.registry-detail-logo img { max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }
.registry-detail-title { min-width:0; }
.registry-detail-badges { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-bottom:9px; }
.registry-detail-badges>span { display:inline-flex; align-items:center; gap:6px; border-radius:20px; padding:5px 9px; background:#edf6ef; color:#2d7446; font-size:9px; font-weight:600; text-transform:uppercase; letter-spacing:.35px; }
.registry-detail-badges>.registry-credit { background:#fff3e5; color:#98600a; }
.registry-detail-title h1 { max-width:790px; font:700 clamp(31px,3.45vw,48px)/1.08 var(--heading); letter-spacing:-.75px; overflow-wrap:anywhere; }
.registry-detail-title>p { color:#4f5864; font-size:14px; font-weight:500; margin-top:8px; }
.registry-detail-tags { display:flex; align-items:center; flex-wrap:wrap; gap:8px 22px; margin-top:15px; color:#606a76; font-size:11px; }
.registry-detail-tags span { display:inline-flex; align-items:flex-start; gap:7px; }
.registry-detail-tags i { color:var(--red); margin-top:2px; }
.registry-capacity { min-width:175px; display:flex; align-items:center; gap:11px; border:1px solid #d9e6dc; border-radius:8px; padding:13px 15px; background:#f4faf5e8; color:#2f7447; }
.registry-capacity>i { display:grid; place-items:center; width:31px; height:31px; border-radius:50%; background:#dfeee3; flex:0 0 31px; }
.registry-capacity small { display:block; color:#6e7973; font-size:9px; text-transform:uppercase; letter-spacing:.3px; margin-bottom:2px; }
.registry-capacity strong { display:block; font:600 12px/1.3 var(--heading); }
.registry-capacity--closed { border-color:#e2e3e5; background:#f4f5f6e8; color:#656c75; }
.registry-capacity--closed>i { background:#e5e7e9; }
.registry-detail-missing-title { padding:18px 0 7px; }
.registry-detail-missing-title>span { color:var(--red); font-size:11px; font-weight:700; letter-spacing:.5px; }
.registry-detail-missing-title h1 { font:700 42px/1.15 var(--heading); margin-top:5px; }
.registry-detail-missing-title p { color:#606976; font-size:14px; margin-top:10px; }
.registry-detail { padding-top:24px; padding-bottom:35px; min-height:460px; }
.registry-back { display:inline-flex; align-items:center; gap:10px; color:#5d6672; font-size:12px; margin-bottom:20px; }
.registry-back:hover { color:var(--red); }
.registry-profile-layout { display:grid; grid-template-columns:minmax(0,2.1fr) minmax(285px,.9fr); gap:20px; align-items:start; }
.registry-profile-main,.registry-profile-sidebar { min-width:0; display:flex; flex-direction:column; gap:17px; }
.registry-profile-sidebar { position:sticky; top:14px; }
.registry-profile-panel,.registry-contact-card,.registry-own-profile,.registry-detail-help { border:1px solid #e1e5e9; border-radius:9px; background:#fff; box-shadow:0 5px 17px #26334508; }
.registry-profile-panel { padding:22px; }
.registry-profile-panel>header { display:flex; align-items:center; gap:13px; padding-bottom:16px; margin-bottom:3px; border-bottom:1px solid #e8eaed; }
.registry-profile-panel>header>span { display:grid; place-items:center; width:42px; height:42px; flex:0 0 42px; border-radius:8px; color:var(--red); background:#faedef; font-size:19px; }
.registry-profile-panel header small { display:block; color:var(--red); font-size:9px; font-weight:600; letter-spacing:.45px; margin-bottom:3px; }
.registry-profile-panel h2 { font:700 23px/1.25 var(--heading); }
.registry-profile-panel dl { margin:0; }
.registry-profile-panel dl>div { display:grid; grid-template-columns:minmax(130px,.75fr) minmax(0,1.25fr); gap:20px; padding:14px 2px; border-top:1px solid #eff0f2; }
.registry-profile-panel dl>div:first-child { border-top:0; }
.registry-profile-panel dt { color:#727a85; font-size:11px; line-height:1.55; }
.registry-profile-panel dd { margin:0; color:#292f36; font-size:12px; font-weight:600; line-height:1.55; text-align:right; overflow-wrap:anywhere; }
.registry-area-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-bottom:1px solid #e8eaed; }
.registry-area-summary p { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:104px; padding:14px; border-left:1px solid #e8eaed; text-align:center; }
.registry-area-summary p:first-child { border-left:0; }
.registry-area-summary strong { font:700 31px/1 var(--heading); color:var(--red); }
.registry-area-summary span { color:#737b85; font-size:10px; margin-top:7px; }
.registry-town-list { display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding-top:17px; }
.registry-town-list li { display:inline-flex; align-items:flex-start; gap:7px; max-width:100%; border:1px solid #e4e6e9; border-radius:6px; background:#f8f9fa; padding:7px 10px; color:#47515e; font-size:10px; line-height:1.45; overflow-wrap:anywhere; }
.registry-town-list i { color:var(--red); margin-top:2px; }
.registry-service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 22px; }
.registry-service-grid>div { display:flex; align-items:flex-start; gap:12px; padding:16px 1px; border-bottom:1px solid #eceef0; }
.registry-service-grid>div>span { display:grid; place-items:center; width:37px; height:37px; flex:0 0 37px; border-radius:50%; background:#f4f5f6; color:var(--red); font-size:15px; }
.registry-service-grid p { min-width:0; }
.registry-service-grid small { display:block; color:#737b85; font-size:9px; line-height:1.35; text-transform:uppercase; letter-spacing:.3px; margin-bottom:4px; }
.registry-service-grid strong { display:block; color:#2c333b; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.registry-contact-card { padding:22px; border-top:3px solid var(--red); }
.registry-contact-kicker { display:block; color:var(--red); font-size:9px; font-weight:600; letter-spacing:.45px; margin-bottom:6px; }
.registry-contact-card h2 { font:700 23px/1.25 var(--heading); overflow-wrap:anywhere; }
.registry-contact-list { margin-top:13px; }
.registry-contact-list>a { display:flex; align-items:flex-start; gap:11px; padding:13px 0; border-top:1px solid #eaeced; color:#282f36; }
.registry-contact-list>a:hover strong { color:var(--red); }
.registry-contact-list>a>span { display:grid; place-items:center; width:35px; height:35px; flex:0 0 35px; border-radius:50%; background:#faedef; color:var(--red); font-size:14px; }
.registry-contact-list p { min-width:0; }
.registry-contact-list small { display:block; color:#7b828b; font-size:9px; text-transform:uppercase; letter-spacing:.35px; margin-bottom:3px; }
.registry-contact-list strong { display:block; font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.registry-contact-note { display:flex; align-items:flex-start; gap:7px; padding:10px; border-radius:5px; background:#f6f7f8; color:#757d87; font-size:9px; line-height:1.55; margin-top:11px; }
.registry-contact-note i { color:var(--red); margin-top:2px; }
.registry-own-profile,.registry-detail-help { padding:20px; }
.registry-own-profile>i,.registry-detail-help>i { color:var(--red); font-size:24px; margin-bottom:11px; }
.registry-own-profile h2,.registry-detail-help h2 { font:700 20px/1.3 var(--heading); }
.registry-own-profile p,.registry-detail-help p { color:#68717c; font-size:11px; line-height:1.6; margin-top:6px; }
.registry-own-profile .btn { width:100%; justify-content:space-between; font-size:10px; padding:9px 11px; margin-top:15px; }
.registry-detail-help>a { display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--red); font-size:11px; font-weight:600; margin-top:14px; }
.registry-access { display:flex; gap:22px; padding:34px; margin:3px 0 24px; border:1px solid #e6dede; border-top:3px solid var(--red); border-radius:9px; background:linear-gradient(115deg,#fff8f8,#fff); box-shadow:0 6px 20px #26334508; }
.registry-access-icon { display:grid; place-items:center; color:var(--red); background:#fbeaec; width:54px; height:54px; border-radius:50%; flex:0 0 54px; font-size:21px; }
.registry-access>div { min-width:0; }
.registry-access-kicker { display:block; color:var(--red); font-size:9px; font-weight:600; letter-spacing:.45px; margin-bottom:6px; }
.registry-access h2 { font:700 27px/1.3 var(--heading); }
.registry-access p { max-width:750px; color:#68717d; font-size:13px; line-height:1.7; margin-top:10px; }
.registry-access-actions { display:flex; flex-wrap:wrap; gap:11px; margin-top:21px; }
.registry-access-actions .btn { font-size:11px; padding:10px 16px; }
.registry-access-benefits { display:flex; flex-wrap:wrap; gap:10px 24px; border-top:1px solid #eadfe1; margin-top:24px; padding-top:17px; color:#606974; font-size:10px; }
.registry-access-benefits span { display:inline-flex; align-items:center; gap:7px; }
.registry-access-benefits i { color:#2d7446; }
.registry-detail-empty { margin-bottom:20px; }
@media(min-width:1400px) {
  .registry-hero { padding-bottom:100px; }
  .registry-hero-layout { min-height:245px; }
  .registry-stats { padding:27px 16px; }
  .registry-stats i { font-size:38px; }
  .registry-card { grid-template-columns:145px minmax(230px,1.6fr) minmax(170px,1fr) minmax(200px,1.2fr) 52px; }
}
@media(max-width:1100px) {
  .registry-hero-layout { gap:24px; grid-template-columns:1.1fr 1fr; }
  .registry-intro h1 { font-size:43px; padding-left:17px; }
  .registry-intro p { font-size:14px; }
  .registry-stats strong { font-size:19px; }
  .registry-stats span { font-size:11px; }
  .registry-stats>div { padding-inline:6px; }
  .registry-filters { gap:12px; grid-template-columns:minmax(195px,1.7fr) minmax(115px,1fr) minmax(148px,1.2fr) minmax(115px,1fr) auto; padding-inline:17px; }
  .registry-search-submit { padding-inline:15px; }
  .registry-card { grid-template-columns:94px minmax(190px,1.5fr) minmax(135px,1fr) minmax(150px,1fr) 42px; gap:14px; padding-left:12px; }
  .registry-logo img { max-width:88px; }
  .registry-company>strong { font-size:19px; }
}
@media(max-width:860px) {
  .registry-hero { padding-top:13px; }
  .registry-hero-layout { grid-template-columns:1fr; gap:28px; }
  .registry-breadcrumbs { margin-bottom:23px; }
  .registry-intro h1 { font-size:48px; }
  .registry-intro p { max-width:530px; }
  .registry-stats { max-width:540px; padding:18px 10px; }
  .registry-stats i { font-size:27px; margin-bottom:10px; }
  .registry-hero::before { background:linear-gradient(90deg,#f8f7f5f7 0%,#f8f7f5df 35%,#f8f7f555),url('../newspictures/tarsashazak_ujepitesu_ChatGPT.png') center/cover no-repeat; }
  .registry-filters { grid-template-columns:repeat(3,minmax(0,1fr)); padding:19px; gap:15px; }
  .registry-search-field { grid-column:1/3; grid-row:1; }
  .registry-search-submit { grid-column:3; grid-row:1; }
  .registry-card { grid-template-columns:75px minmax(0,1.35fr) minmax(0,1fr) 39px; gap:12px; padding-left:10px; }
  .registry-logo img { max-width:70px; }
  .registry-company { padding-block:16px 0; }
  .registry-location { padding:14px 0 0; }
  .registry-tags { grid-column:2/4; grid-row:2; padding:0 0 15px; }
  .registry-card-arrow { grid-column:4; grid-row:1/3; }
  .registry-logo { grid-row:1/3; }
  .registry-results-header { flex-wrap:wrap; }
}
@media(max-width:520px) {
  .registry-main { padding-bottom:22px; }
  .registry-hero { padding-top:5px; padding-bottom:72px; }
  .registry-breadcrumbs { font-size:10px; gap:8px; }
  .registry-intro h1 { font-size:clamp(30px,8.9vw,43px); border-width:4px; padding-left:12px; letter-spacing:-.9px; }
  .registry-intro p { font-size:13px; margin-top:16px; line-height:1.7; }
  .registry-stats { gap:0; padding:17px 4px; border-radius:9px; }
  .registry-stats>div { padding-inline:4px; }
  .registry-stats i { font-size:25px; }
  .registry-stats strong { font-size:17px; }
  .registry-stats span { font-size:10px; }
  .registry-filters { padding:17px; gap:14px 10px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .registry-search-field { grid-column:1/-1; }
  .registry-field:nth-of-type(3) { grid-column:1/-1; }
  .registry-field:nth-of-type(4) { grid-column:2; grid-row:2; }
  .registry-search-submit { grid-column:1/-1; grid-row:auto; }
  .registry-field select { font-size:12px; padding-left:8px; }
  .registry-results { padding-top:23px; }
  .registry-results-header { margin-bottom:15px; gap:15px; }
  .registry-results-header>div { width:100%; justify-content:space-between; }
  .registry-results h2 { font-size:22px; }
  .registry-sort { width:100%; }
  .registry-sort select { flex:1; min-width:0; }
  .registry-card { grid-template-columns:57px minmax(0,1fr) 32px; gap:9px 11px; min-height:130px; padding-left:9px; }
  .registry-logo { grid-row:1/3; height:auto; padding:12px 0; }
  .registry-logo img { max-width:57px; max-height:60px; }
  .registry-logo-placeholder { width:47px; height:50px; font-size:25px; border-radius:9px; }
  .registry-company { grid-column:2; padding-top:15px; }
  .registry-company>strong { font-size:19px; }
  .registry-company>span { font-size:11px; }
  .registry-location { grid-column:2; grid-row:2; padding:0; font-size:11px; gap:7px; }
  .registry-location small { font-size:10px; }
  .registry-tags { grid-column:2; grid-row:3; gap:5px; padding-bottom:14px; }
  .registry-tags>span { font-size:9px; padding:5px 7px; }
  .registry-card-arrow { grid-column:3; grid-row:1/4; font-size:15px; }
  .registry-pagination { gap:4px; }
  .registry-pagination>a { min-width:29px; height:32px; }
  .registry-pagination>.registry-outer-page { display:none; }
  .registry-access-note { font-size:10px; }
  .registry-access-note a { display:block; }
  .registry-detail>h1 { font-size:29px; }
  .registry-access { flex-direction:column; padding:22px 19px; gap:16px; }
  .registry-access h2 { font-size:23px; }
  .registry-access-actions { flex-direction:column; }
  .registry-access-actions .btn { white-space:normal; justify-content:center; }
}
@media(max-width:1100px) {
  .registry-detail-identity { grid-template-columns:120px minmax(0,1fr) auto; gap:21px; }
  .registry-detail-logo { width:120px; height:108px; padding:14px; }
  .registry-capacity { min-width:158px; padding:11px 12px; }
  .registry-profile-layout { grid-template-columns:minmax(0,1.8fr) minmax(260px,.9fr); }
  .registry-service-grid { gap-inline:15px; }
}
@media(max-width:860px) {
  .registry-detail-hero::before { background:linear-gradient(90deg,#f8f7f5f7 0%,#f8f7f5dc 60%,#f8f7f55c),url('../newspictures/tarsashazak_ujepitesu_ChatGPT.png') center/cover no-repeat; }
  .registry-detail-identity { grid-template-columns:105px minmax(0,1fr); align-items:start; }
  .registry-detail-logo { width:105px; height:95px; }
  .registry-detail-title h1 { font-size:37px; }
  .registry-capacity { grid-column:2; justify-self:start; min-width:0; }
  .registry-profile-layout { grid-template-columns:minmax(0,1fr); }
  .registry-profile-sidebar { position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
  .registry-contact-card { grid-row:span 2; }
}
@media(max-width:520px) {
  .registry-detail-hero>.home-container { padding-top:13px; padding-bottom:29px; }
  .registry-detail-hero .registry-breadcrumbs { margin-bottom:19px; }
  .registry-detail-identity { grid-template-columns:76px minmax(0,1fr); gap:14px; }
  .registry-detail-logo { width:76px; height:72px; padding:10px; border-radius:8px; font-size:32px; }
  .registry-detail-badges { margin-bottom:6px; }
  .registry-detail-badges>span { font-size:8px; padding:4px 7px; }
  .registry-detail-title h1 { font-size:27px; letter-spacing:-.35px; }
  .registry-detail-title>p { font-size:12px; margin-top:6px; }
  .registry-detail-tags { grid-column:1/-1; display:grid; gap:7px; margin-top:11px; font-size:10px; }
  .registry-capacity { grid-column:1/-1; padding:10px 12px; width:100%; }
  .registry-detail { padding-top:18px; }
  .registry-back { margin-bottom:16px; font-size:11px; }
  .registry-profile-panel { padding:16px; }
  .registry-profile-panel>header { align-items:flex-start; }
  .registry-profile-panel h2 { font-size:21px; }
  .registry-profile-panel dl>div { grid-template-columns:minmax(0,1fr); gap:4px; padding:12px 0; }
  .registry-profile-panel dd { text-align:left; }
  .registry-area-summary strong { font-size:26px; }
  .registry-area-summary p { min-height:91px; padding:10px 7px; }
  .registry-town-list { gap:6px; }
  .registry-town-list li { width:100%; }
  .registry-service-grid { grid-template-columns:minmax(0,1fr); }
  .registry-profile-sidebar { grid-template-columns:minmax(0,1fr); }
  .registry-contact-card { grid-row:auto; padding:18px; }
  .registry-access { flex-direction:column; padding:23px 19px; gap:16px; }
  .registry-access h2 { font-size:23px; }
  .registry-access-actions { flex-direction:column; }
  .registry-access-actions .btn { width:100%; }
  .registry-access-benefits { display:grid; gap:10px; }
  .registry-detail-missing-title h1 { font-size:31px; }
}
@media(prefers-reduced-motion:reduce) { .registry-card { transition:none; } }
