/* EPIC Storage Solutions — revised layout theme
   Built on Bootstrap 5.3. Palette, type, and radii are pulled straight from
   the live site's public/assets/css/main.scss (see revision notes). */

:root{
  --paper:#FFFFFF;
  --surface:#F6F6F6;
  --surface-2:#F0F0F0;
  --card:#FFFFFF;
  --ink:#141414;
  --ink-soft:#707070;
  --line:#DEDEDE;
  --primary:#89C4F2;
  --primary-deep:#005AAB;
  --primary-deeper:#214A8C;
  --ring:rgba(0,90,171,0.16);
  --restrict-ink:#333333;
  --restrict-soft:#555555;
  --shadow:99 99 99;
  --navy-deep:#083150;
  --blue-bright:#5C9AFD;
  --on-dark-soft:#C9DCEF;

  --font-display:'Jura','Poppins','Segoe UI',sans-serif;
  --font-body:'Montserrat','Segoe UI',sans-serif;
  --fs-hero: clamp(2.2rem, 3.4vw + 1rem, 3.6rem);

  color-scheme: light;

  /* Bootstrap variable overrides */
  --bs-body-font-family: var(--font-body);
  --bs-body-color: var(--ink);
  --bs-body-bg: var(--paper);
  --bs-primary: var(--primary-deep);
  --bs-primary-rgb: 0,90,171;
  --bs-secondary: var(--ink-soft);
  --bs-link-color: var(--primary-deep);
  --bs-link-hover-color: var(--primary-deeper);
  --bs-border-color: var(--line);
  --bs-border-radius: .5rem;
  --bs-border-radius-lg: .75rem;
}
/* This site intentionally has no dark mode: the real logo (epic-logo.png)
   is dark script on a transparent ground, and the real photography was
   shot for a white page, so it always renders the brand's light palette
   regardless of OS/browser theme. */

body{background:var(--paper);color:var(--ink);}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.15;text-wrap:balance;color:var(--ink);}
a{text-decoration:none;}
.text-muted-brand{color:var(--ink-soft) !important;}
.accent{color:var(--primary-deep);}

.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--primary-deep);font-weight:700;}
.eyebrow::before{content:"";width:20px;height:2px;background:var(--primary);border-radius:2px;}

