/* Brackley Angling dev.60 — scoped, full-width member photo form.
   Loaded after old hub.css/site CSS and leaves Elementor globals untouched. */
.bac-hub .bac-upload,
.bac96-editable-tool .bac-hub .bac-upload {
  display:block!important;
  grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:28px 0 0;
  padding:clamp(18px,3vw,38px);
  box-sizing:border-box;
}
.bac-hub .bac-upload *,
.bac-hub .bac-upload *::before,
.bac-hub .bac-upload *::after {box-sizing:border-box}
.bac-hub .bac-upload__intro {
  width:100%;
  max-width:100%;
  padding:0 0 19px;
  margin:0 0 22px;
  border-bottom:1px solid #dce4d7;
}
.bac-hub .bac-upload__intro h2 {
  margin:0 0 10px!important;
  color:#163a2e;
  font-family:"BAC Heritage","Libre Baskerville",Georgia,serif;
  font-size:clamp(26px,3vw,38px);
  line-height:1.25;
}
.bac-hub .bac-upload__intro .bac-eyebrow {margin:0 0 8px!important}
.bac-hub .bac-upload__intro>p:last-child {
  max-width:860px;
  margin:0!important;
  color:#435a4d;
  line-height:1.6;
  font-size:clamp(14px,1.3vw,16px);
}
.bac-hub form.bac-upload__form {display:block!important;width:100%;max-width:100%;min-width:0}
.bac-hub .bac-upload__basics {
  width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(12px,2vw,22px);align-items:start;margin:0 0 24px;
}
.bac-hub .bac-upload__basics>label {min-width:0;margin:0!important}
.bac-hub .bac-upload__basics label small,
.bac-hub .bac-upload__required {
  display:inline;color:#637367;font-size:12px;font-weight:500;
}
.bac-hub .bac-upload__basics input[type=text],
.bac-hub .bac-upload__basics input[type=file] {
  display:block;width:100%!important;max-width:100%!important;
  min-width:0;margin-top:7px!important;
  font-family:"BAC Modern",Inter,Arial,sans-serif;
}
.bac-hub .bac-upload__basics input[type=file] {overflow:hidden;font-size:14px}
/* The original giant radio issue came from generic input width:100%.
   Reset browser radio dimensions with stronger scope, including Elementor. */
