/* OUTBOX Contact V3 — premium dark glass / consistent brand CTA
   Scoped to #contact so all other site sections remain unchanged. */
#contact.oc-contact-v2{
  --oc-glass-gold:#FBAF2A;
  background:radial-gradient(ellipse 70% 55% at 70% 49%,rgba(69,69,69,.14) 0%,transparent 74%),#252525;
}
#contact .oc-contact-panel{
  background:linear-gradient(126deg,#414141 0%,#333 47%,#2b2b2b 100%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 24px 75px rgba(0,0,0,.18);
}
#contact .oc-contact-form-wrap{align-items:stretch;isolation:isolate}
#contact .oc-contact-form{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  align-self:center;
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:clamp(25px,2.7vw,43px)!important;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.11) 0%,rgba(28,28,29,.73) 46%,rgba(20,20,21,.79) 100%);
  -webkit-backdrop-filter:blur(22px) saturate(120%);
  backdrop-filter:blur(22px) saturate(120%);
  box-shadow:0 25px 55px rgba(0,0,0,.23),inset 0 1px 0 rgba(255,255,255,.13);
}
#contact .oc-contact-form::before{
  content:"";
  position:absolute;
  left:0;top:0;right:0;height:1px;
  z-index:-1;
  background:linear-gradient(90deg,transparent 1%,rgba(255,255,255,.4) 25%,rgba(251,175,42,.65) 63%,transparent 100%);
  pointer-events:none;
}
#contact .oc-contact-form::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:290px;height:290px;
  top:-210px;right:-105px;
  background:radial-gradient(circle,rgba(251,175,42,.17),transparent 66%);
  pointer-events:none;
}
#contact .oc-form-overline{
  display:flex;align-items:center;gap:12px;
  margin:0 0 8px;
  color:var(--oc-glass-gold);
  font:700 11px/1.3 'Space Grotesk',sans-serif;
  letter-spacing:.22em;text-transform:uppercase;
}
#contact .oc-form-overline::before{
  content:"";width:21px;height:2px;flex:0 0 21px;
  background:var(--oc-glass-gold);
}
#contact .oc-form-overline::after{
  content:"";height:1px;flex:1;
  background:linear-gradient(90deg,rgba(251,175,42,.35),transparent);
}
#contact .oc-input-group{
  position:relative;
  min-width:0;
  border-radius:9px;
}
#contact .oc-input-group .oc-field{
  display:block;
  width:100%;
  height:68px;
  margin:0;
  padding:28px 20px 9px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:9px!important;
  background:linear-gradient(108deg,rgba(8,9,11,.40),rgba(20,20,22,.24))!important;
  color:#F8F7F4!important;
  font:500 16px/1.4 'DM Sans',sans-serif;
  letter-spacing:.015em;
  outline:0!important;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.14)!important;
  caret-color:#FBAF2A;
  transition:border-color .28s ease,background .28s ease,box-shadow .28s ease!important;
}
#contact .oc-input-group textarea.oc-field{
  min-height:167px;height:167px;max-height:320px;
  resize:vertical;
  padding-top:34px!important;
}
#contact .oc-input-group .oc-field::placeholder{color:transparent!important;opacity:0}
#contact .oc-input-group .oc-field:focus{
  background:linear-gradient(108deg,rgba(15,16,18,.67),rgba(22,23,25,.54))!important;
  border-color:rgba(251,175,42,.72)!important;
  box-shadow:0 0 0 3px rgba(251,175,42,.10),inset 0 1px 2px rgba(0,0,0,.14)!important;
}
#contact .oc-input-group:hover .oc-field:not(:focus){
  border-color:rgba(255,255,255,.34)!important;
}
#contact .oc-floating-label{
  position:absolute;
  z-index:2;
  left:20px;top:11px;
  color:#FBAF2A;
  font:700 10px/1.2 'Space Grotesk',sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  pointer-events:none;transform:translateY(0);
  transform-origin:left center;
  transition:top .27s cubic-bezier(.2,.8,.2,1),transform .27s cubic-bezier(.2,.8,.2,1),font-size .27s ease,color .27s ease,letter-spacing .27s ease;
}
#contact .oc-input-group .oc-field:placeholder-shown:not(:focus) + .oc-floating-label{
  top:50%;transform:translateY(-50%);
  font:500 15px/1.3 'DM Sans',sans-serif;
  letter-spacing:0;text-transform:none;color:#BEBDBE;
}
#contact .oc-input-group:has(textarea) .oc-field:placeholder-shown:not(:focus) + .oc-floating-label{
  top:24px;transform:translateY(0);
}
#contact .oc-input-group:focus-within .oc-floating-label{color:#FBAF2A}
#contact .oc-input-group .oc-field:-webkit-autofill{
  -webkit-text-fill-color:#fff!important;
  -webkit-box-shadow:0 0 0 1000px #29292b inset!important;
  caret-color:#FBAF2A;
}
#contact .oc-input-group .oc-field:-webkit-autofill:focus{
  -webkit-box-shadow:0 0 0 1000px #29292b inset,0 0 0 3px rgba(251,175,42,.1)!important;
}
#contact .oc-contact-challenge:not(:empty){
  margin:3px 0;
  overflow:visible;
  max-width:100%;
}
#contact .oc-contact-form .oc-form-send{
  display:flex;align-items:center;justify-content:space-between;
  align-self:stretch;
  width:100%;min-width:0;min-height:58px;
  padding:17px 24px!important;
  margin:2px 0 0;
  border:1px solid #FBAF2A!important;
  border-radius:7px!important;
  background:#FBAF2A!important;
  color:#171717!important;
  font:800 12px/1.15 'Space Grotesk',sans-serif!important;
  letter-spacing:.13em;
  text-align:left;
  text-transform:uppercase;
  box-shadow:0 9px 23px rgba(251,175,42,.10);
  transition:transform .32s cubic-bezier(.2,.85,.2,1),background .3s ease,box-shadow .35s ease!important;
  overflow:hidden;
  isolation:isolate;
}
#contact .oc-contact-form .oc-form-send::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  inset:-2px;
  transform:translateX(-160%) skewX(-18deg);
  background:linear-gradient(105deg,transparent 10%,rgba(255,255,255,.58) 48%,transparent 70%);
  transition:transform .75s cubic-bezier(.2,.8,.2,1);
}
#contact .oc-contact-form .oc-form-send:hover:not(:disabled){
  background:#FFC454!important;
  border-color:#FFC454!important;
  transform:translateY(-3px);
  box-shadow:0 15px 35px rgba(251,175,42,.27);
}
#contact .oc-contact-form .oc-form-send:hover:not(:disabled)::before{
  transform:translateX(160%) skewX(-18deg);
}
#contact .oc-contact-form .oc-form-send:active:not(:disabled){
  transform:translateY(0) scale(.99);
}
#contact .oc-contact-form .oc-form-send:focus-visible{
  outline:2px solid white;outline-offset:4px;
}
#contact .oc-contact-form .oc-form-send svg{
  width:21px;height:21px;
  stroke-width:1.7;flex:0 0 21px;
  transition:transform .28s ease;
}
#contact .oc-contact-form .oc-form-send:hover:not(:disabled) svg{
  transform:translate(3px,-3px);
}
#contact .oc-contact-form .oc-form-send:disabled{
  transform:none;opacity:.65;cursor:wait;
}
#contact .oc-form-status{font-size:13px!important;line-height:1.6!important}
#contact .oc-form-status:not(:empty){
  padding:12px 14px;
  border:1px solid rgba(251,175,42,.26);
  border-radius:7px;
  background:rgba(251,175,42,.055);
}
#contact .oc-form-status[data-type="success"]{
  border-color:rgba(144,235,172,.4);background:rgba(39,149,78,.08);
}
#contact .oc-form-status[data-type="error"]{
  border-color:rgba(250,156,130,.4);background:rgba(149,46,29,.12);
}
@media (max-width:1050px){
  #contact .oc-contact-form{padding:28px!important}
}
@media (max-width:780px){
  #contact .oc-contact-form{padding:clamp(22px,4.5vw,32px)!important}
}
@media (max-width:470px){
  #contact .oc-contact-form{padding:20px 16px!important;gap:13px}
  #contact .oc-input-group .oc-field{height:62px;padding:26px 16px 7px!important}
  #contact .oc-input-group textarea.oc-field{min-height:145px;height:145px;padding-top:32px!important}
  #contact .oc-floating-label{left:16px}
  #contact .oc-form-overline{font-size:10px;letter-spacing:.18em}
  #contact .oc-contact-form .oc-form-send{min-height:55px;padding-inline:19px!important}
}
@media (prefers-reduced-motion:reduce){
  #contact .oc-input-group .oc-field,#contact .oc-floating-label,#contact .oc-contact-form .oc-form-send,#contact .oc-contact-form .oc-form-send::before,#contact .oc-contact-form .oc-form-send svg{transition:none!important}
}
