/* Avelora private enquiry — shared by the Group, Aviation and Yacht pages.
   Uses only the site's existing palette (charcoal #0B2A4A to silver #C9A24A), its
   typefaces (Libre Caslon Display, Jost) and its square corners. Everything is scoped
   under .av-contact so no other section is affected. */

.av-contact.cta-block{padding:104px 0 112px}
.av-contact .ac-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(48px,6vw,96px);align-items:start}

/* Left column: the page's own headline and copy, then the sequence and direct lines */
.av-contact .ac-intro h2{max-width:16ch;margin:15px 0 24px;font-size:clamp(2.3rem,3.5vw,3.6rem);line-height:1.1}
@media (min-width:1061px){.av-contact .ac-intro{position:sticky;top:132px}}
.av-contact .ac-intro>p{color:#ECEAE3;max-width:50ch;font-size:15.5px;line-height:1.8}

.av-contact .ac-steps{list-style:none;margin:48px 0 0;padding:0;border-top:1px solid #2C4A66;counter-reset:ac-step;max-width:560px}
.av-contact .ac-steps li{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:16px;row-gap:5px;padding:22px 0;border-bottom:1px solid #2C4A66}
.av-contact .ac-steps li::before{counter-increment:ac-step;content:counter(ac-step,decimal-leading-zero);grid-row:span 2;font:400 24px/1 'Libre Caslon Display',Georgia,serif;color:#C9A24A;padding-top:1px}
.av-contact .ac-steps b{font:600 11px/1.4 'Jost',sans-serif;letter-spacing:0;text-transform:none;color:#F5F4F0}
.av-contact .ac-steps span{font-size:14px;line-height:1.7;color:#E0C27A}

.av-contact .ac-direct{margin-top:44px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:560px}
.av-contact .ac-direct small{display:block;font:600 10px/1.4 'Jost',sans-serif;letter-spacing:0;text-transform:none;color:#C9A24A;margin-bottom:10px}
.av-contact .ac-direct a.ac-mail{display:inline-block;font:400 21px/1.3 'Libre Caslon Display',Georgia,serif;color:#F5F4F0;border-bottom:1px solid #56687A;padding-bottom:3px;word-break:break-word}
.av-contact .ac-direct a.ac-mail:hover{border-bottom-color:#F5F4F0}
.av-contact .ac-direct .ac-place{font:400 21px/1.3 'Libre Caslon Display',Georgia,serif;color:#F5F4F0;margin:0}
.av-contact .ac-copy{display:inline-flex;align-items:center;gap:8px;margin-top:12px;background:none;border:0;padding:4px 0;color:#C9A24A;font:500 11px/1 'Jost',sans-serif;letter-spacing:0;text-transform:none;cursor:pointer}
.av-contact .ac-copy:hover{color:#F5F4F0}

/* Right column: the private introduction form */
.av-contact .ac-form{position:relative;background:#12385E;border:1px solid #2C4A66;padding:44px 44px 38px}
.av-contact .ac-form h3{font:400 clamp(26px,2.4vw,32px)/1.15 'Libre Caslon Display',Georgia,serif;color:#F5F4F0;margin:12px 0 10px;letter-spacing:-.01em}
.av-contact .ac-form .ac-lead{font-size:13.5px;line-height:1.7;color:#E0C27A;max-width:none;margin:0}
.av-contact .ac-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 26px;margin-top:34px}
.av-contact .ac-field{display:flex;flex-direction:column;gap:10px;min-width:0;border:0;margin:0;padding:0}
.av-contact .ac-field.full{grid-column:1/-1}
.av-contact .ac-label,.av-contact .ac-field legend{font:600 10px/1.4 'Jost',sans-serif;letter-spacing:0;text-transform:none;color:#C9A24A;padding:0;margin:0 0 2px}
.av-contact .ac-label .ac-opt{letter-spacing:.08em;text-transform:none;font-weight:500;color:#56687A;margin-left:6px}

.av-contact .ac-field input[type=text],.av-contact .ac-field input[type=email],.av-contact .ac-field input[type=tel],.av-contact .ac-field select{
  width:100%;min-height:46px;background:transparent;border:0;border-bottom:1px solid #56687A;border-radius:0;
  color:#F5F4F0;padding:10px 0 11px;font:400 16px/1.4 'Jost',sans-serif;outline:none;-webkit-appearance:none;appearance:none}
.av-contact .ac-field select{padding-right:28px;cursor:pointer;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23b2b2b2' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right 4px center}
.av-contact .ac-field select option{background:#0B2A4A;color:#F5F4F0}
.av-contact .ac-field select:invalid,.av-contact .ac-field select:has(option[value=""]:checked){color:#56687A}
.av-contact .ac-field textarea{width:100%;min-height:132px;background:transparent;border:1px solid #56687A;border-radius:0;color:#F5F4F0;padding:14px 16px;font:400 15.5px/1.65 'Jost',sans-serif;resize:vertical;outline:none}
.av-contact .ac-field ::placeholder{color:#56687A;opacity:1}
.av-contact .ac-field input:focus,.av-contact .ac-field select:focus{border-bottom-color:#F5F4F0;box-shadow:0 1px 0 #F5F4F0}
.av-contact .ac-field textarea:focus{border-color:#F5F4F0}
.av-contact .ac-meta{display:flex;justify-content:space-between;gap:16px;font-size:12px;line-height:1.55;color:#C9A24A}
.av-contact .ac-count{font-variant-numeric:tabular-nums;white-space:nowrap}

/* Square toggle choices (asset, preferred reply) */
.av-contact .ac-choices{display:flex;flex-wrap:wrap;gap:10px}
.av-contact .ac-choice{position:relative;display:inline-flex}
.av-contact .ac-choice input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.av-contact .ac-choice span{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;border:1px solid #56687A;color:#ECEAE3;font:500 12.5px/1.2 'Jost',sans-serif;letter-spacing:.06em;transition:background-color .15s,color .15s,border-color .15s}
.av-contact .ac-choice:hover span{border-color:#C9A24A}
.av-contact [data-field="asset"] .ac-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.av-contact [data-field="asset"] .ac-choice,.av-contact [data-field="asset"] .ac-choice span{display:flex;width:100%}
.av-contact .ac-choice input:checked+span{background:#C9A24A;border-color:#C9A24A;color:#0B2A4A}
.av-contact .ac-choice input:focus-visible+span{outline:2px solid #F5F4F0;outline-offset:3px}

/* Consent */
.av-contact .ac-consent{display:grid;grid-template-columns:20px minmax(0,1fr);gap:14px;align-items:start;font-size:13px;line-height:1.65;color:#E0C27A;cursor:pointer}
.av-contact .ac-consent a{color:#F5F4F0;text-decoration:underline;text-underline-offset:3px}
.av-contact .ac-consent input{appearance:none;-webkit-appearance:none;width:20px;height:20px;margin:1px 0 0;border:1px solid #56687A;background:transparent;border-radius:0;display:grid;place-content:center;cursor:pointer}
.av-contact .ac-consent input::after{content:"";width:10px;height:10px;background:#0B2A4A;transform:scale(0);transition:transform .12s}
.av-contact .ac-consent input:checked{background:#C9A24A;border-color:#C9A24A}
.av-contact .ac-consent input:checked::after{transform:scale(1)}
.av-contact .ac-consent input:focus-visible{outline:2px solid #F5F4F0;outline-offset:3px}

/* Submit row */
.av-contact .ac-submit{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 28px;margin-top:34px;padding-top:28px;border-top:1px solid #2C4A66}
.av-contact .ac-submit .btn{margin:0;min-width:270px;cursor:pointer}
.av-contact .ac-submit .btn[disabled]{opacity:.6;cursor:progress}
.av-contact .ac-submit p{font-size:12px;line-height:1.6;color:#C9A24A;max-width:30ch;margin:0}

/* Validation and notices: monochrome site, one soft error tone for accessibility */
.av-contact .ac-error{font-size:12px;line-height:1.5;color:#f2b8b5;margin:0}
.av-contact .ac-error[hidden]{display:none}
.av-contact .ac-field.has-error input,.av-contact .ac-field.has-error select{border-bottom-color:#f2b8b5}
.av-contact .ac-field.has-error textarea,.av-contact .ac-field.has-error .ac-choice span,.av-contact .ac-consent.has-error input{border-color:#f2b8b5}
.av-contact .ac-caution{border-left:2px solid #C9A24A;padding:8px 0 8px 14px;font-size:12.5px;line-height:1.6;color:#ECEAE3;margin:0}
.av-contact .ac-caution[hidden]{display:none}

/* Bot trap, never visible */
.av-contact .ac-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}

/* Outcome panels */
.av-contact .ac-panel{border:1px solid #2C4A66;background:#0B2A4A;padding:28px 28px 26px;margin-top:28px}
.av-contact .ac-sent{margin-top:0}
.av-contact .ac-panel[hidden]{display:none}
.av-contact .ac-panel h4{font:400 26px/1.2 'Libre Caslon Display',Georgia,serif;color:#F5F4F0;margin:10px 0 12px;letter-spacing:-.01em}
.av-contact .ac-panel p{font-size:14px;line-height:1.75;color:#ECEAE3;max-width:none;margin:0}
.av-contact .ac-panel .ac-ref{display:inline-block;margin-top:18px;font:500 12px/1 'Jost',sans-serif;letter-spacing:.18em;color:#C9A24A;border:1px solid #2C4A66;padding:10px 14px}
.av-contact .ac-panel .ac-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.av-contact .ac-panel .btn{margin:0}
.av-contact .ac-panel .btn.line{color:#F5F4F0}
.av-contact .ac-form.is-sent .ac-body{display:none}

/* Small screens */
@media (max-width:1060px){
  .av-contact .ac-grid{grid-template-columns:minmax(0,1fr);gap:56px}
  .av-contact .ac-intro h2{max-width:18ch}
}
@media (max-width:600px){
  .av-contact.cta-block{padding:72px 0 80px}
  .av-contact .ac-form{padding:30px 20px 26px}
  .av-contact .ac-fields{grid-template-columns:minmax(0,1fr);gap:26px}
  .av-contact .ac-direct{grid-template-columns:minmax(0,1fr);gap:24px}
  .av-contact .ac-submit .btn{min-width:0;width:100%}
  .av-contact .ac-submit p{max-width:none}
}
@media (prefers-reduced-motion:reduce){
  .av-contact .ac-choice span,.av-contact .ac-consent input::after{transition:none}
}