.bac-hub .bac-gallery-destination {
  display:block!important;width:100%!important;max-width:100%!important;
  min-width:0!important;margin:0 0 24px!important;padding:18px!important;
  border:1px solid #cbd9c8;border-radius:14px;background:#f6f8f2;
}
.bac-hub .bac-gallery-destination legend{
  display:table;padding:0 7px;
  font:700 clamp(17px,1.7vw,20px)/1.35 "BAC Heritage",Georgia,serif;
  color:#173b2c;
}
.bac-hub .bac-gallery-destination .bac-upload__field-hint{
  color:#586b5e;font-size:14px;line-height:1.5;
  margin:0 0 14px!important;
}
.bac-hub .bac-gallery-destination__options{
  display:grid;width:100%;min-width:0;
  grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch;
}
.bac-hub .bac-gallery-destination label.bac-gallery-destination__choice {
  display:flex!important;flex-direction:row!important;
  align-items:flex-start!important;justify-content:flex-start!important;
  gap:14px!important;width:100%!important;min-width:0!important;
  max-width:100%!important;height:auto!important;min-height:104px;
  padding:18px!important;margin:0!important;
  border:1px solid #cad7c7;border-radius:12px;
  background:#fffdf8;color:#183b2e;cursor:pointer;
  font-family:"BAC Modern",Inter,Arial,sans-serif;
  transition:border-color .2s,background-color .2s;
}
.bac-hub .bac-gallery-destination label.bac-gallery-destination__choice:has(input:checked) {
  border-color:#b88d42;background:#fbf5e7;
  box-shadow:inset 0 0 0 1px #b88d42;
}
.bac-hub .bac-gallery-destination label.bac-gallery-destination__choice:focus-within{
  outline:3px solid #d5b46b;outline-offset:3px;
}
.bac-hub .bac-gallery-destination__choice input[type=radio]{
  appearance:auto!important;-webkit-appearance:radio!important;
  display:inline-block!important;
  position:static!important;
  float:none!important;visibility:visible!important;opacity:1!important;
  flex:0 0 20px!important;
  width:20px!important;min-width:20px!important;max-width:20px!important;
  height:20px!important;min-height:20px!important;max-height:20px!important;
  padding:0!important;margin:3px 0 0!important;
  border-radius:50%!important;box-shadow:none!important;
  accent-color:#163a2e;vertical-align:top;
}
.bac-hub .bac-gallery-destination__choice .bac-gallery-destination__description{
  display:block!important;flex:1 1 auto!important;
  width:auto!important;min-width:0!important;max-width:100%;
  overflow-wrap:break-word;white-space:normal!important;
  text-align:left;line-height:1.45;
}
.bac-hub .bac-gallery-destination__choice .bac-gallery-destination__description strong{
  display:block;font-size:16px;line-height:1.3;margin:0 0 6px;
  color:#173a2d;
}
.bac-hub .bac-gallery-destination__choice .bac-gallery-destination__description small{
  display:block;font-size:14px;line-height:1.5;margin:0;
  color:#53675c;font-weight:400;
}
.bac-hub .bac-catch-inputs{
  display:block;width:100%;max-width:100%;min-width:0;
  margin:0 0 22px;padding:clamp(14px,2vw,22px);
}
.bac-hub .bac-catch-input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px}
.bac-hub .bac-catch-input-grid>label{min-width:0}
.bac-hub .bac-catch-input-grid :is(input,textarea){max-width:100%!important;width:100%!important;min-width:0}
.bac-hub .bac-upload__consents{display:grid;gap:12px;margin:0 0 22px;max-width:100%}
.bac-hub .bac-upload__consents label.bac-check{
  display:flex!important;align-items:flex-start!important;gap:12px!important;
  width:100%;min-width:0;margin:0!important;
  line-height:1.5;font-size:14px;
}
.bac-hub .bac-upload__consents label.bac-check input[type=checkbox]{
  display:inline-block!important;flex:0 0 19px!important;
  width:19px!important;max-width:19px!important;min-width:19px!important;
  height:19px!important;min-height:19px!important;
  margin:2px 0 0!important;padding:0!important;accent-color:#163a2e;
}
.bac-hub .bac-upload__consents label.bac-check span{
  flex:1 1 auto;min-width:0;overflow-wrap:anywhere;
}
.bac-hub .bac-upload__consents label.bac-public-consent{
  padding:15px!important;background:#fff7e6;border-radius:12px;
  border:1px solid #ecdfbe;
}
.bac-hub .bac-upload__footer {
  display:flex;flex-wrap:wrap;gap:14px;align-items:center;
  justify-content:space-between;padding-top:17px;border-top:1px solid #dce4d7;
}
.bac-hub .bac-upload__footer p {margin:0!important;color:#53665b;font-size:13px}
.bac-hub .bac-upload__footer button {max-width:100%;white-space:normal;text-align:center}
/* Tablet: controls stack without narrow two-column labels. */
@media (max-width: 1024px) {
  .bac-hub .bac-upload__basics{grid-template-columns:minmax(0,1fr)}
  .bac-hub .bac-gallery-destination__options{grid-template-columns:minmax(0,1fr)}
  .bac-hub .bac-gallery-destination label.bac-gallery-destination__choice{min-height:0}
}
/* Phone: no sideways scroll, generous tap targets, full-width submit. */
@media (max-width: 767px) {
  .bac-hub .bac-upload,.bac96-editable-tool .bac-hub .bac-upload{
    padding:18px 14px;margin-top:18px;
  }
  .bac-hub .bac-upload__intro{padding-bottom:15px;margin-bottom:18px}
  .bac-hub .bac-gallery-destination{padding:13px!important}
  .bac-hub .bac-gallery-destination label.bac-gallery-destination__choice{
    padding:14px!important;gap:12px!important;
  }
  .bac-hub .bac-catch-input-grid{grid-template-columns:minmax(0,1fr);gap:8px}
  .bac-hub .bac-catch-note-label{grid-column:1/-1}
  .bac-hub .bac-upload__footer{display:block}
  .bac-hub .bac-upload__footer p{margin:0 0 14px!important}
  .bac-hub .bac-upload__footer button{display:flex!important;width:100%!important}
}
@media (max-width: 380px) {
  .bac-hub .bac-upload,.bac96-editable-tool .bac-hub .bac-upload{padding:16px 11px}
  .bac-hub .bac-gallery-destination__choice .bac-gallery-destination__description strong{font-size:15px}
  .bac-hub .bac-gallery-destination__choice .bac-gallery-destination__description small{font-size:13px}
}
@media (prefers-reduced-motion:reduce){
  .bac-hub .bac-gallery-destination label.bac-gallery-destination__choice{transition:none}
}
