/* ---------- Renk ve tipografi değişkenleri (logodan alındı) ---------- */
:root{
  --red:#EA1F27;            /* logo kırmızısı: şekiller, çizgiler */
  --red-deep:#D3131B;       /* beyaz metin taşıyan zeminler ve butonlar */
  --red-press:#B00F16;
  --charcoal:#4A4849;       /* logo gri: "osgb" harfleri */
  --charcoal-deep:#3A3839;
  --charcoal-darker:#2C2A2B;

  --bg:#FFFFFF;
  --bg-alt:#F3F2F2;
  --ink:#333132;
  --muted:#5F5B5C;
  --line:#DAD7D7;
  --link:#C8161D;

  --font-display:"Archivo","Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --font-body:"Source Sans 3","Segoe UI",Tahoma,Arial,sans-serif;

  --bs-body-bg:var(--bg);
  --bs-body-color:var(--ink);
  --bs-body-font-family:var(--font-body);
  --bs-body-font-size:1.0625rem;
  --bs-body-line-height:1.6;
  --bs-heading-color:inherit;
  --bs-border-radius:0;--bs-border-radius-sm:0;--bs-border-radius-lg:0;--bs-border-radius-xl:0;--bs-border-radius-pill:0;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#242223;--bg-alt:#2D2B2C;--ink:#F1EFEF;--muted:#BCB8B9;--line:#484546;--link:#FF7A80;--close-filter:invert(1);
  }
}
:root[data-theme="dark"]{
  --bg:#242223;--bg-alt:#2D2B2C;--ink:#F1EFEF;--muted:#BCB8B9;--line:#484546;--link:#FF7A80;--close-filter:invert(1);
}

