/* AF Custom Creations app install link and instructions — no checkout overlays. */
.afcc-pwa-install-button{appearance:none;border:0!important;padding:0!important;background:transparent!important;color:inherit!important;text-decoration:underline;text-underline-offset:3px;font:inherit;cursor:pointer}
.afcc-pwa-install-button:hover,.afcc-pwa-install-button:focus-visible{color:#dfbc80!important}
.afcc-pwa-overlay[hidden]{display:none!important}
.afcc-pwa-overlay{position:fixed;inset:0;z-index:20000;background:rgba(0,0,0,.6);display:grid;place-items:center;padding:18px}
.afcc-pwa-dialog{position:relative;width:min(100%,470px);max-height:90vh;overflow:auto;background:#fffdf6;border:2px solid #c89d58;border-radius:12px;padding:32px 25px 27px;color:#113e30;box-shadow:0 14px 45px #0005;font:16px/1.6 system-ui,-apple-system,sans-serif;text-align:left}
.afcc-pwa-dialog h2{font:600 25px/1.25 Georgia,serif;margin:0 32px 15px 0;color:#082e27}
.afcc-pwa-dialog p{margin:0 0 16px}
.afcc-pwa-dialog .afcc-pwa-close{position:absolute;right:12px;top:8px;background:transparent;border:0;color:#082e27;font:30px/1 system-ui;cursor:pointer;padding:7px}
.afcc-pwa-dialog .afcc-pwa-ok{background:#082e27;color:#fff;border:0;border-radius:6px;padding:11px 20px;font:700 15px system-ui;cursor:pointer}
@media(prefers-reduced-motion:reduce){.afcc-pwa-overlay *{scroll-behavior:auto!important}}

/* AFCC native-feel mobile layout: applies ONLY when launched as an installed app. */
.afcc-app-nav,.afcc-app-shortcuts { display:none; }
@media (max-width:1024px) {
  body.afcc-app {
    background:#f8f3e8;
    padding-bottom:calc(86px + env(safe-area-inset-bottom,0px));
    -webkit-tap-highlight-color:transparent;
  }
  body.afcc-app .afcc-site-header {
    position:sticky;top:0;z-index:9;
    box-sizing:border-box;
    display:grid!important;
    grid-template-columns:1fr auto!important;
    grid-template-rows:auto!important;
    gap:0!important;
    padding:9px 15px!important;
    background:#fffdf8;
    box-shadow:0 4px 14px rgba(5,34,27,.07);
    border-bottom:1px solid #e7d7b8;
    min-height:59px;
  }
  body.afcc-app .afcc-site-header .afcc-site-brand {
    grid-column:1!important;grid-row:1!important;justify-self:start;
  }
  body.afcc-app .afcc-site-header .afcc-site-logo { width:116px!important;height:auto!important;max-height:62px!important; }
  body.afcc-app .afcc-site-header .afcc-site-nav {display:none!important;}
  body.afcc-app .afcc-site-header .afcc-header-actions {grid-column:2!important;grid-row:1!important;justify-self:end;}
  body.afcc-app .afcc-site-header .afcc-header-actions #cart-toggle {
    padding:9px 12px;border-radius:100px;background:#f3eadb;min-height:40px;
  }
  body.afcc-app .topbar, body.afcc-app .brand-top {
    font-size:10px;letter-spacing:.045em;padding:5px 8px;line-height:1.4;
  }
  body.afcc-app .shipping-promo {
    font-size:10px!important;letter-spacing:.02em!important;line-height:1.35!important;padding:7px 12px!important;
  }
  body.afcc-app .hero {
    min-height:0;
    margin:13px 13px 0;
    border-radius:22px;
    background:linear-gradient(130deg,#062a23 2%,#115240 100%);
    box-shadow:0 10px 25px rgba(6,33,27,.15);
  }
  body.afcc-app .hero-copy {padding:30px 25px 32px!important;}
  body.afcc-app .hero h1 {font-size:clamp(35px,8.5vw,50px);line-height:1.12;margin-bottom:12px;}
  body.afcc-app .hero p:not(.eyebrow) {font-size:14px;line-height:1.55;margin:0 0 8px;}
  body.afcc-app .hero .eyebrow {font-size:10px;letter-spacing:.14em;margin-bottom:9px;}
  body.afcc-app .hero .cta {
    margin-top:12px;padding:13px 18px;border-radius:12px;font-size:14px;
    min-height:45px;display:inline-flex;align-items:center;
  }
  body.afcc-app .afcc-app-shortcuts {display:block;margin:18px 13px 12px;}
  body.afcc-app .afcc-app-shortcuts-heading {
    margin:0 3px 10px;color:#796336;font-size:10px;font-weight:800;letter-spacing:.19em;
  }
  body.afcc-app .afcc-app-shortcut-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;}
  body.afcc-app .afcc-app-shortcut {
    display:flex;flex-direction:column;align-items:flex-start;min-width:0;
    gap:5px;text-decoration:none;background:#fffdf9;color:#10372d;
    padding:14px 11px 13px;border:1px solid #e6d9bf;border-radius:16px;
    box-shadow:0 3px 10px rgba(7,37,29,.04);
  }
  body.afcc-app .afcc-app-shortcut-mark {color:#966d33;height:26px;}
  body.afcc-app .afcc-app-shortcut svg {width:24px;height:24px;}
  body.afcc-app .afcc-app-shortcut strong {font-size:12px;line-height:1.25;font-weight:750;}
  body.afcc-app .afcc-app-shortcut small {font-size:10px;line-height:1.35;color:#647369;}
  body.afcc-app #collection {scroll-margin-top:95px;}
  body.afcc-app section.section {padding:29px 15px 40px;}
  body.afcc-app .section-heading {margin-bottom:18px;}
  body.afcc-app .section-heading h2 {font-size:clamp(28px,7.5vw,39px);}
  body.afcc-app .section-heading>p {font-size:12px;}
  body.afcc-app .product {border-radius:18px;border-color:#e1d3b8;box-shadow:0 5px 20px rgba(7,39,30,.06);}
  body.afcc-app .product .photo {border-radius:18px 18px 0 0;}
  body.afcc-app .product-body {padding:17px 17px 20px;}
  body.afcc-app .product button {border-radius:10px;min-height:45px;}
  body.afcc-app .about {padding:36px 20px;}
  body.afcc-app .about h2 {font-size:29px;}
  body.afcc-app #afcc-simple-footer {padding-bottom:28px;}
  body.afcc-app .studio-hero {padding:30px 16px 32px!important;}
  body.afcc-app .studio-hero h1 {font-size:34px;}
  body.afcc-app .studio-wrap {padding-left:13px;padding-right:13px;}
  body.afcc-app .studio-controls .control-group {border-radius:13px;}
  body.afcc-app .track-wrap {padding-top:22px;}
  body.afcc-app .afcc-app-nav {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    position:fixed;left:0;right:0;bottom:0;z-index:9;
    min-height:calc(68px + env(safe-area-inset-bottom,0px));
    padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));
    border-top:1px solid #e3d6bf;
    background:rgba(255,253,248,.98);
    box-shadow:0 -5px 20px rgba(10,43,34,.10);
  }
  body.afcc-app .afcc-app-nav-link {
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    gap:3px;border-radius:13px;padding:7px 2px 6px;
    color:#66746a;text-decoration:none;min-height:52px;
    font:700 11px/1.25 system-ui,-apple-system,sans-serif;
  }
  body.afcc-app .afcc-app-nav-link svg {width:23px;height:23px;flex:0 0 auto;}
  body.afcc-app .afcc-app-nav-link[aria-current="page"] {background:#e4f0e9;color:#0b4c38;}
  body.afcc-app .afcc-app-nav-link:focus-visible,
  body.afcc-app .afcc-app-shortcut:focus-visible {outline:3px solid #bc8b4a;outline-offset:2px;}
}
@media (max-width:355px) {
  body.afcc-app .afcc-app-shortcut {padding:12px 8px;}
  body.afcc-app .afcc-app-shortcut strong {font-size:11px;}
  body.afcc-app .afcc-app-shortcut small {font-size:9px;}
  body.afcc-app .afcc-app-nav-link {font-size:10px;}
}
@media (prefers-reduced-motion:reduce) {
  body.afcc-app .afcc-app-nav * {transition:none!important;animation:none!important;}
}

/* Stage 1: showcase home screen — displayed only inside installed mobile PWA. */
.afcc-mobile-home { display:none; }
@media (max-width:1024px) {
  body.afcc-app.afcc-app-home-v2 .afcc-mobile-home {display:block; padding:0 13px 18px;}
  body.afcc-app.afcc-app-home-v2 main > .hero,
  body.afcc-app.afcc-app-home-v2 .afcc-app-shortcuts,
  body.afcc-app.afcc-app-home-v2 main > .about {display:none!important;}
  body.afcc-app.afcc-app-home-v2 #collection {padding-top:22px;}
  body.afcc-app .afcc-home-hero {
    margin-top:13px;min-height:315px;position:relative;overflow:hidden;
    padding:31px 23px 30px;border-radius:22px;
    color:#fff8e9;background:linear-gradient(135deg,#0a3026 4%,#145743 100%);
    box-shadow:0 8px 26px rgba(6,42,31,.16);
  }
  body.afcc-app .afcc-home-hero:after {
    content:'';position:absolute;z-index:0;right:-125px;top:-80px;
    width:285px;height:285px;border-radius:50%;border:1px solid rgba(224,194,136,.24);
    box-shadow:0 0 0 36px rgba(224,194,136,.055),0 0 0 72px rgba(224,194,136,.035);
  }
  body.afcc-app .afcc-home-hero-content {position:relative;z-index:1;max-width:435px;}
  body.afcc-app .afcc-home-decor {pointer-events:none;position:absolute;inset:0;overflow:hidden;}
  body.afcc-app .afcc-home-star {position:absolute;color:#e8c784;opacity:.65;font-family:Georgia,serif;}
  body.afcc-app .afcc-home-star-one {right:26px;top:28px;font-size:27px;}
  body.afcc-app .afcc-home-star-two {right:94px;top:88px;font-size:21px;}
  body.afcc-app .afcc-home-star-three {right:26px;bottom:47px;font-size:14px;}
  body.afcc-app .afcc-home-kicker {font-size:10px;letter-spacing:.2em;font-weight:750;color:#e8c784;margin:0 0 12px;}
  body.afcc-app .afcc-home-title {
    white-space:pre-line;max-width:350px;
    font:500 clamp(37px,9.5vw,54px)/1.05 Georgia,'Times New Roman',serif;
    letter-spacing:-.025em;margin:0 0 14px;
  }
  body.afcc-app .afcc-home-lead {max-width:320px;color:#f1eadc;font-size:13px;line-height:1.6;margin:0 0 18px;}
  body.afcc-app .afcc-home-actions {display:flex;flex-wrap:wrap;gap:9px;align-items:center;}
  body.afcc-app .afcc-home-actions a {text-decoration:none;font-size:12px;font-weight:750;border-radius:11px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;text-align:center;}
  body.afcc-app .afcc-home-primary {color:#173629;background:#eac78c;}
  body.afcc-app .afcc-home-secondary {color:#fff8e9;border:1px solid rgba(255,249,232,.62);}
  body.afcc-app .afcc-home-status {display:flex;align-items:center;gap:9px;margin:12px 4px 22px;font-size:11px;font-weight:650;line-height:1.35;color:#725a34;}
  body.afcc-app .afcc-home-status-dot {width:8px;height:8px;flex:0 0 8px;background:#bd8b4d;border-radius:50%;}
  body.afcc-app .afcc-home-status.afcc-home-status-open {color:#155742;}
  body.afcc-app .afcc-home-status.afcc-home-status-open .afcc-home-status-dot {background:#27815a;}
  body.afcc-app .afcc-home-featured {margin-top:18px;}
  body.afcc-app .afcc-home-section-header {display:flex;justify-content:space-between;align-items:end;gap:10px;margin:0 2px 13px;}
  body.afcc-app .afcc-home-eyebrow {font-weight:800;font-size:10px;color:#9c783e;letter-spacing:.17em;margin:0 0 5px;}
  body.afcc-app .afcc-home-featured h2,body.afcc-app .afcc-home-explore h2 {font:500 clamp(25px,7vw,32px)/1.13 Georgia,serif;margin:0;color:#0e372c;}
  body.afcc-app .afcc-home-text-link {font-size:12px;font-weight:750;text-decoration:none;color:#0b503c;white-space:nowrap;padding:9px 4px;}
  body.afcc-app .afcc-home-featured-list {display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;gap:12px;margin:0 -13px;padding:4px 13px 17px;}
  body.afcc-app .afcc-home-featured-list::-webkit-scrollbar {display:none;}
  body.afcc-app .afcc-home-product {scroll-snap-align:start;flex:0 0 min(52vw,205px);min-width:155px;max-width:205px;display:block;overflow:hidden;text-align:left;padding:0;background:#fffdf9;color:#143a30;border:1px solid #e2d7c3;border-radius:16px;box-shadow:0 4px 13px rgba(11,45,32,.06);cursor:pointer;}
  body.afcc-app .afcc-home-product-photo {display:block;position:relative;aspect-ratio:4/4.6;background:linear-gradient(125deg,#f2ecde,#ddd1b9);overflow:hidden;}
  body.afcc-app .afcc-home-product-photo img {display:block;width:100%;height:100%;object-fit:cover;}
  body.afcc-app .afcc-home-product-placeholder {position:absolute;inset:0;display:grid;place-content:center;font:500 24px/1.13 Georgia,serif;text-align:center;white-space:pre-line;color:#846b45;}
  body.afcc-app .afcc-home-sold-out {position:absolute;top:8px;left:8px;font:700 10px/1.3 system-ui,sans-serif;letter-spacing:.03em;border-radius:7px;background:#ffffffed;color:#73563b;padding:6px 8px;}
  body.afcc-app .afcc-home-product-info {display:flex;flex-direction:column;gap:4px;padding:12px 12px 15px;}
  body.afcc-app .afcc-home-product-info small {font-size:10px;line-height:1.4;color:#8b754f;}
  body.afcc-app .afcc-home-product-info strong {font:600 15px/1.27 Georgia,serif;min-height:38px;}
  body.afcc-app .afcc-home-product-price {font-size:12px;color:#516c5d;font-weight:700;}
  body.afcc-app .afcc-home-loading {align-self:center;min-height:85px;color:#6c796f;font-size:12px;margin:8px 0;padding:22px 10px;}
  body.afcc-app .afcc-home-explore {margin:17px 0 0;}
  body.afcc-app .afcc-home-explore h2 {margin-bottom:12px;}
  body.afcc-app .afcc-home-explore-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;}
  body.afcc-app .afcc-home-tile {display:flex;flex-direction:column;min-width:0;gap:7px;text-decoration:none;padding:18px 16px;min-height:162px;border-radius:17px;border:1px solid #e2d4b9;color:#0e3a2d;background:#fffdf9;box-shadow:0 3px 10px rgba(10,38,26,.04);}
  body.afcc-app .afcc-home-tile-design {background:linear-gradient(135deg,#eef3e9 0%,#f9f3e7 100%);}
  body.afcc-app .afcc-home-tile-track {background:linear-gradient(135deg,#fff9ee 0%,#f4e9d3 100%);}
  body.afcc-app .afcc-home-tile-icon {font-size:24px;line-height:1;color:#9b723a;}
  body.afcc-app .afcc-home-tile strong {font-size:15px;line-height:1.2;}
  body.afcc-app .afcc-home-tile small {font-size:11px;line-height:1.45;color:#617469;}
  body.afcc-app .afcc-home-tile-arrow {font-size:11px;font-weight:800;color:#0b543f;margin-top:auto;}
  body.afcc-app .afcc-home-bulk {display:flex;flex-direction:column;gap:12px;margin:17px 0 12px;padding:21px 18px;border-radius:18px;background:#eae2cf;border:1px solid #dac9a8;}
  body.afcc-app .afcc-home-bulk strong {display:block;font:600 23px/1.2 Georgia,serif;color:#123a30;}
  body.afcc-app .afcc-home-bulk p:not(.afcc-home-eyebrow) {margin:7px 0 0;color:#5c6b60;font-size:12px;line-height:1.5;}
  body.afcc-app .afcc-home-bulk-link {align-self:flex-start;text-decoration:none;background:#113f32;color:#fff;padding:11px 14px;border-radius:10px;font-size:12px;font-weight:750;min-height:44px;display:inline-flex;align-items:center;}
  body.afcc-app .afcc-home-meta {display:flex;align-items:center;justify-content:center;gap:13px;flex-wrap:wrap;padding:6px 0 12px;font-size:12px;color:#5c705f;}
  body.afcc-app .afcc-home-meta a {color:#2b5b47;text-decoration:underline;text-underline-offset:3px;}
  body.afcc-app .afcc-mobile-home a:focus-visible, body.afcc-app .afcc-mobile-home button:focus-visible {outline:3px solid #bc8b4a;outline-offset:3px;}
}
@media (max-width:365px) {
  body.afcc-app .afcc-home-hero {padding:27px 19px;}
  body.afcc-app .afcc-home-title {font-size:35px;}
  body.afcc-app .afcc-home-actions a {font-size:11px;padding:9px 12px;}
  body.afcc-app .afcc-home-tile {padding:16px 11px;}
}
@media (prefers-reduced-motion: reduce) {
  body.afcc-app .afcc-home-featured-list {scroll-behavior:auto!important;}
}


/* Stage 2: installed-app storefront browsing. Stage 1 welcome/featured untouched. */
@media (max-width:1024px) {
  body.afcc-app .afcc-app-shop-stage2 {padding-top:23px!important;}
  body.afcc-app #products .product[hidden] {display:none!important;}
  body.afcc-app .afcc-app-shop-tools {background:#fffdf8;padding:18px 14px 16px;margin:0 0 19px;border-radius:18px;border:1px solid #e6d7b7;box-shadow:0 5px 18px rgba(17,50,36,.04);}
  body.afcc-app .afcc-shop-heading-row {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;}
  body.afcc-app .afcc-shop-kicker {font:800 10px/1.4 system-ui,sans-serif;color:#98713a;letter-spacing:.14em;}
  body.afcc-app .afcc-shop-reset {background:transparent;border:0;padding:7px 1px;color:#0a553b;text-decoration:underline;text-underline-offset:3px;font:700 12px system-ui,sans-serif;cursor:pointer;}
  body.afcc-app .afcc-shop-field {display:flex;flex-direction:column;min-width:0;gap:6px;}
  body.afcc-app .afcc-shop-label {font:700 11px/1.25 system-ui,sans-serif;color:#465c4e;}
  body.afcc-app .afcc-shop-field input,body.afcc-app .afcc-shop-field select {width:100%;min-width:0;min-height:44px;padding:10px 9px;box-sizing:border-box;border:1px solid #d7c8af;border-radius:10px;background:#fff;color:#12372b;font:500 13px/1.4 system-ui,sans-serif;}
  body.afcc-app .afcc-shop-search {margin-bottom:12px;}
  body.afcc-app .afcc-shop-search input {background:#fff;padding-left:12px;}
  body.afcc-app .afcc-shop-selectors {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;}
  body.afcc-app .afcc-shop-filter-bottom {display:flex;align-items:center;justify-content:space-between;gap:8px;margin:13px 0 0;}
  body.afcc-app .afcc-shop-availability {display:flex;align-items:center;gap:6px;color:#294d3e;font:650 11px/1.3 system-ui,sans-serif;cursor:pointer;}
  body.afcc-app .afcc-shop-availability input {accent-color:#0c583e;width:16px;height:16px;flex-shrink:0;}
  body.afcc-app .afcc-shop-count {font:600 11px/1.3 system-ui,sans-serif;color:#6d7164;margin:0;text-align:right;}
  body.afcc-app #products.product-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch;}
  body.afcc-app #products .product {min-width:0;border-radius:15px;display:flex;flex-direction:column;}
  body.afcc-app #products .product .photo {aspect-ratio:4/4.8;}
  body.afcc-app #products .product .photo .preview-label {font-size:7px;letter-spacing:.04em;top:8px;left:8px;padding:4px 5px;}
  body.afcc-app #products .product .photo .sold-out-badge {font-size:9px;padding:7px 8px;letter-spacing:.02em;}
  body.afcc-app #products .product-body {display:flex;flex-direction:column;flex:1;padding:12px 10px 13px;}
  body.afcc-app #products .product-body .color {font-size:9px;letter-spacing:.055em;line-height:1.35;}
  body.afcc-app #products .product h3 {font:600 16px/1.2 Georgia,serif;margin:7px 0 8px;min-height:39px;}
  body.afcc-app #products .product .price {font-size:12px;margin:0 0 8px;}
  body.afcc-app #products .product button {margin-top:auto;min-height:42px;padding:9px 6px;font-size:12px;border-radius:9px;}
  body.afcc-app .afcc-shop-empty {text-align:center;padding:24px 15px 26px;border:1px dashed #cdbb9e;border-radius:16px;background:#faf6ec;margin-top:15px;}
  body.afcc-app .afcc-shop-empty[hidden] {display:none!important;}
  body.afcc-app .afcc-shop-empty strong {font:600 21px Georgia,serif;color:#0c3d2c;}
  body.afcc-app .afcc-shop-empty p {font-size:12px;color:#57695c;line-height:1.5;}
  body.afcc-app .afcc-shop-empty button {padding:11px 14px;min-height:43px;border:0;border-radius:10px;background:#0b4935;color:#fff;font-weight:700;}
  body.afcc-app .afcc-app-shop-tools :is(input,select,button):focus-visible {outline:3px solid #b38d54;outline-offset:2px;}
}
@media (max-width:355px) {body.afcc-app .afcc-shop-selectors {gap:5px;}body.afcc-app .afcc-shop-field select {font-size:11px;padding:8px 4px;}body.afcc-app #products .product-grid {gap:8px;}}

/* Website-only Holiday Stories scroll carousel, matching the installed-app featured feel. */
body:not(.afcc-app) #collection .afcc-website-carousel-controls {display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-8px 0 18px;}
body:not(.afcc-app) .afcc-website-carousel-hint {font:650 12px/1.4 system-ui,sans-serif;color:#746044;margin:0;}
body:not(.afcc-app) .afcc-website-carousel-nav {display:flex;align-items:center;gap:9px;}
body:not(.afcc-app) .afcc-website-carousel-arrow {border-radius:50%;width:40px;height:40px;border:1px solid #d6c3a3;background:#fffdf8;color:#0d4334;font-size:20px;line-height:1;cursor:pointer;}
body:not(.afcc-app) .afcc-website-carousel-arrow:disabled {opacity:.3;cursor:default;}
body:not(.afcc-app) .afcc-website-carousel-progress {font:700 12px system-ui,sans-serif;color:#665943;min-width:38px;text-align:center;}
body:not(.afcc-app) #products.afcc-website-carousel {display:flex;grid-template-columns:none;align-items:stretch;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scroll-padding:0 0 0 3px;scrollbar-width:thin;scrollbar-color:#b89b61 #ece6d9;padding:6px 3px 18px;}
body:not(.afcc-app) #products.afcc-website-carousel .product {flex:0 0 clamp(250px,30%,350px);scroll-snap-align:start;min-width:0;display:flex;flex-direction:column;border-radius:14px;}
body:not(.afcc-app) #products.afcc-website-carousel .product-body {display:flex;flex-direction:column;flex:1;}
body:not(.afcc-app) #products.afcc-website-carousel .product-body button {margin-top:auto;}
body:not(.afcc-app) #products.afcc-website-carousel .loading {flex:1 0 100%;}
body:not(.afcc-app) #products.afcc-website-carousel:focus-visible,body:not(.afcc-app) .afcc-website-carousel-arrow:focus-visible {outline:3px solid #aa8650;outline-offset:2px;}
@media(max-width:720px){body:not(.afcc-app) #products.afcc-website-carousel .product {flex-basis:min(78vw,310px);}body:not(.afcc-app) .afcc-website-carousel-hint {font-size:11px;}body:not(.afcc-app) #collection .afcc-website-carousel-controls {margin:0 0 14px;}}
@media(prefers-reduced-motion:reduce){body:not(.afcc-app) #products.afcc-website-carousel {scroll-behavior:auto!important;}}


/* Stage 3: Mobile Design Studio, only when launched from the installed app. */
@media (max-width:1024px) {
  body.afcc-app.afcc-app-studio-v3 {
    padding-bottom:calc(188px + env(safe-area-inset-bottom,0px));
  }
  body.afcc-app-studio-v3 .studio-hero {
    padding:18px 17px 20px!important;
  }
  body.afcc-app-studio-v3 .studio-hero h1 {
    font:500 clamp(31px,8vw,40px)/1.13 Georgia,serif;
    margin:9px 0;
  }
  body.afcc-app-studio-v3 .studio-hero p:last-child {
    font-size:12px;line-height:1.5;margin:7px auto 0;
  }
  body.afcc-app-studio-v3 .studio-hero .studio-eyebrow {font-size:10px;}
  body.afcc-app-studio-v3 .studio-wrap {padding:13px 10px 38px;}
  body.afcc-app-studio-v3 .studio-panel {padding:14px 10px;border-radius:18px;margin-bottom:16px;}
  body.afcc-app-studio-v3 .studio-panel .studio-heading h2 {font-size:25px;}
  body.afcc-app-studio-v3 .studio-panel .studio-heading p {font-size:12px;line-height:1.5;}
  body.afcc-app-studio-v3 .studio-guide {display:none;}
  body.afcc-app-studio-v3 .studio-layout {grid-template-columns:minmax(0,1fr);gap:16px;margin-top:13px;}
  body.afcc-app-studio-v3 .studio-preview-wrap {position:relative;top:auto;min-width:0;scroll-margin-top:83px;}
  body.afcc-app-studio-v3 .afcc-studio-preview-top {display:flex;align-items:center;justify-content:space-between;gap:10px;margin:1px 0 8px;}
  body.afcc-app-studio-v3 .afcc-studio-preview-label {color:#a07c41;font:800 10px/1.2 Arial,sans-serif;letter-spacing:.14em;}
  body.afcc-app-studio-v3 .afcc-studio-zoom {
    border:1px solid #d3b784;border-radius:999px;background:#fff8e9;color:#174333;
    font:750 12px Arial,sans-serif;min-height:40px;padding:9px 14px;cursor:pointer;
  }
  body.afcc-app-studio-v3 .studio-stage {min-height:clamp(360px,102vw,435px);border-radius:18px;}
  body.afcc-app-studio-v3 .studio-stage .sweatshirt {width:min(100%,390px);}
  body.afcc-app-studio-v3 .studio-view-tabs {display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  body.afcc-app-studio-v3 .studio-view-btn {min-height:46px;border-radius:11px;}
  body.afcc-app-studio-v3 .stage-caption {font-size:11px;margin:8px 2px 4px;line-height:1.5;}
  body.afcc-app-studio-v3 .afcc-studio-guidance {background:#f0eee3;border:1px solid #e3d8bb;border-radius:12px;padding:12px;margin-top:9px;color:#254837;}
  body.afcc-app-studio-v3 .afcc-studio-guidance strong {font:700 14px Georgia,serif;}
  body.afcc-app-studio-v3 .afcc-studio-guidance p {font-size:12px;line-height:1.5;margin:4px 0 0;color:#4a6858;}
  body.afcc-app-studio-v3 .studio-controls {display:flex;flex-direction:column;gap:10px;}
  body.afcc-app-studio-v3 .afcc-studio-accordion {display:block;border:1px solid #e0d4bd;border-radius:15px;background:#fffdf8;overflow:hidden;}
  body.afcc-app-studio-v3 .afcc-studio-accordion[open] {border-color:#caaa70;box-shadow:0 5px 16px rgba(10,49,36,.05);}
  body.afcc-app-studio-v3 .afcc-studio-accordion-summary {display:flex;align-items:center;gap:11px;padding:14px 13px;list-style:none;cursor:pointer;color:#123a2c;min-height:68px;}
  body.afcc-app-studio-v3 .afcc-studio-accordion-summary::-webkit-details-marker{display:none;}
  body.afcc-app-studio-v3 .afcc-studio-accordion-summary:focus-visible {outline:3px solid #ad864d;outline-offset:-3px;}
  body.afcc-app-studio-v3 .afcc-studio-step-number {display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;color:#fef7e9;background:#18523e;font:700 13px Arial,sans-serif;}
  body.afcc-app-studio-v3 .afcc-studio-step-title {display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;}
  body.afcc-app-studio-v3 .afcc-studio-step-title strong {font:700 15px/1.3 Arial,sans-serif;}
  body.afcc-app-studio-v3 .afcc-studio-step-title small {font:400 11px/1.35 Arial,sans-serif;color:#6e7c6e;}
  body.afcc-app-studio-v3 .afcc-studio-step-chevron {font-size:24px;line-height:1;color:#936a32;transition:transform .2s;}
  body.afcc-app-studio-v3 .afcc-studio-accordion[open] .afcc-studio-step-chevron {transform:rotate(180deg);}
  body.afcc-app-studio-v3 .afcc-studio-accordion-content {display:flex;flex-direction:column;gap:12px;padding:3px 12px 14px;}
  body.afcc-app-studio-v3 .studio-controls .control-group {padding:11px;border-radius:11px;}
  body.afcc-app-studio-v3 .studio-controls select,body.afcc-app-studio-v3 .studio-controls input,body.afcc-app-studio-v3 .studio-controls textarea {max-width:100%;}
  body.afcc-app-studio-v3 .afcc-color-choice {min-height:48px;}
  body.afcc-app-studio-v3 .studio-controls .studio-price-panel {padding:15px;}
  body.afcc-app-studio-v3 .studio-button-row {gap:8px;}
  body.afcc-app-studio-v3 .studio-button-row button {min-height:46px;}
  body.afcc-app-studio-v3 .afcc-studio-actionbar {position:fixed;bottom:calc(68px + env(safe-area-inset-bottom,0px));left:0;right:0;z-index:12;padding:10px 12px 11px;border-top:1px solid #e7d5b5;background:rgba(255,253,248,.98);box-shadow:0 -5px 17px rgba(10,43,33,.07);}
  body.afcc-app-studio-v3 .afcc-studio-action-price {display:flex;gap:12px;align-items:center;justify-content:center;color:#725b33;font:750 10px/1.2 Arial,sans-serif;letter-spacing:.06em;margin:0 0 8px;}
  body.afcc-app-studio-v3 .afcc-studio-action-price strong {font:800 16px/1.1 Arial,sans-serif;color:#123e2e;}
  body.afcc-app-studio-v3 .afcc-studio-action-buttons {display:grid;grid-template-columns:.82fr 1.25fr .9fr;gap:7px;}
  body.afcc-app-studio-v3 .afcc-studio-action-buttons button {border-radius:10px;min-height:45px;border:1px solid #c9b58f;padding:7px 5px;font:750 12px/1.15 Arial,sans-serif;background:#fffaf0;color:#184334;cursor:pointer;}
  body.afcc-app-studio-v3 .afcc-studio-action-buttons .afcc-studio-action-save {background:#0a4734;color:#fff8eb;border-color:#0a4734;}
  body.afcc-app-studio-v3 .afcc-studio-action-buttons button:focus-visible {outline:3px solid #be9254;outline-offset:2px;}
  body.afcc-app-studio-v3 .draggable-layer {touch-action:none;}
  body.afcc-app-studio-v3.afcc-studio-zoom-mode .studio-preview-wrap {position:fixed;z-index:22;inset:calc(7px + env(safe-area-inset-top,0px)) 7px calc(75px + env(safe-area-inset-bottom,0px));padding:15px 10px;background:#fffdf7;border:1px solid #d1b788;box-shadow:0 0 0 100vmax rgba(8,26,21,.66),0 12px 40px rgba(0,0,0,.25);border-radius:18px;display:flex;flex-direction:column;justify-content:flex-start;overflow-y:auto;}
  body.afcc-app-studio-v3.afcc-studio-zoom-mode .studio-stage {min-height:0;height:min(58vh,520px);flex-shrink:0;}
  body.afcc-app-studio-v3.afcc-studio-zoom-mode .afcc-studio-actionbar {display:none;}
  body.afcc-app-studio-v3.afcc-studio-zoom-mode .afcc-studio-guidance {margin-top:8px;}
}
@media (max-width:360px) {
  body.afcc-app-studio-v3 .afcc-studio-actionbar {padding-left:7px;padding-right:7px;}
  body.afcc-app-studio-v3 .afcc-studio-action-buttons {gap:5px;}
  body.afcc-app-studio-v3 .afcc-studio-action-buttons button {font-size:11px;}
}
@media (prefers-reduced-motion: reduce) {
  body.afcc-app-studio-v3 .afcc-studio-step-chevron {transition:none;}
}

/* CSP-safe installed-app product sorting: classes replace JavaScript inline styles. */
body.afcc-app #products.product-grid .product.afcc-sort-order-0 { order: 0; }
body.afcc-app #products.product-grid .product.afcc-sort-order-1 { order: 1; }
body.afcc-app #products.product-grid .product.afcc-sort-order-2 { order: 2; }
body.afcc-app #products.product-grid .product.afcc-sort-order-3 { order: 3; }
body.afcc-app #products.product-grid .product.afcc-sort-order-4 { order: 4; }
body.afcc-app #products.product-grid .product.afcc-sort-order-5 { order: 5; }
body.afcc-app #products.product-grid .product.afcc-sort-order-6 { order: 6; }
body.afcc-app #products.product-grid .product.afcc-sort-order-7 { order: 7; }
body.afcc-app #products.product-grid .product.afcc-sort-order-8 { order: 8; }
body.afcc-app #products.product-grid .product.afcc-sort-order-9 { order: 9; }
