/* YoloBikes — Cart · Checkout · Thank-you (bespoke templates).
   Concept: "showroom → paperwork → keys". A dark studio band frames each step (signature),
   below it a calm white page: the bike is the hero, numbers are set like a spec sheet, one blue action. */
:root{--yb-ink:#111315;--yb-ink2:#2b2f33;--yb-muted:#646a71;--yb-hair:#e2e4e8;--yb-stone:#f2f3f5;--yb-blue:#264dff;--yb-blue2:#1834cf;--yb-ok:#167a46}
body.yb-site.woocommerce-cart .site-main,body.yb-site.woocommerce-checkout .site-main{padding-top:0;padding-bottom:96px}
body.yb-site.woocommerce-cart .woocommerce,body.yb-site.woocommerce-checkout .woocommerce{max-width:none}

/* ═════════ Signature: dark studio band with the 3-step rule ═════════ */
.yb-flow-head{position:relative;background:var(--yb-ink);color:#fff;margin:0 calc(50% - 50vw) 56px;padding:44px calc(50vw - 50%) 48px;border:0;overflow:hidden}
.yb-flow-head::after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,#ffffff2e 30%,#ffffff2e 70%,transparent)}
.yb-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px;list-style:none;margin:0 0 40px;padding:0}
.yb-steps li{margin:0;padding-top:14px;border-top:2px solid #ffffff26;color:#ffffff66}
.yb-steps li.is-done{border-top-color:#ffffffb3;color:#ffffffcc}
.yb-steps li.is-current{border-top-color:var(--yb-blue);color:#fff}
.yb-steps li a{display:block;color:inherit;text-decoration:none}
.yb-steps li a:hover{color:#fff}
.yb-steps__n{display:block;font-size:12px;font-weight:600;letter-spacing:.16em;margin-bottom:4px}
.yb-steps li.is-current .yb-steps__n{color:#8fa5ff}
.yb-steps__l{font-size:15px;font-weight:500}
.yb-flow-title{color:#fff!important;font-size:clamp(40px,4.6vw,64px)!important;font-weight:500!important;letter-spacing:-.035em!important;line-height:1!important;margin:0 0 14px!important}
.yb-flow-lede{color:#ffffffa6;font-size:17px;margin:0;max-width:640px}

/* ═════════ Shared atoms ═════════ */
.ybf-eyebrow{font-size:12px!important;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--yb-muted);margin:0!important}
.ybf-link{font-size:14px;color:var(--yb-ink)!important;text-decoration:underline!important;text-underline-offset:4px;text-decoration-color:#11131555!important}
.ybf-link:hover{text-decoration-color:var(--yb-ink)!important}
.ybf-muted{color:var(--yb-muted);font-size:14px;margin:0}
.ybf-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 28px;border:0;border-radius:0;font:600 15px/1 var(--yb-font);letter-spacing:.01em;text-decoration:none!important;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s}
.ybf-btn svg{width:18px;height:18px;transition:transform .2s}
.ybf-btn:hover svg{transform:translateX(3px)}
.ybf-btn--primary{background:var(--yb-blue);color:#fff!important;width:100%}
.ybf-btn--primary:hover{background:var(--yb-blue2);color:#fff!important}
.ybf-btn--xl{min-height:64px;font-size:16px}
.ybf-btn--line{background:transparent;color:var(--yb-ink)!important;box-shadow:inset 0 0 0 1px var(--yb-ink)}
.ybf-btn--line:hover{background:var(--yb-ink);color:#fff!important}
.ybf-free{color:var(--yb-ok)!important;font-weight:600!important}

/* Summary card */
.ybc,.ybk{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:72px;align-items:start}
.ybc-summary,.ybk-summary{position:sticky;top:24px}
.ybf-card{background:var(--yb-stone);padding:36px 32px 32px}
.ybf-card__top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:20px}
.ybf-card__title{font-size:22px!important;font-weight:500!important;letter-spacing:-.015em;margin:0 0 20px!important;color:var(--yb-ink)}
.ybf-card__top .ybf-card__title{margin:0!important}
.ybf-rows{margin:0;padding:16px 0;border-top:1px solid #d9dce0;display:grid;gap:10px}
.ybf-rows>div{display:flex;justify-content:space-between;gap:16px;align-items:baseline;font-size:15px}
.ybf-rows dt{color:var(--yb-ink2);font-weight:400;margin:0}
.ybf-rows dd{color:var(--yb-ink);font-weight:500;margin:0;text-align:right;font-variant-numeric:tabular-nums}
.ybf-total{display:grid;grid-template-columns:1fr auto;align-items:end;gap:6px 16px;padding:20px 0 24px;border-top:1px solid var(--yb-ink)}
.ybf-total span{font-size:15px;font-weight:600;color:var(--yb-ink)}
.ybf-total strong{font-size:34px;font-weight:500;letter-spacing:-.025em;line-height:1;color:var(--yb-ink);font-variant-numeric:tabular-nums;text-align:right}
.ybf-total small{grid-column:1/-1;text-align:right;font-size:13px;color:var(--yb-muted)}
.ybf-card__note{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;color:var(--yb-muted);margin:16px 0 0!important}
.ybf-card__note svg,.ybk-place__note svg{flex:0 0 16px;width:16px;height:16px;margin-top:2px;color:var(--yb-ink)}
.ybf-trust{list-style:none;margin:24px 0 0;padding:20px 0 0;border-top:1px solid #d9dce0;display:grid;gap:14px}
.ybf-trust li{display:flex;gap:12px;align-items:flex-start;margin:0;font-size:13px;line-height:1.45;color:var(--yb-muted)}
.ybf-trust svg{flex:0 0 20px;width:20px;height:20px;color:var(--yb-ink);margin-top:1px}
.ybf-trust strong{display:block;font-size:14px;font-weight:600;color:var(--yb-ink)}

/* ═════════ Cart ═════════ */
.ybc-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--yb-ink)}
.ybc-lines{display:block}
.ybc-item{display:grid;grid-template-columns:minmax(220px,340px) minmax(0,1fr) auto;gap:0 36px;padding:36px 0;border-bottom:1px solid var(--yb-hair);align-items:start}
.ybc-item__media{display:block;background:#0b0c0d;aspect-ratio:4/3;overflow:hidden}
.ybc-item__media img{width:100%!important;height:100%!important;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.ybc-item:hover .ybc-item__media img{transform:scale(1.025)}
.ybc-item__body{display:flex;flex-direction:column;gap:10px;min-width:0}
.ybc-item__name{font-size:clamp(24px,2.2vw,30px)!important;font-weight:500!important;letter-spacing:-.025em!important;line-height:1.1!important;margin:0!important}
.ybc-item__name a{color:var(--yb-ink)!important;text-decoration:none!important}
.ybc-item__variant{font-size:14px;color:var(--yb-ink2);margin:0!important}
.ybc-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:10px 0 4px;padding:14px 0 0;border-top:1px solid var(--yb-hair);gap:0 16px}
.ybc-specs div{margin:0}
.ybc-specs dt{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--yb-muted);margin:0 0 4px}
.ybc-specs dd{font-size:15px;font-weight:600;color:var(--yb-ink);margin:0;line-height:1.3}
.ybc-note{font-size:13px;color:var(--yb-muted);margin:0}
.ybc-item__actions{display:flex;align-items:center;gap:20px;margin-top:10px}
.ybc-qty .quantity{display:inline-flex;align-items:center;height:46px;border:1px solid var(--yb-ink);background:#fff}
.ybc-qty .quantity input.qty{width:44px!important;height:44px;min-height:0!important;border:0!important;padding:0!important;text-align:center;font:500 16px var(--yb-font)!important;color:var(--yb-ink);background:transparent!important;box-shadow:none!important;-moz-appearance:textfield}
.ybc-qty .quantity input.qty::-webkit-inner-spin-button,.ybc-qty .quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.ybc-step{width:42px;height:44px;border:0;background:transparent;font:400 20px/1 var(--yb-font);color:var(--yb-ink);cursor:pointer}
.ybc-step:hover{background:var(--yb-stone)}
.ybc-qty .screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px)}
.ybc-remove{font-size:14px;color:var(--yb-muted)!important;text-decoration:underline!important;text-underline-offset:4px}
.ybc-remove:hover{color:#b3261e!important}
.ybc-item__price{text-align:right;font-size:24px;font-weight:500;letter-spacing:-.015em;color:var(--yb-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.ybc-item__price small{display:block;font-size:13px;font-weight:400;color:var(--yb-muted);letter-spacing:0;margin-top:4px}
.ybc-actions{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ybc-help{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;margin-top:40px;padding:24px 28px;border:1px solid var(--yb-hair)}
.ybc-help__icon{width:44px;height:44px;display:grid;place-items:center;background:var(--yb-stone)}
.ybc-help__icon svg{width:20px;height:20px;color:var(--yb-ink)}
.ybc-help strong{display:block;font-size:17px;font-weight:600;color:var(--yb-ink);margin-bottom:2px}
.ybc-help p{margin:0;font-size:14px;color:var(--yb-muted)}
.ybc-help .ybf-btn{min-height:48px;padding:0 20px;font-size:14px;white-space:nowrap}
/* Recommendations */
.ybc-recs{margin-top:72px}
.ybc-recs__head{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:16px;margin-bottom:28px;border-bottom:1px solid var(--yb-ink)}
.ybc-recs__head h2{font-size:clamp(24px,2.4vw,30px)!important;font-weight:500!important;letter-spacing:-.02em;margin:0!important}
.ybc-recs__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.ybc-rec{display:flex;flex-direction:column;gap:6px;text-decoration:none!important;color:var(--yb-ink)!important}
.ybc-rec__media{display:block;aspect-ratio:4/3;background:#0b0c0d;overflow:hidden;margin-bottom:10px}
.ybc-rec__media img{width:100%!important;height:100%!important;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.ybc-rec:hover .ybc-rec__media img{transform:scale(1.04)}
.ybc-rec__name{font-size:18px;font-weight:500;letter-spacing:-.01em}
.ybc-rec__spec{font-size:13px;color:var(--yb-muted)}
.ybc-rec__price{font-size:15px;font-weight:600;margin-top:2px}
.ybc-rec__cta{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;margin-top:8px;color:var(--yb-blue)}
.ybc-rec__cta svg{width:16px;height:16px;transition:transform .2s}
.ybc-rec:hover .ybc-rec__cta svg{transform:translateX(3px)}
/* Empty cart */
.ybc-empty{max-width:640px;padding:24px 0 8px}
.ybc-empty h2{font-size:clamp(32px,3.6vw,48px)!important;font-weight:500!important;letter-spacing:-.03em;margin:10px 0 12px!important}
.ybc-empty p{font-size:17px;color:var(--yb-muted);margin:0 0 28px}
.ybc-empty .ybf-btn{width:auto}
.woocommerce-cart .cart-empty.woocommerce-info,.woocommerce-cart .wc-empty-cart-message{display:none}

/* ═════════ Checkout ═════════ */
.ybk-step{padding:0 0 44px;margin:0 0 44px;border-bottom:1px solid var(--yb-hair)}
.ybk-step:last-child{border-bottom:0;margin-bottom:0}
.ybk-step__head{display:flex;align-items:center;gap:16px;margin:0 0 8px}
.ybk-step__n{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--yb-ink);font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--yb-ink)}
.ybk-step__head h2{font-size:24px!important;font-weight:500!important;letter-spacing:-.02em;margin:0!important;color:var(--yb-ink)}
.ybk-step__hint{font-size:14px;color:var(--yb-muted);margin:0 0 20px 56px!important}
.ybk-step__head+.ybk-fields,.ybk-step__head+.ybf-ship,.ybk-step__head+.ybk-pay{margin-top:20px}
.ybk-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;padding-left:56px}
.ybk-fields .form-row{margin:0!important;padding:0!important;width:auto!important;float:none!important}
.ybk-fields .form-row-wide,.ybk-fields #billing_address_1_field,.ybk-fields #billing_company_field,.ybk-fields #billing_nip_field,.ybk-fields #billing_country_field{grid-column:1/-1}
.ybk-fields--2 .form-row{grid-column:auto!important}
.ybk .form-row label{display:block;font-size:13px;font-weight:500;color:var(--yb-ink2);margin:0 0 7px}
.ybk .form-row label .required{color:var(--yb-blue);text-decoration:none;border:0}
.ybk .form-row label .optional{color:var(--yb-muted);font-weight:400}
.ybk .form-row .input-text,.ybk .form-row select,.ybk .form-row textarea,.ybk .select2-container .select2-selection--single{width:100%;height:54px;min-height:54px;padding:0 16px;border:1px solid #cfd3d8!important;border-radius:0!important;background:#fff;font:400 16px var(--yb-font);color:var(--yb-ink);box-shadow:none;transition:border-color .15s,box-shadow .15s}
.ybk .form-row textarea{height:110px;padding:14px 16px}
.ybk .form-row .input-text:focus,.ybk .form-row select:focus,.ybk .form-row textarea:focus{outline:0;border-color:var(--yb-ink)!important;box-shadow:0 0 0 1px var(--yb-ink)}
.ybk .select2-container .select2-selection--single .select2-selection__rendered{line-height:52px;padding:0;color:var(--yb-ink)}
.ybk .select2-container .select2-selection--single .select2-selection__arrow{height:52px;right:10px}
.ybk .form-row.woocommerce-invalid .input-text,.ybk .form-row.woocommerce-invalid select{border-color:#b3261e!important}
.ybk .form-row.woocommerce-validated .input-text{border-color:#cfd3d8!important}
.ybk-notes{grid-column:1/-1;margin:20px 0 0 56px}
.ybk-notes summary{cursor:pointer;font-size:14px;font-weight:500;color:var(--yb-ink);list-style:none}
.ybk-notes summary::before{content:"+  ";font-weight:600}
.ybk-notes[open] summary::before{content:"−  "}
.ybk-notes .form-row{margin-top:12px!important}
/* Option cards (shipping + payment) */
.ybf-ship,.ybk-methods{display:grid;gap:12px;padding:0 0 0 56px!important;margin:0!important;list-style:none}
.ybk-method{margin:0!important;padding:0!important;list-style:none}
.ybf-option{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px 22px;background:#fff;border:1px solid var(--yb-hair);cursor:pointer;transition:border-color .15s,box-shadow .15s;margin:0!important}
.ybf-option:hover{border-color:#b9bec4}
.ybf-option:has(input:checked){border-color:var(--yb-ink);box-shadow:inset 0 0 0 1px var(--yb-ink)}
.ybf-option input{appearance:none;-webkit-appearance:none;width:22px;height:22px;margin:0;border:1px solid var(--yb-ink);border-radius:50%;background:#fff;display:grid;place-items:center;cursor:pointer}
.ybf-option input:checked{background:radial-gradient(circle,var(--yb-ink) 0 5px,#fff 6px)}
.ybf-option input:focus-visible{outline:3px solid var(--yb-blue);outline-offset:3px}
.ybf-option__body strong{display:block;font-size:16px;font-weight:600;color:var(--yb-ink);line-height:1.35}
.ybf-option__body small{display:block;font-size:13px;color:var(--yb-muted);margin-top:3px;line-height:1.45}
.ybf-option__price{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--yb-ink)}
.ybf-option__icon svg{width:24px;height:24px;color:var(--yb-ink)}
.ybk-method__box{padding:16px 22px 4px 60px;font-size:14px;line-height:1.6;color:var(--yb-muted);background:none!important;margin:0!important}
.ybk-method__box::before{display:none!important}
.ybk-method__box p{margin:0}
/* Terms + place order */
.ybk-place{padding:28px 0 0 56px!important;margin:0!important}
.ybk-terms{margin:0 0 24px}
.ybk-terms .form-row{margin:0!important;padding:0!important}
.ybf-check{display:grid!important;grid-template-columns:22px 1fr;gap:12px;align-items:start;font-size:14px!important;font-weight:400!important;line-height:1.55;color:var(--yb-ink2)!important;cursor:pointer}
.ybf-check input{appearance:none;-webkit-appearance:none;width:22px;height:22px;margin:0;border:1px solid var(--yb-ink);background:#fff;display:grid;place-items:center;cursor:pointer}
.ybf-check input:checked{background:var(--yb-ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='m5 12 5 5L20 7'/%3E%3C/svg%3E") center/14px no-repeat}
.ybf-check a{color:var(--yb-ink)!important;text-decoration:underline!important;text-underline-offset:3px}
.ybf-check abbr{display:none}
.ybk-place #place_order{width:100%}
.ybk-place__note{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;color:var(--yb-muted);margin:14px 0 0!important}
/* Checkout summary items */
.ybk-review{display:block}
.ybk-items{list-style:none;margin:0 0 4px;padding:0;display:grid;gap:14px}
.ybk-items li{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:14px;align-items:center;margin:0}
.ybk-items__media{display:block;aspect-ratio:4/3;background:#0b0c0d;overflow:hidden}
.ybk-items__media img{width:100%!important;height:100%!important;object-fit:cover;display:block}
.ybk-items__body strong{display:block;font-size:15px;font-weight:600;color:var(--yb-ink);line-height:1.3}
.ybk-items__body small{display:block;font-size:13px;color:var(--yb-muted);margin-top:3px}
.ybk-items__price{font-size:15px;font-weight:500;color:var(--yb-ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.ybk-summary .ybf-rows{margin-top:20px}
/* AJAX overlays */
.ybk .blockUI.blockOverlay,.ybc .blockUI.blockOverlay{background:#fff!important;opacity:.6!important}
/* Notices */
body.yb-site .woocommerce-NoticeGroup-checkout,body.yb-site.woocommerce-checkout .woocommerce-error{grid-column:1/-1}

/* ═════════ Thank-you ═════════ */
.ybt{max-width:none}
.ybt-intro{margin:0 0 48px}
.ybt-lede{font-size:clamp(20px,2vw,26px);font-weight:400;line-height:1.45;letter-spacing:-.01em;color:var(--yb-ink);max-width:860px;margin:0 0 32px!important}
.ybt-lede strong{font-weight:600}
.ybt-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border-top:1px solid var(--yb-ink);border-bottom:1px solid var(--yb-hair)}
.ybt-facts div{padding:18px 20px 18px 0;margin:0}
.ybt-facts div+div{padding-left:20px;border-left:1px solid var(--yb-hair)}
.ybt-facts dt{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--yb-muted);margin:0 0 8px}
.ybt-facts dd{font-size:20px;font-weight:500;letter-spacing:-.01em;color:var(--yb-ink);margin:0;font-variant-numeric:tabular-nums}
/* Bank ticket */
.ybt-ticket{position:relative;background:var(--yb-ink);color:#fff;padding:40px 44px;margin:0 0 56px}
.ybt-ticket::before,.ybt-ticket::after{content:"";position:absolute;top:118px;width:22px;height:22px;border-radius:50%;background:#fff}
.ybt-ticket::before{left:-11px}.ybt-ticket::after{right:-11px}
.ybt-ticket__head{display:flex;gap:18px;align-items:flex-start;padding-bottom:28px;margin-bottom:8px;border-bottom:1px dashed #ffffff40}
.ybt-ticket__icon{flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border:1px solid #ffffff40}
.ybt-ticket__icon svg{width:22px;height:22px;color:#fff}
.ybt-ticket__head h2{font-size:26px!important;font-weight:500!important;letter-spacing:-.02em;color:#fff!important;margin:0 0 6px!important}
.ybt-ticket__head p{margin:0;font-size:15px;color:#ffffffa6}
.ybt-ticket__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;margin:0}
.ybt-ticket__grid>div{padding:18px 0;border-bottom:1px solid #ffffff1a;margin:0}
.ybt-ticket__wide{grid-column:1/-1}
.ybt-ticket__grid dt{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#ffffff80;margin:0 0 8px}
.ybt-ticket__grid dd{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0;font-size:20px;font-weight:500;color:#fff;letter-spacing:.01em;font-variant-numeric:tabular-nums}
.ybt-ticket__wide dd{font-size:22px}
.yb-copy{background:transparent;border:1px solid #ffffff59;color:#fff;font:600 12px/1 var(--yb-font);letter-spacing:.12em;text-transform:uppercase;padding:8px 12px;cursor:pointer;transition:background .15s,color .15s}
.yb-copy:hover{background:#fff;color:var(--yb-ink)}
/* Next steps */
.ybt-next{margin:0 0 56px}
.ybt-next h2,.ybt-recap h2{font-size:clamp(24px,2.4vw,30px)!important;font-weight:500!important;letter-spacing:-.02em;margin:0 0 20px!important}
.ybt-next ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--yb-ink)}
.ybt-next li{display:flex;gap:16px;margin:0;padding:24px 28px 0 0}
.ybt-next li+li{padding-left:28px;border-left:1px solid var(--yb-hair)}
.ybt-next li>span{font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--yb-blue);padding-top:4px}
.ybt-next strong{display:block;font-size:17px;font-weight:600;color:var(--yb-ink);margin-bottom:6px}
.ybt-next p{margin:0;font-size:14px;line-height:1.6;color:var(--yb-muted)}
/* Recap */
.ybt-recap{display:block;max-width:860px}
.ybt-recap .ybk-items{padding:20px 0;border-top:1px solid var(--yb-ink)}
.ybt-recap .ybk-items li{grid-template-columns:120px minmax(0,1fr) auto}
.ybt-recap .ybf-rows{border-top:1px solid var(--yb-hair)}
.ybf-rows__total{padding-top:12px;margin-top:4px;border-top:1px solid var(--yb-ink)}
.ybf-rows__total dt{font-weight:600!important;color:var(--yb-ink)!important}
.ybf-rows__total dd{font-size:24px!important;letter-spacing:-.015em}
.ybt-addr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:40px}
.ybt-addr h3{font-size:12px!important;font-weight:600!important;letter-spacing:.16em;text-transform:uppercase;color:var(--yb-muted);margin:0 0 12px!important}
.ybt-addr address,.ybt-addr p{font-style:normal;font-size:15px;line-height:1.7;color:var(--yb-ink2);margin:0}
.ybt-addr a{color:var(--yb-ink)}
.ybt-failed{padding:32px;border-left:3px solid #b3261e;background:var(--yb-stone)}

/* ═════════ Responsive ═════════ */
@media(max-width:1100px){.ybc,.ybk{grid-template-columns:minmax(0,1fr) 340px;gap:40px}.ybc-item{grid-template-columns:220px minmax(0,1fr);}.ybc-item__price{grid-column:2;text-align:left;margin-top:14px}}
@media(max-width:900px){.ybc,.ybk{grid-template-columns:1fr;gap:48px}.ybc-summary,.ybk-summary{position:static}.ybt-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.ybt-facts div:nth-child(3){padding-left:0;border-left:0}.ybt-next ol{grid-template-columns:1fr}.ybt-next li+li{padding-left:0;border-left:0;border-top:1px solid var(--yb-hair);padding-top:20px;margin-top:20px}}
@media(max-width:767px){
.yb-flow-head{padding:28px 22px 32px;margin-bottom:36px}.yb-steps{margin-bottom:28px}.yb-steps__l{font-size:13px}.yb-flow-lede{font-size:15px}
.ybc-item{grid-template-columns:1fr;gap:18px;padding:28px 0}.ybc-item__price{grid-column:1;text-align:left;margin:0}
.ybc-specs{grid-template-columns:repeat(3,minmax(0,1fr))}.ybc-specs dd{font-size:14px}
.ybc-help{grid-template-columns:auto 1fr;padding:20px}.ybc-help .ybf-btn{grid-column:1/-1;width:100%}
.ybc-recs__grid{grid-template-columns:1fr;gap:36px}
.ybf-card{padding:28px 22px}
.ybk-fields{grid-template-columns:1fr;padding-left:0}.ybk-fields .form-row{grid-column:1/-1!important}
.ybk-step__hint,.ybk-notes{margin-left:0!important}
.ybf-ship,.ybk-methods{padding-left:0!important}
.ybk-place{padding-left:0!important}
.ybk-method__box{padding-left:22px}
.ybt-ticket{padding:28px 22px;margin-inline:0}.ybt-ticket::before,.ybt-ticket::after{display:none}.ybt-ticket__grid{grid-template-columns:1fr}.ybt-ticket__grid dd,.ybt-ticket__wide dd{font-size:17px}
.ybt-addr{grid-template-columns:1fr}
.ybt-recap .ybk-items li{grid-template-columns:92px minmax(0,1fr)}.ybt-recap .ybk-items__price{grid-column:2}
}
@media(prefers-reduced-motion:reduce){.ybc-item__media img,.ybc-rec__media img,.ybf-btn svg{transition:none!important}}

/* Full-bleed band without horizontal scroll; no "view cart" notice on the cart itself. */
html:has(body.yb-site),body.yb-site{overflow-x:clip}
body.woocommerce-cart .woocommerce-message:has(.wc-forward){display:none!important}
body.yb-site.woocommerce-cart .woocommerce-notices-wrapper,body.yb-site.woocommerce-checkout .woocommerce-notices-wrapper{width:auto;margin:0 0 24px}
.ybf-total strong *,.ybc-item__price>.woocommerce-Price-amount,.ybc-item__price>.woocommerce-Price-amount *{font-size:inherit!important;font-weight:inherit!important;letter-spacing:inherit}
.woocommerce .ybc a.remove.ybc-remove{display:inline;width:auto;height:auto;border-radius:0;font-size:14px!important;font-weight:400!important;line-height:1.4;color:var(--yb-muted)!important;background:none!important;text-decoration:underline!important;text-underline-offset:4px}
.woocommerce .ybc a.remove.ybc-remove:hover{color:#b3261e!important;background:none!important}
.ybc-specs dt{white-space:nowrap}.ybk-fields{grid-template-columns:repeat(6,minmax(0,1fr))}
.ybk-fields>.form-row{grid-column:span 6!important}
.ybk-fields>#billing_first_name_field,.ybk-fields>#billing_last_name_field,.ybk-fields--2>.form-row{grid-column:span 3!important}
.ybk-fields>#billing_postcode_field{grid-column:span 2!important}
.ybk-fields>#billing_city_field{grid-column:span 4!important}
@media(max-width:767px){.ybk-fields>.form-row,.ybk-fields>#billing_first_name_field,.ybk-fields>#billing_last_name_field,.ybk-fields--2>.form-row{grid-column:1/-1!important}.ybk-fields>#billing_postcode_field{grid-column:span 2!important}.ybk-fields>#billing_city_field{grid-column:span 4!important}}
/* Payment: neutralise WooCommerce #payment chrome; cards use flex so a hidden radio (single method) can't break layout */
.woocommerce-checkout #payment.ybk-pay{background:none!important;border-radius:0!important;padding:0!important}
.woocommerce-checkout #payment.ybk-pay ul.payment_methods{border:0!important;padding:0 0 0 56px!important;margin:0!important}
.woocommerce-checkout #payment.ybk-pay ul.payment_methods li{line-height:1.5!important;margin:0!important;list-style:none}
.woocommerce-checkout #payment.ybk-pay ul.payment_methods li label{display:flex!important;margin:0!important}
.ybf-option{display:flex!important;align-items:center;gap:16px}
.ybf-option>input{flex:0 0 22px}
.ybf-option__body{flex:1;min-width:0}
.ybf-option__price,.ybf-option__icon{flex:0 0 auto}
.woocommerce-checkout #payment.ybk-pay div.payment_box{background:none!important;color:var(--yb-muted)!important;padding:14px 22px 0 22px!important;margin:0!important;font-size:14px!important;border-radius:0!important}
.woocommerce-checkout #payment.ybk-pay div.payment_box::before{display:none!important}
.woocommerce-checkout #payment.ybk-pay div.form-row.place-order{padding:28px 0 0 56px!important;margin:0!important}
.woocommerce-checkout #payment.ybk-pay ul.payment_methods li .ybf-option{padding:20px 22px}
@media(max-width:767px){.woocommerce-checkout #payment.ybk-pay ul.payment_methods,.woocommerce-checkout #payment.ybk-pay div.form-row.place-order{padding-left:0!important}}
/* Place-order block: no WooCommerce float, note sits under the button */
.woocommerce-checkout #payment.ybk-pay #place_order{float:none!important;display:flex!important;width:100%!important;margin:0!important}
.woocommerce-checkout #payment.ybk-pay .ybk-place__note{display:flex!important;width:100%;clear:both}
.woocommerce-checkout #payment.ybk-pay .ybk-place::after,.woocommerce-checkout #payment.ybk-pay .ybk-place::before{display:none}
.woocommerce-checkout #payment.ybk-pay .woocommerce-terms-and-conditions-wrapper{margin:0 0 20px!important}
.woocommerce-checkout #payment.ybk-pay .woocommerce-privacy-policy-text{display:none}
.woocommerce-checkout #payment.ybk-pay .woocommerce-terms-and-conditions{display:none!important}
.ybf-eyebrow,.ybc-specs dt,.ybt-facts dt,.ybt-ticket__grid dt,.yb-copy{font-size:12px!important}

/* Mobile CRO ordering: cart = items → summary/CTA → help → recommendations; checkout = summary first */
@media(max-width:900px){
.ybc{display:flex;flex-direction:column;gap:0}
.ybc-main{display:contents}
.ybc-head{order:1}.ybc .woocommerce-cart-form{order:2}.ybc-summary{order:3;margin-top:32px}.ybc-help{order:4}.ybc-recs{order:5}
.ybk{display:flex;flex-direction:column}
.ybk-summary{order:-1;margin-bottom:8px}
.ybk-summary .ybf-trust{display:none}
}@media(max-width:900px){.ybc>*,.ybc-head,.ybc .woocommerce-cart-form,.ybc-help,.ybc-recs,.ybc-summary{width:100%;align-self:stretch;box-sizing:border-box}}
