/* =========================================================
   Coastkey: handlekurv-siden ([coastkey_cart]) og kassen
   ([woocommerce_checkout]) — bygget fra bunnen.
   Tokens: krem #F7F5EE, marine #21263C, oransje #F26531
========================================================= */

/* ---------- Delte knapper ---------- */
.ck-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 1.5rem;
  border-radius: 0.5rem;
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3 !important;
  height: auto !important;
  min-height: 0 !important;
  text-indent: 0 !important;
  text-decoration: none !important;
  cursor: pointer;
  transition: all 0.25s ease;
  border: none;
}
.ck-btn::before,
.ck-btn::after {
  content: none !important;
  display: none !important;
}
.ck-btn--primary {
  background: var(--coastkey-orange, #f26531);
  color: var(--coastkey-white, #f7f5ee) !important;
}
.ck-btn--primary:hover {
  background: #e05a2b;
  color: var(--coastkey-white, #f7f5ee) !important;
}
.ck-btn--outline {
  background: transparent;
  border: 2px solid var(--coastkey-blue, #21263c);
  color: var(--coastkey-blue, #21263c) !important;
}
.ck-btn--outline:hover {
  background: rgba(33, 38, 60, 0.08);
}

/* =========================================================
   HANDLEKURV-SIDEN
========================================================= */
.ck-cart-page {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3rem 1.25rem 5rem;
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  color: var(--coastkey-blue, #21263c);
}
.ck-cart-page__title {
  font-family: inherit;
  color: var(--coastkey-blue, #21263c);
  font-size: clamp(1.8rem, 4vw, 2.6rem);
  font-weight: 600;
  margin: 0 0 1.5rem;
}

/* Varsler (kupong brukt, feil, osv.) */
.ck-cart-page__notices .woocommerce-message,
.ck-cart-page__notices .woocommerce-info,
.ck-cart-page__notices .woocommerce-error,
.ck-checkout-page .woocommerce-message,
.ck-checkout-page .woocommerce-info,
.ck-checkout-page .woocommerce-error {
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  background: #fff;
  color: var(--coastkey-blue, #21263c);
  border: 1px solid rgba(33, 38, 60, 0.15);
  border-left: 4px solid var(--coastkey-orange, #f26531);
  border-radius: 0.5rem;
  padding: 0.9rem 1.2rem;
  margin: 0 0 1rem;
  list-style: none;
}
.ck-cart-page__notices .woocommerce-error li,
.ck-checkout-page .woocommerce-error li {
  list-style: none;
}

/* Tom kurv */
.ck-cart-empty {
  background: #fff;
  border: 1px solid rgba(33, 38, 60, 0.12);
  border-radius: 0.75rem;
  padding: 3rem 2rem;
  text-align: center;
}
.ck-cart-empty p {
  font-size: 1.1rem;
  margin: 0 0 1.5rem;
  color: rgba(33, 38, 60, 0.75);
}
.ck-cart-empty .ck-btn {
  display: inline-flex;
}

/* Grid: varer venstre, oppsummering høyre */
.ck-cart-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 2rem;
  align-items: start;
}

/* Vareliste */
.ck-cart-items {
  background: #fff;
  border: 1px solid rgba(33, 38, 60, 0.12);
  border-radius: 0.75rem;
  padding: 0 1.5rem;
}
.ck-cart-row {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) auto;
  gap: 1.25rem;
  padding: 1.5rem 0;
  border-bottom: 1px solid rgba(33, 38, 60, 0.1);
}
.ck-cart-row:last-child {
  border-bottom: none;
}
.ck-cart-row__image img {
  width: 96px !important;
  height: 96px !important;
  max-height: none !important;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border: 1px solid rgba(33, 38, 60, 0.12);
  border-radius: 0.5rem;
  background: #fff;
  display: block;
}
.ck-cart-row__info {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  min-width: 0;
}
.ck-cart-row__name {
  font-weight: 600;
  font-size: 1.05rem;
  color: var(--coastkey-blue, #21263c) !important;
  text-decoration: none !important;
  line-height: 1.3;
}
a.ck-cart-row__name:hover {
  color: var(--coastkey-orange, #f26531) !important;
}
.ck-cart-row__meta {
  font-size: 0.85rem;
  color: rgba(33, 38, 60, 0.65);
}
.ck-cart-row__meta:empty {
  display: none;
}
.ck-cart-row__unit {
  font-size: 0.9rem;
  color: rgba(33, 38, 60, 0.65);
}
.ck-cart-row__controls {
  margin-top: 0.4rem;
}
.ck-cart-row__line {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
}
.ck-cart-row__total {
  font-weight: 700;
  white-space: nowrap;
}
.ck-cart-row__total .amount {
  color: var(--coastkey-blue, #21263c);
}
a.ck-cart-row__remove {
  width: 26px;
  height: 26px;
  line-height: 24px;
  text-align: center;
  border-radius: 50%;
  color: rgba(33, 38, 60, 0.55) !important;
  font-size: 1.15rem;
  font-weight: 400;
  text-decoration: none !important;
}
a.ck-cart-row__remove:hover {
  color: var(--coastkey-white, #f7f5ee) !important;
  background: var(--coastkey-orange, #f26531);
}

/* Antall-velger (gjenbruker skuffens klasser) */
.ck-cart-page .ck-drawer-qty {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(33, 38, 60, 0.25);
  border-radius: 0.5rem;
  overflow: hidden;
  background: #fff;
}
.ck-cart-page .ck-drawer-qty-btn {
  background: none;
  border: none;
  width: 34px;
  height: 32px;
  font-size: 1rem;
  cursor: pointer;
  color: var(--coastkey-blue, #21263c);
  line-height: 1;
  font-family: inherit;
}
.ck-cart-page .ck-drawer-qty-btn:hover {
  background: rgba(242, 101, 49, 0.12);
  color: var(--coastkey-orange, #f26531);
}
.ck-cart-page .ck-drawer-qty-num {
  min-width: 28px;
  text-align: center;
  font-size: 0.95rem;
  font-weight: 600;
}
.ck-cart-page .ck-drawer-qty.is-loading {
  opacity: 0.4;
  pointer-events: none;
}

/* Oppsummering */
.ck-cart-summary {
  background: #fff;
  border: 1px solid rgba(33, 38, 60, 0.12);
  border-radius: 0.75rem;
  padding: 1.5rem;
  position: sticky;
  top: 110px;
}
.ck-cart-page h2.ck-cart-summary__title {
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  color: var(--coastkey-blue, #21263c);
  font-size: 1.25rem !important;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 1.25rem;
}
.ck-cart-summary__row {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.45rem 0;
  font-size: 0.98rem;
}
.ck-cart-summary__row--muted {
  color: rgba(33, 38, 60, 0.6);
  font-size: 0.9rem;
}
.ck-cart-summary__row--coupon {
  color: var(--coastkey-orange, #f26531);
}
.ck-cart-summary__remove-coupon {
  font-size: 0.8rem;
  color: rgba(33, 38, 60, 0.55) !important;
}
.ck-cart-summary__row--total {
  border-top: 1px solid rgba(33, 38, 60, 0.12);
  margin-top: 0.5rem;
  padding-top: 0.9rem;
  font-weight: 700;
  font-size: 1.15rem;
}
.ck-cart-summary__row .amount {
  color: var(--coastkey-blue, #21263c);
}
.ck-cart-summary__vat-note {
  margin: 0.1rem 0 1rem;
  font-size: 0.8rem;
  color: rgba(33, 38, 60, 0.55);
  text-align: right;
}

/* Rabattkode */
.ck-cart-coupon {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.ck-cart-coupon input[type="text"] {
  flex: 1;
  min-width: 0;
  background: #fff;
  border: 1px solid rgba(33, 38, 60, 0.25);
  border-radius: 0.5rem;
  padding: 0.6rem 0.9rem;
  font-family: inherit;
  font-size: 15px;
  color: var(--coastkey-blue, #21263c);
}
.ck-cart-coupon input[type="text"]:focus {
  border-color: var(--coastkey-orange, #f26531);
  box-shadow: 0 0 0 2px rgba(242, 101, 49, 0.2);
  outline: none;
}
.ck-cart-coupon .ck-btn {
  padding: 0.6rem 1.2rem;
  font-size: 15px;
}
.ck-cart-summary__checkout {
  width: 100%;
}
.ck-cart-summary__continue {
  display: block;
  text-align: center;
  margin-top: 0.9rem;
  font-size: 0.92rem;
  color: rgba(33, 38, 60, 0.7) !important;
  text-decoration: underline !important;
}
.ck-cart-summary__continue:hover {
  color: var(--coastkey-orange, #f26531) !important;
}

/* Handlekurv mobil */
@media (max-width: 900px) {
  .ck-cart-grid {
    grid-template-columns: 1fr;
  }
  .ck-cart-summary {
    position: static;
  }
}
@media (max-width: 600px) {
  .ck-cart-page {
    padding: 2rem 1rem 3.5rem;
  }
  .ck-cart-items {
    padding: 0 1rem;
  }
  .ck-cart-row {
    grid-template-columns: 72px minmax(0, 1fr) auto;
    gap: 0.9rem;
    padding: 1.1rem 0;
  }
  .ck-cart-row__image img {
    width: 72px !important;
    height: 72px !important;
  }
  .ck-cart-row__name {
    font-size: 0.95rem;
  }
}

/* =========================================================
   KASSEN (/kasse/ — klassisk Woo checkout)
========================================================= */
.ck-checkout-page {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3rem 1.25rem 5rem;
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  color: var(--coastkey-blue, #21263c);
}
.ck-checkout-page h1 {
  font-family: inherit;
  color: var(--coastkey-blue, #21263c);
  font-size: clamp(1.8rem, 4vw, 2.6rem);
  font-weight: 600;
  margin: 0 0 1.5rem;
}

/* To kolonner: skjema venstre, bestilling høyre.
   Rad 1 er reservert feilboksen Woo prepender ved valideringsfeil
   (kollapser til 0 når den ikke finnes). */
.ck-checkout-page form.checkout.woocommerce-checkout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 420px;
  gap: 0 2rem;
  align-items: start;
}
.ck-checkout-page form.checkout .woocommerce-NoticeGroup-checkout {
  grid-column: 1 / -1;
  grid-row: 1;
  min-width: 0;
}
.ck-checkout-page form.checkout #customer_details {
  grid-column: 1;
  grid-row: 2 / span 2;
  width: 100%;
}
/* «Ordren din»-overskriften fjernes så begge kolonnene starter på samme høyde */
.ck-checkout-page form.checkout #order_review_heading {
  display: none;
}
.ck-checkout-page form.checkout #order_review {
  grid-column: 2;
  grid-row: 2 / span 2;
  align-self: start;
  width: 100%;
}
/* Tomme varsel-wrappere og skjult kupongskjema skal aldri lage hvite striper */
.ck-checkout-page .woocommerce-notices-wrapper:empty {
  display: none;
}

/* Feilboksen ved valideringsfeil: hel bredde, kompakt liste */
.ck-checkout-page .woocommerce-NoticeGroup .woocommerce-error {
  font-size: 0.92rem;
  margin-bottom: 1.5rem;
  padding: 1rem 1.25rem;
}
.ck-checkout-page .woocommerce-error li {
  list-style: none;
  margin: 0.25rem 0;
  padding: 0;
}
.ck-checkout-page .woocommerce-error li strong {
  font-weight: 600;
}

/* Block-varsler (wc-block-components-notice-banner) styles globalt i
   cart-drawer.css så de er like overalt. Her bare det som er spesifikt
   for klassisk Woo-error-liste på kasse. */
.ck-checkout-page .woocommerce-error::before,
.ck-checkout-page .woocommerce-info::before,
.ck-checkout-page .woocommerce-message::before {
  content: none !important;
  display: none !important;
}

/* Avada legger 'Please enter correct details...' som ::after på ugyldige
   felter — Woo sin norske inline-melding holder. */
.ck-checkout-page .woocommerce-invalid::after {
  content: none !important;
}

/* Woo sin inline-feilmelding under feltet: liten og rolig */
.ck-checkout-page p.checkout-inline-error-message {
  font-size: 0.8rem !important;
  line-height: 1.35;
  color: #b3362a;
  margin: 0.3rem 0 0;
  padding: 0;
}

/* Avada/Woo col2-set: full bredde, ingen floats */
.ck-checkout-page #customer_details .col-1,
.ck-checkout-page #customer_details .col-2 {
  float: none;
  width: 100%;
  max-width: none;
  margin: 0;
}
.ck-checkout-page #customer_details .col-2 {
  margin-top: 1.5rem;
}

/* Kort-paneler */
.ck-checkout-page .woocommerce-billing-fields,
.ck-checkout-page .woocommerce-shipping-fields,
.ck-checkout-page .woocommerce-additional-fields {
  background: #fff;
  border: 1px solid rgba(33, 38, 60, 0.12);
  border-radius: 0.75rem;
  padding: 1.75rem;
  margin-bottom: 1.5rem;
}

/* Overskrifter (tema setter ellers ~59px på h3) */
.ck-checkout-page form.checkout h3,
.ck-checkout-page #order_review_heading {
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  color: var(--coastkey-blue, #21263c);
  font-size: 1.25rem !important;
  line-height: 1.3 !important;
  font-weight: 600;
  margin: 0 0 1.1rem;
}

/* Skjemafelter */
.ck-checkout-page .form-row {
  margin: 0 0 1rem;
  padding: 0;
}
.ck-checkout-page .form-row label {
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  color: var(--coastkey-blue, #21263c);
  font-weight: 500;
  font-size: 0.92rem;
  margin-bottom: 4px;
  display: block;
}
.ck-checkout-page .form-row .required {
  color: var(--coastkey-orange, #f26531);
  text-decoration: none;
}
.ck-checkout-page .form-row input.input-text,
.ck-checkout-page .form-row textarea,
.ck-checkout-page .form-row select {
  background: var(--coastkey-white, #f7f5ee);
  border: 1px solid rgba(33, 38, 60, 0.25);
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  font-size: 16px; /* hindrer auto-zoom på iOS */
  color: var(--coastkey-blue, #21263c);
  box-shadow: none;
  width: 100%;
}
.ck-checkout-page .form-row input.input-text:focus,
.ck-checkout-page .form-row textarea:focus,
.ck-checkout-page .form-row select:focus {
  border-color: var(--coastkey-orange, #f26531);
  box-shadow: 0 0 0 2px rgba(242, 101, 49, 0.2);
  outline: none;
}
.ck-checkout-page .form-row input::placeholder,
.ck-checkout-page .form-row textarea::placeholder {
  color: rgba(33, 38, 60, 0.45);
}
/* Fornavn/etternavn side om side på desktop */
.ck-checkout-page .form-row.form-row-first,
.ck-checkout-page .form-row.form-row-last {
  width: calc(50% - 0.5rem);
  float: left;
}
.ck-checkout-page .form-row.form-row-first {
  margin-right: 1rem;
}
.ck-checkout-page .form-row.form-row-wide,
.ck-checkout-page .form-row.notes {
  clear: both;
  width: 100%;
}

/* Select2/selectWoo (land/fylke) */
.ck-checkout-page .select2-container--default .select2-selection--single {
  background: var(--coastkey-white, #f7f5ee);
  border: 1px solid rgba(33, 38, 60, 0.25);
  border-radius: 0.5rem;
  height: auto;
  padding: 0.75rem 1rem;
}
.ck-checkout-page .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--coastkey-blue, #21263c);
  line-height: 1.4;
  padding: 0;
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  font-size: 16px;
}
.ck-checkout-page .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 100%;
  top: 0;
  right: 10px;
}
.select2-dropdown {
  border: 1px solid rgba(33, 38, 60, 0.25);
  border-radius: 0.5rem;
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background: var(--coastkey-orange, #f26531);
  color: var(--coastkey-white, #f7f5ee);
}

/* Ordreoversikten (høyre kolonne) */
.ck-checkout-page table.woocommerce-checkout-review-order-table {
  background: #fff;
  border: 1px solid rgba(33, 38, 60, 0.12);
  border-radius: 0.75rem 0.75rem 0 0;
  border-bottom: none;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  width: 100%;
  margin: 0;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table th,
.ck-checkout-page table.woocommerce-checkout-review-order-table td {
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  color: var(--coastkey-blue, #21263c);
  border: none;
  border-bottom: 1px solid rgba(33, 38, 60, 0.1);
  padding: 0.85rem 1.25rem;
  background: transparent;
  font-size: 0.95rem;
  text-align: left;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table td.product-total,
.ck-checkout-page table.woocommerce-checkout-review-order-table th + td {
  text-align: right;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table .order-total th,
.ck-checkout-page table.woocommerce-checkout-review-order-table .order-total td {
  font-weight: 700;
  font-size: 1.1rem;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table .amount {
  color: var(--coastkey-blue, #21263c);
}

/* Avadas checkout-mal setter display:block + blå bakgrunn på totals-radene.
   Radene legges om til flex: etikett venstre, beløp høyre.
   Én delelinje før totals og én før Totalt — ikke linje per rad. */
.ck-checkout-page table.woocommerce-checkout-review-order-table tfoot tr {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  background: transparent !important;
  padding: 0.55rem 1.25rem;
  border: none;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table tfoot tr.cart-subtotal {
  padding-top: 1rem;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table tfoot tr.order-total {
  border-top: 1px solid rgba(33, 38, 60, 0.12);
  margin-top: 0.5rem;
  padding-top: 1rem;
  padding-bottom: 1.1rem;
}
/* Avadas tomme wrapper-rad lager bare en ekstra strek — skjules */
.ck-checkout-page tr.awb-checkout-totals-wrapper {
  display: none !important;
}
/* Avgiftslinjen under Totalt: liten og dempet */
.ck-checkout-page table.woocommerce-checkout-review-order-table .order-total .includes_tax {
  display: block;
  font-size: 0.78rem;
  font-weight: 400;
  color: rgba(33, 38, 60, 0.6);
  margin-top: 0.15rem;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table tfoot th,
.ck-checkout-page table.woocommerce-checkout-review-order-table tfoot td {
  display: block !important;
  width: auto !important;
  padding: 0;
  margin: 0;
  border: none;
  background: transparent !important;
  text-align: right;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table tfoot th {
  text-align: left;
  white-space: nowrap;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table tr.order-total,
.ck-checkout-page table.woocommerce-checkout-review-order-table tr.order-total th,
.ck-checkout-page table.woocommerce-checkout-review-order-table tr.order-total td {
  background: transparent !important;
}
.ck-checkout-page tr.awb-checkout-totals-wrapper th,
.ck-checkout-page tr.awb-checkout-totals-wrapper td {
  padding: 0 !important;
  border: none !important;
}

/* Leveransevalg: etikett øverst, metodene som valgbare rader under */
.ck-checkout-page table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals {
  flex-direction: column;
  align-items: stretch;
  gap: 0.6rem;
}
.ck-checkout-page table.woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals th {
  text-align: left !important;
}
.ck-checkout-page ul#shipping_method {
  display: flex !important;
  flex-direction: column;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ck-checkout-page ul#shipping_method li {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  background: var(--coastkey-white, #f7f5ee);
  border: 1px solid rgba(33, 38, 60, 0.15);
  border-radius: 0.5rem;
  padding: 0.7rem 0.9rem !important;
  margin: 0;
  list-style: none;
}
.ck-checkout-page ul#shipping_method li:has(input:checked) {
  border-color: var(--coastkey-orange, #f26531);
  box-shadow: 0 0 0 1px var(--coastkey-orange, #f26531);
}
.ck-checkout-page ul#shipping_method li label {
  /* Avada stiler labelen som en egen boks — nulles */
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 0;
  width: auto !important;
  font-size: 0.92rem;
  font-weight: 500;
  display: inline !important;
}
.ck-checkout-page ul#shipping_method li input[type="radio"] {
  margin: 0;
  flex-shrink: 0;
}

/* Betalingsboksen henger sammen med tabellen */
.ck-checkout-page #payment.woocommerce-checkout-payment {
  background: #fff;
  border: 1px solid rgba(33, 38, 60, 0.12);
  border-top: none;
  border-radius: 0 0 0.75rem 0.75rem;
}
.ck-checkout-page #payment ul.payment_methods {
  border-top: 1px solid rgba(33, 38, 60, 0.1);
  border-bottom: none;
  padding: 1.1rem 1.25rem;
  margin: 0;
  list-style: none;
}
/* «Ingen betalingsmåter»-varselet bruker block-notice-markup og styles
   av den globale .wc-block-components-notice-banner-regelen i cart-drawer.css.
   Her holder vi bare litt luft rundt det inni betalingsboksen. */
.ck-checkout-page #payment .wc-block-components-notice-banner {
  margin: 0 !important;
}
.ck-checkout-page #payment ul.payment_methods li {
  list-style: none;
  margin: 0 0 0.5rem;
}
.ck-checkout-page #payment ul.payment_methods li label {
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  color: var(--coastkey-blue, #21263c);
  font-weight: 500;
  display: inline;
}
.ck-checkout-page #payment div.payment_box {
  background: var(--coastkey-white, #f7f5ee);
  color: var(--coastkey-blue, #21263c);
  border-radius: 0.5rem;
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  font-size: 0.9rem;
}
.ck-checkout-page #payment div.payment_box::before {
  border-bottom-color: var(--coastkey-white, #f7f5ee);
}

/* Radio/checkbox i merkevare-oransje */
.ck-checkout-page input[type="radio"],
.ck-checkout-page input[type="checkbox"] {
  accent-color: var(--coastkey-orange, #f26531);
}

/* Vilkår + personvern */
.ck-checkout-page .woocommerce-terms-and-conditions-wrapper,
.ck-checkout-page .woocommerce-privacy-policy-text {
  font-family: "DM Sans", Arial, Helvetica, sans-serif;
  color: rgba(33, 38, 60, 0.75);
  font-size: 0.82rem;
  line-height: 1.45;
}
.ck-checkout-page .woocommerce-privacy-policy-text p {
  margin: 0 0 0.75rem;
  font-size: inherit;
}
.ck-checkout-page .woocommerce-terms-and-conditions-wrapper a,
.ck-checkout-page .woocommerce-privacy-policy-text a {
  color: var(--coastkey-orange, #f26531);
}

/* Send bestilling */
.ck-checkout-page #payment .form-row.place-order {
  padding: 1.25rem;
  margin: 0;
}
.ck-checkout-page #place_order {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  /* !important: Avadas .fusion-button setter ellers transparent bakgrunn */
  background: var(--coastkey-orange, #f26531) !important;
  color: var(--coastkey-white, #f7f5ee) !important;
  border: none !important;
  border-radius: 0.5rem !important;
  padding: 1rem !important;
  height: auto !important;
  min-height: 0 !important;
  line-height: 1.3 !important;
  text-indent: 0 !important;
  font-family: "DM Sans", Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  cursor: pointer;
  transition: background 0.25s ease;
}
.ck-checkout-page #place_order::before,
.ck-checkout-page #place_order::after {
  content: none !important;
}
.ck-checkout-page #place_order:hover {
  background: #e05a2b !important;
}

/* Rabattkode-toggle øverst i kassen */
.ck-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info {
  margin-bottom: 1rem;
}
.ck-checkout-page form.checkout_coupon {
  background: #fff;
  border: 1px solid rgba(33, 38, 60, 0.12);
  border-radius: 0.75rem;
  padding: 1.25rem;
  margin-bottom: 1.5rem;
}

/* Kassen mobil */
@media (max-width: 980px) {
  .ck-checkout-page form.checkout.woocommerce-checkout {
    display: block;
  }
  .ck-checkout-page form.checkout #order_review {
    position: static;
  }
  .ck-checkout-page #order_review_heading {
    margin-top: 1.5rem;
  }
}
@media (max-width: 600px) {
  .ck-checkout-page {
    padding: 2rem 1rem 3.5rem;
  }
  .ck-checkout-page .woocommerce-billing-fields,
  .ck-checkout-page .woocommerce-shipping-fields,
  .ck-checkout-page .woocommerce-additional-fields {
    padding: 1.25rem;
  }
  .ck-checkout-page .form-row.form-row-first,
  .ck-checkout-page .form-row.form-row-last {
    width: 100%;
    float: none;
    margin-right: 0;
  }
  .ck-checkout-page table.woocommerce-checkout-review-order-table th,
  .ck-checkout-page table.woocommerce-checkout-review-order-table td {
    padding: 0.7rem 0.85rem;
    word-break: break-word;
  }
  .ck-checkout-page table.woocommerce-checkout-review-order-table tfoot tr {
    padding: 0.45rem 0.85rem;
  }
  .ck-checkout-page table.woocommerce-checkout-review-order-table tfoot tr.order-total {
    padding-top: 0.85rem;
    padding-bottom: 0.95rem;
  }
  .ck-checkout-page #payment ul.payment_methods {
    padding: 0.85rem;
  }
}

/* =========================================================
   MOBIL (<=768px): kortene nærmere skjermkanten på BEGGE sider.

   Rotårsak (verifisert): dobbel innrykk — min wrapper-padding
   (1rem) OPPÅ Avadas arvede container-padding. Handlekurv:
   #main 25px. Kasse: #main 25px + .fusion-fullwidth 30px +
   kolonne-/rad-lag. Avada har INGEN mobilspesifikke horisontale
   verdier (alt arves fra desktop).

   IKKE viewport-breakout: #wrapper har overflow:hidden !important
   og body overflow-x:hidden, så en 100vw-breakout ville blitt
   klippet og aldri nådd skjermkanten (asymmetrisk feiljustering).
   I stedet: nullstill wrapperens egen padding og sett én
   kontrollert 12px gutter via #main, scoped til de to side-ID-ene.
   På kasse nøytraliseres Avadas ekstra full-bredde-/kolonne-lag
   KUN rundt vårt innhold (:has), så de 40 andre
   .fusion-column-wrapper-elementene IKKE røres. body/#wrapper
   overflow-x:hidden er sikkerhetsnett. Desktop er uendret.
   ========================================================= */
@media (max-width: 768px) {
  /* Fjern wrapperens egen horisontale padding (longhand vinner
     over tidligere <=600px shorthand-padding) */
  .ck-cart-page,
  .ck-checkout-page {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Kontrollert 12px gutter via Avadas #main — kun disse to sidene */
  body.page-id-8 #main,
  body.page-id-9 #main {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* KASSE: kollaps Avadas full-bredde-/rad-/kolonne-lag rundt
     vårt innhold, så #main sin 12px blir eneste gutter. :has()
     scoper til KUN containerne som omslutter .ck-checkout-page. */
  body.page-id-9 .fusion-fullwidth.fullwidth-box:has(.ck-checkout-page),
  body.page-id-9 .fusion-builder-row:has(.ck-checkout-page),
  body.page-id-9 .fusion-layout-column:has(.ck-checkout-page),
  body.page-id-9 .fusion-column-wrapper:has(.ck-checkout-page),
  body.page-id-9 .fusion-text:has(.ck-checkout-page) {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: none !important;
  }

  /* Avada gir WooCommerce-kolonnene (.col-1 = fakturering, .col-2 =
     levering) og .woocommerce-content-box (omslutter «Ordren din») 30px
     sidepadding som ellers skyver kortene inn. Nulles på mobil, så
     kortkanten følger #main sin 12px-gutter. */
  .ck-checkout-page #customer_details .col-1,
  .ck-checkout-page #customer_details .col-2,
  .ck-checkout-page #order_review,
  .ck-checkout-page .woocommerce-content-box {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
