/* Preview-only editorial benefits and a simple, open contact form. */
.a360-advantage { position: relative; background: var(--a360-stone); padding: clamp(76px, 8vw, 120px) 0; }
.a360-advantage > .a360-shell { max-width: 1440px; min-height: 440px; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: clamp(60px, 9vw, 136px); }
.a360-advantage-intro { padding-top: 8px; }
.a360-advantage-intro .a360-eyebrow { margin-bottom: 28px; }
.a360-advantage h2 { color: var(--a360-navy-2); font: 500 clamp(58px, 5.7vw, 88px)/.98 var(--a360-serif); letter-spacing: -.035em; margin: 0 0 30px; text-transform: none; }
.a360-advantage h2 em { color: #a58343; font-weight: inherit; }
.a360-advantage-intro > p:not(.a360-eyebrow) { color: var(--a360-muted); max-width: 390px; font-size: 15px; line-height: 1.9; margin: 0 0 32px; }
.a360-advantage .a360-benefits { display: block; margin: 0; padding: 0; list-style: none; }
.a360-benefits details { border-top: 1px solid var(--a360-line); overflow: clip; }
.a360-benefits details:last-child { border-bottom: 1px solid var(--a360-line); }
.a360-benefits summary { display: grid; grid-template-columns: 24px minmax(0, 1fr) 18px; gap: 18px; align-items: center; padding: 28px 0; list-style: none; cursor: pointer; color: var(--a360-navy-2); font: 500 clamp(29px, 2.55vw, 38px)/1.15 var(--a360-serif); letter-spacing: -.015em; }
.a360-benefits summary::-webkit-details-marker { display: none; }
.a360-benefit-index { color: #9a7838; font: 800 10px/1.5 var(--a360-sans); letter-spacing: .12em; }
.a360-benefits summary i { position: relative; width: 16px; height: 16px; }
.a360-benefits summary i::before, .a360-benefits summary i::after { content: ''; position: absolute; background: currentColor; width: 14px; height: 1px; left: 1px; top: 7px; }
.a360-benefits summary i::after { transform: rotate(90deg); transition: transform .35s ease; }
.a360-benefits details[open]:not([data-faq-expanded]) summary i::after, .a360-benefits details[data-faq-expanded="true"] summary i::after { transform: rotate(0); }
.a360-benefits p { color: var(--a360-muted); font-size: 14px; line-height: 1.8; margin: -6px 32px 28px 42px; max-width: 390px; }
.a360-benefits summary:focus-visible { outline-offset: -4px; }

.a360-inquiry { padding: clamp(84px, 8vw, 128px) 24px; background: var(--a360-paper); }
.a360-inquiry-inner { width: 100%; max-width: 760px; margin: 0 auto; }
.a360-inquiry-heading { text-align: center; margin-bottom: 48px; }
.a360-inquiry-heading .a360-eyebrow { margin-bottom: 22px; }
.a360-inquiry h2 { color: var(--a360-navy-2); font: 500 clamp(48px, 4.7vw, 72px)/1.05 var(--a360-serif); letter-spacing: -.025em; text-transform: none; margin: 0 0 20px; }
.a360-inquiry-heading > p:last-child { font-size: 15px; line-height: 1.8; color: var(--a360-muted); max-width: 530px; margin: 0 auto; }
.a360-inquiry-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 30px; row-gap: 0; margin: 0; }
#top .a360-homepage .a360-inquiry-form label { position: relative; display: grid; gap: 10px; margin: 0 0 30px; color: var(--a360-navy-2); font: 700 11px/1.5 var(--a360-sans); letter-spacing: .12em; text-transform: uppercase; transition: color .24s ease; }
/* A drawing underline, rather than a box, makes the active field unmistakable. */
#top .a360-homepage .a360-inquiry-form label::after { content: ''; position: absolute; right: 0; bottom: 0; left: 0; height: 2px; background: var(--a360-navy); pointer-events: none; transform: scaleX(0); transform-origin: left; transition: transform .34s cubic-bezier(.22, 1, .36, 1); }
#top .a360-homepage .a360-inquiry-form label:focus-within { color: #8b672e; }
#top .a360-homepage .a360-inquiry-form label:focus-within::after { transform: scaleX(1); }
#top .a360-homepage .a360-inquiry-form input:not([type="hidden"]), #top .a360-homepage .a360-inquiry-form textarea {
  appearance: none; width: 100%; min-width: 0; min-height: 52px; margin: 0; padding: 12px 0 16px;
  background: transparent; border: 0; border-bottom: 1px solid #07182740; border-radius: 0; box-shadow: none;
  color: var(--a360-navy); font: 400 16px/1.6 var(--a360-sans); letter-spacing: 0; text-transform: none;
  caret-color: var(--a360-navy); transition: border-color .24s ease, background-color .24s ease;
}
#top .a360-homepage .a360-inquiry-form textarea { min-height: 120px; resize: vertical; }
.a360-inquiry-form input::placeholder, .a360-inquiry-form textarea::placeholder { color: #757b7e; opacity: 1; }
#top .a360-homepage .a360-inquiry-form input:focus, #top .a360-homepage .a360-inquiry-form textarea:focus { outline: none; box-shadow: none; border-color: var(--a360-navy); background-color: #c6a66b0d; }
.a360-inquiry-form .gform-footer { text-align: center; }
.a360-inquiry-form .a360-btn { min-width: 200px; cursor: pointer; }
.a360-inquiry-form .a360-turnstile-wrap { margin: 0 !important; }
.a360-inquiry-direct { display: flex; justify-content: center; gap: 12px 28px; flex-wrap: wrap; margin-top: 30px; font-size: 12px; color: var(--a360-muted); }
.a360-inquiry-direct a { text-underline-offset: 4px; }
.a360-inquiry-direct a:hover { color: var(--a360-navy); text-decoration: underline; }

/* Answer real booking questions, with a quiet editorial column beside them. */
.a360-homepage #faq { background: var(--a360-stone); padding: clamp(76px, 8vw, 120px) 0; }
.a360-homepage #faq > .a360-shell { max-width: 1440px; display: grid; grid-template-columns: .8fr 1.4fr; gap: clamp(48px, 8vw, 120px); align-items: start; }
.a360-faq-heading .a360-heading { font-size: clamp(46px, 4.5vw, 66px); line-height: 1.02; }
.a360-faq-heading .a360-heading em { color: #a58343; }
.a360-homepage #faq .a360-faq-list { width: 100%; max-width: none; margin: 0; }
.a360-homepage #faq summary { font-size: 15px; line-height: 1.65; min-height: 76px; padding: 22px 0; gap: 24px; }
.a360-homepage #faq summary i { flex: 0 0 18px; }
.a360-homepage #faq details p { font-size: 14px; line-height: 1.9; padding: 0 32px 26px 0; }
.a360-homepage #faq details p a { text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 850px) {
  .a360-advantage > .a360-shell { gap: 44px; }
  .a360-advantage h2 { font-size: 60px; }
}
@media (max-width: 720px) {
  .a360-advantage { padding-block: 76px; }
  .a360-advantage > .a360-shell { grid-template-columns: 1fr; min-height: 0; gap: 48px; padding-inline: 24px; }
  .a360-advantage h2 { font-size: clamp(56px, 12vw, 72px); }
  .a360-advantage-intro > p:not(.a360-eyebrow) { max-width: 480px; }
  .a360-benefits summary { font-size: clamp(26px, 7vw, 34px); gap: 12px; padding-block: 25px; }
  .a360-benefits p { margin-left: 36px; }
  .a360-benefits p { max-width: none; }
  .a360-inquiry-heading { margin-bottom: 36px; }
  .a360-inquiry-form { grid-template-columns: 1fr; column-gap: 0; }
  .a360-homepage #faq > .a360-shell { grid-template-columns: 1fr; gap: 32px; padding-inline: 24px; }
  .a360-homepage #faq summary { font-size: 14px; padding-block: 20px; }
  .a360-homepage #faq details p { padding-right: 0; }
}
@media (prefers-reduced-motion: reduce) {
  #top .a360-homepage .a360-inquiry-form label,
  #top .a360-homepage .a360-inquiry-form label::after,
  #top .a360-homepage .a360-inquiry-form input:not([type="hidden"]),
  #top .a360-homepage .a360-inquiry-form textarea,
  .a360-benefits summary i::after { transition: none; }
}
@media (forced-colors: active) {
  #top .a360-homepage .a360-inquiry-form input:focus,
  #top .a360-homepage .a360-inquiry-form textarea:focus { outline: 2px solid Highlight; outline-offset: 4px; border-color: Highlight; }
  #top .a360-homepage .a360-inquiry-form label:focus-within { color: Highlight; }
}
