/* Shared visual rhythm; original company artwork is never filtered. */
:root { --paper:#f5f7fa; --line:#dce3eb; --muted:#526174; --orange:#006eb8; --orange-hover:#005b98; }
[hidden] { display:none !important; }
.container { width:min(1280px,calc(100% - 80px)); }
.section, .home .section { padding-block:clamp(56px,6vw,88px); }
.button, .home .button { border-radius:4px; font-size:14px; min-height:52px; }
.button:hover { transform:none; }
.eyebrow { line-height:1.6; }
.text-link { padding-block:8px; min-height:44px; }
.modal .modal-close { width:44px; height:44px; }
.modal h2 { padding-right:44px; }
.home { --orange:#006eb8; --orange-hover:#005b98; }
.home .intro-content { padding-top:clamp(56px,6vw,88px); }
.home .intro-content h1 { max-width:860px; font-size:clamp(36px,4.6vw,64px); line-height:1.12; letter-spacing:-.04em; }
.intro-description { max-width:590px; line-height:1.8; }
.intro-kicker { color:#c9def0; letter-spacing:1.4px; }
.intro-background { object-position:center 50%; }
.intro-overlay { background:linear-gradient(90deg,#0b182ced 0%,#0b182cba 50%,#0b182c38 100%),linear-gradient(0deg,#0f1e33 0%,transparent 55%); }
.intro-bottom { padding-top:40px; }
.intro-caption { padding:14px 18px; border:1px solid #ffffff38; background:#0f1e3366; border-radius:3px; }
.intro-stats dl > div { padding-block:28px; }
.intro-stats dd { font-size:42px; font-variant-numeric:tabular-nums; }
.home-services, .home-references { background:#fff; }
.home-projects { background:#f5f7fa; }
.home .section-heading h2 { max-width:720px; }
.home h2 { font-size:clamp(29px,3.1vw,43px); line-height:1.2; }
.home-service-card { min-height:390px; border-radius:4px; border-bottom-width:3px; }
.home-service-copy h3 { font-size:26px; }
.home-service-copy p { line-height:1.75; }
.service-card-shade { background:linear-gradient(180deg,#0f1e3330 0%,#0f1e33c9 45%,#0f1e33fa 100%); }
.home-values .eyebrow, .home-process .eyebrow, .home-contact .eyebrow,
.page-hero .eyebrow, .aside-card .eyebrow { color:#a7d6f5; }
.home-values .text-link:hover, .home-process .text-link:hover, .home-contact-copy h2 span { color:#a7d6f5; }
.home-value-grid article { background:#fff; border-radius:4px; padding:28px 24px; }
.home-value-grid h3 { font-size:20px; line-height:1.4; }
.home-case { border-radius:4px; overflow:hidden; }
.home-case-image { height:auto; aspect-ratio:4/3; }
.home-case h3 { min-height:0; }
.home-case-body { display:flex; flex-direction:column; height:100%; padding:24px; }
.home-case { display:flex; flex-direction:column; }
.home-case-image { flex:none; }
.home-case .home-card-link { margin-top:auto; }
.home-contact-panel { background:#fff; border-radius:4px; }
.home-reference-strip { grid-template-columns:repeat(4,minmax(0,1fr)); }
.home-reference-strip strong { font-size:21px; letter-spacing:-.02em; }
.home-reference-strip a { justify-content:center; min-width:0; padding-inline:20px; }
.page-hero { border-bottom-width:2px; padding-bottom:60px; }
.page-hero h1 { line-height:1.18; }
.page-hero-photo { min-height:360px; display:flex; align-items:center; }
.page-hero-photo > .container { width:min(1280px,calc(100% - 80px)); padding-block:24px; }
.page-hero-photo > .page-hero-image { inset:0 0 0 auto !important; width:min(54%,760px) !important; height:100% !important; object-fit:contain; object-position:center right; background:#0f1e33; }
.page-hero-photo::after { background:linear-gradient(90deg,#0f1e33 0%,#0f1e33 38%,#0f1e33db 53%,#0f1e3370 70%,#0f1e3315 100%); }
.service-card, .principle-grid article, .value-card { border-radius:4px; border-top-width:3px; }
.service-card:hover { background:#f5f7fa; transform:none; }
.scope-list li { background:#f5f7fa; }
.search-field, .search-field input { min-width:0; }
.search-field:focus-within { box-shadow:0 2px 0 #006eb8; }
.filters button, .year-select select { min-height:44px; }
.project-meta { flex-wrap:wrap; gap:12px; }
.contact-channels a { overflow-wrap:anywhere; }
.contact-form, .contact-office { border-radius:4px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.quote-form { position:relative; }
.quote-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; }
.quote-form label { display:flex; flex-direction:column; gap:8px; margin-bottom:20px; font-size:14px; font-weight:600; }
.quote-form input:not([type=checkbox]), .quote-form select, .quote-form textarea { width:100%; min-width:0; min-height:48px; border:1px solid #b6c2cf; background:#fff; color:#0f1e33; padding:12px; font-size:16px; }
.quote-form textarea { resize:vertical; }
.quote-form .quote-consent { flex-direction:row; align-items:flex-start; font-weight:400; }
.quote-consent input { width:20px; height:20px; flex:none; margin:2px 4px 0 0; }
.quote-consent a { text-decoration:underline; text-underline-offset:3px; }
.quote-form .form-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.field-error { color:#a22e26; font-size:13px; }
.field-error:empty { display:none; }
.quote-form [aria-invalid=true] { border-color:#a22e26; }
.quote-status { margin-top:18px; }
.verified-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.verified-gallery button, .verified-gallery button:first-child, .verified-gallery button:only-child { grid-column:auto; grid-row:auto; aspect-ratio:auto; max-width:none; display:flex; flex-direction:column; padding:0; background:#f5f7fa; }
.verified-gallery img { width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; }
.verified-gallery button > .gallery-photo-caption { position:static; display:flex; flex-direction:column; align-items:flex-start; gap:8px; padding:16px; background:#f5f7fa; color:#0f1e33; }
.gallery-photo-caption strong { font-size:14px; line-height:1.6; }
.gallery-photo-caption small { color:#526174; font-size:12px; }
.verified-gallery.archive-thumbnails img { width:170px; max-width:100%; margin:16px auto 0; }
.archive-photo-modal .lightbox-image { width:auto; height:auto; max-width:100%; max-height:75vh; object-fit:contain; margin:24px auto 0; }
.project-card .project-image > img { filter:none; }
.project-image.archive-cover-small { display:grid; place-items:center; background:#e4e9ef; }
.project-card .project-image.archive-cover-small > img { position:static !important; inset:auto !important; display:block; width:170px !important; height:127px !important; max-width:100%; object-fit:contain; filter:none; }
.whatsapp-float { background:#176746; box-shadow:0 3px 12px #0b1f331a; transition:background-color 200ms; }
.whatsapp-float:hover { background:#115137; transform:none; }
@media (max-width:760px) {
  .container { width:calc(100% - 40px); }
  .home .section { padding-block:56px; }
  .home .intro-content { padding-top:44px; }
  .home .intro-content h1 { font-size:clamp(34px,6.4vw,46px); }
  .intro-description { font-size:16px; }
  .intro-stats dd { font-size:34px; }
  .home-service-card { min-height:350px; }
  .home-reference-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-reference-strip a { border:0; border-bottom:1px solid #dce3eb; padding:24px 12px; }
  .home-reference-strip a:last-child { border-bottom:1px solid #dce3eb; }
  .home-reference-strip a:nth-child(odd) { border-right:1px solid #dce3eb; }
  .home-reference-strip strong { font-size:18px; }
}
@media (max-width:600px) {
  .intro-kicker { font-size:10px; letter-spacing:.9px; gap:10px; }
  .intro-actions { gap:12px; }
  .intro-actions .button { width:100%; }
  .intro-caption { width:100%; }
  .intro-bottom { padding-top:28px; }
  .page-hero { padding-bottom:40px; }
  .page-hero-photo { min-height:0; padding-top:25px; }
  .page-hero-photo > .container { width:calc(100% - 40px); padding-block:0; }
  .page-hero-photo > .page-hero-image { width:100% !important; height:100% !important; object-fit:cover; object-position:center; opacity:.42; }
  .page-hero-photo::after { background:linear-gradient(90deg,#0f1e33f5 0%,#0f1e33d9 64%,#0f1e3399 100%); }
  .page-hero .breadcrumb { margin-bottom:28px; }
  .quote-fields, .verified-gallery { grid-template-columns:1fr; }
  .filter-top { flex-direction:column; align-items:stretch; gap:16px; }
  .search-field { width:100%; }
  .year-select select { min-width:0; max-width:100%; flex:1; }
}

/* Use the genuine small archive photo as a soft fill, while keeping its original crisp size. */
.project-image.archive-cover-small { isolation:isolate; }
.project-image.archive-cover-small::before { content:""; position:absolute; inset:-12px; z-index:-1; background:url("../../images/gata-radyoterapi-1.webp") center / cover no-repeat; filter:blur(12px) brightness(.72); transform:scale(1.08); }


/* About page */
.about-page { background:#fff; color:#0f1e33; }
.about-page .about-hero { background:linear-gradient(115deg,#0f1e33,#163653); color:#fff; padding:72px 0 78px; }
.about-page .about-hero .container { max-width:1200px; }
.about-page .about-hero h1 { max-width:820px; font-size:clamp(36px,4.8vw,64px); line-height:1.12; letter-spacing:-.04em; text-wrap:balance; color:#fff; }
.about-page .about-hero p { max-width:660px; color:#d5e2ee; font-size:18px; line-height:1.8; }
.about-page .about-hero .eyebrow { color:#a3d5fa; }
.about-page .breadcrumb,.about-page .breadcrumb a { color:#c3d4e5; }
.about-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:28px; margin-top:30px; }
.about-hero-actions .button { border-radius:8px; }
.about-hero-actions .text-link { color:#fff; }
.about-page .section { padding-block:80px; }
.about-page .story-grid { gap:64px; align-items:center; scroll-margin-top:110px; }
.about-page .story-grid h2 { font-size:clamp(28px,3vw,42px); line-height:1.2; letter-spacing:-.025em; }
.about-page .story-grid p { line-height:1.85; color:#506278; }
.about-page .story-founded { display:flex; align-items:center; gap:24px; border:1px solid #dbe6f1; border-left:4px solid #007acc; padding:24px; border-radius:10px; background:#f4f8fc; }
.about-page .story-founded strong { color:#007acc; font-size:46px; }
.about-page .story-image { border-radius:14px; overflow:hidden; min-height:380px; }
.about-page .soft-section { background:#f4f7fb; }
.about-page .principle-grid { gap:24px; }
.about-page .principle-grid article { background:#fff; border:1px solid #dbe5ef; border-radius:12px; padding:32px; }
.about-page .principle-grid article > span { display:inline-grid; place-items:center; width:44px; height:44px; border-radius:10px; background:#e8f3fc; color:#007acc; margin-bottom:18px; }
.about-page .principle-grid h3 { font-size:24px; }
.about-page .principle-grid p,.about-page .value-card p { color:#506278; line-height:1.8; }
.about-page .two-grid { gap:24px; }
.about-page .value-card { border:1px solid #dbe5ef; background:#fff; border-radius:12px; padding:30px; }
.about-page .value-card > svg { color:#007acc; background:#e8f3fc; padding:10px; width:44px; height:44px; border-radius:10px; box-sizing:border-box; }
.about-page .cta-section { background:#0f1e33; color:#fff; }
.about-page .cta-section h2 { color:#fff; }
.about-page .cta-section p { color:#d5e2ee; }
@media(max-width:900px) { .about-page .story-grid { gap:32px; } }
@media(max-width:760px) {
 .about-page .about-hero { padding:40px 0 48px; }
 .about-page .about-hero p { font-size:16px; }
 .about-page .section { padding-block:48px; }
 .about-page .story-grid,.about-page .principle-grid,.about-page .two-grid { grid-template-columns:1fr; }
 .about-page .story-image { min-height:0; height:auto; aspect-ratio:4/3; }
 .about-page .story-founded { padding:20px; gap:18px; }
 .about-page .story-founded strong { font-size:38px; }
 .about-page .principle-grid article,.about-page .value-card { padding:24px; }
 .about-hero-actions { gap:20px; }
}

/* Project search and category panel */
.project-filter-panel { padding:24px; border:1px solid #dde6ef; border-radius:12px; background:#f5f8fc; margin-bottom:24px; }
.projects-page .filter-top { display:flex; align-items:center; gap:20px; margin-bottom:20px; }
.projects-page .search-field { flex:1; max-width:none; display:flex; gap:12px; align-items:center; border:1px solid #d3dfeb; border-radius:8px; background:#fff; padding:0 16px; min-height:52px; }
.projects-page .search-field input { width:100%; min-width:0; border:0; background:transparent; padding:14px 0; font-size:16px; }
.projects-page .search-field:focus-within { border-color:#007acc; box-shadow:0 0 0 3px #007acc15; }
.projects-page .year-select { display:flex; align-items:center; gap:10px; }
.projects-page .year-select select { min-height:52px; border:1px solid #d3dfeb; border-radius:8px; padding:12px 16px; background:#fff; font-size:16px; }
.projects-page .filters { display:flex; flex-wrap:wrap; gap:10px; margin:0; }
.projects-page .filters button { border:1px solid #d3dfeb; border-radius:7px; padding:11px 18px; min-height:44px; background:#fff; color:#24405b; font-size:14px; white-space:nowrap; }
.projects-page .filters button:hover { border-color:#007acc; color:#007acc; }
.projects-page .filters button.active { background:#0f1e33; border-color:#0f1e33; color:#fff; }
.projects-page .filters button:focus-visible { outline:3px solid #007acc; outline-offset:3px; }
.projects-page .result-count { margin:0 0 24px; color:#60758a; font-size:14px; }
@media(max-width:760px) {
 .project-filter-panel { padding:18px; }
 .projects-page .filter-top { flex-direction:column; align-items:stretch; gap:12px; }
 .projects-page .search-field { flex:auto; }
 .projects-page .year-select select { flex:1; }
 .projects-page .filters { flex-wrap:nowrap; overflow-x:auto; padding-bottom:8px; }
 .projects-page .filters button { flex-shrink:0; }
}
