/* =========================================================
   FULFILIX CONTACT V3 — HOME PAGE MATCH
   Loaded after home-v2.css. Old fx-* hooks stay intact.
   ========================================================= */
body.home-v2.contact-home-page{
  --ff-bg:#07070d;--ff-bg-2:#0b0914;--ff-bg-3:#100c1d;
  --ff-surface:rgba(18,13,34,.78);--ff-surface-2:rgba(24,17,45,.90);
  --ff-line:rgba(155,111,255,.18);--ff-line-hi:rgba(186,139,255,.38);
  --ff-text:#f8f7ff;--ff-muted:#a9a0bd;--ff-muted-2:#7f7694;
  --ff-purple:#7c3aed;--ff-violet:#9b5cff;--ff-pink:#d94cb9;
  background:#07070d!important;color:var(--ff-text)!important;
}
body.home-v2.contact-home-page,body.home-v2.contact-home-page *{box-sizing:border-box}
body.home-v2.contact-home-page .contact-home-main{position:relative;overflow:clip;isolation:isolate}
body.home-v2.contact-home-page .contact-home-main:before{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(58% 42% at 84% 4%,rgba(103,44,225,.25),transparent 72%),radial-gradient(40% 36% at 4% 18%,rgba(168,85,247,.12),transparent 72%),radial-gradient(56% 40% at 50% 100%,rgba(76,29,149,.16),transparent 72%),#07070d}
body.home-v2.contact-home-page .contact-home-main:after{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.34;background-image:linear-gradient(rgba(142,99,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(142,99,255,.03) 1px,transparent 1px);background-size:72px 72px;mask-image:radial-gradient(90% 70% at 55% 0%,#000 0%,rgba(0,0,0,.7) 45%,transparent 82%)}

/* Same desktop shell feeling as index.php */
body.home-v2.contact-home-page .ffc-shell.container{width:min(1380px,calc(100% - 48px))!important;max-width:1380px!important;margin-inline:auto!important;padding-inline:0!important}
body.home-v2.contact-home-page .ffc-hero.page-shell{min-height:0!important;padding:186px 0 48px!important;margin:0!important;background:transparent!important}
body.home-v2.contact-home-page .ffc-contact{padding:0 0 82px!important}

/* Hero */
body.home-v2.contact-home-page .ffc-hero-grid{display:grid!important;grid-template-columns:minmax(0,1fr) 220px!important;gap:64px!important;align-items:end!important}
body.home-v2.contact-home-page .ffc-hero-copy.page-head{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;text-align:left!important}
body.home-v2.contact-home-page .ffc-eyebrow{display:inline-flex!important;align-items:center!important;min-height:31px!important;margin:0 0 18px!important;padding:0 14px!important;border:1px solid rgba(155,111,255,.25)!important;border-radius:999px!important;color:#bda9dc!important;background:rgba(124,58,237,.07)!important;font:700 10px/1 'JetBrains Mono',monospace!important;letter-spacing:.13em!important;text-transform:uppercase!important}
body.home-v2.contact-home-page .ffc-hero h1{width:100%!important;max-width:none!important;margin:0!important;color:#fff!important;font:800 clamp(43px,4vw,64px)/1.035 'Poppins',sans-serif!important;letter-spacing:-.052em!important;text-wrap:initial!important}
body.home-v2.contact-home-page .ffc-hero h1 span{background:linear-gradient(92deg,#9b5cff 0%,#a855f7 54%,#d94cb9 100%)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important}
@media(min-width:1100px){body.home-v2.contact-home-page .ffc-hero h1{white-space:nowrap!important}}
body.home-v2.contact-home-page .ffc-hero-copy>p{max-width:800px!important;margin:18px 0 0!important;color:#aaa1b9!important;font:400 16px/1.7 'Inter',sans-serif!important}
body.home-v2.contact-home-page .ffc-hero-note{min-height:82px!important;padding-left:24px!important;border-left:1px solid rgba(155,111,255,.20)!important;color:#8c8398!important;font:500 12px/1.55 'Inter',sans-serif!important}
body.home-v2.contact-home-page .ffc-hero-note strong{color:#d9d1e4!important;font-weight:600!important}
body.home-v2.contact-home-page .ffc-hero-note i{background:linear-gradient(90deg,#7c3aed,#d94cb9)!important}

/* Main grid */
body.home-v2.contact-home-page .ffc-contact-grid.contact-grid{display:grid!important;grid-template-columns:minmax(0,1.16fr) minmax(390px,.84fr)!important;gap:18px!important;align-items:start!important;margin:0!important}
body.home-v2.contact-home-page .ffc-panel,body.home-v2.contact-home-page .ffc-info-card{border:1px solid rgba(155,111,255,.16)!important;background:radial-gradient(600px 230px at 15% 0%,rgba(124,58,237,.075),transparent 68%),linear-gradient(145deg,rgba(18,13,34,.88),rgba(8,7,14,.84))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 28px 54px -44px rgba(0,0,0,.92)!important;backdrop-filter:blur(16px)!important}
body.home-v2.contact-home-page .ffc-panel{border-radius:22px!important}
body.home-v2.contact-home-page .ffc-form-card.form-panel{padding:28px!important;overflow:visible!important}
body.home-v2.contact-home-page .ffc-card-heading.form-panel-head{gap:14px!important;margin-bottom:24px!important}
body.home-v2.contact-home-page .ffc-heading-icon{width:48px!important;height:48px!important;border-radius:14px!important;color:#c494ff!important;border-color:rgba(155,111,255,.22)!important;background:linear-gradient(145deg,rgba(124,58,237,.24),rgba(73,32,135,.25))!important}
body.home-v2.contact-home-page .ffc-card-heading h2{color:#fff!important;font:700 21px/1.2 'Poppins',sans-serif!important;letter-spacing:-.025em!important}
body.home-v2.contact-home-page .ffc-card-heading p{margin-top:5px!important;color:#8e849a!important;font:500 12px/1.5 'Inter',sans-serif!important}

/* OLD fx-row/fx-field hooks */
body.home-v2.contact-home-page .ffc-fields.fx-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
body.home-v2.contact-home-page .fx-field{min-width:0!important}
body.home-v2.contact-home-page .fx-field.fx-span{grid-column:1/-1!important}
body.home-v2.contact-home-page .fx-label{display:block!important;margin:0 0 8px!important;color:#eeeaf5!important;font:650 12px/1.3 'Inter',sans-serif!important}
body.home-v2.contact-home-page .fx-label>span{color:#c86eff!important}
body.home-v2.contact-home-page .fx-input,body.home-v2.contact-home-page .fx-select,body.home-v2.contact-home-page .fx-textarea{width:100%!important;margin:0!important;outline:0!important;color:#f7f4fb!important;border:1px solid rgba(168,130,230,.20)!important;background:linear-gradient(180deg,rgba(20,15,36,.92),rgba(14,11,25,.96))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;font:500 13.5px/1.5 'Inter',sans-serif!important;transition:.2s ease!important}
body.home-v2.contact-home-page .fx-input,body.home-v2.contact-home-page .fx-select{height:52px!important;min-height:52px!important;padding:0 15px!important;border-radius:13px!important}
body.home-v2.contact-home-page .fx-textarea{min-height:148px!important;padding:15px!important;border-radius:13px!important;resize:vertical!important}
body.home-v2.contact-home-page .fx-input::placeholder,body.home-v2.contact-home-page .fx-textarea::placeholder{color:#756c82!important;opacity:1!important}
body.home-v2.contact-home-page .fx-input:focus,body.home-v2.contact-home-page .fx-textarea:focus{border-color:rgba(155,92,255,.72)!important;background:rgba(23,17,41,.98)!important;box-shadow:0 0 0 4px rgba(124,58,237,.09)!important}

/* Chrome autofill white input fix */
body.home-v2.contact-home-page input.fx-input:-webkit-autofill,body.home-v2.contact-home-page input.fx-input:-webkit-autofill:hover,body.home-v2.contact-home-page input.fx-input:-webkit-autofill:focus,body.home-v2.contact-home-page textarea.fx-textarea:-webkit-autofill,body.home-v2.contact-home-page textarea.fx-textarea:-webkit-autofill:hover,body.home-v2.contact-home-page textarea.fx-textarea:-webkit-autofill:focus{-webkit-text-fill-color:#f7f4fb!important;caret-color:#fff!important;-webkit-box-shadow:0 0 0 1000px #141020 inset!important;box-shadow:0 0 0 1000px #141020 inset!important;transition:background-color 9999s ease-out 0s!important}

/* Hide native select visually, keep it REAL for forms.js/backend */
body.home-v2.contact-home-page .fx-field:has(#c-product){position:relative!important}
body.home-v2.contact-home-page #c-product.fx-select{position:absolute!important;width:1px!important;height:1px!important;min-height:1px!important;opacity:0!important;pointer-events:none!important;left:0!important;bottom:0!important;padding:0!important;border:0!important}

/* Custom dropdown injected by contact-ui.js */
.contact-select-ui{position:relative;z-index:55}
.contact-select-trigger{width:100%;height:52px;padding:0 15px;border:1px solid rgba(168,130,230,.20);border-radius:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:#f7f4fb;background:linear-gradient(180deg,rgba(20,15,36,.92),rgba(14,11,25,.96));box-shadow:inset 0 1px 0 rgba(255,255,255,.025);font:500 13.5px/1 'Inter',sans-serif;text-align:left}
.contact-select-trigger svg{width:17px;height:17px;color:#9b5cff;transition:transform .2s ease}
.contact-select-ui.is-open .contact-select-trigger{border-color:rgba(155,92,255,.72);box-shadow:0 0 0 4px rgba(124,58,237,.09)}
.contact-select-ui.is-open .contact-select-trigger svg{transform:rotate(180deg)}
.contact-select-menu{position:absolute;z-index:120;left:0;right:0;top:calc(100% + 8px);max-height:300px;padding:7px;overflow-y:auto;border:1px solid rgba(171,122,255,.24);border-radius:15px;background:rgba(12,9,22,.99);box-shadow:0 25px 60px -24px rgba(0,0,0,.96),inset 0 1px 0 rgba(255,255,255,.035);backdrop-filter:blur(20px);opacity:0;visibility:hidden;transform:translateY(-7px) scale(.99);transition:.18s ease}
.contact-select-ui.is-open .contact-select-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.contact-select-menu button{width:100%;min-height:40px;padding:0 12px;border:0;border-radius:10px;display:flex;align-items:center;cursor:pointer;color:#bdb3cc;background:transparent;font:500 12.5px/1.25 'Inter',sans-serif;text-align:left}
.contact-select-menu button:hover,.contact-select-menu button.is-selected{color:#fff;background:linear-gradient(90deg,rgba(124,58,237,.18),rgba(168,85,247,.08))}

/* Phone field from current markup */
body.home-v2.contact-home-page .ffc-phone-wrap{height:52px!important;grid-template-columns:90px minmax(0,1fr)!important;border:1px solid rgba(168,130,230,.20)!important;border-radius:13px!important;background:linear-gradient(180deg,rgba(20,15,36,.92),rgba(14,11,25,.96))!important}
body.home-v2.contact-home-page .ffc-phone-prefix{color:#d6cedf!important;border-right-color:rgba(168,130,230,.16)!important;font-size:12px!important}
body.home-v2.contact-home-page .ffc-phone-wrap .ffc-phone-input{height:50px!important;min-height:50px!important;border:0!important;background:transparent!important;box-shadow:none!important}

/* Message, consent, submit */
body.home-v2.contact-home-page .ffc-label-row>span{color:#6f677c!important;font-size:9px!important}
body.home-v2.contact-home-page .fx-check{display:flex!important;align-items:flex-start!important;gap:9px!important;color:#9f96ac!important;font:500 10.5px/1.5 'Inter',sans-serif!important}
body.home-v2.contact-home-page .fx-check input{width:17px!important;height:17px!important;margin-top:0!important;accent-color:#8b4dff!important}
body.home-v2.contact-home-page .fx-check a{color:#b469ff!important;text-underline-offset:2px}
body.home-v2.contact-home-page .fx-form-actions{margin-top:18px!important}
body.home-v2.contact-home-page .ffc-submit{min-height:54px!important;border-radius:13px!important;background:linear-gradient(100deg,#6d28d9,#8b3dff 58%,#b44ee1)!important;font:700 13px/1 'Inter',sans-serif!important}

/* Alert */
body.home-v2.contact-home-page .fx-alert{margin:0 0 18px!important;padding:12px 14px!important;border-radius:12px!important;color:#d9cfe7!important;border:1px solid rgba(155,111,255,.20)!important;background:rgba(124,58,237,.07)!important;font:600 11px/1.45 'Inter',sans-serif!important}

/* Right cards */
body.home-v2.contact-home-page .ffc-side.side-panel{display:grid!important;gap:14px!important}
body.home-v2.contact-home-page .ffc-side .side-card{padding:22px!important;border-radius:22px!important}
body.home-v2.contact-home-page .ffc-contact-row{min-height:70px!important;padding:10px 11px!important;grid-template-columns:40px minmax(0,1fr) 118px 27px!important;gap:11px!important;border:1px solid rgba(155,111,255,.12)!important;border-radius:14px!important;background:rgba(255,255,255,.018)!important}
body.home-v2.contact-home-page .ffc-row-icon{width:40px!important;height:40px!important;border-radius:11px!important;background:rgba(124,58,237,.10)!important;color:#b777ff!important}
body.home-v2.contact-home-page .ffc-row-main b{color:#f4eff8!important;font-size:12px!important}
body.home-v2.contact-home-page .ffc-row-main small{color:#aaa0b7!important;font-size:10.5px!important}
body.home-v2.contact-home-page .ffc-row-note{color:#817789!important;font-size:9.5px!important}
body.home-v2.contact-home-page .ffc-check-list{gap:11px!important}
body.home-v2.contact-home-page .ffc-check-list li{color:#b3aabd!important;font-size:11px!important}

/* Info cards */
body.home-v2.contact-home-page .ffc-info-grid.office-grid{margin-top:18px!important;grid-template-columns:1.32fr 1fr 1fr!important;gap:14px!important}
body.home-v2.contact-home-page .ffc-info-card.office-card{min-height:116px!important;padding:18px!important;border-radius:18px!important;grid-template-columns:42px minmax(0,1fr)!important;gap:13px!important}
body.home-v2.contact-home-page .ffc-info-icon{width:40px!important;height:40px!important;border-radius:12px!important;background:rgba(124,58,237,.10)!important;color:#b777ff!important}
body.home-v2.contact-home-page .ffc-info-copy h3{color:#fff!important;font-size:12px!important}
body.home-v2.contact-home-page .ffc-info-copy p{color:#8e849a!important;font-size:10px!important;line-height:1.55!important}
body.home-v2.contact-home-page .ff-footer{margin-top:0!important}

/* Tablet */
@media(max-width:1050px){
  body.home-v2.contact-home-page .ffc-shell.container{width:min(920px,calc(100% - 34px))!important}
  body.home-v2.contact-home-page .ffc-hero.page-shell{padding-top:148px!important}
  body.home-v2.contact-home-page .ffc-hero-grid{grid-template-columns:1fr!important;gap:15px!important}
  body.home-v2.contact-home-page .ffc-hero-note{display:none!important}
  body.home-v2.contact-home-page .ffc-hero h1{white-space:normal!important}
  body.home-v2.contact-home-page .ffc-contact-grid.contact-grid{grid-template-columns:1fr!important}
  body.home-v2.contact-home-page .ffc-side.side-panel{grid-template-columns:1fr 1fr!important}
  body.home-v2.contact-home-page .ffc-info-grid.office-grid{grid-template-columns:1fr 1fr!important}
  body.home-v2.contact-home-page .ffc-office-card{grid-column:1/-1!important}
}

/* Mobile */
@media(max-width:700px){
  body.home-v2.contact-home-page .ffc-shell.container{width:calc(100% - 24px)!important}
  body.home-v2.contact-home-page .ffc-hero.page-shell{padding:112px 0 34px!important}
  body.home-v2.contact-home-page .ffc-hero-copy.page-head{text-align:center!important}
  body.home-v2.contact-home-page .ffc-eyebrow{margin-inline:auto!important}
  body.home-v2.contact-home-page .ffc-hero h1{font-size:clamp(34px,10vw,44px)!important;white-space:normal!important;text-align:center!important}
  body.home-v2.contact-home-page .ffc-hero-copy>p{margin-inline:auto!important;font-size:13.5px!important;text-align:center!important}
  body.home-v2.contact-home-page .ffc-form-card.form-panel{padding:17px!important;border-radius:18px!important}
  body.home-v2.contact-home-page .ffc-fields.fx-row{grid-template-columns:1fr!important;gap:14px!important}
  body.home-v2.contact-home-page .fx-field.fx-span{grid-column:auto!important}
  body.home-v2.contact-home-page .ffc-side.side-panel{grid-template-columns:1fr!important}
  body.home-v2.contact-home-page .ffc-side .side-card{padding:17px!important;border-radius:18px!important}
  body.home-v2.contact-home-page .ffc-contact-row{grid-template-columns:38px minmax(0,1fr) 26px!important}
  body.home-v2.contact-home-page .ffc-row-note{display:none!important}
  body.home-v2.contact-home-page .ffc-info-grid.office-grid{grid-template-columns:1fr!important}
  body.home-v2.contact-home-page .ffc-office-card{grid-column:auto!important}
}
