/*
Theme Name: Gill Crest Medical
Author: Gill Crest Medical
Description: Custom navy-and-white medical, clinical, surgical, and veterinary website with category catalog and quote forms.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: gillcrest-medical
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#102c43;--deep:#0b2133;--blue:#245a7d;--accent:#8cb2c8;--paper:#f5f7f8;--ink:#172f42;--muted:#687b88;--line:#dce5ea}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:white;font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}.container{width:min(1180px,calc(100% - 64px));margin-inline:auto}.skip-link{position:absolute;top:-100px;left:10px;z-index:100;background:white;padding:10px}.skip-link:focus{top:10px}.utility{background:var(--deep);color:#c5d8e2;font-size:10px;letter-spacing:.17em;font-weight:700}.utility-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:15px}.utility a{letter-spacing:.06em;text-transform:none;font-size:12px}.site-header{background:#fff;position:relative;z-index:20;border-bottom:1px solid #eaf0f3}.header-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{flex-shrink:0}.custom-logo{display:block;width:auto;max-width:205px;max-height:76px;object-fit:contain}.brand-fallback{display:flex;align-items:center;gap:11px;color:var(--navy);line-height:1.05}.brand-mark{width:46px;height:46px;border-radius:12px;background:var(--navy);color:white;display:grid;place-items:center;font-size:32px}.brand-fallback strong{font-family:Manrope,sans-serif;display:block;font-size:21px;letter-spacing:.08em}.brand-fallback small{font-size:10px;letter-spacing:.32em;font-weight:700}.primary-nav{display:flex;align-items:center;gap:27px}.nav-links{display:flex;gap:26px;list-style:none;padding:0;margin:0;align-items:center}.nav-links a{font-size:13px;font-weight:700;white-space:nowrap}.nav-links a:hover,.text-link:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;padding:15px 24px;border:1px solid var(--blue);background:var(--blue);color:white;border-radius:4px;font-weight:700;font-size:13px;transition:transform .2s,background .2s}.button:hover{background:var(--navy);transform:translateY(-2px);color:white}.button-small{padding:12px 18px;white-space:nowrap}.nav-toggle{display:none;background:transparent;border:0;padding:12px}.nav-toggle span{display:block;width:24px;height:2px;background:var(--navy);margin:5px}.hero{background:var(--deep);color:white;min-height:635px;overflow:hidden;position:relative}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,#102f48,#0a2132 74%)}.hero-orbit{position:absolute;border:1px solid #ffffff16;border-radius:50%;width:600px;height:600px;right:-120px;top:-190px}.orbit-two{right:-300px;top:20px;width:730px;height:730px}.hero-inner{position:relative;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:80px;min-height:635px}.hero-copy{padding:90px 0}.eyebrow{font-weight:800;color:var(--blue);letter-spacing:.18em;font-size:11px;display:inline-block;margin-bottom:23px}.eyebrow.light{color:#a9c9dc}.eyebrow i{display:inline-block;width:4px;height:4px;background:#a9c9dc;border-radius:50%;margin:0 9px 2px}.hero h1,.closing h2,.industry-layout h2{font-family:Manrope,sans-serif;font-size:clamp(44px,5.5vw,74px);line-height:1.1;letter-spacing:-.055em;margin:0 0 30px;font-weight:800}.hero h1 em,.closing h2 em,.industry-layout h2 em{font-style:normal;color:#9cc4da}.hero-copy>p{color:#c4d4df;max-width:510px;font-size:16px;line-height:1.9;margin-bottom:35px}.button-row{display:flex;flex-wrap:wrap;gap:12px}.button-white{background:white;border-color:white;color:var(--navy)}.button-white:hover{background:#dcebf3;color:var(--navy)}.button-ghost{background:transparent;border-color:#8199aa;color:white}.button-ghost:hover{background:#ffffff18}.hero-bottom{display:flex;flex-wrap:wrap;gap:27px;margin-top:86px;color:#a4bac8;font-size:10px;font-weight:700;letter-spacing:.15em}.hero-visual{position:relative}.hero-frame{height:380px;border:1px solid #66869a;position:relative;background:linear-gradient(145deg,#173c56,#0c283d);box-shadow:22px 22px 0 #ffffff08}.visual-grid{position:absolute;inset:20px;background-image:linear-gradient(#ffffff12 1px,transparent 1px),linear-gradient(90deg,#ffffff12 1px,transparent 1px);background-size:38px 38px}.visual-cross{position:absolute;inset:0;display:grid;place-items:center}.visual-cross span{position:absolute;background:#c5dce9;border-radius:6px;box-shadow:0 0 55px #94c0d144}.visual-cross span:first-child{height:195px;width:68px}.visual-cross span:last-child{width:195px;height:68px}.hero-frame-label{position:absolute;bottom:0;left:0;right:0;padding:17px 20px;background:#0a2132e8;color:#a7c5d6;font-size:10px;letter-spacing:.13em;display:flex;justify-content:space-between}.hero-visual-caption{font-size:10px;letter-spacing:.25em;color:#a4bdcc;line-height:1.8;margin-top:25px}.section{padding:110px 0}.split-heading,.section-top{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end}.section h2,.page-hero h1{font-family:Manrope,sans-serif;letter-spacing:-.045em;font-size:clamp(33px,4vw,52px);line-height:1.2;margin:0 0 26px}.muted{color:#8194a0}.split-heading p,.industry-layout p,.form-layout p{color:var(--muted);line-height:1.95;margin:0 0 25px}.text-link{font-weight:800;font-size:13px;color:var(--blue);border-bottom:1px solid #9cb8c8;padding-bottom:8px}.catalog-section{background:var(--paper)}.section-top{margin-bottom:40px}.section-top .text-link{justify-self:end}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.category-card{background:white;border:1px solid var(--line);padding:29px;min-height:260px;display:flex;flex-direction:column;position:relative;transition:transform .2s,border-color .2s}.category-card:hover{transform:translateY(-5px);border-color:var(--blue)}.card-index{font-size:10px;letter-spacing:.13em;color:var(--muted);font-weight:700}.category-icon{color:var(--blue);font-size:40px;line-height:1;margin:28px 0 18px}.category-card h3{font:800 20px/1.35 Manrope,sans-serif;letter-spacing:-.03em;max-width:230px;margin:0}.card-arrow{position:absolute;bottom:25px;right:28px;color:var(--blue);font-size:23px}.industries{background:var(--navy);color:white}.industry-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.industry-layout h2{font-size:clamp(39px,4.5vw,60px)}.industry-layout p{color:#c4d4df;max-width:440px}.industry-list{align-self:center}.industry-list>div{border-bottom:1px solid #ffffff3b;padding:25px 0;display:flex;align-items:center;gap:24px}.industry-list span{font-size:11px;color:#a9c9dc}.industry-list strong{font:700 19px Manrope,sans-serif;flex:1}.industry-list b{color:#b7d4e5}.process h2{margin-bottom:55px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.steps>div{border-top:2px solid var(--blue);padding-top:24px}.steps span{font-size:12px;color:var(--blue);font-weight:800}.steps h3{font:800 21px Manrope,sans-serif;letter-spacing:-.03em}.steps p{color:var(--muted)}.closing{background:#1c4a68;color:white;padding:95px 0}.closing-inner{text-align:center}.closing h2{font-size:clamp(36px,5vw,63px)}.site-footer{background:#091d2d;color:#d6e1e8;padding-top:75px}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.4fr;gap:50px;padding-bottom:75px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-brand{font:800 24px Manrope,sans-serif;letter-spacing:.06em;color:white;line-height:1.2}.footer-brand span{display:block;font-size:11px;letter-spacing:.25em;margin-top:6px}.footer-grid p{font-size:13px;color:#a8bac5;line-height:1.9;max-width:280px}.footer-grid h3{font-size:11px;letter-spacing:.17em;color:white;text-transform:uppercase;margin:0 0 12px}.footer-grid a:not(.button){font-size:13px}.footer-grid a:not(.button):hover{color:#b3d8ed}.footer-grid .button{margin-top:10px}.footer-note{font-size:11px!important}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff2b;padding:25px 0;font-size:11px;color:#9fb2bf}.page-hero{background:var(--navy);color:white;padding:92px 0}.page-hero h1{font-size:clamp(42px,6vw,70px);margin-bottom:18px}.page-hero p{color:#c6d9e4;font-size:17px;max-width:660px}.narrow{max-width:800px}.narrow .lead,.catalog-section .lead{font-size:21px;line-height:1.8;color:#465f70}.narrow p{line-height:2}.narrow .button{margin-top:20px}.catalog-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:35px}.catalog-detail{background:white;border:1px solid var(--line);padding:40px;scroll-margin-top:25px}.catalog-detail h2{font-size:28px}.catalog-detail ul{margin:0 0 28px;padding-left:18px;color:#5e7280;line-height:2}.catalog-detail p{color:var(--muted)}.form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.form-card{padding:38px;background:var(--paper);border:1px solid var(--line)}.form-card form{display:grid;gap:19px}.form-card label{display:grid;gap:7px;font-size:12px;font-weight:800;color:var(--navy)}.form-card input,.form-card select,.form-card textarea{width:100%;background:white;border:1px solid #cbd8df;border-radius:3px;padding:12px 13px;color:var(--ink);font-weight:400;font-size:15px}.form-card input:focus,.form-card select:focus,.form-card textarea:focus{outline:2px solid #86b6d1;outline-offset:2px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-submit{justify-self:start}.form-disclaimer{font-size:11px;line-height:1.5!important;margin:0!important}.form-notice{background:#fff1e8;border-left:3px solid #ba682d;padding:15px;margin-bottom:20px;font-size:13px}.form-notice.success{background:#e9f5ef;border-color:#32885a}.honeypot{position:absolute!important;left:-9999px!important}.contact-callout{padding-top:25px;border-top:1px solid var(--line);font-size:13px}.contact-callout a{color:var(--blue);font-weight:800}.entry-content{overflow-wrap:anywhere}.entry-content a{color:var(--blue);text-decoration:underline}
@media(max-width:1050px){.container{width:min(100% - 44px,1180px)}.header-inner{min-height:78px}.primary-nav{gap:15px}.nav-links{gap:15px}.nav-links a{font-size:12px}.custom-logo{max-width:175px}.hero-inner{gap:40px}.hero-frame{height:310px}.footer-grid{gap:25px}}
@media(max-width:800px){.utility-inner{min-height:28px}.utility-inner span{display:none}.utility-inner{justify-content:center}.header-inner{min-height:76px}.custom-logo{max-width:165px;max-height:60px}.nav-toggle{display:block;margin-left:auto}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;border-top:1px solid var(--line);padding:20px 24px 26px;box-shadow:0 15px 20px #102c431c}.primary-nav.is-open{display:flex;flex-direction:column;align-items:stretch}.nav-links{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav-links li{border-bottom:1px solid var(--line)}.nav-links a{display:block;padding:13px 0;font-size:15px}.nav-cta{align-self:stretch}.hero-inner{grid-template-columns:1fr;min-height:auto;gap:0}.hero-copy{padding:85px 0 65px}.hero-bottom{margin-top:65px}.hero-visual{display:none}.section{padding:75px 0}.split-heading,.section-top,.industry-layout,.form-layout{grid-template-columns:1fr;gap:20px}.section-top .text-link{justify-self:start}.category-grid{grid-template-columns:repeat(2,1fr)}.industry-list{margin-top:30px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:45px}.catalog-detail-grid{grid-template-columns:1fr}.steps{gap:18px}}
@media(max-width:520px){.container{width:calc(100% - 36px)}.utility a{font-size:11px}.brand-fallback strong{font-size:16px}.brand-fallback small{font-size:8px}.brand-mark{width:38px;height:38px}.hero h1{font-size:clamp(39px,11vw,53px)}.hero-copy{padding:70px 0}.hero-copy>p{font-size:15px}.button-row{flex-direction:column;align-items:stretch}.hero-bottom{gap:12px;font-size:9px;margin-top:55px}.section{padding:60px 0}.section h2{font-size:34px}.category-grid,.steps,.footer-grid{grid-template-columns:1fr}.category-card{min-height:225px}.footer-grid{gap:32px}.footer-bottom{flex-direction:column}.page-hero{padding:65px 0}.form-card{padding:23px}.form-pair{grid-template-columns:1fr}.catalog-detail{padding:25px}.industry-list strong{font-size:16px}.closing{padding:75px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Gill Crest original logo treatments: compact header and full footer */
.brand-logo-link{display:block;line-height:0}.gcm-header-logo{display:block;width:clamp(170px,19vw,245px);height:auto;max-height:83px;object-fit:contain}.header-inner{min-height:100px}.footer-logo-panel{background:#fff;padding:12px 15px;max-width:330px;width:100%;border-radius:2px}.gcm-footer-logo{display:block;width:100%;height:auto}@media(max-width:1050px){.gcm-header-logo{width:175px}.header-inner{min-height:88px}}@media(max-width:800px){.gcm-header-logo{width:190px;max-height:75px}.header-inner{min-height:83px}}@media(max-width:380px){.gcm-header-logo{width:165px}}

/* v1.2: full-height compact brand and original Gill Crest emblem */
.gcm-header-logo{width:clamp(195px,20vw,245px);height:auto;max-height:none;object-fit:contain}
.brand-logo-link{display:flex;align-items:center;max-width:245px}
.header-inner{min-height:104px}
.hero-frame{overflow:hidden;isolation:isolate}
.visual-brand{position:absolute;inset:18px 18px 50px;display:flex;align-items:center;justify-content:center}
.visual-brand:before{content:"";position:absolute;width:275px;height:275px;border:1px solid #b2d3e733;border-radius:50%;box-shadow:0 0 0 34px #b2d3e70a,0 0 0 76px #b2d3e708}
.visual-brand img{position:relative;z-index:1;width:auto;height:min(78%,260px);max-width:75%;object-fit:contain;filter:brightness(0) invert(1);opacity:.82}
@media(max-width:1050px){.gcm-header-logo{width:195px;max-height:none}.header-inner{min-height:94px}}
@media(max-width:800px){.gcm-header-logo{width:185px;max-height:none}.header-inner{min-height:82px}}
@media(max-width:380px){.gcm-header-logo{width:160px}}

/* v1.3: catalog family cards */
.catalog-items{display:grid;grid-template-columns:1fr;gap:8px;margin:22px 0 30px}.catalog-item{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 15px;background:#f5f8fa;border:1px solid #e1eaf0;border-radius:3px;font-size:14px;font-weight:600;line-height:1.45}.catalog-item span:last-child{color:#245a7d;flex-shrink:0}.catalog-item:hover{background:#eaf3f8;border-color:#8cb2c8}.catalog-detail{scroll-margin-top:20px}.catalog-detail .text-link{display:inline-block}.category-card{min-height:240px}

/* v1.4: restore approved cinematic hero and the larger complete header logo */
.brand-logo-link{max-width:none!important;display:flex;align-items:center}
.gcm-header-logo{width:clamp(245px,24vw,320px)!important;max-width:100%;height:auto!important;max-height:none!important;object-fit:contain!important}
.header-inner{min-height:110px}
.hero{isolation:isolate;background:#0a2032}
.hero:before{z-index:0;background:linear-gradient(105deg,#0a2032 0%,#102e46 52%,#0b253b 100%)}
.hero:after{content:"";position:absolute;z-index:0;right:0;top:0;bottom:0;width:72%;background-image:url('assets/gillcrest-hero-fullbleed.webp');background-position:center center;background-repeat:no-repeat;background-size:cover;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 15%,rgba(0,0,0,.86) 37%,#000 52%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 15%,rgba(0,0,0,.86) 37%,#000 52%);pointer-events:none}
.hero-inner{z-index:2;grid-template-columns:1.04fr .96fr;gap:26px}
.hero-copy{position:relative;z-index:3}
.hero-orbit{display:none}
.hero-visual-v23{height:525px;pointer-events:none}
.hero-scene{display:none}
@media(max-width:1050px){.gcm-header-logo{width:245px!important}.header-inner{min-height:98px}.hero:after{width:76%;background-position:55% center}}
@media(max-width:800px){.gcm-header-logo{width:215px!important}.header-inner{min-height:88px}.hero-inner{grid-template-columns:1fr}.hero-copy{padding:75px 0 58px}.hero:after{display:none}.hero-visual-v23{display:block;height:280px;margin:0 0 25px}.hero-scene{display:block;position:absolute;inset:-5px -22px -10px;background:url('assets/gillcrest-hero-fullbleed.webp') center center/cover no-repeat;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 78%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 78%,transparent 100%)}.hero-bottom{margin-top:54px}}
@media(max-width:520px){.hero-copy{padding:65px 0 38px}.gcm-header-logo{width:195px!important}.hero-visual-v23{height:210px}.hero-scene{inset:0 -20px}.hero-bottom{margin-top:46px}}

/* v1.6 four-column footer; unpublished pages are never linked */
.footer-topline{display:flex;align-items:center;gap:40px;justify-content:space-between;padding-bottom:40px;border-bottom:1px solid #ffffff26}.footer-topline .footer-logo-panel{flex:0 1 250px}.footer-topline p{font-size:13px;color:#b8cbd5}.footer-topline .footer-email{font-weight:700;color:#fff;overflow-wrap:anywhere}.footer-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;padding:45px 0 70px}.footer-columns>div{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-columns h3{color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:12px;margin:0 0 10px}.footer-columns a{color:#d6e1e8;font-size:13px;line-height:1.5}.footer-columns a:hover,.footer-email:hover{color:#9fd0e8}@media(max-width:800px){.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.footer-topline{flex-wrap:wrap}}@media(max-width:520px){.footer-columns{grid-template-columns:1fr}.footer-topline{align-items:flex-start;flex-direction:column;gap:16px}}

/* Release accessibility and privacy notice treatments */
.form-disclaimer{font-size:13px;line-height:1.7!important}.form-disclaimer a{text-decoration:underline;color:var(--blue)}a:focus-visible,button:focus-visible{outline:3px solid #628da6;outline-offset:4px}.entry-content h2{font-size:28px;margin-top:36px}.entry-content ul{padding-left:24px}