.btn-brand-primary{background:var(--primary);border-color:var(--primary);color:var(--navy-deep);font-weight:700;letter-spacing:.03em;text-transform:uppercase;font-size:.88rem;padding:.85rem 1.75rem;border-radius:.4rem;}
.btn-brand-primary:hover{background:#74B7EE;border-color:#74B7EE;color:var(--navy-deep);}
.btn-brand-secondary{background:var(--primary);border-color:var(--primary);color:#0b2036;font-weight:700;letter-spacing:.03em;text-transform:uppercase;font-size:.88rem;padding:.85rem 1.75rem;border-radius:.4rem;}
.btn-brand-secondary:hover{filter:brightness(0.96);color:#0b2036;}
.btn-brand-outline{background:transparent;border:1.5px solid var(--line);color:var(--ink);font-weight:600;padding:.8rem 1.6rem;border-radius:.4rem;}
.btn-brand-outline:hover{border-color:var(--primary-deep);color:var(--primary-deep);}

.dot-live{width:8px;height:8px;border-radius:50%;background:var(--primary-deep);display:inline-block;box-shadow:0 0 0 3px var(--ring);flex:none;}
@media (prefers-reduced-motion:no-preference){.dot-live.pulsing{animation:pulse 1.8s ease-in-out infinite;}}
@keyframes pulse{0%,100%{box-shadow:0 0 0 3px var(--ring);}50%{box-shadow:0 0 0 6px var(--ring);}}

.ring-badge{width:64px;height:64px;border-radius:50%;background:var(--card);border:6px solid var(--ring);display:flex;align-items:center;justify-content:center;flex:none;}

/* ---------- NAV ---------- */
.site-nav{background:color-mix(in srgb, var(--paper) 93%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.site-nav .navbar-brand img{height:64px;width:auto;}
.site-nav .navbar-brand{padding-top:.25rem;padding-bottom:.25rem;}
.site-nav .nav-link{font-weight:700;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft) !important;padding-left:.75rem;padding-right:.75rem;}
.site-nav .nav-link:hover,.site-nav .nav-link.active{color:var(--primary-deep) !important;}
.user-icon-circle{width:38px;height:38px;border-radius:50%;background:var(--surface-2);border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;flex:none;color:var(--ink-soft);}

/* nav2/footer2 (see home.css) are loaded on every page now; this just marks the current page */
.nav2 .nav-link.active{opacity:1;color:var(--primary) !important;}

/* ---------- PAGE BANNERS (navy, matching the homepage hero) ---------- */
.page-banner{padding:clamp(46px,7vw,84px) 0;background:var(--navy-deep);position:relative;overflow:hidden;}
.page-banner .eyebrow{color:var(--primary);}
.page-banner .eyebrow::before{background:var(--blue-bright);}
.page-banner h1{color:#fff;}
.page-banner h1 .accent{color:var(--primary);}
.page-banner .hero-lede{color:var(--on-dark-soft);}
.page-banner .hero-lede strong{color:#fff;}
.page-banner .social-row a{border-color:rgba(255,255,255,.35);background:transparent;}
.page-banner .social-row a:hover{border-color:var(--primary);}
.page-banner.has-bg{background-size:cover;background-position:center;}
.page-banner.has-bg::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg, rgba(8,49,80,.94) 0%, rgba(8,49,80,.86) 38%, rgba(8,49,80,.58) 100%);}
.page-banner .banner-inner{position:relative;z-index:1;}
.page-banner img.banner-photo{border-radius:14px;box-shadow:0 20px 44px -20px rgb(0 0 0 / .55);}

/* ---------- AUTH SHELL (login) ---------- */
.auth-shell{background:var(--navy-deep);}
.auth-shell .contact-card{box-shadow:0 30px 60px -28px rgb(0 0 0 / .6);}

.hero-lede{max-width:48ch;color:var(--ink-soft);font-size:1.05rem;}
.provided-list{display:flex;flex-direction:column;gap:10px;margin-top:14px;}
.provided-list li{display:flex;align-items:center;gap:10px;font-weight:600;font-size:.96rem;}
.provided-list .check{width:20px;height:20px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;flex:none;}
.provided-list .check svg{width:11px;height:11px;stroke:#0b2036;stroke-width:3;}
.hero-reassure{margin-top:18px;padding:16px 18px;border-left:3px solid var(--primary);background:var(--surface);border-radius:0 8px 8px 0;color:var(--ink-soft);font-size:.94rem;}
.status-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);font-size:.82rem;font-weight:600;color:var(--ink-soft);}

/* ---------- SECTIONS ---------- */
.section-alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.section-head p{color:var(--ink-soft);font-size:1.02rem;margin-top:10px;max-width:60ch;}

/* ---------- PLAN / AVAILABILITY CARDS ---------- */
.plan-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:clamp(24px,3vw,32px);height:100%;box-shadow:0 10px 28px -18px rgb(var(--shadow) / .45);}
.plan-window{font-size:.78rem;color:var(--ink-soft);font-weight:700;letter-spacing:.03em;text-transform:uppercase;}
.plan-price-row{display:flex;align-items:baseline;gap:8px;padding-top:10px;margin-top:10px;border-top:1px dashed var(--line);}
.plan-price{font-family:var(--font-display);font-size:2.5rem;font-weight:800;color:var(--primary-deep);font-variant-numeric:tabular-nums;}
.plan-price-note{font-size:.82rem;color:var(--ink-soft);}
.plan-bullets{display:flex;flex-direction:column;gap:8px;margin-top:14px;}
.plan-bullets li{display:flex;gap:8px;font-size:.9rem;}
.plan-bullets li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--primary-deep);margin-top:7px;flex:none;}
.plan-notes{font-size:.82rem;color:var(--ink-soft);display:flex;flex-direction:column;gap:4px;margin-top:12px;}

