/* Fayda Digital 2.0 — checkout pattern.
   Presentation only: commerce and gateway behaviour remain in checkout.php. */

.fd2-checkout-page{background:var(--ivory);color:var(--ink);min-height:100vh}
.fd2-checkout-page main{min-height:70vh}
.fd2-checkout-page .container{margin-inline:auto;max-width:var(--max-w);padding-inline:var(--side-pad);width:100%}
.fd2-checkout-page .section-page-title{border-bottom:1px solid rgb(23 23 19 / .1);padding-block:46px 42px}
.fd2-checkout-page .main-page-title{max-width:780px}
.fd2-checkout-page .breadcrumbs{align-items:center;color:rgb(23 23 19 / .5);display:flex;flex-wrap:wrap;font-size:12px;gap:9px;letter-spacing:.04em;margin-bottom:30px}
.fd2-checkout-page .breadcrumbs a{border-bottom:1px solid transparent;color:inherit}
.fd2-checkout-page .breadcrumbs a:hover{border-color:var(--brass);color:var(--brass)}
.fd2-checkout-page .breadcrumbs p{color:var(--ink);margin:0}
.fd2-checkout-page .fd2-eyebrow{margin-bottom:14px}
.fd2-checkout-page .main-page-title h1{font-family:var(--serif);font-size:clamp(38px,6vw,66px);font-weight:400;letter-spacing:-.025em;line-height:1.04;margin:0 0 20px}
.fd2-checkout-page .main-page-title>.text-body-02{color:rgb(23 23 19 / .64);font-size:15.5px;line-height:1.7;margin:0;max-width:650px}
.fd2-checkout-trust{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:30px}
.fd2-checkout-trust span{align-items:center;color:var(--olive);display:inline-flex;font-size:12px;font-weight:600;gap:8px;letter-spacing:.035em}
.fd2-checkout-trust svg{fill:none;height:17px;stroke:var(--brass);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;width:17px}

.fd2-checkout-page .flat-spacing-mix-1{padding-block:48px 80px}
.fd2-checkout-page #checkout-container.row{align-items:start;display:grid;gap:28px;grid-template-columns:minmax(0,1fr);margin:0}
.fd2-checkout-page .col-lg-7,.fd2-checkout-page .col-lg-5{min-width:0;width:100%}
.fd2-checkout-page .tf-page-checkout{display:grid;gap:22px}
.fd2-checkout-page .box-ip-checkout{background:rgb(255 255 255 / .46);border:1px solid rgb(23 23 19 / .11);border-radius:2px;margin:0!important;padding:26px}
.fd2-checkout-page .fd2-checkout-step{color:var(--brass);font-size:10px;font-weight:700;letter-spacing:.18em;margin:0 0 9px;text-transform:uppercase}
.fd2-checkout-page .box-ip-checkout h2,.fd2-checkout-page .box-order-summary h2{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.2;margin:0 0 24px}

.fd2-checkout-page #billing-form{gap:19px!important}
.fd2-checkout-page .tf-grid-layout{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
.fd2-checkout-page fieldset{border:0;margin:0;min-width:0;padding:0}
.fd2-checkout-page .tf-field>label,.fd2-checkout-page fieldset>label:first-child{color:rgb(23 23 19 / .65);display:block;font-size:11px;font-weight:650;letter-spacing:.07em;line-height:1.4;margin:0 0 8px;text-transform:uppercase}
.fd2-checkout-page input[type=text],.fd2-checkout-page input[type=email],.fd2-checkout-page input[type=tel],.fd2-checkout-page select,.fd2-checkout-page textarea{appearance:none;background:var(--ivory);border:1px solid rgb(23 23 19 / .18);border-radius:2px;color:var(--ink);font-family:var(--sans);font-size:15px;min-height:50px;padding:12px 14px;transition:border-color .16s ease,box-shadow .16s ease;width:100%}
.fd2-checkout-page select{background-image:linear-gradient(45deg,transparent 50%,var(--olive) 50%),linear-gradient(135deg,var(--olive) 50%,transparent 50%);background-position:calc(100% - 18px) 21px,calc(100% - 13px) 21px;background-repeat:no-repeat;background-size:5px 5px;padding-inline-end:40px}
.fd2-checkout-page textarea{min-height:112px;resize:vertical}
.fd2-checkout-page input::placeholder,.fd2-checkout-page textarea::placeholder{color:rgb(23 23 19 / .38)}
.fd2-checkout-page input:focus,.fd2-checkout-page select:focus,.fd2-checkout-page textarea:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgb(161 132 85 / .13);outline:0}
.fd2-checkout-page input[type=radio],.fd2-checkout-page input[type=checkbox]{accent-color:var(--olive);height:17px;width:17px}

