/*
Theme Name: Vision Plus Eye Care
Theme URI: https://visionpluseyecare.in/
Author: Vision Plus Eye Care
Description: A premium, responsive, Gutenberg-friendly WordPress theme for Vision Plus Eye Care in Kannur. Built with native WordPress controls and no page-builder dependency.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: vision-plus-eye-care
*/
:root{--vp-navy:#0B4C82;--vp-blue:#0068B4;--vp-red:#E21E26;--vp-ivory:#F5F8FB;--vp-grey:#E3E8EE;--vp-white:#fff;--vp-ink:#16232F;--vp-muted:#57646F;--vp-container:1240px;--vp-ease:cubic-bezier(.23,1,.32,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--vp-ink);background:var(--vp-white);font-family:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.vp-container{width:100%;max-width:var(--vp-container);margin:0 auto;padding:0 56px;box-sizing:border-box}.vp-utility{background:var(--vp-navy);color:rgba(255,255,255,.8);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.vp-utility .vp-container{height:34px;display:flex;align-items:center;justify-content:space-between}.vp-utility a{color:#fff}.vp-header{height:88px;border-bottom:1px solid rgba(11,76,130,.16);background:#fff;position:relative;z-index:30}.vp-header-inner{height:100%;display:flex;align-items:center;gap:24px}.vp-brand{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto}.vp-brand img{width:165px;height:auto;object-fit:contain}.vp-wordmark{display:grid;grid-template-columns:auto auto;align-items:baseline;line-height:.9;column-gap:4px;color:var(--vp-navy);letter-spacing:.04em}.vp-wordmark strong,.vp-wordmark em{font-size:17px;font-weight:800;font-style:normal}.vp-wordmark em{color:var(--vp-red)}.vp-wordmark small{grid-column:1/-1;margin-top:4px;font-size:7px;letter-spacing:.23em;font-weight:800;color:var(--vp-muted)}.vp-nav{display:flex;align-items:center;gap:23px;margin-left:auto}.vp-nav a{position:relative;color:var(--vp-muted);font-size:12px;font-weight:800}.vp-nav a:after{position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--vp-red);content:"";transition:right .25s var(--vp-ease)}.vp-nav a:hover{color:var(--vp-navy)}.vp-nav a:hover:after{right:0}.vp-head-cta{display:inline-flex;align-items:center;gap:8px;background:var(--vp-red);color:#fff;padding:13px 17px;font-size:11px;font-weight:800;transition:transform .2s,background .2s}.vp-head-cta:hover{background:#bb151c;transform:translateY(-2px)}.vp-menu{display:none;background:none;color:var(--vp-navy);border:0;padding:8px}.vp-hero{position:relative;isolation:isolate;min-height:500px;padding:108px 0 112px;background:var(--vp-navy);color:#fff;overflow:hidden}.vp-hero:after{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(11,76,130,.98) 0%,rgba(11,76,130,.9) 40%,rgba(11,76,130,.38) 100%),url('assets/hero.jpg') center/cover;content:""}.vp-eyebrow{margin:0 0 22px;color:var(--vp-blue);font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.vp-eyebrow-light{color:rgba(255,255,255,.75)}.vp-eyebrow:before{display:inline-block;width:6px;height:6px;margin-right:9px;border-radius:50%;background:var(--vp-red);content:""}.vp-hero h1{max-width:700px;margin:0 0 28px;color:#fff;font-size:clamp(3.2rem,6vw,6rem);font-weight:300;letter-spacing:-.07em;line-height:.98}.vp-hero h1 em{color:#a9cce2;font-style:normal}.vp-hero p{max-width:500px;margin:0 0 8px;color:rgba(255,255,255,.76);font-size:15px;line-height:1.8}.vp-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:36px}.vp-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:12px 18px;border:1px solid transparent;font-size:11px;font-weight:800;cursor:pointer;transition:transform .2s,background .2s,color .2s}.vp-btn:hover{transform:translateY(-2px)}.vp-btn-red{background:var(--vp-red);color:#fff}.vp-btn-red:hover{background:#bb151c}.vp-btn-outline{border-color:var(--vp-navy);color:var(--vp-navy)}.vp-btn-outline:hover{background:var(--vp-navy);color:#fff}.vp-btn-light{border-color:rgba(255,255,255,.5);color:#fff}.vp-btn-light:hover{background:rgba(255,255,255,.1);border-color:#fff}.vp-trustbar{background:var(--vp-ivory);border-bottom:1px solid var(--vp-grey)}.vp-trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.vp-trust{min-height:105px;display:flex;align-items:center;justify-content:center;gap:12px;border-right:1px solid var(--vp-grey);font-size:10px;font-weight:800;letter-spacing:.1em;line-height:1.5;text-transform:uppercase}.vp-trust:last-child{border:0}.vp-trust strong{color:var(--vp-navy);font-size:30px;font-weight:300;letter-spacing:-.06em}.vp-trust strong span{color:var(--vp-red)}.vp-section{padding:105px 0}.vp-section-ivory{background:var(--vp-ivory)}.vp-section h2,.vp-page-hero h1{margin:0 0 28px;color:var(--vp-navy);font-size:clamp(2.4rem,4vw,4.4rem);font-weight:300;letter-spacing:-.065em;line-height:1.02}.vp-section h2 em,.vp-page-hero h1 em{color:var(--vp-blue);font-style:normal}.vp-section-intro{max-width:600px;margin-bottom:42px}.vp-section-intro p:not(.vp-eyebrow){margin:0 0 24px;color:var(--vp-muted);line-height:1.85}.vp-section-intro p:not(.vp-eyebrow):last-child{margin-bottom:0}.vp-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(55px,10vw,140px);align-items:center}.vp-split-media{overflow:hidden;aspect-ratio:1.2;background:var(--vp-grey)}.vp-split-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--vp-ease)}.vp-split-media:hover img{transform:scale(1.04)}.vp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.vp-card{position:relative;padding:27px 29px;background:#fff;border:1px solid var(--vp-grey);transition:transform .25s var(--vp-ease),box-shadow .25s}.vp-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(11,76,130,.1)}.vp-card-number{color:var(--vp-red);font-size:10px;font-weight:800;letter-spacing:.15em}.vp-card h3{margin:40px 0 10px;color:var(--vp-navy);font-size:21px;font-weight:500;letter-spacing:-.04em;line-height:1.15}.vp-card p{color:var(--vp-muted);font-size:12px;line-height:1.75}.vp-card-arrow{display:inline-flex;margin-top:17px;color:var(--vp-blue);font-weight:800}.vp-band{padding:100px 0;background:var(--vp-navy);color:#fff;overflow:hidden}.vp-band h2{max-width:100%;margin:0 0 28px;color:#fff;font-size:clamp(2.1rem,4vw,4.4rem);font-weight:300;letter-spacing:-.05em;line-height:1.14;overflow-wrap:break-word;word-break:break-word}.vp-band p{margin:0 0 40px;color:rgba(255,255,255,.7);font-size:15px;line-height:1.8}.vp-band p:last-of-type{margin-bottom:0}.vp-band .vp-eyebrow{margin-bottom:24px}.vp-band .vp-actions{margin-top:40px}.vp-band-copy{max-width:680px;padding:0 clamp(20px,4vw,48px);box-sizing:border-box}.vp-brand-cloud{display:flex;flex-wrap:wrap;gap:0;margin-top:30px;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.vp-brand-cloud span{min-width:20%;padding:14px 12px 14px 0;color:rgba(255,255,255,.9);font-size:12px;font-weight:700}.vp-hub-intro{display:grid;grid-template-columns:1fr .78fr;gap:clamp(35px,7vw,100px);align-items:center;margin-bottom:70px;padding-bottom:55px;border-bottom:1px solid var(--vp-grey)}.vp-hub-intro h2{margin:0 0 28px;color:var(--vp-navy);font-size:clamp(2.7rem,5vw,5rem);font-weight:300;letter-spacing:-.07em;line-height:1.02}.vp-hub-intro p:not(.vp-eyebrow){max-width:600px;margin:0 0 26px;color:var(--vp-muted);font-size:16px;line-height:1.9}.vp-hub-media{overflow:hidden;aspect-ratio:1.28;background:var(--vp-grey)}.vp-hub-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--vp-ease)}.vp-hub-media:hover img{transform:scale(1.04)}.vp-brand-hero{display:grid;grid-template-columns:1fr .86fr;gap:0;min-height:430px;margin-bottom:75px;background:var(--vp-navy);color:#fff}.vp-brand-hero>div:first-child{display:flex;flex-direction:column;justify-content:center;padding:clamp(35px,6vw,80px)}.vp-brand-hero h2,.vp-tech-hero h2{margin:0 0 28px;color:#fff;font-size:clamp(2.5rem,4.4vw,5rem);font-weight:300;letter-spacing:-.07em;line-height:1.02}.vp-brand-hero h2 em,.vp-tech-hero h2 em{color:#a9cce2;font-style:normal}.vp-brand-hero p:not(.vp-eyebrow),.vp-tech-hero p:not(.vp-eyebrow){max-width:540px;margin:0 0 28px;color:rgba(255,255,255,.74);font-size:15px;line-height:1.85}.vp-brand-hero-media,.vp-tech-hero-media{overflow:hidden;min-height:430px}.vp-brand-hero-media img,.vp-tech-hero-media img{width:100%;height:100%;object-fit:cover}.vp-brand-section{margin-bottom:65px}.vp-brand-section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--vp-grey)}.vp-brand-section-head h3{margin:0;color:var(--vp-navy);font-size:28px;font-weight:500;letter-spacing:-.04em}.vp-brand-section-head p:last-child{max-width:500px;margin:0;color:var(--vp-muted);font-size:12px}.vp-brand-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.vp-brand-tile{display:flex;min-height:170px;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px;background:#fff;border:1px solid var(--vp-grey);text-align:center;transition:transform .25s var(--vp-ease),box-shadow .25s}.vp-brand-tile:hover{transform:translateY(-5px);box-shadow:0 16px 32px rgba(11,76,130,.1)}.vp-brand-tile img{width:100%;height:76px;object-fit:contain}.vp-brand-tile strong{color:var(--vp-navy);font-size:12px}.vp-brand-placeholder{display:flex;width:76px;height:76px;align-items:center;justify-content:center;border-radius:50%;background:var(--vp-ivory);color:var(--vp-blue);font-size:11px;font-weight:800}.vp-brand-note{max-width:170px;color:var(--vp-muted);font-size:9px;line-height:1.5}.vp-tech-hero{display:grid;grid-template-columns:1.04fr .96fr;gap:0;min-height:480px;margin-bottom:55px;background:var(--vp-navy);color:#fff}.vp-tech-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(35px,6vw,85px)}.vp-tech-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-bottom:55px;border-top:1px solid var(--vp-grey);border-bottom:1px solid var(--vp-grey)}.vp-tech-principles article{min-height:210px;padding:28px 26px;border-right:1px solid var(--vp-grey)}.vp-tech-principles article:last-child{border-right:0}.vp-tech-principles span{color:var(--vp-red);font-size:11px;font-weight:800;letter-spacing:.14em}.vp-tech-principles h3{margin:42px 0 8px;color:var(--vp-navy);font-size:25px;font-weight:500}.vp-tech-principles p{margin:0;color:var(--vp-muted);font-size:12px;line-height:1.8}.vp-tech-disclosure{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px;background:var(--vp-ivory);border-left:3px solid var(--vp-red)}.vp-tech-disclosure h3{margin:0 0 10px;color:var(--vp-navy);font-size:26px;font-weight:500}.vp-tech-disclosure p:not(.vp-eyebrow){max-width:760px;margin:0;color:var(--vp-muted);font-size:13px;line-height:1.8}.vp-detail-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(45px,8vw,110px);align-items:start;margin-bottom:68px}.vp-detail-copy{max-width:680px}.vp-detail-copy h2{margin:0 0 28px;color:var(--vp-navy);font-size:clamp(2.5rem,4.5vw,4.7rem);font-weight:300;letter-spacing:-.065em;line-height:1.03}.vp-lead{max-width:600px;color:var(--vp-muted);font-size:17px;line-height:1.8}.vp-detail-section{max-width:620px;margin-top:32px;padding-top:22px;border-top:1px solid var(--vp-grey)}.vp-detail-section h3{margin:0 0 10px;color:var(--vp-navy);font-size:20px;font-weight:600;letter-spacing:-.03em}.vp-detail-section p{margin:0;color:var(--vp-muted);line-height:1.9}.vp-detail-media{position:relative;overflow:hidden;min-height:520px;background:var(--vp-grey)}.vp-detail-media img{width:100%;height:100%;min-height:520px;object-fit:cover;transition:transform .7s var(--vp-ease)}.vp-detail-media:hover img{transform:scale(1.035)}.vp-detail-caption{position:absolute;right:18px;bottom:18px;left:18px;display:flex;justify-content:space-between;gap:12px;padding:14px 16px;background:rgba(11,76,130,.93);color:#fff;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.vp-detail-caption span{color:rgba(255,255,255,.68)}.vp-page-hero{padding:87px 0 80px;background:var(--vp-ivory);border-bottom:1px solid var(--vp-grey)}.vp-page-hero h1{max-width:800px}.vp-page-hero p{max-width:640px;color:var(--vp-muted);font-size:15px}.vp-breadcrumbs{margin-bottom:20px;color:var(--vp-muted);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.vp-content{max-width:850px;color:var(--vp-muted)}.vp-content h2{margin-top:38px;color:var(--vp-navy);font-size:30px;font-weight:500;letter-spacing:-.04em;line-height:1.15}.vp-content h3{margin-top:28px;color:var(--vp-navy);font-size:19px}.vp-content p{margin:0 0 18px}.vp-content ul{padding-left:20px}.vp-content li{margin:7px 0}.vp-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:38px}.vp-link-card{padding:21px;background:#fff;border:1px solid var(--vp-grey);color:var(--vp-navy);font-size:12px;font-weight:800;transition:transform .2s,box-shadow .2s}.vp-link-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(11,76,130,.1)}.vp-faq{max-width:850px;margin-top:50px;padding-top:35px;border-top:1px solid var(--vp-grey)}.vp-faq h2{font-size:30px}.vp-faq details{border-bottom:1px solid var(--vp-grey)}.vp-faq summary{padding:18px 0;color:var(--vp-navy);font-size:13px;font-weight:800;cursor:pointer}.vp-faq details p{padding:0 0 17px;color:var(--vp-muted);font-size:13px}.vp-locations{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.vp-location-card{padding:27px;background:#fff;border:1px solid var(--vp-grey)}.vp-location-card h3{margin:0 0 11px;color:var(--vp-navy);font-size:21px;font-weight:500}.vp-location-card p{min-height:53px;color:var(--vp-muted);font-size:12px}.vp-location-card a{display:block;margin-top:10px;color:var(--vp-blue);font-size:11px;font-weight:800}.vp-timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:0;margin:40px 0;border-top:1px solid var(--vp-grey);border-bottom:1px solid var(--vp-grey)}.vp-timeline-item{min-height:145px;padding:22px 14px;border-right:1px solid var(--vp-grey)}.vp-timeline-item:last-child{border:0}.vp-timeline-item strong{display:block;color:var(--vp-red);font-size:11px;letter-spacing:.12em}.vp-timeline-item span{display:block;margin-top:25px;color:var(--vp-navy);font-size:12px;font-weight:800;line-height:1.45}.vp-brand-groups{display:grid;gap:24px}.vp-brand-group{padding:26px;background:var(--vp-ivory);border-left:3px solid var(--vp-red)}.vp-brand-group h3{margin:0 0 14px;color:var(--vp-navy);font-size:18px}.vp-brand-group p{margin:0;color:var(--vp-muted);line-height:1.9}.vp-appointment{background:var(--vp-navy);color:#fff;padding:100px 0}.vp-appointment-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.vp-appointment h2{color:#fff}.vp-appointment h2 em{color:#a9cce2;font-style:normal}.vp-form{padding:27px;background:#fff;color:var(--vp-ink)}.vp-form label{display:block;margin-bottom:15px;color:var(--vp-muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.vp-form input,.vp-form select,.vp-form textarea{width:100%;margin-top:7px;padding:11px 12px;border:1px solid var(--vp-grey);background:var(--vp-ivory);font:inherit;font-size:12px}.vp-form textarea{min-height:100px;resize:vertical}.vp-footer{background:#082f51;color:rgba(255,255,255,.7)}.vp-footer-main{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:70px;padding:60px 0}.vp-footer h3{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.15em}.vp-footer a:hover{color:#fff}.vp-footer p,.vp-footer a,.vp-footer span{font-size:11px}.vp-footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid rgba(255,255,255,.15);font-size:9px}.vp-mobile-bar{display:none}@media(max-width:850px){.vp-container{padding:0 24px}.vp-nav{position:absolute;display:none;top:88px;left:0;right:0;padding:15px 18px 20px;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--vp-grey);box-shadow:0 14px 30px rgba(11,76,130,.12)}.vp-nav.is-open{display:flex}.vp-nav a{padding:13px 0;border-bottom:1px solid var(--vp-grey)}.vp-menu{display:block}.vp-head-cta{display:none}.vp-header-inner{justify-content:space-between}.vp-trust-grid{grid-template-columns:repeat(2,1fr)}.vp-trust{min-height:84px;justify-content:flex-start;padding-left:15px}.vp-trust:nth-child(2){border-right:0}.vp-trust:nth-child(3),.vp-trust:nth-child(4){border-top:1px solid var(--vp-grey)}.vp-split,.vp-appointment-grid,.vp-detail-grid,.vp-hub-intro,.vp-brand-hero,.vp-tech-hero{grid-template-columns:1fr;gap:45px}.vp-detail-media,.vp-detail-media img,.vp-brand-hero-media,.vp-tech-hero-media{min-height:380px}.vp-brand-section-head{display:block}.vp-brand-section-head p:last-child{margin-top:12px}.vp-brand-gallery{grid-template-columns:repeat(3,1fr)}.vp-tech-principles{grid-template-columns:1fr}.vp-tech-principles article{border-right:0;border-bottom:1px solid var(--vp-grey)}.vp-tech-principles article:last-child{border-bottom:0}.vp-tech-disclosure{display:block}.vp-tech-disclosure .vp-btn{margin-top:20px}.vp-grid,.vp-locations,.vp-link-grid{grid-template-columns:1fr}.vp-timeline{grid-template-columns:repeat(2,1fr)}.vp-timeline-item:nth-child(2n){border-right:0}.vp-timeline-item{border-bottom:1px solid var(--vp-grey)}.vp-footer-main{grid-template-columns:1fr 1fr;gap:38px}.vp-footer-brand{grid-column:1/-1}}@media(max-width:520px){.vp-utility .vp-container{height:30px}.vp-utility{font-size:8px}.vp-utility .vp-container>span:last-child{display:none}.vp-hero{padding:78px 0 90px}.vp-hero h1{font-size:3.4rem}.vp-actions{display:grid}.vp-btn{width:100%}.vp-section{padding:76px 0}.vp-page-hero{padding:65px 0 58px}.vp-detail-copy h2,.vp-hub-intro h2,.vp-brand-hero h2,.vp-tech-hero h2,.vp-section h2,.vp-page-hero h1,.vp-band h2{font-size:2.3rem;line-height:1.18}.vp-band-copy{max-width:100%}.vp-detail-media,.vp-detail-media img,.vp-brand-hero-media,.vp-tech-hero-media{min-height:300px}.vp-brand-gallery{grid-template-columns:repeat(2,1fr)}.vp-timeline{grid-template-columns:1fr}.vp-timeline-item{border-right:0}.vp-footer-main{grid-template-columns:1fr}.vp-footer-brand{grid-column:auto}.vp-footer-bottom{padding-bottom:65px;flex-direction:column}.vp-mobile-bar{position:fixed;z-index:100;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.35fr;background:var(--vp-navy);box-shadow:0 -5px 20px rgba(0,0,0,.13)}.vp-mobile-bar a,.vp-mobile-bar button{min-height:50px;display:flex;align-items:center;justify-content:center;gap:7px;color:#fff;background:transparent;border:0;font-size:10px;font-weight:800;text-transform:uppercase}.vp-mobile-bar button{background:var(--vp-red)}}

/* Locations contact layout */
.vp-contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(35px,7vw,100px);align-items:start;margin-top:30px}.vp-contact-details{padding:34px;background:var(--vp-ivory);border-left:3px solid var(--vp-red)}.vp-contact-details h3{margin:0 0 28px;color:var(--vp-navy);font-size:30px;font-weight:500}.vp-contact-details p{margin:0 0 22px;color:var(--vp-muted);line-height:1.8}.vp-contact-details p:last-child{margin-bottom:0}.vp-contact-details strong{display:inline-block;margin-bottom:4px;color:var(--vp-navy);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.vp-contact-details a{color:var(--vp-blue);font-weight:800}.vp-contact-layout .vp-form{border:1px solid var(--vp-grey);box-shadow:0 16px 35px rgba(11,76,130,.06)}
@media(max-width:850px){.vp-contact-layout{grid-template-columns:1fr;gap:30px}}

/* Four-card homepage service grid */
.vp-service-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:1050px){.vp-service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.vp-service-grid{grid-template-columns:1fr}}

