
.co2{max-width:1040px;margin:0 auto;padding:24px 0 78px;color:#4C4C4C;}
.co2-title{font-family:var(--sm-font-title);font-weight:700;font-size:30px;letter-spacing:1px;text-transform:uppercase;color:#204158;line-height:1;margin:0;}
.co2-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:46px;align-items:start;}
.co2-blk{margin-bottom:26px;}
.co2-bt{font-family:var(--sm-font-title);font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:13px;color:#204158;margin:0 0 12px;}
.co2-in{width:100%;border:1px solid #CBD2D7;border-radius:6px;padding:12px 14px;font-size:15px;font-family:inherit;color:#4C4C4C;background:#fff;}
.co2-in::placeholder{color:#9AA5AC;}
.co2-in:focus{outline:none;border-color:#0177A8;box-shadow:0 0 0 3px rgba(1,119,168,.12);}
.co2-mt{margin-top:10px;}
select.co2-in{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%234C4C4C' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;}
.co-dom{margin-top:14px;padding-top:12px;border-top:1px solid #E4E7EA;}
.co-dom-3{display:grid;grid-template-columns:1fr 1fr 110px;gap:0 10px;}
.co-dom-3 .co2-in{min-width:0;}
@media(max-width:520px){.co-dom-3{grid-template-columns:1fr;gap:8px 0;}}
.co-vat-srcrow[hidden]{display:none;}
#co-express{margin-bottom:4px;}
.co-or{display:flex;align-items:center;gap:12px;color:#696969;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;margin:18px 0;}
.co-or:before,.co-or:after{content:"";height:1px;background:#E4E7EA;flex:1;}
#co-payment{margin-bottom:4px;}
.co-pay{width:100%;margin-top:22px;height:54px;border:0;border-radius:6px;background:#0177A8;color:#fff;font-family:var(--sm-font-title);font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:16px;cursor:pointer;transition:background .25s ease;}
.co-pay:hover:not(:disabled){background:#016691;}
.co-pay:disabled{opacity:.5;cursor:default;}
.co-msg{margin-top:12px;font-size:13px;color:#4C4C4C;text-align:center;min-height:18px;}
.co-msg.err{color:#C0392B;font-weight:700;}
.co-trust{margin-top:14px;font-size:12.5px;color:#696969;text-align:center;line-height:1.6;}
/* 1.38.16 (owner): the summary pinned at 24px from the viewport top, which is BEHIND the
   is-scrolled header (states.css turns it position:fixed), so the "Η ΠΑΡΑΓΓΕΛΙΑ ΣΟΥ" title sat
   under it. Park it below the header instead, the same way .sm-one-get-copy and .ac-nav already
   do - one convention for every sticky column on the site. */
.co2-sum{background:#F5F7F8;border:1px solid #E4E7EA;border-radius:8px;padding:22px 22px 24px;position:sticky;top:calc(var(--sm-header-h) + 24px);}
.admin-bar .co2-sum{top:calc(var(--sm-header-h) + 56px);} /* + the 32px wp admin bar for logged-in users */
.co2-sum .co2-bt{font-size:17px;letter-spacing:1.2px;margin:0 0 16px;}
.co-item{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:2px 0 0;}
.co-item-nm{font-weight:600;color:#204158;font-size:14px;line-height:1.3;}
.co-item-ds{font-size:12px;color:#696969;margin-top:3px;line-height:1.55;}
.co-item-pr{margin-left:auto;font-weight:600;color:#204158;font-size:14px;white-space:nowrap;}
.co-credit{font-size:12px;color:#0177A8;background:#EEF6FB;border:1px solid #D7E9F4;border-radius:6px;padding:8px 11px;margin:12px 0 0;line-height:1.45;}
.co-sep{height:1px;background:#E4E8EB;margin:16px 0;}
.co-ln{display:flex;justify-content:space-between;font-size:14px;color:#4C4C4C;margin:9px 0;}
.co-ln span:last-child{font-variant-numeric:tabular-nums;}
.co-tot{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid #DBE0E4;margin-top:12px;padding-top:14px;}
.co-tl{font-family:var(--sm-font-title);font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:13px;color:#696969;align-self:center;}
.co-tv{font-family:var(--sm-font-title);font-weight:700;font-size:32px;color:#204158;line-height:.9;font-variant-numeric:tabular-nums;}
.co-sec{display:flex;align-items:center;gap:7px;justify-content:center;margin-top:16px;font-size:12px;color:#696969;}
.co-sec svg{width:13px;height:13px;}
.co-after{margin-top:14px;font-size:11.5px;color:#696969;line-height:1.5;text-align:center;}
/* 1.38.1: thank-you = full state (brand book v4: flat ink, hairlines, ledger device, no shadows). */
/* 1.38.7 (Sol P1-TY-03): [hidden] is STATE and no component display rule may outrank it. The
 * one-off below fixed .co2-grid only, so .co-or{display:flex} still rendered the wallet separator
 * before Stripe Express was ready and .co-done-btn{display:inline-block} still rendered the account
 * CTA on carts that have no account. Stated once, for every checkout/thank-you element. */
.co2 [hidden],.co-ty [hidden],.co-done [hidden]{display:none!important;}

/* [hidden] loses to .co2-grid{display:grid} - the reason the old thank-you rendered UNDER a
 * still-visible form. Hide the whole checkout UI explicitly in the done state. */
.co2--done .co2-title,.co2--done .co2-lead,.co2--done .co2-grid,.co2-grid[hidden]{display:none;}
.co-ty{padding:67px 20px 64px;} /* 1.38.3: sitewide band contract - the card was glued to the hero band */
.co-done{max-width:680px;margin:0 auto;background:#fff;border:1px solid #E2E2E2;padding:56px 38px 46px;text-align:center;}
/* 1.38.8 (Sol P2-TY-10): outline:0 removed - a focusable region must stay visibly focusable. */
.co-done:focus-visible{outline:2px solid #0177A8;outline-offset:3px;}
.co-check{width:56px;height:56px;border-radius:50%;background:#EFF8F5;color:#1FC1A1;font-size:28px;line-height:56px;margin:0 auto 22px;}
.co-done h2{font-family:var(--sm-font-title);font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:30px;color:#204158;margin:0 0 8px;}
.co-done-sub{font-weight:700;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:#0177A8;margin:0 0 18px;}
.co-done p{font-size:15px;color:#4C4C4C;line-height:1.7;margin:0 auto;max-width:520px;}
.co-done-bt{margin:36px 0 2px;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#696969;text-align:left;}
.co-steps{list-style:none;margin:0;padding:0;text-align:left;}
.co-steps li{display:flex;gap:20px;align-items:flex-start;border-top:1px solid #E2E2E2;padding:18px 0 17px;}
.co-steps li:first-child{border-top:0;padding-top:14px;}
.co-step-n{font-family:var(--sm-font-title);font-weight:700;font-size:26px;line-height:1.05;color:#2F8FD6;min-width:44px;}
.co-step-t{font-family:var(--sm-font-title);font-weight:700;font-size:15px;letter-spacing:1.5px;text-transform:uppercase;color:#204158;margin:3px 0 5px;}
.co-step-b{font-size:14px;color:#4C4C4C;line-height:1.65;}
.co-done-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:34px;border-top:1px solid #E2E2E2;padding-top:30px;}
.co-done-btn{display:inline-block;padding:13px 26px;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;text-decoration:none;transition:background .2s ease,color .2s ease,border-color .2s ease;}
.co-done-btn--acct{background:#0177A8;color:#fff;}
.co-done-btn--acct:hover,.co-done-btn--acct:focus{background:#1FC1A1;color:#fff;}
.co-done-btn--home{border:1px solid #204158;color:#204158;}
.co-done-btn--home:hover,.co-done-btn--home:focus{border-color:#1FC1A1;color:#0177A8;}
@media(max-width:560px){.co-ty{padding:36px 14px 44px;}.co-done{padding:38px 20px 32px;}.co-step-n{min-width:34px;font-size:22px;}.co-done h2{font-size:26px;}.co-done-btn{width:100%;text-align:center;}}
@media(max-width:860px){.co2-grid{grid-template-columns:1fr;gap:28px;}.co2-sum{position:static;order:-1;}}

/* ΑΦΜ / VAT verification (2b) */
.co-vat-msg{margin-top:8px;font-size:12.5px;line-height:1.5;color:#696969;min-height:16px;}
.co-vat-msg.ok{color:#0F7A4E;}
.co-vat-msg.err{color:#C0392B;}
.co-rc{font-size:12px;color:#0177A8;background:#EEF6FB;border:1px solid #D7E9F4;border-radius:6px;padding:7px 10px;margin:8px 0 0;line-height:1.45;}

/* Company-invoice toggle (2b) */
.co-inv{border:1px solid #E4E7EA;border-radius:8px;padding:14px 16px;margin-top:4px;background:#FAFBFC;}
.co-inv-row{display:flex;align-items:center;gap:14px;}
.co-inv-lbl{min-width:0;}
.co-inv-t{font-weight:600;color:#204158;font-size:14px;line-height:1.3;}
.co-inv-s{font-size:12px;color:#696969;margin-top:2px;}
.co-switch{margin-left:auto;flex:0 0 auto;width:46px;height:26px;border-radius:13px;border:0;background:#CBD2D7;position:relative;cursor:pointer;padding:0;transition:background .2s ease;}
.co-switch:focus-visible{outline:2px solid #0177A8;outline-offset:2px;}
.co-switch[aria-checked="true"]{background:#0177A8;}
.co-switch-k{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;border:1px solid #D5D5D5;transition:left .2s ease;}
.co-switch[aria-checked="true"] .co-switch-k{left:23px;}
.co-inv-body{margin-top:12px;}
.co2-row{display:flex;gap:12px;}
.co2-row .co2-in{width:50%;min-width:0;}
@media(max-width:520px){.co2-row{flex-direction:column;}.co2-row .co2-in{width:100%;}}
@media(max-width:767px){.co2{padding-left:15px;padding-right:15px;}} /* 1.39.25: the checkout column sat flat on both screen edges - .co2 has max-width:1040 and padding 24px 0, and its parent .sm-page-content zeroes the .sm-container gutter, so under 1040px there was nothing between the inputs and the glass. Site gutter restored on mobile; desktop untouched (there the max-width, not the padding, sets the box). */

/* 1.32.77 - loading state, a11y labels, warn status, pay focus, total flash */
.co-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
#co-payment{min-height:180px;}
.co-loading{color:#9AA5AC;font-size:13px;text-align:center;padding:26px 2px;}
.co-vat-msg.warn{color:#B26A00;}
.co-pay:focus-visible{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px rgba(1,119,168,.45);}
@keyframes coFlash{0%{background:#E4F2FB;}100%{background:transparent;}}
.co-tv--flash{animation:coFlash .6s ease;border-radius:5px;}
/* 1.38.8 (Sol P2-TY-10): nonessential motion is opt-out. */
@media(prefers-reduced-motion:reduce){
.co-tv--flash{animation:none;}
.co-pay,.co-done-btn{transition:none;}
}

.co2-lead{color:#696969;font-size:14px;margin:6px 0 30px;}
.chipline{display:flex;justify-content:center;margin-top:12px;}
.co-mydata{margin-top:14px;font-size:12px;color:#4C4C4C;background:#F5F8F6;border:1px solid #DDEBE4;border-radius:6px;padding:9px 12px;line-height:1.55;}
.co-mydata strong{color:#204158;}

/* 1.32.95 - editable cart lines (qty stepper, remove, empty state) */
.co-qty{display:inline-flex;align-items:center;margin-top:8px;border:1px solid #CBD2D7;border-radius:6px;overflow:hidden;background:#fff;}
.co-qty .q{width:27px;height:27px;border:0;background:#fff;color:#204158;font-size:15px;cursor:pointer;line-height:1;padding:0;font-family:inherit;}
.co-qty .q:hover:not(:disabled){background:#EEF6FB;}
.co-qty .q:disabled{color:#CBD2D7;cursor:default;}
.co-qty b{min-width:28px;text-align:center;font-size:13px;font-weight:600;color:#204158;font-variant-numeric:tabular-nums;}
.co-r{display:flex;flex-direction:column;align-items:flex-end;gap:8px;}
.co-x{border:0;background:none;color:#9AA5AC;font-size:17px;line-height:1;cursor:pointer;padding:1px 4px;font-family:inherit;}
.co-x:hover{color:#C0392B;}
.co-x:focus-visible{outline:2px solid #0177A8;outline-offset:2px;}
#co-lines .co-item+.co-item,#co-lines .co-credit+.co-item{border-top:1px solid #E4E8EB;margin-top:14px;padding-top:14px;}
.co-addon{display:flex;align-items:center;gap:10px;padding:8px 0 0 22px;font-size:13px;}
.co-addon .nm{flex:1;font-weight:600;color:#204158;}
.co-addon .nm::before{content:"+ ";color:#0177A8;font-weight:700;}
.co-addon .pr{font-weight:600;color:#204158;white-space:nowrap;}
.co-x--sm{font-size:14px;line-height:1;padding:0 2px;}
.co-empty{text-align:center;padding:22px 8px;color:#696969;font-size:13.5px;line-height:1.7;}
.co-empty a{color:#0177A8;font-weight:700;text-decoration:underline;text-underline-offset:3px;}

/* ---- 1.33.15: VAT lookup -> invoice fields (populate / lock / reset) ---- */
.co-vat-row{display:flex;gap:10px;align-items:stretch;}
.co-vat-row .co2-in{flex:1;min-width:0;}
.co-vat-check{flex:0 0 auto;border:1px solid #0177A8;background:#fff;color:#0177A8;border-radius:6px;padding:0 16px;font-size:13px;font-weight:600;letter-spacing:.5px;cursor:pointer;font-family:inherit;}
.co-vat-check:hover{background:#0177A8;color:#fff;}
.co-vat-srcrow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;}
.co-vat-src{font-size:12.5px;color:#0F7A4E;}
.co-vat-reset{border:0;background:none;padding:0;color:#0177A8;font-size:12.5px;cursor:pointer;text-decoration:underline;font-family:inherit;}
.co-bill{margin-top:4px;}
.co-bill .co2-in{margin-top:8px;}
.co-bill-2{display:grid;grid-template-columns:1fr 140px;gap:0 10px;}
.co-bill-hint{margin-top:8px;font-size:12px;color:#6E767B;}
.co2-in.co-lk{background:#F3F5F6;border-color:#E4E7EA;color:#204158;}

/* 1.33.16: VAT format hint */
.co-vat-hint{margin-top:6px;}
