/* Shared control and typography scale for the EZOON storefront. */
:root {
  --ui-control-height: 48px;
  --ui-compact-height: 40px;
  --ui-radius: 8px;
  --ui-border: #ddd4e3;
  --ui-muted: #77647f;
  --ui-text: 14px;
  --ui-label: 13px;
  --ui-small: 12px;
}
body { font-size:var(--ui-text); line-height:1.7; }
button,input,select { font-family:'Cairo',sans-serif; }
button { line-height:1.5; }
input::placeholder { color:#95859e; opacity:1; }
/* Standard form controls: checkout, verification, login and recovery. */
.flow-page .field,.auth-field { font-size:var(--ui-label); font-weight:600; line-height:1.6; }
.flow-page .field input,.auth-field input,.field .select-trigger {
  box-sizing:border-box; height:var(--ui-control-height); min-height:var(--ui-control-height);
  width:100%; border:1px solid var(--ui-border); border-radius:var(--ui-radius);
  padding:0 14px; font-size:var(--ui-text); font-weight:400; line-height:1.5;
  color:var(--purple); background:#fff; box-shadow:none;
}
.flow-page .field input,.auth-field input { margin-top:8px; }
.field>.modern-select { margin-top:8px; width:100%; }
.field .select-trigger { display:flex; align-items:center; justify-content:space-between; }
.select-trigger[aria-expanded=true] { border-color:#a078b6; box-shadow:0 0 0 3px #f2eaf8; }
.select-trigger svg { width:16px; height:16px; }
.select-menu { border-color:var(--ui-border); border-radius:var(--ui-radius); padding:5px; }
.select-menu button { min-height:var(--ui-compact-height); padding:10px 12px; font-size:var(--ui-label); line-height:1.5; white-space:normal; }
.select-menu button:focus-visible { outline:2px solid #a878c0; outline-offset:-2px; }
.auth-password>button { top:4px; width:40px; height:40px; }
.field-help { margin-top:8px; font-size:var(--ui-small)!important; line-height:1.7; color:var(--ui-muted); }
/* Primary and secondary actions have the same geometry on every page. */
.flow-page .primary,.flow-page .secondary,.auth-submit,.flow-page .checkout-ezoon {
  box-sizing:border-box; display:flex!important; align-items:center; justify-content:center;
  width:100%; height:var(--ui-control-height); min-height:var(--ui-control-height);
  padding:0 20px!important; border-radius:var(--ui-radius)!important;
  font-size:var(--ui-text)!important; font-weight:600; line-height:1.5;
}
.flow-page .primary,.auth-submit { border:1px solid var(--purple); background:var(--purple); color:#fff; }
.flow-page .secondary { border:1px solid var(--ui-border); background:#fff; }
.checkout-ezoon .ezoon-pill { font-size:24px; line-height:1.15; padding:2px 8px 4px; }
.flow-page .primary:hover,.auth-submit:hover { background:#4d1f63; border-color:#4d1f63; }
.flow-page .secondary:hover { border-color:#b79bc7; background:#faf7fc; }
.flow-page .primary:disabled,.auth-submit:disabled { opacity:.5; cursor:default; }
.flow-page h2,.auth-content h1 { font-size:32px; line-height:1.35; letter-spacing:-.6px; }
.flow-page p,.auth-sub,.auth-recovery-info { font-size:var(--ui-text); line-height:1.8; }
.flow-page .modal-eyebrow,.modal-eyebrow,.summary-eyebrow { font-size:11px; line-height:1.6; }
.flow-page .demo-note { font-size:var(--ui-small)!important; line-height:1.8!important; border-radius:var(--ui-radius); }
.flow-page .error,.error { font-size:var(--ui-small); line-height:1.7; }
.flow-page .total { align-items:center; gap:18px; font-size:var(--ui-text); }
.flow-page .total>.money,.flow-page .total>span:last-child { font-size:22px; font-weight:700; }
.flow-page .money small { font-size:12px!important; font-weight:600; }
.flow-page .modal-price { font-size:32px; font-weight:800; line-height:1.4; }
.detail-color-heading,#detail-color-name { font-size:var(--ui-label); }
.detail-color { min-height:44px; padding:10px 14px; font-size:var(--ui-label); border-radius:var(--ui-radius); }
.flow-page .close,.auth-back,.auth-row,.auth-row button,.auth-guest { font-size:var(--ui-small); }
.auth-row input { width:16px; height:16px; margin:0; }
.auth-demo,.auth-demo b,.auth-demo p,.auth-help,.auth-bottom { font-size:var(--ui-small); line-height:1.8; }
.auth-demo { border-radius:var(--ui-radius); }
.auth-content { max-width:410px; }
/* Toolbar controls are deliberately compact but share one height. */
.categories button,.sort-label .select-trigger { min-height:var(--ui-compact-height); height:var(--ui-compact-height); border-radius:var(--ui-radius); font-size:var(--ui-small); padding:0 15px; line-height:1.5; }
.categories button { border-color:var(--ui-border); }
.sort-label { display:flex; align-items:center; gap:10px; font-size:var(--ui-small); color:var(--ui-muted); }
.sort-label .modern-select { margin:0; min-width:175px; }
.sort-label .select-trigger { border-color:var(--ui-border); gap:20px; }
.results-line,.results-line button { font-size:var(--ui-small); line-height:1.7; }
.results-line { gap:12px; min-height:54px; padding:15px 0; }
.collection-kicker,.eyebrow { font-size:10px; }
.section-top>p { font-size:var(--ui-small); }
/* Price is its own prominent row, followed by a full-width action. */
.product { display:flex; flex-direction:column; }
.product-visual { flex-shrink:0; height:250px; }
.product-info { display:flex; flex-direction:column; flex:1; padding:20px; min-width:0; }
.product-category { font-size:10px; letter-spacing:1px; line-height:1.7; color:#897492; }
.product h3 { font-size:20px; line-height:1.4; font-weight:700; margin:8px 0; }
.product .spec { font-size:var(--ui-small); color:var(--ui-muted); line-height:1.7; }
.product-story { font-size:var(--ui-small); line-height:1.8; min-height:44px; max-width:none; color:#85718e; margin:9px 0 16px; }
.product .swatches { margin:0 0 14px; gap:11px; min-height:24px; align-items:center; }
.product .color-swatch { width:16px; height:16px; flex-shrink:0; }
.product .stock { font-size:11px; margin:0 0 18px; line-height:1.8; }
.product-price { flex-direction:column; align-items:stretch; justify-content:flex-start; gap:16px; padding-top:17px; margin-top:auto; border-top:1px solid var(--line); }
.card-price { display:flex; flex-direction:column; gap:3px; }
.price-label { color:var(--ui-muted); font-size:var(--ui-small); line-height:1.5; }
.product-price .card-price>b { font-size:29px; font-weight:800; line-height:1.4; letter-spacing:-.3px; color:var(--purple); }
.product-price .money { display:inline-flex; align-items:baseline; gap:7px; font-variant-numeric:tabular-nums; }
.product-price .money small { font-size:13px!important; font-weight:700; color:#785085; letter-spacing:0; margin:0; }
.product-price .add { box-sizing:border-box; width:100%; height:var(--ui-control-height); min-height:var(--ui-control-height); padding:0 16px; font-size:var(--ui-text); font-weight:600; line-height:1.5; border-radius:var(--ui-radius); display:flex; align-items:center; justify-content:center; }
.product .tag { font-size:9px; line-height:1.5; }
/* Header controls use the compact scale without crowding the currency label. */
.header-actions { gap:16px; }
.header-labeled { min-height:var(--ui-compact-height); gap:6px; }
.header-labeled>span,.bag>span:not(#bag-count),.language-toggle { font-size:var(--ui-small); line-height:1.5; }
.currency .select-trigger { min-height:var(--ui-compact-height); height:var(--ui-compact-height); font-size:var(--ui-small); gap:5px; padding:0; border:0; box-shadow:none; }
.currency .select-trigger svg { width:12px; height:12px; }
.currency .select-menu { min-width:100px; }
.search { box-sizing:border-box; min-height:var(--ui-control-height); height:var(--ui-control-height); border-color:var(--ui-border); border-radius:var(--ui-radius); padding:0 14px; }
.search input { font-size:var(--ui-label); height:100%; min-width:0; }
.nav-links,.nav-how { font-size:var(--ui-small); }
.header-inner { gap:30px; }
.search { max-width:470px; }
.benefits b { font-size:var(--ui-label); }
.benefits small { font-size:var(--ui-small); line-height:1.7; }
.steps h3,.faq summary { font-size:var(--ui-text); line-height:1.6; }
.steps p,.how-intro>p,.faq p,.footer-main p,.footer-main a:not(.brand),.footer-main button,.footer-main b { font-size:var(--ui-small); line-height:1.8; }
.pickup-instructions li b { font-size:var(--ui-text); }
.pickup-instructions li p,.pickup-bring p,.pickup-reminder { font-size:var(--ui-small)!important; line-height:1.8!important; }
.pickup-bring b { font-size:var(--ui-label); }
.pass .pass-status { font-size:var(--ui-small); }
.pass .pass-store p,.pass .pass-store a { font-size:var(--ui-small); line-height:1.8; }
.pass .pass-store b { font-size:16px; }
.confirmation-amount>span { font-size:var(--ui-label); }
.flow-page .confirmation-amount p { font-size:var(--ui-small); }
.confirmation-amount strong { font-size:44px; }
.auth-art-copy p { font-size:var(--ui-text); }
html[dir=rtl] .sort-label .modern-select { margin:0; }
@media(max-width:1100px) {
  .header-inner { gap:20px; }
  .header-actions { gap:10px; }
  .product-price .card-price>b { font-size:28px; }
}
@media(max-width:760px) {
  .header-inner { display:grid; grid-template-columns:auto 1fr; gap:12px; }
  .header-inner .brand { font-size:31px; }
  .header-actions { display:flex; flex-wrap:nowrap; gap:8px; justify-content:flex-end; }
  .header-labeled>span:not(#bag-count),.bag>span:not(#bag-count) { display:none; }
  .header-labeled { min-width:28px; height:40px; justify-content:center; }
  .header-labeled svg { width:20px; height:20px; }
  .language-toggle { font-size:11px; min-height:40px; }
  .currency .select-trigger { font-size:11px; gap:3px; }
  .currency .select-trigger svg { width:11px; height:11px; }
  .currency .modern-select { min-width:0; }
  .header-actions .bag { padding-inline-start:8px; }
  .search { grid-column:1/-1; max-width:none; width:100%; }
  .search input,.flow-page .field input,.auth-field input,.field .select-trigger { font-size:16px; }
  .catalog-toolbar { gap:16px; }
  .categories { gap:8px; }
  .categories button { padding:0 13px; }
  .results-line { flex-wrap:wrap; }
  .results-line>span:last-child { font-size:11px; }
  .product-visual { height:300px; }
  .product-info { padding:22px; }
  .product h3 { font-size:23px; }
  .product-story { min-height:0; }
  .product-price { flex-direction:column; gap:16px; }
  .product-price .card-price>b { font-size:32px; }
  .product-price .add { width:100%; font-size:14px; }
  .product .stock { font-size:var(--ui-small); }
  .flow-page h2,.auth-content h1 { font-size:28px; }
  .flow-page p,.auth-sub { font-size:var(--ui-text); }
  .detail-color { font-size:var(--ui-label); }
  .flow-page .total>span:last-child { font-size:21px; }
  .auth-content { padding:30px 0; }
  .auth-help,.auth-demo,.auth-demo p,.auth-bottom { font-size:11px; }
  .benefits b { font-size:var(--ui-label); }
  .benefits small { font-size:var(--ui-small); }
  .collection-kicker { font-size:9px; }
  .collection-kicker>span:last-child { font-size:9px; max-width:160px; }
  .pickup-instructions li b { font-size:var(--ui-text); }
  html[dir=rtl] .header-actions { gap:8px; }
  html[dir=rtl] .header-actions .bag { padding-inline-start:8px; }
}
/* Product-card layout: shared rows keep comparison and actions predictable. */
.products { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:24px; }
.product { display:flex; flex-direction:column; min-height:0; height:100%; }
.product-visual { height:200px; min-height:0; padding:30px 24px 8px; flex-shrink:0; }
.product-visual img { height:100%; width:100%; max-height:165px; object-fit:contain; }
.product .tag { max-width:calc(100% - 28px); font-size:8px; line-height:1.5; left:14px; top:12px; padding:6px 8px; }
.product-info {
  display:grid; flex:1; grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"name name" "spec colors" "story story" "stock stock" "price price" "cta cta";
  grid-template-rows:28px 24px 36px 20px 55px 48px;
  align-content:start; gap:7px 12px; padding:18px 20px 20px;
}
.product-category { display:none; }
.product h3 { grid-area:name; font-size:20px; line-height:28px; height:28px; min-height:0; margin:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.product .spec { grid-area:spec; font-size:12px; line-height:24px; min-width:0; margin:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.product .swatches { grid-area:colors; display:flex; justify-content:flex-end; align-items:center; height:24px; min-height:0; margin:0; gap:9px; }
.product .color-swatch { width:14px; height:14px; }
.product-story { grid-area:story; font-size:12px; line-height:18px; height:36px; min-height:0; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.product .stock { grid-area:stock; font-size:11px; line-height:20px; height:20px; margin:0; white-space:nowrap; }
.product-price { display:contents; }
.card-price { grid-area:price; display:flex; flex-direction:column; justify-content:flex-end; gap:0; border-top:1px solid var(--line); padding-top:6px; }
.price-label { font-size:11px; line-height:16px; color:var(--ui-muted); }
.product-price .card-price>b { font-size:22px; font-weight:700; line-height:30px; letter-spacing:0; }
.product-price .money { display:inline-flex; align-items:baseline; gap:6px; }
.product-price .money small { font-size:12px!important; font-weight:600; margin:0; }
.product-price .add { grid-area:cta; height:48px; width:100%; min-height:48px; font-size:14px; margin:0; padding:0 16px; }
.hero-ipad img { height:170px; width:100%; max-width:none; padding:6px 25px 0; object-fit:contain; }
@media(max-width:1100px) and (min-width:761px) {
  .products { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .products { grid-template-columns:1fr; gap:20px; }
  .product-visual { height:230px; padding:33px 30px 8px; }
  .product-visual img { max-height:190px; }
  .product-info { padding:18px 20px 20px; grid-template-rows:28px 24px 36px 20px 55px 48px; }
  .product h3 { font-size:21px; }
  .product .stock { font-size:11px; }
  .product .tag { font-size:9px; left:18px; }
}
@media(max-width:380px) {
  .header-inner { grid-template-columns:auto minmax(0,1fr); column-gap:6px; }
  .header-inner .brand { font-size:28px; }
  .header-actions,html[dir=rtl] .header-actions { gap:4px; }
  .header-labeled { min-width:24px; gap:3px; }
  .header-labeled svg { width:18px; height:18px; }
  .language-toggle,.currency .select-trigger { font-size:10px; }
  .product-info { padding-inline:18px; gap:7px 8px; }
  .product .swatches { gap:7px; }
  .product .stock { font-size:10px; }
}
html[dir=rtl] .product .tag { right:14px; left:auto; }
@media(max-width:760px) { html[dir=rtl] .product .tag { right:18px; } }
/* A single, quiet price line directly above the primary action. */
.product-info { grid-template-rows:28px 24px 36px 20px 40px 48px; }
.card-price { border-top:1px solid var(--line); padding:7px 0 0; justify-content:center; }
.product-price .card-price>b { font-size:22px; font-weight:700; line-height:30px; }
.product-price .money { align-items:baseline; gap:6px; line-height:30px; }
.product-price .money small { font-size:14px!important; line-height:1.5; font-weight:500; color:#5f426d; letter-spacing:0; }
.product-info { grid-template-areas:"name name" "spec colors" "story story" "price price" "cta cta"; grid-template-rows:28px 24px 36px 40px 48px; }
/* Give the product and its price room to breathe without floating actions. */
.product-visual { height:260px; min-height:0; padding:0; position:relative; }
.product-visual img { width:100%; height:100%; max-height:none; object-fit:contain; }
.product-info { grid-template-rows:28px 24px 36px 64px 48px; gap:9px 12px; padding:16px 22px 22px; }
.card-price { padding-top:13px; justify-content:flex-start; align-self:stretch; }
.product-price .card-price>b { font-size:22px; line-height:31px; }
.product-price .money { line-height:31px; gap:7px; }
.product-price .money small { font-size:14px!important; font-weight:500; }
.product-price .add { align-self:end; }
@media(max-width:760px) {
  .product-visual { height:280px; padding:0; }
  .product-visual img { max-height:none; }
  .product-info { grid-template-rows:28px 24px 36px 64px 48px; padding:16px 20px 22px; }
}
@media(max-width:380px) { .product-visual { height:250px; } .product-info { padding-inline:18px; column-gap:8px; } }
/* Focused shopping flows keep essential actions within the desktop viewport. */
body.flow-active>.announcement,body.flow-active>header nav { display:none; }
body.flow-active .header-inner { padding-top:18px; padding-bottom:18px; }
.flow-page { margin-top:20px; margin-bottom:32px; }
.flow-page .close { margin-bottom:22px; }
.flow-page[data-view=product] .flow-layout { display:block; }
.flow-page[data-view=product] #flow-summary { display:none; }
.product-detail { display:grid; grid-template-columns:1fr 1fr; gap:65px; align-items:center; max-width:1120px; margin:auto; }
.detail-media { align-self:stretch; display:flex; flex-direction:column; min-width:0; }
.detail-media .modal-eyebrow { margin-bottom:8px; }
.flow-page[data-view=product] .detail-media .modal-product { width:100%; height:clamp(280px,48vh,440px); max-height:none; margin:0; object-fit:contain; }
.detail-buy { min-width:0; }
.detail-buy h2 { margin:0 0 6px; font-size:30px; line-height:1.3; }
.detail-buy #detail-spec { font-size:14px; line-height:1.7; }
.detail-buy .modal-price { margin:12px 0 0; font-size:30px; line-height:1.4; }
.detail-buy .detail-color-heading { margin:18px 0 10px; }
.detail-buy .detail-colors { gap:8px; }
.detail-buy .detail-color { min-height:42px; padding:9px 12px; }
.detail-buy .detail-payment-note { margin-top:18px; font-size:13px; line-height:1.8; color:var(--ui-muted); }
.detail-buy #detail-add { margin-top:18px; }
.detail-buy .demo-note { margin-top:12px; font-size:11px!important; line-height:1.7!important; padding:10px 12px; }
.flow-page[data-view=cart] #checkout { position:sticky; bottom:16px; box-shadow:0 6px 22px #21013322; }
@media(min-width:761px) {
  #details-form { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:16px; }
  #details-form .field:first-child,#store-address,#form-error,#details-form .total,#details-form>.primary { grid-column:1/-1; }
  #details-form .field { margin-top:14px; }
  #details-form .total { margin-top:16px; }
  .flow-page[data-view=checkout] .checkout-steps { margin-bottom:14px; padding-bottom:12px; }
  .flow-page[data-view=checkout] h2 { margin-bottom:6px; }
  .flow-page[data-view=checkout] .demo-note { margin-top:12px; padding:10px 12px; }
  .flow-page[data-view=checkout] #flow-summary { padding:25px; }
  .flow-page[data-view=checkout] .pickup-instructions { margin-top:18px; }
  .flow-page[data-view=checkout] .pickup-instructions li { padding-bottom:15px; margin-bottom:15px; }
  .flow-page[data-view=checkout] .pickup-bring { margin-top:15px; }
  .flow-page[data-view=checkout] .pickup-reminder { margin-top:15px; padding-top:15px; }
}
@media(min-width:761px) and (max-height:800px) {
  .detail-buy h2 { font-size:28px; }
  .detail-buy .modal-price { font-size:28px; margin-top:8px; }
  .detail-buy .detail-color-heading { margin-top:12px; }
  .detail-buy .detail-payment-note { margin-top:12px; }
  .detail-buy #detail-add { margin-top:14px; }
  .flow-page .close { margin-bottom:16px; }
  .auth-content { padding:16px 0; }
  .auth-logo { width:170px; margin-bottom:20px; }
  .auth-sub { margin-bottom:18px; }
  .auth-field { margin-bottom:14px; }
  .auth-help { margin-top:14px; }
}
@media(max-width:1000px) and (min-width:761px) { .product-detail { gap:35px; } }
@media(max-width:760px) {
  .product-detail { grid-template-columns:1fr; gap:18px; }
  .flow-page[data-view=product] .detail-media .modal-product { height:240px; }
  .detail-media .modal-eyebrow { margin-bottom:4px; }
  .detail-buy h2 { font-size:27px; }
  .detail-buy .modal-price { font-size:28px; }
  .detail-buy #detail-add { position:sticky; bottom:12px; box-shadow:0 5px 20px #21013320; z-index:3; }
}
/* Product controls stay compact while the in-store guide remains visible. */
.flow-page[data-view=product] .flow-layout { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:32px; align-items:start; }
.flow-page[data-view=product] #flow-summary { display:block; padding:24px; }
.flow-page[data-view=product] .product-detail { grid-template-columns:34% minmax(0,1fr); gap:26px; align-items:center; }
.flow-page[data-view=product] .detail-media .modal-product { height:clamp(240px,42vh,360px); }
.flow-page[data-view=product] .detail-buy h2 { font-size:27px; }
.flow-page[data-view=product] .detail-buy .modal-price { font-size:28px; }
.flow-page[data-view=product] .detail-buy .detail-color { min-height:40px; padding:8px 10px; font-size:12px; }
.flow-page[data-view=product] .detail-buy .detail-payment-note { font-size:12px; line-height:1.7; margin-top:13px; }
.flow-page[data-view=product] .detail-buy .detail-color-heading { margin-top:13px; }
.flow-page[data-view=product] .detail-buy #detail-add { margin-top:16px; }
.flow-page[data-view=product] .detail-buy .demo-note { font-size:10px!important; }
.flow-page[data-view=product] #flow-summary h3 { font-size:22px; line-height:1.35; }
.flow-page[data-view=product] .pickup-instructions { margin-top:18px; }
.flow-page[data-view=product] .pickup-instructions li { padding-bottom:13px; margin-bottom:13px; padding-inline-start:30px; }
.flow-page[data-view=product] .pickup-instructions li b { font-size:13px; line-height:1.6; }
.flow-page[data-view=product] .pickup-instructions li p { font-size:11px!important; line-height:1.7!important; margin-top:5px; }
.flow-page[data-view=product] .pickup-bring { margin-top:16px; }
.flow-page[data-view=product] .pickup-bring p,.flow-page[data-view=product] .pickup-reminder { font-size:11px!important; line-height:1.7!important; }
.flow-page[data-view=product] .pickup-reminder { margin-top:16px; padding-top:16px; }
@media(max-width:1200px) and (min-width:761px) {
  .flow-page[data-view=product] .flow-layout { grid-template-columns:minmax(0,1fr) 270px; gap:24px; }
  .flow-page[data-view=product] .product-detail { grid-template-columns:30% minmax(0,1fr); gap:18px; }
  .flow-page[data-view=product] #flow-summary { padding:20px; }
  .flow-page[data-view=product] .detail-buy h2 { font-size:25px; }
}
@media(max-width:760px) {
  .flow-page[data-view=product] .flow-layout { grid-template-columns:1fr; gap:24px; }
  .flow-page[data-view=product] .product-detail { grid-template-columns:1fr; gap:16px; }
  .flow-page[data-view=product] .detail-media .modal-product { height:240px; }
  .flow-page[data-view=product] #flow-summary { padding:25px; }
}
/* The purchase action belongs below the complete photo-and-details area. */
.flow-page[data-view=product] .product-detail { display:grid; grid-template-columns:42% minmax(0,1fr); grid-template-areas:"media details" "action action" "disclaimer disclaimer"; gap:16px 32px; align-items:center; }
.detail-media { grid-area:media; }
.detail-buy { grid-area:details; }
.flow-page[data-view=product] .detail-media .modal-product { height:300px; }
.flow-page[data-view=product] #detail-add { grid-area:action; margin:0; width:100%; }
.flow-page[data-view=product] #detail-color-note { grid-area:disclaimer; margin:0; padding:10px 12px; font-size:11px!important; line-height:1.7!important; }
.flow-page[data-view=product] .detail-buy .detail-payment-note { margin-top:16px; }
@media(max-width:1200px) and (min-width:761px) {
  .flow-page[data-view=product] .product-detail { grid-template-columns:40% minmax(0,1fr); column-gap:24px; }
  .flow-page[data-view=product] .detail-media .modal-product { height:280px; }
}
@media(max-width:760px) {
  .flow-page[data-view=product] .product-detail { grid-template-columns:1fr; grid-template-areas:"media" "details" "action" "disclaimer"; gap:16px; }
  .flow-page[data-view=product] .detail-media .modal-product { height:240px; }
}
.store-assignment { grid-column:1/-1; border:1px solid var(--ui-border); border-radius:var(--ui-radius); padding:14px 16px; margin-top:14px; background:#faf8fc; }
.store-assignment-label { display:block; font-size:11px; color:#92779e; margin-bottom:3px; }
.store-assignment strong { display:block; font-size:15px; color:var(--purple); font-weight:700; line-height:1.6; }
.flow-page .store-assignment p { font-size:12px; line-height:1.7; margin:3px 0; }
.store-assignment small { display:block; font-size:11px; color:var(--ui-muted); line-height:1.7; }
.store-assignment-note { display:block; font-size:10px; color:#a18aaa; line-height:1.7; margin-top:7px; }
.checkout-actions { grid-column:1/-1; display:grid; grid-template-columns:1fr 1.6fr; gap:12px; margin-top:18px; }
.checkout-actions .primary,.checkout-actions .secondary { margin:0; }
@media(max-width:760px) { .checkout-actions { grid-template-columns:1fr; } .checkout-actions .primary { grid-row:1; } }
@media(min-width:761px) and (max-height:800px) {
  .flow-page[data-view=checkout] .store-assignment { padding:11px 14px; margin-top:10px; }
  .flow-page[data-view=checkout] .store-assignment small { display:none; }
  .flow-page[data-view=checkout] .store-assignment-note { margin-top:4px; }
  .flow-page[data-view=checkout] .demo-note { font-size:11px!important; line-height:1.7!important; padding:8px 11px; }
  .flow-page[data-view=checkout] #details-form .total { margin-top:12px; }
  .flow-page[data-view=checkout] .checkout-actions { margin-top:14px; }
}
@media(min-width:761px) {
  .flow-page[data-view=product] #detail-add { width:300px; max-width:100%; justify-self:start; }
}