.fd2-checkout-page #shipping-options{gap:9px!important}
.fd2-checkout-page .shipping-option-row{background:transparent!important;border:1px solid rgb(23 23 19 / .14)!important;border-radius:2px!important;color:var(--ink);min-height:68px;padding:13px 15px!important;transition:border-color .16s ease,background .16s ease}
.fd2-checkout-page .shipping-option-row:has(input:checked){background:rgb(48 52 43 / .06)!important;border:1px solid var(--olive)!important;box-shadow:inset 3px 0 0 var(--brass)}
.fd2-checkout-page .shipping-option-row strong{color:var(--ink)!important;font-size:13.5px!important}
.fd2-checkout-page .shipping-option-row strong+span{color:rgb(23 23 19 / .52)!important}
.fd2-checkout-page .shipping-tier-cost{color:var(--olive);font-size:13px}

.fd2-checkout-page #stripe-method-card,.fd2-checkout-page #paystack-method-card{background:transparent!important;border:1px solid rgb(23 23 19 / .14)!important;border-radius:2px!important;min-height:76px;padding:16px!important;transition:border-color .16s ease,background .16s ease}
.fd2-checkout-page #stripe-method-card:has(input:checked),.fd2-checkout-page #paystack-method-card:has(input:checked){background:rgb(48 52 43 / .06)!important;border:1px solid var(--olive)!important;box-shadow:inset 3px 0 0 var(--brass)}
.fd2-checkout-page #stripe-method-card strong,.fd2-checkout-page #paystack-method-card strong{color:var(--ink)!important;font-size:14px}
.fd2-checkout-page #stripe-method-card small,.fd2-checkout-page #paystack-method-card small{color:rgb(23 23 19 / .57)!important;line-height:1.5}
.fd2-checkout-page .fd-gateway-note{background:rgb(161 132 85 / .09);border-left:2px solid var(--brass);display:grid;font-size:12px;gap:4px;line-height:1.55;margin-top:14px;padding:12px 14px}
.fd2-checkout-page .fd-gateway-note strong{color:var(--ink)}
.fd2-checkout-page .fd-gateway-note span{color:rgb(23 23 19 / .58)}
.fd2-checkout-page #elements-loader{color:rgb(23 23 19 / .55);padding:34px 0!important}
.fd2-checkout-page .spinner-border{animation:fd2-checkout-spin .9s linear infinite;border:2px solid rgb(48 52 43 / .16);border-radius:50%;border-top-color:var(--brass);height:34px!important;margin:auto;width:34px!important}
@keyframes fd2-checkout-spin{to{transform:rotate(360deg)}}
.fd2-checkout-page #payment-element{margin-bottom:0!important}

