/* CCS FAB Core — Group order pages (order cards + page sections).
   Every selector is scoped under .cgo-wrap on purpose: the Elementor kit styles bare elements
   (.elementor-kit-7 button, a, p, h2 …), so a single class of ours would lose the cascade. */
.cgo-wrap{--cgo-card:#132235;--cgo-line:rgba(255,255,255,.1);--cgo-red:#b31942;--cgo-red-2:#8b1433;--cgo-blue:#1a4a8a;--cgo-navy-2:#162538;--cgo-gold:#ff8a3d;--cgo-ink:#fff;--cgo-muted:#c4ced4;--cgo-green:#2e9d5b;max-width:1240px;margin:0 auto;font-family:'Barlow',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--cgo-ink)}
.cgo-wrap *,.cgo-wrap *::before,.cgo-wrap *::after{box-sizing:border-box}
.cgo-wrap h2,.cgo-wrap h3{font-family:'Bebas Neue','Barlow',sans-serif;font-weight:400;letter-spacing:.03em;line-height:1.05;margin:0;color:#fff;padding:0}
.cgo-wrap p{margin:0 0 14px;line-height:1.6;font-size:16px;color:var(--cgo-muted)}
.cgo-wrap p:last-child{margin-bottom:0}
.cgo-wrap a{color:#fff}
.cgo-wrap button{font-family:inherit;letter-spacing:normal;text-transform:none}
.cgo-wrap .cgo-empty{text-align:center;padding:40px 0}

/* Buttons */
.cgo-wrap .cgo-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:8px;background:var(--cgo-red);color:#fff!important;font-family:'Bebas Neue','Barlow',sans-serif;font-size:20px;letter-spacing:.08em;text-decoration:none!important;transition:transform .15s,background .15s;border:none;cursor:pointer;white-space:nowrap}
.cgo-wrap .cgo-btn:hover{background:var(--cgo-red-2);transform:translateY(-1px)}
.cgo-wrap .cgo-btn.is-ghost{background:transparent;border:2px solid rgba(255,255,255,.3)}
.cgo-wrap .cgo-btn.is-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}

/* Section headings */
.cgo-wrap .cgo-section{padding:34px 0 6px}
.cgo-wrap .cgo-section-head{margin-bottom:20px}
.cgo-wrap .cgo-section-head h2{font-size:38px}
.cgo-wrap .cgo-section-head p{margin-top:8px}

/* Order cards */
.cgo-wrap .cgo-cards{display:grid;gap:28px}
.cgo-wrap .cgo-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:34px;background:var(--cgo-card);border:1px solid var(--cgo-line);border-radius:18px;padding:28px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.cgo-wrap .cgo-gallery{min-width:0}
.cgo-wrap .cgo-main{border-radius:12px;overflow:hidden;background:#000;aspect-ratio:1/1}
.cgo-wrap .cgo-main img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .2s}
.cgo-wrap .cgo-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.cgo-wrap .cgo-thumb{width:80px;height:80px;padding:0;margin:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:#000;cursor:pointer;opacity:.65;transition:opacity .15s,border-color .15s;box-shadow:none;line-height:0;min-width:0;min-height:0}
.cgo-wrap .cgo-thumb img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0}
.cgo-wrap .cgo-thumb:hover,.cgo-wrap .cgo-thumb.is-active{opacity:1;border-color:var(--cgo-red);background:#000;transform:none}
.cgo-wrap .cgo-info{min-width:0;display:flex;flex-direction:column}
.cgo-wrap .cgo-title{font-size:36px;margin-bottom:6px}
.cgo-wrap .cgo-price{font-size:30px;font-weight:700;color:var(--cgo-gold);margin-bottom:12px;font-family:'Barlow',sans-serif;line-height:1.2}
.cgo-wrap .cgo-price .amount,.cgo-wrap .cgo-price bdi,.cgo-wrap .cgo-price .woocommerce-Price-amount{color:var(--cgo-gold)}
.cgo-wrap .cgo-price del{opacity:.5;font-weight:400;margin-right:8px}
.cgo-wrap .cgo-price ins{text-decoration:none}
.cgo-wrap .cgo-blurb p{font-size:16px;margin-bottom:10px}

/* Size pills */
.cgo-wrap .cgo-form{margin-top:6px}
.cgo-wrap .cgo-attr{border:none;padding:0;margin:0 0 16px;min-width:0}
.cgo-wrap .cgo-attr legend{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--cgo-muted);margin-bottom:10px;font-weight:600;padding:0}
.cgo-wrap .cgo-attr-hint{opacity:.6;letter-spacing:.06em;text-transform:none;font-weight:400;margin-left:6px}
.cgo-wrap .cgo-pills{display:flex;flex-wrap:wrap;gap:8px}
.cgo-wrap .cgo-pill{position:relative;cursor:pointer;margin:0}
.cgo-wrap .cgo-pill input{position:absolute;opacity:0;width:0;height:0;margin:0}
.cgo-wrap .cgo-pill span{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:70px;padding:9px 12px;border:2px solid rgba(255,255,255,.18);border-radius:10px;font-weight:700;font-size:16px;line-height:1.1;background:rgba(255,255,255,.03);transition:all .15s;color:#fff}
.cgo-wrap .cgo-pill span em{font-style:normal;font-size:12px;font-weight:600;color:var(--cgo-muted);margin-top:4px}
.cgo-wrap .cgo-pill span small{font-size:10px;color:#ff6b6b;margin-top:3px;text-transform:uppercase;letter-spacing:.08em}
.cgo-wrap .cgo-pill:hover span{border-color:rgba(255,255,255,.5)}
.cgo-wrap .cgo-pill input:checked+span{border-color:var(--cgo-red);background:var(--cgo-red);color:#fff}
.cgo-wrap .cgo-pill input:checked+span em{color:#fff}
.cgo-wrap .cgo-pill input:focus-visible+span{outline:2px solid #fff;outline-offset:2px}
.cgo-wrap .cgo-pill.is-out span{opacity:.4;cursor:not-allowed;text-decoration:line-through}

/* Quantity + add to cart */
.cgo-wrap .cgo-row{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap;margin-top:6px}
.cgo-wrap .cgo-qty{display:inline-flex;align-items:stretch;border:2px solid rgba(255,255,255,.18);border-radius:10px;overflow:hidden;background:rgba(255,255,255,.03)}
.cgo-wrap .cgo-qty .cgo-step{width:44px;border:none;background:transparent;color:#fff;font-size:22px;cursor:pointer;padding:0;border-radius:0;box-shadow:none}
.cgo-wrap .cgo-qty .cgo-step:hover{background:rgba(255,255,255,.08);transform:none}
.cgo-wrap .cgo-qty input{width:56px;border:none;background:transparent;color:#fff;text-align:center;font-size:18px;font-weight:700;-moz-appearance:textfield;padding:0;border-radius:0;box-shadow:none}
.cgo-wrap .cgo-qty input::-webkit-outer-spin-button,.cgo-wrap .cgo-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cgo-wrap .cgo-add{flex:1;min-width:210px;padding:14px 26px;border:none;border-radius:10px;background:var(--cgo-red);color:#fff;font-family:'Bebas Neue','Barlow',sans-serif;font-size:22px;letter-spacing:.08em;cursor:pointer;transition:background .15s,transform .15s,opacity .15s;text-transform:uppercase;box-shadow:none}
.cgo-wrap .cgo-add:hover:not(:disabled){background:var(--cgo-red-2);transform:translateY(-1px)}
.cgo-wrap .cgo-add:disabled{opacity:.45;cursor:not-allowed;transform:none;background:var(--cgo-red)}
.cgo-wrap .cgo-add.loading{opacity:.7}
.cgo-wrap .cgo-note{font-size:14px;color:var(--cgo-muted);margin:14px 0 0;line-height:1.5}
.cgo-wrap .cgo-note-soft{opacity:.8;margin-top:6px;font-size:13px}

/* Accordions */
.cgo-wrap .cgo-details{margin-top:14px;border-top:1px solid var(--cgo-line);padding-top:12px}
.cgo-wrap .cgo-details summary{cursor:pointer;font-weight:700;font-size:16px;list-style:none;display:flex;align-items:center;justify-content:space-between;color:#fff}
.cgo-wrap .cgo-details summary::-webkit-details-marker{display:none}
.cgo-wrap .cgo-details summary::after{content:"+";font-size:22px;color:var(--cgo-muted);transition:transform .2s}
.cgo-wrap .cgo-details[open] summary::after{transform:rotate(45deg)}
.cgo-wrap .cgo-details-body{padding:12px 0 4px;font-size:15px;color:var(--cgo-muted);line-height:1.6}
.cgo-wrap .cgo-details-body ul{margin:0;padding-left:20px}
.cgo-wrap .cgo-details-body li{margin-bottom:6px}
.cgo-wrap .cgo-chart{overflow-x:auto}
.cgo-wrap .cgo-chart table{width:100%;border-collapse:collapse;font-size:14px;min-width:560px;margin:0}
.cgo-wrap .cgo-chart th,.cgo-wrap .cgo-chart td{padding:9px 10px;border-bottom:1px solid var(--cgo-line);text-align:center;white-space:nowrap;color:var(--cgo-muted)}
.cgo-wrap .cgo-chart th:first-child,.cgo-wrap .cgo-chart td:first-child{text-align:left}
.cgo-wrap .cgo-chart thead th{background:rgba(255,255,255,.06);color:#fff;font-weight:700}
.cgo-wrap .cgo-chart thead th.is-on{color:var(--cgo-gold)}
.cgo-wrap .cgo-chart-note{font-size:13px;margin-bottom:8px}

/* Info tiles */
.cgo-wrap .cgo-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cgo-wrap .cgo-tile{background:var(--cgo-card);border:1px solid var(--cgo-line);border-radius:14px;padding:22px}
.cgo-wrap .cgo-ico{font-size:26px;line-height:1;margin-bottom:10px}
.cgo-wrap .cgo-tile h3{font-size:24px;margin-bottom:10px}
.cgo-wrap .cgo-tile p{font-size:15px}
.cgo-wrap .cgo-tile strong{color:#fff}
.cgo-wrap .cgo-small{font-size:13px;opacity:.75;margin-top:10px}
.cgo-wrap .cgo-tile-sub{font-weight:700;color:#fff;margin:8px 0 2px;font-size:15px}
.cgo-wrap .cgo-pricelist{list-style:none;margin:0 0 12px;padding:0}
.cgo-wrap .cgo-pricelist li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--cgo-line);font-size:16px;color:var(--cgo-muted)}
.cgo-wrap .cgo-pricelist li:last-child{border-bottom:none}
.cgo-wrap .cgo-pricelist b{color:var(--cgo-gold);font-weight:700}

/* How it works */
.cgo-wrap .cgo-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:step}
.cgo-wrap .cgo-step-item{padding:22px 18px;border:1px solid var(--cgo-line);border-radius:14px;background:rgba(255,255,255,.02)}
.cgo-wrap .cgo-step-item::before{counter-increment:step;content:counter(step);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--cgo-red);color:#fff;font-family:'Bebas Neue',sans-serif;font-size:20px;margin-bottom:12px}
.cgo-wrap .cgo-step-item h3{font-size:22px;margin-bottom:6px}
.cgo-wrap .cgo-step-item p{font-size:14px}

/* Questions band */
.cgo-wrap .cgo-band{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:linear-gradient(120deg,var(--cgo-blue),var(--cgo-navy-2));border-radius:16px;padding:26px 28px;margin:34px 0 10px}
.cgo-wrap .cgo-band h2{font-size:30px}
.cgo-wrap .cgo-band p{margin:6px 0 0;font-size:15px}
.cgo-wrap .cgo-band a{text-decoration:underline}
.cgo-wrap .cgo-band .cgo-btn{text-decoration:none}

@media(max-width:960px){
  .cgo-wrap .cgo-card{grid-template-columns:1fr;gap:22px;padding:20px}
  .cgo-wrap .cgo-tiles{grid-template-columns:1fr}
  .cgo-wrap .cgo-steps{grid-template-columns:repeat(2,1fr)}
  .cgo-wrap .cgo-section-head h2{font-size:32px}
}
@media(max-width:560px){
  .cgo-wrap .cgo-steps{grid-template-columns:1fr}
  .cgo-wrap .cgo-title{font-size:30px}
  .cgo-wrap .cgo-row{flex-direction:column}
  .cgo-wrap .cgo-qty{justify-content:center}
  .cgo-wrap .cgo-band{padding:22px}
}

/* Page heading rendered from the category (sections="title"), sitting inside the Elementor hero */
.cgo-wrap .cgo-headline{text-align:center;max-width:900px;margin:0 auto;padding:0 20px}
.cgo-wrap .cgo-heading{font-family:'Bebas Neue','Barlow',sans-serif;font-weight:400;line-height:1.02;letter-spacing:.03em;color:#fff;margin:0;font-size:clamp(38px,6vw,62px)}
.cgo-wrap .cgo-sub{margin-top:16px}
.cgo-wrap .cgo-sub p{font-size:18px;line-height:1.55;margin:0 0 10px;color:var(--cgo-muted)}
.cgo-wrap .cgo-sub p:last-child{margin-bottom:0}
@media(max-width:560px){
  .cgo-wrap .cgo-sub p{font-size:16px}
}
.cgo-wrap .cgo-hero-media{margin:0 auto;width:100%}
.cgo-wrap .cgo-headline .cgo-hero-media:first-child{margin-bottom:18px}
.cgo-wrap .cgo-headline .cgo-hero-media:not(:first-child){margin-top:20px}
.cgo-wrap .cgo-hero-img{display:block;width:100%;height:auto;margin:0 auto;border-radius:8px}
.cgo-wrap .cgo-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.cgo-wrap .cgo-headline.has-hidden-heading .cgo-hero-media{margin-bottom:0}
.cgo-wrap .cgo-headline.has-hidden-heading .cgo-sub{margin-top:18px}

/* Tabs: one per product when a category sells more than one */
.cgo-wrap [hidden]{display:none!important}
.cgo-wrap .cgo-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px;padding:6px;background:rgba(255,255,255,.04);border:1px solid var(--cgo-line);border-radius:14px}
.cgo-wrap .cgo-tab{flex:1 1 auto;min-width:120px;padding:12px 18px;border:none;border-radius:10px;background:transparent;color:var(--cgo-muted);font-family:'Bebas Neue','Barlow',sans-serif;font-size:19px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s,color .15s;box-shadow:none;line-height:1.1}
.cgo-wrap .cgo-tab:hover{background:rgba(255,255,255,.07);color:#fff;transform:none}
.cgo-wrap .cgo-tab.is-active{background:var(--cgo-red);color:#fff}
.cgo-wrap .cgo-tab:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* Colour pills carry a swatch of the colour itself */
.cgo-wrap .cgo-swatch{display:block;width:26px;height:26px;border-radius:50%;border:2px solid rgba(255,255,255,.35);margin-bottom:5px;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.cgo-wrap .cgo-pill input:checked+span .cgo-swatch{border-color:#fff}
.cgo-wrap .cgo-attr-colour .cgo-pill span{min-width:92px;padding:10px 14px}
.cgo-wrap .cgo-price-block+.cgo-price-block{margin-top:14px}

@media(max-width:560px){
  .cgo-wrap .cgo-tab{min-width:0;flex:1 1 45%;font-size:17px;padding:10px 12px}
}

/* ===========================================================================
   2026-10-01 — the order card sits on white so it lifts off the dark page,
   the tabs read as real buttons (they looked like plain text on phones), and
   the whole block keeps its distance from the screen edges.
   =========================================================================== */
.cgo-wrap{box-sizing:border-box;padding-left:18px;padding-right:18px}
@media(min-width:768px){.cgo-wrap{padding-left:24px;padding-right:24px}}

/* Tabs */
.cgo-wrap .cgo-tabs{gap:10px;padding:10px;background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}
.cgo-wrap .cgo-tab{background:#fff;color:#0d1b2a;border:1px solid #cdd6e2;box-shadow:0 2px 8px rgba(0,0,0,.28);min-height:50px;display:flex;align-items:center;justify-content:center;padding:12px 16px}
.cgo-wrap .cgo-tab:hover{background:#eef3f9;color:#0d1b2a;transform:translateY(-1px)}
.cgo-wrap .cgo-tab.is-active{background:var(--cgo-red);border-color:var(--cgo-red);color:#fff;box-shadow:0 4px 14px rgba(179,25,66,.45)}

/* Order card on white */
.cgo-wrap .cgo-card{--paper:#fff;--paper-line:#e3e8ef;--paper-ink:#0d1b2a;--paper-muted:#56616f;--paper-soft:#f3f6fa;
  background:var(--paper);border:1px solid var(--paper-line);color:var(--paper-ink);box-shadow:0 20px 50px rgba(0,0,0,.4)}
.cgo-wrap .cgo-card .cgo-main{background:var(--paper-soft)}
.cgo-wrap .cgo-card .cgo-thumb{background:var(--paper-soft);opacity:.9;border-color:transparent}
.cgo-wrap .cgo-card .cgo-thumb:hover,.cgo-wrap .cgo-card .cgo-thumb.is-active{opacity:1;border-color:var(--paper-ink);background:var(--paper-soft)}
.cgo-wrap .cgo-card .cgo-title{color:var(--paper-ink)}
.cgo-wrap .cgo-card .cgo-price,
.cgo-wrap .cgo-card .cgo-price .amount,
.cgo-wrap .cgo-card .cgo-price bdi,
.cgo-wrap .cgo-card .cgo-price .woocommerce-Price-amount{color:var(--cgo-red)}
.cgo-wrap .cgo-card .cgo-blurb p{color:var(--paper-muted)}
.cgo-wrap .cgo-card .cgo-attr legend{color:var(--paper-muted)}
.cgo-wrap .cgo-card .cgo-attr-hint{color:var(--paper-muted)}

/* Size and colour pills */
.cgo-wrap .cgo-card .cgo-pill span{background:var(--paper-soft);border:2px solid #cdd6e2;color:var(--paper-ink)}
.cgo-wrap .cgo-card .cgo-pill span em{color:var(--paper-muted)}
.cgo-wrap .cgo-card .cgo-pill span small{color:var(--cgo-red)}
.cgo-wrap .cgo-card .cgo-pill:hover span{border-color:var(--paper-ink);background:#fff}
.cgo-wrap .cgo-card .cgo-pill input:checked+span{background:var(--paper-ink);border-color:var(--paper-ink);color:#fff}
.cgo-wrap .cgo-card .cgo-pill input:checked+span em{color:rgba(255,255,255,.82)}
.cgo-wrap .cgo-card .cgo-pill input:focus-visible+span{outline:2px solid var(--paper-ink);outline-offset:2px}
.cgo-wrap .cgo-card .cgo-swatch{border-color:rgba(13,27,42,.22)}
.cgo-wrap .cgo-card .cgo-pill input:checked+span .cgo-swatch{border-color:#fff}

/* Quantity + add to cart */
.cgo-wrap .cgo-card .cgo-qty{background:var(--paper-soft);border:2px solid #cdd6e2}
.cgo-wrap .cgo-card .cgo-qty .cgo-step{color:var(--paper-ink)}
.cgo-wrap .cgo-card .cgo-qty .cgo-step:hover{background:rgba(13,27,42,.07)}
.cgo-wrap .cgo-card .cgo-qty input{color:var(--paper-ink)}
.cgo-wrap .cgo-card .cgo-add{background:var(--paper-ink);color:#fff}
.cgo-wrap .cgo-card .cgo-add:hover:not(:disabled){background:var(--cgo-red)}
.cgo-wrap .cgo-card .cgo-add:disabled{background:#9aa5b4;opacity:1;color:#fff}
.cgo-wrap .cgo-card .cgo-note{color:var(--paper-muted)}

/* Accordions and size chart */
.cgo-wrap .cgo-card .cgo-details{border-top:1px solid var(--paper-line)}
.cgo-wrap .cgo-card .cgo-details summary{color:var(--paper-ink)}
.cgo-wrap .cgo-card .cgo-details summary::after{color:var(--paper-muted)}
.cgo-wrap .cgo-card .cgo-details-body{color:var(--paper-muted)}
.cgo-wrap .cgo-card .cgo-details-body strong{color:var(--paper-ink)}
.cgo-wrap .cgo-card .cgo-chart th,.cgo-wrap .cgo-card .cgo-chart td{color:var(--paper-muted);border-bottom:1px solid var(--paper-line)}
.cgo-wrap .cgo-card .cgo-chart thead th{background:var(--paper-soft);color:var(--paper-ink)}
.cgo-wrap .cgo-card .cgo-chart th.is-on{color:var(--cgo-red)}
.cgo-wrap .cgo-card .cgo-chart-note{color:var(--paper-muted)}

@media(max-width:560px){
  .cgo-wrap .cgo-card{padding:18px}
  .cgo-wrap .cgo-tab{flex:1 1 calc(50% - 10px);font-size:16px;letter-spacing:.04em}
}

/* The Elementor kit paints every field with the page's navy
   (.elementor-kit-7 input:not([type="button"]):not([type="submit"]){background-color:#0D1B2A}) and it outranks a
   plain .cgo-wrap rule, so the quantity box needs its own colours stated outright. */
.cgo-wrap .cgo-card .cgo-qty input{background:#fff!important;color:var(--paper-ink)!important;-webkit-text-fill-color:var(--paper-ink);border:none!important;box-shadow:none!important;height:auto!important}
.cgo-wrap .cgo-card .cgo-qty input:focus{background:#fff!important;outline:none!important;border:none!important}
/* a little more room for the title and the options, which carry more text than the photo needs */
@media(min-width:961px){
  .cgo-wrap .cgo-card{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
  .cgo-wrap .cgo-card .cgo-title{font-size:33px}
}
.cgo-wrap .cgo-fine{max-width:860px;margin:18px auto 0;text-align:center;font-size:13px;line-height:1.55;color:var(--cgo-muted);opacity:.85}