html{scroll-padding-top:84px}
.visually-hidden-input{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
body{background:var(--bg);color:var(--ink);font-family:var(--font-body)}
h1,h2,h3,h4,.display-face{
  font-family:var(--font-display);font-stretch:78%;font-weight:800;
  line-height:1.04;letter-spacing:-.005em;margin:0 0 1rem;
}
h1{font-size:clamp(2.7rem,6.4vw,5.1rem)}
h2{font-size:clamp(2rem,4.2vw,3.1rem)}
h3{font-size:clamp(1.5rem,2.6vw,1.9rem)}
h4{font-size:1.2rem;font-stretch:85%;font-weight:700;line-height:1.2}
p{max-width:62ch}
a{color:var(--link)}
:focus-visible{outline:3px solid var(--red-deep);outline-offset:3px}
.on-dark :focus-visible,.band :focus-visible,.on-band :focus-visible{outline-color:#fff}
.on-dark .form-panel :focus-visible{outline-color:var(--red-deep)}
.section{padding:clamp(3.5rem,8vw,6.5rem) 0}
.bg-alt-tone{background:var(--bg-alt)}
.muted{color:var(--muted)}

/* ---------- Butonlar ---------- */
.btn{font-weight:700;letter-spacing:.005em;padding:.8rem 1.6rem}
.btn-brand{
  --bs-btn-color:#fff;--bs-btn-bg:var(--red-deep);--bs-btn-border-color:var(--red-deep);
  --bs-btn-hover-color:#fff;--bs-btn-hover-bg:var(--red-press);--bs-btn-hover-border-color:var(--red-press);
  --bs-btn-active-color:#fff;--bs-btn-active-bg:var(--red-press);--bs-btn-active-border-color:var(--red-press);
}
.btn-on-red{
  --bs-btn-color:var(--red-deep);--bs-btn-bg:#fff;--bs-btn-border-color:#fff;
  --bs-btn-hover-color:var(--red-press);--bs-btn-hover-bg:#F3F2F2;--bs-btn-hover-border-color:#F3F2F2;
  --bs-btn-active-color:var(--red-press);--bs-btn-active-bg:#E6E4E4;--bs-btn-active-border-color:#E6E4E4;
}
.btn-outline-light{--bs-btn-border-color:rgba(255,255,255,.7)}

/* ---------- Logo ---------- */
.brand-logo{display:block;width:200px;height:auto}
.footer-logo{display:block;width:230px;height:auto}

/* ---------- Üst menü ---------- */
.site-head{background:var(--charcoal);border-bottom:1px solid rgba(255,255,255,.14);z-index:1030}
.site-head .navbar{padding-top:.7rem;padding-bottom:.7rem}
.site-head .nav-link{color:rgba(255,255,255,.88);font-weight:600;padding:.6rem .9rem}
.site-head .nav-link:hover{color:#fff}
.site-head .nav-link.active{color:#fff;box-shadow:inset 0 -3px 0 var(--red)}
@media (max-width:1199.98px){
  .site-head .nav-link.active{box-shadow:inset 3px 0 0 var(--red)}
  .site-head .navbar-collapse{padding:.5rem 0 1rem}
}
.skip-link{position:absolute;left:1rem;top:1rem;z-index:2000}

/* ---------- Kahraman alan ---------- */
.hero{position:relative;overflow:hidden;background:var(--charcoal);color:#fff}
.hero-copy{position:relative;z-index:2;padding-top:clamp(3rem,8vw,6.5rem);padding-bottom:clamp(3rem,6vw,4.5rem)}
.hero h1{margin-bottom:1.5rem}
.hero .lead{font-weight:400;font-size:1.25rem;color:rgba(255,255,255,.88);max-width:46ch;margin-bottom:2.2rem}
.hero-mark{position:absolute;top:50%;left:62%;width:clamp(440px,56vw,880px);transform:translateY(-50%);z-index:1;pointer-events:none}
.shape{display:block;width:100%;height:auto;overflow:visible}
.m-main{fill:var(--red)}
.m-line{fill:none;stroke:#fff;stroke-opacity:.24;stroke-width:1.5;vector-effect:non-scaling-stroke}
.m-l2{stroke-opacity:.16}.m-l3{stroke-opacity:.1}
@media (max-width:991.98px){
  .hero-mark{left:34%;opacity:.28}
}
@media (prefers-reduced-motion:no-preference){
  .hero .m-main{animation:markIn .95s cubic-bezier(.2,.75,.2,1) both}
  .hero .m-line{animation:lineIn 1.2s .35s ease-out both}
  .hero .m-l2{animation-delay:.5s}.hero .m-l3{animation-delay:.65s}
}
@keyframes markIn{from{transform:translateX(-70px);opacity:0}to{transform:none;opacity:1}}
@keyframes lineIn{from{opacity:0}}

.hero-facts{position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.22)}
.fact{padding:1.4rem 1.5rem 1.7rem 0}
@media (min-width:768px){
  .fact+.fact{padding-left:1.75rem;border-left:1px solid rgba(255,255,255,.22)}
}
.fact-title{position:relative;padding-left:1.35rem;margin:0 0 .3rem;font-family:var(--font-display);font-stretch:85%;font-weight:700;font-size:1.2rem;line-height:1.2}
.fact-title::before,.tri::before{content:"";position:absolute;left:0;top:.2em;width:.72rem;height:.85rem;background:var(--red);clip-path:polygon(0 0,100% 50%,0 100%)}
.fact p{margin:0;color:rgba(255,255,255,.82);font-size:1rem;padding-left:1.35rem}
.hazard{height:12px;background:repeating-linear-gradient(-45deg,var(--red) 0 14px,var(--charcoal-darker) 14px 28px)}

/* ---------- Hakkımızda ---------- */
.about-intro p{color:var(--muted);font-size:1.15rem}

/* ---------- Hizmetler ---------- */
.svc-head{max-width:46rem;margin-bottom:clamp(2rem,4vw,3rem)}
.svc-head p{color:var(--muted);font-size:1.15rem;margin:0}
.svc-card{display:flex;flex-direction:column;height:100%;width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer}
.svc-art{display:block;flex:none;aspect-ratio:4/3;overflow:hidden;background:var(--charcoal)}
.svc-art img{display:block;width:100%;height:100%;object-fit:cover}
.svc-title{flex:1 1 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 0 .85rem;border-bottom:3px solid var(--line);
  font-family:var(--font-display);font-stretch:82%;font-weight:800;font-size:clamp(1.3rem,2vw,1.6rem);line-height:1.1}
.svc-title::after{content:"";flex:none;margin-top:.3em;width:.8rem;height:.95rem;background:var(--red);clip-path:polygon(0 0,100% 50%,0 100%)}
.svc-card:hover .svc-title,.svc-card:focus-visible .svc-title{border-bottom-color:var(--red)}
.svc-card:focus-visible{outline-offset:6px}
@media (prefers-reduced-motion:no-preference){
  .svc-art img{transition:transform .4s cubic-bezier(.2,.7,.2,1)}
  .svc-card:hover .svc-art img{transform:scale(1.05)}
  .svc-title::after{transition:transform .25s ease}
  .svc-card:hover .svc-title::after{transform:translateX(5px)}
}

.checklist{list-style:none;padding:0;margin:0}
.checklist li{position:relative;padding:.38rem 0 .38rem 1.6rem;break-inside:avoid}
.checklist li::before{content:"";position:absolute;left:0;top:.9em;width:.6rem;height:.72rem;background:var(--red);clip-path:polygon(0 0,100% 50%,0 100%)}
@media (min-width:768px){.checklist.cols{columns:2;column-gap:2.5rem}}
.svc-group h4{padding-bottom:.5rem;margin-bottom:.4rem;border-bottom:1px solid var(--line)}
.inline-link{font-weight:700}

/* ---------- Sağlık Tarama Aracı ---------- */
.band{position:relative;overflow:hidden;background:var(--red-deep);color:#fff}
.band .container{position:relative;z-index:2}
.band-mark{position:absolute;z-index:1;top:50%;right:-20%;width:min(70vw,760px);transform:translateY(-50%);pointer-events:none}
.band .m-main{fill:#fff;fill-opacity:.08}
.band .m-line{display:none}
.band p{color:rgba(255,255,255,.94)}
.exam-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.4)}
.exam-list li{position:relative;padding:.95rem 0 .95rem 2rem;border-bottom:1px solid rgba(255,255,255,.4);font-size:1.15rem;font-weight:600}
.exam-list li::before{content:"";position:absolute;left:0;top:1.3rem;width:.7rem;height:.85rem;background:#fff;clip-path:polygon(0 0,100% 50%,0 100%)}

/* ---------- Kalite ---------- */
.quality-lede p{color:var(--muted);font-size:1.12rem}
.principle{height:100%;padding-top:1.25rem;border-top:4px solid var(--red)}
.principle h3{font-size:1.45rem;margin-bottom:.5rem}
.principle p{margin:0;color:var(--muted)}


/* ---------- Üç ana alan ---------- */
.feature{display:block;height:100%;color:inherit;text-decoration:none}
.feature-art{display:block;aspect-ratio:3/2;overflow:hidden}
.feature-art img{display:block;width:100%;height:100%;object-fit:cover}
.feature h3{font-size:clamp(1.4rem,2.2vw,1.75rem);margin:1.15rem 0 .55rem}
.feature p{margin:0;color:var(--muted)}
.feature:hover h3{color:var(--link)}
@media (prefers-reduced-motion:no-preference){
  .feature-art img{transition:transform .4s cubic-bezier(.2,.7,.2,1)}
  .feature:hover .feature-art img{transform:scale(1.04)}
}

/* ---------- Hakkımızda alıntısı ---------- */
.statement{margin:0;padding-left:clamp(1.25rem,3vw,2.25rem);border-left:5px solid var(--red)}
.statement blockquote{margin:0}
.statement p{max-width:none;font-family:var(--font-display);font-stretch:82%;font-weight:700;font-size:clamp(1.5rem,2.8vw,2.2rem);line-height:1.2;margin:0}
.statement figcaption{margin-top:1rem;color:var(--muted);font-weight:600}

/* ---------- Müşteri yorumları ---------- */
.reviews{position:relative;overflow:hidden;background:var(--charcoal-deep);color:#fff}
.reviews .lede{color:rgba(255,255,255,.85);font-size:1.12rem}
.deco-mark{position:absolute;z-index:0;top:50%;right:-18%;width:min(75vw,820px);transform:translateY(-50%);pointer-events:none}
.reviews .m-main{fill:#fff;fill-opacity:.05}
.reviews .m-line{display:none}
.review{margin:0;min-height:15rem;padding-left:clamp(1.25rem,3vw,2.25rem);border-left:5px solid var(--red)}
.review blockquote{margin:0}
.review p{max-width:none;font-family:var(--font-display);font-stretch:82%;font-weight:700;font-size:clamp(1.5rem,3vw,2.35rem);line-height:1.2;margin:0 0 1.5rem}
.review figcaption{color:rgba(255,255,255,.8)}
.review .who{display:block;color:#fff;font-weight:700;font-size:1.1rem}
.rev-btn{position:relative;width:3.25rem;height:3.25rem;padding:0;border:1px solid rgba(255,255,255,.6);background:transparent;color:#fff;cursor:pointer}
.rev-btn::before{content:"";position:absolute;left:50%;top:50%;width:.8rem;height:.95rem;margin:-.475rem 0 0 -.3rem;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}
.rev-prev::before{transform:rotate(180deg);margin-left:-.5rem}
.rev-btn:hover{background:var(--red-deep);border-color:var(--red-deep)}
.rev-count{color:rgba(255,255,255,.85);font-weight:600;font-variant-numeric:tabular-nums}

/* ---------- Sık sorulan sorular ---------- */
.faq{
  --bs-accordion-bg:transparent;--bs-accordion-color:var(--ink);--bs-accordion-border-color:var(--line);--bs-accordion-border-radius:0;--bs-accordion-inner-border-radius:0;
  --bs-accordion-btn-color:var(--ink);--bs-accordion-btn-bg:transparent;--bs-accordion-active-bg:transparent;--bs-accordion-active-color:var(--link);
  --bs-accordion-btn-icon:none;--bs-accordion-btn-active-icon:none;--bs-accordion-btn-icon-transform:rotate(90deg);
  --bs-accordion-btn-focus-box-shadow:none;--bs-accordion-btn-padding-x:0;--bs-accordion-body-padding-x:0;
}
.faq .accordion-item{background:transparent;border-left:0;border-right:0}
.faq .accordion-item:first-child{border-top:1px solid var(--line)}
.faq .accordion-header{margin:0;font:inherit;letter-spacing:0;line-height:inherit}
.faq .accordion-button{font-family:var(--font-body);font-weight:700;font-size:1.18rem;line-height:1.35;padding-top:1.2rem;padding-bottom:1.2rem;gap:1rem;box-shadow:none}
.faq .accordion-button:not(.collapsed){box-shadow:none}
.faq .accordion-button::after{flex:none;width:.8rem;height:.95rem;margin-left:auto;background-color:var(--red);background-image:none;clip-path:polygon(0 0,100% 50%,0 100%)}
.faq .accordion-body{padding-top:0;padding-bottom:1.5rem;padding-right:2.5rem;color:var(--muted);max-width:68ch}
.faq .accordion-body a{font-weight:700}

/* ---------- İletişim ---------- */
.contact{background:var(--charcoal);color:#fff}
.contact .lede{color:rgba(255,255,255,.88);font-size:1.15rem}
.contact-list{margin:2rem 0 0}
.contact-list dt{font-weight:600;color:rgba(255,255,255,.72);font-size:.95rem}
.contact-list dd{margin:0 0 1.1rem;font-size:1.15rem}
.form-panel{
  --bs-body-bg:#fff;--bs-body-color:#333132;--bs-border-color:#BDB8B9;
  background:#fff;color:#333132;padding:clamp(1.5rem,3.5vw,2.5rem);border-top:4px solid var(--red);
}
.form-panel .form-label{font-weight:600;margin-bottom:.3rem}
.form-panel .form-control{padding:.7rem .85rem}
.form-panel .form-control:focus{border-color:var(--red-deep);box-shadow:0 0 0 .2rem rgba(234,31,39,.22)}
.form-panel .form-check-input:checked{background-color:var(--red-deep);border-color:var(--red-deep)}
.form-panel .form-check-label{font-size:.98rem}
.form-panel .invalid-feedback{font-size:.95rem}
.alert-ok{border:0;border-left:4px solid #1E7B45;background:#E6F3EB;color:#14532D}

/* ---------- Alt bilgi ---------- */
.site-foot{background:var(--charcoal-darker);color:rgba(255,255,255,.82);padding:clamp(2.5rem,5vw,4rem) 0 1.5rem}
.site-foot a{color:rgba(255,255,255,.88);text-decoration:none}
.site-foot a:hover{color:#fff;text-decoration:underline}
.site-foot ul{list-style:none;padding:0;margin:0}
.site-foot li{padding:.2rem 0}
.foot-title{font-family:var(--font-display);font-stretch:85%;font-weight:700;color:#fff;font-size:1.15rem;margin-bottom:.6rem}
.foot-bottom{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.16);font-size:.95rem}

.svc-lead{color:var(--muted);font-size:1.15rem;margin-bottom:1.5rem}
a.svc-card{text-decoration:none}
.site-head .nav-link[aria-current="page"]{color:#fff;box-shadow:inset 0 -3px 0 var(--red)}
@media (max-width:1199.98px){.site-head .nav-link[aria-current="page"]{box-shadow:inset 3px 0 0 var(--red)}}

/* ---------- İç sayfa başlığı ---------- */
.page-head{position:relative;overflow:hidden;background:var(--charcoal);color:#fff;padding:clamp(2.5rem,6vw,4.5rem) 0 clamp(2.25rem,5vw,3.5rem)}
.page-head .container{position:relative;z-index:2}
.page-head h1{font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:1rem}
.page-head .page-lead{max-width:56ch;margin:0;color:rgba(255,255,255,.88);font-size:1.2rem}
.page-mark{position:absolute;z-index:1;top:50%;right:4%;width:clamp(240px,24vw,340px);transform:translateY(-50%);pointer-events:none}
.page-head .m-line{stroke-opacity:.2}
@media (max-width:767.98px){.page-mark{opacity:.25;right:-6%}}
.crumbs{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem .6rem;padding:0;margin:0 0 1.25rem;font-size:.98rem;color:rgba(255,255,255,.8)}
.crumbs li+li::before{content:"";display:inline-block;width:.42rem;height:.54rem;margin-right:.6rem;background:var(--red);clip-path:polygon(0 0,100% 50%,0 100%)}
.crumbs a{color:#fff}

/* ---------- Metin sayfaları ---------- */
.prose{max-width:none}
.prose p{max-width:68ch}
.prose h2{font-size:clamp(1.7rem,3.2vw,2.3rem);margin:2.75rem 0 1rem}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:1.45rem;margin:1.75rem 0 .5rem}
.prose .checklist li{max-width:68ch}
.definition{border-left:5px solid var(--red);background:var(--bg-alt);padding:1.5rem 1.75rem;margin:0 0 2rem}
.definition p{margin:0;font-size:1.2rem;max-width:64ch}
.table-plain{--bs-table-bg:transparent;--bs-table-color:var(--ink);--bs-table-border-color:var(--line);--bs-table-striped-bg:var(--bg-alt);--bs-table-striped-color:var(--ink)}
.table-plain th{font-family:var(--font-display);font-stretch:85%;font-weight:700;font-size:1.05rem}
.role-grid .svc-title{font-size:1.3rem}

/* ---------- Hizmet detayı ---------- */
.detail-art{display:block;width:100%;height:auto}
.side-list{list-style:none;margin:.75rem 0 0;padding:0;border-top:1px solid var(--line)}
.side-list a{display:block;padding:.7rem 1rem;border-bottom:1px solid var(--line);border-left:4px solid transparent;color:var(--ink);text-decoration:none;font-weight:600}
.side-list a:hover{background:var(--bg-alt)}
.side-list a[aria-current="page"]{border-left-color:var(--red);color:var(--link);background:var(--bg-alt)}
.side-title{font-family:var(--font-display);font-stretch:85%;font-weight:700;font-size:1.2rem;margin:1.75rem 0 0}
.detail-cta{margin-top:2.5rem;padding:1.75rem;background:var(--red-deep);color:#fff}
.detail-cta h2{font-size:1.7rem;margin-bottom:.6rem}
.detail-cta p{color:rgba(255,255,255,.94);margin-bottom:1.25rem}

/* ---------- Öne çıkan hizmet (Sağlık Tarama Aracı) ---------- */
.feature-wide{margin-top:clamp(3rem,6vw,5rem);display:grid;grid-template-columns:1fr;background:var(--red-deep);color:#fff;text-decoration:none}
.feature-wide .feature-art{aspect-ratio:3/2}
.feature-wide .fw-body{padding:clamp(1.5rem,4vw,3rem);display:flex;flex-direction:column;justify-content:center}
.feature-wide h2{font-size:clamp(1.9rem,4vw,2.8rem)}
.feature-wide p{color:rgba(255,255,255,.94);max-width:52ch;margin-bottom:1.5rem}
@media (min-width:768px){.feature-wide{grid-template-columns:1fr 1fr}}
.feature-wide:hover{color:#fff}

/* ---------- Form ---------- */
.form-panel{border:1px solid #DAD7D7;border-top:4px solid var(--red)}
.form-panel .alert{border-radius:0}
.alert-err{border:0;border-left:4px solid var(--red-deep);background:#FCE9EA;color:#7A0D12}
.alert-err ul{margin:.4rem 0 0;padding-left:1.2rem}
.cta-band{background:var(--red-deep);color:#fff;padding:clamp(2.5rem,6vw,4rem) 0}
.cta-band h2{font-size:clamp(1.8rem,3.6vw,2.6rem);margin:0}
.cta-band p{color:rgba(255,255,255,.94);margin:.6rem 0 0}

.contact-list-light{margin-top:1.25rem}
.contact-list-light dt{color:var(--muted)}
.contact-list-light dd{color:var(--ink)}
.contact-list-light a{color:var(--link)}
@media (min-width:992px){.toc-sticky{position:sticky;top:100px}}
.prose h2[id]{scroll-margin-top:90px}