.fd2-checkout-page .fl-sidebar-cart{position:static!important;top:auto!important}
.fd2-checkout-page .box-order-summary{background:var(--olive);border:0!important;border-radius:2px;color:var(--ivory);padding:26px}
.fd2-checkout-page .box-order-summary .fd2-checkout-step{color:var(--brass)}
.fd2-checkout-page .box-order-summary h2{color:var(--ivory)}
.fd2-checkout-page .box-order-summary>div,.fd2-checkout-page #summary-items-list li{border-color:rgb(243 239 231 / .14)!important;color:rgb(243 239 231 / .82)!important}
.fd2-checkout-page #summary-items-list{margin-bottom:14px!important}
.fd2-checkout-page #summary-items-list li{padding:13px 0!important}
.fd2-checkout-page #summary-items-list strong{color:var(--ivory)!important;font-family:var(--sans);font-size:13px!important;line-height:1.45}
.fd2-checkout-page #summary-items-list strong+span{color:rgb(243 239 231 / .52)!important}
.fd2-checkout-page #summary-items-list li>span{color:var(--brass)!important}
.fd2-checkout-page #summary-subtotal,.fd2-checkout-page #summary-shipping{color:var(--ivory)}
.fd2-checkout-page #summary-total{color:var(--brass)!important;font-family:var(--serif);font-size:23px!important;font-weight:500!important}
.fd2-checkout-page label[for=agreeCheckbox]{color:rgb(243 239 231 / .75)!important;line-height:1.55}
.fd2-checkout-page label[for=agreeCheckbox] a{color:var(--ivory)!important;text-decoration-color:var(--brass)!important;text-underline-offset:3px}
.fd2-checkout-page #payButton{background:var(--ivory);border:1px solid var(--ivory);border-radius:2px;color:var(--olive);font-family:var(--sans);font-size:13px!important;font-weight:700;height:52px!important;letter-spacing:.08em!important;text-transform:uppercase;transition:background .16s ease,border-color .16s ease,color .16s ease;width:100%}
.fd2-checkout-page #payButton:not(:disabled):hover{background:var(--brass);border-color:var(--brass);color:var(--ivory)}
.fd2-checkout-page #payButton:disabled{cursor:not-allowed;opacity:.42}
.fd2-checkout-page #checkout-error{background:#fff0ed!important;border-left:3px solid #a93d31;border-radius:2px!important;color:#7d2921!important;line-height:1.5;text-align:left!important}

.fd2-checkout-page #checkout-empty{background:rgb(255 255 255 / .42);border:1px solid rgb(23 23 19 / .1);margin-inline:auto;max-width:700px;padding:72px 24px!important}
.fd2-checkout-page #checkout-empty h4{font-family:var(--serif);font-size:30px;font-weight:400}
.fd2-checkout-page #checkout-empty .tf-btn{background:var(--ink);border-radius:2px;color:var(--ivory);display:inline-flex;font-size:13px;font-weight:650;letter-spacing:.06em;padding:14px 22px;text-transform:uppercase}
.fd2-checkout-page #checkout-empty .tf-btn:hover{background:var(--olive)}
.fd2-checkout-page .fd2-footer{margin-top:0}

@media(min-width:640px){
  .fd2-checkout-page .tf-grid-layout.sm-col-2{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:960px){
  .fd2-checkout-page .section-page-title{padding-block:66px 58px}
  .fd2-checkout-page .flat-spacing-mix-1{padding-block:66px 112px}
  .fd2-checkout-page #checkout-container.row{gap:34px;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr)}
  .fd2-checkout-page .box-ip-checkout,.fd2-checkout-page .box-order-summary{padding:32px}
  .fd2-checkout-page .fl-sidebar-cart{position:sticky!important;top:94px!important}
}
@media(max-width:639px){
  .fd2-checkout-page .section-page-title{padding-block:34px 32px}
  .fd2-checkout-page .breadcrumbs{margin-bottom:22px}
  .fd2-checkout-page .main-page-title h1{font-size:39px}
  .fd2-checkout-trust{display:grid;gap:10px;margin-top:24px}
  .fd2-checkout-page .flat-spacing-mix-1{padding-block:28px 64px}
  .fd2-checkout-page .box-ip-checkout,.fd2-checkout-page .box-order-summary{padding:20px}
  .fd2-checkout-page .box-ip-checkout h2,.fd2-checkout-page .box-order-summary h2{font-size:24px}
  .fd2-checkout-page .shipping-option-row{align-items:flex-start!important;gap:10px}
}
html[dir=rtl] .fd2-checkout-page .fd2-checkout-step,html[dir=rtl] .fd2-checkout-page .tf-field>label,html[dir=rtl] .fd2-checkout-page fieldset>label:first-child{text-align:right}
html[dir=rtl] .fd2-checkout-page .shipping-option-row:has(input:checked),html[dir=rtl] .fd2-checkout-page #stripe-method-card:has(input:checked),html[dir=rtl] .fd2-checkout-page #paystack-method-card:has(input:checked){box-shadow:inset -3px 0 0 var(--brass)}
html[dir=rtl] .fd2-checkout-page .fd-gateway-note{border-left:0;border-right:2px solid var(--brass)}