/* Professional contact page cards */
.vp-contact-layout{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);gap:clamp(28px,5vw,72px);align-items:stretch;margin-top:46px}
.vp-contact-info{display:grid;gap:18px;align-content:start}
.vp-contact-card,.vp-contact-form-card{background:#fff;border:1px solid rgba(11,76,130,.09);border-radius:4px;box-shadow:0 18px 45px rgba(11,76,130,.10),0 3px 10px rgba(22,35,47,.04)}
.vp-contact-card{display:flex;gap:18px;align-items:flex-start;padding:26px 25px;transition:transform .25s var(--vp-ease),box-shadow .25s var(--vp-ease),border-color .25s}
.vp-contact-card:hover{transform:translateY(-4px);border-color:rgba(226,30,38,.32);box-shadow:0 24px 55px rgba(11,76,130,.14),0 5px 14px rgba(22,35,47,.05)}
.vp-contact-card-icon{display:flex;width:42px;height:42px;flex:0 0 42px;align-items:center;justify-content:center;border-radius:50%;background:var(--vp-ivory);color:var(--vp-red);font-size:19px;font-weight:700;line-height:1}
.vp-contact-card-label{margin:0 0 7px!important;color:var(--vp-red)!important;font-size:10px!important;font-weight:800!important;letter-spacing:.16em;text-transform:uppercase}
.vp-contact-card h3{margin:0 0 8px;color:var(--vp-navy);font-size:19px;font-weight:600;letter-spacing:-.035em}
.vp-contact-card p:last-child{margin:0;color:var(--vp-muted);font-size:13px;line-height:1.7}
.vp-contact-card a{color:var(--vp-blue);font-weight:800}
.vp-contact-form-card{padding:clamp(26px,4vw,43px)}
.vp-contact-form-card h3{margin:0 0 10px;color:var(--vp-navy);font-size:clamp(1.8rem,3vw,2.65rem);font-weight:400;letter-spacing:-.055em;line-height:1.08}
.vp-contact-form-intro{max-width:590px;margin:0 0 28px;color:var(--vp-muted);font-size:13px;line-height:1.8}
.vp-contact-form-card form{margin-top:24px}
.vp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.vp-contact-form-card .vp-btn{margin-top:6px;min-width:145px}
.vp-contact-form-card input,.vp-contact-form-card textarea{border-radius:2px;background:#fbfcfe;transition:border-color .2s,box-shadow .2s,background .2s}
.vp-contact-form-card input:focus,.vp-contact-form-card textarea:focus{outline:0;border-color:var(--vp-blue);background:#fff;box-shadow:0 0 0 3px rgba(0,104,180,.12)}
@media(max-width:850px){.vp-contact-layout{grid-template-columns:1fr;margin-top:32px}.vp-contact-info{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.vp-contact-info{grid-template-columns:1fr}.vp-contact-card{padding:22px}.vp-form-row{grid-template-columns:1fr;gap:0}.vp-contact-form-card{padding:24px 20px}}

/* Contact form alignment correction */
.vp-contact-form-card form.vp-contact-form{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:0!important}
.vp-contact-form-card form.vp-contact-form .vp-form-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important;gap:18px!important;width:100%!important;margin:0!important}
.vp-contact-form-card form.vp-contact-form label{display:flex!important;flex:0 0 auto!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;min-width:0!important;float:none!important;clear:both!important;margin:0 0 18px!important;color:var(--vp-muted)!important;font-size:10px!important;font-weight:800!important;letter-spacing:.1em!important;line-height:1.4!important;text-transform:uppercase!important}
.vp-contact-form-card form.vp-contact-form label span{display:block!important;margin:0 0 7px!important}
.vp-contact-form-card form.vp-contact-form input,.vp-contact-form-card form.vp-contact-form textarea{display:block!important;position:static!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:13px 14px!important;border:1px solid var(--vp-grey)!important;border-radius:3px!important;background:#fbfcfe!important;box-sizing:border-box!important;font:inherit!important;font-size:13px!important;line-height:1.4!important}
.vp-contact-form-card form.vp-contact-form textarea{min-height:138px!important;resize:vertical!important}
.vp-contact-form-card form.vp-contact-form input::placeholder,.vp-contact-form-card form.vp-contact-form textarea::placeholder{color:#96a4af;opacity:1}
.vp-contact-form-card form.vp-contact-form input:focus,.vp-contact-form-card form.vp-contact-form textarea:focus{outline:0!important;border-color:var(--vp-blue)!important;background:#fff!important;box-shadow:0 0 0 3px rgba(0,104,180,.12)!important}
.vp-contact-form-card form.vp-contact-form button{align-self:flex-start!important;clear:both!important;margin-top:2px!important}
@media(max-width:640px){.vp-contact-form-card form.vp-contact-form .vp-form-row{grid-template-columns:1fr!important;gap:0!important}}


/* Contact page refinement: clear hierarchy, consistent rhythm, and responsive sizing. */
.vp-contact-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:48px;padding-bottom:34px;border-bottom:1px solid var(--vp-grey)}
.vp-contact-intro-copy{max-width:650px}
.vp-contact-intro-copy .vp-eyebrow{margin-bottom:18px}
.vp-contact-intro-copy h2{margin:0 0 18px;color:var(--vp-navy);font-size:clamp(2.45rem,4.5vw,4.7rem);font-weight:300;letter-spacing:-.065em;line-height:1.02}
.vp-contact-intro-copy h2 em{color:var(--vp-blue);font-style:normal}
.vp-contact-intro-copy>p:last-child{max-width:570px;margin:0;color:var(--vp-muted);font-size:16px;line-height:1.85}
.vp-contact-intro-note{max-width:235px;padding:18px 0 2px 22px;border-left:3px solid var(--vp-red)}
.vp-contact-intro-note span{display:block;margin-bottom:7px;color:var(--vp-red);font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.vp-contact-intro-note strong{display:block;color:var(--vp-navy);font-size:13px;line-height:1.55}
.vp-contact-layout{grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr);gap:clamp(32px,5vw,76px);margin-top:0}
.vp-contact-info{gap:14px}
.vp-contact-card{min-height:122px;padding:24px 22px;border-radius:6px;box-shadow:0 14px 35px rgba(11,76,130,.08),0 2px 8px rgba(22,35,47,.03)}
.vp-contact-card:hover{transform:translateY(-3px)}
.vp-contact-card h3{margin-bottom:6px;font-size:18px}
.vp-contact-card p:last-child{overflow-wrap:anywhere}
.vp-contact-form-card{padding:clamp(28px,4vw,46px);border-radius:6px;box-shadow:0 18px 48px rgba(11,76,130,.11),0 3px 10px rgba(22,35,47,.04)}
.vp-contact-form-card .vp-eyebrow{margin-bottom:16px}
.vp-contact-form-card h3{margin-bottom:12px}
.vp-contact-form-intro{margin-bottom:30px}
.vp-contact-form-card form.vp-contact-form{margin-top:0}
.vp-contact-form-card form.vp-contact-form label{margin-bottom:20px!important}
.vp-contact-form-card form.vp-contact-form input,.vp-contact-form-card form.vp-contact-form textarea{min-height:48px!important;padding:13px 14px!important}
.vp-contact-form-card form.vp-contact-form textarea{min-height:142px!important}
.vp-contact-form-card form.vp-contact-form button{min-height:48px;margin-top:0!important;padding-inline:22px}
@media(max-width:850px){.vp-contact-intro{align-items:flex-start;flex-direction:column;gap:28px;margin-bottom:34px}.vp-contact-intro-note{max-width:none;width:100%;padding:15px 0 0 18px}.vp-contact-layout{gap:28px}.vp-contact-info{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vp-contact-card{display:block;padding:22px 18px}.vp-contact-card-icon{margin-bottom:15px}}
@media(max-width:640px){.vp-contact-intro-copy h2{font-size:clamp(2.35rem,12vw,3.6rem)}.vp-contact-intro-copy>p:last-child{font-size:14px}.vp-contact-info{grid-template-columns:1fr}.vp-contact-card{display:flex;padding:21px}.vp-contact-card-icon{margin-bottom:0}.vp-contact-form-card{padding:26px 20px}.vp-contact-form-card form.vp-contact-form .vp-form-row{grid-template-columns:1fr!important;gap:0!important}}


/* Dashboard page manager and consistent title capitalization. */
.vp-page-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.vp-page-manager-head h2{margin:0 0 5px}
.vp-page-manager-head p{max-width:650px;margin:0;color:#50575e}
.vp-page-manager-list{margin-top:18px;border-top:1px solid #dcdcde}
.vp-page-manager-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #dcdcde}
.vp-page-manager-row strong,.vp-page-manager-row span{display:block}
.vp-page-manager-row span{margin-top:3px;color:#646970;font-size:12px}
.vp-page-manager-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;white-space:nowrap}
.vp-page-manager-actions a{text-decoration:none}
.vp-page-manager-actions .vp-delete-link{color:#b32d2e}
.vp-page-manager .description{margin:16px 0 0}
.vp-page-manager-head .button{flex:0 0 auto}
.vp-page-hero h1,.vp-section h2,.vp-section h3,.vp-contact-intro-copy h2,.vp-contact-card h3,.vp-contact-form-card h3,.vp-band h2,.vp-detail-copy h2,.vp-brand-hero h2,.vp-tech-hero h2,.vp-head-cta,.vp-btn{text-transform:capitalize}
@media(max-width:640px){.vp-page-manager-head,.vp-page-manager-row{align-items:stretch;flex-direction:column}.vp-page-manager-actions{white-space:normal}.vp-page-manager-head .button{align-self:flex-start}}


/* Form submission feedback stays on the website instead of opening a mail client. */
.vp-form-notice{margin:0 0 24px;padding:14px 16px;border-left:3px solid;font-size:13px;line-height:1.6}
.vp-form-success{border-color:#218739;background:#eff9f0;color:#176629}
.vp-form-error{border-color:var(--vp-red);background:#fff4f4;color:#9f1d24}


/* About Us content entered in Pages > Edit is presented with the same readable theme rhythm. */
.vp-about-editable{max-width:900px;margin:0 auto}
.vp-about-editable>p:first-child{font-size:17px;line-height:1.85;color:var(--vp-ink)}
.vp-about-editable img{margin:28px 0}
.vp-about-editable a{color:var(--vp-blue);font-weight:700;text-decoration:underline;text-underline-offset:3px}