.avail-panel{border-radius:10px;overflow:hidden;margin-top:14px;}
.avail-checklist{display:flex;flex-direction:column;gap:9px;padding:16px;background:var(--surface);border-radius:10px;list-style:none;margin:0;}
.avail-checklist li{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--ink-soft);opacity:.5;}
.avail-checklist li.is-done{opacity:1;color:var(--ink);}
.avail-mark{width:17px;height:17px;border-radius:50%;border:1.5px solid var(--line);flex:none;display:flex;align-items:center;justify-content:center;font-size:.62rem;color:transparent;}
.avail-checklist li.is-done .avail-mark{border-color:var(--primary-deep);background:var(--ring);color:var(--primary-deep);}
.avail-time{margin-left:auto;font-size:.72rem;color:var(--primary-deep);opacity:0;font-variant-numeric:tabular-nums;}
.avail-checklist li.is-done .avail-time{opacity:1;}
.avail-result{border-radius:10px;padding:16px 18px;margin-top:10px;}
.avail-result.is-open{background:var(--ring);border:1px solid var(--primary-deep);}
.avail-result.is-open .avail-result-title{color:var(--primary-deep);}
.avail-result.is-limited{background:var(--surface-2);border:1px solid var(--line);}
.avail-result.is-limited .avail-result-title{color:var(--restrict-ink);}
.avail-result-title{font-weight:800;font-size:.98rem;display:block;}
.avail-result-copy{font-size:.85rem;color:var(--restrict-soft);display:block;}
.avail-result.is-open .avail-result-copy{color:var(--ink-soft);}
.plan-note-line{font-size:.76rem;color:var(--ink-soft);text-align:center;margin-top:10px;}


/* ---------- SERVICE CATEGORY CARDS ---------- */
.category-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:28px 22px;text-align:center;height:100%;cursor:pointer;transition:transform .15s ease,border-color .15s ease;}
.category-card:hover{transform:translateY(-3px);border-color:var(--primary-deep);}
.category-card img{width:56px;height:56px;object-fit:contain;margin:0 auto 14px;}

/* ---------- PROCESS RAIL ---------- */
.process-rail{position:relative;}
.process-rail::before{content:"";position:absolute;top:32px;left:8%;right:8%;height:1px;background:var(--line);}
.step-num{width:64px;height:64px;border-radius:50%;background:var(--card);border:6px solid var(--ring);color:var(--primary-deep);font-family:var(--font-display);font-weight:800;font-size:1.1rem;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;margin-bottom:16px;}
.step-illustration{width:100%;max-width:132px;aspect-ratio:1;object-fit:cover;border-radius:12px;border:1px solid var(--line);margin-bottom:12px;background:var(--surface);}
.process-step p{font-size:.86rem;color:var(--ink-soft);}

/* ---------- FACT BAND ---------- */
.fact-band{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;}
.fact-tile{background:var(--card);padding:26px 22px;display:flex;flex-direction:column;gap:6px;}
.fact-value{font-family:var(--font-display);font-size:1.4rem;font-weight:800;color:var(--primary-deep);}
.fact-label{font-size:.8rem;color:var(--ink-soft);}
@media (max-width:768px){.fact-band{grid-template-columns:1fr 1fr;}}

/* ---------- TESTIMONIALS ---------- */
.testimonial-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px;height:100%;box-shadow:0 10px 28px -20px rgb(var(--shadow) / .4);}
.quote-mark{width:34px;height:auto;display:block;margin-bottom:4px;}
.testimonial-foot{border-top:1px solid var(--line);padding-top:12px;margin-top:14px;}

