@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
/* Visual audit pass: accurate system structure, full-equipment hero, calmer motion. */
:root{--gold:#a97922;--gold-light:#e6c878;--paper:#fff;--mist:#f3f5f4;--graphite:#263236;--muted:#59686d}

/* The hero is a composed editorial frame: the complete scanner is never cropped away. */
.v3-hero--definition{min-height:clamp(670px,72svh,780px);background:linear-gradient(112deg,#f7f9f8 0%,#eef2f1 54%,#e7ecea 100%);color:var(--graphite)}
.v3-hero--definition>img{top:14px;right:clamp(12px,3vw,56px);bottom:14px;left:auto;width:min(50vw,710px);height:calc(100% - 28px);padding:0;object-fit:contain;object-position:center right;filter:contrast(1.025) saturate(.88);transform:none!important}
.v3-hero--definition .v3-hero-overlay{background:linear-gradient(90deg,rgba(247,249,248,.98) 0%,rgba(247,249,248,.94) 32%,rgba(247,249,248,.68) 47%,rgba(247,249,248,.08) 66%,rgba(247,249,248,0) 100%)}
.v3-hero--definition .v3-hero-copy{z-index:1;max-width:570px;padding:112px 0 120px}
.v3-hero--definition .v3-eyebrow{color:var(--gold)}
.v3-hero--definition h1{color:var(--graphite);text-wrap:balance}
.v3-hero--definition .v3-hero-copy>p:not(.v3-eyebrow){color:#546369}
.v3-hero-system-tag{position:absolute;z-index:2;right:clamp(24px,5vw,84px);bottom:40px;display:grid;gap:7px;padding-left:16px;border-left:1px solid rgba(169,121,34,.66);color:#415057;text-transform:uppercase}
.v3-hero-system-tag span{color:var(--gold);font-size:.68rem;font-weight:800;letter-spacing:.16em}
.v3-hero-system-tag strong{font-size:.7rem;letter-spacing:.11em;line-height:1.45}

/* Exactly the two system families plus the parts route. */
.v3-system-showcase{padding:128px 0;background:#f4f6f5}
.v3-showcase-heading{grid-template-columns:1.15fr .85fr;gap:8vw;margin-bottom:52px}
.v3-system-cards{grid-template-columns:1.18fr 1.05fr .87fr;grid-template-rows:400px;gap:14px}
.v3-system-card{padding:24px;background:#253034}
.v3-system-card--definition,.v3-system-card--perspective{grid-row:auto}
.v3-system-card img{transition:transform .55s cubic-bezier(.22,.8,.26,1),filter .45s ease}
.v3-system-card:hover img,.v3-system-card:focus-visible img{transform:scale(1.018);filter:contrast(1.045) saturate(.95)}
.v3-system-card strong{font-size:clamp(1.35rem,2.05vw,1.88rem);line-height:1.06}
.v3-system-card--definition img{object-position:center 53%}
.v3-system-card--perspective img{object-position:center 52%}
.v3-system-card--parts img{object-position:center 42%}
.v3-system-card:focus-visible,.v3-contact-page a:focus-visible,.v3-systems-list a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}

/* Cleaner gallery hierarchy: equipment family, then imagery, without public picture captions. */
.v3-page-hero--systems h1{max-width:13ch}
.v3-image-panel--systems{height:570px;background:#e6ecea}
.v3-image-panel--systems img{object-position:center 48%;transform:none!important}
.v3-real-gallery{padding:124px 0 128px}
.v3-gallery-heading{max-width:880px;margin-bottom:74px}
.v3-gallery-group{padding-bottom:68px;margin-bottom:62px}
.v3-gallery-group>header{gap:18px;margin-bottom:25px}
.v3-gallery-group>header h2{font-size:clamp(1.78rem,3.1vw,2.85rem);line-height:1.04}
.v3-photo-grid{gap:13px}
.v3-photo-grid img{transition:filter .35s ease,transform .45s cubic-bezier(.22,.8,.26,1);transform:translateZ(0)}
.v3-photo-grid img:hover{transform:scale(1.008);filter:contrast(1.035) saturate(.94)}
.v3-photo-grid--parts img:first-child{object-position:center 50%}
.v3-photo-grid--parts img:last-child{object-position:center 42%}

/* The remaining pages use the same calmer typography and contact motion. */
.v3-page-hero h1{max-width:15ch;text-wrap:balance}
.v3-page-hero p:not(.v3-eyebrow){max-width:590px}
.v3-page-hero .v3-eyebrow{color:var(--gold)}
.v3-image-panel img{transform:none!important}
.v3-contact-page a,.v3-systems-list a{transition:padding .28s ease,background-color .28s ease,transform .28s ease}
.v3-contact-page a:hover,.v3-systems-list a:hover{transform:translateX(5px)}

/* Keep the inventory promise generic: public cards identify the Siemens CT category, never a model name. */
.part-card:hover .part-photo img{transform:scale(1.012)}

/* Light-blue medical direction: original GANTRY.MED implementation inspired by the reference site's airy rhythm. */
:root{--gold:#0498db;--gold-light:#78d0f1;--graphite:#0d4568;--ink:#153a53;--mist:#edf8fd;--paper:#fff;--line:#d2e8f3;--muted:#557289}
body{font-family:Manrope,"Avenir Next","Helvetica Neue",Arial,sans-serif}
.v3-header{background:rgba(255,255,255,.92);border-color:#d7ebf5}
.v3-brand{color:#0b466a;letter-spacing:.08em}.v3-brand em{color:#0498db}.v3-brand-mark{border-color:#0498db}.v3-brand-mark:after{background:#0d4568}
.v3-nav a{color:#38647d}.v3-nav a:hover,.v3-nav a:focus-visible{color:#047eb8}.v3-nav a:not(.v3-nav-contact):after{background:#0498db}.v3-nav-contact{background:#087eb6}.v3-nav-contact:hover{box-shadow:0 0 20px rgba(4,152,219,.32)}
.v3-hero--definition{min-height:calc(100svh - 79px);background:#edf8fd;color:#0d4568}
.v3-hero--definition>img{top:0;right:0;bottom:0;width:min(62vw,980px);height:100%;object-position:center center;filter:brightness(1.025) contrast(1.01) saturate(.9)}
.v3-hero--definition .v3-hero-overlay{background:linear-gradient(90deg,#edf8fd 0%,rgba(237,248,253,.97) 33%,rgba(237,248,253,.68) 48%,rgba(237,248,253,.12) 66%,rgba(237,248,253,0) 100%)}
.v3-hero--definition h1{max-width:9ch;color:#0b4970;font-size:clamp(3.7rem,6.8vw,7.2rem);letter-spacing:-.065em}
.v3-hero--definition .v3-hero-copy>p:not(.v3-eyebrow){color:#52738a;max-width:470px}.v3-hero--definition .v3-eyebrow{color:#048dcc}
.v3-brand{gap:10px;font-family:Manrope,"Avenir Next","Helvetica Neue",Arial,sans-serif;font-size:1.05rem;font-weight:800;letter-spacing:.035em}.v3-brand>span:last-child{line-height:1}.v3-brand>span:last-child em{color:#079ADA;font-style:normal}.v3-brand-mark{width:37px;height:37px;border:0;border-radius:0;background:url("assets/brand/gantry-mark.svg") center/contain no-repeat;box-shadow:none}.v3-brand-mark:after{display:none}.v3-footer .v3-brand-mark:after{display:none}
@media (min-width:761px){.v3-hero--definition .v3-hero-copy{width:min(42vw,540px);margin-left:max(32px,calc((100vw - 1180px)/2 - 210px));margin-right:0;max-width:none;padding-left:0;padding-right:0;transform:none}.v3-hero--definition h1{max-width:7.4ch;font-size:clamp(3.7rem,5.4vw,5.85rem)}.v3-hero--definition .v3-hero-copy>p:not(.v3-eyebrow){max-width:410px}}
.v3-button-gold{background:#079ada;color:#fff;box-shadow:0 13px 28px rgba(0,125,182,.22)}
.v3-intro{padding:146px 0;background:#fff}.v3-intro h2{max-width:11ch;color:#0d4568}.v3-lead{color:#557289}.v3-split>.v3-eyebrow,.v3-work-grid .v3-eyebrow{color:#0498db}
.v3-blue-statement{padding:124px 0;background:linear-gradient(122deg,#047bb6,#19a7e2);color:#fff}.v3-blue-statement .v3-shell{display:grid;grid-template-columns:1.25fr .75fr;gap:10vw;align-items:end}.v3-blue-statement .v3-eyebrow{color:#bfeeff}.v3-blue-statement h2{margin:0;max-width:12ch;font-size:clamp(3rem,5.7vw,6.2rem);font-weight:500;letter-spacing:-.065em;line-height:.95}.v3-blue-statement p{margin:0;color:rgba(255,255,255,.86);font-size:1.08rem}.v3-blue-statement a{display:inline-flex;gap:14px;margin-top:28px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.7);color:#fff;font-size:.8rem;font-weight:800;letter-spacing:.06em;text-decoration:none}
.v3-insights{padding:126px 0;background:#fff}.v3-insights .v3-section-heading{margin-bottom:52px}.v3-insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.v3-insights-grid>a,.v3-insights-grid article{display:block;overflow:hidden;background:#f1f9fd;color:#0d4568;text-decoration:none}.v3-insights-grid img{display:block;width:100%;height:270px;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1)}.v3-insights-grid>a:hover img{transform:scale(1.035)}.v3-insights-grid span{display:block;margin:22px 24px 10px;color:#079ada;font-size:.7rem;font-weight:800;letter-spacing:.12em}.v3-insights-grid h3{margin:0 24px 26px;font-size:clamp(1.35rem,2vw,1.9rem);font-weight:500;letter-spacing:-.04em;line-height:1.05}.v3-insights-grid p{margin:0 24px 28px;color:#557289}
.v3-dark-section{padding:128px 0;background:#f5fbfe;color:#0d4568}.v3-section-heading h2{color:#0d4568}.v3-section-heading>p{color:#557289}.v3-route-grid{border-color:#cfe7f3}.v3-route-grid a{position:relative;isolation:isolate;min-height:330px;border-color:#cfe7f3;background-color:#0b5e8a;background-size:cover;background-position:center;color:#fff;overflow:hidden}.v3-route-grid a:after{position:absolute;inset:0;z-index:-1;content:"";background:linear-gradient(180deg,rgba(7,76,112,.08),rgba(7,68,102,.88))}.v3-route-grid a:nth-child(1){background-image:url('assets/real-ct/site-photos/10-definition-as-open-gantry.png')}.v3-route-grid a:nth-child(2){background-image:url('assets/real-ct/site-photos/14-gantry-interior-close.png')}.v3-route-grid a:nth-child(3){background-image:url('assets/real-ct/site-photos/17-slipring-assembly-close.png')}.v3-route-grid a:hover{background-color:#0b5e8a;transform:translateY(-6px)}.v3-route-grid span{color:#aee8ff}.v3-route-grid small{color:rgba(255,255,255,.83)}
.v3-work-section{background:#fff}.v3-work-grid h2{color:#0d4568}.v3-work-grid li{border-color:#d4e8f2}.v3-work-grid li>span{color:#0498db}.v3-work-grid p{color:#557289}
.v3-contact-band{background:linear-gradient(120deg,#073e60,#087db7)}.v3-contact-band .v3-eyebrow{color:#8edcff}.v3-button-outline{border-color:#bcecff}.v3-footer{background:#073750}.v3-footer .v3-brand-mark:after{background:#073750}.v3-footer a:last-child{color:#91ddff}
.v3-page-hero{background:linear-gradient(130deg,#f5fcff,#dff3fc);border-color:#cfe8f4}.v3-page-hero h1,.v3-gallery-heading h2,.v3-gallery-group>header h2,.v3-systems-list h2{color:#0d4568}.v3-page-hero .v3-eyebrow,.v3-gallery-heading .v3-eyebrow{color:#0498db}.v3-page-hero p:not(.v3-eyebrow){color:#557289}.v3-real-gallery{background:#fff}.v3-gallery-group{border-color:#d4e9f3}
.v3-reveal{opacity:0;transform:translateY(44px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.v3-reveal.is-visible{opacity:1;transform:none}

@media(max-width:900px){
  .v3-blue-statement .v3-shell{grid-template-columns:1fr;gap:36px}
  .v3-insights-grid{grid-template-columns:1fr 1fr}
  .v3-hero--definition>img{width:min(56vw,600px);right:8px}
  .v3-hero-system-tag{right:26px}
  .v3-system-cards{grid-template-columns:repeat(2,1fr);grid-template-rows:340px 250px}
  .v3-system-card--definition{grid-column:span 2}
  .v3-system-card--perspective,.v3-system-card--parts{grid-column:auto}
  .v3-image-panel--systems{height:460px}
}

@media(max-width:620px){
  .v3-hero--definition{min-height:780px}.v3-hero--definition>img{height:430px;width:100%;object-position:center top}.v3-hero--definition .v3-hero-overlay{background:linear-gradient(180deg,rgba(237,248,253,.08),rgba(237,248,253,.22) 40%,#edf8fd 61%,#edf8fd 100%)}.v3-hero--definition .v3-hero-copy{padding:390px 0 62px}.v3-hero--definition h1{font-size:clamp(3.2rem,14vw,5rem)}
  .v3-blue-statement{padding:82px 0}.v3-blue-statement h2{font-size:clamp(2.8rem,12vw,4.5rem)}
  .v3-insights{padding:82px 0}.v3-insights-grid{grid-template-columns:1fr}.v3-insights-grid img{height:245px}
  .v3-hero--definition{min-height:760px;align-items:flex-end}
  .v3-hero--definition>img{top:16px;right:0;bottom:auto;left:0;width:100%;height:390px;object-position:center top}
  .v3-hero--definition .v3-hero-overlay{background:linear-gradient(180deg,rgba(247,249,248,.12) 0%,rgba(247,249,248,.22) 38%,rgba(247,249,248,.98) 56%,rgba(247,249,248,1) 100%)}
  .v3-hero--definition .v3-hero-copy{padding:350px 0 64px}
  .v3-hero-system-tag{display:none}
  .v3-system-showcase{padding:80px 0}
  .v3-system-cards{grid-template-columns:1fr;grid-template-rows:280px 245px 245px}
  .v3-system-card--definition,.v3-system-card--perspective,.v3-system-card--parts{grid-column:auto}
  .v3-system-card strong{font-size:1.6rem}
  .v3-image-panel--systems{height:340px}
  .v3-real-gallery{padding:80px 0}
  .v3-gallery-group{padding-bottom:42px;margin-bottom:44px}
  .v3-photo-grid img:hover{transform:none}
}

/* Mobile override stays last so the blue visual system remains intact. */
@media(max-width:620px){
  .v3-hero--definition{min-height:780px;background:#edf8fd}
  .v3-hero--definition>img{top:0;right:0;bottom:auto;left:0;width:100%;height:430px;object-position:center top}
  .v3-hero--definition .v3-hero-overlay{background:linear-gradient(180deg,rgba(237,248,253,.08),rgba(237,248,253,.22) 40%,#edf8fd 61%,#edf8fd 100%)}
  .v3-hero--definition .v3-hero-copy{padding:390px 0 62px}
}

/* Selected primary lockup: the monogram and wordmark remain one recognisable logo everywhere. */
.v3-brand{width:178px;height:58px;flex:none;background:url("assets/brand/gantry-med-logo-v1.png") left center/contain no-repeat}
.v3-brand>span{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.v3-footer .v3-brand{width:154px;height:50px;background-position:left center}
@media(max-width:760px){.v3-brand{width:154px;height:50px}.v3-footer .v3-brand{width:146px;height:48px}}

/* A quiet teal highlight keeps the mark alive without competing with the page. */
.v3-brand{position:relative;isolation:isolate;animation:gantry-logo-aura 5.8s ease-in-out infinite}
.v3-brand::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(112deg,transparent 33%,rgba(0,166,166,0) 42%,rgba(54,238,226,.88) 48.5%,rgba(248,255,255,.86) 51.5%,rgba(0,166,166,.24) 55.5%,transparent 65%);background-size:270% 100%;background-position:150% 0;-webkit-mask:url("assets/brand/gantry-med-logo-v1.png") left center/contain no-repeat;mask:url("assets/brand/gantry-med-logo-v1.png") left center/contain no-repeat;mix-blend-mode:screen;opacity:0;animation:gantry-logo-sheen 10s cubic-bezier(.4,0,.2,1) infinite}
@keyframes gantry-logo-sheen{0%,55%{background-position:150% 0;opacity:0}60%{opacity:.82}75%{background-position:-150% 0;opacity:.58}79%,100%{background-position:-150% 0;opacity:0}}
@keyframes gantry-logo-aura{0%,100%{filter:drop-shadow(0 0 0 rgba(0,166,166,0))}50%{filter:drop-shadow(0 0 7px rgba(0,166,166,.36))}}
.v3-brand:hover{animation-duration:2.5s}.v3-brand:hover::after{animation-duration:2.1s;animation-iteration-count:1;opacity:.9}
@media(prefers-reduced-motion:reduce){.v3-brand,.v3-brand::after{animation:none}.v3-brand::after{opacity:0}}
