/* Medical service page, first working version, 20.10.2026. */
body { --med-ink:#282828; --med-muted:#62645f; --med-paper:#f3f3ef; --med-accent:#9c4e40; }
.med-section { padding:88px 0; }
.med-wrap { width:min(1480px,calc(100% - clamp(48px,8vw,128px))); margin-inline:auto; }
.med-kicker { margin:0 0 18px; font:600 12px/1.5 Inter,Arial,sans-serif; letter-spacing:.16em; text-transform:uppercase; color:var(--med-accent); }
.med-heading { max-width:1080px; margin:0 0 26px; font:500 clamp(32px,4.2vw,60px)/1.08 Oswald,Arial,sans-serif; letter-spacing:-.02em; text-transform:uppercase; color:var(--med-ink); }
.med-lead { max-width:800px; margin:0 0 34px; color:var(--med-muted); font:400 17px/1.7 Inter,Arial,sans-serif; }
.med-section h3 { margin:0 0 12px; font:500 25px/1.2 Oswald,Arial,sans-serif; }
.med-section p { text-wrap:pretty; }
.med-section :is(p,li) { font-size:16px; line-height:1.65; }
.med-section :is(a,button):focus-visible { outline:3px solid var(--med-accent); outline-offset:5px; }
.med-link { display:inline-block; margin-top:16px; padding-bottom:5px; border-bottom:1px solid currentColor; font-size:14px; font-weight:600; text-decoration:none; }
.med-sectors { padding-bottom:66px; }
.med-sector-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; }
.med-sector { margin:0; min-width:0; background:var(--med-paper); }
.med-sector picture { display:block; aspect-ratio:4/3; overflow:hidden; }
.med-sector img { display:block; width:100%; height:100%; object-fit:cover; }
.med-sector figcaption { min-height:78px; padding:18px 16px; font:500 21px/1.2 Oswald,Arial,sans-serif; }
.med-offer { background:var(--med-paper); }
.med-offer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; border-top:1px solid #cecec6; border-bottom:1px solid #cecec6; }
.med-offer-card { padding:30px 28px; min-width:0; }
.med-offer-card:first-child { padding-left:0; }
.med-offer-card + .med-offer-card { border-left:1px solid #cecec6; }
.med-offer-number { display:block; margin-bottom:28px; color:var(--med-accent); font:400 16px/1 Oswald,Arial,sans-serif; }
.med-offer-card p { margin:0 0 18px; color:var(--med-muted); }
.med-offer-card ul { margin:0; padding-left:19px; }
.med-offer-card li { margin:8px 0; }
.med-offer-footer { display:flex; align-items:flex-start; justify-content:space-between; gap:40px; margin-top:30px; }
.med-offer-footer p { max-width:700px; margin:0; color:var(--med-muted); }
.med-button { display:inline-flex; justify-content:center; align-items:center; min-height:50px; padding:14px 24px; background:var(--med-ink); color:white; text-decoration:none; font:600 14px/1.4 Inter,Arial,sans-serif; }
.med-case + .med-case { border-top:1px solid #dddcd4; background:#f7f7f3; }
.med-case-top { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:60px; align-items:end; margin-bottom:36px; }
.med-case-top .med-heading { margin-bottom:0; }
.med-facts { display:grid; grid-template-columns:1fr 1fr; margin:0; border-top:1px solid #ccc; }
.med-facts div { padding:15px 10px 0 0; }
.med-facts dt { color:var(--med-muted); font-size:12px; line-height:1.5; }
.med-facts dd { margin:5px 0 0; font:500 23px/1.2 Oswald,Arial,sans-serif; }
.med-case-body { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:48px; align-items:center; }
.med-case-main { margin:0; min-width:0; }
.med-case-main picture { display:block; background:#e6e5de; }
.med-case-main img { display:block; width:100%; height:auto; max-height:680px; object-fit:contain; }
.med-case--gorlab .med-case-body { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
.med-case--gorlab .med-case-main img { aspect-ratio:3/4; object-fit:contain; }
.med-case figcaption { margin-top:12px; color:var(--med-muted); font-size:13px; line-height:1.55; }
.med-case-points { display:grid; gap:26px; }
.med-case-points article { padding-bottom:22px; border-bottom:1px solid #d3d3ca; }
.med-case-points p { margin:0; color:var(--med-muted); }
.med-case-images { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:36px; }
.med-case-images figure { margin:0; min-width:0; }
.med-case-images picture { display:block; aspect-ratio:16/10; background:#e6e5de; }
.med-case-images img { width:100%; height:100%; object-fit:cover; display:block; }
.med-case--gorlab .med-case-images img { object-fit:contain; }
.med-case-bottom { margin-top:26px; display:flex; justify-content:space-between; align-items:baseline; gap:28px; }
.med-case-bottom p { max-width:780px; margin:0; }
.med-case-bottom .med-link { white-space:nowrap; }
.medical-messenger-panel .med-consult-intro { text-align:center; max-width:760px; margin:0 auto 32px; padding-inline:24px; }
.med-cabinet-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.med-cabinet-grid article { min-width:0; }
.med-cabinet-grid picture { display:block; aspect-ratio:4/3; margin-bottom:22px; }
.med-cabinet-grid img { width:100%;height:100%;object-fit:cover;display:block; }
.med-cabinet-grid p { margin:0; color:var(--med-muted); }
.med-planning { background:var(--med-paper); }
.med-planning-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:64px; }
.med-planning-steps { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.med-planning-step { border-top:2px solid #b8b8ac; padding-top:18px; }
.med-planning-step span { display:block; margin-bottom:14px; color:var(--med-accent); font:500 15px/1 Oswald,Arial,sans-serif; }
.med-planning-step p { margin:0; color:var(--med-muted); }
body .hero { min-height:760px; min-height:85svh; padding-block:150px 90px; background-image:linear-gradient(90deg,rgba(0,0,0,.65),rgba(0,0,0,.22)),url('/assets/pages/portfolio-projects/20220720-cclinic/20220720-cclinic-int-med-rc-render-01-os-01/main.webp?v=ba63b1b29916'); }
body .hero-left { width:min(980px,90%); padding-left:0; }
body .hero__lower { padding-top:12px; }
body .hero__description { max-width:680px; }
body .hero__title { max-width:1000px; }
body .medical-hero-messengers { margin-top:24px; }
body .combined-gallery #projects { padding-block:80px; }
body :is(.med-section,#projects,#medical-tech-title,#medical-work-stages,#medical-cost,#competencies,#qa-examples,#messenger-consultation) { scroll-margin-top:155px; }
@media (max-width:1100px) {
 .med-sector-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .med-case-body { gap:30px; grid-template-columns:minmax(0,1.1fr) minmax(270px,.9fr); }
 .med-case-top { grid-template-columns:minmax(0,1fr) 260px; gap:30px; }
 .med-planning-grid { gap:36px; }
 .med-offer-card { padding-inline:20px; }
}
@media (max-width:760px) {
 .med-section { padding-block:56px; }
 .med-heading { font-size:36px; }
 .med-lead { font-size:16px; margin-bottom:26px; }
 .med-sector-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .med-sector figcaption { font-size:20px; min-height:72px; padding:14px 12px; }
 .med-sector-link:last-child { grid-column:1/-1; }
 .med-sector-link:last-child .med-sector { display:grid; grid-template-columns:1fr 1fr; align-items:center; }
 .med-offer-grid,.med-case-top,.med-case-body,.med-cabinet-grid,.med-planning-grid { grid-template-columns:1fr; gap:26px; }
 .med-offer-card,.med-offer-card:first-child { padding:26px 0; }
 .med-offer-card + .med-offer-card { border-left:0; border-top:1px solid #cecec6; }
 .med-offer-number { margin-bottom:14px; }
 .med-offer-footer,.med-case-bottom { flex-direction:column; gap:20px; align-items:flex-start; }
 .med-case-top { margin-bottom:26px; }
 .med-case-points { gap:20px; }
 .med-case-images { grid-template-columns:1fr; margin-top:26px; gap:24px; }
 .med-case--gorlab .med-case-body { grid-template-columns:1fr; }
 .med-case--gorlab .med-case-main img { aspect-ratio:3/4; }
 .med-case-main img { max-height:none; }
 .med-planning-steps { grid-template-columns:1fr; }
 body .hero { min-height:720px; min-height:86svh; padding-block:130px 55px; }
 body .hero-left { width:100%; }
 body .hero__title { font-size:clamp(44px,11vw,72px); }
 body .hero__description { font-size:16px; line-height:1.6; }
 body .combined-gallery #projects { padding-block:56px; }
}

/* Compact directions: images first, explanatory text immediately below. */
body .med-sectors { padding-top:52px; padding-bottom:28px; }
.med-sectors .med-profiles-lead { max-width:1000px; margin:24px 0 0; }
@media(max-width:760px){body .med-sectors{padding-top:36px;padding-bottom:24px;}}

/* Image previews link directly to the full room examples below. */
.med-room-links { margin-top:28px; }
.med-room-links h3 { margin:0 0 16px;font:500 23px/1.3 Oswald,Arial,sans-serif; }
.med-room-links > div { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px; }
.med-room-links a { display:flex;flex-direction:column;min-width:0;border:1px solid #d4d4ca;background:#f3f3ef;color:#282828;text-decoration:none;transition:background .18s,border-color .18s; }
.med-room-links img { display:block;width:100%;height:auto;aspect-ratio:8/5;object-fit:cover; }
.med-room-link-title { display:block;padding:13px 12px 10px;font:500 18px/1.35 Oswald,Arial,sans-serif; }
.med-room-link-action { display:flex;justify-content:space-between;gap:8px;margin-top:auto;padding:0 12px 14px;color:#934636;font:600 12px/1.5 Inter,Arial,sans-serif;text-decoration:underline;text-underline-offset:3px; }
.med-room-links a:hover { background:#e9e8e0;border-color:#727369; }
.med-room-links a:focus-visible { outline:3px solid #9c4e40;outline-offset:4px; }
@media(max-width:1100px){.med-room-links > div{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:760px){.med-room-links > div{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}.med-room-link-title{font-size:18px;}}

/* Offer descriptions fold independently on phones. */
.med-offer-details > summary { display:block;list-style:none; }
.med-offer-details > summary::-webkit-details-marker { display:none; }
.med-offer-toggle { display:none; }
.med-offer-details > summary:focus-visible { outline:3px solid var(--med-accent);outline-offset:5px; }
@media(max-width:760px){
 .med-offer-grid { gap:0; }
 .med-offer-details > summary { display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;cursor:pointer; }
 .med-offer-details > summary h3 { margin:0; }
 .med-offer-toggle { display:block;flex:0 0 28px;width:28px;height:28px;position:relative;color:var(--med-accent); }
 .med-offer-toggle::before,.med-offer-toggle::after { content:"";position:absolute;top:13px;left:6px;width:16px;height:2px;background:currentColor; }
 .med-offer-toggle::after { transform:rotate(90deg); }
 .med-offer-details[open] .med-offer-toggle::after { transform:none; }
 .med-offer-description { padding-top:16px; }
}

/* Desktop introduction: concise evidence and direct paths to the case studies. */
.med-hero-evidence { display:none; }
@media(min-width:761px){
 body .hero { min-height:85svh;padding-block:170px 56px;background-image:linear-gradient(90deg,rgba(0,0,0,.73),rgba(0,0,0,.52)),url('/assets/pages/portfolio-projects/20220720-cclinic/20220720-cclinic-int-med-rc-render-01-os-01/main.webp?v=ba63b1b29916'); }
 body .hero__container { width:min(1480px,calc(100% - clamp(48px,8vw,128px)));margin-inline:auto; }
 body .hero-left { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:64px;row-gap:26px;width:100%;max-width:none;min-height:0;padding:0;align-content:center; }
 body .hero__intro { grid-column:1;grid-row:1; }
 body .hero__title { font-size:clamp(52px,5.3vw,82px);line-height:1;letter-spacing:-.025em;margin-bottom:24px; }
 body .hero__description { max-width:560px;font-size:16px;line-height:1.6;margin:0; }
 body .hero__lower { grid-column:1;grid-row:2;align-self:end;margin:0;padding:0; }
 body .hero__buttons { margin:0;gap:12px; }
 body .hero__button { min-height:48px;padding-inline:20px;font-size:11px; }
 body .medical-hero-messengers { margin-top:20px; }
 .med-hero-evidence { display:grid;grid-column:2;grid-row:1/3;align-content:start;gap:24px;color:#fff; }
 .med-hero-facts { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px; }
 .med-hero-facts > div { border-top:1px solid rgba(255,255,255,.4);padding-top:12px; }
 .med-hero-facts .med-hero-fact-title { margin:0 0 8px;font:500 21px/1.2 Oswald,Arial,sans-serif;color:#fff; }
 .med-hero-facts p { margin:0;font:400 13px/1.55 Inter,Arial,sans-serif;color:rgba(255,255,255,.83); }
 .med-hero-stories { display:grid;gap:10px; }
 .med-hero-stories a { display:grid;gap:7px;padding:14px 18px;border:1px solid rgba(255,255,255,.45);background:rgba(20,24,22,.55);color:#fff;text-decoration:none; }
 .med-hero-story-label { font:500 11px/1.4 Inter,Arial,sans-serif;color:#e0c5ab; }
 .med-hero-stories strong { font:500 20px/1.25 Oswald,Arial,sans-serif; }
 .med-hero-story-action { display:flex;justify-content:space-between;font:500 12px/1.5 Inter,Arial,sans-serif;text-decoration:underline;text-underline-offset:3px; }
 .med-hero-stories a:hover { background:rgba(20,24,22,.85);border-color:#fff; }
 .med-hero-stories a:focus-visible { outline:3px solid #e0c5ab;outline-offset:4px; }
}
@media(min-width:761px) and (max-width:1100px){
 body .hero-left { column-gap:30px; }
 body .hero__title { font-size:52px; }
 .med-hero-facts { gap:16px; }
 .med-hero-facts .med-hero-fact-title { font-size:19px; }
 body .hero__buttons { flex-wrap:wrap; }
}

@media(min-width:761px){
 body.medical-local-nav-active .hero { padding-top:calc(var(--medical-header-height,70px) + var(--medical-local-nav-height,50px) + 24px);padding-bottom:40px; }
 body.medical-local-nav-active .hero__container,body.medical-local-nav-active .hero-left { min-height:0; }
}

/* Each direction opens the project shown in its image. */
.med-sector-link { display:block;min-width:0;color:var(--med-ink);text-decoration:none;background:var(--med-paper); }
.med-sector-action { display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;color:#934636;font:500 12px/1.5 Inter,Arial,sans-serif;text-decoration:underline;text-underline-offset:3px; }
.med-sector-link:hover { background:#e9e8e0; }
.med-sector-link:hover .med-sector { background:transparent; }
.med-sector-link:focus-visible { outline:3px solid var(--med-accent);outline-offset:4px; }

/* One visual rhythm for directions and room previews. */
body .med-room-links h3 { margin:0 0 18px;color:var(--med-accent);font:600 12px/1.5 Inter,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase; }
.med-room-links--five > div { grid-template-columns:repeat(5,minmax(0,1fr));gap:14px; }
.med-room-links--five a { border:0;background:var(--med-paper); }
.med-room-links--five img { aspect-ratio:4/3; }
.med-room-links--five .med-room-link-title { padding:16px 16px 10px;font:500 21px/1.2 Oswald,Arial,sans-serif; }
.med-room-links--five .med-room-link-action { padding:0 16px 16px; }
.med-sector-link .med-sector { height:100%;display:flex;flex-direction:column; }
.med-sector-link figcaption { display:flex;flex:1;flex-direction:column;gap:12px; }
.med-sector-link .med-sector-action { margin-top:auto; }
@media(min-width:761px){
 body .hero { min-height:100svh; }
 body .hero__container { min-height:0; }
 .med-sector-link figcaption { min-height:112px; }
 .med-room-links--five .med-room-link-title { min-height:76px; }
}
@media(min-width:761px) and (max-width:1100px){
 .med-sector-grid,.med-room-links--five > div { grid-template-columns:repeat(5,minmax(0,1fr));gap:10px; }
 .med-sector figcaption,.med-room-links--five .med-room-link-title { font-size:18px;padding-inline:10px; }
 .med-room-links--five .med-room-link-action { padding-inline:10px; }
}
@media(max-width:760px){
 .med-room-links--five > div { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
 .med-room-links--five .med-room-link-title { font-size:20px;padding:14px 12px 10px; }
 .med-room-links--five .med-room-link-action { padding-inline:12px; }
 .med-room-links--five a:last-child { grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr; }
 .med-room-links--five a:last-child img { grid-row:1/3;height:100%; }
 .med-room-links--five a:last-child .med-room-link-title { align-self:end; }
 .med-sector-link:last-child .med-sector { display:grid; }
}

/* Matching section headings above both image rows. */
body #medical-profiles-title,body .med-room-links h3 {
 margin:0 0 22px;color:var(--med-ink);font:500 clamp(24px,2.2vw,32px)/1.25 Oswald,Arial,sans-serif;letter-spacing:0;text-transform:uppercase;
}

/* Normative references accompany the lower page content. */
body .med-standards { padding-block:44px;background:var(--med-paper); }
.med-standards h2 { max-width:1050px;margin:0 0 18px;font:500 clamp(26px,2.5vw,36px)/1.2 Oswald,Arial,sans-serif;color:var(--med-ink);text-transform:uppercase; }
.med-standards p { max-width:1000px;margin:0;color:var(--med-muted); }
.med-standards-list { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:0;margin:24px 0;list-style:none; }
.med-standards-list li { padding-top:15px;border-top:1px solid #cecec6; }
.med-standards-list a { display:inline-block;color:var(--med-ink);font:500 21px/1.3 Oswald,Arial,sans-serif;text-underline-offset:4px; }
.med-standards-list span { display:block;margin-top:10px;color:var(--med-muted);font:400 14px/1.6 Inter,Arial,sans-serif; }
.med-standards .med-standards-note { font-size:13px; }
@media(max-width:760px){.med-standards-list{grid-template-columns:1fr;gap:18px;}body .med-standards{padding-block:36px;}}