/* ---------- ACCORDION (FAQ) ---------- */
.accordion-brand .accordion-item{background:var(--card);border:1px solid var(--line);border-radius:10px !important;margin-bottom:10px;overflow:hidden;}
.accordion-brand .accordion-button{font-weight:700;font-size:.96rem;background:var(--card);color:var(--ink);}
.accordion-brand .accordion-button:not(.collapsed){background:var(--ring);color:var(--primary-deep);box-shadow:none;}
.accordion-brand .accordion-button:focus{box-shadow:0 0 0 .2rem var(--ring);}
.accordion-brand .accordion-body{color:var(--ink-soft);font-size:.92rem;}

/* ---------- CONTACT FORM ---------- */
.contact-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:clamp(24px,3vw,34px);box-shadow:0 10px 28px -18px rgb(var(--shadow) / .45);}

.contact-info-grid{display:flex;flex-direction:column;gap:12px;margin-top:32px;max-width:400px;}
.contact-info-card{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.05);transition:border-color .15s ease,background-color .15s ease;}
a.contact-info-card:hover{border-color:rgba(255,255,255,.32);background:rgba(255,255,255,.08);}
.contact-info-icon{width:40px;height:40px;border-radius:50%;background:rgba(137,196,242,.18);color:var(--primary);display:flex;align-items:center;justify-content:center;flex:none;}
.contact-info-icon svg{width:18px;height:18px;}
.contact-info-card strong{display:block;color:#fff;font-size:.94rem;font-weight:700;}
.contact-info-card small{display:block;color:var(--on-dark-soft);font-size:.8rem;margin-top:2px;}
.form-control,.form-select{border-color:var(--line);border-radius:.5rem;padding:.7rem .9rem;}
.form-control:focus,.form-select:focus{border-color:var(--primary-deep);box-shadow:0 0 0 .2rem var(--ring);}

/* Authentication and customer portal */
.nav-logout{padding:0;border:0;background:transparent;color:var(--ink);font:600 .92rem var(--font-body);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px;transition:color .2s,text-decoration-color .2s;}
.nav-logout:hover,.nav-logout:focus{color:var(--primary-deep);text-decoration-color:currentColor;}
.auth-card{width:min(100%,460px);padding:clamp(24px,4vw,38px);background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 30px 60px -28px rgb(0 0 0 / .6);}
.auth-card-wide{width:min(100%,660px);}
.auth-logo{display:block;height:52px;max-width:100%;object-fit:contain;margin-inline:auto;}
.auth-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--primary);color:var(--navy-deep);font:800 1.35rem/1 var(--font-display);}
.auth-card .form-label{font-weight:600;}
.auth-card .form-check-label{font-size:.9rem;}
.booking-processing-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:24px;align-items:start}.booking-processing-main{min-width:0}.portal-section-heading{display:flex;align-items:flex-start;gap:14px}.booking-step{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:50%;background:var(--primary);color:var(--navy-deep);font-weight:800}.service-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.service-choice{position:relative;display:block;min-height:160px;padding:20px;border:2px solid var(--line);border-radius:14px;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.service-choice:hover{transform:translateY(-2px);border-color:var(--primary);box-shadow:0 14px 28px rgb(8 49 80/.08)}.service-choice.is-selected{border-color:var(--primary);box-shadow:0 0 0 4px rgb(137 196 242/.18)}.service-choice input{position:absolute;top:18px;right:18px;width:18px;height:18px;accent-color:var(--primary)}.service-choice-copy{display:flex;flex-direction:column;height:100%;padding-right:25px}.service-choice-copy strong{font:800 1.05rem/1.3 var(--font-display);color:var(--navy-deep)}.service-choice-copy small{margin:9px 0 17px;color:var(--ink-soft);line-height:1.55}.service-choice-copy b{margin-top:auto;color:var(--navy-deep);font-size:.86rem}.service-subsection{padding-top:22px;border-top:1px solid var(--line)}.item-builder{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(170px,1.2fr) minmax(176px,.9fr) auto;gap:10px;align-items:end}.item-builder .btn{min-height:46px}.booking-item-list{display:grid;gap:8px}.booking-selected-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd}.booking-selected-item>div{display:flex;flex-direction:column}.booking-selected-item>div:last-of-type{align-items:flex-end;flex-direction:row;gap:14px}.booking-selected-item small{margin-top:3px;color:var(--ink-soft)}.booking-empty-state{padding:17px;border:1px dashed var(--line);border-radius:10px;color:var(--ink-soft);text-align:center}.binary-choice{height:100%;margin:0;padding:17px;border:1px solid var(--line);border-radius:12px}.binary-choice legend{float:none;width:auto;margin:0;font:800 .95rem/1.4 var(--font-display);color:var(--navy-deep)}.binary-choice p{min-height:42px;margin:5px 0 12px;color:var(--ink-soft);font-size:.78rem}.binary-choice>div{display:flex;gap:18px}.binary-choice label{display:flex;align-items:center;gap:6px;font-weight:700}.binary-choice input{accent-color:var(--primary)}.booking-price-summary{position:sticky;top:100px}.booking-summary-lines{display:grid;gap:0;margin-top:18px}.booking-summary-lines>div,.booking-summary-total{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line)}.booking-summary-lines span{color:var(--ink-soft);font-size:.82rem}.booking-summary-lines strong{white-space:nowrap;font-size:.84rem}.booking-summary-total{margin-top:6px;padding-top:17px;border-bottom:0;font-weight:800}.booking-summary-total strong{color:var(--navy-deep);font:900 1.3rem/1 var(--font-display)}@media(max-width:991.98px){.booking-processing-grid{grid-template-columns:1fr}.booking-price-summary{position:static}}@media(max-width:767.98px){.service-choice-grid{grid-template-columns:1fr}.item-builder{grid-template-columns:1fr 1fr}.item-builder>div:nth-child(3),.item-builder .btn{grid-column:1/-1}.booking-selected-item{align-items:flex-start;flex-direction:column}.booking-selected-item>div:last-of-type{width:100%;align-items:center;justify-content:space-between}}@media(max-width:575.98px){.item-builder{grid-template-columns:1fr}.booking-selected-item>div:last-of-type{align-items:flex-start;flex-direction:column}.portal-section-heading{gap:10px}}
.account-main{background:#f5f8fa;min-height:60vh;}
.account-hero{padding:clamp(24px,4vw,38px);background:linear-gradient(125deg,#fff 15%,#eaf5fc);border:1px solid var(--line);border-radius:16px;}
.portal-card{padding:clamp(22px,3vw,32px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 35px -28px rgb(0 0 0/.45);}
.account-details{display:grid;gap:0;margin-top:20px;}
.account-details div{display:grid;grid-template-columns:140px 1fr;gap:15px;padding:14px 0;border-bottom:1px solid var(--line);}
.account-details div:last-child{border-bottom:0;}
.account-details dt{color:var(--ink-soft);font-weight:600;}
.account-details dd{margin:0;font-weight:600;overflow-wrap:anywhere;}
.status-pill{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:.76rem;font-weight:700;}
.status-active{background:#e5f5ed;color:#147a4b;}
.status-inactive,.status-cancelled,.status-failed,.status-refunded{background:#ffedf0;color:#a92335;}
.status-pending,.status-partial,.status-scheduled_for_delivery{background:#fff5d9;color:#8b6509;}
.status-confirmed,.status-completed,.status-paid,.status-in_storage{background:#e5f5ed;color:#147a4b;}
.status-picked_up{background:#e8f2ff;color:#075ca8;}
@media(max-width:575.98px){.account-details div{grid-template-columns:1fr;gap:4px}.nav-actions{align-items:flex-start!important;flex-direction:column}}
.form-label{font-size:.82rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-soft);}

/* ---------- FOOTER ---------- */
.site-footer{border-top:1px solid var(--line);padding:clamp(40px,5vw,60px) 0 26px;background-size:cover;background-position:center;position:relative;}
.site-footer::before{content:"";position:absolute;inset:0;background:color-mix(in srgb, var(--paper) 88%, transparent);}
.site-footer .footer-inner{position:relative;z-index:1;}
.footer-col h4{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px;font-weight:700;}
.footer-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}
.footer-col a{color:var(--ink);}
.footer-col a:hover{color:var(--primary-deep);}
.social-row{display:flex;gap:14px;margin-top:14px;}
.social-row a{width:44px;height:44px;border-radius:50%;background:var(--surface);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:border-color .15s ease,transform .15s ease;}
.social-row a:hover{border-color:var(--primary-deep);transform:translateY(-2px);}
.social-row img{width:22px;height:22px;object-fit:contain;}
.footer-bottom{margin-top:32px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-size:.78rem;color:var(--ink-soft);}

/* ---------- TERMS PAGE ---------- */
.legal-content h2{font-size:1.1rem;margin-top:28px;margin-bottom:8px;color:var(--primary-deep);}
.legal-content p{color:var(--ink-soft);font-size:.94rem;margin-bottom:12px;}

/* ---------- BOOKING QUANTITY STEPPERS ---------- */
.quantity-stepper{display:grid;grid-template-columns:48px minmax(84px,1fr) 48px;align-items:stretch;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease;}
.quantity-stepper:focus-within{border-color:var(--primary-deep);box-shadow:0 0 0 .2rem rgb(41 128 185/.14);}
.quantity-stepper button{display:grid;place-items:center;min-height:46px;border:0;background:var(--surface);color:var(--navy-deep);font:800 1.45rem/1 var(--font-display);transition:background-color .15s ease,color .15s ease;}
.quantity-stepper button:hover,.quantity-stepper button:focus-visible{background:var(--primary);color:var(--navy-deep);outline:0;}
.quantity-stepper .form-control{min-width:0;border:0;border-right:1px solid var(--line);border-left:1px solid var(--line);border-radius:0;text-align:center;font-weight:800;box-shadow:none;appearance:textfield;}
.quantity-stepper .form-control::-webkit-inner-spin-button,.quantity-stepper .form-control::-webkit-outer-spin-button{margin:0;appearance:none;}
.quantity-stepper .form-control.is-invalid{background-position:right .5rem center;}

@media (prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important;}}
/* Customer Square checkout */
.payment-checkout-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:24px;align-items:start}.payment-card,.payment-order-card{min-width:0}.payment-order-card{position:sticky;top:110px}.payment-environment{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef4fa;color:#31536d;font-size:.72rem;font-weight:700;text-transform:uppercase}.square-card-container{min-height:105px;padding:16px;border:1px solid #d9e1e8;border-radius:8px;background:#fff}.payment-inline-status{min-height:24px;padding:0;color:#5b6975;font-size:.88rem}.payment-inline-status.is-error{padding:10px 12px;border-radius:6px;background:#fff1f2;color:#a92236}.payment-inline-status.is-success{padding:10px 12px;border-radius:6px;background:#eaf8f0;color:#117244}.payment-balance{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:22px 0 14px;padding:17px 0;border-top:1px solid #e4e9ee;border-bottom:1px solid #e4e9ee}.payment-balance span{color:#667786;font-weight:600}.payment-balance strong{color:#063a5d;font-size:1.2rem}.payment-card .form-check-label{color:#4e6070;font-size:.86rem;line-height:1.55}@media(max-width:991.98px){.payment-checkout-grid{grid-template-columns:1fr}.payment-order-card{position:static}}@media(max-width:575.98px){.square-card-container{padding:12px}.payment-balance{align-items:flex-start;flex-direction:column;gap:5px}}
