/* Gallivant Africa Suite — form styling (matches Gallivant Africa Luxury theme) */
.ga-assessment,.ga-contact-form-wrap{--gold:#d8ad55;--gold-grad:linear-gradient(180deg,#eccd88 0%,#d3aa5a 100%);--serif:"Playfair Display",Georgia,"Times New Roman",serif;--sans:Inter,Arial,Helvetica,sans-serif}
.ga-assessment{position:relative;max-width:410px;margin-left:auto;font-family:var(--sans)}
.ga-assessment__panel{position:relative;background:rgba(255,253,248,.98);color:#191713;padding:26px 26px 24px;border-radius:8px;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.ga-assessment__close{position:absolute;z-index:5;right:12px;top:12px;width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:#2b261f;font-size:26px;line-height:1;cursor:pointer}
.ga-assessment__close:hover{background:#eee8dc}
.ga-assessment__reopen{display:none;width:100%;padding:16px 22px;border:1px solid #d9b463;background:var(--gold-grad);color:#17130d;border-radius:3px;font:600 14.5px var(--sans);cursor:pointer}
.ga-assessment.is-collapsed .ga-assessment__panel,.ga-assessment.is-collapsed .ga-assessment__close{display:none}.ga-assessment.is-collapsed .ga-assessment__reopen{display:block}
.ga-assessment h2{margin:6px 0 8px!important;padding-right:24px;color:#1c1915;font:400 27px/1.12 var(--serif);letter-spacing:-.005em}
.ga-form-eyebrow{margin:0!important;font:500 10.5px var(--sans)!important;text-transform:uppercase;letter-spacing:.22em;color:#5f574b}
.ga-form-intro{margin:0 0 16px!important;color:#4d473d;font-size:13.5px;line-height:1.5}
.ga-field{margin:0 0 11px}.ga-field label{display:block;margin-bottom:4px;font-size:12.5px;font-weight:600;color:#2a251f}
.ga-field label.screen-reader-text{position:absolute}
.ga-field input,.ga-field select,.ga-field textarea{display:block;width:100%;min-height:40px;padding:9px 12px;border:1px solid #ddd5c8;border-radius:3px;background:#fff;color:#25211c;font:400 13.5px/1.35 var(--sans);box-shadow:none}
.ga-field input::placeholder,.ga-field textarea::placeholder{color:#8b8477}
.ga-field textarea{min-height:120px;resize:vertical}
.ga-consent{display:flex;gap:8px;align-items:flex-start;margin:6px 0 12px;font-size:11px;line-height:1.4;color:#6a6257}.ga-consent input{margin-top:2px;accent-color:#c39a48}
.ga-form-button{display:flex;width:100%;align-items:center;justify-content:center;padding:14px 18px;border:1px solid #d9b463;border-radius:3px;background:var(--gold-grad);color:#17130d;font:600 14.5px var(--sans);cursor:pointer;text-decoration:none;box-shadow:0 1px 0 rgba(255,255,255,.35) inset}
.ga-form-button:hover{filter:brightness(1.05)}.ga-form-button[disabled]{opacity:.65;cursor:wait}
.ga-form-error{display:none;margin:8px 0;padding:8px 10px;background:#fbe7e4;border-left:3px solid #a54434;color:#7b3025;font-size:12px}.ga-form-error.is-visible{display:block}
.ga-assessment__step{display:none}.ga-assessment__step.is-active{display:block}
.ga-progress{height:4px;margin:0 0 20px;background:#e7dfd2}.ga-progress span{display:block;height:100%;width:10%;background:var(--gold);transition:width .2s}
.ga-question-count{margin:0 0 5px!important;color:#7b7368;font-size:10.5px!important;text-transform:uppercase;letter-spacing:.15em}
.ga-question-title{font-size:26px!important}.ga-question-copy{margin:0 0 17px!important;color:#625b51;font-size:13.5px}
.ga-rating-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.ga-rating-options button{min-width:0;padding:10px 4px;border:1px solid #d8d0c4;background:#fff;color:#2e2923;border-radius:3px;cursor:pointer;font-family:var(--sans)}
.ga-rating-options button strong{display:block;font-size:18px}.ga-rating-options button span{display:block;margin-top:3px;font-size:9px}
.ga-rating-options button.is-selected{border-color:var(--gold);background:#fbf0d6;box-shadow:inset 0 0 0 1px var(--gold)}
.ga-question-actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px}
.ga-question-actions button{padding:10px 14px;border:1px solid #cfc5b7;background:#fff;border-radius:3px;cursor:pointer;font-family:var(--sans)}
.ga-question-next{background:var(--gold-grad)!important;border-color:#d9b463!important;font-weight:600}
.ga-result-score{display:flex;align-items:flex-end;gap:6px;margin:15px 0;color:#c39a48;font:400 78px/.9 var(--serif)}.ga-result-score small{padding-bottom:9px;color:#7a7165;font:14px var(--sans)}
.ga-result-band{font-size:30px!important}.ga-result-copy{color:#4f493f;font-size:14px}
.ga-result-note{margin:15px 0!important;padding:11px;border-left:2px solid var(--gold);background:#f3ecdf;color:#675e52;font-size:11px!important}.ga-result-cta{margin-top:15px}

/* Contact form (sits directly on the theme's cream panel) */
.ga-contact-form-wrap{font-family:var(--sans)}
.ga-contact-form .ga-field{margin-bottom:14px}
.ga-contact-form .ga-field input,.ga-contact-form .ga-field textarea{min-height:46px;padding:12px 14px;font-size:14px;background:#fffdf9}
.ga-contact-form .ga-field textarea{min-height:130px}
.ga-contact-form .ga-form-button{padding:15px 18px}
.ga-form-success{margin-bottom:16px;padding:12px 14px;background:#edf4e7;border-left:3px solid #68884f;color:#415c30;font-size:13.5px}
.ga-hp{position:absolute!important;left:-99999px!important}
.ga-assessment button:focus-visible,.ga-contact-form button:focus-visible,.ga-field input:focus,.ga-field select:focus,.ga-field textarea:focus{outline:2px solid var(--gold);outline-offset:2px}
@media(max-width:600px){.ga-assessment{max-width:none;margin:0}.ga-assessment__panel{padding:24px 18px}.ga-rating-options button span{display:none}.ga-assessment h2{font-size:25px!important}}
