/* =====================================================================
   IIVVA. Cayman Islands digital agency
   UI/design system modelled on the onehealth.ky layout, re-branded to
   the IIVVA red (#E81317). Fonts: Roboto (body) + Fraunces (accent).
   Lightweight: SVG + CSS only, no heavy imagery.
   ===================================================================== */

:root{
  --red:       #E81317;   /* IIVVA brand red (sampled from logo) */
  --red-dark:  #B00E12;
  --red-deep:  #7C090D;
  --ink:       #141416;
  --white:     #FFFFFF;
  --darkgrey:  #3B3C3D;
  --lightgrey: #E8EAF0;
  --cement:    #BCBEC2;
  --black:     #1F1E1E;
  --container: 1200px;
}

/* ---------- reset ---------- */
*{margin:0;padding:0;box-sizing:border-box;}
*::before,*::after{box-sizing:border-box;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
ol,ul{list-style:none;}
html{margin:0 !important;scroll-behavior:smooth;}
html,body{max-width:100%;}
img{max-width:100%;height:auto;}
a,a:hover{text-decoration:none;outline:0;color:initial;}
h1,h2,h3,h4,h5,h6,p,ul,ol,figure{margin-bottom:0;}
button:focus,input:focus,.btn:focus{outline:none;box-shadow:none;}
button{-webkit-appearance:none;appearance:none;}
body{font-family:'Sora',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:16px;width:100% !important;color:var(--darkgrey);background:var(--white);}
.container{max-width:var(--container);}
.wrapper{width:100%;overflow:hidden;}
.cursor_pointer{cursor:pointer;}
.overflow{overflow:hidden;}
.h_100vh{min-height:100vh;flex-direction:column;display:flex;justify-content:center;}

/* ---------- typography scale (mirrors onehealth) ---------- */
h1,.fnt72{font-size:72px;line-height:79px;font-weight:300;color:var(--white);}
h2,.fnt56{font-size:56px;line-height:61px;font-weight:300;color:var(--red);}
h3,.fnt32{font-size:32px;line-height:38px;font-weight:400;color:var(--white);}
h4,.fnt24{font-size:24px;line-height:29px;font-weight:400;color:var(--darkgrey);}
h5,.fnt20{font-size:20px;line-height:28px;font-weight:300;color:var(--lightgrey);}
.fnt80{font-size:80px;line-height:88px;font-weight:300;color:var(--red);}
p{font-size:16px;line-height:22px;font-weight:400;color:var(--darkgrey);}
.p_sec{font-size:14px;line-height:20px;font-weight:400;color:var(--darkgrey);}

.fnt300{font-weight:300 !important;}
.fnt400{font-weight:400 !important;}
.fnt500{font-weight:500 !important;}
.fnt700{font-weight:700 !important;}

.txt_black{color:var(--black) !important;}
.txt_white{color:var(--white) !important;}
.txt_red{color:var(--red) !important;}
.text_cement{color:var(--cement) !important;}
.txt_darkgrey{color:var(--darkgrey) !important;}
.txt_grey{color:var(--lightgrey) !important;}

.bg_red{background:var(--red) !important;}
.bg_white{background:var(--white) !important;}
.font_inria{font-family:'Fraunces',serif;}

/* accent word treatment used across sections (onehealth italic-serif span) */
.home_ban_vedio span,.our_primary span,.we_offer span,.brand_banner span,
.integrate span,.request_today span,.page_ban span,.section_intro span,
.pillars span,.approach span,.contact_through span,.about_intro span,
.faq_sec span,.results span{font-weight:700;font-family:'Fraunces',serif;font-style:italic;}

/* ---------- buttons ---------- */
.btn_white{border-radius:32px;border:1px solid var(--white);padding:16px 24px;font-size:16px;font-weight:500;line-height:22px;color:var(--white);display:inline-block;transition:.3s ease;}
.btn_red{border-radius:32px;border:1px solid var(--red);padding:16px 24px;font-size:16px;font-weight:500;line-height:22px;color:var(--red);display:inline-block;transition:.3s ease;background:transparent;}
.btn_white:hover{color:var(--white);background-color:var(--red);border-color:var(--red);}
.btn_red:hover{color:var(--white);background-color:var(--red);}
.btn_red1{border-radius:32px;border:1px solid var(--red);padding:16px 48px;font-size:16px;font-weight:700;line-height:22px;color:var(--white);background:var(--red) !important;display:inline-block;transition:.3s ease;}
.btn_red1:hover{background:var(--red-dark) !important;border-color:var(--red-dark);}

/* animated scroll arrow */
.animated-img{animation:upAndDown 2s ease infinite;width:46px;height:46px;}
@keyframes upAndDown{0%,100%{transform:translateY(0);}50%{transform:translateY(-24px);}}

/* ---------- header ---------- */
header{position:fixed;left:0;right:0;top:0;width:100%;background:rgba(0,0,0,.32);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:1000000;transition:top .5s;}
header .navbar-expand-lg{height:80px;}
header .navbar-brand img{height:44px;}
header .navbar-light .navbar-nav .nav-link{font-size:16px;font-weight:500;line-height:23px;color:var(--white);padding:0 16px;position:relative;transition:color .2s;}
header .navbar-light .navbar-nav .nav-link:hover,
header .navbar-light .navbar-nav .nav-link:focus{color:var(--white);opacity:.85;}
header .navbar-light .navbar-nav .nav-link.active{color:var(--white);}
header .navbar-nav li a.active::before{content:"";position:absolute;top:26px;left:43%;width:13px;height:3px;background-color:var(--red);}
header .navbar-toggler{border:0;}
header .navbar-toggler:focus{box-shadow:none;}
header .navbar-toggler .close_menu{display:none;}
header .nav_cta{margin-left:12px;}
header.hidden{transform:translateY(-100%);transition:.4s ease-in-out;}

/* ---------- footer ---------- */
footer{background:var(--red) !important;padding:80px 0;}
footer a{color:var(--white);}
footer img{height:56px;}
footer .foot_tag{max-width:300px;}
footer .mx_150{max-width:190px;}
footer .col-md-6 .row p{margin-bottom:12px;}
footer .privacy-links a:hover,footer .footlinks a:hover{opacity:.8;}

/* =====================================================================
   HOME
   ===================================================================== */

/* hero video banner (animated brand gradient fallback + drop-in video) */
.home_ban_vedio{position:relative;height:100vh;min-height:640px;overflow:hidden;background:var(--ink);}
.home_ban_vedio .hero_bg{position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(60% 55% at 18% 22%, rgba(232,19,23,.85) 0%, rgba(232,19,23,0) 60%),
    radial-gradient(55% 50% at 82% 30%, rgba(176,14,18,.9) 0%, rgba(176,14,18,0) 62%),
    radial-gradient(70% 60% at 60% 92%, rgba(124,9,13,.95) 0%, rgba(124,9,13,0) 60%),
    linear-gradient(120deg,#2a0709 0%,#7c090d 45%,#e81317 100%);
  background-size:200% 200%,200% 200%,200% 200%,180% 180%;
  animation:heroShift 18s ease-in-out infinite;}
@keyframes heroShift{
  0%{background-position:0% 0%,100% 0%,50% 100%,0% 50%;}
  50%{background-position:100% 60%,0% 40%,60% 0%,100% 50%;}
  100%{background-position:0% 0%,100% 0%,50% 100%,0% 50%;}
}
.home_ban_vedio .hero_grid{position:absolute;inset:0;z-index:1;opacity:.18;
  background-image:linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(circle at 50% 40%,#000 20%,transparent 78%);
  -webkit-mask-image:radial-gradient(circle at 50% 40%,#000 20%,transparent 78%);}
.home_ban_vedio video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2;}
.home_ban_vedio .hero_scrim{position:absolute;inset:0;z-index:3;background:linear-gradient(90deg,rgba(10,4,5,.72) 0%,rgba(10,4,5,.30) 55%,rgba(10,4,5,.12) 100%),linear-gradient(180deg,rgba(10,4,5,.28),rgba(10,4,5,.55));}
.home_ban_vedio .container{position:relative;z-index:4;height:100%;}
.home_ban_vedio .banner_content{position:absolute;top:26%;}
.home_ban_vedio h1{max-width:720px;}
.home_ban_vedio h5{max-width:520px;color:var(--lightgrey);}
.home_ban_vedio a.scroll_cue img{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:5;width:46px;height:46px;}

/* our one goal + rotating words */
.our_primary{padding:140px 0;text-align:center;}
.our_primary h2.lead_ttl{font-size:80px;line-height:88px;font-weight:300;color:var(--red);}
.our_primary h4{max-width:820px;margin:0 auto;}
.rotator{height:96px;overflow:hidden;position:relative;margin:6px 0 26px;}
.rotator__item{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-family:'Fraunces',serif;font-weight:700;font-style:italic;font-size:80px;line-height:88px;color:var(--red);
  opacity:0;transform:translateY(60%);transition:opacity .6s ease,transform .6s cubic-bezier(.22,1,.36,1);}
.rotator__item.is-active{opacity:1;transform:translateY(0);}
.rotator__item.is-leaving{opacity:0;transform:translateY(-60%);}

/* what we offer: 4 frosted cards on brand gradient */
.we_offer{position:relative;padding:107px 0;
  background:linear-gradient(135deg,var(--red-deep) 0%,var(--red) 55%,var(--red-dark) 100%);}
.we_offer::before{content:"";position:absolute;inset:0;opacity:.16;
  background-image:radial-gradient(rgba(255,255,255,.6) 1.5px,transparent 1.5px);background-size:28px 28px;}
.we_offer .container{position:relative;z-index:1;}
.we_offer h5{max-width:680px;margin:0 auto;color:var(--white);}
.we_offer .card{border-radius:12px;background:rgba(255,255,255,.90);padding:24px 20px 40px;margin:0 12px;border:0;height:100%;
  transition:transform .3s ease,box-shadow .3s ease;}
.we_offer .card:hover{transform:translateY(-6px);box-shadow:0 22px 40px -18px rgba(0,0,0,.45);}
.we_offer .col-md-3{max-width:280px;}
.we_offer .card h4{color:var(--red);max-width:200px;}
.we_offer .card p{min-height:96px;}
.we_offer .card .divider{width:56px;margin:14px 0;}

/* brand banner (solid red statement) */
.brand_banner{position:relative;padding:150px 0;
  background:linear-gradient(120deg,var(--red) 0%,var(--red-dark) 100%);}
.brand_banner h2{max-width:760px;color:var(--white);}
.brand_banner::after{content:"";position:absolute;top:34px;right:70px;width:220px;height:220px;background-repeat:no-repeat;background-size:contain;opacity:.9;
  background-image:url(../img/emblem-outline.svg);}

/* integrated / benefits auto-cycling slider */
.integrate{padding:140px 0 0;}
.integrate h2{}
.integrate .lead_copy{max-width:520px;}
.benefit_list{position:relative;}
.benefit{position:relative;padding:0 0 0 44px;margin-bottom:26px;transition:.4s ease;border:1px solid transparent;border-radius:12px;}
.benefit h5{color:var(--black);font-weight:400;margin:0;transition:.3s ease;}
.benefit p{color:var(--darkgrey);max-height:0;overflow:hidden;opacity:0;transition:max-height .45s ease,opacity .35s ease,margin .35s ease;margin-top:0;}
.benefit .tick{position:absolute;left:0;top:2px;width:30px;height:30px;background-repeat:no-repeat;background-size:contain;background-image:url(../img/check-outline.svg);}
.benefit.is-active{border-color:var(--red);background:var(--white);padding:22px 22px 22px 64px;box-shadow:0 20px 44px -24px rgba(232,19,23,.45);}
.benefit.is-active .tick{left:22px;top:24px;background-image:url(../img/check-fill.svg);}
.benefit.is-active p{max-height:140px;opacity:1;margin-top:12px;}

/* request a quote CTA */
.request_today{padding:120px 0 80px;}
.request_today h2{color:var(--red);}
.request_today .cta_art{width:100%;}

/* =====================================================================
   INTERIOR / SHARED PAGE SECTIONS
   ===================================================================== */

/* interior page banner (no video) */
.page_ban{position:relative;min-height:70vh;display:flex;align-items:center;overflow:hidden;background:var(--ink);}
.page_ban .hero_bg{position:absolute;inset:0;z-index:0;
  background:radial-gradient(60% 60% at 20% 25%,rgba(232,19,23,.8),rgba(232,19,23,0) 60%),
             radial-gradient(60% 60% at 85% 80%,rgba(124,9,13,.95),rgba(124,9,13,0) 60%),
             linear-gradient(120deg,#2a0709,#7c090d 55%,#e81317);
  background-size:180% 180%;animation:heroShift 18s ease-in-out infinite;}
.page_ban .hero_grid{position:absolute;inset:0;z-index:1;opacity:.15;
  background-image:linear-gradient(rgba(255,255,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.35) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(circle at 50% 50%,#000 10%,transparent 75%);-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 10%,transparent 75%);}
.page_ban .hero_scrim{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(10,4,5,.7),rgba(10,4,5,.2));}
.page_ban .container{position:relative;z-index:3;padding-top:80px;}
.page_ban h1{max-width:760px;}
.page_ban h5{max-width:560px;color:var(--lightgrey);margin-top:18px;}

/* generic intro statement */
.section_intro{padding:120px 0;text-align:center;}
.section_intro h2{max-width:900px;margin:0 auto;}
.section_intro h5{max-width:760px;margin:22px auto 0;color:var(--darkgrey);}

/* three pillars / service cards */
.pillars{padding:120px 0;background:#F7F8FA;}
.pillar{background:var(--white);border-radius:16px;padding:36px 32px;height:100%;border:1px solid #ECEEF2;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;}
.pillar:hover{transform:translateY(-6px);box-shadow:0 26px 50px -26px rgba(0,0,0,.25);border-color:var(--red);}
.pillar .pnum{font-family:'Fraunces',serif;font-weight:700;font-style:italic;font-size:22px;color:var(--red);}
.pillar h3{color:var(--black);font-weight:500;margin:6px 0 14px;font-size:26px;line-height:32px;}
.pillar > p{color:var(--darkgrey);margin-bottom:20px;}
.cap_list li{position:relative;padding:9px 0 9px 30px;border-top:1px solid #EEF0F4;color:var(--darkgrey);font-size:15px;}
.cap_list li:first-child{border-top:0;}
.cap_list li::before{content:"";position:absolute;left:0;top:14px;width:16px;height:16px;background:url(../img/check-fill.svg) center/contain no-repeat;}

/* approach / process steps */
.approach{padding:120px 0;}
.step_card{background:var(--white);border:1px solid #ECEEF2;border-radius:16px;padding:30px 26px;height:100%;transition:transform .3s ease,border-color .3s ease;}
.step_card:hover{transform:translateY(-6px);border-color:var(--red);}
.step_card .snum{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--red),var(--red-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;font-family:'Fraunces',serif;font-style:italic;}
.step_card h4{color:var(--black);margin:18px 0 8px;font-weight:500;}
.step_card p{color:var(--darkgrey);font-size:15px;}

/* results / stats band */
.results{padding:90px 0;background:linear-gradient(120deg,var(--red) 0%,var(--red-dark) 100%);}
.stat{text-align:center;padding:12px;}
.stat .num{font-size:64px;line-height:1;font-weight:700;color:var(--white);font-family:'Fraunces',serif;}
.stat p{color:rgba(255,255,255,.85);margin-top:12px;}

/* FAQ accordion */
.faq_sec{padding:100px 0;}
.faq_sec .accordion-item{border:0;border-bottom:1px solid var(--cement) !important;background:transparent;}
.faq_sec .accordion-button{padding:25px 0;font-size:20px;font-weight:400;color:var(--black);line-height:28px;background:transparent;box-shadow:none;}
.faq_sec .accordion-button:not(.collapsed){background:transparent;color:var(--red);box-shadow:none;}
.faq_sec .accordion-button:focus{box-shadow:none;}
.faq_sec .accordion-button::after{width:34px;height:34px;background-size:contain;background-image:url(../img/chevron-red.svg);}
.faq_sec .accordion-body{padding:0 0 24px;color:var(--darkgrey);max-width:80ch;}
.faq_sec .accordion-item:last-child{border-bottom:0 !important;}

/* =====================================================================
   CONTACT
   ===================================================================== */
.contact_through{padding:109px 0;}
.contact_through .bdr-right{border-right:2px solid var(--cement);}
.contact_through .icon_circ{width:88px;height:88px;border-radius:50%;background:rgba(232,19,23,.08);display:flex;align-items:center;justify-content:center;margin:0 auto;}
.contact_through .icon_circ img{width:40px;height:40px;}
.contact_through .call-mail{color:var(--red);font-size:32px;font-weight:400;line-height:120%;}
.contact_through .speak-with{color:var(--darkgrey);max-width:420px;margin:0 auto;}

.contact_form_sec{padding:0 0 120px;}
.contact_card{background:#F7F8FA;border:1px solid #ECEEF2;border-radius:20px;padding:clamp(28px,4vw,52px);}
.contact_card .field{margin-bottom:20px;}
.contact_card label{font-size:14px;font-weight:500;color:var(--darkgrey);margin-bottom:8px;display:block;}
.contact_card .form-control,.contact_card .form-select{border:1px solid #DDE1E8;border-radius:12px;padding:14px 16px;font-size:16px;background:var(--white);color:var(--black);width:100%;}
.contact_card .form-control:focus,.contact_card .form-select:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(232,19,23,.12);outline:none;}
.contact_card textarea.form-control{min-height:150px;resize:vertical;}
.form_status{min-height:1.3em;margin-top:10px;font-size:15px;color:var(--red);font-weight:500;}
.map_box{border-radius:20px;overflow:hidden;min-height:340px;height:100%;border:1px solid #ECEEF2;}
.map_box iframe{width:100%;height:100%;min-height:340px;border:0;display:block;}

/* =====================================================================
   RESPONSIVE (mirrors onehealth breakpoints)
   ===================================================================== */
@media only screen and (max-width:991px){
  header .navbar-collapse{background:var(--white);position:fixed;right:-100%;top:0;width:100%;height:100vh;overflow-y:auto;transition:right .5s ease-in-out;padding:100px 30px 40px;}
  header .navbar-collapse.new-menu{right:0;}
  header .navbar-light .navbar-nav .nav-link{color:var(--red);font-size:30px;line-height:38px;margin-bottom:26px;font-weight:400;padding:0;}
  header .navbar-light .navbar-nav .nav-link.active{color:var(--red);}
  header .navbar-nav li a.active::before{display:none;}
  header .nav_cta{margin:14px 0 0;}
  header .navbar-toggler[aria-expanded="true"] .close_menu{display:block;position:relative;z-index:1;}
  header .navbar-toggler[aria-expanded="true"] .hamburger{display:none;}
  .h_100vh{min-height:unset !important;}
}
@media only screen and (max-width:768px){
  h1,.fnt72{font-size:48px;line-height:53px;}
  h2,.fnt56{font-size:40px;line-height:46px;}
  h3,.fnt32{font-size:24px;line-height:29px;}
  h4,.fnt24{font-size:20px;line-height:28px;}
  .fnt80{font-size:44px;line-height:50px;}
  .our_primary h2.lead_ttl{font-size:40px;line-height:46px;}
  .rotator{height:60px;}
  .rotator__item{font-size:44px;line-height:50px;}
  .our_primary{padding:90px 0;}
  .we_offer{padding:80px 0;}
  .we_offer .col-md-3{max-width:100%;}
  .we_offer .card{margin:0 0 20px;}
  .brand_banner{padding:110px 0;}
  .brand_banner::after{width:120px;height:120px;right:16px;top:20px;}
  .integrate{padding:70px 0 0;}
  .request_today{padding:80px 0 64px;}
  .request_today .cta_art{margin-bottom:36px;}
  .page_ban{min-height:66vh;}
  .section_intro,.pillars,.approach,.faq_sec{padding:70px 0;}
  .results{padding:64px 0;}
  .stat .num{font-size:48px;}
  .contact_through{padding:64px 0;}
  .contact_through .bdr-right{border-right:0;border-bottom:2px solid var(--cement);padding-bottom:36px;margin-bottom:36px;}
  .contact_through .call-mail{font-size:26px;}
  footer{padding:64px 0 80px;}
  footer .direction_changes{flex-direction:column-reverse;}
  .home_ban_vedio a.scroll_cue img{left:50%;}
}

/* reduced motion */
@media (prefers-reduced-motion:reduce){
  .animated-img,.home_ban_vedio .hero_bg,.page_ban .hero_bg{animation:none !important;}
  html{scroll-behavior:auto;}
}

/* =====================================================================
   BLOG / INSIGHTS
   ===================================================================== */
.blog_index{padding:100px 0;}
.insights_grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:26px;}
.insight_card{display:flex;flex-direction:column;background:var(--white);border:1px solid #ECEEF2;border-radius:16px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;height:100%;}
.insight_card:hover{transform:translateY(-6px);box-shadow:0 26px 50px -26px rgba(0,0,0,.25);border-color:var(--red);}
.insight_top{position:relative;height:132px;display:flex;align-items:flex-end;padding:16px;background:linear-gradient(135deg,var(--red-deep),var(--red) 60%,var(--red-dark));}
.insight_top.tag-marketing{background:linear-gradient(135deg,var(--red),var(--red-dark));}
.insight_top.tag-mobile{background:linear-gradient(135deg,#5c070a,var(--red-deep) 60%,var(--red));}
.insight_top::after{content:"";position:absolute;inset:0;opacity:.16;background-image:radial-gradient(rgba(255,255,255,.7) 1.4px,transparent 1.4px);background-size:22px 22px;}
.insight_tag{position:relative;z-index:1;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.22);padding:6px 12px;border-radius:20px;}
.insight_body{display:flex;flex-direction:column;gap:10px;padding:24px 24px 26px;flex:1;}
.insight_meta{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--cement);font-weight:500;}
.insight_body h3{color:var(--black);font-weight:500;font-size:21px;line-height:27px;}
.insight_body p{color:var(--darkgrey);font-size:15px;flex:1;}
.read_more{color:var(--red);font-weight:600;font-size:15px;margin-top:4px;}

/* post page */
.page_ban.post_ban{min-height:54vh;}
.post_ban .post_meta{color:var(--lightgrey);margin-top:16px;font-size:15px;letter-spacing:.02em;}
.post_ban .post_tag{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);padding:6px 14px;border-radius:20px;margin-bottom:20px;}
.post_ban .post_back{display:inline-block;margin-top:22px;color:#fff;opacity:.85;font-weight:500;font-size:15px;}
.post_ban .post_back:hover{opacity:1;}
.post_body{padding:72px 0 40px;}
.post_wrap{max-width:820px;margin:0 auto;}
.prose{font-size:17px;line-height:1.8;color:var(--darkgrey);}
.prose > * + *{margin-top:1.15em;}
.prose h2{font-family:'Sora',sans-serif;color:var(--black);font-weight:700;font-size:28px;line-height:1.2;margin-top:1.7em;}
.prose h3{color:var(--black);font-weight:700;font-size:21px;margin-top:1.4em;}
.prose a{color:var(--red);text-decoration:underline;text-underline-offset:3px;}
.prose strong{color:var(--black);font-weight:700;}
.prose code{background:#F4F5F7;border:1px solid #ECEEF2;border-radius:6px;padding:1px 6px;font-size:.92em;}
.prose ul,.prose ol{padding-left:0;display:grid;gap:.55em;}
.prose ul li{position:relative;padding-left:28px;}
.prose ul li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:2px;background:var(--red);}
.prose ol{counter-reset:li;}
.prose ol li{position:relative;padding-left:34px;counter-increment:li;}
.prose ol li::before{content:counter(li);position:absolute;left:0;top:-1px;width:24px;height:24px;border-radius:50%;background:var(--red);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.prose blockquote{border-left:3px solid var(--red);padding:4px 0 4px 20px;color:var(--black);font-style:italic;}
.prose table{width:100%;border-collapse:collapse;margin-top:1.2em;font-size:15px;}
.prose th,.prose td{border:1px solid #ECEEF2;padding:10px 14px;text-align:left;}
.prose th{background:#F7F8FA;color:var(--black);font-weight:700;}
.post_cta{padding:80px 0;background:linear-gradient(120deg,var(--red),var(--red-dark));text-align:center;}
.post_cta h2{color:#fff;}
.post_cta h5{color:rgba(255,255,255,.9);max-width:560px;margin:16px auto 28px;}
@media only screen and (max-width:768px){
  .blog_index{padding:64px 0;}
  .post_body{padding:48px 0 24px;}
  .prose{font-size:16px;}
  .prose h2{font-size:23px;}
}
.post_cta .btn_white:hover{background:#fff;color:var(--red);border-color:#fff;}

/* =====================================================================
   ULTRA PREMIUM POLISH  (override layer, refines every page)
   ===================================================================== */
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;}
body{background:#fff;}
::selection{background:var(--red);color:#fff;}
::-moz-selection{background:var(--red);color:#fff;}
*{scrollbar-width:thin;scrollbar-color:var(--red) #eef0f3;}
::-webkit-scrollbar{width:11px;height:11px;}
::-webkit-scrollbar-track{background:#eef0f3;}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--red),var(--red-dark));border-radius:10px;border:2px solid #eef0f3;}
::-webkit-scrollbar-thumb:hover{background:var(--red-dark);}
:focus-visible{outline:2px solid var(--red);outline-offset:3px;border-radius:4px;}
section[id]{scroll-margin-top:104px;}

/* --- typography tightening for a high-end display feel --- */
h1,.fnt72,.fnt80,.our_primary h2.lead_ttl{letter-spacing:-.022em;}
h2,.fnt56{letter-spacing:-.016em;}
h3,.fnt32{letter-spacing:-.008em;}
.rotator__item{letter-spacing:-.02em;}
h5,.fnt20{letter-spacing:.004em;}
.text-uppercase{letter-spacing:.18em !important;}

/* --- header --- */
header{transition:background .45s ease,box-shadow .45s ease,backdrop-filter .45s ease,transform .5s ease;}
header .navbar-brand img{height:46px;transition:transform .35s cubic-bezier(.22,1,.36,1),filter .35s;}
header .navbar-brand:hover img{transform:translateY(-1px) scale(1.03);filter:drop-shadow(0 6px 14px rgba(0,0,0,.35));}
header.scrolled{background:rgba(16,5,6,.74);box-shadow:0 12px 34px -20px rgba(0,0,0,.7);border-bottom:1px solid rgba(255,255,255,.07);}
header .navbar-nav li a.active::before{height:2px;width:18px;left:16px;border-radius:2px;}
@media (min-width:992px){
  header .navbar-nav .nav-link{position:relative;}
  header .navbar-nav .nav-link::after{content:"";position:absolute;left:16px;right:16px;bottom:25px;height:2px;background:#fff;border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .32s cubic-bezier(.22,1,.36,1);opacity:.85;}
  header .navbar-nav .nav-link:hover::after{transform:scaleX(1);}
  header .navbar-nav .nav-link.active::after{display:none;}
}

/* --- buttons --- */
.btn_white,.btn_red,.btn_red1{transition:transform .32s cubic-bezier(.22,1,.36,1),background .3s,color .3s,box-shadow .32s,border-color .3s;}
.btn_white:hover,.btn_red:hover{transform:translateY(-2px);box-shadow:0 16px 32px -14px rgba(232,19,23,.5);}
.btn_red1{box-shadow:0 10px 24px -12px rgba(232,19,23,.55);}
.btn_red1:hover{transform:translateY(-2px);box-shadow:0 20px 40px -14px rgba(232,19,23,.72);}

/* --- hero depth: film grain + vignette + smoother motion --- */
.home_ban_vedio .hero_bg,.page_ban .hero_bg{animation-duration:26s;}
.home_ban_vedio .hero_scrim::after,.page_ban .hero_scrim::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(130% 100% at 50% 8%,transparent 42%,rgba(6,2,3,.55) 100%);}
.home_ban_vedio .hero_scrim::before,.page_ban .hero_scrim::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
.home_ban_vedio h1{text-shadow:0 2px 30px rgba(0,0,0,.28);}
.page_ban h1{text-shadow:0 2px 24px rgba(0,0,0,.25);}
.home_ban_vedio .banner_content .btn_white{backdrop-filter:blur(2px);}

/* --- cards: layered shadow + smoother lift + accent reveal --- */
.we_offer .card{border-radius:16px;box-shadow:0 12px 34px -22px rgba(0,0,0,.45);transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s;}
.we_offer .card:hover{transform:translateY(-9px);box-shadow:0 34px 60px -26px rgba(0,0,0,.55);}
.pillar,.step_card,.insight_card,.contact_card{transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s,border-color .45s;}
.pillar{position:relative;overflow:hidden;}
.pillar::after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--red),var(--red-dark));transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.22,1,.36,1);}
.pillar:hover{transform:translateY(-9px);box-shadow:0 34px 60px -26px rgba(0,0,0,.22);}
.pillar:hover::after{transform:scaleX(1);}
.step_card:hover{transform:translateY(-8px);box-shadow:0 28px 52px -28px rgba(0,0,0,.24);}
.insight_card:hover{transform:translateY(-9px);box-shadow:0 34px 60px -26px rgba(0,0,0,.26);}
.pnum{letter-spacing:.02em;}

/* --- benefit slider active card --- */
.benefit.is-active{box-shadow:0 26px 54px -26px rgba(232,19,23,.5);}

/* --- brand banner + results depth --- */
.brand_banner::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(80% 120% at 12% 0%,rgba(255,255,255,.10),transparent 55%);}
.results{position:relative;overflow:hidden;}
.results::before{content:"";position:absolute;inset:0;opacity:.12;background-image:radial-gradient(rgba(255,255,255,.7) 1.3px,transparent 1.3px);background-size:26px 26px;}
.results .container{position:relative;z-index:1;}
.stat .num{letter-spacing:-.02em;text-shadow:0 8px 26px rgba(0,0,0,.22);}

/* --- footer --- */
footer{position:relative;}
footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);}
footer .footlinks a,footer .foot_tag,footer p a{transition:opacity .25s ease,transform .25s ease;}
footer .footlinks a{display:inline-block;}
footer .footlinks a:hover{opacity:.82;transform:translateX(3px);}

/* --- section rhythm: a touch more air on large screens --- */
@media (min-width:1200px){
  .our_primary{padding:170px 0;}
  .we_offer{padding:130px 0;}
  .section_intro,.pillars,.approach,.faq_sec{padding:132px 0;}
}

/* --- reduced motion respect --- */
@media (prefers-reduced-motion:reduce){
  .btn_white:hover,.btn_red:hover,.btn_red1:hover,.we_offer .card:hover,.pillar:hover,.step_card:hover,.insight_card:hover{transform:none;}
}

/* =====================================================================
   BIG-COMPANY PREMIUM v2  (hero eyebrow, dual CTA, trust strip, core trio)
   ===================================================================== */
.hero_eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.24em;font-size:13px;font-weight:600;color:#fff;opacity:.85;margin-bottom:22px;}
.hero_eyebrow::before{content:"";display:inline-block;width:28px;height:1px;background:rgba(255,255,255,.6);vertical-align:middle;margin:0 12px 4px 0;}
.hero_ctas{display:flex;flex-wrap:wrap;gap:16px;align-items:center;}
.btn_solid_white{border-radius:32px;background:#fff;color:var(--red);border:1px solid #fff;padding:16px 30px;font-size:16px;font-weight:700;line-height:22px;display:inline-block;transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s,background .3s,color .3s;box-shadow:0 12px 30px -14px rgba(0,0,0,.5);}
.btn_solid_white:hover{transform:translateY(-2px);background:var(--red);color:#fff;border-color:var(--red);box-shadow:0 18px 38px -14px rgba(232,19,23,.6);}
.btn_link{color:#fff;font-weight:600;font-size:15px;letter-spacing:.02em;display:inline-flex;align-items:center;gap:8px;opacity:.9;transition:opacity .25s,gap .25s;}
.btn_link:hover{opacity:1;gap:12px;color:#fff;}

/* deep premium band under hero with the industries we serve */
.trust_strip{background:#0e0405;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.06);}
.trust_strip .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 24px;}
.trust_strip .lbl{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:600;color:rgba(255,255,255,.5);}
.trust_strip .ind{font-size:15px;font-weight:500;color:rgba(255,255,255,.9);position:relative;padding-left:24px;}
.trust_strip .ind::before{content:"";position:absolute;left:8px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--red);transform:translateY(-50%);}

/* section kicker (small caps label above a heading) */
.kicker{display:block;text-transform:uppercase;letter-spacing:.2em;font-size:13px;font-weight:600;color:var(--red);margin-bottom:14px;}

/* core services section built on the pillar cards */
.home_core{padding:130px 0;}
.home_core .pillar{padding:42px 34px;}
.home_core .pillar h3{font-size:27px;line-height:33px;}
.home_core .pillar > p{font-size:16px;min-height:78px;}

/* "also from IIVVA: AI automation" premium strip */
.also_ai{margin-top:44px;}
.also_ai a{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(120deg,#180506,#3a0a0c 90%);border:1px solid rgba(232,19,23,.45);border-radius:18px;padding:26px 34px;color:#fff;transition:transform .35s ease,box-shadow .35s ease,border-color .35s;}
.also_ai a:hover{transform:translateY(-4px);box-shadow:0 28px 54px -26px rgba(0,0,0,.55);border-color:var(--red);}
.also_ai .t{font-size:20px;font-weight:500;color:#fff;}
.also_ai .t b{font-weight:700;}
.also_ai .s{color:rgba(255,255,255,.75);font-size:15px;margin-top:2px;}
.also_ai .go{color:#fff;font-weight:700;white-space:nowrap;}

/* =====================================================================
   MOBILE OPTIMIZATION
   ===================================================================== */
html,body{overflow-x:hidden;}
.wrapper{overflow-x:clip;}
img,svg,video,iframe{max-width:100%;}
@media (max-width:991px){
  .trust_strip .container{gap:8px 16px;}
}
@media (max-width:768px){
  .home_ban_vedio{height:auto;min-height:100svh;padding:118px 0 84px;}
  .home_ban_vedio .container{display:flex;flex-direction:column;justify-content:center;}
  .home_ban_vedio .banner_content{position:static;}
  .home_ban_vedio a.scroll_cue{display:none;}
  .hero_eyebrow{font-size:12px;letter-spacing:.18em;}
  .hero_ctas{width:100%;}
  .hero_ctas .btn_solid_white,.hero_ctas .btn_white{width:100%;text-align:center;}
  .trust_strip{padding:18px 0;}
  .trust_strip .lbl{width:100%;text-align:center;margin-bottom:2px;}
  .trust_strip .container{gap:9px 14px;}
  .trust_strip .ind{font-size:13px;padding-left:18px;}
  .trust_strip .ind::before{left:5px;}
  .home_core{padding:70px 0;}
  .also_ai a{flex-direction:column;align-items:flex-start;text-align:left;padding:22px;}
  .prose table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;}
  .btn_white,.btn_red,.btn_solid_white,.btn_red1{padding:14px 24px;}
  section[id]{scroll-margin-top:82px;}
}
@media (max-width:480px){
  h1,.fnt72{font-size:34px;line-height:40px;}
  .fnt80,.our_primary h2.lead_ttl{font-size:34px;line-height:40px;}
  h2,.fnt56{font-size:30px;line-height:36px;}
  .rotator{height:50px;}
  .rotator__item{font-size:34px;line-height:40px;}
  .container{padding-left:22px;padding-right:22px;}
  .insights_grid{grid-template-columns:1fr;}
  .stat .num{font-size:42px;}
  .contact_card{padding:26px 20px;}
}

/* hero (desktop): vertically center content, clear of the fixed header, so the CTAs are always visible */
@media (min-width:769px){
  .home_ban_vedio .container{display:flex;flex-direction:column;justify-content:center;padding-top:80px;padding-bottom:40px;}
  .home_ban_vedio .banner_content{position:static;}
  .home_ban_vedio .banner_content h5{padding-bottom:2rem !important;}
}

/* =====================================================================
   FLOATING WHATSAPP BUTTON (injected globally by main.js)
   ===================================================================== */
.wa_fab{position:fixed;right:22px;bottom:22px;z-index:99999;width:58px;height:58px;border-radius:50%;
  background:#25D366;display:flex;align-items:center;justify-content:center;
  box-shadow:0 12px 30px -8px rgba(0,0,0,.45);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s;}
.wa_fab svg{width:32px;height:32px;fill:#fff;}
.wa_fab::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 0 rgba(37,211,102,.55);animation:waPulse 2.4s ease-out infinite;}
.wa_fab:hover{transform:scale(1.08);box-shadow:0 18px 40px -10px rgba(0,0,0,.5);}
@keyframes waPulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.5);}70%{box-shadow:0 0 0 16px rgba(37,211,102,0);}100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}}
@media (max-width:768px){.wa_fab{width:52px;height:52px;right:16px;bottom:16px;}.wa_fab svg{width:28px;height:28px;}}
@media (prefers-reduced-motion:reduce){.wa_fab::after{animation:none;}}

/* =====================================================================
   ULTRA-PREMIUM v3 : 3D depth, font finesse, sheen buttons, footer
   ===================================================================== */
body{font-family:'Sora',system-ui,-apple-system,'Segoe UI',sans-serif;}
h1,.fnt72,.fnt80,.our_primary h2.lead_ttl{letter-spacing:-.03em;font-weight:300;}
h2,.fnt56{letter-spacing:-.022em;}
.hero_eyebrow,.kicker,.text-uppercase{font-family:'Sora',sans-serif;}
/* Fraunces accent: art-level editorial italic */
.font_inria,.home_ban_vedio span,.our_primary span,.we_offer span,.brand_banner span,
.integrate span,.request_today span,.page_ban span,.section_intro span,.pillars span,
.approach span,.contact_through span,.about_intro span,.faq_sec span,.results span,
.rotator__item,.pnum,.snum,.stat .num{font-family:'Fraunces',Georgia,serif !important;}
.home_ban_vedio h1 span,.page_ban h1 span{font-weight:600;}

/* 3D tilt cards (JS-driven) */
.tilt3d{transform-style:preserve-3d;will-change:transform;transition:transform .16s ease-out,box-shadow .35s ease;}
.tilt3d .pnum,.tilt3d h3,.tilt3d h4{transform:translateZ(26px);}
.tilt3d .cap_list,.tilt3d>p,.tilt3d .btn_red{transform:translateZ(14px);}
.tilt3d .snum{transform:translateZ(34px);}

/* sheen / 3D buttons */
.btn_red1{background:linear-gradient(180deg,#ff2d31,var(--red)) !important;
  box-shadow:0 10px 24px -12px rgba(232,19,23,.6),inset 0 1px 0 rgba(255,255,255,.28) !important;}
.btn_red1:hover{background:linear-gradient(180deg,#ff2d31,var(--red-dark)) !important;}
.btn_solid_white{box-shadow:0 12px 30px -12px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.9) !important;}
.btn_white,.btn_red{backdrop-filter:blur(2px);}
.btn_white:active,.btn_red:active,.btn_red1:active,.btn_solid_white:active{transform:translateY(1px) !important;}

/* section kicker centered helper */
.text-center .kicker{display:block;}

/* =====================================================================
   PREMIUM FOOTER (.site_footer replaces the flat red block)
   ===================================================================== */
footer.site_footer{background:#0c0405 !important;padding:0 !important;position:relative;overflow:hidden;}
footer.site_footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(232,19,23,.9),transparent);z-index:2;}
.site_footer .foot_glow{position:absolute;left:50%;bottom:-45%;transform:translateX(-50%);width:min(1000px,120%);height:520px;background:radial-gradient(closest-side,rgba(232,19,23,.28),transparent 70%);pointer-events:none;z-index:0;}
.site_footer .container{position:relative;z-index:1;}
.site_footer .foot_cta{display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;padding:58px 0;border-bottom:1px solid rgba(255,255,255,.08);}
.site_footer .foot_cta h3{color:#fff;font-weight:600;font-size:clamp(24px,3vw,34px);line-height:1.1;letter-spacing:-.02em;margin-top:8px;}
.site_footer .foot_grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.3fr;gap:44px;padding:64px 0 44px;}
.site_footer .foot_brand img{height:48px;}
.site_footer .foot_brand p{color:rgba(255,255,255,.6);max-width:290px;margin-top:20px;font-size:15px;line-height:1.65;}
.site_footer .foot_connect{display:flex;gap:12px;margin-top:24px;}
.site_footer .foot_connect a{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;transition:transform .3s ease,background .3s,border-color .3s;}
.site_footer .foot_connect a:hover{background:var(--red);border-color:var(--red);transform:translateY(-3px);}
.site_footer .foot_connect svg{width:19px;height:19px;fill:#fff;}
.site_footer h6{color:#fff;font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:22px;font-weight:600;font-family:'Sora',sans-serif;}
.site_footer .foot_col a{display:block;color:rgba(255,255,255,.6);font-size:15px;margin-bottom:14px;transition:color .25s,transform .25s;width:fit-content;}
.site_footer .foot_col a:hover{color:#fff;transform:translateX(5px);}
.site_footer .foot_contact a{color:rgba(255,255,255,.75);}
.site_footer .foot_contact p{color:rgba(255,255,255,.5);font-size:14px;line-height:1.65;margin-top:16px;}
.site_footer .foot_bottom{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;padding:26px 0 42px;border-top:1px solid rgba(255,255,255,.08);}
.site_footer .foot_bottom p{color:rgba(255,255,255,.45);font-size:13px;letter-spacing:.02em;}
@media (max-width:991px){.site_footer .foot_grid{grid-template-columns:1fr 1fr;gap:34px;}}
@media (max-width:768px){
  .site_footer .foot_grid{grid-template-columns:1fr;gap:34px;padding:48px 0 32px;}
  .site_footer .foot_cta{padding:40px 0;}
  .site_footer .foot_bottom{flex-direction:column;align-items:flex-start;}
}
@media (prefers-reduced-motion:reduce){.tilt3d{transition:none !important;}}

/* =====================================================================
   ULTRA-PREMIUM v4 : 3D hero showpiece, glossy glare, richer depth
   ===================================================================== */
/* deeper, richer hero gradient (less banding, more "16k" depth) */
.home_ban_vedio .hero_bg{
  background:
    radial-gradient(55% 50% at 16% 20%, rgba(255,86,90,.85) 0%, rgba(255,86,90,0) 58%),
    radial-gradient(50% 46% at 84% 26%, rgba(176,14,18,.95) 0%, rgba(176,14,18,0) 60%),
    radial-gradient(65% 60% at 62% 96%, rgba(90,4,7,.98) 0%, rgba(90,4,7,0) 60%),
    conic-gradient(from 210deg at 70% 40%, rgba(232,19,23,.35), rgba(20,3,5,.0) 30%, rgba(255,86,90,.18) 60%, rgba(20,3,5,0) 85%),
    linear-gradient(120deg,#1a0406 0%,#5a0407 45%,#e81317 100%);
  background-size:200% 200%,200% 200%,200% 200%,180% 180%,180% 180%;
}

/* floating 3D glass showpiece (desktop) */
.hero_visual{position:absolute;right:0;top:50%;transform:translateY(-50%);width:46%;max-width:600px;height:520px;z-index:4;perspective:1500px;pointer-events:none;}
.hv_orb{position:absolute;right:6%;top:50%;width:440px;height:440px;margin-top:-220px;border-radius:50%;
  background:radial-gradient(circle at 42% 38%,rgba(255,120,124,.6),rgba(232,19,23,.28) 44%,transparent 70%);filter:blur(26px);animation:orbFloat 10s ease-in-out infinite;}
.hv_stage{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .25s ease-out;}
.glass_card{position:absolute;border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.04));
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.24);
  box-shadow:0 50px 90px -34px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.35);}
.hv_main{width:340px;height:300px;right:14%;top:18%;transform:translateZ(60px);padding:20px;animation:cardFloat 8s ease-in-out infinite;}
.gc_bar{display:flex;gap:7px;margin-bottom:18px;}
.gc_bar span{width:11px;height:11px;border-radius:50%;background:rgba(255,255,255,.45);}
.gc_bar span:first-child{background:#ff6a6f;}
.gc_line{height:9px;border-radius:6px;background:rgba(255,255,255,.22);margin-bottom:11px;}
.gc_line.w70{width:68%;}.gc_line.w40{width:40%;}
.gc_chart{display:flex;align-items:flex-end;gap:9px;height:150px;margin-top:22px;}
.gc_chart i{flex:1;border-radius:6px 6px 0 0;background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.12));}
.gc_chart i:nth-child(1){height:38%;}.gc_chart i:nth-child(2){height:56%;}.gc_chart i:nth-child(3){height:46%;}
.gc_chart i:nth-child(4){height:72%;}.gc_chart i:nth-child(5){height:60%;}
.gc_chart i:nth-child(6){height:92%;background:linear-gradient(180deg,#ff6a6f,#e81317);}
.glass_chip{position:absolute;padding:12px 16px;border-radius:15px;background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(255,255,255,.06));
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;font-weight:600;letter-spacing:.02em;
  box-shadow:0 26px 54px -26px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.4);}
.glass_chip b{font-family:'Fraunces',serif;font-size:19px;font-style:italic;display:block;line-height:1;margin-bottom:3px;}
.chip1{left:0;top:14%;transform:translateZ(120px);animation:cardFloat 7s ease-in-out infinite .4s;}
.chip2{right:0;top:2%;transform:translateZ(96px);animation:cardFloat 9s ease-in-out infinite .2s;}
.chip3{right:4%;bottom:4%;transform:translateZ(130px);animation:cardFloat 8s ease-in-out infinite 1s;}
@keyframes cardFloat{0%,100%{translate:0 0;}50%{translate:0 -16px;}}
@keyframes orbFloat{0%,100%{transform:scale(1);}50%{transform:scale(1.07);}}

/* glossy specular glare that follows the cursor on 3D cards */
.tilt3d{position:relative;overflow:hidden;}
.tilt3d > *:not(.tilt_glare){position:relative;z-index:1;}
.tilt_glare{position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s ease;
  background:radial-gradient(240px circle at var(--gx,50%) var(--gy,50%),rgba(255,255,255,.28),transparent 60%);}
.tilt3d:hover .tilt_glare{opacity:1;}

/* mobile: hide the 3D showpiece, tighten hero */
@media (max-width:991px){ .hero_visual{display:none;} }
@media (max-width:768px){
  .home_ban_vedio .banner_content{max-width:100%;}
  .home_core{padding:64px 0;}
  .our_primary{padding:72px 0;}
}
@media (max-width:480px){
  .hero_eyebrow{font-size:11px;letter-spacing:.16em;}
  .home_ban_vedio h5{font-size:16px;line-height:24px;}
  .btn_solid_white,.btn_white{font-size:15px;}
}
@media (prefers-reduced-motion:reduce){
  .hv_main,.glass_chip,.hv_orb{animation:none !important;}
}

/* keep the 3D showpiece clear of the headline */
.hero_visual{width:44%;max-width:560px;}
.hero_visual .chip1{left:15%;top:9%;}
@media (max-width:1200px){ .hero_visual{max-width:460px;} .hero_visual .chip1{left:6%;} }

/* =====================================================================
   SIGNATURE v5 : living aurora, cursor spotlight, kinetic type, marquee
   ===================================================================== */
/* refined selection */
::selection{background:rgba(232,19,23,.9);color:#fff;}

/* living aurora hero: drifting colour blobs + cursor spotlight */
.home_ban_vedio{--mx:72%;--my:26%;}
.home_ban_vedio .hero_bg{background:linear-gradient(120deg,#160305 0%,#4d0407 48%,#c00e13 100%);}
.home_ban_vedio .hero_bg::before{content:"";position:absolute;inset:-20%;z-index:0;filter:blur(60px);opacity:.9;
  background:
    radial-gradient(38% 42% at 20% 24%, rgba(255,86,90,.75), transparent 60%),
    radial-gradient(34% 40% at 82% 30%, rgba(176,14,18,.9), transparent 62%),
    radial-gradient(46% 48% at 62% 88%, rgba(120,4,8,.95), transparent 60%),
    radial-gradient(30% 34% at 88% 78%, rgba(255,120,90,.4), transparent 62%);
  animation:aurora 16s ease-in-out infinite alternate;}
@keyframes aurora{
  0%{transform:translate3d(0,0,0) scale(1);}
  50%{transform:translate3d(-3%,2%,0) scale(1.08);}
  100%{transform:translate3d(3%,-2%,0) scale(1.05);}
}
.home_ban_vedio .hero_bg::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(600px circle at var(--mx) var(--my), rgba(255,160,150,.20), transparent 55%);transition:background .12s ease;}

/* kinetic shimmering accent headline */
.home_ban_vedio h1 span{
  background:linear-gradient(100deg,#ffffff 0%,#ffd2d4 18%,#ff5a5f 42%,#ff9a5a 58%,#ffd2d4 78%,#ffffff 100%);
  background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  animation:sheen 7s linear infinite;}
@keyframes sheen{to{background-position:220% center;}}

/* staggered hero entrance (AOS drives inner elements; add smoothness) */
.home_ban_vedio [data-aos]{transition-timing-function:cubic-bezier(.2,.7,.2,1);}

/* brighter, sharper 3D showpiece */
.glass_card{background:linear-gradient(135deg,rgba(255,255,255,.20),rgba(255,120,124,.06));border-color:rgba(255,255,255,.32);
  box-shadow:0 60px 100px -34px rgba(0,0,0,.8),0 0 60px -20px rgba(255,86,90,.35),inset 0 1px 0 rgba(255,255,255,.5);}
.gc_chart i{background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(255,255,255,.16));}
.gc_chart i:nth-child(6){background:linear-gradient(180deg,#ff7a7f,#e81317);box-shadow:0 0 24px -4px rgba(255,86,90,.7);}
.hv_orb{background:radial-gradient(circle at 42% 38%,rgba(255,150,150,.75),rgba(232,19,23,.32) 44%,transparent 70%);}
.glass_chip{background:linear-gradient(135deg,rgba(255,255,255,.26),rgba(255,255,255,.08));border-color:rgba(255,255,255,.38);}

/* infinite capabilities marquee (replaces static strip) */
.marquee{background:#0b0304;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);overflow:hidden;padding:20px 0;display:flex;gap:0;white-space:nowrap;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.marquee_track{display:inline-flex;align-items:center;gap:34px;padding-right:34px;animation:marq 32s linear infinite;flex-shrink:0;min-width:100%;justify-content:space-around;}
.marquee:hover .marquee_track{animation-play-state:paused;}
.marquee_track span{font-family:'Fraunces',serif;font-style:italic;font-size:22px;color:rgba(255,255,255,.92);}
.marquee_track b{width:7px;height:7px;border-radius:50%;background:var(--red);display:inline-block;flex-shrink:0;}
@keyframes marq{to{transform:translateX(-100%);}}

/* magnetic button smoothing */
[data-magnetic]{transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .3s,background .3s,color .3s;}

@media (max-width:768px){
  .marquee_track span{font-size:18px;}
  .marquee_track{gap:24px;padding-right:24px;}
}
@media (prefers-reduced-motion:reduce){
  .home_ban_vedio .hero_bg::before,.home_ban_vedio h1 span,.marquee_track{animation:none !important;}
  .home_ban_vedio h1 span{-webkit-text-fill-color:#ff8f93;}
}

/* =====================================================================
   EXCLUSIVE v6 : drop glass, fine-line emblem, restrained aurora
   ===================================================================== */
/* deeper, more restrained hero (less loud, more premium) */
.home_ban_vedio .hero_bg{background:linear-gradient(120deg,#100203 0%,#360306 52%,#6e090d 100%);}
.home_ban_vedio .hero_bg::before{opacity:.7;
  background:
    radial-gradient(38% 42% at 22% 26%, rgba(190,22,28,.55), transparent 62%),
    radial-gradient(36% 40% at 80% 30%, rgba(110,8,12,.85), transparent 64%),
    radial-gradient(48% 50% at 60% 92%, rgba(50,3,6,.96), transparent 60%);}
.home_ban_vedio .hero_bg::after{background:radial-gradient(560px circle at var(--mx) var(--my), rgba(255,150,140,.12), transparent 55%);}

/* fine-line emblem showpiece (replaces glass) */
.hero_emblem{position:absolute;right:2%;top:50%;transform:translateY(-50%);width:44%;max-width:520px;height:520px;z-index:4;perspective:1400px;pointer-events:none;display:flex;align-items:center;justify-content:center;}
.he_glow{position:absolute;width:74%;aspect-ratio:1;border-radius:50%;filter:blur(38px);
  background:radial-gradient(circle,rgba(255,120,96,.24),rgba(232,19,23,.12) 46%,transparent 70%);animation:orbFloat 11s ease-in-out infinite;}
.hero_emblem .hv_stage{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;transform-style:preserve-3d;transition:transform .25s ease-out;}
.he_mark{width:80%;max-width:430px;filter:drop-shadow(0 24px 70px rgba(0,0,0,.55));animation:emblemFloat 13s ease-in-out infinite;}
@keyframes emblemFloat{0%,100%{transform:translateY(0) rotate(0deg);}50%{transform:translateY(-16px) rotate(4deg);}}
@media (max-width:991px){ .hero_emblem{display:none;} }
@media (prefers-reduced-motion:reduce){ .he_mark,.he_glow{animation:none !important;} }

/* raise the emblem and make it read more clearly */
.hero_emblem{top:42%;max-width:500px;}
.he_mark{max-width:410px;filter:drop-shadow(0 22px 60px rgba(0,0,0,.6)) drop-shadow(0 0 34px rgba(255,120,110,.28));}
.he_glow{background:radial-gradient(circle,rgba(255,140,112,.34),rgba(232,19,23,.16) 46%,transparent 70%);}
@media (max-width:1200px){ .hero_emblem{max-width:420px;top:40%;} }

/* =====================================================================
   EXCLUSIVE v7 : cinematic intro, bespoke cursor, scroll progress
   ===================================================================== */
/* one-time cinematic intro (curtain reveal) */
.intro{position:fixed;inset:0;z-index:2000000;background:#0b0304;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;
  animation:introOut 2.1s cubic-bezier(.76,0,.24,1) forwards;}
html.intro-seen .intro{display:none;}
.intro .intro_mark{width:116px;opacity:0;animation:introMark 1.1s cubic-bezier(.2,.8,.2,1) forwards;}
.intro .intro_line{width:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);animation:introLine 1.1s ease .25s forwards;}
.intro .intro_word{font-family:'Sora',sans-serif;font-weight:600;color:#fff;font-size:20px;letter-spacing:.4em;padding-left:.4em;opacity:0;animation:introWord 1.1s ease .3s forwards;}
@keyframes introMark{0%{opacity:0;transform:scale(.86) translateY(10px);}60%,100%{opacity:1;transform:scale(1) translateY(0);}}
@keyframes introLine{to{width:220px;}}
@keyframes introWord{0%{opacity:0;letter-spacing:1.1em;}100%{opacity:1;letter-spacing:.4em;}}
@keyframes introOut{0%,56%{transform:translateY(0);}100%{transform:translateY(-100%);visibility:hidden;pointer-events:none;}}

/* bespoke cursor (fine pointers only; enabled by JS via .has-cursor) */
body.has-cursor,body.has-cursor a,body.has-cursor button,body.has-cursor [data-magnetic],body.has-cursor .wa_fab{cursor:none;}
.cursor_dot,.cursor_ring{position:fixed;top:0;left:0;pointer-events:none;z-index:1000001;border-radius:50%;transform:translate(-50%,-50%);}
.cursor_dot{width:6px;height:6px;background:#fff;box-shadow:0 0 10px rgba(255,255,255,.6);}
.cursor_ring{width:34px;height:34px;border:1px solid rgba(255,255,255,.45);will-change:transform,width,height;transition:width .25s ease,height .25s ease,background .25s ease,border-color .25s ease;}
.cursor_ring.grow{width:58px;height:58px;background:rgba(232,19,23,.16);border-color:rgba(255,120,110,.75);}

/* scroll progress line */
.scroll_prog{position:fixed;top:0;left:0;height:3px;width:0;z-index:1000002;background:linear-gradient(90deg,#ff6a6f,#e81317);box-shadow:0 0 12px rgba(232,19,23,.55);}

/* calmer, more exclusive emblem motion */
.he_mark{animation:emblemFloat 24s ease-in-out infinite;}
@keyframes emblemFloat{0%,100%{transform:translateY(0) rotate(-2deg);}50%{transform:translateY(-12px) rotate(2deg);}}

@media (prefers-reduced-motion:reduce){
  .intro{animation:none;display:none;}
  .cursor_dot,.cursor_ring{display:none;}
}

/* =====================================================================
   EXCLUSIVE v8 : gallery viewport frame + editorial heading reveal
   ===================================================================== */
/* fixed viewport frame with corner ticks + location micro-label (blends on any bg) */
.frame{position:fixed;inset:16px;z-index:900;pointer-events:none;border:1px solid rgba(255,255,255,.22);mix-blend-mode:difference;}
.frame .tick{position:absolute;width:14px;height:14px;border:0 solid rgba(255,255,255,.95);}
.frame .tick.tl{top:-1px;left:-1px;border-top-width:2px;border-left-width:2px;}
.frame .tick.tr{top:-1px;right:-1px;border-top-width:2px;border-right-width:2px;}
.frame .tick.bl{bottom:-1px;left:-1px;border-bottom-width:2px;border-left-width:2px;}
.frame .tick.br{bottom:-1px;right:-1px;border-bottom-width:2px;border-right-width:2px;}
.frame_label{position:fixed;bottom:26px;left:30px;z-index:900;pointer-events:none;mix-blend-mode:difference;color:#fff;
  font-family:'Sora',sans-serif;font-size:11px;font-weight:500;letter-spacing:.26em;text-transform:uppercase;}
.frame_label.r{left:auto;right:30px;}
@media (max-width:991px){ .frame,.frame_label{display:none;} }

/* editorial line-mask reveal for section headings (JS adds .mask-reveal / .in) */
.mask-reveal{clip-path:inset(0 0 110% 0);opacity:0;transition:clip-path 1.15s cubic-bezier(.19,1,.22,1),opacity .9s ease;will-change:clip-path;}
.mask-reveal.in{clip-path:inset(0 0 -14% 0);opacity:1;}
@media (prefers-reduced-motion:reduce){ .mask-reveal{clip-path:none !important;opacity:1 !important;} }

/* =====================================================================
   WONDER v9 : living particle constellation hero
   ===================================================================== */
.hero_net{position:absolute;inset:0;z-index:3;width:100%;height:100%;pointer-events:none;}
.hero_glow{position:absolute;right:6%;top:50%;transform:translateY(-50%);width:560px;height:560px;max-width:60vw;border-radius:50%;z-index:2;pointer-events:none;filter:blur(50px);
  background:radial-gradient(circle,rgba(255,120,96,.26),rgba(232,19,23,.12) 46%,transparent 70%);animation:orbFloat 12s ease-in-out infinite;}
/* let the network be the star: calm the aurora a touch */
.home_ban_vedio .hero_bg::before{opacity:.55;}
@media (max-width:768px){ .hero_glow{width:360px;height:360px;right:-12%;} }

/* =====================================================================
   WONDER v10 : home-level hero treatment on EVERY page banner
   ===================================================================== */
.page_ban{--mx:70%;--my:30%;min-height:74vh;}
.page_ban .hero_bg{background:linear-gradient(120deg,#100203 0%,#360306 52%,#6e090d 100%);}
.page_ban .hero_bg::before{content:"";position:absolute;inset:-20%;z-index:0;filter:blur(60px);opacity:.6;
  background:
    radial-gradient(38% 42% at 20% 26%, rgba(190,22,28,.5), transparent 62%),
    radial-gradient(36% 40% at 82% 30%, rgba(110,8,12,.85), transparent 64%),
    radial-gradient(48% 50% at 60% 92%, rgba(50,3,6,.95), transparent 60%);
  animation:aurora 18s ease-in-out infinite alternate;}
.page_ban .hero_bg::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(560px circle at var(--mx) var(--my), rgba(255,150,140,.14), transparent 55%);transition:background .12s ease;}
.page_ban .hero_net{position:absolute;inset:0;z-index:3;width:100%;height:100%;pointer-events:none;}
.page_ban .hero_glow{position:absolute;right:4%;top:50%;transform:translateY(-50%);width:460px;height:460px;max-width:58vw;border-radius:50%;z-index:2;pointer-events:none;filter:blur(50px);
  background:radial-gradient(circle,rgba(255,120,96,.22),rgba(232,19,23,.1) 46%,transparent 70%);animation:orbFloat 12s ease-in-out infinite;}
/* kinetic accent on interior heroes too */
.page_ban h1 span{background:linear-gradient(100deg,#ffffff 0%,#ffd2d4 18%,#ff5a5f 42%,#ff9a5a 58%,#ffd2d4 78%,#ffffff 100%);
  background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:sheen 7s linear infinite;}
.post_ban{min-height:64vh;}
.post_ban .post_tag,.post_ban .post_meta,.post_ban .post_back{position:relative;z-index:4;}
@media (max-width:768px){
  .page_ban{min-height:60vh;}
  .post_ban{min-height:52vh;}
  .page_ban .hero_glow{display:none;}
}
@media (prefers-reduced-motion:reduce){
  .page_ban .hero_bg::before{animation:none;}
  .page_ban h1 span{-webkit-text-fill-color:#ff8f93;}
}

/* =====================================================================
   POLISH v11 : the last 5% of craft
   ===================================================================== */
/* balanced, orphan-free headings + tidy paragraph endings */
h1,h2,h3,h4,h5,h6,.fnt72,.fnt80,.fnt56,.fnt32,.fnt24,.fnt20,.our_primary .lead_ttl,.stat .num{text-wrap:balance;}
p,.speak-with,.foot_brand p{text-wrap:pretty;}
/* refined reading rhythm for lead copy */
.section_intro h5,.home_core h5,.lead_copy,.faq_sec .accordion-body{line-height:1.62;}
/* one premium easing across interactive elements */
a,button,.btn_white,.btn_red,.btn_red1,.btn_solid_white,.nav-link,.pillar,.we_offer .card,
.insight_card,.step_card,.foot_col a,.footlinks a,.accordion-button{transition-timing-function:cubic-bezier(.22,1,.36,1);}
/* refined focus-visible (accessible + on-brand) */
a:focus-visible,button:focus-visible,.btn_white:focus-visible,.btn_red:focus-visible,.btn_red1:focus-visible,
.btn_solid_white:focus-visible,.form-control:focus-visible,.form-select:focus-visible,.accordion-button:focus-visible{
  outline:2px solid rgba(255,120,110,.9);outline-offset:3px;border-radius:8px;}
/* unified, softer card depth at rest */
.pillar,.step_card,.we_offer .card,.insight_card,.contact_card{box-shadow:0 16px 40px -28px rgba(0,0,0,.4);}
/* buttons: refined tracking + weight balance */
.btn_white,.btn_red,.btn_red1,.btn_solid_white{letter-spacing:.012em;}
/* marquee: calmer speed + softer edges */
.marquee_track{animation-duration:44s;}
.marquee{-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);}
/* scroll cue refinement */
.scroll_cue{opacity:.82;transition:opacity .3s ease,transform .3s ease;}
.scroll_cue:hover{opacity:1;}
/* protect gradient descenders on kinetic accent (g, y, etc.) */
.home_ban_vedio h1 span,.page_ban h1 span{padding-bottom:.06em;}
/* FAQ breathing room */
.faq_sec .accordion-button{padding-top:26px;padding-bottom:26px;}
/* footer link hover easing already premium; keep hairline crisp */
.site_footer .foot_col a{will-change:transform;}
/* slightly calmer node twinkle handled in JS; keep aurora restrained */
.home_ban_vedio .hero_bg::before{opacity:.5;}
.page_ban .hero_bg::before{opacity:.55;}

/* =====================================================================
   MOBILE PREMIUM v12 : world-class feel on phones
   ===================================================================== */
.menu_meta{display:none;}
@media (max-width:991px){
  /* dark cinematic full-screen menu (replaces the white panel) */
  header .navbar-collapse{background:linear-gradient(165deg,#0e0407 0%,#390810 58%,#0e0407 100%);padding:116px 34px 52px;overflow-y:auto;}
  header .navbar-collapse::before{content:"";position:absolute;right:-28%;top:-12%;width:80%;height:58%;border-radius:50%;filter:blur(70px);background:radial-gradient(circle,rgba(232,19,23,.4),transparent 70%);pointer-events:none;}
  header .navbar-nav{position:relative;z-index:1;}
  header .navbar-light .navbar-nav .nav-link{color:#fff;font-family:'Sora',sans-serif;font-weight:300;font-size:32px;line-height:1.15;letter-spacing:-.01em;margin-bottom:0;padding:19px 0;border-bottom:1px solid rgba(255,255,255,.08);opacity:0;transform:translateY(20px);transition:opacity .55s ease,transform .55s cubic-bezier(.22,1,.36,1),color .3s;}
  header .navbar-light .navbar-nav .nav-link.active{color:#ff8f93;}
  header .navbar-nav li a.active::before{display:none;}
  header .navbar-collapse.new-menu .nav-link{opacity:1;transform:none;}
  header .navbar-collapse.new-menu .nav-item:nth-child(1) .nav-link{transition-delay:.06s;}
  header .navbar-collapse.new-menu .nav-item:nth-child(2) .nav-link{transition-delay:.12s;}
  header .navbar-collapse.new-menu .nav-item:nth-child(3) .nav-link{transition-delay:.18s;}
  header .navbar-collapse.new-menu .nav-item:nth-child(4) .nav-link{transition-delay:.24s;}
  header .navbar-collapse.new-menu .nav-item:nth-child(5) .nav-link{transition-delay:.30s;}
  header .navbar-collapse.new-menu .nav-item:nth-child(6) .nav-link{transition-delay:.36s;}
  header .nav_cta{display:block;text-align:center;width:100%;margin-top:30px;padding:18px 24px;font-size:17px;opacity:0;transform:translateY(20px);transition:opacity .55s ease,transform .55s cubic-bezier(.22,1,.36,1);}
  header .navbar-collapse.new-menu .nav_cta{opacity:1;transform:none;transition-delay:.46s;}
  /* contact block inside the menu (injected by JS) */
  .menu_meta{display:block;position:relative;z-index:1;margin-top:42px;opacity:0;transform:translateY(20px);transition:opacity .6s ease .58s,transform .6s cubic-bezier(.22,1,.36,1) .58s;}
  .navbar-collapse.new-menu .menu_meta{opacity:1;transform:none;}
  .menu_meta .lbl{display:block;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.42);margin-bottom:12px;}
  .menu_meta a{display:block;color:#fff;font-size:18px;margin-bottom:6px;font-weight:400;}
  .menu_meta p{color:rgba(255,255,255,.55);font-size:14px;margin-top:14px;line-height:1.6;}
  /* subtle corner ticks on mobile (no full border, no labels) */
  .frame{display:block;inset:10px;border-color:transparent;}
  .frame .tick{border-color:rgba(255,255,255,.7);width:12px;height:12px;}
  .frame_label{display:none;}
}
@media (max-width:768px){
  .home_ban_vedio h1{font-size:42px;line-height:1.07;}
  .home_ban_vedio .hero_eyebrow{margin-bottom:16px;}
  .home_ban_vedio h5{max-width:100%;}
  .page_ban .hero_glow{display:block;right:-22%;opacity:.65;}
  .page_ban h1{font-size:38px;line-height:1.08;}
}
@media (max-width:480px){
  header .navbar-light .navbar-nav .nav-link{font-size:28px;padding:16px 0;}
  .home_ban_vedio h1{font-size:36px;}
}

/* =====================================================================
   RHYTHM v13 : kill the double-darkness, enrich the hero
   ===================================================================== */
/* the capabilities marquee becomes a vibrant brand ribbon (was near-black) */
.marquee{background:linear-gradient(90deg,var(--red-dark) 0%,var(--red) 50%,var(--red-dark) 100%);
  border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);
  -webkit-mask-image:none;mask-image:none;position:relative;padding:22px 0;}
.marquee::before,.marquee::after{content:"";position:absolute;top:0;bottom:0;width:90px;z-index:2;pointer-events:none;}
.marquee::before{left:0;background:linear-gradient(90deg,var(--red-dark),transparent);}
.marquee::after{right:0;background:linear-gradient(270deg,var(--red-dark),transparent);}
.marquee_track span{color:#fff;}
.marquee_track b{background:rgba(255,255,255,.6);}

/* richer, more luminous hero so the dark reads as luxury, not gloom */
.home_ban_vedio .hero_bg::before{opacity:.64;}
.hero_glow{background:radial-gradient(circle,rgba(255,132,104,.32),rgba(232,19,23,.16) 46%,transparent 70%);}
/* a soft warm floor-glow bridging the hero into the ribbon */
.home_ban_vedio::after{content:"";position:absolute;left:0;right:0;bottom:0;height:200px;z-index:3;pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(232,19,23,.12));}

/* =====================================================================
   FIX v14 : mobile menu button + WhatsApp corner
   ===================================================================== */
/* the hamburger / close SVGs ship with a viewBox only, so they MUST be sized,
   otherwise the mobile menu button renders broken and users can't find the nav */
header .navbar-toggler{line-height:0;padding:8px 4px;}
.navbar-toggler .hamburger{width:32px;height:24px;display:inline-block;}
.navbar-toggler .close_menu{width:28px;height:28px;}
/* WhatsApp button owns the bottom-right corner: drop the tick there so nothing peeks out */
.frame .tick.br{display:none;}
/* keep the FAB clear of the bottom-left location label on desktop */
@media (min-width:992px){ .frame_label{bottom:28px;} }


/* =====================================================================
   GLASS HERO PROTOTYPE (over Cayman sunset scene)
   ===================================================================== */
.glass_hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding:120px 0 74px;}
.gh_bg{position:absolute;inset:0;z-index:0;background:url(/assets/img/hero-bg.jpg) center/cover no-repeat, url(/assets/img/hero-bg.svg) center/cover no-repeat;}
.gh_scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(12,7,22,.58) 0%,rgba(12,7,22,.28) 46%,rgba(12,7,22,.04) 72%),linear-gradient(180deg,rgba(12,7,22,.18),rgba(12,7,22,.4));}
.glass_hero .container{position:relative;z-index:2;}
.glass{background:rgba(255,255,255,.12);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);border:1px solid rgba(255,255,255,.28);box-shadow:0 34px 74px -36px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.42);border-radius:24px;}
.gh_eyebrow{display:block;text-transform:uppercase;letter-spacing:.24em;font-size:13px;font-weight:600;color:rgba(255,255,255,.85);margin-bottom:22px;font-family:'Sora',sans-serif;}
.gh_h1{font-family:'Sora',sans-serif;font-weight:700;font-size:clamp(40px,5.2vw,74px);line-height:1.04;letter-spacing:-.02em;color:#fff;text-shadow:0 2px 34px rgba(0,0,0,.4);max-width:13ch;}
.gh_accent{color:#FFB0D2;text-shadow:0 0 36px rgba(255,158,197,.5),0 2px 24px rgba(0,0,0,.35);}
.gh_sub{color:rgba(255,255,255,.9);font-size:clamp(16px,1.3vw,19px);line-height:1.6;max-width:470px;margin-top:26px;font-family:'Sora',sans-serif;}
.gh_ctas{display:flex;gap:16px;flex-wrap:wrap;margin-top:38px;}
.gh_btn{background:var(--red);color:#fff;border-radius:40px;padding:17px 32px;font-weight:600;font-size:16px;display:inline-flex;gap:10px;align-items:center;transition:transform .3s cubic-bezier(.22,1,.36,1),background .3s;box-shadow:0 18px 36px -16px rgba(232,19,23,.7);}
.gh_btn:hover{background:var(--red-dark);color:#fff;transform:translateY(-2px);}
.gh_btn span{transition:margin-left .3s;}.gh_btn:hover span{margin-left:5px;}
.gh_btn_glass{border-radius:40px;padding:17px 30px;font-weight:600;font-size:16px;color:#fff;background:rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.32);transition:background .3s,transform .3s;}
.gh_btn_glass:hover{background:rgba(255,255,255,.26);color:#fff;transform:translateY(-2px);}
.gh_facts{display:flex;gap:6px;margin-top:42px;padding:20px 6px;max-width:520px;}
.gh_facts>div{flex:1;text-align:center;padding:0 8px;border-right:1px solid rgba(255,255,255,.2);}
.gh_facts>div:last-child{border-right:0;}
.gh_facts b{display:block;font-family:'Fraunces',serif;font-style:italic;font-size:26px;color:#fff;line-height:1;}
.gh_facts span{display:block;font-size:12px;color:rgba(255,255,255,.78);margin-top:9px;}
.gh_showpiece{display:flex;justify-content:center;}
.gh_panel{padding:26px;width:100%;max-width:460px;}
.ghp_title{text-align:center;color:#fff;font-family:'Fraunces',serif;font-size:24px;margin-bottom:20px;}
.ghp_grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;}
.ghp_card{display:block;padding:17px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);transition:transform .3s,background .3s;}
.ghp_card:hover{background:rgba(255,255,255,.22);transform:translateY(-3px);}
.ghp_ic{display:inline-flex;width:38px;height:38px;border-radius:11px;background:rgba(232,19,23,.9);color:#fff;align-items:center;justify-content:center;font-size:15px;font-weight:700;margin-bottom:12px;}
.ghp_card b{display:block;color:#fff;font-size:14.5px;font-weight:600;}
.ghp_card small{display:block;color:rgba(255,255,255,.72);font-size:11.5px;margin-top:3px;}
.ghp_bar{margin-top:14px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);}
.ghp_bar_top{display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:14px;}
.ghp_bar_top b{color:#fff;}
.ghp_track{height:6px;border-radius:6px;background:rgba(255,255,255,.2);margin:12px 0 8px;overflow:hidden;}
.ghp_track i{display:block;width:75%;height:100%;background:linear-gradient(90deg,#ff9a5a,var(--red));box-shadow:0 0 18px rgba(232,19,23,.8);}
.ghp_bar small{color:rgba(255,255,255,.72);font-size:12px;}
.gh_scroll{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:2;width:26px;height:42px;border:1px solid rgba(255,255,255,.5);border-radius:16px;display:flex;justify-content:center;}
.gh_scroll span{width:3px;height:8px;background:#fff;border-radius:2px;margin-top:8px;animation:scrolldot 1.8s ease infinite;}
@keyframes scrolldot{0%{opacity:0;transform:translateY(0);}30%,55%{opacity:1;}55%{transform:translateY(10px);}100%{opacity:0;transform:translateY(16px);}}
@media (max-width:991px){ .gh_h1{max-width:100%;} .gh_showpiece{margin-top:20px;} }
@media (max-width:768px){
  .glass_hero{min-height:auto;padding:116px 0 66px;}
  .glass{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
  .gh_scroll{display:none;}
  .gh_facts{margin-top:32px;}
  .gh_panel{max-width:100%;}
}

/* =====================================================================
   FULL GLASS OVER CAYMAN PHOTO v16
   ===================================================================== */
html{background:#0b1622;}
body{background:transparent !important;color:rgba(255,255,255,.9);}
body::before{content:"";position:fixed;inset:0;z-index:-2;background:url(/assets/img/hero-bg.jpg) center/cover no-repeat;}
body::after{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(9,16,28,.48),rgba(9,16,28,.72));}
.wrapper{position:relative;z-index:0;background:transparent;}

/* sections transparent so the fixed photo shows through */
.our_primary,.integrate,.section_intro,.approach,.faq_sec,.home_core,.contact_through,.contact_form_sec,.blog_index,.post_body,.request_today,.pillars,.page_ban,.brand_banner,.results,.we_offer,.post_cta,.marquee{background:transparent !important;}
.we_offer::before,.results::before,.brand_banner::before,.brand_banner::after,.page_ban::after{display:none !important;}

/* light type over the photo */
h1,h2,h3,h4,.fnt72,.fnt80,.fnt56,.fnt32,.fnt24,.our_primary h2.lead_ttl,.lead_ttl{color:#fff !important;}
h5,.fnt20,p,.txt_darkgrey,.speak-with{color:rgba(255,255,255,.82) !important;}
.kicker,.hero_eyebrow{color:rgba(255,255,255,.78) !important;}
.section_intro span,.pillars span,.approach span,.faq_sec span,.home_core span,.our_primary span,.integrate span,.request_today span,.brand_banner span,.page_ban span,.txt_red,.request_today h2{color:#ff6a6f !important;}
.rotator__item{color:#ff8a63 !important;}

/* glass cards */
.pillar,.step_card,.insight_card,.contact_card,.we_offer .card{background:rgba(255,255,255,.1) !important;backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border:1px solid rgba(255,255,255,.22) !important;box-shadow:0 34px 66px -32px rgba(0,0,0,.6) !important;}
.pillar h3,.step_card h4,.insight_body h3,.we_offer .card h4{color:#fff !important;}
.pillar>p,.cap_list li,.step_card p,.insight_body p,.we_offer .card p{color:rgba(255,255,255,.8) !important;}
.cap_list li{border-top-color:rgba(255,255,255,.16) !important;}
.insight_meta{color:rgba(255,255,255,.6) !important;}

/* marquee glass band */
.marquee{background:rgba(255,255,255,.08) !important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);}
.marquee::before,.marquee::after{display:none !important;}
.marquee_track span{color:#fff !important;}.marquee_track b{background:#ff6a6f !important;}

/* stats */
.stat .num{color:#fff !important;}.stat p{color:rgba(255,255,255,.75) !important;}

/* faq glass */
.faq_sec .accordion-item{background:rgba(255,255,255,.07) !important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15) !important;border-radius:14px;margin-bottom:12px;padding:2px 20px;}
.faq_sec .accordion-button{color:#fff !important;}
.faq_sec .accordion-body{color:rgba(255,255,255,.82) !important;}

/* header + footer glass */
header{background:rgba(10,18,30,.34) !important;backdrop-filter:blur(16px) !important;-webkit-backdrop-filter:blur(16px) !important;}
header.scrolled{background:rgba(10,18,30,.62) !important;box-shadow:0 12px 34px -20px rgba(0,0,0,.6);border-bottom:1px solid rgba(255,255,255,.08);}
header .navbar-light .navbar-nav .nav-link{color:#fff !important;}
footer.site_footer{background:rgba(8,14,24,.5) !important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-top:1px solid rgba(255,255,255,.14);}

/* hero uses the single fixed photo */
.glass_hero .gh_bg{display:none;}
.hero_net,.hero_glow{display:none !important;}

/* page banners transparent, taller, white type */
.page_ban{min-height:70vh;}
.page_ban .hero_bg,.page_ban .hero_scrim,.page_ban .hero_grid{display:none !important;}
.page_ban h1,.page_ban h5,.page_ban .text-uppercase{color:#fff !important;opacity:1 !important;}
.page_ban .post_meta,.page_ban .post_back{color:rgba(255,255,255,.85) !important;}
.page_ban .post_tag{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;}

/* blog prose on a readable glass panel */
.post_wrap.prose{background:rgba(10,17,28,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:clamp(24px,4vw,48px);color:rgba(255,255,255,.88);}
.prose h2,.prose h3{color:#fff !important;}.prose a{color:#ff8a63;}
.prose table th{background:rgba(255,255,255,.1);color:#fff;}.prose th,.prose td{border-color:rgba(255,255,255,.16);}

/* buttons on glass */
.btn_white{color:#fff;border-color:rgba(255,255,255,.55);}
.btn_red{color:#fff;border-color:#ff6a6f;}
.btn_red:hover{background:var(--red);border-color:var(--red);}

/* mobile: lighter blur for performance */
@media (max-width:768px){
  .pillar,.step_card,.insight_card,.contact_card,.we_offer .card,.marquee,footer.site_footer,.faq_sec .accordion-item,.glass{backdrop-filter:blur(9px) !important;-webkit-backdrop-filter:blur(9px) !important;}
}

/* =====================================================================
   GLASS READABILITY + POLISH v16b
   fixes dark-text-on-photo (benefit slider, labels) + premium depth
   ===================================================================== */

/* utility: any leftover black/dark text becomes light on the glass theme */
.txt_black{color:#fff !important;}
.txt_darkgrey{color:rgba(255,255,255,.82) !important;}

/* "One team, focused on you" benefit slider -> glass, always legible */
.benefit{border:1px solid transparent;border-radius:14px;}
.benefit h5,.benefit h5.txt_black{color:rgba(255,255,255,.72) !important;transition:color .3s ease;}
.benefit p{color:rgba(255,255,255,.82) !important;}
.benefit.is-active{background:rgba(255,255,255,.12) !important;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-color:rgba(255,120,110,.55) !important;box-shadow:0 26px 52px -28px rgba(0,0,0,.6) !important;}
.benefit.is-active h5,.benefit.is-active h5.txt_black{color:#fff !important;}
.benefit .tick{filter:brightness(0) invert(1);opacity:.45;}
.benefit.is-active .tick{filter:none;opacity:1;}

/* contact form labels + generic intro copy legible on glass */
.contact_card label{color:rgba(255,255,255,.86) !important;}
.section_intro h5{color:rgba(255,255,255,.82) !important;}

/* premium depth: lift big headings + hero type off the photo */
.gh_h1,.glass_hero h1,.our_primary .lead_ttl,.brand_banner h2,.integrate h2,.approach h2,.home_core h2,.request_today h2,.page_ban h1,.results .num{text-shadow:0 2px 34px rgba(0,0,0,.42);}
.rotator__item{text-shadow:0 2px 30px rgba(0,0,0,.35);}
p,.marquee_track span,.benefit h5,.pillar h3,.step_card h4{text-shadow:0 1px 16px rgba(0,0,0,.25);}

/* cross-sell AI band -> glass instead of a solid slab */
.also_ai a{background:rgba(30,7,9,.42) !important;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border:1px solid rgba(255,120,110,.4) !important;}

/* leftover solid dark bands -> transparent so the photo carries through */
.trust_strip{background:rgba(10,4,5,.4) !important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08);}

/* perf: trim blur radius a touch (backdrop-filter is the heaviest paint) */
.pillar,.step_card,.insight_card,.contact_card,.we_offer .card{backdrop-filter:blur(12px) saturate(135%) !important;-webkit-backdrop-filter:blur(12px) saturate(135%) !important;}
.glass{backdrop-filter:blur(13px) saturate(135%) !important;-webkit-backdrop-filter:blur(13px) saturate(135%) !important;}

/* =====================================================================
   v17  AWARD DIRECTION: custom fonts + baby pink + vivid bg + ultra polish
   ===================================================================== */

/* ---- baby pink brand (recolours everything driven by the vars) ---- */
:root{
  --red:      #FF9EC5;   /* baby pink primary accent */
  --red-dark: #F274A4;   /* deeper rose for gradients / hover */
  --red-deep: #D9558A;   /* deepest, for legible pink text on white */
}

/* keep Fraunces for the italic accent words + kinetic bits */
.font_inria,.rotator__item,.marquee_track span,.gh_facts b,.request_today h2 span,.also_ai .t b{font-family:'Fraunces',Georgia,serif !important;}
.marquee_track span{letter-spacing:0;}

/* ---- vivid Cayman background (brighter + saturated, lighter scrim) ---- */
body::before{filter:saturate(1.2) contrast(1.04) brightness(1.05);}
body::after{background:
  radial-gradient(120% 90% at 50% 0%,rgba(7,14,26,.16),rgba(7,14,26,.5) 70%),
  linear-gradient(180deg,rgba(7,14,26,.24),rgba(7,14,26,.5)) !important;}

/* ---- baby pink accents (override the v16 literals) ---- */
.section_intro span,.pillars span,.approach span,.faq_sec span,.home_core span,.our_primary span,.integrate span,.request_today span,.brand_banner span,.page_ban span,.txt_red,.request_today h2,.hero_eyebrow b{color:#FFB0D2 !important;}
.rotator__item{color:#FFB0D2 !important;}
.marquee_track b{background:#FF9EC5 !important;}
.prose a{color:#FFB0D2;}
.benefit.is-active{border-color:rgba(255,158,197,.7) !important;}
.also_ai a{border-color:rgba(255,158,197,.42) !important;}
.ghp_ic{background:linear-gradient(135deg,#FFB0D2,#E86AA0) !important;box-shadow:0 8px 20px -10px rgba(232,106,160,.8);}
.ghp_track i{background:linear-gradient(90deg,#FFC3DE,#E86AA0) !important;box-shadow:0 0 18px rgba(232,106,160,.7) !important;}
.contact_through .icon_circ{background:rgba(255,158,197,.16) !important;}
::selection{background:rgba(255,158,197,.9);color:#3a1024;}
::-moz-selection{background:rgba(255,158,197,.9);color:#3a1024;}
.scroll_prog{background:linear-gradient(90deg,#FFC3DE,#E86AA0) !important;box-shadow:0 0 12px rgba(232,106,160,.55) !important;}
.cursor_ring.grow{background:rgba(255,158,197,.18) !important;border-color:rgba(255,176,210,.8) !important;}

/* ---- buttons: soft pink gradient, always legible ---- */
.gh_btn,.btn_red1{background:linear-gradient(135deg,#FFB0D2,#E86AA0) !important;color:#fff !important;border:0 !important;
  box-shadow:0 16px 34px -14px rgba(232,106,160,.6),inset 0 1px 0 rgba(255,255,255,.35) !important;}
.gh_btn:hover,.btn_red1:hover{background:linear-gradient(135deg,#FFC3DE,#F074A8) !important;color:#fff !important;
  box-shadow:0 22px 44px -14px rgba(232,106,160,.72),inset 0 1px 0 rgba(255,255,255,.4) !important;}
.btn_solid_white{background:#fff !important;color:#D9558A !important;}
.btn_solid_white:hover{background:linear-gradient(135deg,#FFB0D2,#E86AA0) !important;color:#fff !important;border-color:transparent !important;}
.btn_red,.btn_white{color:#fff !important;border-color:rgba(255,176,210,.7) !important;}
.btn_red:hover,.btn_white:hover{background:linear-gradient(135deg,#FFB0D2,#E86AA0) !important;border-color:transparent !important;color:#fff !important;
  box-shadow:0 16px 32px -14px rgba(232,106,160,.5) !important;}
.gh_btn_glass:hover{background:rgba(255,255,255,.24) !important;}

/* ---- ultra polish: refined glass, magical depth ---- */
.glass,.gh_panel,.pillar,.step_card,.insight_card,.contact_card,.we_offer .card{
  border:1px solid rgba(255,255,255,.2) !important;
  box-shadow:0 30px 64px -30px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.28) !important;}
.glass,.gh_panel{background:rgba(255,255,255,.11) !important;}
.ghp_card{border:1px solid rgba(255,255,255,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.25);}
.ghp_card:hover{background:rgba(255,255,255,.24) !important;border-color:rgba(255,176,210,.55);}
/* soft pink aura so the hero feels magical, not flat */
.glass_hero::after{content:"";position:absolute;z-index:1;pointer-events:none;width:60vw;height:60vw;max-width:820px;max-height:820px;
  right:-12%;top:-18%;border-radius:50%;background:radial-gradient(circle,rgba(255,158,197,.28),rgba(255,158,197,0) 66%);filter:blur(20px);}
.glass_hero .container{position:relative;z-index:2;}
/* crisper headline rendering + gentle glow on the accent word */
.gh_h1,.our_primary .lead_ttl,.brand_banner h2{text-shadow:0 2px 40px rgba(0,0,0,.4);}
.rotator__item{text-shadow:0 0 34px rgba(255,158,197,.45),0 2px 24px rgba(0,0,0,.35);}
html{scroll-behavior:smooth;}
/* refined nav underline + brand in pink */
header .navbar-nav .nav-link::after{background:#FFB0D2 !important;}
header .navbar-nav li a.active::before{background:#FFB0D2 !important;}
/* footer accents to pink */
footer.site_footer::before{background:linear-gradient(90deg,transparent,rgba(255,158,197,.9),transparent) !important;}
.site_footer .foot_glow{background:radial-gradient(closest-side,rgba(255,158,197,.26),transparent 70%) !important;}
.site_footer .foot_connect a:hover{background:linear-gradient(135deg,#FFB0D2,#E86AA0) !important;border-color:transparent !important;}

/* mobile: keep the vivid bg + drop the big aura for perf */
@media (max-width:768px){ .glass_hero::after{display:none;} body::before{filter:saturate(1.16) brightness(1.04);} }

/* =====================================================================
   v18  restore original type (Sora + Fraunces) + balanced hero + icons
   ===================================================================== */
/* hero headline: original Sora, professional balance (not oversized) */
.gh_h1{font-family:'Sora',sans-serif !important;font-size:clamp(32px,3.4vw,52px) !important;line-height:1.12 !important;letter-spacing:-.015em !important;font-weight:700 !important;max-width:15ch;}
.gh_sub{font-size:clamp(15px,1.1vw,17px) !important;max-width:440px;}
.gh_eyebrow{font-size:12px;letter-spacing:.22em;}
/* refined solution tiles + clean custom line icons */
.ghp_ic{width:42px;height:42px;border-radius:12px;font-size:0;}
.ghp_ic svg{width:21px;height:21px;stroke:#fff;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.ghp_card{padding:18px 17px 20px;}
.ghp_card b{font-size:15px;margin-top:2px;letter-spacing:-.01em;}
.ghp_card small{font-size:12px;}
.ghp_title{font-size:22px;}

/* =====================================================================
   v20  tick marks to baby pink (inline data-uri = cache-proof)
   ===================================================================== */
.cap_list li::before,.benefit.is-active .tick{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ccircle cx='16' cy='16' r='16' fill='%23F274A4'/%3E%3Cpath d='M9 16.5 14 21.5 23 10.5' fill='none' stroke='%23ffffff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;}

/* =====================================================================
   v21  kill remaining reds + optimize mobile dropdown
   ===================================================================== */
/* FAQ Q&A dropdown chevron -> baby pink (data-uri = cache-proof) */
.faq_sec .accordion-button::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none'%3E%3Ccircle cx='20' cy='20' r='19' stroke='%23FFB0D2' stroke-width='1.4'/%3E%3Cpath d='M13 17 20 24 27 17' stroke='%23FFB0D2' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;}
.faq_sec .accordion-button:not(.collapsed){color:#FFB0D2 !important;}

/* form focus ring -> pink (was red) */
.contact_card .form-control:focus,.contact_card .form-select:focus{border-color:#F274A4 !important;box-shadow:0 0 0 3px rgba(255,158,197,.25) !important;}

/* ---- mobile dropdown: dark frosted glass, baby pink, tighter layout ---- */
@media (max-width:991px){
  header .navbar-collapse{background:rgba(9,14,24,.94) !important;backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%);padding:100px 30px 44px !important;border-left:1px solid rgba(255,255,255,.08);}
  header .navbar-collapse::before{background:radial-gradient(circle,rgba(255,158,197,.3),transparent 70%) !important;}
  header .navbar-light .navbar-nav .nav-link{font-size:26px !important;line-height:1.12 !important;padding:15px 2px !important;font-weight:400;border-bottom:1px solid rgba(255,255,255,.1);}
  header .navbar-light .navbar-nav .nav-link.active{color:#FFB0D2 !important;}
  header .nav_cta{margin-top:24px !important;border-radius:40px;}
  .menu_meta{margin-top:32px;}
  .menu_meta a{font-size:17px;}
}
@media (max-width:480px){
  header .navbar-light .navbar-nav .nav-link{font-size:23px !important;padding:13px 2px !important;}
  header .navbar-collapse{padding:92px 24px 38px !important;}
}

/* =====================================================================
   v22  LIGHT PINK THEME  (matches reference mockup) - flips dark to bright
   ===================================================================== */
/* ---- background: soft pink aurora, no photo ---- */
html{background:#fff6fa;}
body{background:transparent !important;color:#5f4b56 !important;}
body::before{filter:none !important;background:
  radial-gradient(50% 45% at 85% 6%, rgba(255,188,219,.6), transparent 60%),
  radial-gradient(55% 55% at 8% 92%, rgba(255,201,228,.6), transparent 62%),
  radial-gradient(45% 40% at 55% 48%, rgba(255,226,240,.55), transparent 72%),
  linear-gradient(160deg,#fff6fa 0%,#ffeaf3 45%,#ffdcea 100%) !important;}
body::after{background:none !important;}

/* ---- text: dark on light ---- */
h1,h2,h3,h4,h5,h6,.fnt72,.fnt80,.fnt56,.fnt32,.fnt24,.lead_ttl,.our_primary h2.lead_ttl,.gh_h1{color:#241820 !important;text-shadow:none !important;}
p,.fnt20,.txt_darkgrey,.speak-with,.gh_sub{color:#5f4b56 !important;text-shadow:none !important;}
.kicker,.hero_eyebrow,.gh_eyebrow{color:#b06a89 !important;}
.section_intro span,.pillars span,.approach span,.faq_sec span,.home_core span,.our_primary span,.integrate span,.request_today span,.brand_banner span,.page_ban span,.txt_red,.request_today h2,.gh_accent,.rotator__item{color:#EC5C93 !important;text-shadow:none !important;}

/* ---- glass -> light frosted white cards ---- */
.glass,.gh_panel,.pillar,.step_card,.insight_card,.contact_card,.we_offer .card{
  background:rgba(255,255,255,.66) !important;backdrop-filter:blur(16px) saturate(120%) !important;-webkit-backdrop-filter:blur(16px) saturate(120%) !important;
  border:1px solid rgba(255,255,255,.85) !important;
  box-shadow:0 26px 54px -30px rgba(226,106,160,.42),inset 0 1px 0 rgba(255,255,255,.9) !important;}
.pillar h3,.step_card h4,.insight_body h3,.we_offer .card h4{color:#241820 !important;}
.pillar>p,.cap_list li,.step_card p,.insight_body p,.we_offer .card p{color:#6a5560 !important;}
.cap_list li{border-top-color:rgba(0,0,0,.07) !important;}
.insight_meta{color:#9a7d8a !important;}

/* ---- header light ---- */
header{background:rgba(255,255,255,.72) !important;backdrop-filter:blur(16px) saturate(140%) !important;-webkit-backdrop-filter:blur(16px) saturate(140%) !important;box-shadow:0 6px 24px -18px rgba(226,106,160,.5) !important;}
header.scrolled{background:rgba(255,255,255,.9) !important;box-shadow:0 10px 30px -18px rgba(226,106,160,.4) !important;border-bottom:1px solid rgba(236,92,147,.12) !important;}
header .navbar-light .navbar-nav .nav-link{color:#3a2a32 !important;}
header .navbar-nav .nav-link::after{background:#EC5C93 !important;}
header .navbar-nav li a.active::before{background:#EC5C93 !important;}

/* ---- hero: drop dark scrim, dark type ---- */
.gh_scrim{display:none !important;}
.gh_facts b{color:#241820 !important;}.gh_facts span{color:#8a6f7b !important;}.gh_facts>div{border-right-color:rgba(0,0,0,.1) !important;}
.gh_scroll{border-color:rgba(0,0,0,.28) !important;}.gh_scroll span{background:#c23a6e !important;}
.glass_hero::after{background:radial-gradient(circle,rgba(255,158,197,.4),rgba(255,158,197,0) 66%) !important;}
/* solution panel light */
.ghp_title{color:#241820 !important;}
.ghp_card{background:rgba(255,255,255,.72) !important;border:1px solid rgba(255,255,255,.9) !important;box-shadow:0 10px 24px -16px rgba(226,106,160,.4) !important;}
.ghp_card:hover{background:#fff !important;border-color:rgba(236,92,147,.35) !important;}
.ghp_card b{color:#241820 !important;}.ghp_card small{color:#8a6f7b !important;}
.ghp_bar{background:rgba(255,255,255,.72) !important;border:1px solid rgba(255,255,255,.9) !important;}
.ghp_bar_top,.ghp_bar_top b{color:#241820 !important;}
.ghp_bar small{color:#8a6f7b !important;}
.ghp_track{background:rgba(0,0,0,.06) !important;}

/* ---- marquee light ---- */
.marquee{background:rgba(255,255,255,.5) !important;border-top:1px solid rgba(255,255,255,.8) !important;border-bottom:1px solid rgba(255,255,255,.8) !important;}
.marquee_track span{color:#a34e7a !important;text-shadow:none !important;}
.marquee_track b{background:#EC5C93 !important;}

/* ---- stats ---- */
.stat .num{color:#241820 !important;}.stat p{color:#6a5560 !important;}

/* ---- benefit slider light (active = white card) ---- */
.benefit h5,.benefit h5.txt_black{color:#6a5560 !important;text-shadow:none !important;}
.benefit.is-active{background:#fff !important;border-color:rgba(236,92,147,.5) !important;box-shadow:0 22px 46px -26px rgba(226,106,160,.5) !important;}
.benefit.is-active h5,.benefit.is-active h5.txt_black{color:#241820 !important;}
.benefit p{color:#6a5560 !important;}
.benefit .tick{filter:none !important;opacity:.5;}
.benefit.is-active .tick{opacity:1;}

/* ---- FAQ light ---- */
.faq_sec .accordion-item{background:rgba(255,255,255,.62) !important;border:1px solid rgba(255,255,255,.85) !important;}
.faq_sec .accordion-button{color:#241820 !important;}
.faq_sec .accordion-button:not(.collapsed){color:#EC5C93 !important;}
.faq_sec .accordion-body{color:#6a5560 !important;}
.faq_sec .accordion-button::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40' fill='none'%3E%3Ccircle cx='20' cy='20' r='19' stroke='%23EC5C93' stroke-width='1.4'/%3E%3Cpath d='M13 17 20 24 27 17' stroke='%23EC5C93' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;}

/* ---- forms / intro ---- */
.contact_card label{color:#3a2a32 !important;}
.section_intro h5{color:#6a5560 !important;}

/* ---- page banners light ---- */
.page_ban h1,.page_ban h5,.page_ban .text-uppercase{color:#241820 !important;}
.page_ban .post_meta,.page_ban .post_back{color:#6a5560 !important;}
.page_ban .post_tag{background:rgba(236,92,147,.12) !important;border:1px solid rgba(236,92,147,.3) !important;color:#c23a6e !important;}

/* ---- blog prose light ---- */
.post_wrap.prose{background:rgba(255,255,255,.72) !important;border:1px solid rgba(255,255,255,.85) !important;color:#4a3a42 !important;}
.prose h2,.prose h3{color:#241820 !important;}
.prose a{color:#EC5C93 !important;}
.prose table th{background:rgba(236,92,147,.1) !important;color:#241820 !important;}
.prose th,.prose td{border-color:rgba(0,0,0,.1) !important;}

/* ---- cross-sell band light ---- */
.also_ai a{background:rgba(255,255,255,.66) !important;border:1px solid rgba(255,255,255,.85) !important;box-shadow:0 22px 46px -28px rgba(226,106,160,.4) !important;}
.also_ai .t,.also_ai .t b{color:#241820 !important;}.also_ai .s{color:#6a5560 !important;}

/* ---- buttons: pink gradient (primary) + tinted ghost ---- */
.btn_white,.btn_red{color:#c23a6e !important;border-color:rgba(236,92,147,.5) !important;}
.btn_white:hover,.btn_red:hover{background:linear-gradient(135deg,#FFB0D2,#E86AA0) !important;color:#fff !important;border-color:transparent !important;}
.gh_btn_glass{background:rgba(255,255,255,.62) !important;color:#c23a6e !important;border:1px solid rgba(236,92,147,.4) !important;}
.gh_btn_glass:hover{background:#fff !important;color:#c23a6e !important;}
.btn_solid_white{background:linear-gradient(135deg,#FFB0D2,#E86AA0) !important;color:#fff !important;border:0 !important;}
.btn_solid_white:hover{background:linear-gradient(135deg,#FFC3DE,#F074A8) !important;color:#fff !important;}

/* ---- cursor + corner ticks visible on light ---- */
.cursor_dot{background:#E86AA0 !important;box-shadow:0 0 10px rgba(236,92,147,.5) !important;}
.cursor_ring{border-color:rgba(236,92,147,.5) !important;}
.frame .tick{border-color:rgba(236,92,147,.5) !important;}

/* ---- footer: deep rose anchor, white text + white logo ---- */
footer.site_footer{background:linear-gradient(160deg,#e85f97 0%,#c23a6e 60%,#9c2a56 100%) !important;backdrop-filter:none !important;border-top:1px solid rgba(255,255,255,.3) !important;}
footer.site_footer::before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent) !important;}
.site_footer .foot_glow{background:radial-gradient(closest-side,rgba(255,255,255,.16),transparent 70%) !important;}
.site_footer .foot_brand p{color:rgba(255,255,255,.82) !important;}
.site_footer h6{color:rgba(255,255,255,.95) !important;}
.site_footer .foot_col a{color:rgba(255,255,255,.82) !important;}
.site_footer .foot_col a:hover{color:#fff !important;}
.site_footer .foot_contact a{color:#fff !important;}
.site_footer .foot_contact p{color:rgba(255,255,255,.7) !important;}
.site_footer .foot_connect a{border-color:rgba(255,255,255,.4) !important;}
.site_footer .foot_connect a:hover{background:#fff !important;border-color:#fff !important;}
.site_footer .foot_connect a:hover svg{fill:#c23a6e !important;}
.site_footer .foot_connect svg{fill:#fff !important;}
.site_footer .foot_bottom{border-top-color:rgba(255,255,255,.22) !important;color:rgba(255,255,255,.8) !important;}
.site_footer .foot_cta .kicker{color:rgba(255,255,255,.85) !important;}
.site_footer .foot_cta h3{color:#fff !important;}
.site_footer .btn_solid_white{background:#fff !important;color:#c23a6e !important;}
.site_footer .btn_solid_white:hover{background:#fff !important;color:#9c2a56 !important;}

/* ---- mobile menu light ---- */
@media (max-width:991px){
  header .navbar-collapse{background:rgba(255,246,250,.97) !important;backdrop-filter:blur(22px) !important;-webkit-backdrop-filter:blur(22px) !important;border-left:1px solid rgba(236,92,147,.15) !important;}
  header .navbar-collapse::before{background:radial-gradient(circle,rgba(255,158,197,.45),transparent 70%) !important;}
  header .navbar-light .navbar-nav .nav-link{color:#3a2a32 !important;border-bottom:1px solid rgba(0,0,0,.08) !important;}
  header .navbar-light .navbar-nav .nav-link.active{color:#EC5C93 !important;}
  .menu_meta .lbl{color:#a06a82 !important;}
  .menu_meta a{color:#241820 !important;}
  .menu_meta p{color:#6a5560 !important;}
}

/* =====================================================================
   v23  NO DARK ANYWHERE : footer + intro to baby pink
   ===================================================================== */
/* ---- footer: soft baby pink (was deep rose) ---- */
footer.site_footer{background:linear-gradient(160deg,#ffe6f1 0%,#ffd4e7 100%) !important;border-top:1px solid rgba(236,92,147,.18) !important;}
footer.site_footer::before{background:linear-gradient(90deg,transparent,rgba(236,92,147,.5),transparent) !important;}
.site_footer .foot_glow{background:radial-gradient(closest-side,rgba(255,158,197,.35),transparent 70%) !important;}
.site_footer .foot_cta .kicker{color:#b06a89 !important;}
.site_footer .foot_cta h3{color:#241820 !important;}
.site_footer .foot_brand p{color:#6a5560 !important;}
.site_footer h6{color:#a34e7a !important;}
.site_footer .foot_col a{color:#6a5560 !important;}
.site_footer .foot_col a:hover{color:#c23a6e !important;}
.site_footer .foot_contact a{color:#3a2a32 !important;}
.site_footer .foot_contact p{color:#8a6f7b !important;}
.site_footer .foot_connect a{border-color:rgba(236,92,147,.35) !important;}
.site_footer .foot_connect a:hover{background:linear-gradient(135deg,#FFB0D2,#E86AA0) !important;border-color:transparent !important;}
.site_footer .foot_connect a:hover svg{fill:#fff !important;}
.site_footer .foot_connect svg{fill:#c23a6e !important;}
.site_footer .foot_bottom{border-top-color:rgba(236,92,147,.2) !important;color:#8a6f7b !important;}
.site_footer .foot_bottom a{color:#8a6f7b !important;}
.site_footer .foot_bottom a:hover{color:#c23a6e !important;}
.site_footer .btn_solid_white{background:linear-gradient(135deg,#FFB0D2,#E86AA0) !important;color:#fff !important;}
.site_footer .btn_solid_white:hover{background:linear-gradient(135deg,#FFC3DE,#F074A8) !important;color:#fff !important;}

/* ---- intro splash: baby pink, not dark ---- */
.intro{background:linear-gradient(150deg,#FFB6D5 0%,#F274A4 100%) !important;}
.intro .intro_line{background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent) !important;}

/* ---- corner label visible on light ---- */
.frame_label{color:rgba(180,90,130,.85) !important;}
.frame .tick{border-color:rgba(236,92,147,.45) !important;}

/* =====================================================================
   v24  mobile fixes: guaranteed visibility + right-sized solution cards
   ===================================================================== */
@media (max-width:768px){
  /* never hide text behind scroll animations on phones (Weekly, stats, etc.) */
  [data-aos]{opacity:1 !important;transform:none !important;}
  /* solutions panel: tighter type so titles + subtitles always fit */
  .gh_panel{padding:20px;}
  .ghp_grid{gap:10px;}
  .ghp_title{font-size:20px;}
  .ghp_card{padding:14px 13px;}
  .ghp_ic{width:34px;height:34px;border-radius:10px;}
  .ghp_ic svg{width:17px;height:17px;}
  .ghp_card b{font-size:13px;line-height:1.22;}
  .ghp_card small{font-size:10.5px;line-height:1.3;margin-top:4px;}
}

/* =====================================================================
   v25  TYPOGRAPHY BALANCE : right-size fonts on every page + stop shake
   ===================================================================== */
/* stat numbers: fit long labels (SEO+GEO+AEO, iOS + Android) without breaking */
.stat .num{font-size:clamp(28px,3vw,42px) !important;line-height:1.06 !important;letter-spacing:-.01em;word-break:normal;overflow-wrap:anywhere;}
/* trim the largest desktop display sizes */
.fnt80{font-size:60px !important;}
.fnt72{font-size:54px !important;}
/* stop the shake: rotating hero word must never wrap / change height */
.rotator{overflow:hidden !important;}
.rotator__item{white-space:nowrap !important;}

@media (max-width:991px){
  .fnt80{font-size:42px !important;}
  h1,.fnt72{font-size:38px !important;}
  h2,.fnt56{font-size:32px !important;}
}
@media (max-width:768px){
  h1,.fnt72{font-size:31px !important;line-height:1.15 !important;}
  h2,.fnt56{font-size:26px !important;line-height:1.2 !important;}
  h3,.fnt32{font-size:20px !important;line-height:1.3 !important;}
  h4,.fnt24{font-size:17px !important;}
  .fnt80{font-size:29px !important;line-height:1.15 !important;}
  .our_primary h2.lead_ttl,.lead_ttl{font-size:26px !important;line-height:1.18 !important;}
  .rotator{height:36px !important;}
  .rotator__item{font-size:26px !important;line-height:1.18 !important;}
  .page_ban h1{font-size:27px !important;line-height:1.18 !important;}
  .gh_h1{font-size:28px !important;line-height:1.18 !important;}
  .gh_sub,.fnt20{font-size:15px !important;}
  .stat .num{font-size:26px !important;}
  .ghp_title{font-size:19px !important;}
}
@media (max-width:480px){
  h1,.fnt72{font-size:27px !important;}
  .fnt80,.our_primary h2.lead_ttl,.rotator__item{font-size:24px !important;}
  .rotator{height:32px !important;}
  .gh_h1{font-size:25px !important;}
  .stat .num{font-size:23px !important;}
}

/* =====================================================================
   v26  page-banner illustrations (marketing + ai)
   ===================================================================== */
.page_ban .ban_split{width:100%;}
.ban_art{max-height:440px;width:auto;max-width:100%;border-radius:22px;box-shadow:0 34px 74px -32px rgba(226,106,160,.55);}
@media (max-width:991px){.ban_art{max-height:330px;}}
@media (max-width:768px){.ban_art{max-height:280px;border-radius:18px;}}

/* =====================================================================
   v27  home hero: pink globe background + parallax + light scrim
   ===================================================================== */
.glass_hero .gh_bg{display:block !important;background:url(/assets/img/home-hero.jpg) center center/cover no-repeat !important;background-attachment:fixed !important;}
.glass_hero .gh_scrim{display:block !important;background:linear-gradient(90deg,rgba(255,244,249,.93) 0%,rgba(255,244,249,.66) 40%,rgba(255,244,249,.3) 70%,rgba(255,244,249,.06) 100%) !important;}
@media (max-width:768px){
  .glass_hero .gh_bg{background-attachment:scroll !important;background-position:center top !important;}
  .glass_hero .gh_scrim{background:linear-gradient(180deg,rgba(255,244,249,.86) 0%,rgba(255,244,249,.5) 50%,rgba(255,244,249,.2) 100%) !important;}
}

/* v28  contact channel heading + icons readable pink */
.contact_through .call-mail{color:#E1568D !important;}

/* =====================================================================
   v29  globe pinned as fixed parallax background on ALL pages
   ===================================================================== */
html{background:#ffe9f2;}
body::before{background:url(/assets/img/home-hero.jpg) center center/cover no-repeat !important;}
body::after{background:linear-gradient(180deg,rgba(255,242,248,.5) 0%,rgba(255,242,248,.62) 55%,rgba(255,242,248,.72) 100%) !important;}
/* home hero now shares the single fixed globe (drop its own layer) */
.glass_hero .gh_bg{display:none !important;}
@media (max-width:768px){
  body::before{background-position:center top !important;}
}

/* =====================================================================
   v30  glassier see-through cards + darker high-contrast text
   ===================================================================== */
/* cards -> real frosted glass over the globe background */
.glass,.gh_panel,.pillar,.step_card,.insight_card,.contact_card,.we_offer .card,.ghp_card,.ghp_bar,.faq_sec .accordion-item,.also_ai a{
  background:rgba(255,255,255,.46) !important;
  backdrop-filter:blur(22px) saturate(150%) !important;-webkit-backdrop-filter:blur(22px) saturate(150%) !important;
  border:1px solid rgba(255,255,255,.62) !important;
  box-shadow:0 30px 62px -32px rgba(198,74,126,.42),inset 0 1px 0 rgba(255,255,255,.85) !important;
}
.gh_panel{background:rgba(255,255,255,.42) !important;}
.benefit.is-active{background:rgba(255,255,255,.55) !important;backdrop-filter:blur(20px) saturate(150%) !important;-webkit-backdrop-filter:blur(20px) saturate(150%) !important;border:1px solid rgba(236,92,147,.55) !important;}

/* darker, easy-to-read text everywhere */
h1,h2,h3,h4,h5,h6,.fnt72,.fnt80,.fnt56,.fnt32,.fnt24,.lead_ttl,.our_primary h2.lead_ttl,.gh_h1,.pillar h3,.step_card h4,.insight_body h3,.we_offer .card h4,.ghp_card b,.ghp_title,.stat .num,.gh_facts b,.faq_sec .accordion-button,.ghp_bar_top,.ghp_bar_top b{color:#130a0f !important;}
p,.fnt20,.txt_darkgrey,.gh_sub,.pillar>p,.cap_list li,.step_card p,.ghp_card small,.benefit p,.insight_body p,.we_offer .card p,.faq_sec .accordion-body,.stat p,.contact_card label,.speak-with,.section_intro h5{color:#382832 !important;}
.benefit h5,.benefit h5.txt_black{color:#5a4550 !important;}
.benefit.is-active h5,.benefit.is-active h5.txt_black{color:#130a0f !important;}

/* =====================================================================
   v31  DARK ILLUMINATED GLASS + super-white text over the globe
   ===================================================================== */
/* dim the globe so bright white text reads */
body::after{background:linear-gradient(180deg,rgba(24,9,17,.52) 0%,rgba(24,9,17,.64) 55%,rgba(22,8,15,.72) 100%) !important;}

/* illuminated glass: glowing frame + light bloom inside */
.glass,.gh_panel,.pillar,.step_card,.insight_card,.contact_card,.we_offer .card,.ghp_card,.ghp_bar,.faq_sec .accordion-item,.also_ai a,.benefit.is-active,.marquee{
  background:radial-gradient(130% 90% at 50% 0%, rgba(255,255,255,.18), rgba(255,255,255,0) 62%), rgba(34,14,26,.42) !important;
  backdrop-filter:blur(22px) saturate(150%) !important;-webkit-backdrop-filter:blur(22px) saturate(150%) !important;
  border:1px solid rgba(255,255,255,.5) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7), inset 0 0 34px rgba(255,255,255,.15), 0 0 24px rgba(255,190,214,.24), 0 30px 60px -30px rgba(0,0,0,.6) !important;}
.gh_panel{background:radial-gradient(130% 80% at 50% 0%, rgba(255,255,255,.16), rgba(255,255,255,0) 60%), rgba(30,12,22,.4) !important;}
.benefit.is-active{border-color:rgba(255,150,190,.7) !important;}
.ghp_card:hover{background:radial-gradient(130% 90% at 50% 0%, rgba(255,255,255,.26), rgba(255,255,255,0) 62%), rgba(40,16,30,.5) !important;border-color:rgba(255,255,255,.7) !important;}

/* super-white bright text */
h1,h2,h3,h4,h5,h6,.fnt72,.fnt80,.fnt56,.fnt32,.fnt24,.lead_ttl,.our_primary h2.lead_ttl,.gh_h1,.pillar h3,.step_card h4,.insight_body h3,.we_offer .card h4,.ghp_card b,.ghp_title,.stat .num,.gh_facts b,.faq_sec .accordion-button,.ghp_bar_top,.ghp_bar_top b{color:#ffffff !important;text-shadow:0 2px 22px rgba(0,0,0,.45) !important;}
p,.fnt20,.txt_darkgrey,.gh_sub,.pillar>p,.cap_list li,.step_card p,.ghp_card small,.benefit p,.insight_body p,.we_offer .card p,.faq_sec .accordion-body,.stat p,.contact_card label,.speak-with,.section_intro h5,.marquee_track span{color:rgba(255,255,255,.94) !important;text-shadow:0 1px 12px rgba(0,0,0,.35) !important;}
.kicker,.hero_eyebrow,.gh_eyebrow{color:rgba(255,255,255,.82) !important;}
.gh_facts>div{border-right-color:rgba(255,255,255,.22) !important;}.gh_facts span{color:rgba(255,255,255,.78) !important;}
.cap_list li{border-top-color:rgba(255,255,255,.18) !important;}
.benefit h5,.benefit h5.txt_black{color:rgba(255,255,255,.72) !important;}
.benefit.is-active h5,.benefit.is-active h5.txt_black{color:#fff !important;}
.marquee_track b{background:#FFB0D2 !important;}

/* hero headline scrim */
.glass_hero .gh_scrim{background:linear-gradient(90deg,rgba(16,6,12,.62) 0%,rgba(16,6,12,.32) 55%,rgba(16,6,12,.05) 100%) !important;}

/* ghost buttons on dark */
.gh_btn_glass,.btn_white,.btn_red{background:rgba(255,255,255,.14) !important;color:#fff !important;border:1px solid rgba(255,255,255,.45) !important;}
.gh_btn_glass:hover,.btn_white:hover,.btn_red:hover{background:rgba(255,255,255,.24) !important;color:#fff !important;border-color:rgba(255,255,255,.7) !important;}

/* header -> dark illuminated glass */
header{background:rgba(22,9,16,.5) !important;backdrop-filter:blur(18px) saturate(140%) !important;-webkit-backdrop-filter:blur(18px) saturate(140%) !important;box-shadow:0 8px 30px -18px rgba(0,0,0,.6) !important;border-bottom:1px solid rgba(255,255,255,.08) !important;}
header.scrolled{background:rgba(18,7,13,.76) !important;}
header .navbar-light .navbar-nav .nav-link{color:rgba(255,255,255,.92) !important;}

/* footer -> dark illuminated glass */
footer.site_footer{background:linear-gradient(180deg,rgba(32,13,23,.74) 0%,rgba(18,7,13,.88) 100%) !important;border-top:1px solid rgba(255,255,255,.12) !important;}
footer.site_footer::before{background:linear-gradient(90deg,transparent,rgba(255,180,208,.7),transparent) !important;}
.site_footer .foot_cta .kicker{color:rgba(255,255,255,.82) !important;}
.site_footer .foot_cta h3,.site_footer h6{color:#fff !important;}
.site_footer .foot_brand p,.site_footer .foot_col a,.site_footer .foot_contact p{color:rgba(255,255,255,.82) !important;}
.site_footer .foot_col a:hover,.site_footer .foot_contact a{color:#fff !important;}
.site_footer .foot_connect a{border-color:rgba(255,255,255,.35) !important;}
.site_footer .foot_connect svg{fill:#fff !important;}
.site_footer .foot_bottom{border-top-color:rgba(255,255,255,.2) !important;color:rgba(255,255,255,.8) !important;}
.site_footer .btn_solid_white{background:#fff !important;color:#c23a6e !important;}

/* mobile menu -> dark glass */
@media (max-width:991px){
  header .navbar-collapse{background:rgba(18,7,13,.95) !important;}
  header .navbar-light .navbar-nav .nav-link{color:rgba(255,255,255,.92) !important;border-bottom:1px solid rgba(255,255,255,.1) !important;}
  .menu_meta a{color:#fff !important;}.menu_meta p{color:rgba(255,255,255,.8) !important;}
}

/* =====================================================================
   v31b  fix: white banner headings + stronger dim so white always reads
   ===================================================================== */
.page_ban h1,.page_ban h5,.page_ban .text-uppercase,.page_ban .post_meta,.page_ban .post_back{color:#ffffff !important;text-shadow:0 2px 22px rgba(0,0,0,.5) !important;}
.page_ban .post_tag{background:rgba(255,255,255,.16) !important;border:1px solid rgba(255,255,255,.34) !important;color:#fff !important;}
/* dim the globe a bit more so bright-white text reads over light spots too */
body::after{background:linear-gradient(180deg,rgba(20,7,13,.6) 0%,rgba(18,6,12,.74) 100%) !important;}
/* slightly more opaque glass so white text keeps contrast over light areas */
.glass,.gh_panel,.pillar,.step_card,.insight_card,.contact_card,.we_offer .card,.ghp_card,.ghp_bar,.faq_sec .accordion-item,.also_ai a,.benefit.is-active,.marquee{
  background:radial-gradient(130% 90% at 50% 0%, rgba(255,255,255,.17), rgba(255,255,255,0) 60%), rgba(28,11,20,.52) !important;}

/* =====================================================================
   v32  3D depth: floating hero art + richer illuminated glass hover
   ===================================================================== */
@keyframes iv_float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.ban_art{animation:iv_float 6.5s ease-in-out infinite;}
.tilt3d{position:relative;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease,border-color .3s ease;will-change:transform;}
.tilt3d:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 0 0 46px rgba(255,255,255,.22),0 0 40px rgba(255,180,210,.45),0 44px 80px -34px rgba(0,0,0,.72) !important;border-color:rgba(255,255,255,.8) !important;}
.tilt_glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s ease;background:radial-gradient(220px circle at var(--gx,50%) var(--gy,50%),rgba(255,255,255,.4),rgba(255,255,255,0) 60%);mix-blend-mode:screen;}
.tilt3d:hover .tilt_glare{opacity:1;}
@media (prefers-reduced-motion:reduce){.ban_art{animation:none;}}
@media (max-width:768px){.ban_art{animation:none;}}

/* =====================================================================
   v33  fix dark-on-dark leftovers (AI card + contact phone/email)
   ===================================================================== */
.also_ai .t,.also_ai .t b,.also_ai .go{color:#ffffff !important;}
.also_ai .s{color:rgba(255,255,255,.85) !important;}
.contact_through p{color:rgba(255,255,255,.9) !important;}
.contact_through .call-mail{color:#FFB0D2 !important;}

/* =====================================================================
   v34  max brightness: pure-white text everywhere (match the AI card)
   ===================================================================== */
p,.fnt20,.txt_darkgrey,.gh_sub,.pillar>p,.cap_list li,.step_card p,.benefit p,.insight_body p,.we_offer .card p,.faq_sec .accordion-body,.stat p,.contact_card label,.speak-with,.section_intro h5,.marquee_track span,.also_ai .s,.contact_through p{color:#ffffff !important;}
.kicker,.hero_eyebrow,.gh_eyebrow,.gh_facts span,.ghp_card small,.insight_meta,.post_meta,.benefit h5,.benefit h5.txt_black{color:rgba(255,255,255,.92) !important;}
.site_footer .foot_brand p,.site_footer .foot_col a,.site_footer .foot_contact p,.site_footer .foot_bottom,.site_footer .foot_bottom p{color:rgba(255,255,255,.92) !important;}

/* =====================================================================
   v35  softer, slightly dimmer background (gentle blur + more scrim)
   ===================================================================== */
body::before{filter:blur(3px) brightness(.9) !important;transform:scale(1.05) !important;}
body::after{background:linear-gradient(180deg,rgba(19,7,12,.64) 0%,rgba(16,6,11,.78) 100%) !important;}

/* =====================================================================
   v36  globe + phone visible again: drop blur, ease the dim
   ===================================================================== */
body::before{filter:brightness(.97) !important;transform:none !important;}
body::after{background:linear-gradient(180deg,rgba(18,7,12,.5) 0%,rgba(16,6,11,.66) 100%) !important;}
