@charset "UTF-8";

/* A compact quote summary followed by one clear ordering action. */
.sticky-inner.sticky-order-band {
  display: flex;
  align-items: center;
  gap: 26px;
  min-height: 84px;
  padding-block: 12px;
}
.sticky-order-band > * { min-width: 0; }
.sticky-order-band .sticky-price-left {
  flex: 0 0 auto;
  padding-right: 26px;
  border-right: 1px solid #dfe5e8;
  color: #172027;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.sticky-price-left > small {
  display: block;
  margin-bottom: 2px;
  color: #63727b;
  font-size: .67rem;
  line-height: 1.5;
}
.sticky-price-left > strong {
  display: inline;
  color: #172027;
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: -.045em;
  line-height: 1.2;
}
.sticky-price-left > span { margin-left: 4px; color: #65727b; font-size: .74rem; }
#stickyTon[data-state="error"] {
  display: inline-block;
  max-width: 100%;
  white-space: normal;
  font-size: .8rem;
  line-height: 1.4;
  letter-spacing: 0;
}
#stickyTon[data-state="error"] + span { display: none; }
.sticky-order-band .sticky-place {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 1px;
  overflow: visible;
  padding: 0;
  color: #35454f;
  font-size: .85rem;
  line-height: 1.45;
  white-space: normal;
}
.sticky-order-band .sticky-place small {
  display: block;
  overflow: hidden;
  color: #6c7b84;
  font-size: .67rem;
  font-weight: 450;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sticky-order-band .sticky-place strong {
  display: block;
  overflow: hidden;
  color: #20323d;
  font-size: .91rem;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sticky-order-band .sticky-actions { display: flex; align-items: center; gap: 9px; flex-shrink: 0; }
.sticky-order, .sticky-call {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 43px;
  padding: 10px 19px;
  border: 1px solid transparent;
  border-radius: 7px;
  font-size: .8rem;
  font-weight: 750;
  line-height: 1.3;
  white-space: nowrap;
  transition: background .18s, border-color .18s, box-shadow .18s;
}
.sticky-order { background: #13784d; color: #fff; box-shadow: 0 3px 10px rgb(19 120 77 / 12%); }
.sticky-order:hover { background: #0b633d; color: #fff; box-shadow: 0 4px 12px rgb(19 120 77 / 20%); }
.sticky-call { position: relative; border-color: #e4a64a; background: linear-gradient(135deg,#f5bd64,#edaa42); color: #37240e; box-shadow: 0 0 0 0 rgb(237 170 66 / 35%); animation: call-beacon 3.6s ease-out infinite; }
.sticky-call:hover { border-color: #c38222; background: #f2b75e; color: #281b0c; animation-play-state: paused; }
.sticky-call .call-symbol { animation: handset-ring 3.6s ease-in-out infinite; transform-origin: 50% 50%; }
@keyframes call-beacon { 0%,45%,100%{box-shadow:0 0 0 0 rgb(237 170 66 / 0%)} 7%{box-shadow:0 0 0 3px rgb(237 170 66 / 32%)} 35%{box-shadow:0 0 0 10px rgb(237 170 66 / 0%)} }
@keyframes handset-ring { 0%,28%,100%{transform:rotate(0)} 4%,12%,20%{transform:rotate(-16deg)} 8%,16%,24%{transform:rotate(16deg)} }
.sticky-order svg, .sticky-call svg { flex: 0 0 auto; width: 17px; height: 17px; }
.quote-heading > div { min-width: 0; }
.quote-heading .quote-context-title { display:flex; align-items:center; flex-wrap:wrap; gap:12px 20px; margin:0; font-family:"Segoe UI",Arial,sans-serif; }
.quote-context-item { display:flex; align-items:baseline; gap:9px; min-width:0; }
.quote-context-label { font-size:.78rem; font-weight:500; letter-spacing:0; color:#6a7883; }
.quote-context-item strong { font-size:1.22rem; font-weight:750; line-height:1.35; letter-spacing:-.025em; color:#203747; }
.quote-context-join { color:#c38b37; font:500 1.3rem/1 "Segoe UI",sans-serif; }
.quote-heading .quote-date { margin:11px 0 0; color:#677784; font-size:.76rem; line-height:1.5; }
.quote-product-picker { padding:22px 30px 0; }
.quote-picker-label { display:block; margin-bottom:9px; color:#687a87; font-size:.73rem; font-weight:650; }
.quote-product-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.quote-product-choice { display:flex; align-items:center; justify-content:center; min-height:44px; padding:10px 12px; border:1px solid #d7e0e6; border-radius:7px; background:#f6f8f9; color:#3a5364; font-size:.79rem; font-weight:650; line-height:1.4; text-align:center; transition:background .15s,border-color .15s; }
.quote-product-choice:hover { border-color:#a8bdc9; background:#edf3f6; }
.quote-product-choice[aria-pressed="true"] { border-color:#24495e; background:#24495e; color:white; box-shadow:inset 0 -3px 0 #edaa42; }
.quote-product-choice:focus-visible { outline:3px solid #c9811c; outline-offset:3px; }
@media(max-width:650px) {
  .quote-heading .quote-context-title { display:grid; gap:10px; }
  .quote-context-join { display:none; }
  .quote-context-item { align-items:start; display:grid; grid-template-columns:55px minmax(0,1fr); gap:10px; }
  .quote-context-label { font-size:.73rem; padding-top:2px; }
  .quote-context-item strong { font-size:1.05rem; }
  .quote-product-picker { padding:20px 22px 0; }
  .quote-product-choice { padding:9px 8px; font-size:.73rem; }
}
@media(prefers-reduced-motion:reduce) { .sticky-call,.sticky-call .call-symbol { animation:none; } }

/* Shared sticky delivery controls and compact offer toolbar. */
html { scroll-padding-top:var(--header-offset,145px); }
.header-delivery { border-top:1px solid rgb(255 255 255 / 9%); background:#182229; }
.header-delivery-inner { display:flex; align-items:center; gap:20px; min-height:49px; padding-block:6px; }
.header-delivery-caption { display:inline-flex; align-items:center; gap:9px; color:#d0dbe0; font-size:.75rem; font-weight:600; white-space:nowrap; }
.header-delivery-caption > span { color:#edaa42; font-size:1.15rem; }
.header-location-fields { display:flex; gap:16px; flex:1; }
.header-location-fields > label { display:flex; align-items:center; gap:9px; min-width:0; color:#bac9d2; font-size:.69rem; }
.header-location-fields select { min-width:155px; width:190px; height:34px; padding:0 10px; border:1px solid #4b5d68; border-radius:6px; background:#f6f8fa; color:#253e4c; font-size:.78rem; }
.header-offer-link { padding:6px 0 6px 12px; color:#f4bd65; font-size:.74rem; font-weight:650; white-space:nowrap; }
.header-offer-link:hover { color:white; }
.header-delivery-inner { flex-wrap:wrap; }
.header-location-fields { min-width:0; }
.header-locate { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:34px; flex-shrink:0; padding:7px 12px; border:1px solid #b18441; border-radius:6px; background:linear-gradient(120deg,#463825,#2b3030); color:#ffcf85; font-size:.73rem; font-weight:650; line-height:1.35; white-space:nowrap; animation:header-location-beacon 4.8s ease-out infinite; }
.header-locate:hover { color:#ffe3b6; background:#4b3b24; border-color:#edaa42; }
.header-locate:focus-visible { outline:3px solid #edaa42; outline-offset:3px; }
.header-location-icon { width:18px; height:18px; flex-shrink:0; transform-origin:50% 100%; animation:header-pin-float 4.8s ease-in-out infinite; }
.header-locate-short { display:none; }
.header-locate:disabled { cursor:wait; opacity:.76; }
.header-locate[aria-busy="true"] .header-location-icon { animation:header-pin-float 1.4s ease-in-out infinite; }
.header-location-status { flex:0 0 100%; margin:0; padding:0 0 3px; color:#e8d4b4; font-size:.7rem; line-height:1.5; }
@keyframes header-location-beacon { 0%,38%,100%{box-shadow:0 0 0 0 rgb(237 170 66 / 0%)} 8%{box-shadow:0 0 0 2px rgb(237 170 66 / 22%)} 30%{box-shadow:0 0 0 6px rgb(237 170 66 / 0%)} }
@keyframes header-pin-float { 0%,8%,34%,100%{transform:translateY(0)} 19%{transform:translateY(-3px)} }
@media(max-width:1100px) {
  .header-delivery-inner { gap:12px; }
  .header-delivery-caption { display:none; }
  .header-location-fields { gap:12px; }
  .header-location-fields > label { flex:1; }
  .header-location-fields select { min-width:0; width:100%; }
}
@media(max-width:650px) {
  .header-delivery-inner { column-gap:9px; row-gap:5px; }
  .header-locate { min-height:32px; gap:5px; padding:6px 8px; font-size:.69rem; }
  .header-location-icon { width:16px; height:16px; }
  .header-locate-full { display:none; }
  .header-locate-short { display:inline; }
  .header-offer-link { display:none; }
}
@media(prefers-reduced-motion:reduce) {
  .header-locate,.header-location-icon,.header-locate[aria-busy="true"] .header-location-icon { animation:none; }
}
.quote-panel .quote-layout { display:flex; flex-direction:column; }
.quote-panel .compact-quote-controls { display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; padding:12px 30px; border-bottom:1px solid #dfe6eb; background:#f7f9fa; }
.order-quantity { display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; margin-bottom:24px; padding-bottom:20px; border-bottom:1px solid #dfe6eb; }
.order-quantity > label { margin:0; font-size:.84rem; font-weight:650; }
.order-quantity > select { width:180px; max-width:100%; height:40px; margin:0; font-size:.84rem; }
.compact-quote-controls .quote-destination { display:flex; align-items:center; margin:0; padding:0; border:0; background:transparent; }
.compact-quote-controls .quote-destination > span,.compact-quote-controls .quote-destination > strong { display:none; }
.compact-quote-controls .quote-destination > small { margin:0; font-size:.73rem; }
.compact-quote-controls > a { margin-left:auto; font-size:.73rem; }
.quote-panel .quote-layout > div:last-child { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); grid-template-areas:"choices choices" "status status" "lines total" "lines actions" "note note"; gap:0; }
.quote-product-picker { grid-area:choices; }
.quote-product-tabs { grid-template-columns:repeat(4,minmax(0,1fr)); }
.quote-panel #offerStatus { grid-area:status; }
.quote-panel .quote-lines { grid-area:lines; padding-top:18px; }
.quote-panel .quote-total { grid-area:total; align-self:start; display:flex; flex-direction:column; align-items:start; margin-top:26px; margin-left:8px; }
.quote-panel .quote-total strong { font-size:clamp(1.7rem,2.7vw,2.2rem); }
.quote-panel .quote-actions { grid-area:actions; align-self:end; padding-left:8px; }
.quote-panel .quote-footnote { grid-area:note; padding-top:17px; }
@media(max-width:850px) {
  .header-delivery-inner { gap:12px; }
  .header-delivery-caption { display:none; }
  .header-location-fields { gap:10px; }
  .header-location-fields > label { flex:1; }
  .header-location-fields select { min-width:0; width:100%; }
  .quote-panel .compact-quote-controls { padding-inline:22px; }
  .compact-quote-controls .quote-destination { flex:1; }
  .compact-quote-controls > a { display:none; }
  .quote-product-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:650px) {
  .header-delivery-inner { gap:9px; min-height:46px; }
  .header-location-fields > label > span { display:none; }
  .header-location-fields select { height:32px; padding-inline:7px; font-size:.75rem; }
  .header-offer-link { padding-left:0; font-size:.67rem; }
  .quote-panel .compact-quote-controls { gap:7px 10px; padding:11px 22px; }
  .compact-quote-controls .quote-destination { flex:0 0 100%; padding:0; border:0; }
  .quote-panel .quote-layout > div:last-child { grid-template-columns:minmax(0,1fr); grid-template-areas:"choices" "status" "lines" "total" "actions" "note"; }
  .quote-panel .quote-total { margin:17px 22px; }
  .quote-panel .quote-actions { padding:0 22px 15px; }
}
.sticky-order[aria-disabled="true"] { cursor: default; background: #dce5df; color: #5c7165; box-shadow: none; }
.sticky-order-band a:focus-visible, #siparis :is(input, button, a):focus-visible {
  outline: 3px solid #c9811c;
  outline-offset: 4px;
}

/* The order form carries the quote to WhatsApp after explicit submission. */
#siparis { scroll-margin-top: 12px; }
#siparis .order-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr); align-items: start; gap: 24px; }
#siparis .order-form, #siparis .order-review { min-width: 0; border: 1px solid #dce3e7; border-radius: 12px; background: #fff; box-shadow: 0 12px 35px rgb(25 45 58 / 5%); }
#siparis .order-form { padding: 30px; }
#siparis .order-heading { margin-bottom: 22px; }
#siparis .order-heading h2, #siparis .order-heading h3 { margin-bottom: 9px; color: #172a35; font-family: Georgia, "Times New Roman", serif; font-size: 1.8rem; }
#siparis .order-heading p { margin-bottom: 0; color: #64717a; font-size: .87rem; line-height: 1.7; }
#siparis .order-minimum {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 25px;
  padding: 13px 15px;
  border: 1px solid #edcf98;
  border-left: 3px solid #c9892a;
  border-radius: 7px;
  background: #fff8e9;
  color: #775019;
  font-size: .82rem;
  line-height: 1.6;
}
#siparis .order-minimum strong { color: #68400b; font-weight: 800; }
#siparis .order-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
#siparis .order-field { min-width: 0; }
#siparis .order-field:has(input[type="tel"]), #siparis .order-field-full { grid-column: 1 / -1; }
#siparis .order-field label { display: block; margin-bottom: 7px; color: #354852; font-size: .8rem; font-weight: 700; }
#siparis .order-field input {
  display: block;
  width: 100%;
  min-height: 48px;
  padding: 11px 13px;
  border: 1px solid #cfd9df;
  border-radius: 7px;
  background: #fbfcfc;
  color: #172c39;
  font-size: .94rem;
  line-height: 1.5;
  transition: border-color .18s, box-shadow .18s;
}
#siparis .order-field input::placeholder { color: #909ca5; }
#siparis .order-field input:hover { border-color: #a7b7c2; }
#siparis .order-field input:focus { border-color: #61869b; background: white; box-shadow: 0 0 0 3px rgb(81 126 151 / 9%); }
#siparis .order-field input:disabled { cursor: default; background: #edf1f3; color: #7a8991; }
#siparis .order-field input[aria-invalid="true"] { border-color: #b64439; }
#siparis .order-field small { display: block; margin-top: 6px; color: #7b8790; font-size: .71rem; }
#siparis .order-send {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 50px;
  margin-top: 24px;
  padding: 13px 18px;
  border: 1px solid #116c44;
  border-radius: 7px;
  background: #13784d;
  color: white;
  font-size: .9rem;
  font-weight: 750;
  line-height: 1.5;
  text-align: center;
  transition: background .18s, box-shadow .18s;
}
#siparis .order-send:hover { background: #0b633d; box-shadow: 0 4px 14px rgb(19 120 77 / 17%); }
#siparis .order-send:disabled { cursor: default; border-color: #d4ddd7; background: #dce5df; color: #64766c; opacity: 1; box-shadow: none; }
#siparis .order-send svg { flex-shrink: 0; width: 19px; height: 19px; }
#siparis .order-call { display: block; margin-top: 15px; text-align: center; color: #355e75; font-size: .83rem; font-weight: 650; }
#siparis .order-help { margin: 12px 0 0; color: #77848c; font-size: .74rem; line-height: 1.7; }
#siparis .order-help a { color: #355e75; text-decoration: underline; text-underline-offset: 3px; }
#orderStatus { margin: 14px 0 0; padding: 11px 13px; border: 1px solid #e4cba6; border-radius: 6px; background: #fff8ed; color: #7c4e18; font-size: .8rem; line-height: 1.65; }
#orderStatus:empty { display: none; }
#siparis .order-review { overflow: hidden; padding: 26px; background: linear-gradient(135deg, #fff, #f8fafb); }
#siparis .order-review > h2, #siparis .order-review > h3 { margin-bottom: 18px; color: #223a49; font-family: Georgia, "Times New Roman", serif; font-size: 1.4rem; }
#siparis .order-review > p { margin-bottom: 18px; color: #71808a; font-size: .78rem; line-height: 1.7; }
#siparis .order-summary { margin: 0; }
#siparis .order-summary dl { margin: 0; }
#siparis .order-line { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; padding-block: 11px; border-bottom: 1px solid #e2e8ec; font-size: .82rem; line-height: 1.6; }
#siparis .order-line dt { min-width: 0; margin: 0; color: #70808b; font-weight: 450; }
#siparis .order-line dd { min-width: 0; margin: 0; color: #273e4d; font-weight: 650; text-align: right; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
#siparis .order-total { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 7px 16px; margin-top: 19px; padding: 17px; border: 1px solid #d6e0e6; border-radius: 8px; background: #edf3f6; color: #263f50; }
#siparis .order-total dt, #siparis .order-total > span { margin: 0; font-size: .78rem; font-weight: 650; }
#siparis .order-total dd { margin: 0; text-align: right; }
#siparis .order-total strong, #siparis .order-total dd { color: #172f3e; font-size: 1.35rem; font-weight: 800; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
#siparis .order-total small { display: block; width: 100%; color: #617989; font-size: .69rem; line-height: 1.6; }

@media (max-width: 900px) {
  .sticky-inner.sticky-order-band { gap: 18px; }
  .sticky-order-band .sticky-price-left { padding-right: 18px; }
  .sticky-price-left > strong { font-size: 1.32rem; }
  .sticky-order, .sticky-call { padding-inline: 14px; }
}
@media (max-width: 650px) {
  .sticky-inner.sticky-order-band {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    min-height: 126px;
    gap: 10px 16px;
    padding-block: 10px;
  }
  .sticky-order-band .sticky-price-left { grid-row: 1; grid-column: 1; padding: 0; border: 0; }
  .sticky-price-left > small { font-size: .6rem; }
  .sticky-price-left > strong { font-size: 1.25rem; }
  .sticky-price-left > span { margin-left: 2px; font-size: .64rem; }
  .sticky-order-band .sticky-place { grid-row: 1; grid-column: 2; padding-left: 14px; border-left: 1px solid #e0e6ea; line-height: 1.4; }
  .sticky-order-band .sticky-place strong { font-size: .76rem; }
  .sticky-order-band .sticky-place small { display: block; font-size: .59rem; }
  .sticky-order-band .sticky-actions { grid-row: 2; grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 9px; width: 100%; }
  .sticky-order, .sticky-call { min-height: 40px; width: 100%; padding: 9px 10px; font-size: .77rem; }
  #siparis .order-layout { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  #siparis .order-form { padding: 23px; }
  #siparis .order-review { padding: 23px; }
  #siparis .order-heading h2, #siparis .order-heading h3 { font-size: 1.6rem; }
}
@media (max-width: 380px) {
  .sticky-inner.sticky-order-band { column-gap: 10px; }
  .sticky-price-left > strong { font-size: 1.13rem; }
  .sticky-order-band .sticky-place { padding-left: 10px; }
  .sticky-order-band .sticky-place small { font-size: .55rem; }
  #siparis .order-form, #siparis .order-review { padding: 19px; }
  #siparis .order-fields { gap: 14px; }
}
