.gt-address-field { position: relative; }
.gt-address-form .gt-field-error { display: block; margin: 5px 0 0; color: #b42318; font-size: 13px; line-height: 1.4; text-align: left; }
.gt-address-form .gt-field-error[hidden], .gt-address-form .gt-validation-summary[hidden], .gt-address-form .gt-validation-source { display: none !important; }
.gt-address-form .gt-validation-summary { margin: 0 0 18px; padding: 11px 14px; border: 1px solid #efc2bd; border-radius: 7px; background: #fff2f0; color: #a1261c; font-size: 14px; line-height: 1.5; }
.gt-address-form .form-control.gt-native-validation-error { border-color: #b42318; background-color: #fff2f0; }
.gt-address-form .tooltip { display: none !important; }
.gt-address-form .validation-summary-errors { padding: 10px 14px; border-radius: 7px; color: #a1261c; background: #fff2f0; }
.gt-packstation-advice { display: flex; align-items: flex-start; gap: 10px; margin-top: 10px; padding: 12px 14px; border: 1px solid #e6d7a1; border-radius: 7px; background: #fffbea; color: #544926; font-size: 14px; line-height: 1.5; }
.gt-packstation-advice[hidden] { display: none !important; }
.gt-packstation-advice > .fa { flex: 0 0 auto; margin-top: 3px; color: #b87700; font-size: 18px; }
.gt-packstation-advice > p { margin: 0; }
.gt-address-company[hidden] { display: none !important; }
.gt-address-toggle { border: 0; padding: 4px 0; background: transparent; color: #326b46; font: inherit; text-align: left; text-decoration: underline; cursor: pointer; }
.gt-address-toggle:hover, .gt-address-toggle:focus { color: #244c32; }
.gt-address-hint { clear: both; margin: -5px 0 16px; font-size: 13px; line-height: 1.4; color: #626b5e; }
.gt-address-popup { position: absolute; top: 100%; left: 0; z-index: 1050; width: max(100%, 280px); max-width: calc(100vw - 40px); background: #fff; border: 1px solid #cbd8be; border-radius: 7px; box-shadow: 0 5px 16px #243b2526; overflow: hidden; }
.gt-address-popup--right { left: auto; right: 0; }
.gt-address-popup[hidden], .gt-address-status[hidden] { display: none !important; }
.gt-address-option { padding: 10px 12px; color: #343b33; cursor: pointer; line-height: 1.4; overflow-wrap: anywhere; }
.gt-address-option:hover, .gt-address-option[aria-selected="true"] { background: #edf3e5; color: #285f3e; }
.gt-address-attribution { display: block; padding: 5px 12px; text-align: right; font: 400 12px/1.5 Roboto, sans-serif; font-style: normal; letter-spacing: normal; white-space: nowrap; color: #5e5e5e; background: #fff; }
.gt-address-status { clear: both; margin: 10px 0 16px; padding: 9px 12px; border-radius: 7px; border: 1px solid #d4dec9; background: #f5f8ef; color: #334432; line-height: 1.5; }
.gt-address-status[data-state="warning"] { border-color: #e6d7a1; background: #fffbea; color: #544926; }
.gt-address-status p { margin: 0 0 8px; }
.gt-address-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.gt-address-actions .btn { margin: 0; white-space: normal; }
.gt-address-actions .btn:hover, .gt-address-actions .btn:focus { color: #fff; background: #498700; }

/* Shared compact address layout; native controls and conditional sections stay intact. */
/* Match the OrderWelcome title and forward action without changing other forms. */
#content .gt-guest-form .gt-guest-heading { margin: 0 0 14px; text-align: center; font-size: 32px; line-height: 1.2; font-weight: 400; text-transform: none; color: #303030; }
#content .gt-guest-form .gt-guest-heading:after { content: ''; display: block; position: static; width: 180px; max-width: 70%; height: 2px; margin: 12px auto 0; background: linear-gradient(to right, #106430 0%, #106430 33.333%, #ffa322 33.333%, #ffa322 66.666%, #97c01e 66.666%, #97c01e 100%); }
#content .gt-guest-form .gt-guest-forward { display: grid; grid-template-columns: 22px minmax(0, 1fr) 22px; align-items: center; gap: 10px; min-height: 52px; padding: 13px 18px; border: 0; border-radius: 12px; background: #97c01e; color: #fff; font-family: inherit; font-size: 20px; font-weight: 700; line-height: 1.3; white-space: normal; }
#content .gt-guest-form .gt-guest-forward > span { grid-column: 2; }
#content .gt-guest-form .gt-guest-forward > .fa { grid-column: 3; justify-self: center; margin: 0; font-size: 17px; line-height: 1; }
#content .gt-guest-form .gt-guest-forward:hover, #content .gt-guest-form .gt-guest-forward:focus { background: #468c00; color: #fff; }
@media (max-width: 600px) {
    #content .gt-guest-form .gt-guest-heading { font-size: 28px; margin-bottom: 12px; }
    #content .gt-guest-form .gt-guest-forward { font-size: 19px; }
}
.gt-address-form { max-width: 780px; margin: 0 auto; padding: 0 12px; }
.gt-address-form .form-group { margin: 0 0 14px; }
.gt-address-form .form-group:after { content: ''; display: table; clear: both; }
.gt-address-form .form-group > [class*="col-"] { float: none; width: 100%; margin-left: 0; padding-left: 0; padding-right: 0; }
.gt-address-form .control-label { display: block; text-align: left; padding: 0 0 5px; font-size: 14px; }
.gt-address-form .control-label[hidden] { display: none !important; }
.gt-address-form label { margin-bottom: 5px; }
.gt-address-form .checkbox-inline { display: inline-block; margin-right: 15px; }
.gt-address-form .form-control { min-height: 44px; border-radius: 6px; box-shadow: none; }
.gt-address-form .gt-compound-row > :not(.control-label) { display: flex; gap: 14px; }
.gt-address-form .gt-compound-row > :not(.control-label) > [class*="col-"] { float: none; padding: 0; min-width: 0; }
.gt-address-form .gt-compound-row label { display: block; font-size: 14px; }
.gt-address-form .gt-postal-short { display: none; }
.gt-address-form .gt-compound-row .col-xs-6 { flex: 1 1 50%; width: 50%; }
.gt-address-form .gt-compound-row .col-xs-3 { flex: 0 0 24%; width: 24%; }
.gt-address-form .gt-compound-row .col-xs-9 { flex: 1 1 0; width: auto; }
.gt-form-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.gt-form-pair > * { min-width: 0; }
.gt-address-form section > h4, .gt-address-form h4, .gt-address-form .formheadline { text-align: left; margin: 0 0 16px; font-size: 19px; font-weight: 600; }
.gt-guest-form > section { padding: 22px 0; border-bottom: 1px solid #e4e8df; }
.gt-guest-form > section:first-of-type { padding-top: 8px; }
.gt-guest-form .gt-contact-section { border-bottom: 0; }
.gt-guest-form .gt-contact-section .gt-contact-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
.gt-guest-form .gt-delivery-section .radio { margin: 0; padding: 0; position: relative; }
.gt-guest-form .gt-delivery-section .radio input { position: absolute; left: 16px; top: 16px; margin: 0; z-index: 1; }
.gt-guest-form .gt-delivery-section .radio label { display: block; padding: 12px 16px 12px 42px; margin: 0; min-height: 44px; border: 1px solid #d7dfce; border-radius: 7px; background: #fff; font-weight: 400; }
.gt-guest-form .gt-delivery-section .radio input:checked + label { background: #f1f6e8; border-color: #73984e; font-weight: 600; }
.gt-guest-form .gt-delivery-section .radio label:after { display: none; }
.gt-guest-form .gt-delivery-section > [data-id="FieldCondition"] { padding: 12px 16px 0; margin-bottom: 16px; border-left: 2px solid #cdddbb; }
.gt-guest-form > .row { margin: 0; }
.gt-guest-form > .row > [class*="col-"] { padding: 0; }

.gt-address-status > .gt-address-attribution { background: transparent; padding: 0; }
.gt-address-status[data-state="success"] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; border: 0; background: #f3f7ed; }
.gt-address-status[data-state="success"] p { margin: 0; color: #326b46; }
.gt-address-status[data-state="success"] p:before { content: '\2713 '; font-weight: 700; margin-right: 8px; }
.gt-address-status[data-state="success"] .gt-address-attribution { margin-left: auto; }
.gt-address-form:not(.gt-submitted) input.gt-pristine:not(.input-validation-error):not(.gt-address-confirmed):not(.gt-format-valid):not(.gt-field-filled) { border-color: #d6dbd1; background-color: #fff; }
.gt-email-help { margin-top: 5px; color: #805a1d; font-size: 13px; line-height: 1.4; overflow-wrap: anywhere; }
.gt-email-help[hidden] { display: none; }
.gt-email-valid { color: #326b46; }
.gt-address-form input.form-control.gt-format-valid,
.gt-address-form input.form-control.gt-field-filled,
.gt-address-form input.form-control.gt-address-confirmed { background-color: #f0f7e9; border-color: #86a574; }
.gt-address-form input.form-control.gt-local-invalid { border-color: #ae572e; background-color: #fff5ed; background-image: none; }
.gt-local-help { margin-top: 5px; font-size: 13px; line-height: 1.4; color: #795027; }
.gt-local-help[hidden] { display: none; }
.gt-delivery-summary { display: block; margin-top: 4px; font-size: 13px; font-weight: 400; line-height: 1.45; color: #5c6854; overflow-wrap: anywhere; }
.gt-delivery-summary:empty { display: none; }
.gt-required-star { color: #c52c26; font-weight: 700; }
.gt-delivery-section .form-group[hidden], [data-gt-packstation-panel][hidden] { display: none !important; }
.gt-address-form input.form-control.gt-format-valid,
.gt-address-form input.form-control.gt-field-filled,
.gt-address-form input.form-control.gt-address-confirmed {
    padding-right: 38px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='23' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='%2395bc0e'/%3E%3Cpath d='m6.5 12 3.5 3.5 7.5-8' fill='none' stroke='white' stroke-width='2.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-position: right 9px center; background-repeat:no-repeat;
}
.gt-address-form input.form-control.gt-local-invalid { background-image: none; }
.gt-address-status[data-state="success"] p:before { display: inline-block; width: 21px; height: 21px; line-height: 21px; text-align: center; border-radius: 50%; background: #95bc0e; color: #fff; }
@media (max-width: 767px) {
    .gt-address-form .gt-postal-full { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .gt-address-form .gt-postal-short { display: inline; }
}
@media (max-width: 540px) {
    .gt-address-form { padding: 0; }
    .gt-address-form .gt-compound-row > :not(.control-label) { gap: 10px; }
    .gt-address-form .gt-compound-row .col-xs-3 { flex-basis: 104px; width: 104px; }
    .gt-address-form .gt-compound-row label { white-space: nowrap; }
    .gt-form-pair, .gt-guest-form .gt-contact-section .gt-contact-fields { grid-template-columns: 1fr; gap: 0; }
    .gt-guest-form .gt-delivery-section > [data-id="FieldCondition"] { padding-left: 10px; padding-right: 0; }
    .gt-address-popup { min-width: 0; max-width: calc(100vw - 48px); }
}

/* Address warnings match the delivery notice; actions stay explicit and responsive. */
.gt-address-status[data-state="warning"] { display:grid; grid-template-columns:18px minmax(0,1fr); column-gap:10px; padding:12px 14px; font-size:14px; line-height:1.5; }
.gt-address-status[data-state="warning"]:before { content:"\f071"; font-family:FontAwesome; font-size:18px; color:#b87700; line-height:1.5; grid-column:1; grid-row:1; }
.gt-address-status[data-state="warning"] > p { grid-column:2; }
.gt-address-status[data-state="warning"] > .gt-address-actions { grid-column:1 / -1; }
.gt-address-actions .btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:8px 12px; font-size:13px; line-height:1.4; }
.gt-address-actions .btn > .fa { flex:0 0 auto; }
@media(max-width:767px) {
 .gt-address-actions { flex-direction:column; width:100%; }
 .gt-address-actions .btn { width:100%; min-height:44px; font-size:14px; }
}
/* Shared standard for registration, guest ordering and address editing. */
#content .gt-standard-form { max-width:1100px; width:100%; margin:0 auto; padding:24px; border:1px solid #dedfd9; border-radius:12px; background:#fff; }
#content .gt-standard-form .gt-form-heading { margin:0 0 12px; text-align:center; font-size:32px; line-height:1.2; font-weight:400; text-transform:none; }
#content .gt-standard-form .gt-form-heading:after { content:''; display:block; width:180px; height:2px; margin:12px auto 0; background:linear-gradient(to right,#106430 33.333%,#ffa322 33.333%,#ffa322 66.666%,#97c01e 66.666%); }
.gt-form-intro { text-align:center; margin-bottom:24px; color:#596452; }
.gt-form-layout { display:grid; grid-template-columns:minmax(180px, 1fr) minmax(0, 2.1fr); gap:24px; align-items:start; }
.gt-form-content { min-width:0; }
.gt-form-nav { position:sticky; top:24px; border:1px solid #d7dfce; border-radius:9px; padding:12px; background:#fafbf8; }
.gt-form-nav > p { margin:0 0 10px; color:#326b46; font-weight:700; }
.gt-form-nav a { display:flex; align-items:center; gap:10px; min-height:48px; padding:10px; margin-top:5px; border-radius:6px; color:#326b46; text-decoration:none; }
.gt-form-nav a:hover { background:#edf3e3; }
.gt-step-number { display:inline-flex; align-items:center; justify-content:center; flex:0 0 25px; height:25px; border:1px solid #bacaab; border-radius:50%; }
.gt-form-nav a[aria-current="step"] { background:#edf3e3; font-weight:700; }
.gt-form-nav a[aria-current="step"] .gt-step-number { background:#326b46; color:#fff; border-color:#326b46; }
#content .gt-standard-form .gt-flow-section { margin:0 0 28px; padding:0; border:0; scroll-margin-top:24px; }
#content .gt-standard-form .gt-flow-heading { display:flex; align-items:center; gap:10px; margin:0 0 18px; padding:12px 14px; background:#f0f5e7; border-radius:7px; color:#326b46; text-align:left; font-size:18px; font-weight:700; line-height:1.3; text-transform:none; }
#content .gt-standard-form .gt-flow-heading:after { display:none; }
.gt-flow-heading > .fa { flex:0 0 22px; font-size:18px; }
.gt-standard-form .gt-consent-box { padding:16px; background:#f5f7ed; border:1px solid #d7dfce; border-radius:9px; }
.gt-standard-form input[type="checkbox"], .gt-standard-form input[type="radio"] { width:21px; height:21px; accent-color:#468c00; cursor:pointer; }
.gt-standard-form .checkbox { position:relative; padding:0; margin:0 0 16px; }
.gt-standard-form .checkbox input[type="checkbox"] { position:absolute; left:0; top:2px; margin:0; opacity:1; appearance:auto; z-index:1; }
.gt-standard-form .checkbox label { display:block; padding:0 0 0 32px; min-height:32px; cursor:pointer; font-weight:400; line-height:1.5; }
.gt-standard-form .checkbox label:before,.gt-standard-form .checkbox label:after { display:none; }
.gt-standard-form .checkbox label small { display:block; color:#5b6654; }
.gt-standard-form .gt-legal-links { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin:12px 0 18px; }
.gt-standard-form .gt-legal-links a { color:#326b46; text-decoration:underline; padding:4px 0; }
#content .gt-standard-form .gt-register-forward { display:flex; align-items:center; justify-content:center; gap:12px; width:100%; min-height:52px; padding:13px 18px; border:0; border-radius:12px; background:#97c01e; color:#fff; font-size:20px; font-weight:700; white-space:normal; }
#content .gt-standard-form .gt-register-forward:hover { background:#468c00; }
.gt-standard-form .gt-password-meter[hidden] { display:none !important; }
.gt-standard-form .gt-password-untouched .field-validation-error { display:none !important; }
.gt-standard-form .gt-password-untouched input { border-color:#d6dbd1 !important; background:#fff !important; }
.gt-standard-form a:focus-visible,.gt-standard-form button:focus-visible { outline:2px solid #326b46; outline-offset:3px; }
@media(max-width:767px) {
 #content .gt-standard-form { padding:16px 12px; }
 .gt-form-layout { display:block; }
 .gt-form-nav { display:none; }
 #content .gt-standard-form .gt-flow-heading { font-size:17px; }
 #content .gt-standard-form .gt-form-heading { font-size:28px; }
 .gt-standard-form .gt-consent-box { padding:12px; }
}
.gt-standard-form .gt-password-toggle { display:block; margin:4px 0 0 auto; padding:5px 0; border:0; background:none; color:#326b46; text-decoration:underline; font-size:13px; }

/* Quiet first entry and restrained section completion feedback. */
.gt-address-form .form-control.gt-error-deferred { border-color:#d6dbd1 !important; background-color:#fff !important; background-image:none !important; }
.gt-form-nav a[data-state="complete"] .gt-step-number { border-color:#97c01e; background:#97c01e; color:#fff; font-weight:700; }
.gt-form-nav a[data-state="warning"] .gt-step-number { border-color:#d98a0b; background:#fff4dd; color:#995d00; font-weight:700; }
.gt-form-nav a[data-state="warning"] { color:#805a1d; }
.gt-form-nav a[data-state="warning"][aria-current="step"] { background:#fff7e7; }
/* Inline salutations: align real radio controls with their clickable labels. */
.gt-address-form :is(.radio-inline, .checkbox-inline):has(> input[type="radio"]) { display:inline-flex; align-items:center; gap:8px; min-height:44px; margin:0 20px 4px 0; padding:0; vertical-align:middle; }
.gt-address-form :is(.radio-inline, .checkbox-inline) > input[type="radio"] { position:static; flex:0 0 21px; width:21px; height:21px; margin:0; vertical-align:middle; }
.gt-address-form :is(.radio-inline, .checkbox-inline):has(> input[type="radio"]) > label { display:block; margin:0; padding:0; line-height:1.4; cursor:pointer; }
/* Consent choices share a compact, generous click area; document links stay separate. */
.gt-standard-form .gt-consent-box .checkbox { display:grid; grid-template-columns:21px minmax(0,1fr); column-gap:12px; margin:0; padding:12px; border-radius:7px; background:#fff; }
.gt-standard-form .gt-consent-box .checkbox input[type="checkbox"] { position:static; grid-column:1; grid-row:1; margin:2px 0 0; }
.gt-standard-form .gt-consent-box .checkbox label { grid-column:2; grid-row:1; margin:0; padding:0; min-height:24px; }
.gt-standard-form .gt-consent-box .checkbox [data-valmsg-for] { grid-column:2; }
.gt-standard-form .gt-consent-box .checkbox:has(input:checked) { background:#edf4e3; }
.gt-standard-form .gt-consent-box .checkbox:hover { background:#faf9f4; box-shadow:inset 0 0 0 1px #cbd3c0; }
.gt-standard-form .gt-consent-box .checkbox:focus-within { outline:1px solid #73984e; }
.gt-standard-form .gt-consent-box .form-group { margin-bottom:10px; }
.gt-standard-form .gt-terms-choice { background:#fff; border-radius:7px; margin-bottom:12px; }
.gt-standard-form .gt-terms-choice .gt-legal-links { margin:0; padding:0 12px 10px 45px; gap:5px; font-size:14px; }
.gt-standard-form select.form-control { min-height:44px; padding-right:34px; border-color:#d6dbd1; border-radius:7px; background-color:#fff; color:#333; }
.gt-standard-form select.form-control:focus { border-color:#73984e; box-shadow:0 0 0 2px rgba(115,152,78,.15); }
.gt-standard-form .gt-consent-box.gt-consent-invalid { border-color:#b42318; }
.gt-standard-form .gt-terms-invalid input[type="checkbox"] { appearance:none; box-sizing:border-box; border:2px solid #b42318; border-radius:4px; background:#fff; outline:none; box-shadow:none; }
.gt-standard-form .gt-terms-invalid input[type="checkbox"]:focus-visible { outline:2px solid #326b46; outline-offset:3px; }
.gt-standard-form .gt-consent-box .gt-terms-error { grid-column:2; margin-top:6px; }
.gt-address-form .gt-address-actions .gt-address-keep-primary { background:#97c01e; border:1px solid #97c01e; color:#fff; font-weight:700; min-height:44px; padding:10px 16px; }
.gt-address-form .gt-address-actions .gt-address-keep-primary:hover { background:#468c00; border-color:#468c00; }
.gt-guest-form .gt-packstation-group { border:1px solid transparent; border-radius:7px; margin-bottom:16px; }
.gt-guest-form .gt-packstation-group:has(#Packstation:checked) { border-color:#73984e; }
.gt-guest-form .gt-packstation-group > .form-group { margin-bottom:0; }
.gt-guest-form .gt-packstation-group .radio { margin:0; }
.gt-guest-form .gt-packstation-group:has(#Packstation:checked) label[for="Packstation"] { border:0; border-bottom:1px solid #cdddbb; border-radius:6px 6px 0 0; }
.gt-guest-form .gt-packstation-group .gt-packstation-advice { margin:12px 16px; }
.gt-guest-form .gt-packstation-group > [data-gt-packstation-panel] { border:0; padding:12px 16px 0; margin:0; }
.gt-guest-form .gt-shipping-group { border:1px solid transparent; border-radius:7px; margin-bottom:16px; }
.gt-guest-form .gt-shipping-group:has(#ShippingAddress:checked) { border-color:#73984e; }
.gt-guest-form .gt-shipping-group > .form-group { margin-bottom:0; }
.gt-guest-form .gt-shipping-group .radio { margin:0; }
.gt-guest-form .gt-shipping-group:has(#ShippingAddress:checked) label[for="ShippingAddress"] { border:0; border-bottom:1px solid #cdddbb; border-radius:6px 6px 0 0; }
.gt-guest-form .gt-shipping-group > [data-id="FieldCondition"] { border:0; padding:12px 16px 0; margin:0; }
.gt-standard-form .gt-password-controls { display:grid; grid-template-columns:minmax(0,1fr) 140px; column-gap:12px; align-items:start; }
.gt-standard-form .gt-password-controls > .form-control { grid-column:1; grid-row:1; min-width:0; width:100%; }
.gt-standard-form .gt-password-controls > .gt-password-toggle { grid-column:2; grid-row:1; align-self:center; margin:0; padding:8px 0; min-height:44px; width:100%; text-align:right; }
.gt-standard-form .gt-password-controls > .gt-field-error,
.gt-standard-form .gt-password-controls > [data-valmsg-for] { grid-column:1 / -1; }
.gt-standard-form .gt-password-help { padding:12px 14px; border:1px solid #e6d7a1; border-radius:7px; background:#fffbea; color:#334432; font-size:14px; line-height:1.5; }
.gt-standard-form .gt-password-help > .progress, .gt-standard-form .gt-password-help > label { display:none; }
.gt-password-checklist { display:grid; grid-template-columns:1fr 1fr; gap:4px 16px; list-style:none; padding:0; margin:0; }
.gt-password-checklist li { display:flex; align-items:center; gap:8px; min-height:28px; }
.gt-password-checklist li:before { content:''; display:inline-flex; flex:0 0 21px; align-items:center; justify-content:center; width:21px; height:21px; border:1px solid #bacaab; border-radius:50%; background:#fff; color:#fff; font:14px/1 FontAwesome; }
.gt-password-checklist li[data-met="true"]:before { content:'\f00c'; border-color:#97c01e; background:#97c01e; }
.gt-password-checklist [data-met="true"] { color:#326b46; }
.gt-password-checklist [data-met="false"] { color:#596452; }
.gt-email-review { display:grid; grid-template-columns:30px minmax(0,1fr); gap:12px; margin:10px 0 12px; padding:12px 14px; border:1px solid #e6d7a1; border-radius:7px; background:#fffbea; color:#59491f; line-height:1.5; }
.gt-email-review[hidden] { display:none; }
.gt-email-review p { margin:0 0 6px; }
.gt-email-review-address { display:block; overflow-wrap:anywhere; margin:0; min-width:0; font-size:18px; color:#326b46; }
@media(max-width:767px) {
 .gt-standard-form .gt-password-controls { grid-template-columns:minmax(0,1fr) 124px; column-gap:8px; }
 .gt-password-checklist { grid-template-columns:1fr; }
}

.gt-email-review-icon { font-size:28px; color:#b77b00; margin-top:3px; }
.gt-email-review-heading { font-weight:700; font-size:17px; }
.gt-email-review-edit { margin:0; padding:5px 10px; border:1px solid #326b46; border-radius:6px; background:#fff; color:#326b46; font-weight:700; cursor:pointer; }
.gt-email-review-edit:hover { background:#edf3e3; }
.gt-step-feedback { display:block; margin-top:3px; font-size:12px; line-height:1.3; font-weight:400; }
.gt-step-feedback[hidden], .gt-required-note[hidden], .gt-required-note[hidden] + br { display:none; }
.gt-required-note { display:block; margin:8px 0 10px; padding:11px 14px; border:1px solid #efc2bd; border-radius:7px; background:#fff2f0; color:#a1261c; font-size:14px; line-height:1.5; }

.gt-address-form .form-control.gt-inline-invalid { border-color:#b42318; background-color:#fff2f0; }
.gt-login.gt-address-form .gt-field-error, .gt-login-validation.gt-address-form .gt-field-error { font-size:14px; margin-top:6px; }

.gt-email-review-row { display:flex; align-items:center; flex-wrap:wrap; gap:6px 12px; margin:6px 0 8px; }
.gt-email-review-row .gt-email-review-edit { flex:0 0 auto; }
.gt-email-review p:last-child { margin-bottom:0; }
.gt-guest-form .gt-contact-section { padding-bottom:0; margin-bottom:8px; }

#content .gt-standard-form .gt-contact-section { margin-bottom:8px; }

/* Address editing shares the form standard; registered customers retain their account menu. */
#content .gt-guest-shell { border:0; box-shadow:none; }
#content .gt-manage-address-form.gt-standard-form { border:0; box-shadow:none; }
.gt-manage-address-form .gt-flow-section > .row { margin:0; }
.gt-manage-address-form .gt-flow-section > .row > [class*="col-"] { width:100%; float:none; margin:0; padding:0; }
.gt-manage-address-form[data-gt-account-menu="true"] .gt-form-layout { display:block; }
.gt-manage-address-form[data-gt-account-menu="true"] .gt-form-nav { display:none !important; }
#content .gt-manage-address-form .gt-address-save { width:100%; min-height:52px; padding:13px 18px; border:0; border-radius:12px; background:#97c01e; color:#fff; font-size:20px; font-weight:700; white-space:normal; }
#content .gt-manage-address-form .gt-address-save:hover { background:#468c00; }

/* Only the size of the new-address actions is adjusted in checkout. */
#content #checkout-index #checkout-accordion :is(.shipping-address,.billing-address) .panel-body > a.btn-default { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:11px 16px; font-size:16px; line-height:1.42857143; }

.gt-manage-address-form .gt-address-defaults { margin:12px 0; padding:12px 14px; border:1px solid #e6d7a1; border-radius:7px; background:#fffbea; color:#59491f; }
.gt-manage-address-form .gt-address-defaults > p { margin:0 0 8px; font-size:16px; font-weight:700; }
.gt-manage-address-form .gt-address-defaults > p .fa { margin-right:7px; color:#b77b00; }
.gt-manage-address-form .gt-address-defaults .form-group { margin:0; }
.gt-manage-address-form .gt-address-defaults .checkbox { display:grid; grid-template-columns:21px minmax(0,1fr); gap:12px; margin:0; padding:7px 0; }
.gt-manage-address-form .gt-address-defaults .checkbox input[type="checkbox"] { position:static; grid-column:1; grid-row:1; width:21px; height:21px; margin:2px 0 0; }
.gt-manage-address-form .gt-address-defaults .checkbox label { grid-column:2; grid-row:1; padding:0; margin:0; min-height:24px; }
.gt-manage-address-form .gt-address-defaults .checkbox [data-valmsg-for] { grid-column:2; }
.gt-manage-address-form .gt-address-save-row { margin:0; }

.gt-manage-choices { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; margin:0; }
.gt-manage-choices.gt-manage-choices-single { grid-template-columns:1fr; }
.gt-address-form .gt-manage-choice[hidden], .gt-address-type-notice[hidden] { display:none !important; }
.gt-address-form .gt-manage-choice:has(input:disabled) { cursor:default; color:#62665e; }
.gt-address-type-notice { margin:0 0 12px; padding:12px 14px; border:1px solid #e6d7a1; border-radius:7px; background:#fffbea; color:#544926; }
.gt-address-type-notice > p { margin:0 0 10px; }
.gt-create-packstation { display:inline-flex; align-items:center; justify-content:center; max-width:100%; min-height:44px; padding:10px 14px; border:1px solid #326b46; border-radius:7px; background:#326b46; color:#fff; font:inherit; font-weight:700; white-space:normal; cursor:pointer; }
.gt-create-packstation:hover { background:#255334; }
.gt-create-packstation:focus-visible { outline:3px solid #b87700; outline-offset:3px; }
.gt-address-form .gt-manage-choice { display:flex; align-items:center; gap:10px; min-height:48px; margin:0; padding:12px 14px; border:1px solid #d7dfce; border-radius:7px; cursor:pointer; font-weight:400; }
.gt-address-form .gt-manage-choice:has(input:checked) { position:relative; z-index:1; border-color:#73984e; border-bottom-color:transparent; border-radius:7px 7px 0 0; background:#f1f6e8; font-weight:700; }
.gt-address-form .gt-manage-choice:has(input:checked)::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:#f1f6e8; }
.gt-manage-choice > span { display:flex; flex-wrap:wrap; align-items:center; gap:5px; min-width:0; }
.gt-manage-packstation-logo { width:80px; height:auto; max-width:100%; }
.gt-manage-choices:has(input[value="0"]:checked) + .gt-manage-destination { border-top-left-radius:0; }
.gt-manage-choices:has(input[value="1"]:checked) + .gt-manage-destination { border-top-right-radius:0; }
.gt-address-form .gt-manage-choice input[type="radio"] { position:static; flex:0 0 21px; width:21px; height:21px; margin:0; }
.gt-manage-destination { padding:16px 16px 2px; border:1px solid #73984e; border-radius:7px; }
.gt-manage-optional-body[hidden] { display:none !important; }
.gt-manage-optional-body > [class*="col-"] { float:none; width:100%; margin-left:0; padding:0; }
.gt-manage-optional-body { margin-top:8px; }
.gt-manage-address-form .gt-compound-row .col-xs-4 { flex:0 0 24%; width:24%; }
.gt-manage-address-form .gt-compound-row .col-xs-8 { flex:1 1 0; width:auto; }
@media(max-width:767px) { .gt-manage-choices { gap:6px; } .gt-address-form .gt-manage-choice { gap:7px; padding:10px 8px; } .gt-manage-destination { padding:12px 10px 0; } }

/* Local address advice sits directly below the affected input row. */
.gt-address-form .gt-compound-row > :not(.control-label) { flex-wrap:wrap; }
.gt-address-form .gt-compound-row .gt-address-status { flex:0 0 100%; width:100%; }
.gt-address-form .gt-address-status { width:100%; margin:8px 0 12px; }
.gt-address-form input.form-control.gt-address-warning:not(.input-validation-error):not(.gt-inline-invalid):not(.gt-native-validation-error):not(.gt-local-invalid):not(.error):not(.gt-address-error):not(.gt-error-deferred) {
    border-color:#f89832;
    background-color:#fffdf2;
    background-image:none;
    box-shadow:0 3px 0 rgba(150,84,20,.22), 0 5px 8px rgba(150,84,20,.12);
}
.gt-address-form input.form-control:is(.gt-inline-invalid,.gt-native-validation-error,.input-validation-error,.gt-local-invalid,.error,.gt-address-error):not(.gt-error-deferred) {
    border-color:#b42318;
    background-color:#fff2f0;
    background-image:none;
    box-shadow:0 3px 0 rgba(140,35,29,.22), 0 5px 8px rgba(140,35,29,.12);
}
.gt-address-form .gt-address-status[data-state="warning"] {
    border-color:#f89832;
    background:#fffaf0;
    color:#4c3c22;
    box-shadow:0 4px 8px rgba(121,77,24,.11);
}
.gt-address-form .gt-address-status[data-state="warning"]:before { color:#ac6000; }
.gt-address-form .gt-address-status[data-state="error"] {
    display:grid;
    grid-template-columns:18px minmax(0,1fr);
    column-gap:10px;
    padding:12px 14px;
    border-color:#d77169;
    background:#fff2f0;
    color:#7e241d;
    font-size:14px;
    line-height:1.5;
    box-shadow:0 4px 8px rgba(140,35,29,.11);
}
.gt-address-form .gt-address-status[data-state="error"]:before {
    content:"\f06a";
    font-family:FontAwesome;
    font-size:18px;
    color:#b42318;
    grid-column:1;
    grid-row:1;
}
.gt-address-form .gt-address-status[data-state="error"] > p { grid-column:2; }
.gt-address-form .gt-address-status[data-state="error"] > .gt-address-actions { grid-column:1 / -1; }
.gt-address-form .gt-address-status .gt-address-actions .gt-address-action-fix {
    border:1px solid #e98a28;
    background:#f89832;
    color:#302614;
    font-weight:700;
}
.gt-address-form .gt-address-status .gt-address-actions .gt-address-action-fix:hover,
.gt-address-form .gt-address-status .gt-address-actions .gt-address-action-fix:focus {
    border-color:#ce7115;
    background:#e88322;
    color:#241c10;
}
.gt-address-form .gt-address-status .gt-address-actions :is(.gt-address-action-review,.gt-address-action-confirm) {
    border:1px solid #efb36f;
    background:#ffdeb5;
    color:#4c3c22;
    font-weight:600;
}
.gt-address-form .gt-address-status .gt-address-actions :is(.gt-address-action-review,.gt-address-action-confirm):hover,
.gt-address-form .gt-address-status .gt-address-actions :is(.gt-address-action-review,.gt-address-action-confirm):focus {
    border-color:#e98a28;
    background:#ffd29b;
    color:#3b2e1a;
}
.gt-manage-address-form .gt-address-defaults-hint { display:block; margin:0 0 7px; font-size:13px; line-height:1.4; font-weight:400; color:#665535; }

/* Keep keyboard and pointer focus distinct from warning and error colours. */
.gt-address-form :is(input.form-control,select.form-control,textarea.form-control):focus,
.gt-address-form .gt-address-actions .btn:focus {
    outline:3px solid #326b46;
    outline-offset:2px;
}
.gt-address-form :is(input[type="checkbox"],input[type="radio"]):focus-visible {
    outline:2px solid #326b46;
    outline-offset:3px;
}

/* Message icons use the same colour as their status. */
.gt-address-form .gt-address-status[data-state="warning"]:before,
.gt-address-form .gt-packstation-advice > .fa,
.gt-address-form .gt-email-review-icon { color:#f89832; }
.gt-address-form .gt-address-status[data-state="error"]:before { color:#b42318; }
.gt-address-form .gt-address-status[data-state="info"] {
    display:grid;
    grid-template-columns:18px minmax(0,1fr);
    column-gap:10px;
}
.gt-address-form .gt-address-status[data-state="info"]:before {
    content:"\f05a";
    font-family:FontAwesome;
    font-size:18px;
    color:#326b46;
    grid-column:1;
    grid-row:1;
}
.gt-address-form .gt-address-status[data-state="info"] > p,
.gt-address-form .gt-address-status[data-state="info"] > .gt-address-attribution { grid-column:2; }
.gt-address-form .gt-address-status[data-state="info"] > .gt-address-actions { grid-column:1 / -1; }
.gt-address-form .gt-address-status[data-state="success"] p:before { background:#326b46; }
.gt-manage-address-form .gt-address-defaults > p .fa { color:#326b46; }

/* One state language for the field, its message and the section overview. */
#content .gt-standard-form .gt-flow-heading { background:#f7f8f5; color:#34433a; }
#content .gt-standard-form .gt-flow-heading > .fa { color:#326b46; }
.gt-form-nav a[data-state="warning"],
.gt-form-nav a[data-state="warning"][aria-current="step"] { background:#fffaf0; color:#71420d; }
.gt-form-nav a[data-state="warning"] .gt-step-number { border-color:#f89832; background:#fffaf0; color:#b25f0b; }
.gt-form-nav a[data-state="error"],
.gt-form-nav a[data-state="error"][aria-current="step"] { background:#fff2f0; color:#8a241c; }
.gt-form-nav a[data-state="error"] .gt-step-number { border-color:#b42318; background:#b42318; color:#fff; }
.gt-form-nav a[data-state="complete"] .gt-step-number { border-color:#97c01e; background:#97c01e; color:#fff; }
.gt-manage-address-form .gt-address-defaults { background:#f7f8f5; border-color:#d6dbd1; color:#34433a; }
.gt-standard-form .gt-required-note { display:none !important; }
@media (min-width:768px) { .gt-standard-form .gt-validation-summary { display:none !important; } }

.gt-address-form :is(input.form-control,select.form-control,textarea.form-control) {
    --gt-focus-color:#326b46;
    --gt-focus-shadow:rgba(50,107,70,.22);
}
.gt-address-form input.form-control:is(.gt-address-warning,.gt-google-warning):not(.gt-inline-invalid):not(.input-validation-error):not(.gt-native-validation-error):not(.gt-local-invalid):not(.gt-address-error):not(.error) {
    --gt-focus-color:#f89832;
    --gt-focus-shadow:rgba(150,84,20,.24);
    border-color:#f89832;
    background-color:#fffaf0;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23f89832' d='M12 2 1 21h22L12 2Z'/%3E%3Cpath fill='%23fff' d='M11 8h2v7h-2zm0 9h2v2h-2z'/%3E%3C/svg%3E");
    background-position:right 10px center;
    background-repeat:no-repeat;
    background-size:22px 22px;
    padding-right:40px;
}
.gt-address-form input.form-control:is(.gt-inline-invalid,.gt-native-validation-error,.input-validation-error,.gt-local-invalid,.error,.gt-address-error):not(.gt-error-deferred) {
    --gt-focus-color:#b42318;
    --gt-focus-shadow:rgba(140,35,29,.24);
    border-color:#b42318;
    background-color:#fff2f0;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='%23b42318'/%3E%3Cpath fill='%23fff' d='M11 5h2v10h-2zm0 12h2v2h-2z'/%3E%3C/svg%3E");
    background-position:right 10px center;
    background-repeat:no-repeat;
    background-size:22px 22px;
    padding-right:40px;
}
.gt-address-form :is(input.form-control,select.form-control,textarea.form-control):focus {
    border-color:var(--gt-focus-color);
    border-width:2px;
    outline:none;
    box-shadow:0 3px 0 var(--gt-focus-shadow),0 5px 8px var(--gt-focus-shadow);
}

/* Address advice follows the text column; source attribution sits at its right edge. */
.gt-address-form .gt-address-status[data-state="warning"] {
    grid-template-columns:30px minmax(0,1fr);
    column-gap:12px;
    padding:16px 18px;
}
.gt-address-form .gt-address-status[data-state="warning"]:before {
    content:"\f12a";
    display:flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:30px;
    border:2px solid #f89832;
    border-radius:50%;
    background:#fff5e6;
    color:#f89832;
    font-size:17px;
    line-height:1;
}
.gt-address-form .gt-address-status[data-state="warning"] > p {
    grid-column:2;
    margin:0;
    line-height:1.5;
}
.gt-address-form .gt-address-status[data-state="warning"] > p + p {
    margin-top:8px;
    font-weight:600;
}
.gt-address-form .gt-address-status[data-state="warning"] > .gt-address-actions {
    grid-column:2;
    margin-top:12px;
}
.gt-address-form .gt-address-status[data-state="warning"] > .gt-address-attribution {
    grid-column:2;
    justify-self:end;
    margin-top:8px;
    padding:0;
}

/* A map marker denotes the separate address service result; field and step checks match. */
.gt-address-form .gt-address-status[data-state="success"] p:before {
    content:"\f041";
    font-family:FontAwesome;
    font-size:14px;
    font-weight:400;
    background:#326b46;
}
.gt-form-nav a[data-state="complete"] .gt-step-number {
    border-color:transparent;
    background:#95bc0e url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='23' viewBox='0 0 24 24'%3E%3Cpath d='m6.5 12 3.5 3.5 7.5-8' fill='none' stroke='white' stroke-width='2.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 23px 23px no-repeat;
    color:transparent;
    font-size:0;
}
