:root{
  --midnight:#20265a;
  --navy:#0f3768;
  --navy-2:#005fae;
  --sapphire:#005fae;
  --cyan:#e4aa2f;
  --mint:#4df4d7;
  --gold:#e4aa2f;
  --champagne:#ffe7ad;
  --paper:#fffaf2;
  --ink:#152044;
  --muted:#65738a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden}
::selection{background:rgba(37,214,255,.28);color:#0f3768}
img{max-width:100%;height:auto}

.site-shell{position:relative;min-height:100vh;background:linear-gradient(180deg,#f8fbff 0%,#eef5ff 100%)}
.brand-gradient{background:radial-gradient(circle at 15% 12%,rgba(37,214,255,.20),transparent 28%),radial-gradient(circle at 88% 8%,rgba(214,169,67,.24),transparent 30%),linear-gradient(135deg,#031024 0%,#0f3768 48%,#082751 100%)}
.page-hero,.hero-bg{background-image:linear-gradient(105deg,rgba(3,16,36,.96),rgba(5,26,56,.88) 48%,rgba(6,26,56,.60)),url('city-globe-bg.webp');background-size:cover;background-position:center}
.mesh-bg{background:radial-gradient(circle at 12% 18%,rgba(37,214,255,.15),transparent 25%),radial-gradient(circle at 80% 8%,rgba(214,169,67,.18),transparent 24%),radial-gradient(circle at 50% 80%,rgba(23,105,255,.12),transparent 28%),linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%)}
.pattern-grid{background-image:linear-gradient(rgba(8,20,38,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(8,20,38,.055) 1px,transparent 1px);background-size:36px 36px}
.text-brand-gradient{background:linear-gradient(110deg,#ffffff 0%,#ffe7ad 34%,#ffe7ad 66%,#ffffff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.text-gold-gradient{background:linear-gradient(115deg,#fff1bd 0%,#e4aa2f 42%,#ffe7ad 72%,#bf8121 100%);-webkit-background-clip:text;background-clip:text;color:transparent}

.header-glass{background:rgba(4,16,36,.76);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.10)}
.header-glass:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(37,214,255,.65),rgba(214,169,67,.55),transparent)}
.nav-link{position:relative;color:rgba(255,255,255,.72);font-weight:750;font-size:.9rem;transition:color .22s ease}
.nav-link:hover,.nav-link.active{color:#fff}
.nav-link:after{content:"";position:absolute;left:50%;bottom:-10px;width:0;height:2px;border-radius:20px;background:linear-gradient(90deg,var(--cyan),var(--gold));transform:translateX(-50%);transition:width .26s ease}
.nav-link:hover:after,.nav-link.active:after{width:90%}

.glass-card{background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.16);box-shadow:0 30px 90px rgba(0,0,0,.28);backdrop-filter:blur(22px)}
.light-card{background:rgba(255,255,255,.86);border:1px solid rgba(11,43,90,.09);box-shadow:0 18px 55px rgba(8,20,38,.08);backdrop-filter:blur(16px)}
.soft-card{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border:1px solid rgba(11,43,90,.10);box-shadow:0 18px 48px rgba(8,20,38,.075)}

.btn-primary,.btn-secondary,.btn-dark{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;isolation:isolate;overflow:hidden;border-radius:999px;font-weight:900;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease,color .25s ease}
.btn-primary{color:white;background:linear-gradient(135deg,#005fae 0%,#006fbd 42%,#20d7ff 100%);box-shadow:0 20px 45px rgba(18,140,255,.28),inset 0 1px 0 rgba(255,255,255,.28)}
.btn-primary:before{content:"";position:absolute;inset:-2px;z-index:-1;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.36) 45%,transparent 58%);transform:translateX(-130%);transition:transform .65s ease}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 28px 60px rgba(18,140,255,.38)}
.btn-primary:hover:before{transform:translateX(130%)}
.btn-secondary{color:#fff;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.btn-secondary:hover{transform:translateY(-2px);background:rgba(255,255,255,.14);border-color:rgba(37,214,255,.38)}
.btn-dark{color:#0f3768;background:white;border:1px solid rgba(11,43,90,.10);box-shadow:0 16px 38px rgba(8,20,38,.10)}
.btn-dark:hover{transform:translateY(-2px);border-color:rgba(37,214,255,.45);box-shadow:0 22px 54px rgba(8,20,38,.15)}
.btn-gold-line{position:relative;display:inline-flex;align-items:center;gap:.45rem;color:#936514;font-weight:900}
.btn-gold-line:after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:2px;background:linear-gradient(90deg,#e4aa2f,#e4aa2f);transform:scaleX(.35);transform-origin:left;transition:transform .25s ease}
.btn-gold-line:hover:after{transform:scaleX(1)}

.kicker{display:inline-flex;align-items:center;gap:.6rem;border:1px solid rgba(37,214,255,.22);background:rgba(37,214,255,.08);color:#ffe7ad;border-radius:999px;padding:.55rem .85rem;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:900}
.kicker.light{border-color:rgba(23,105,255,.16);background:rgba(23,105,255,.07);color:#005fae}
.kicker .dot{width:.45rem;height:.45rem;border-radius:999px;background:linear-gradient(135deg,var(--cyan),var(--gold));box-shadow:0 0 0 8px rgba(37,214,255,.08)}

.service-card{position:relative;overflow:hidden;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)}
.service-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,60%) var(--my,0%),rgba(37,214,255,.15),transparent 32%);opacity:0;transition:opacity .28s ease;pointer-events:none}
.service-card:hover{transform:translateY(-8px);box-shadow:0 30px 80px rgba(8,20,38,.12);border-color:rgba(37,214,255,.32)}
.service-card:hover:before{opacity:1}
.icon-box{background:linear-gradient(145deg,#0f3768,#005fae);color:#7de8ff;border:1px solid rgba(37,214,255,.18);box-shadow:0 14px 28px rgba(6,26,56,.16),inset 0 1px 0 rgba(255,255,255,.16)}
.stat-card{background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.13);box-shadow:inset 0 1px 0 rgba(255,255,255,.10)}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .72s cubic-bezier(.2,.8,.2,1),transform .72s cubic-bezier(.2,.8,.2,1)}
.reveal.in-view{opacity:1;transform:translateY(0)}
.reveal[data-delay="1"]{transition-delay:.08s}.reveal[data-delay="2"]{transition-delay:.16s}.reveal[data-delay="3"]{transition-delay:.24s}.reveal[data-delay="4"]{transition-delay:.32s}
.float-slow{animation:floatSlow 7.5s ease-in-out infinite}.float-slow-2{animation:floatSlow 8.8s ease-in-out infinite reverse}.pulse-soft{animation:pulseSoft 3.5s ease-in-out infinite}.marquee-track{animation:marquee 28s linear infinite}.spin-slow{animation:spinSlow 24s linear infinite}.shimmer{background-size:240% 100%;animation:shimmer 6s ease-in-out infinite}
@keyframes floatSlow{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes pulseSoft{0%,100%{box-shadow:0 0 0 0 rgba(37,214,255,.35)}50%{box-shadow:0 0 0 14px rgba(37,214,255,0)}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes spinSlow{to{transform:rotate(360deg)}}
@keyframes shimmer{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

.form-field{width:100%;border-radius:1.25rem;border:1px solid rgba(11,43,90,.12);background:white;padding:1rem 1.1rem;color:#152044;transition:border-color .22s ease,box-shadow .22s ease}
.form-field:focus{outline:0;border-color:rgba(23,105,255,.42);box-shadow:0 0 0 5px rgba(23,105,255,.10)}
.footer-link{transition:color .22s ease,transform .22s ease}.footer-link:hover{color:#ffe7ad;transform:translateX(2px)}

@media (max-width:768px){.nav-link:after{display:none}.hero-bg{background-image:linear-gradient(180deg,rgba(3,16,36,.98),rgba(5,26,56,.88)),url('city-globe-bg.webp')}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* GSAP + premium UI upgrade */
.page-progress{position:fixed;left:0;top:0;height:3px;width:100%;z-index:9999;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#e4aa2f 0%,#005fae 52%,#ffe08a 100%);box-shadow:0 0 22px rgba(37,214,255,.55)}
.cursor-glow{position:fixed;left:0;top:0;z-index:9998;width:420px;height:420px;border-radius:999px;pointer-events:none;background:radial-gradient(circle,rgba(37,214,255,.12),rgba(37,214,255,.055) 35%,transparent 68%);filter:blur(2px);transform:translate3d(-50%,-50%,0);opacity:0;mix-blend-mode:screen}
.site-shell:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at var(--cursor-x,50%) var(--cursor-y,20%),rgba(37,214,255,.055),transparent 28%),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px}.site-shell>*{position:relative;z-index:1}
.header-glass{transition:background .25s ease,box-shadow .25s ease,border-color .25s ease,padding .25s ease}.header-glass.scrolled{background:rgba(3,14,31,.9);box-shadow:0 18px 55px rgba(0,0,0,.22);border-bottom-color:rgba(37,214,255,.18)}
.hero-bg,.page-hero{isolation:isolate}.hero-bg:after,.page-hero:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 34%,rgba(37,214,255,.055) 100%),radial-gradient(circle at 82% 18%,rgba(37,214,255,.12),transparent 24%),radial-gradient(circle at 12% 88%,rgba(214,169,67,.12),transparent 22%)}.hero-bg>*:not(.absolute),.page-hero>*:not(.absolute){position:relative;z-index:2}.hero-orbit-ring{animation:spinSlow 30s linear infinite;box-shadow:0 0 80px rgba(37,214,255,.08)}.hero-orbit-ring:before,.hero-orbit-ring:after{content:"";position:absolute;border-radius:999px;background:linear-gradient(135deg,#e4aa2f,#ffe7ad)}.hero-orbit-ring:before{width:12px;height:12px;right:22px;top:20px}.hero-orbit-ring:after{width:8px;height:8px;left:28px;bottom:22px}
.btn-primary,.btn-secondary,.btn-dark{will-change:transform}.btn-primary{border:1px solid rgba(158,238,255,.48);background:linear-gradient(135deg,#005fae 0%,#006fbd 48%,#e4aa2f 100%);box-shadow:0 14px 34px rgba(13,125,255,.26),0 4px 0 rgba(255,255,255,.08) inset,0 -18px 38px rgba(3,16,36,.16) inset}.btn-primary:after{content:"";position:absolute;inset:1px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.25),transparent 52%);pointer-events:none}.btn-primary:hover{box-shadow:0 26px 70px rgba(13,125,255,.34),0 0 0 6px rgba(37,214,255,.08),0 4px 0 rgba(255,255,255,.10) inset}.btn-secondary{background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.055));border-color:rgba(158,238,255,.22)}.btn-secondary:hover{border-color:rgba(158,238,255,.55);box-shadow:0 18px 44px rgba(37,214,255,.12)}.btn-dark{background:linear-gradient(180deg,#fff,#f3f8ff);box-shadow:0 14px 38px rgba(8,20,38,.105)}
.glass-card,.light-card,.soft-card,.service-card{will-change:transform;transform-style:preserve-3d}.glass-card{box-shadow:0 34px 100px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.18)}.light-card,.soft-card{box-shadow:0 22px 64px rgba(8,20,38,.09)}.service-card{border-color:rgba(11,43,90,.095);box-shadow:0 14px 44px rgba(8,20,38,.06)}.service-card:after{content:"";position:absolute;inset:1px;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(37,214,255,.18),transparent 30%,rgba(214,169,67,.12));opacity:.0;transition:opacity .28s ease}.service-card:hover:after{opacity:1}.icon-box{box-shadow:0 18px 38px rgba(6,26,56,.18),inset 0 1px 0 rgba(255,255,255,.20)}
.kicker{box-shadow:0 0 0 1px rgba(255,255,255,.04) inset}.kicker.light{box-shadow:0 14px 36px rgba(23,105,255,.06)}
.marquee-track{will-change:transform}.form-field:hover{border-color:rgba(23,105,255,.25)}
@media (hover:none),(pointer:coarse){.cursor-glow{display:none}.site-shell:before{background:none}}
@media (prefers-reduced-motion:reduce){.page-progress{display:none}.cursor-glow{display:none}.hero-orbit-ring{animation:none}}


/* Owner profile section */
.owner-section{background:radial-gradient(circle at 15% 20%,rgba(37,214,255,.13),transparent 28%),radial-gradient(circle at 88% 72%,rgba(214,169,67,.13),transparent 30%),linear-gradient(180deg,#f8fbff 0%,#eef6ff 100%)}
.owner-section:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(8,20,38,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(8,20,38,.045) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(180deg,transparent,black 16%,black 84%,transparent)}
.owner-photo-frame{min-height:620px;background:linear-gradient(145deg,rgba(6,26,56,.96),rgba(3,16,36,.86));box-shadow:0 36px 110px rgba(8,20,38,.22),inset 0 1px 0 rgba(255,255,255,.2)}
.owner-photo-bg{background:radial-gradient(circle at 72% 18%,rgba(37,214,255,.25),transparent 26%),radial-gradient(circle at 24% 70%,rgba(214,169,67,.22),transparent 30%)}
.owner-badge{will-change:transform}.owner-mini-card{background:linear-gradient(180deg,#fff 0%,#f6fbff 100%);border:1px solid rgba(11,43,90,.09);box-shadow:0 18px 44px rgba(8,20,38,.065);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.owner-mini-card:hover{transform:translateY(-5px);border-color:rgba(37,214,255,.35);box-shadow:0 26px 64px rgba(8,20,38,.10)}
.owner-quote{position:relative;overflow:hidden}.owner-quote:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,#e4aa2f,#e4aa2f)}
.signature-panel{position:relative;overflow:hidden}.signature-panel:before{content:"";position:absolute;right:-70px;top:-70px;width:180px;height:180px;border-radius:999px;background:rgba(37,214,255,.10)}
.signature-stroke{fill:none;stroke:#005fae;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 8px 12px rgba(8,20,38,.08))}.signature-stroke-2{stroke:#e4aa2f;stroke-width:5}
@media (max-width:768px){.owner-photo-frame{min-height:500px}.owner-badge{position:static!important;display:inline-flex;margin-top:.75rem;margin-right:.5rem}.signature-panel:before{display:none}}

/* Static image logo update */
.brand-logo-link{display:flex;align-items:center;justify-content:center;width:228px;height:58px;border-radius:1.15rem;background:rgba(255,255,255,.96);padding:.45rem .75rem;box-shadow:0 16px 38px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.85);ring:1px solid rgba(255,255,255,.18);transition:transform .22s ease,box-shadow .22s ease}
.brand-logo-link:hover{transform:translateY(-1px);box-shadow:0 20px 50px rgba(0,0,0,.28),0 0 0 4px rgba(37,214,255,.08)}
.brand-logo-img{display:block;width:100%;height:100%;object-fit:contain}
.footer-logo-card{display:inline-flex;align-items:center;justify-content:center;width:260px;max-width:100%;height:82px;border-radius:1.35rem;background:#fff;padding:.65rem .9rem;box-shadow:0 20px 45px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.9)}
.footer-logo-img{display:block;width:100%;height:100%;object-fit:contain}
.owner-photo-frame{height:620px;min-height:auto}
.owner-photo-img{height:100%;width:100%;object-fit:cover;object-position:center top}
@media (max-width:640px){.brand-logo-link{width:176px;height:50px;padding:.38rem .55rem}.owner-photo-frame{height:540px;min-height:auto}.footer-logo-card{width:225px;height:74px}}
.brand-logo-link{border:1px solid rgba(255,255,255,.18)}

/* Gallery and reviews upgrade */
.gallery-showcase,.reviews-strip,.gallery-page-section,.reviews-page-section{position:relative;isolation:isolate}
.gallery-card{position:relative;transform-style:preserve-3d;box-shadow:0 26px 80px rgba(8,20,38,.11);border:1px solid rgba(11,43,90,.08);background:#fff}
.gallery-card:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:inherit;background:linear-gradient(135deg,rgba(37,214,255,.22),transparent 32%,rgba(214,169,67,.16));opacity:0;transition:opacity .28s ease}.gallery-card:hover:before{opacity:1}
.gallery-card button{cursor:zoom-in}
.gallery-filter{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(11,43,90,.10);background:#fff;color:#152044;border-radius:999px;padding:.72rem 1rem;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;transition:transform .22s ease,background .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease}.gallery-filter:hover{transform:translateY(-2px);border-color:rgba(37,214,255,.35);box-shadow:0 12px 30px rgba(8,20,38,.08)}.gallery-filter.active{background:linear-gradient(135deg,#005fae,#006fbd 50%,#e4aa2f);border-color:rgba(37,214,255,.48);color:#fff;box-shadow:0 14px 34px rgba(13,125,255,.22)}
.review-card{position:relative;overflow:hidden;transform-style:preserve-3d}.review-card:before{content:"";position:absolute;right:-90px;top:-90px;width:190px;height:190px;border-radius:999px;background:rgba(37,214,255,.09);pointer-events:none}.review-card:after{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:linear-gradient(90deg,#e4aa2f,#e4aa2f);opacity:.86}
.igs-stars{display:inline-flex;gap:.12rem;color:rgba(214,169,67,.28);font-size:1.15rem;line-height:1}.igs-stars .is-active{color:#e4aa2f;text-shadow:0 8px 24px rgba(214,169,67,.22)}
.igs-lightbox{opacity:0}.igs-lightbox:not(.hidden){display:flex}.igs-lightbox img{display:block;max-width:100%;object-fit:contain}.igs-lightbox-close{transition:transform .2s ease,background .2s ease}.igs-lightbox-close:hover{transform:translateY(-2px);background:rgba(255,255,255,.18)}
@media (max-width:768px){.gallery-filter{font-size:.7rem;padding:.62rem .82rem}}

/* Equal-size gallery display */
.home-gallery-grid{align-items:stretch}
.home-gallery-card{height:100%}
.home-gallery-card>button{aspect-ratio:4/3;height:auto;min-height:0}
.gallery-page-section .gallery-card button{aspect-ratio:4/3}
.gallery-page-section .gallery-card img,.home-gallery-card img{width:100%;height:100%;object-fit:cover}


/* Client polish update v1.1.6 */
.hero-bg:after,.page-hero:after{display:none!important;content:none!important}.hero-bg{background-image:linear-gradient(90deg,rgba(6,47,88,.92),rgba(0,95,174,.70)),url('brand-banner.jpg')!important}.page-hero{background-image:linear-gradient(90deg,rgba(0,95,174,.86),rgba(32,38,90,.72)),url('hero-banner.webp')!important}.home-section-heading{max-width:820px;margin:0 auto 3rem;text-align:center}.home-section-heading .kicker{margin-inline:auto}.home-section-heading h2{color:#005fae}.home-section-heading p{color:#475569}.hero-bg>.absolute,.page-hero>.absolute{display:none!important}.hero-bg p,.page-hero p{color:rgba(255,255,255,.92)!important}@media(max-width:768px){.hero-bg{background-image:linear-gradient(180deg,rgba(6,47,88,.94),rgba(0,95,174,.78)),url('brand-banner.jpg')!important}.page-hero{background-image:linear-gradient(180deg,rgba(0,95,174,.88),rgba(32,38,90,.74)),url('hero-banner.webp')!important}}


/* Cohesive Foundation/Academy inspired polish v1.1.7 */
:root{
  --iu-blue:#005fae;
  --iu-deep:#20265a;
  --iu-gold:#e4aa2f;
  --iu-cream:#fff8ec;
  --iu-sky:#eef7ff;
  --iu-ink:#142044;
  --iu-muted:#56657a;
}
body{background:#fff;color:var(--iu-ink)}
.site-shell{background:#fff}.site-shell:before{opacity:.32}.cursor-glow{background:radial-gradient(circle,rgba(0,95,174,.10),rgba(0,95,174,.04) 36%,transparent 68%)}

/* Clean white header like the existing IU sites */
.header-glass{background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(15,55,104,.10)!important;box-shadow:0 10px 30px rgba(20,32,68,.07)!important;backdrop-filter:blur(16px)}
.header-glass:before{display:none!important}.header-glass.scrolled{background:rgba(255,255,255,.985)!important;box-shadow:0 16px 42px rgba(20,32,68,.11)!important;border-bottom-color:rgba(0,95,174,.14)!important}
.nav-link{color:#172554!important}.nav-link:hover,.nav-link.active{color:var(--iu-blue)!important}.nav-link:after{background:linear-gradient(90deg,var(--iu-blue),var(--iu-gold))}
.brand-logo-link{background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;width:260px;height:56px}.brand-logo-link:hover{transform:none!important;box-shadow:none!important}.brand-logo-img{object-position:left center}
.header-glass .btn-secondary{color:var(--iu-blue)!important;background:#fff!important;border:1px solid rgba(0,95,174,.26)!important;box-shadow:none!important}.header-glass .btn-secondary:hover{background:#eef7ff!important;color:var(--iu-deep)!important;border-color:rgba(0,95,174,.42)!important}.header-glass [data-menu-button]{color:var(--iu-blue)!important;border-color:rgba(0,95,174,.22)!important;background:#f8fbff!important}.header-glass [data-mobile-menu]{background:#fff!important;border-top-color:rgba(0,95,174,.10)!important;box-shadow:0 24px 44px rgba(20,32,68,.10)}.header-glass [data-mobile-menu] a:not(.btn-primary){color:#172554!important}.header-glass [data-mobile-menu] a:not(.btn-primary):hover{background:#eef7ff!important;color:var(--iu-blue)!important}

/* Home hero: no background image, readable light solid gradient */
.hero-bg{background:linear-gradient(135deg,#fffaf2 0%,#eef7ff 46%,#e7f2ff 100%)!important;color:var(--iu-ink)!important}.hero-bg h1{color:var(--iu-ink)!important}.hero-bg p{color:#4b5d73!important}.hero-bg .text-brand-gradient{background:linear-gradient(110deg,var(--iu-blue) 0%,#0b7fd5 45%,var(--iu-gold) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-bg .kicker{border-color:rgba(0,95,174,.18);background:#fff;color:var(--iu-blue);box-shadow:0 12px 28px rgba(20,32,68,.06)}.hero-bg .stat-card{background:#fff!important;border:1px solid rgba(0,95,174,.10)!important;box-shadow:0 16px 38px rgba(20,32,68,.07)!important}.hero-bg .stat-card p:first-child{color:var(--iu-blue)!important}.hero-bg .stat-card p:last-child{color:#64748b!important}.hero-bg .glass-card{background:#fff!important;border:1px solid rgba(0,95,174,.10)!important;box-shadow:0 22px 60px rgba(20,32,68,.12)!important}.hero-bg .absolute{display:block!important;opacity:.8}.hero-bg>.absolute:first-child{background:rgba(228,170,47,.18)!important}.hero-bg>.absolute:nth-child(2){background:rgba(0,95,174,.10)!important}.hero-bg [class*="bg-[#20265a]"]{background:rgba(255,255,255,.94)!important;border:1px solid rgba(0,95,174,.10)!important;color:var(--iu-ink)!important}.hero-bg [class*="bg-[#20265a]"] p{color:#64748b!important}.hero-bg [class*="bg-[#20265a]"] .text-\[\#ffe7ad\]{color:var(--iu-blue)!important}.hero-bg [class*="bg-[#20265a]"] span{color:var(--iu-blue)!important}

/* Inner page headers: no image, no ugly fade */
.page-hero{background:linear-gradient(135deg,#005fae 0%,#0f3768 58%,#20265a 100%)!important;color:#fff!important}.page-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 16%,rgba(255,255,255,.13),transparent 24%),radial-gradient(circle at 82% 70%,rgba(228,170,47,.17),transparent 30%)}.page-hero h1,.page-hero h2{color:#fff!important}.page-hero p{color:rgba(255,255,255,.86)!important}.page-hero .kicker{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.22);color:#fff}.hero-bg:after,.page-hero:after{display:none!important;content:none!important}.hero-bg img,.page-hero img{background:transparent}

/* Buttons: professional blue/gold, cleaner hover */
.btn-primary{background:var(--iu-blue)!important;color:#fff!important;border:1px solid rgba(0,95,174,.15)!important;box-shadow:0 12px 26px rgba(0,95,174,.22)!important}.btn-primary:hover{background:#004f98!important;box-shadow:0 18px 38px rgba(0,95,174,.28)!important;transform:translateY(-2px)}.btn-primary:after{display:none}.btn-secondary{background:rgba(255,255,255,.10)!important;color:#fff!important;border:1px solid rgba(255,255,255,.24)!important}.btn-secondary:hover{background:rgba(255,255,255,.18)!important;border-color:rgba(255,255,255,.42)!important}.btn-dark{background:#fff!important;color:var(--iu-blue)!important;border:1px solid rgba(0,95,174,.22)!important;box-shadow:0 10px 24px rgba(20,32,68,.08)!important}.btn-dark:hover{background:#eef7ff!important;border-color:rgba(0,95,174,.42)!important;color:var(--iu-deep)!important}.btn-gold-line{color:var(--iu-blue)!important}.btn-gold-line:after{background:var(--iu-gold)}

/* Section backgrounds and readability */
.mesh-bg{background:linear-gradient(180deg,#fff 0%,#f5faff 100%)!important}.owner-section{background:linear-gradient(180deg,#fffaf2 0%,#f6fbff 100%)!important}.brand-gradient{background:linear-gradient(135deg,#005fae 0%,#0f3768 54%,#20265a 100%)!important}.icon-box{background:var(--iu-blue)!important;color:#fff!important}.kicker.light{background:#eef7ff!important;border-color:rgba(0,95,174,.14)!important;color:var(--iu-blue)!important}.home-section-heading h2{color:var(--iu-blue)!important}.home-section-heading p{color:#53657b!important}.soft-card,.light-card,.service-card{background:#fff!important;border-color:rgba(0,95,174,.10)!important;box-shadow:0 16px 40px rgba(20,32,68,.07)!important}.service-card:hover,.gallery-card:hover,.review-card:hover{border-color:rgba(228,170,47,.42)!important;box-shadow:0 26px 64px rgba(20,32,68,.12)!important}

/* Reviews section fixed: light background + dark readable cards */
.reviews-strip{background:linear-gradient(180deg,#fffaf2 0%,#ffffff 100%)!important;color:var(--iu-ink)!important}.reviews-strip:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 8% 18%,rgba(228,170,47,.11),transparent 24%),radial-gradient(circle at 92% 80%,rgba(0,95,174,.08),transparent 26%)}.reviews-strip .review-card{background:#fff!important;color:var(--iu-ink)!important;border:1px solid rgba(0,95,174,.10)!important;box-shadow:0 18px 44px rgba(20,32,68,.08)!important}.reviews-strip .review-card blockquote{color:#334155!important}.reviews-strip .review-card h3{color:var(--iu-ink)!important}.reviews-strip .review-card p{color:#64748b!important}.reviews-strip .review-card [class*="text-[#ffe7ad]"],.reviews-strip .review-card [class*="text-white"]{color:var(--iu-ink)!important}.review-card:after{background:linear-gradient(90deg,var(--iu-blue),var(--iu-gold))}.igs-stars .is-active{color:var(--iu-gold)!important}.igs-stars{color:rgba(228,170,47,.28)!important}

/* Footer logo should not sit inside an ugly white box */
.footer-logo-card{background:transparent!important;box-shadow:none!important;border-radius:0!important;padding:0!important;width:285px;height:72px;justify-content:flex-start}.footer-logo-img{object-position:left center}.footer-link:hover{color:#ffe7ad}

/* Floating contact widget */
.igs-chat-widget{display:flex;flex-direction:column;align-items:flex-end;gap:.85rem}.igs-chat-toggle{position:relative;display:flex;height:64px;width:64px;align-items:center;justify-content:center;border:0;border-radius:999px;background:var(--iu-blue);color:#fff;box-shadow:0 18px 44px rgba(0,95,174,.34);cursor:pointer;transition:transform .22s ease,background .22s ease,box-shadow .22s ease}.igs-chat-toggle:hover{background:#004f98;transform:translateY(-3px);box-shadow:0 24px 58px rgba(0,95,174,.42)}.igs-chat-toggle svg{height:29px;width:29px;position:relative;z-index:2}.igs-chat-close{display:none}.igs-chat-widget.is-open .igs-chat-open{display:none}.igs-chat-widget.is-open .igs-chat-close{display:block}.igs-chat-pulse{position:absolute;inset:-8px;border-radius:999px;background:rgba(0,95,174,.18);animation:igsPulse 2.1s ease-out infinite}.igs-chat-panel{width:300px;border-radius:1.6rem;background:#fff;padding:.75rem;box-shadow:0 24px 70px rgba(20,32,68,.22);border:1px solid rgba(0,95,174,.10);transform-origin:bottom right}.igs-chat-option{display:flex;align-items:center;gap:.85rem;border-radius:1.15rem;padding:.78rem;text-decoration:none;color:var(--iu-ink);transition:background .18s ease,transform .18s ease}.igs-chat-option:hover{background:#f3f8ff;transform:translateX(-3px)}.igs-chat-option-icon{display:flex;height:42px;width:42px;align-items:center;justify-content:center;border-radius:1rem;color:#fff;flex:0 0 auto}.igs-chat-option-icon svg{height:23px;width:23px}.igs-chat-option strong{display:block;font-size:.9rem;color:var(--iu-ink)}.igs-chat-option small{display:block;margin-top:.15rem;font-size:.74rem;color:#64748b;line-height:1.2}.igs-chat-option.whatsapp .igs-chat-option-icon{background:#22c55e}.igs-chat-option.messenger .igs-chat-option-icon{background:#0084ff}.igs-chat-option.call .igs-chat-option-icon{background:var(--iu-blue)}.igs-chat-option.email .igs-chat-option-icon{background:var(--iu-gold)}@keyframes igsPulse{0%{transform:scale(.72);opacity:.9}100%{transform:scale(1.2);opacity:0}}
@media(max-width:768px){.brand-logo-link{width:210px;height:50px}.hero-bg{background:linear-gradient(160deg,#fffaf2 0%,#eef7ff 100%)!important}.page-hero{background:linear-gradient(150deg,#005fae 0%,#20265a 100%)!important}.igs-chat-panel{width:min(300px,calc(100vw - 2rem))}.igs-chat-toggle{height:58px;width:58px}.footer-logo-card{width:240px;height:64px}}
@media(prefers-reduced-motion:reduce){.igs-chat-pulse{animation:none!important}}
.hero-bg .btn-secondary{background:#fff!important;color:var(--iu-blue)!important;border:1px solid rgba(0,95,174,.24)!important;box-shadow:0 10px 24px rgba(20,32,68,.06)!important}.hero-bg .btn-secondary:hover{background:#eef7ff!important;color:var(--iu-deep)!important;border-color:rgba(0,95,174,.42)!important}


/* v1.1.9 readability and active-menu fixes */
.brand-gradient h1,.brand-gradient h2,.brand-gradient h3,
.brand-gradient .fast-route-title{color:#fff!important}
.brand-gradient p,.brand-gradient .fast-route-copy{color:rgba(255,255,255,.94)!important}
.reviews-page-section .review-service-badge,
.reviews-page-section .review-card .review-service-badge,
.review-card .review-service-badge{color:#fff!important;background:#20265a!important}
.reviews-page-section .review-card [class*="bg-[#20265a]"]{color:#fff!important}
.nav-link.active,.igs-menu-parent.is-active>.nav-link{color:var(--iu-blue)!important;font-weight:900}
.igs-mobile-link.is-active{background:#eef7ff!important;color:var(--iu-blue)!important;font-weight:900}


/* v1.2.0 final readability and page-width alignment fixes */
.igs-page-container{
  width:100%;
  max-width:80rem;
  margin-left:auto;
  margin-right:auto;
  padding-left:1rem;
  padding-right:1rem;
}
@media (min-width:640px){.igs-page-container{padding-left:1.5rem;padding-right:1.5rem}}
@media (min-width:1024px){.igs-page-container{padding-left:2rem;padding-right:2rem}}
.page-hero > .igs-page-container,
.page-hero > .mx-auto.max-w-7xl,
.hero-bg > .igs-page-container{
  max-width:80rem!important;
}
.page-hero,
.hero-bg{
  background-image:none!important;
  background-repeat:no-repeat!important;
}
.hero-bg{
  background:linear-gradient(135deg,#fffaf2 0%,#eef7ff 48%,#e7f2ff 100%)!important;
}
.page-hero{
  background:linear-gradient(135deg,#005fae 0%,#0f3768 56%,#20265a 100%)!important;
}
.fast-route-panel,
.fast-route-panel h1,
.fast-route-panel h2,
.fast-route-panel h3,
.fast-route-panel p,
.fast-route-panel .fast-route-title,
.fast-route-panel .fast-route-copy,
.brand-gradient.fast-route-panel p,
.brand-gradient.fast-route-panel h3{
  color:#ffffff!important;
}
.fast-route-panel .btn-secondary{
  color:#ffffff!important;
  border-color:rgba(255,255,255,.36)!important;
}
.page-hero p,
.page-hero .text-white\/72,
.page-hero .text-white\/68{
  color:rgba(255,255,255,.88)!important;
}
