/* Fazima Print customer platform UI. Presentation only. */
:root{--fp-blue:#135ee8;--fp-blue-dark:#0b43b2;--fp-navy:#14243b;--fp-text:#1f2d43;--fp-muted:#6c7a90;--fp-line:#e5eaf1;--fp-bg:#f7f9fc;--fp-card:#fff;--fp-yellow:#f4b942;--fp-radius:16px;--fp-shadow:0 12px 32px rgba(25,45,75,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--fp-bg);color:var(--fp-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}body:before,body:after{display:none!important}.shell{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:28px;min-height:72px;padding:12px 0;background:rgba(255,255,255,.96);border-bottom:1px solid var(--fp-line);backdrop-filter:blur(15px)}.brand-image img{display:block;width:145px;height:auto}.main-nav{display:flex;align-items:center;gap:22px;margin-right:auto}.main-nav a,.header-actions a{color:var(--fp-muted);font-size:.9rem;font-weight:700;text-decoration:none}.main-nav a:hover,.main-nav a.active,.header-actions a:hover{color:var(--fp-blue)}.header-actions{display:flex;align-items:center;gap:14px}.cart-link b{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border-radius:20px;color:#fff;background:var(--fp-blue);font-size:.7rem}.header-trust{color:var(--fp-muted);font-size:.76rem;white-space:nowrap}.header-trust i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%;background:#20b56a}.mobile-menu{display:none}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:76px 0 66px}.hero-copy .eyebrow,.eyebrow{color:var(--fp-blue);font-size:.7rem;font-weight:850;letter-spacing:.12em}.hero h1,.page-title h1,.auth-card h1{margin:12px 0 18px;color:var(--fp-navy);font-size:clamp(2.7rem,6vw,4.8rem);line-height:1.02;letter-spacing:-.06em}.hero h1 em,.page-title h1 em,.auth-card h1 em{color:var(--fp-blue);font-style:normal}.hero-copy>p:not(.eyebrow){max-width:480px;color:var(--fp-muted);font-size:1.05rem}.hero-search{position:relative;max-width:580px;margin:24px 0}.hero-search input{min-height:56px;margin:0;padding:0 18px;border:1px solid #ccd8e8;border-radius:13px;background:#fff;box-shadow:0 7px 22px rgba(25,70,140,.08);font-size:.96rem}.hero-visual{position:relative;height:365px}.hero-image-main{height:365px;overflow:hidden;border-radius:22px;background:#dde8f7;box-shadow:var(--fp-shadow)}.hero-image-main img{width:100%;height:100%;object-fit:cover}.hero-float-card{position:absolute;right:-18px;bottom:18px;max-width:215px;padding:17px;border:1px solid #fff;border-radius:14px;background:#fff;box-shadow:var(--fp-shadow)}.hero-float-card span{color:var(--fp-blue);font-size:.65rem;font-weight:850;letter-spacing:.12em}.hero-float-card b{display:block;margin:7px 0;font-size:1.08rem}.hero-float-card small{color:var(--fp-muted)}.primary,button.primary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:0;border-radius:10px;color:#fff;background:var(--fp-blue);font-weight:800;text-decoration:none;cursor:pointer;box-shadow:0 7px 16px rgba(19,94,232,.2)}.primary:hover,button.primary:hover{background:var(--fp-blue-dark)}.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid var(--fp-line);border-radius:10px;color:var(--fp-text);background:#fff;font-weight:750;text-decoration:none}
.category-quick,.catalog,.how,.promo-strip{padding-bottom:72px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.section-heading h2{margin:5px 0 0;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.06;letter-spacing:-.045em}.section-heading h2 em{color:var(--fp-blue);font-style:normal}.section-heading>p{max-width:420px;margin:0;color:var(--fp-muted)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.category-card{overflow:hidden;display:flex;flex-direction:column;min-height:170px;border:1px solid var(--fp-line);border-radius:var(--fp-radius);color:var(--fp-text);background:#fff;text-decoration:none;box-shadow:0 5px 18px rgba(25,45,75,.04);transition:transform .18s,box-shadow .18s}.category-card:hover{transform:translateY(-3px);box-shadow:var(--fp-shadow)}.category-card img{width:100%;height:82px;object-fit:cover}.category-card b,.category-card span{margin-inline:15px}.category-card b{margin-top:12px;font-size:1rem}.category-card span{margin-top:4px;color:var(--fp-muted);font-size:.77rem}.catalog{padding-top:8px}.showcase-category{margin-top:28px}.showcase-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.showcase-heading h3{margin:0;font-size:1.2rem}.showcase-heading p{margin:3px 0 0;color:var(--fp-muted);font-size:.84rem}.showcase-heading .eyebrow{margin:0;font-size:.64rem}.showcase-controls{display:flex;gap:8px}.showcase-filter-trigger,.showcase-arrows button{min-height:37px;border:1px solid var(--fp-line);border-radius:9px;background:#fff;cursor:pointer}.showcase-filter-trigger{padding:0 12px;color:var(--fp-text)}.showcase-arrows{display:flex;gap:5px}.showcase-arrows button{width:37px;color:var(--fp-text)}.showcase-viewport{overflow:hidden}.showcase-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.showcase-card{overflow:hidden;border:1px solid var(--fp-line);border-radius:var(--fp-radius);background:#fff;box-shadow:0 5px 18px rgba(25,45,75,.04);transition:transform .18s,box-shadow .18s}.showcase-card:hover{transform:translateY(-3px);box-shadow:var(--fp-shadow)}.showcase-card img{display:block;width:100%;aspect-ratio:1.18;object-fit:cover;background:#eef3f9}.showcase-card-body{padding:13px}.showcase-card h3{min-height:42px;margin:4px 0 9px;font-size:.92rem;line-height:1.25}.product-type{color:var(--fp-muted);font-size:.67rem;font-weight:750}.showcase-meta{display:flex;gap:4px;align-items:baseline;margin-bottom:12px}.showcase-meta strong{font-size:.94rem}.showcase-meta small{color:var(--fp-muted)}.product-bottom button{width:100%;min-height:37px;border:0;border-radius:9px;color:#fff;background:var(--fp-blue);font-weight:800;cursor:pointer}.how{border-top:1px solid var(--fp-line);padding-top:62px}.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.how-grid article{padding:20px;border:1px solid var(--fp-line);border-radius:var(--fp-radius);background:#fff}.how-grid article>b{color:var(--fp-blue);font-size:.75rem}.how-grid h3{margin:22px 0 5px;font-size:1rem}.how-grid p{margin:0;color:var(--fp-muted);font-size:.82rem}.promo-strip{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:24px;padding:25px 28px;border-radius:var(--fp-radius);color:#fff;background:var(--fp-navy)}.promo-strip .eyebrow{margin:0;color:#a9c6ff}.promo-strip h2{margin:5px 0 0;font-size:1.65rem;line-height:1.08}.promo-strip h2 em{color:var(--fp-yellow);font-style:normal}.promo-strip>p{margin:0;color:#c9d5e7;font-size:.82rem}.promo-strip .secondary{border-color:#65778f;color:#fff;background:transparent}.footer{display:flex;justify-content:space-between;gap:30px;padding:44px 0;border-top:1px solid var(--fp-line);color:var(--fp-muted)}.footer>div{display:flex;flex-direction:column;gap:7px}.footer a{color:var(--fp-muted);text-decoration:none}.footer b{color:var(--fp-text);font-size:.8rem}
.page-shell{padding:50px 0 80px}.page-title{margin-bottom:30px}.page-title h1{font-size:clamp(2.2rem,5vw,3.7rem)}.page-title>p:last-child{color:var(--fp-muted)}.order-layout,.cart-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:start;gap:20px}.cart-layout{grid-template-columns:minmax(0,1fr) 340px}.order-card,.cart-card,.summary-card,.checkout-card,.auth-card{padding:25px;border:1px solid var(--fp-line);border-radius:var(--fp-radius);background:#fff;box-shadow:0 5px 20px rgba(25,45,75,.035)}.form-heading{display:flex;align-items:center;gap:12px;margin-bottom:23px}.form-heading .number{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:#fff;background:var(--fp-blue);font-weight:850}.form-heading h3{margin:0;font-size:1.06rem}.form-heading p{margin:2px 0 0;color:var(--fp-muted);font-size:.8rem}label{color:var(--fp-text);font-size:.82rem;font-weight:750}input,select,textarea{width:100%;min-height:43px;margin-top:7px;padding:9px 11px;border:1px solid #d6dfeb;border-radius:9px;background:#fff;color:var(--fp-text);font:inherit}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid rgba(19,94,232,.22);outline-offset:2px}.form-divider{margin:23px 0 14px;padding-top:17px;border-top:1px solid var(--fp-line);font-weight:850}.form-divider small,.helper,.summary-disclaimer{color:var(--fp-muted);font-weight:500}.field-grid,.advanced-fields{gap:13px}.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:165px;padding:18px;border:1.5px dashed #9ab9ef;border-radius:13px;color:var(--fp-blue);background:#f7faff;text-align:center;cursor:pointer}.drop input{display:none}.drop strong{margin-top:7px}.drop #fileName{color:var(--fp-muted);font-size:.76rem;font-weight:500}.upload-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;color:#fff;background:var(--fp-blue);font-size:1.3rem}.selected-product{display:flex;align-items:center;gap:11px;margin:12px 0;padding:9px;border:1px solid var(--fp-line);border-radius:11px}.selected-product img{width:52px;height:52px;border-radius:8px;object-fit:cover}.selected-product span{display:block;color:var(--fp-muted);font-size:.75rem}.design-preview{overflow:hidden;margin-top:14px;border:1px solid var(--fp-line);border-radius:12px}.mockup-preview-shell{background:#f2f5f9}.mockup-preview-shell img{display:block;width:100%;max-height:380px;object-fit:contain}.preview-loading{display:grid;place-items:center;min-height:150px;color:var(--fp-muted)}.preview-copy{display:grid;gap:4px;padding:13px}.preview-kicker,.summary-label{color:var(--fp-blue);font-size:.66rem;font-weight:850;letter-spacing:.1em}.preview-copy span{color:var(--fp-muted);font-size:.78rem}.button-row{display:flex;gap:9px;margin-top:21px}.button-row .primary{flex:1}.continue-review{width:100%;margin-top:9px}.summary-card,.checkout-card{position:sticky;top:95px}.summary-product{display:flex;align-items:center;gap:10px;padding:16px 0;border-bottom:1px solid var(--fp-line)}.summary-product img{width:48px;height:48px;border-radius:8px;object-fit:cover}.summary-product span,.summary-line{color:var(--fp-muted);font-size:.77rem}.summary-line{display:flex;justify-content:space-between;gap:12px;padding-top:10px}.summary-line b{color:var(--fp-text);text-align:right}.summary-total,.checkout-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--fp-line)}.summary-total strong,.checkout-total{color:var(--fp-blue);font-size:1.2rem;font-weight:850}.summary-disclaimer{display:block;margin-top:12px;font-size:.7rem}.help-card{margin-top:13px;padding:16px;border-radius:var(--fp-radius);color:#fff;background:var(--fp-navy)}.help-card p{margin:4px 0 8px;color:#c9d5e7;font-size:.78rem}.help-card a{color:#fff;font-weight:750}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--fp-line)}.panel-head h2{margin:3px 0 0;font-size:1.2rem}.small-button{min-height:37px;padding:0 12px;font-size:.77rem}.cart-item{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:13px;padding:16px 0;border-bottom:1px solid var(--fp-line)}.cart-item img{width:70px;height:70px;border-radius:9px;object-fit:cover;background:#eef3f9}.cart-item h3{margin:2px 0;font-size:.95rem}.cart-item p{margin:3px 0;color:var(--fp-muted);font-size:.75rem}.cart-item>button{border:0;color:#e34b4b;background:none;font-size:1.35rem;cursor:pointer}.checkout-card>p{color:var(--fp-muted);font-size:.8rem}.checkout-card label{display:block;margin-top:14px}.checkout-card .primary{width:100%;margin-top:18px}.demo-note{display:block;margin-top:7px;color:var(--fp-muted);text-align:center;font-size:.69rem}.auth-shell{display:grid;place-items:center;min-height:calc(100vh - 72px);padding:50px 0}.auth-card{width:min(470px,100%)}.auth-card h1{font-size:3rem}.auth-card form label{display:block;margin-top:15px}.auth-card form .primary{width:100%;margin-top:21px}.back-link{display:inline-block;margin-top:20px;color:var(--fp-blue);font-size:.82rem;font-weight:750;text-decoration:none}.chat-launcher{border-radius:11px!important;background:var(--fp-blue)!important}.modal-backdrop{background:rgba(15,23,42,.55)!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.showcase-track{grid-template-columns:repeat(3,minmax(0,1fr))}.order-layout,.cart-layout{grid-template-columns:1fr}.summary-card,.checkout-card{position:static}.category-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.shell{width:calc(100% - 28px)}.site-header{min-height:62px;gap:12px}.brand-image img{width:122px}.main-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:8px 14px 14px;border-bottom:1px solid var(--fp-line);background:#fff;box-shadow:var(--fp-shadow)}.main-nav.mobile-open{display:flex}.main-nav a{padding:11px 7px}.mobile-menu{display:inline-grid!important;place-items:center;width:37px;height:37px;margin-left:auto;border:1px solid var(--fp-line);border-radius:9px;color:var(--fp-text);background:#fff}.header-actions{gap:6px}.header-actions .login-link,.header-trust{display:none}.hero{display:flex;flex-direction:column;gap:27px;align-items:stretch;padding:40px 0 34px}.hero h1{font-size:3.05rem}.hero-visual,.hero-image-main{height:255px}.hero-float-card{right:9px;bottom:9px;padding:12px}.hero-float-card b{font-size:.9rem}.section-heading,.showcase-heading{align-items:flex-start;flex-direction:column}.showcase-controls{width:100%;justify-content:space-between}.showcase-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.showcase-card-body{padding:10px}.showcase-card h3{min-height:46px;font-size:.84rem}.how-grid{grid-template-columns:repeat(2,1fr)}.how-grid article{padding:14px}.promo-strip{grid-template-columns:1fr;gap:12px;padding:20px}.footer{display:grid;grid-template-columns:1fr 1fr;padding-bottom:30px}.footer>div:first-child{grid-column:1/-1}.page-shell{padding-top:32px}.order-card,.cart-card,.summary-card,.checkout-card,.auth-card{padding:18px}.field-grid,.advanced-fields{grid-template-columns:1fr}.page-title h1,.auth-card h1{font-size:2.5rem}.cart-item{grid-template-columns:57px 1fr auto;gap:9px}.cart-item img{width:57px;height:57px}}
.logo-strip,.testimonials{display:none!important}
.showcase-fallback{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.fallback-product{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--fp-line);border-radius:var(--fp-radius);color:var(--fp-text);background:#fff;text-decoration:none;box-shadow:0 5px 18px rgba(25,45,75,.04)}.fallback-product img{width:100%;height:180px;object-fit:cover}.fallback-product b,.fallback-product span{padding:0 13px}.fallback-product b{padding-top:12px}.fallback-product span{padding-bottom:14px;color:var(--fp-muted);font-size:.78rem}@media(max-width:680px){.showcase-fallback{grid-template-columns:repeat(2,minmax(0,1fr))}.fallback-product img{height:125px}}
.about-intro,.about-story,.gallery-section,.location-section,.client-section{padding:52px 0}.about-intro{display:grid;grid-template-columns:1fr .85fr;gap:55px;align-items:center}.about-intro h1,.about-story h2,.gallery-section h2,.location-section h2,.client-section h2{margin:8px 0 16px;color:var(--fp-navy);font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;letter-spacing:-.05em}.about-intro h1 em,.about-story h2 em,.gallery-section h2 em,.location-section h2 em,.client-section h2 em{color:var(--fp-blue);font-style:normal}.about-intro>div>p:last-child,.about-copy>p,.location-copy address{color:var(--fp-muted)}.about-intro-photo img,.about-photo img{width:100%;height:330px;object-fit:cover;border-radius:20px;box-shadow:var(--fp-shadow)}.comic-spider{display:none}.about-story{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.about-stats{display:flex;gap:25px;margin-top:25px}.about-stats b,.about-stats span{display:block}.about-stats b{color:var(--fp-blue);font-size:1.4rem}.about-stats span{color:var(--fp-muted);font-size:.76rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery-grid img{width:100%;height:220px;object-fit:cover;border-radius:14px}.location-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:22px}.location-copy{padding:25px;border-radius:16px;background:#fff;border:1px solid var(--fp-line)}.location-copy h3{font-size:1.1rem}.map-frame iframe{width:100%;height:300px;border:0;border-radius:16px}.client-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.client-grid img{width:100%;height:55px;object-fit:contain;border:1px solid var(--fp-line);border-radius:10px;background:#fff;padding:8px}
@media(max-width:680px){.about-intro,.about-story,.location-layout{grid-template-columns:1fr;gap:25px}.about-intro,.about-story,.gallery-section,.location-section,.client-section{padding:32px 0}.about-intro-photo img,.about-photo img{height:230px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid img{height:150px}.client-grid{grid-template-columns:repeat(3,1fr)}.about-stats{gap:14px}}
.showcase-heading{align-items:flex-end;margin-bottom:24px}.showcase-heading h3{font-size:1.45rem;letter-spacing:-.03em}.showcase-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.showcase-filter{min-height:36px;padding:0 12px;border:1px solid var(--fp-line);border-radius:999px;color:var(--fp-muted);background:#fff;font:inherit;font-size:.75rem;font-weight:750;cursor:pointer}.showcase-filter.active,.showcase-filter:hover{border-color:var(--fp-blue);color:#fff;background:var(--fp-blue)}.showcase-card{display:flex;flex-direction:column}.showcase-card-body{display:flex;flex:1;flex-direction:column}.showcase-card h3{flex:1}.showcase-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.product-order,.product-cart{display:flex;align-items:center;justify-content:center;width:100%;min-height:39px;padding:0 10px;border:0;border-radius:9px;color:#fff;background:var(--fp-blue);font:inherit;font-size:.77rem;font-weight:800;cursor:pointer}.product-order:hover,.product-cart:hover{background:var(--fp-blue-dark)}.product-cart{border:1px solid var(--fp-blue);color:var(--fp-blue);background:#edf5ff}.product-cart:hover{color:#fff}
@media(max-width:680px){.showcase-heading{align-items:flex-start}.showcase-filters{justify-content:flex-start;width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.showcase-filter{flex:0 0 auto}}.showcase-card[hidden]{display:none!important}

/* Complete component coverage: order controls, upload states, cart states, dialogs, and utility UI. */
.custom-select{position:relative;margin-top:7px}.custom-select-button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:0 14px;border:1px solid var(--fp-line);border-radius:12px;background:#fff;color:var(--fp-text);font:inherit;text-align:left;cursor:pointer}.custom-select-button:after{content:'⌄';color:var(--fp-muted);font-size:1.1rem}.custom-select.open .custom-select-button{border-color:var(--fp-blue);box-shadow:0 0 0 3px rgba(15,111,255,.1)}.custom-select-menu{position:absolute;z-index:30;display:none;inset:calc(100% + 6px) 0 auto;max-height:240px;overflow:auto;padding:6px;border:1px solid var(--fp-line);border-radius:12px;background:#fff;box-shadow:0 18px 40px rgba(20,45,80,.16)}.custom-select.open .custom-select-menu{display:grid;gap:2px}.custom-select-option{padding:11px 12px;border:0;border-radius:8px;background:transparent;color:var(--fp-text);font:inherit;text-align:left;cursor:pointer}.custom-select-option:hover,.custom-select-option[aria-selected=true]{background:#edf5ff;color:var(--fp-blue);font-weight:750}
.advanced-row{margin:18px 0}.advanced-row details{border:1px solid var(--fp-line);border-radius:14px;background:#fbfdff}.advanced-row summary{padding:14px 16px;color:var(--fp-navy);font-weight:800;cursor:pointer}.advanced-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 16px 16px}.switch-label{display:flex!important;align-items:center;gap:10px}.switch-label input{width:18px!important;margin:0}.switch-label span{display:grid;gap:3px}.switch-label small{color:var(--fp-muted);font-weight:500}
.banner-orientation-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.orientation-choice{position:relative;display:block;cursor:pointer}.orientation-choice input{position:absolute;opacity:0}.orientation-visual{display:grid;place-items:center;min-height:84px;border:1px solid var(--fp-line);border-radius:12px;background:#fff;color:var(--fp-muted);font-size:.78rem;font-weight:750}.orientation-choice input:checked+.orientation-visual{border-color:var(--fp-blue);background:#edf5ff;color:var(--fp-blue);box-shadow:0 0 0 3px rgba(15,111,255,.1)}.orientation-horizontal:before,.orientation-vertical:before{content:'';display:block;border:2px solid currentColor;border-radius:3px}.orientation-horizontal:before{width:48px;height:27px}.orientation-vertical:before{width:27px;height:48px}
.product-extras{display:grid;gap:14px;margin:18px 0;padding:16px;border-radius:14px;background:#f5f9ff;border:1px solid #dbeaff}.extras-heading{margin:0;color:var(--fp-navy);font-size:.88rem}.sticker-capacity-note,.sticker-custom-hint,.finishing-unavailable{display:block;margin-top:7px;color:var(--fp-muted);font-size:.75rem}.finishing-unavailable{padding:12px;border-radius:10px;background:#fff8e8;color:#8b6410}.finish-option.selected{border-color:var(--fp-blue);background:#edf5ff}.locked-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;color:var(--fp-muted);font-size:.7rem;font-weight:800;letter-spacing:.08em}.locked-label b{color:var(--fp-blue)}
.search-suggestions{position:absolute;z-index:25;top:calc(100% + 8px);left:0;right:0;display:grid;gap:2px;padding:7px;border:1px solid var(--fp-line);border-radius:14px;background:#fff;box-shadow:0 18px 40px rgba(20,45,80,.14)}.search-suggestions[hidden]{display:none}.search-suggestions button{padding:11px 12px;border:0;border-radius:9px;background:transparent;color:var(--fp-text);font:inherit;text-align:left;cursor:pointer}.search-suggestions button:hover,.search-suggestions button.is-active{background:#edf5ff;color:var(--fp-blue)}
.design-preview{display:grid;grid-template-columns:140px 1fr;gap:15px;align-items:center;margin:14px 0;padding:14px;border:1px solid var(--fp-line);border-radius:14px;background:#fbfdff}.mockup-preview-shell{display:grid;place-items:center;min-height:110px;overflow:hidden;border-radius:10px;background:#eaf1f8}.mockup-preview-shell img{width:100%;height:110px;object-fit:cover}.preview-copy{display:grid;gap:5px}.preview-kicker{color:var(--fp-blue);font-size:.68rem;font-weight:850;letter-spacing:.1em}.preview-copy b{color:var(--fp-navy)}.preview-copy span:not(.preview-kicker){color:var(--fp-muted);font-size:.78rem}.preview-status{font-weight:750}.preview-step{white-space:nowrap}
.cart-empty,.summary-empty{display:grid;place-items:center;min-height:180px;padding:30px;color:var(--fp-muted);text-align:center}.cart-item{display:grid;grid-template-columns:84px 1fr auto;gap:15px;align-items:center;padding:18px 0;border-bottom:1px solid var(--fp-line)}.cart-item img{width:84px;height:70px;object-fit:cover;border-radius:10px}.cart-item h3{margin:0 0 5px;color:var(--fp-navy);font-size:.95rem}.cart-item p{margin:0;color:var(--fp-muted);font-size:.76rem}.cart-item button{border:0;background:transparent;color:#c34d58;font:inherit;cursor:pointer}.summary-line{display:flex;justify-content:space-between;gap:14px;padding:8px 0;color:var(--fp-muted);font-size:.84rem}.summary-line strong{color:var(--fp-text)}.summary-product{padding:12px;border-radius:10px;background:#f5f9ff;color:var(--fp-navy);font-weight:750}.summary-label{color:var(--fp-muted);font-size:.7rem;font-weight:850;letter-spacing:.1em}.fake-order-number{margin:18px 0;padding:14px;border-radius:10px;background:#f5f9ff;color:var(--fp-muted)}.modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border:1px solid var(--fp-line);border-radius:50%;background:#fff;color:var(--fp-muted);font-size:1.4rem;cursor:pointer}.success-check{display:grid;place-items:center;width:58px;height:58px;margin-bottom:18px;border-radius:50%;background:#dff7ec;color:#158553;font-size:1.8rem;font-weight:900}.help-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#edf5ff;color:var(--fp-blue);font-weight:900}.location-status{display:block;margin-top:8px;color:var(--fp-muted)}.map-link{display:inline-block;margin-top:12px;color:var(--fp-blue);font-weight:750}.preview-loading{color:var(--fp-muted);font-size:.72rem;text-align:center}
.showcase-filter-dropdown{position:relative}.showcase-filter-menu{display:none;position:absolute;z-index:20;top:calc(100% + 5px);right:0;padding:6px;border:1px solid var(--fp-line);border-radius:10px;background:#fff;box-shadow:var(--fp-shadow)}.showcase-filter-dropdown.open .showcase-filter-menu{display:grid}.showcase-filter-option{padding:9px 12px;border:0;background:#fff;text-align:left;cursor:pointer}.showcase-filter-option:hover{background:#edf5ff}.showcase-arrows{display:flex;gap:7px}.showcase-arrows button{width:36px;height:36px;border:1px solid var(--fp-line);border-radius:50%;background:#fff;cursor:pointer}.icon-button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--fp-line);border-radius:10px;background:#fff;color:var(--fp-navy);cursor:pointer}
@media(max-width:900px){.main-nav{display:none}.site-header{min-height:66px}.advanced-fields{grid-template-columns:1fr}.cart-item{grid-template-columns:68px 1fr auto}.cart-item img{width:68px;height:60px}}
@media(max-width:680px){.design-preview{grid-template-columns:1fr}.mockup-preview-shell{min-height:150px}.mockup-preview-shell img{height:150px}.cart-item{gap:10px}.cart-item h3{font-size:.86rem}.banner-orientation-picker{grid-template-columns:1fr 1fr}.modal .success-card{width:min(92vw,480px);padding:28px 20px}.custom-select-menu{max-height:190px}}

/* Legacy markup is still used for behavior; give every surviving structural hook a deliberate presentation. */
.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.order-sidebar{display:grid;align-content:start;gap:14px}.detected-location{padding:12px;border:1px solid #cfe2ff;border-radius:12px;background:#f5f9ff}.finish-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#edf5ff;color:var(--fp-blue);font-weight:900}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-line{display:block;width:100%;height:1px;margin:18px 0;background:var(--fp-line)}.location-pin{color:var(--fp-blue);font-size:1.2rem}.chat-pending{color:var(--fp-muted);font-size:.78rem}.testimonial-card,.testimonial-card-red{padding:20px;border:1px solid var(--fp-line);border-radius:16px;background:#fff}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.testimonial-stars{color:#e6a916;letter-spacing:.1em}.testimonial-stamp{display:inline-block;color:var(--fp-blue);font-size:.68rem;font-weight:850;letter-spacing:.1em}.partner-marquee{overflow:hidden}.partner-track{display:flex;gap:12px}.partner-set{display:flex;gap:12px}.ghost,.ghost-blue,.ghost-pink{display:none}.comic-loading-title,.comic-loading-dots,.pacman,.pacman-loader{color:var(--fp-muted)}.theme-toggle{display:none}
@media(max-width:900px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.testimonial-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-grid{grid-template-columns:1fr}}

/* Final corrections from the UI issue checklist. */
.hero-line{display:inline!important;width:auto!important;height:auto!important;margin:0!important;background:none!important}.hero{gap:42px;padding:54px 0 46px}.hero-copy{min-width:0}.hero h1{font-size:clamp(2.5rem,5vw,4.1rem)}.hero-search{z-index:5;margin:20px 0 14px}.hero-search input{display:block;width:100%}
.category-quick,.catalog,.how,.promo-strip{padding-bottom:48px}.category-quick{padding-top:8px}.catalog{padding-top:20px}.section-heading h2{font-size:clamp(1.65rem,2.7vw,2.25rem)}.section-heading>p{font-size:.86rem}.category-grid{gap:16px}.category-card{min-height:196px}.category-card img{height:105px}.category-card b{margin-top:13px}.category-card span{padding-bottom:15px}.showcase-category,.showcase-track,.showcase-viewport{width:100%;min-width:0}.showcase-track{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.showcase-card{min-width:0}.showcase-card img{aspect-ratio:1.35}.showcase-card h3{overflow-wrap:anywhere;word-break:normal}.product-order{min-width:0;padding-inline:10px;font-size:.72rem}.showcase-meta strong{white-space:nowrap}.finishing-unavailable{border-color:#e6eaf0;background:#f7f9fc;color:var(--fp-muted)}
.site-header .brand-image{flex:0 0 auto}.site-header .main-nav{flex:1;justify-content:center;gap:clamp(10px,1.8vw,22px)}.site-header .main-nav a{white-space:nowrap;font-size:.82rem}.header-trust{font-size:.7rem}.order-card,.cart-card,.summary-card,.checkout-card{padding:22px}.summary-card,.checkout-card{top:88px}.summary-empty{min-height:125px;border:1px dashed var(--fp-line);border-radius:12px;margin-top:12px}.checkout-card{background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}.checkout-card:before{content:'SIMULASI · BELUM ADA PEMBAYARAN';display:block;width:max-content;max-width:100%;margin-bottom:12px;padding:5px 8px;border-radius:999px;color:#6f5714;background:#fff3c9;font-size:.62rem;font-weight:850;letter-spacing:.06em}.checkout-card .primary{background:var(--fp-navy);box-shadow:none}.checkout-card .primary:hover{background:#253b5a}
.page-title{margin-bottom:22px}.page-shell{padding-top:38px}.about-intro,.about-story,.gallery-section,.location-section,.client-section{padding:34px 0}.about-story{margin-top:0}.gallery-section{padding-top:20px}.location-section{padding-top:28px}.about-intro-photo img,.about-photo img{height:285px}.location-layout{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr)}.location-copy{padding:22px}.map-frame iframe{height:260px}.chat-widget{opacity:.78;transform:scale(.88);transform-origin:bottom right}.chat-widget:hover,.chat-widget:focus-within{opacity:1}.chat-launcher{min-height:38px!important;padding:0 13px!important;font-size:.74rem!important}.chat-panel{box-shadow:0 14px 34px rgba(20,45,80,.16)!important}
@media(max-width:1100px){.site-header{gap:16px}.site-header .main-nav{gap:11px}.site-header .main-nav a{font-size:.76rem}.header-trust{display:none}}
@media(max-width:900px){.hero{gap:30px;padding:42px 0 38px}.showcase-track{grid-template-columns:repeat(3,minmax(0,1fr))}.site-header .main-nav{display:none}.site-header .header-actions{margin-left:auto}.location-layout{grid-template-columns:1fr 1fr}.map-frame iframe{height:250px}}
@media(max-width:680px){.hero{gap:24px;padding:32px 0 28px}.hero h1{font-size:clamp(2.45rem,13vw,3.2rem)}.category-quick,.catalog,.how,.promo-strip{padding-bottom:34px}.category-card{min-height:170px}.category-card img{height:82px}.showcase-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.showcase-card img{aspect-ratio:1.08}.product-order{min-height:42px}.page-title{margin-bottom:17px}.page-shell{padding-top:27px}.about-intro-photo img,.about-photo img{height:230px}.gallery-section{padding-top:8px}.location-layout{grid-template-columns:1fr}.map-frame iframe{height:230px}.chat-widget{right:10px!important;bottom:10px!important}}

/* Fix item 01: force the product shelf to own the full content width. */
#catalog.catalog-grid{display:block!important;width:100%!important;max-width:none!important;min-width:0!important}.catalog-grid>.showcase-category,.catalog-grid>.showcase-fallback{display:block!important;width:100%!important;max-width:none!important;min-width:0!important}.showcase-viewport{display:block!important;width:100%!important;max-width:none!important;min-width:0!important}.showcase-track{display:grid!important;width:100%!important;max-width:none!important;min-width:0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}.showcase-card{display:flex!important;width:100%!important;min-width:0!important}.showcase-card-body{min-width:0!important}.showcase-fallback{grid-template-columns:repeat(4,minmax(0,1fr))!important}

/* Motion layer: purposeful, short, and disabled for users who prefer reduced motion. */
@keyframes fp-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fp-fade{from{opacity:0}to{opacity:1}}@keyframes fp-pop{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes fp-shimmer{from{background-position:200% 0}to{background-position:-200% 0}}
.hero-copy{animation:fp-rise .55s ease both}.hero-visual{animation:fp-pop .65s .08s ease both}.category-quick,.catalog,.how,.promo-strip,.about-intro,.about-story,.gallery-section,.location-section,.client-section,.page-title,.order-layout,.cart-layout,.auth-card{animation:fp-rise .55s ease both}.category-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.category-card:hover{transform:translateY(-7px) scale(1.015);border-color:#b8d2fa}.category-card img{transition:transform .35s ease}.category-card:hover img{transform:scale(1.06)}.showcase-card{animation:fp-rise .5s var(--delay,0ms) ease both;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.showcase-card:hover{transform:translateY(-7px);border-color:#b8d2fa}.showcase-card img{transition:transform .35s ease,filter .35s ease}.showcase-card:hover img{transform:scale(1.04);filter:saturate(1.06)}.product-order,.primary,.secondary,.showcase-filter{transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.product-order:hover,.primary:hover{transform:translateY(-2px)}.product-order:active,.primary:active,.secondary:active{transform:translateY(0) scale(.98)}.hero-float-card{animation:fp-fade .7s .4s ease both}.search-suggestions{animation:fp-pop .18s ease both}.custom-select-menu,.modal .success-card,.chat-panel{animation:fp-pop .2s ease both}.drop{transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.drop:hover{border-color:var(--fp-blue);background:#eef5ff;box-shadow:0 0 0 4px rgba(19,94,232,.08)}.cart-item{animation:fp-rise .35s ease both}.finish-option{transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.finish-option:hover{transform:translateY(-2px);border-color:#b8d2fa}
@media(max-width:900px){.showcase-track,.showcase-fallback{grid-template-columns:repeat(3,minmax(0,1fr))!important}}@media(max-width:680px){.showcase-track,.showcase-fallback{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Keep hero search suggestions above every following section. */
.hero{position:relative;z-index:20;overflow:visible!important}.hero-copy{position:relative;z-index:30;overflow:visible!important}.hero-search{position:relative;z-index:1000;overflow:visible!important}.search-suggestions{z-index:9999!important;isolation:isolate}.category-quick,.catalog,.how,.promo-strip{position:relative;z-index:1}

/* Fazima Print signature loader: a sheet passing through a registration mark. */
.fp-loading-screen{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow:hidden;background:#f7f9fc;color:#14243b;transition:opacity .5s ease,visibility .5s ease}.fp-loading-screen:before{content:'';position:absolute;width:68vmin;height:68vmin;border:1px solid rgba(19,94,232,.1);border-radius:50%;box-shadow:0 0 0 9vmin rgba(19,94,232,.025),0 0 0 18vmin rgba(19,94,232,.018)}.fp-loading-screen.is-ready{opacity:0;visibility:hidden;pointer-events:none}.fp-loader-stage{position:relative;z-index:1;display:grid;justify-items:center;gap:17px;width:min(300px,80vw);text-align:center}.fp-loader-mark{position:relative;width:118px;height:118px;display:grid;place-items:center}.fp-loader-ring{position:absolute;inset:5px;border:1px solid #b9d1f7;border-top-color:#135ee8;border-right-color:#135ee8;border-radius:50%;animation:fp-loader-spin 1.7s cubic-bezier(.65,.05,.36,1) infinite}.fp-loader-ring:after{content:'';position:absolute;top:-4px;right:10px;width:7px;height:7px;border-radius:50%;background:#f4b942;box-shadow:0 0 0 5px rgba(244,185,66,.14)}.fp-loader-sheet{position:absolute;display:block;width:54px;height:68px;border:2px solid #135ee8;border-radius:5px;background:#fff;box-shadow:0 9px 20px rgba(20,60,120,.12)}.fp-loader-sheet:before,.fp-loader-sheet:after{content:'';position:absolute;left:10px;right:10px;height:3px;border-radius:3px;background:#d7e6fc}.fp-loader-sheet:before{top:20px}.fp-loader-sheet:after{top:31px;right:20px}.fp-loader-sheet-back{transform:translate(-12px,-7px) rotate(-10deg);border-color:#9ab9ef;background:#eef5ff;animation:fp-sheet-back 2.4s ease-in-out infinite}.fp-loader-sheet-front{transform:translate(11px,7px) rotate(8deg);animation:fp-sheet-front 2.4s ease-in-out infinite}.fp-loader-cut{position:relative;z-index:2;display:grid;place-items:center;width:35px;height:35px;border-radius:10px;color:#fff;background:#135ee8;font-size:1.45rem;font-weight:900;box-shadow:0 7px 16px rgba(19,94,232,.25);animation:fp-loader-pulse 1.8s ease-in-out infinite}.fp-loader-copy{display:grid;justify-items:center;gap:6px}.fp-loader-copy img{width:138px;height:auto}.fp-loader-copy span{color:#6c7a90;font-size:.61rem;font-weight:850;letter-spacing:.2em}.fp-loader-progress{width:170px;height:3px;overflow:hidden;border-radius:10px;background:#dce7f6}.fp-loader-progress i{display:block;width:44%;height:100%;border-radius:10px;background:#135ee8;animation:fp-loader-progress 1.3s ease-in-out infinite}.fp-loader-status{margin:0;color:#6c7a90;font-size:.72rem}.fp-loader-dots{display:inline-block;width:18px;overflow:hidden;vertical-align:bottom;animation:fp-loader-dots 1.1s steps(4,end) infinite}
@keyframes fp-loader-spin{to{transform:rotate(360deg)}}@keyframes fp-sheet-back{0%,100%{transform:translate(-12px,-7px) rotate(-10deg)}50%{transform:translate(-17px,-11px) rotate(-14deg)}}@keyframes fp-sheet-front{0%,100%{transform:translate(11px,7px) rotate(8deg)}50%{transform:translate(16px,11px) rotate(12deg)}}@keyframes fp-loader-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes fp-loader-progress{0%{transform:translateX(-120%)}100%{transform:translateX(350%)}}@keyframes fp-loader-dots{0%{width:0}100%{width:18px}}@media(prefers-reduced-motion:reduce){.fp-loader-ring,.fp-loader-sheet-back,.fp-loader-sheet-front,.fp-loader-cut,.fp-loader-progress i,.fp-loader-dots{animation:none}.fp-loader-progress i{width:100%}}

.fp-loader-cut{display:block;width:78px;height:auto;max-height:42px;object-fit:contain;padding:5px;border:0;border-radius:8px;background:#fff;box-shadow:0 7px 16px rgba(19,94,232,.16)}

/* Chat is an anchored floating surface; opening it must never move the launcher. */
.chat-widget{position:fixed!important;right:22px!important;bottom:22px!important;z-index:200!important;width:max-content;transform:none!important;opacity:1!important}.chat-launcher{position:relative!important;z-index:2;display:flex!important;align-items:center;gap:9px;min-height:46px!important;padding:0 16px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:13px!important;color:#fff!important;background:linear-gradient(135deg,#135ee8,#0b43b2)!important;box-shadow:0 12px 26px rgba(19,94,232,.25)!important;font-size:.78rem!important;font-weight:800;transition:transform .2s ease,box-shadow .2s ease!important}.chat-launcher:hover{transform:translateY(-3px)!important;box-shadow:0 16px 30px rgba(19,94,232,.3)!important}.chat-launcher span{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;color:#135ee8;background:#fff;font-size:.9rem}.chat-launcher i{padding:3px 6px;border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#dceaff;font-size:.58rem;font-style:normal;letter-spacing:.05em}.chat-panel{position:absolute!important;right:0;bottom:calc(100% + 12px);display:flex;flex-direction:column;width:min(380px,calc(100vw - 28px));height:min(520px,calc(100vh - 125px));overflow:hidden;border:1px solid #dbe6f4!important;border-radius:18px!important;background:#fff!important;box-shadow:0 22px 55px rgba(20,45,80,.2)!important;transform-origin:bottom right}.chat-panel[hidden]{display:none!important}.chat-head{display:flex;align-items:center;justify-content:space-between;min-height:70px;padding:15px 17px;color:#fff!important;background:linear-gradient(135deg,#14243b,#1d3d68)!important;border:0!important}.chat-head b{font-size:.84rem}.chat-head small{margin-top:3px;color:#c3d5ee!important;font-size:.68rem}.chat-head button{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.25);border-radius:50%;color:#fff;background:transparent;font-size:1.15rem;cursor:pointer}.chat-messages{flex:1;min-height:0;max-height:none!important;padding:17px;background:#f4f8fd!important}.chat-bubble{max-width:82%;margin:8px 0!important;padding:10px 12px!important;border:1px solid #e2eaf4;border-radius:13px!important;color:#30425d;background:#fff!important;font-size:.78rem;line-height:1.45;box-shadow:0 3px 10px rgba(30,60,100,.04)}.chat-bubble.user{margin-left:auto!important;border:0;color:#fff;background:#135ee8!important}.chat-form{display:flex;align-items:center;gap:8px;min-height:66px;padding:11px!important;border-top:1px solid #e5ebf3;background:#fff}.chat-form input{min-height:42px!important;margin:0!important;border-radius:11px!important;background:#f7f9fc!important}.chat-form button{flex:0 0 42px;width:42px;height:42px;border-radius:11px!important;background:#135ee8!important;font-weight:900}.chat-pending{background:#eaf2ff!important;color:#135ee8!important}.chat-pending:after{content:'';display:inline-block;width:4px;height:4px;margin-left:5px;border-radius:50%;background:currentColor;box-shadow:7px 0 currentColor,14px 0 currentColor;animation:fp-chat-dots 1s infinite}.chat-launcher:focus-visible,.chat-head button:focus-visible,.chat-form button:focus-visible{outline:3px solid rgba(19,94,232,.3);outline-offset:3px}@keyframes fp-chat-dots{0%,100%{opacity:.3}50%{opacity:1}}
@media(max-width:680px){.chat-widget{right:14px!important;bottom:14px!important}.chat-panel{right:0;bottom:calc(100% + 10px);width:min(380px,calc(100vw - 28px));height:min(500px,calc(100vh - 105px))}.chat-launcher{min-height:43px!important;padding-inline:13px!important}}

/* Macintosh-inspired Fazima navigation: a floating window bar with Fazima colors. */
.site-header{position:sticky!important;top:12px!important;width:min(1210px,calc(100% - 32px))!important;min-height:66px!important;margin:12px auto 0!important;padding:8px 12px!important;gap:14px!important;border:1px solid rgba(185,207,237,.9)!important;border-radius:18px!important;background:rgba(255,255,255,.86)!important;box-shadow:0 12px 30px rgba(31,64,110,.1),inset 0 1px 0 rgba(255,255,255,.95)!important;backdrop-filter:blur(20px)!important}.site-header:before{content:'';display:block;flex:0 0 10px;width:10px;height:10px;margin-left:3px;border-radius:50%;background:#f35c5c;box-shadow:17px 0 #f4b942,34px 0 #31b979}.site-header .brand-image{display:flex;align-items:center;flex:0 0 auto;margin-left:22px;padding-right:12px;border-right:1px solid #e1e9f4}.site-header .brand-image img{width:132px;max-height:42px;object-fit:contain}.site-header .main-nav{display:flex;align-items:center;justify-content:flex-start;gap:3px;margin:0!important;padding:4px;border:1px solid #e5edf7;border-radius:12px;background:#f3f7fc}.site-header .main-nav a{display:flex;align-items:center;min-height:34px;padding:0 12px;border-radius:9px;color:#60718a;font-size:.78rem;font-weight:800;white-space:nowrap;transition:color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}.site-header .main-nav a:hover{color:var(--fp-blue);background:#fff;box-shadow:0 3px 9px rgba(35,75,130,.09);transform:translateY(-1px)}.site-header .main-nav a.active{color:#fff;background:var(--fp-blue);box-shadow:0 4px 10px rgba(19,94,232,.2)}.site-header .header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.site-header .header-actions>a{display:flex;align-items:center;min-height:38px;padding:0 11px;border-radius:10px;font-size:.76rem;transition:background .18s ease,color .18s ease}.site-header .header-actions>a:hover{background:#edf5ff}.site-header .cart-link{color:var(--fp-navy)!important;border:1px solid #dce7f4;background:#fff}.site-header .cart-link b{margin-left:5px}.site-header .login-link{color:#fff!important;background:var(--fp-blue)}.site-header .login-link:hover{color:#fff!important;background:var(--fp-blue-dark)!important}.site-header .header-trust{padding-left:8px;border-left:1px solid #e1e9f4;font-size:.66rem}.site-header .mobile-menu{order:4;margin-left:0!important}
@media(max-width:1100px){.site-header .main-nav a{padding-inline:8px;font-size:.72rem}.site-header .brand-image img{width:120px}.site-header .header-trust{display:none}}
@media(max-width:900px){.site-header{top:8px!important;margin-top:8px!important}.site-header:before{display:none}.site-header .brand-image{margin-left:0;padding-right:9px}.site-header .main-nav{position:absolute!important;top:calc(100% + 8px)!important;left:0!important;right:0!important;display:none!important;align-items:stretch!important;flex-direction:column!important;padding:8px!important;border:1px solid #dce7f4!important;border-radius:14px!important;background:rgba(255,255,255,.97)!important;box-shadow:0 15px 35px rgba(31,64,110,.15)!important}.site-header .main-nav.mobile-open{display:flex!important}.site-header .main-nav a{justify-content:flex-start;min-height:42px;padding-inline:13px;font-size:.8rem}.site-header .header-actions{margin-left:auto}.site-header .header-actions>a{font-size:.7rem}.site-header .mobile-menu{display:inline-grid!important;place-items:center;width:39px;height:39px;border:1px solid #dce7f4;border-radius:10px;background:#fff;color:var(--fp-navy);font-size:1.1rem;cursor:pointer}}
@media(max-width:680px){.site-header{width:calc(100% - 22px)!important;min-height:58px!important;padding:7px 8px!important;border-radius:15px!important}.site-header .brand-image{border:0}.site-header .brand-image img{width:113px;max-height:36px}.site-header .header-actions{gap:5px}.site-header .cart-link{padding-inline:8px!important;font-size:0!important}.site-header .cart-link:before{content:'🛒';font-size:.95rem}.site-header .cart-link b{font-size:.66rem}.site-header .login-link{display:none!important}.site-header .main-nav{top:calc(100% + 7px)!important}}

/* The hamburger is a mobile control only; never expose it in desktop navbar. */
.site-header .mobile-menu{display:none!important}
@media(max-width:900px){.site-header .mobile-menu{display:inline-grid!important}}

/* Keep the About-page map CTA label visible above all generic link rules. */
.location-copy a.map-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:max-content!important;min-width:168px!important;min-height:44px!important;padding:0 17px!important;color:#fff!important;background:var(--fp-blue)!important;font-size:.8rem!important;font-weight:800!important;line-height:1!important;text-indent:0!important;white-space:nowrap!important;opacity:1!important;visibility:visible!important}.location-copy a.map-link:hover{color:#fff!important;background:var(--fp-blue-dark)!important}

.promo-countdown{position:relative;z-index:2;display:grid;gap:5px;width:max-content;margin-top:18px;padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(5,24,50,.24);backdrop-filter:blur(8px)}.promo-countdown>span{color:#d7e7f5;font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.promo-countdown>div{display:flex;align-items:center;gap:5px;color:#fff}.promo-countdown b{display:grid;place-items:center;min-width:28px;height:30px;border-radius:6px;color:#14243b;background:#ffd28f;font:800 .92rem 'DM Mono',monospace}.promo-countdown i{color:#ffd28f;font-style:normal;font-weight:900}.promo-countdown small{color:#b8cee0;font-size:.5rem;word-spacing:5px;text-align:center}.promo-countdown.is-ended{opacity:.7}.promo-countdown.is-ended b{background:#d4dce7}
@media(max-width:680px){.promo-countdown{margin-top:14px;padding:8px 10px}.promo-countdown b{min-width:25px;height:27px;font-size:.8rem}.promo-countdown small{font-size:.45rem}}

/* Anchor targets sit below the floating navbar instead of hiding beneath it. */
html{scroll-padding-top:102px}#products,#categories,#promos,#how-it-works,#gallery{scroll-margin-top:102px}

/* Persistent anchored window bar: stays visible while the page scrolls. */
body{padding-top:90px}.site-header{position:fixed!important;top:12px!important;left:50%!important;transform:translateX(-50%)!important;margin:0!important}.fp-loading-screen{top:0!important}
@media(max-width:680px){body{padding-top:76px}body[data-page="home"]{padding-top:76px}body[data-page="home"].mobile-search-open{padding-top:128px}.site-header{top:8px!important}}

/* macOS-inspired filter control, carrying Fazima's blue/teal/orange accents. */
.showcase-filter-wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.showcase-filter-label{display:inline-flex;align-items:center;gap:6px;color:#71828a;font-size:.68rem;font-weight:800;letter-spacing:.04em;white-space:nowrap}
.showcase-filter-label i{width:7px;height:7px;border-radius:50%;background:#f39b62;box-shadow:0 0 0 3px #f39b6226}
.showcase-filters{display:flex;align-items:center;gap:3px;padding:4px;border:1px solid #cde9e2;border-radius:14px;background:rgba(255,255,255,.72);box-shadow:0 7px 22px #18374712,inset 0 1px #fff;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.showcase-filter{position:relative;min-height:34px;padding:0 12px;border:0;border-radius:10px;color:#71828a;background:transparent;font:inherit;font-size:.72rem;font-weight:800;white-space:nowrap;cursor:pointer;transition:color .2s ease,background-color .2s ease,box-shadow .2s ease,transform .2s ease}
.showcase-filter:hover{color:#168e87;background:#eaf7f4}
.showcase-filter.active{color:#172b3b;background:#fff;box-shadow:0 3px 9px #18374718,inset 0 0 0 1px #dce9e6}
.showcase-filter.active:before{content:"";display:inline-block;width:5px;height:5px;margin:0 6px 2px 0;border-radius:50%;background:#168e87;box-shadow:0 0 0 2px #168e8728;vertical-align:middle}
.showcase-filter:focus-visible{outline:3px solid #168e8740;outline-offset:2px}
.category-card.active{border-color:#168e87;box-shadow:0 0 0 3px #168e8720,0 12px 28px #18374718}

/* Category selector: three clear use-case lanes drive the product shelf. */
.category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.category-card{position:relative;min-height:310px;padding:0 20px 20px;border:1px solid #dce7f4;border-radius:24px;box-shadow:0 12px 30px rgba(31,64,110,.07);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.category-card:after{content:'';position:absolute;right:18px;bottom:17px;width:42px;height:3px;border-radius:99px;background:currentColor;opacity:.22}
.category-card-top{position:absolute;top:0;right:0;left:0;z-index:2;display:flex;align-items:center;justify-content:space-between;min-height:49px;padding:0 20px;color:#fff;font:700 .62rem 'DM Mono',monospace;letter-spacing:.08em;background:linear-gradient(180deg,rgba(12,34,58,.58),transparent)}
.category-arrow{display:block;color:currentColor;font:700 1.25rem/1 Inter,system-ui,sans-serif;transition:transform .24s ease,color .24s ease}
.category-card img{display:block;width:calc(100% + 40px);height:auto;aspect-ratio:1;object-fit:contain;margin:0 -20px;background:#edf4f8;filter:saturate(.9);transition:transform .4s ease,filter .4s ease}
.category-card b{margin-top:18px;font-size:1.35rem;letter-spacing:-.04em}
.category-card span{max-width:270px;margin-top:7px;color:#71828a;font-size:.78rem;line-height:1.55}
.category-card:hover{transform:translateY(-8px);box-shadow:0 20px 42px rgba(31,64,110,.14)}
.category-card:hover img{transform:scale(1.04);filter:saturate(1.12)}
.category-card:hover .category-arrow,.category-card.active .category-arrow{color:currentColor;transform:translate(3px,-2px) rotate(8deg)}
.category-card-outdoor{color:#1769aa;background:linear-gradient(160deg,#fff 0%,#f0f7fc 100%)}
.category-card-indoor{color:#168e87;background:linear-gradient(160deg,#fff 0%,#f0faf7 100%)}
.category-card-a3{color:#d48445;background:linear-gradient(160deg,#fff 0%,#fff7ef 100%)}
.category-card.active{border-color:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 14%,transparent),0 20px 42px rgba(31,64,110,.14)}
@media(max-width:680px){.category-grid{grid-template-columns:1fr;gap:12px}.category-card{min-height:0;padding-bottom:18px}.category-card img{aspect-ratio:1}.category-card span{max-width:none}.category-card:after{display:none}}
@media(max-width:680px){.showcase-filter-wrap{align-items:flex-start;flex-direction:column;gap:7px;width:100%}.showcase-filters{width:100%;overflow-x:auto;justify-content:flex-start;padding:4px}.showcase-filter{flex:0 0 auto;padding-inline:11px}}

/* Keep the landing page calm at tablet widths instead of letting the window bar
   and the filter control compete for the same horizontal space. */
@media (min-width:681px) and (max-width:1024px){
  .shell{width:min(920px,calc(100% - 32px))}
  .hero{gap:30px;padding:52px 0 54px}
  .hero h1{font-size:clamp(3rem,6vw,4.1rem)}
  .hero-visual,.hero-image-main{height:300px}
  .hero-float-card{right:0;bottom:10px;max-width:190px;padding:13px}
  .section-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .section-heading>p{font-size:.88rem}
  .showcase-heading{align-items:stretch;flex-direction:column;gap:15px}
  .showcase-filter-wrap{justify-content:space-between;width:100%}
  .showcase-filters{max-width:100%;overflow-x:auto;justify-content:flex-start;flex-wrap:nowrap}
  .showcase-filter{flex:0 0 auto}
  .category-card span{font-size:.7rem}
}

.product-info-visual{display:grid;place-items:center;flex:0 0 154px;overflow:hidden;border:1px solid #dce9e6;border-radius:18px;background:#e8f1ef}.product-info-visual img{display:block;width:100%;height:100%;object-fit:contain}.product-info-large .product-info-badge{flex-basis:84px}
@media(max-width:680px){.product-info-visual{flex:0 0 96px;height:96px}.product-info-large .product-info-badge{display:none}}
.product-page{padding:32px 0 90px}.product-breadcrumb{display:flex;align-items:center;gap:9px;margin-bottom:18px;color:#71828a;font-size:.72rem}.product-breadcrumb a{color:#168e87;font-weight:800;text-decoration:none}.product-commerce-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:28px;align-items:stretch;margin-bottom:24px}.product-gallery-panel{position:relative;display:flex;flex-direction:column;min-height:480px;overflow:hidden;border-radius:28px;background:linear-gradient(145deg,#dcefeb,#eff8f5);box-shadow:0 18px 45px #18374716}.product-gallery-main{display:grid;place-items:center;flex:1;padding:34px}.product-gallery-main img{display:block;width:100%;height:100%;max-height:430px;object-fit:contain;mix-blend-mode:multiply}.gallery-badge{position:absolute;z-index:2;top:22px;left:22px;padding:7px 10px;border-radius:999px;color:#fff;background:#168e87;font:700 .58rem 'DM Mono',monospace;letter-spacing:.1em}.gallery-caption{display:flex;align-items:center;gap:9px;padding:14px 20px;color:#4f7775;background:#ffffff80;font:700 .58rem 'DM Mono',monospace;letter-spacing:.07em}.gallery-caption i{color:#f39b62;font-style:normal}.product-summary-panel{display:flex;flex-direction:column;justify-content:center;padding:28px 10px}.product-summary-panel .product-info-kicker{color:#168e87;font:700 .64rem 'DM Mono',monospace;letter-spacing:.13em}.product-summary-panel h1{margin:10px 0 8px;color:#172b3b;font-size:clamp(2.2rem,5vw,4.4rem);line-height:.95;letter-spacing:-.065em}.product-rating-row{display:flex;align-items:center;gap:8px;color:#71828a;font-size:.75rem}.product-rating-row b:first-child{color:#e09452}.product-rating-row b:nth-of-type(2){color:#168e87}.product-rating-row small{font-size:.7rem}.product-price-block{display:grid;gap:2px;margin:25px 0 12px;padding-top:17px;border-top:1px solid #dce9e6}.product-price-block span{color:#71828a;font-size:.7rem}.product-price-block strong{color:#168e87;font-size:1.8rem;letter-spacing:-.04em}.product-summary-panel>p{max-width:580px;margin:0;color:#526f78;font-size:.9rem;line-height:1.7}.product-highlights{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.product-highlights span{padding:8px 10px;border:1px solid #cde9e2;border-radius:999px;color:#168e87;background:#f4fbf9;font-size:.67rem;font-weight:800}.product-options-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:start;gap:20px}.product-options-card{padding:28px;border:1px solid #dce9e6;border-radius:24px;background:#fff;box-shadow:0 18px 45px #18374712}.options-heading>div{display:flex;gap:12px;align-items:flex-start;margin-bottom:22px}.options-step{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;color:#fff;background:#168e87;font-weight:900}.options-heading h2{margin:3px 0;color:#172b3b;font-size:1.35rem}.options-heading p{margin:3px 0;color:#71828a;font-size:.78rem}.product-order-summary{display:grid;gap:14px}.secure-note{display:grid;gap:4px;padding:16px 18px;border:1px solid #cde9e2;border-radius:17px;color:#168e87;background:#f2faf8}.secure-note span{color:#71828a;font-size:.72rem}.product-action-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.product-action-row button{width:100%;min-height:48px}.product-cart-button{color:#168e87!important;background:#edf8f5!important}.product-cart-button[hidden]{display:none!important}
@media(max-width:850px){.product-commerce-grid,.product-options-layout{grid-template-columns:1fr}.product-gallery-panel{min-height:360px}.product-summary-panel{padding:10px 0 20px}.product-summary-panel h1{font-size:clamp(2.3rem,10vw,4rem)}.product-order-summary{order:-1}}
@media(max-width:520px){.product-page{padding-top:22px}.product-breadcrumb{margin-bottom:12px}.product-gallery-panel{min-height:300px;border-radius:22px}.product-gallery-main{padding:24px}.gallery-caption{font-size:.5rem}.product-options-card{padding:18px;border-radius:20px}.product-action-row{grid-template-columns:1fr}.product-action-row .product-cart-button:not([hidden]){order:2}}

/* Product cards are complete links, including the image and title. */
.showcase-card{cursor:pointer}
.showcase-rating{display:flex;align-items:center;gap:5px;margin:7px 0 2px;color:#71828a;font-size:.66rem}.showcase-rating b{color:#e09452;font-weight:850}.showcase-rating span{white-space:nowrap}
.product-page .secure-note{display:none!important}
.product-page,.product-options-layout,.product-options-card,.order-layout,.order-card,.payment-page,.midtrans-checkout-shell,.midtrans-checkout-card{min-width:0}.drop{box-sizing:border-box;width:100%;max-width:100%;min-width:0;overflow:hidden}.drop strong,.drop #fileName{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drop:has(input[type=file]:valid){max-width:100%}
.site-header .main-nav,.site-header .header-actions{min-width:0}.site-header .main-nav a{overflow:hidden;text-overflow:ellipsis}
.product-page .advanced-row,.product-page #designPreview,.product-page #layoutForm>label:has(input[name="customer"]){display:none!important}.product-page .product-options-card{overflow:hidden}.product-page .field-grid,.product-page .finishing-grid,.product-page .product-extras{min-width:0}.product-page .finish-option{min-width:0;overflow:hidden}.product-page .finish-copy{min-width:0}.product-page .finish-copy b,.product-page .finish-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.product-page .product-cart-button[hidden]{display:block!important}
.order-layout,.review-grid,.payment-layout{width:100%;min-width:0}.order-card,.review-card,.summary-card,.payment-card{min-width:0;overflow:hidden}.order-card .field-grid,.order-card .advanced-fields,.order-card .finishing-grid,.review-card,.summary-card{min-width:0}.order-card input,.order-card select,.order-card textarea,.product-options-card input,.product-options-card select{max-width:100%;min-width:0}.selected-product>div{min-width:0}.selected-product b,.selected-product span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:680px){.product-page{padding-bottom:45px}.product-detail-hero{padding-bottom:22px}.product-options-layout{gap:12px}.product-options-card{padding:16px}.product-action-row{grid-template-columns:1fr}.order-layout{gap:12px}.order-card{padding:16px}.review-card,.payment-card{padding:16px}.payment-page{padding:30px 0 48px}.payment-page-heading{margin-bottom:20px}.payment-page-heading h1{font-size:clamp(2.55rem,13vw,3.7rem)}.midtrans-checkout-card,.midtrans-order-card{min-width:0}.midtrans-checkout-brand{gap:8px}.checkout-lock{font-size:.55rem;padding-inline:7px}.site-header .header-actions .payment-secure-badge{max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.58rem}}
.product-reviews{margin:42px 0 86px;padding:30px;border:1px solid #dce9e6;border-radius:24px;background:#fff;box-shadow:0 18px 45px #18374712}.reviews-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:24px;border-bottom:1px solid #dce9e6}.reviews-heading h2{margin:5px 0 7px;color:#172b3b;font-size:1.7rem}.reviews-heading p{margin:0;color:#71828a;font-size:.8rem}.reviews-score{display:grid;gap:2px;min-width:150px;padding:14px 16px;border-radius:15px;background:#f3fbf9}.reviews-score strong{color:#168e87;font-size:2rem;line-height:1}.reviews-score span,.review-item-top b{color:#e09452;letter-spacing:.08em}.reviews-score small{color:#71828a;font-size:.65rem}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-top:20px}.review-item{display:grid;gap:8px;padding:18px;border:1px solid #e1ecea;border-radius:16px;background:#fbfefd}.review-item-top{display:flex;justify-content:space-between;gap:8px}.review-item-top small{color:#9aa8aa;font-size:.65rem}.review-item p{margin:0;color:#526f78;font-size:.8rem;line-height:1.65}.review-item>strong{color:#172b3b;font-size:.78rem}.review-item>span{color:#168e87;font-size:.63rem;font-weight:800}@media(max-width:680px){.product-reviews{margin:28px 0 55px;padding:20px 17px;border-radius:20px}.reviews-heading{align-items:flex-start;flex-direction:column}.reviews-score{width:100%}.reviews-grid{grid-template-columns:1fr;gap:10px}.review-item{padding:15px}}
.review-preview .mockup-preview-shell{position:relative;min-height:360px;display:grid;place-items:center}.review-preview #reviewPreviewImage{min-height:320px}.review-preview #reviewPreviewEmpty{color:#71828a;font-size:.85rem}.review-preview .preview-copy button{justify-self:start;margin-top:8px}.payment-brand img{width:104px;height:42px;padding:7px 10px;border-radius:10px;background:#fff;box-shadow:0 4px 12px #18374712}.payment-qr-real{width:248px;height:248px;margin:8px auto;padding:14px;border-radius:18px;background:#fff;box-shadow:0 8px 24px #18374718}.payment-qr-real svg{display:block;width:100%;height:100%;image-rendering:pixelated}.payment-demo-flow small,.payment-account small{color:#71828a;font-size:.72rem;line-height:1.5}.payment-code{display:block;text-align:center;margin-top:8px;color:#71828a;font-size:.72rem;letter-spacing:.04em}@media(max-width:760px){.payment-qr-real{width:214px;height:214px}}
.midtrans-sandbox-panel{display:grid;gap:7px;margin-top:8px;padding:16px;border:1px solid #dce9e6;border-radius:16px;background:#f8fcfb}.midtrans-label{color:#168e87;font:700 .62rem 'DM Mono',monospace;letter-spacing:.1em}.midtrans-sandbox-panel p{margin:0;color:#71828a;font-size:.75rem;line-height:1.5}.midtrans-sandbox-panel button{width:100%;margin-top:5px}
.review-summary .payment-select-label{display:none!important}
.payment-page{padding:58px 0 90px}.payment-page-heading{max-width:680px;margin-bottom:32px}.payment-page-heading h1{margin:8px 0 10px;color:#172b3b;font-size:clamp(2.7rem,6vw,5rem);line-height:.9;letter-spacing:-.07em}.payment-page-heading p{max-width:560px;color:#71828a;line-height:1.7}.midtrans-checkout-shell{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.55fr);gap:20px;align-items:start}.midtrans-checkout-card,.midtrans-order-card{padding:28px;border:1px solid #dce9e6;border-radius:24px;background:#fff;box-shadow:0 18px 45px #18374712}.midtrans-checkout-brand{display:flex;align-items:center;gap:12px;padding-bottom:20px;border-bottom:1px solid #dce9e6}.midtrans-checkout-brand>div{display:grid;gap:3px}.midtrans-checkout-brand b{color:#172b3b}.midtrans-checkout-brand small,.midtrans-order-card>small{color:#71828a;font-size:.72rem}.midtrans-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:#fff;background:#172b3b;font-size:1.35rem;font-weight:900}.checkout-lock{margin-left:auto;padding:7px 10px;border-radius:999px;color:#168e87;background:#eff9f6;font-size:.65rem;font-weight:800}.midtrans-checkout-content{min-height:130px;padding:25px 0 18px}.midtrans-loading,.midtrans-ready,.midtrans-not-configured{display:grid;gap:8px;padding:18px;border-radius:15px;background:#f7fbfa}.midtrans-ready b,.midtrans-not-configured b{color:#172b3b}.midtrans-ready span,.midtrans-not-configured span{color:#71828a;font-size:.78rem;line-height:1.6}.midtrans-open-button{width:100%;min-height:50px}.midtrans-order-card{position:sticky;top:95px}.midtrans-order-card h2{margin:8px 0 20px;color:#172b3b;font-size:1.1rem}.midtrans-order-card #paymentOrderSummary{display:grid;gap:6px;padding:16px 0;border-top:1px solid #dce9e6;border-bottom:1px solid #dce9e6}.midtrans-order-card #paymentOrderSummary b{color:#172b3b}.midtrans-order-card #paymentOrderSummary span,.midtrans-order-card #paymentOrderSummary small{color:#71828a;font-size:.75rem}.midtrans-order-card .checkout-total{margin-top:16px}.midtrans-order-card>small{display:block;margin-top:12px;line-height:1.5}@media(max-width:760px){.payment-page{padding-top:32px}.midtrans-checkout-shell{grid-template-columns:1fr}.midtrans-order-card{position:static;order:-1}.midtrans-checkout-card,.midtrans-order-card{padding:20px;border-radius:20px}.checkout-lock{font-size:.58rem}}

/* Final product-description composition */
.product-detail-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:42px;align-items:center;padding:24px 0 38px}.product-detail-media{min-height:500px;display:flex;flex-direction:column;overflow:hidden;border-radius:30px;background:linear-gradient(145deg,#d9efeb,#f6fbfa);box-shadow:0 20px 55px #18374718}.product-detail-media .product-gallery-main{flex:1;min-height:430px}.product-detail-media .product-gallery-main img{mix-blend-mode:multiply}.product-media-tag{padding:22px 24px 0;color:#168e87;font:700 .63rem 'DM Mono',monospace;letter-spacing:.12em}.product-media-footer{display:flex;gap:12px;padding:16px 22px;color:#4f7775;background:#ffffff90;font:700 .58rem 'DM Mono',monospace;letter-spacing:.08em}.product-detail-copy{max-width:580px}.product-detail-copy h1{margin:11px 0 10px;color:#172b3b;font-size:clamp(3rem,6vw,5.7rem);line-height:.88;letter-spacing:-.075em}.product-detail-copy>p{max-width:500px;color:#526f78;font-size:1rem;line-height:1.75}.product-benefits{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}.product-benefits span{padding:9px 12px;border:1px solid #cde9e2;border-radius:999px;color:#168e87;background:#f3fbf9;font-size:.69rem;font-weight:800}.product-description-panel{display:grid;grid-template-columns:1fr 1.35fr;gap:30px;margin:12px 0 26px;padding:27px 30px;border:1px solid #dce9e6;border-radius:24px;background:#f8fcfb}.product-description-panel h2{margin:5px 0 8px;color:#172b3b;font-size:1.6rem}.product-description-panel p{max-width:450px;margin:0;color:#60777d;line-height:1.7;font-size:.86rem}.product-detail-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.product-detail-facts div{display:grid;align-content:start;gap:4px;padding:15px;border-left:1px solid #dce9e6}.product-detail-facts b{color:#e09452;font-size:1.1rem}.product-detail-facts span{color:#172b3b;font-size:.75rem;font-weight:850}.product-detail-facts small{color:#71828a;font-size:.68rem;line-height:1.45}.product-section-heading{display:flex;gap:13px;align-items:flex-start;margin-bottom:24px}.section-index{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:12px;color:#fff;background:#168e87;font-weight:900}.product-section-heading h2{margin:4px 0;color:#172b3b;font-size:1.5rem}.product-section-heading p{margin:4px 0;color:#71828a;font-size:.8rem}
@media(max-width:850px){.product-detail-hero{grid-template-columns:1fr;gap:22px;padding-top:10px}.product-detail-media{min-height:360px}.product-detail-media .product-gallery-main{min-height:300px}.product-detail-copy{max-width:none}.product-description-panel{grid-template-columns:1fr}.product-detail-facts{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.product-detail-hero{gap:18px}.product-detail-media{min-height:290px;border-radius:22px}.product-detail-media .product-gallery-main{min-height:230px}.product-media-tag{padding:17px 17px 0;font-size:.53rem}.product-media-footer{padding:12px 15px;font-size:.46rem;gap:7px}.product-detail-copy h1{font-size:clamp(2.7rem,15vw,4rem)}.product-detail-copy>p{font-size:.86rem}.product-description-panel{padding:20px 18px;border-radius:20px}.product-detail-facts{grid-template-columns:1fr}.product-detail-facts div{border-left:0;border-top:1px solid #dce9e6;padding:12px 0}.product-section-heading h2{font-size:1.24rem}}

/* Mobile keeps the product promise, search, and action; secondary copy yields
   space to the cards and the actual ordering controls. */
@media(max-width:680px){
  .hero{gap:20px;padding:30px 0 28px}
  .hero h1{font-size:clamp(2.45rem,12vw,3.05rem);letter-spacing:-.07em}
  .hero-search{margin:14px 0 0}
  .hero-search input{min-height:49px;font-size:.86rem}
  .hero-actions{margin-top:14px}
  .hero-float-card small,.category-card span,.section-heading>p,.showcase-heading p,.how-grid p,.promo-strip>p,.footer p{display:none}
  .category-quick,.catalog,.how,.promo-strip{padding-bottom:48px}
  .section-heading{gap:4px;margin-bottom:15px}
  .section-heading h2{font-size:clamp(1.65rem,8vw,2.15rem)}
  .showcase-heading{gap:12px;margin-bottom:16px}
  .showcase-heading h3{font-size:1.1rem}
  .showcase-filter-label{font-size:.64rem}
  .showcase-filters{max-width:100%;box-shadow:0 5px 15px #18374710}
  .showcase-filter{min-height:32px;padding-inline:10px;font-size:.68rem}
  .showcase-card h3{min-height:40px}
  .how-grid h3{margin-top:13px;font-size:.9rem}
  .promo-strip{padding:18px}
}

.payment-methods-note{display:grid;gap:6px;margin-top:14px;padding:12px 14px;border:1px solid rgba(111,210,255,.2);border-radius:14px;background:rgba(9,28,55,.45);color:#dceeff;font-size:.82rem;line-height:1.5}
.payment-methods-note b{color:#ffd84d;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.payment-methods-note span{color:#a9c7e6}

/* Quick cart configuration modal from the product showcase. */
.quick-add-modal{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:20px}.quick-add-modal[hidden]{display:none}.quick-add-backdrop{position:absolute;inset:0;background:rgba(11,27,48,.48);backdrop-filter:blur(5px)}.quick-add-card{position:relative;z-index:1;width:min(620px,100%);max-height:min(ы calc(100vh - 40px),760px);overflow:auto;padding:28px;border:1px solid #dce9e6;border-radius:24px;background:#fff;box-shadow:0 24px 80px rgba(12,33,54,.25)}.quick-add-close{position:absolute;top:15px;right:17px;width:34px;height:34px;border:1px solid var(--fp-line);border-radius:50%;color:var(--fp-muted);background:#fff;font-size:1.4rem;line-height:1;cursor:pointer}.quick-add-heading{padding-right:42px;margin-bottom:22px}.quick-add-heading h2{margin:7px 0 4px;color:var(--fp-text);font-size:clamp(1.45rem,4vw,2rem)}.quick-add-heading p{margin:0;color:var(--fp-muted);font-size:.82rem}.quick-add-fields,.quick-custom-size{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-custom-size{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.quick-add-fields label,.quick-custom-size label{color:var(--fp-text);font-size:.8rem;font-weight:750}.quick-add-fields small,.quick-help{display:block;margin-top:5px;color:var(--fp-muted);font-size:.7rem;font-weight:500}.quick-add-section{margin:20px 0 0;padding:15px;border:1px solid var(--fp-line);border-radius:15px}.quick-add-section legend{padding:0 6px;color:var(--fp-blue);font-size:.7rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.quick-finishing-options{display:grid;gap:8px}.quick-finishing-options label{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid var(--fp-line);border-radius:10px;cursor:pointer}.quick-finishing-options label:has(input:checked){border-color:#9ab9ef;background:#f5f9ff}.quick-finishing-options input,.quick-choice-row input,.quick-check input{width:auto;min-height:0;margin:0}.quick-finishing-options span{display:grid;flex:1;gap:2px}.quick-finishing-options b{font-size:.78rem}.quick-finishing-options small{color:var(--fp-muted);font-size:.69rem;font-weight:500}.quick-finishing-options strong{color:var(--fp-muted);font-size:.68rem}.quick-choice-row{display:flex;gap:10px}.quick-choice-row label{flex:1;cursor:pointer}.quick-choice-row span{display:block;padding:10px;border:1px solid var(--fp-line);border-radius:9px;text-align:center;font-size:.77rem}.quick-choice-row label:has(input:checked) span{border-color:var(--fp-blue);color:var(--fp-blue);background:#edf5ff;font-weight:800}.quick-upload{display:grid;place-items:center;gap:5px;min-height:110px;padding:16px;border:1.5px dashed #9ab9ef;border-radius:13px;color:var(--fp-blue);background:#f7faff;text-align:center;cursor:pointer}.quick-upload input{display:none}.quick-upload span{color:var(--fp-muted);font-size:.72rem;font-weight:500}.quick-advanced{margin-top:16px;color:var(--fp-text);font-size:.8rem}.quick-advanced summary{cursor:pointer;font-weight:800}.quick-advanced .quick-add-fields{margin-top:10px}.quick-check{display:flex;gap:8px;align-items:flex-start;margin-top:12px;cursor:pointer}.quick-check span{display:grid;gap:2px}.quick-check small{color:var(--fp-muted);font-size:.7rem}.quick-add-error{margin-top:14px;padding:10px;border-radius:9px;color:#9b2e3a;background:#fff0f2;font-size:.75rem}.quick-add-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.quick-add-actions button{width:100%;min-height:45px}
/* Override the modal height with a valid bounded viewport value. */
.quick-add-card{max-height:min(calc(100vh - 40px),760px)}
@media(max-width:560px){.quick-add-card{padding:22px 16px;border-radius:20px}.quick-add-fields,.quick-custom-size{grid-template-columns:1fr}.quick-add-actions{grid-template-columns:1fr}.quick-add-actions .primary{order:-1}}
.quick-upload{transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.quick-upload.has-file{border-color:#20b56a;background:#f0fff7;box-shadow:0 0 0 4px rgba(32,181,106,.1)}.quick-upload.has-file strong{color:#168e87}.quick-upload.has-file span{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}
#layoutForm .drop{transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}#layoutForm .drop.has-file{border-color:#20b56a;background:#f0fff7;box-shadow:0 0 0 4px rgba(32,181,106,.1)}#layoutForm .drop.has-file strong{color:#168e87}#layoutForm .drop.has-file .upload-icon{background:#20b56a}
#toast.success{border-color:#b9e8cc;background:rgba(244,255,248,.96)}#toast.success:before{content:"✓";background:#20b56a;box-shadow:0 5px 12px rgba(32,181,106,.2)}

/* The generated artwork must keep its complete aspect ratio; the old mobile
   height rule used cover and cropped tall or wide designs. */
.design-preview{display:block}
.mockup-preview-shell{position:relative;width:100%;min-height:180px;max-height:520px;overflow:hidden;background:#e8f1ef}
.mockup-preview-shell img#mockupPreviewImage{position:relative;z-index:1;display:block;width:100%;height:auto;max-height:520px;object-fit:contain;object-position:center;background:#e8f1ef}
.mockup-preview-shell.preview-glossy:after{content:"";position:absolute;z-index:2;inset:-55% -25%;pointer-events:none;background:linear-gradient(112deg,transparent 38%,rgba(255,255,255,0) 43%,rgba(255,255,255,.58) 49%,rgba(255,255,255,.12) 54%,transparent 61%);transform:translateX(-65%) rotate(8deg);animation:fp-preview-gloss 3.8s ease-in-out infinite}
@keyframes fp-preview-gloss{0%,18%{transform:translateX(-65%) rotate(8deg)}65%,100%{transform:translateX(65%) rotate(8deg)}}
@media(max-width:680px){.mockup-preview-shell{min-height:180px;max-height:420px}.mockup-preview-shell img#mockupPreviewImage{height:auto;max-height:420px}}
@media(prefers-reduced-motion:reduce){.mockup-preview-shell.preview-glossy:after{animation:none;opacity:.18;transform:rotate(8deg)}}

/* Order preview states: a clean idle mark and a dedicated Fazima loader. */
.mockup-preview-shell{background:radial-gradient(circle at 50% 35%,#ffffff 0 8%,#f2fbf8 42%,#e8f1ef 100%)}
.preview-loading{position:relative;display:grid;place-items:center;align-content:center;gap:10px;min-height:210px;padding:28px;color:#168e87;font-size:.78rem;text-align:center}
.preview-loading strong{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.preview-idle-icon{display:grid;place-items:center;width:76px;height:76px;border:1px solid #cde9e2;border-radius:24px;color:#168e87;background:#fff;box-shadow:0 12px 28px #168e8718,inset 0 0 0 6px #f1faf7}
.preview-idle-icon svg{width:40px;height:40px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4}
.preview-idle-icon circle{fill:#f39b62;stroke:none}
.preview-loader-visual{position:relative;display:block;width:84px;height:68px}
.preview-loader-sheet{position:absolute;display:block;width:42px;height:54px;border:2px solid #168e87;border-radius:7px;background:#fff;box-shadow:0 8px 16px #168e8718}
.preview-loader-sheet-back{left:10px;top:7px;transform:rotate(-12deg);animation:preview-sheet-back 1.25s ease-in-out infinite}
.preview-loader-sheet-front{right:10px;bottom:3px;transform:rotate(10deg);border-color:#f39b62;animation:preview-sheet-front 1.25s ease-in-out infinite}
.preview-loader-sheet-front:after,.preview-loader-sheet-back:after{content:"";position:absolute;left:8px;right:8px;top:13px;height:2px;border-radius:4px;background:currentColor;box-shadow:0 8px currentColor,0 16px currentColor;opacity:.22}
.preview-loader-spark{position:absolute;top:-5px;right:5px;color:#f39b62;font-size:1.25rem;font-style:normal;animation:preview-spark 1.25s ease-in-out infinite}
.preview-loader-text{color:#172b3b!important;font-size:.7rem!important;letter-spacing:.08em;text-transform:uppercase}
@keyframes preview-sheet-back{0%,100%{transform:translateY(2px) rotate(-12deg)}50%{transform:translateY(-5px) rotate(-5deg)}}
@keyframes preview-sheet-front{0%,100%{transform:translateY(-1px) rotate(10deg)}50%{transform:translateY(5px) rotate(16deg)}}
@keyframes preview-spark{0%,100%{transform:scale(.8) rotate(-12deg);opacity:.55}50%{transform:scale(1.15) rotate(12deg);opacity:1}}
@media(prefers-reduced-motion:reduce){.preview-loader-sheet-back,.preview-loader-sheet-front,.preview-loader-spark{animation:none}}

/* Validation feedback: #toast is shared by the order, cart, and login flows. */
#toast{position:fixed;right:22px;bottom:22px;z-index:300;display:flex;align-items:center;gap:10px;width:min(380px,calc(100vw - 32px));min-height:52px;padding:12px 15px;border:1px solid #cde9e2;border-radius:16px;color:#172b3b;background:rgba(255,255,255,.94);box-shadow:0 16px 38px #18374722,inset 0 1px #fff;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font-size:.8rem;font-weight:750;line-height:1.35;opacity:0;pointer-events:none;transform:translateY(12px) scale(.97);transition:opacity .22s ease,transform .22s ease}
#toast:before{content:"!";display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:9px;color:#fff;background:#f39b62;font-size:.78rem;font-weight:900;box-shadow:0 5px 12px #f39b6233}
#toast.show{opacity:1;transform:translateY(0) scale(1)}
@media(max-width:680px){#toast{top:82px;right:14px;bottom:auto;left:14px;width:auto;min-height:48px;padding:10px 13px;border-radius:15px;font-size:.75rem;line-height:1.3;box-shadow:0 12px 28px #18374720,inset 0 1px #fff;transform:translateY(-10px) scale(.97)}#toast.show{transform:translateY(0) scale(1)}#toast:before{flex-basis:23px;width:23px;height:23px;border-radius:8px;font-size:.72rem}}

/* Fazima language switcher: compact macOS-style control with an accessible menu. */
.language-switcher{position:relative;z-index:40;margin-left:10px;font-family:Manrope,Inter,ui-sans-serif,system-ui,sans-serif}
.language-trigger{display:flex;align-items:center;gap:7px;min-height:38px;padding:7px 10px;border:1px solid #bfe2da;border-radius:13px;color:#12384b;background:rgba(255,255,255,.82);box-shadow:0 8px 20px #17495b12,inset 0 1px #fff;cursor:pointer;font:inherit;font-size:.72rem;font-weight:850;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.language-trigger:hover,.language-switcher.open .language-trigger{transform:translateY(-1px);border-color:#28a98f;box-shadow:0 10px 24px #17495b1c,0 0 0 3px #28a98f14,inset 0 1px #fff}
.language-globe{display:grid;place-items:center;width:20px;height:20px;border-radius:8px;color:#fff;background:linear-gradient(145deg,#148f81,#f39b62);font-size:1rem;line-height:1}
.language-chevron{color:#6b8190;font-size:.9rem;transition:transform .2s ease}.language-switcher.open .language-chevron{transform:rotate(180deg)}
.language-menu{position:absolute;top:calc(100% + 9px);right:0;display:grid;gap:4px;width:190px;padding:7px;border:1px solid #cde9e2;border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 18px 38px #12384b24,inset 0 1px #fff;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);opacity:0;pointer-events:none;transform:translateY(-6px) scale(.97);transform-origin:top right;transition:opacity .18s ease,transform .18s ease}
.language-switcher.open .language-menu{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}
.language-menu button{display:grid;grid-template-columns:30px 1fr 16px;align-items:center;gap:7px;width:100%;padding:9px;border:0;border-radius:10px;color:#315363;background:transparent;text-align:left;cursor:pointer;font:inherit;transition:background .18s ease,color .18s ease,transform .18s ease}.language-menu button:hover,.language-menu button.active{color:#0b665d;background:#e4f5f0;transform:translateX(2px)}.language-menu button>b{font-size:.7rem;color:#148f81}.language-menu button span{font-size:.72rem;font-weight:750}.language-menu button i{font-style:normal;color:#f39b62;opacity:0}.language-menu button.active i{opacity:1}
@media(max-width:680px){.site-header{display:flex;gap:7px}.site-header .brand-image{min-width:0;margin:0}.site-header .brand-image img{width:108px}.navbar-search{position:absolute;top:calc(100% + 8px);right:0;left:0;min-width:0;width:100%;padding:0}.navbar-search input{min-width:0;width:100%;height:38px;border-color:#d7e2ef;background:rgba(255,255,255,.97);box-shadow:0 8px 20px rgba(31,64,110,.1)}.site-header .header-actions{display:flex;min-width:0;flex:0 0 auto;gap:5px;margin-left:auto}.language-switcher{margin-left:0}.language-trigger{min-height:34px;padding:5px 7px;gap:5px}.language-globe{width:18px;height:18px}.language-chevron{font-size:.75rem}.language-menu{right:-3px;width:178px}.site-header .mobile-menu{width:35px;height:35px;margin:0}.main-nav.mobile-open{position:absolute;top:calc(100% + 7px);left:7px;right:7px;padding:8px;border:1px solid #cde9e2;border-radius:16px;box-shadow:0 18px 38px #12384b24}.main-nav.mobile-open a{padding:10px 11px;border-radius:10px}.main-nav.mobile-open a:hover{background:#e4f5f0;color:#0b665d}}
.product-order{justify-content:center!important}

/* Product card actions: readable, full-width controls instead of cramped side-by-side labels. */
.showcase-card-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}
.showcase-card-actions button{width:100%;min-height:43px;padding:0 12px;border-radius:10px;font:inherit;font-size:.76rem;font-weight:850;line-height:1;cursor:pointer;white-space:nowrap}
.showcase-card-actions .product-order{border:0;color:#fff;background:var(--fp-blue);box-shadow:0 8px 16px rgba(19,94,232,.16)}
.showcase-card-actions .product-cart{border:1px solid var(--fp-line);color:var(--fp-text);background:#fff}
.showcase-card-actions .product-order:hover,.showcase-card-actions .product-cart:hover{transform:translateY(-2px)}
@media(max-width:680px){.showcase-card-actions{gap:7px}.showcase-card-actions button{min-height:44px;font-size:.74rem}}

/* Keep product actions readable on every card width. */
.catalog .showcase-card-actions{grid-template-columns:1fr!important;align-items:stretch!important}
.catalog .showcase-card-actions button{min-width:0!important;min-height:44px!important;padding-inline:12px!important;font-size:.78rem!important;white-space:normal!important}

/* Grouped product showcase: every category is visible without a filter step. */
.showcase-category-panel{margin-top:22px;padding:22px;border:1px solid #dce9e6;border-radius:24px;background:linear-gradient(145deg,#fff,#f8fcfb);box-shadow:0 14px 34px #1837470d}.showcase-category-panel:first-child{margin-top:0}.showcase-category-panel .showcase-heading{margin-bottom:18px}.showcase-category-panel .showcase-heading h3{margin:5px 0 0;color:#172b3b;font-size:1.2rem;letter-spacing:-.025em}.showcase-category-panel .showcase-heading .eyebrow{margin:0;color:#168e87}.showcase-count{flex:0 0 auto;padding:7px 10px;border:1px solid #cde9e2;border-radius:999px;color:#168e87;background:#eff9f6;font-size:.66rem;font-weight:850;white-space:nowrap}.showcase-category-panel .showcase-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.showcase-category-panel[hidden]{display:none!important}
.showcase-category-title{display:flex;align-items:center;gap:12px}.showcase-category-index{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:#fff;background:linear-gradient(145deg,#168e87,#1769aa);font:800 .7rem 'DM Mono',monospace;box-shadow:0 7px 16px #168e8730}.showcase-category-panel[data-showcase-category="Outdoor"] .showcase-category-index{background:linear-gradient(145deg,#1769aa,#e09452)}.showcase-category-panel[data-showcase-category="A3"] .showcase-category-index{background:linear-gradient(145deg,#e09452,#168e87)}.showcase-category-panel .showcase-card{position:relative;overflow:hidden;border-color:#e1ecea;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.showcase-category-panel .showcase-card:hover,.showcase-category-panel .showcase-card:focus-within{transform:translateY(-7px);border-color:#9fd5ca;box-shadow:0 16px 30px #18374718}.showcase-card-media{position:relative;overflow:hidden}.showcase-category-panel .showcase-card img{display:block;width:100%;aspect-ratio:1.25;object-fit:cover;transition:transform .45s ease,filter .45s ease}.showcase-category-panel .showcase-card:hover img,.showcase-category-panel .showcase-card:focus-within img{transform:scale(1.08);filter:saturate(1.08)}.showcase-card-hover-label{position:absolute;right:9px;bottom:9px;padding:6px 8px;border-radius:8px;color:#fff;background:#172b3bcc;font-size:.58rem;font-weight:800;opacity:0;transform:translateY(5px);transition:opacity .2s ease,transform .2s ease}.showcase-category-panel .showcase-card:hover .showcase-card-hover-label,.showcase-category-panel .showcase-card:focus-within .showcase-card-hover-label{opacity:1;transform:translateY(0)}
@media(max-width:900px){.showcase-category-panel .showcase-track{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.showcase-category-panel{margin-top:14px;padding:14px;border-radius:18px}.showcase-category-panel .showcase-heading{align-items:flex-start;gap:10px;margin-bottom:13px}.showcase-category-title{gap:8px}.showcase-category-index{width:32px;height:32px;border-radius:10px;font-size:.6rem}.showcase-category-panel .showcase-heading h3{font-size:1rem;line-height:1.25}.showcase-category-panel .showcase-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.showcase-card-hover-label{display:none}.showcase-count{padding:6px 8px;font-size:.58rem}}

/* Promo spotlight: deliberately uses a dark editorial composition, separate from the catalog panels. */
.promo-showcase{display:grid;grid-template-columns:minmax(230px,.56fr) minmax(0,1.44fr);gap:20px;margin-bottom:72px;padding:26px;border-radius:28px;color:#fff;background:linear-gradient(135deg,#14243b 0%,#1769aa 72%,#168e87 100%);box-shadow:0 20px 45px rgba(20,45,80,.18);overflow:hidden}.promo-showcase-intro{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:260px;padding:8px 10px}.promo-kicker{color:#ffd28f;font:800 .62rem 'DM Mono',monospace;letter-spacing:.13em}.promo-showcase-intro h2{position:relative;z-index:1;margin:12px 0;color:#fff;font-size:clamp(2rem,3.5vw,3.3rem);line-height:.95;letter-spacing:-.065em}.promo-showcase-intro h2 em{color:#ffd28f;font-style:normal}.promo-showcase-intro p{position:relative;z-index:1;max-width:250px;margin:0;color:#d7e7f5;font-size:.78rem;line-height:1.6}.promo-orbit{position:absolute;right:-45px;bottom:-65px;width:190px;height:190px;border:1px solid rgba(255,255,255,.24);border-radius:50%;box-shadow:0 0 0 18px rgba(255,255,255,.05),0 0 0 36px rgba(255,255,255,.035)}.promo-showcase-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:stretch}.promo-product-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.22);border-radius:18px;color:#fff;background:rgba(255,255,255,.12);text-decoration:none;backdrop-filter:blur(8px);transition:transform .24s ease,background-color .24s ease,box-shadow .24s ease}.promo-product-card:hover,.promo-product-card:focus-visible{transform:translateY(-6px) rotate(-1deg);background:rgba(255,255,255,.2);box-shadow:0 14px 25px rgba(8,24,50,.2);outline:none}.promo-product-image{position:relative;overflow:hidden}.promo-product-image img{display:block;width:100%;aspect-ratio:1.05;object-fit:cover;transition:transform .4s ease}.promo-product-card:hover .promo-product-image img{transform:scale(1.08)}.promo-product-image>span{position:absolute;top:9px;left:9px;padding:5px 7px;border-radius:8px;color:#172b3b;background:#ffd28f;font-size:.62rem;font-weight:900}.promo-product-copy{display:flex;flex:1;flex-direction:column;padding:11px}.promo-product-copy>small{color:#c9e2f2;font-size:.6rem}.promo-product-copy h3{min-height:40px;margin:5px 0 8px;font-size:.78rem;line-height:1.25}.promo-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;margin-top:auto}.promo-price del{color:#b8cee0;font-size:.63rem}.promo-price strong{color:#ffd28f;font-size:.9rem}.promo-price span{color:#d7e7f5;font-size:.6rem}.promo-product-link{display:flex;justify-content:space-between;margin-top:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,.18);color:#fff;font-size:.62rem;font-weight:850}.promo-product-link b{color:#ffd28f;font-size:.9rem;line-height:.7}.product-price-block del{color:#9aa8aa;font-size:.8rem;text-decoration-thickness:1px}.product-promo-badge{display:inline-flex!important;align-items:center;justify-content:center;width:max-content;padding:4px 7px;border-radius:7px;color:#fff!important;background:#e09452;font-size:.62rem!important;font-weight:900!important}
@media(max-width:900px){.promo-showcase{grid-template-columns:1fr;margin-bottom:48px}.promo-showcase-intro{min-height:180px}.promo-showcase-intro p{max-width:390px}.promo-showcase-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.promo-showcase{gap:14px;margin-bottom:42px;padding:16px;border-radius:20px}.promo-showcase-intro{min-height:150px;padding:4px}.promo-showcase-intro h2{font-size:2.25rem}.promo-showcase-intro p{max-width:270px;font-size:.72rem}.promo-orbit{right:-30px;bottom:-80px;width:170px;height:170px}.promo-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.promo-product-card{border-radius:14px}.promo-product-copy{padding:9px}.promo-product-copy h3{min-height:36px;font-size:.72rem}.promo-price strong{font-size:.8rem}.promo-product-link{font-size:.58rem}}

/* Clean mobile header: isolated layout for the home search header. */
.site-header--clean{width:min(1280px,calc(100% - 24px))!important;min-width:0}
.site-header--clean .mobile-search-toggle{display:none}
@media(max-width:680px){
  .site-header--clean{display:flex!important;align-items:center!important;width:calc(100% - 24px)!important;min-height:58px!important;margin:0!important;padding:8px 10px!important;gap:8px!important;border:1px solid #dbe5f1!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(31,64,110,.1)!important;backdrop-filter:none!important}
  .site-header--clean:before{display:none!important}
  .site-header--clean .brand-image{flex:0 0 auto!important;margin:0!important;padding:0!important;border:0!important}
  .site-header--clean .brand-image img{width:108px!important;max-height:34px!important}
  .site-header--clean .mobile-search-toggle{display:inline-grid!important;place-items:center!important;flex:0 0 35px!important;width:35px!important;height:35px!important;margin-left:auto!important;padding:0!important;border:1px solid #dbe5f1!important;border-radius:10px!important;color:var(--fp-blue)!important;background:#f7faff!important;cursor:pointer!important}
  .site-header--clean .mobile-search-toggle svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
  .site-header--clean .main-nav{top:calc(100% + 8px)!important;left:0!important;right:0!important}
  .site-header--clean .main-nav.mobile-open{top:calc(100% + 7px)!important}
  .site-header--clean .navbar-search{display:none!important;position:absolute!important;top:calc(100% + 8px)!important;right:0!important;left:0!important;width:100%!important;padding:0!important}
  .site-header--clean.mobile-search-open .navbar-search{display:block!important}
  .site-header--clean .navbar-search input{height:42px!important;padding:0 14px!important;border:1px solid #d6e2f0!important;border-radius:12px!important;background:#fff!important;box-shadow:0 8px 20px rgba(31,64,110,.1)!important;font-size:.8rem!important}
  .site-header--clean .header-actions{display:flex!important;align-items:center!important;gap:5px!important;min-width:0!important;margin-left:0!important}
  .site-header--clean .cart-link{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;width:35px!important;height:35px!important;padding:0!important;border:1px solid #dbe5f1!important;border-radius:10px!important;background:#f7faff!important}
  .site-header--clean .cart-link:before{content:none!important}
  .site-header--clean .cart-link svg{display:block!important;width:17px!important;height:17px!important;fill:none!important;stroke:var(--fp-blue)!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
  .site-header--clean .cart-label{display:none!important}
  .site-header--clean .cart-link b{position:absolute!important;top:-6px!important;right:-6px!important;transform:none!important;min-width:16px!important;height:16px!important;padding:0 3px!important;font-size:.58rem!important}
  .site-header--clean .mobile-menu{display:inline-grid!important;place-items:center!important;flex:0 0 35px!important;width:35px!important;height:35px!important;margin:0!important;border:1px solid #dbe5f1!important;border-radius:10px!important;background:#f7faff!important}
  .site-header--clean .language-trigger{min-height:35px!important;padding:5px 7px!important;border-radius:10px!important}
  .site-header--clean .language-trigger .language-current,.site-header--clean .language-trigger .language-chevron{display:none!important}
  .site-header--clean .language-globe{width:20px!important;height:20px!important}
}

/* Product detail, review, and demo payment stages. */
.product-info-card{display:flex;align-items:stretch;justify-content:space-between;gap:24px;margin:0 0 20px;padding:27px 30px;border:1px solid #cde9e2;border-radius:24px;background:linear-gradient(135deg,#fff,#f2faf8);box-shadow:0 14px 34px #18374712}
.product-info-copy{min-width:0}.product-info-kicker{color:#168e87;font:700 .62rem 'DM Mono',monospace;letter-spacing:.12em}.product-info-card h2{margin:7px 0 5px;color:#172b3b;font-size:clamp(1.6rem,4vw,2.5rem);letter-spacing:-.05em}.product-info-card p{max-width:650px;margin:0;color:#71828a;font-size:.86rem}.product-proof{display:flex;gap:26px;margin-top:18px}.product-proof span{display:grid;gap:2px}.product-proof b{color:#168e87;font-size:.9rem}.product-proof small{color:#71828a;font-size:.65rem}.product-info-badge{display:grid;place-items:center;flex:0 0 100px;border-radius:18px;color:#fff;background:linear-gradient(145deg,#168e87,#1769aa);font:800 .72rem/1.25 'DM Mono',monospace;letter-spacing:.08em;text-align:center;transform:rotate(4deg)}
.flow-view{margin-top:20px}.review-grid,.payment-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);align-items:start;gap:20px}.review-card,.payment-card{padding:25px;border:1px solid var(--fp-line);border-radius:22px;background:#fff;box-shadow:0 20px 60px #18374712}.review-preview{margin:0}.review-preview .mockup-preview-shell{min-height:320px}.review-preview .mockup-preview-shell img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain}.review-summary{display:grid;gap:15px}.payment-select-label{display:grid;gap:2px}.payment-select-label select{margin-top:7px}.flow-back{width:100%;margin-top:2px}.payment-layout .payment-card{display:grid;gap:15px}.payment-brand{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #dce9e6;border-radius:15px;background:#f7fcfb}.payment-brand img{width:76px;height:34px;object-fit:contain}.payment-brand span{color:#172b3b;font-weight:800}.payment-card>p{margin:0;color:#71828a;font-size:.84rem}.payment-account{display:grid;gap:6px;padding:20px;border-radius:16px;background:#f2faf8}.payment-account span,.payment-code{color:#71828a;font-size:.72rem}.payment-account b{color:#172b3b;font-size:1.35rem;letter-spacing:.06em}.payment-qr{width:220px;height:220px;margin:4px auto;border:12px solid #fff;border-radius:12px;background:repeating-linear-gradient(45deg,#172b3b 0 5px,#fff 5px 10px),repeating-linear-gradient(-45deg,transparent 0 7px,#172b3b 7px 11px);box-shadow:0 0 0 1px #dce9e6,0 12px 24px #18374718}.payment-code{display:block;text-align:center}
#toast:has(a){display:flex;justify-content:space-between;gap:14px}#toast.show:has(a){pointer-events:auto}#toast a{position:relative;z-index:1;color:#168e87;text-decoration:underline;font-weight:850;white-space:nowrap;cursor:pointer}
@media(max-width:760px){.product-info-card{padding:20px;gap:14px}.product-info-badge{flex-basis:72px;border-radius:14px;font-size:.6rem}.review-grid,.payment-layout{grid-template-columns:1fr}.review-preview .mockup-preview-shell{min-height:220px}.payment-account b{font-size:1.05rem}.payment-qr{width:190px;height:190px}}
.product-detail-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.back-link{color:#168e87;font-size:.78rem;font-weight:800;text-decoration:none}.back-link:hover{text-decoration:underline}.product-detail-label{color:#71828a;font:700 .62rem 'DM Mono',monospace;letter-spacing:.12em}.product-info-large{margin-bottom:20px}.product-info-large h1{margin:7px 0 5px;color:#172b3b;font-size:clamp(2rem,5vw,3.8rem);line-height:.98;letter-spacing:-.06em}.product-info-large h1 em{color:#168e87;font-style:normal}.product-info-large .product-info-copy{max-width:760px}.product-info-visual{display:grid;place-items:center;flex:0 0 154px;overflow:hidden;border:1px solid #dce9e6;border-radius:18px;background:#e8f1ef}.product-info-visual img{display:block;width:100%;height:100%;object-fit:contain}.product-info-large .product-info-badge{flex-basis:84px}
@media(max-width:680px){.product-detail-head{margin-bottom:10px}.product-detail-label{font-size:.55rem}.product-info-large{padding:18px}.product-info-large h1{font-size:2rem}.product-proof{gap:15px;flex-wrap:wrap}}
@media(max-width:680px){.product-info-visual{flex:0 0 96px;height:96px}.product-info-large .product-info-badge{display:none}}

/* Mobile category selector: compact horizontal cards keep all three choices
   visible without oversized images or hidden descriptions. */
@media(max-width:680px){
  .category-grid{display:grid;grid-template-columns:1fr;gap:12px}
  .category-card{display:grid;grid-template-columns:104px minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:14px;min-height:128px;padding:12px 14px;border-radius:19px}
  .category-card-top{position:static;grid-column:2;grid-row:1;min-height:22px;padding:0;color:currentColor;background:none;font-size:.57rem}
  .category-card img{grid-column:1;grid-row:1 / 4;width:104px;height:104px;aspect-ratio:1;margin:0;border-radius:13px;object-fit:contain}
  .category-card b{grid-column:2;grid-row:2;margin:2px 0 0;font-size:1.12rem;line-height:1.1}
  .category-card span{display:block;grid-column:2;grid-row:3;max-width:none;margin:5px 0 0;padding:0;color:#71828a;font-size:.68rem;line-height:1.4}
  .category-card:after{display:block;right:14px;bottom:12px;width:28px;height:2px}
  .category-card:hover{transform:translateY(-3px)}
  .category-card:hover img{transform:scale(1.03)}
}

.quick-add-actions .primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;overflow:hidden}
.quick-add-actions .primary[aria-busy="true"]{color:#fff;background:linear-gradient(110deg,#1769aa,#168e87,#1769aa);background-size:220% 100%;animation:quick-submit-gradient 1.8s ease-in-out infinite}
.quick-submit-loader{position:relative;display:inline-block;width:35px;height:20px;flex:0 0 35px;vertical-align:middle}
.quick-rocket{position:absolute;left:1px;top:-2px;font-size:18px;line-height:20px;filter:drop-shadow(0 2px 2px #062c4b55);animation:quick-rocket-flight 1.15s ease-in-out infinite}
.quick-projectile{position:absolute;right:1px;width:4px;height:4px;border-radius:50%;background:#ffd84d;box-shadow:0 0 7px #ffd84d;animation:quick-projectile-shot 1.15s linear infinite}
.quick-projectile-one{top:4px}.quick-projectile-two{top:13px;animation-delay:.28s}
@keyframes quick-rocket-flight{0%,100%{transform:translate(0,2px) rotate(-8deg)}50%{transform:translate(3px,-2px) rotate(-4deg)}}
@keyframes quick-projectile-shot{0%{opacity:0;transform:translateX(-13px) scale(.6)}25%{opacity:1}100%{opacity:0;transform:translateX(3px) scale(1)}}
@keyframes quick-submit-gradient{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@media(max-width:560px){.quick-add-actions .primary{min-height:48px}.quick-submit-loader{width:32px;flex-basis:32px}}
@media(prefers-reduced-motion:reduce){.quick-rocket,.quick-projectile,.quick-add-actions .primary[aria-busy="true"]{animation:none}.quick-projectile{opacity:1}}

/* Final responsive guardrails shared by every customer page. */
@media(max-width:680px){
  html,body{max-width:100%;overflow-x:hidden}
  .shell,.page-shell,.product-page,.payment-page{width:calc(100% - 28px);max-width:100%;min-width:0}
  .page-title,.cart-layout,.order-layout,.product-options-layout,.product-description-panel,.midtrans-checkout-shell{width:100%;max-width:100%;min-width:0}
  .cart-card,.checkout-card,.order-card,.summary-card,.auth-card,.review-card,.payment-card,.midtrans-checkout-card,.midtrans-order-card{width:100%;max-width:100%;min-width:0;padding:16px;border-radius:18px}
  .panel-head{align-items:flex-start;flex-wrap:wrap}
  .panel-head>div{min-width:0;flex:1 1 150px}
  .panel-head .small-button{flex:0 1 auto}
  .cart-item{grid-template-columns:48px minmax(0,1fr) auto;gap:8px}
  .cart-item>div{min-width:0}
  .cart-item h3,.cart-item p{overflow-wrap:anywhere}
  .cart-item img{width:48px;height:48px}
  .checkout-card>p{line-height:1.45}
  .checkout-card input,.checkout-card textarea,.checkout-card select,.quick-add-card input,.quick-add-card textarea,.quick-add-card select{max-width:100%;min-width:0}
  .midtrans-checkout-brand{min-width:0;flex-wrap:wrap}
  .midtrans-checkout-brand>div{min-width:0}
  .midtrans-checkout-brand b,.midtrans-checkout-brand small{overflow-wrap:anywhere}
  .checkout-lock{margin-left:auto}
  .product-detail-facts,.reviews-grid,.client-grid{min-width:0}
  .product-detail-facts div,.review-item,.client-grid img{min-width:0}
}

/* Landing hero: one authoritative implementation. */
html,body{background:#f7f9fc!important;color:#1f2d43!important}
.fp-loading-screen{background:#f7f9fc!important;color:#14243b!important}
.hero{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr)!important;align-items:center!important;gap:clamp(28px,5vw,80px)!important;width:100vw!important;height:100svh!important;min-height:100svh!important;margin:-90px 0 0!important;padding:calc(90px + clamp(32px,5vw,72px)) clamp(24px,8vw,132px) clamp(32px,5vw,72px)!important;overflow:hidden!important;border:0!important;border-radius:0!important;background:#f2f8ff!important;box-shadow:none!important;isolation:isolate!important}
.hero:after{display:none!important;content:none!important}
.hero .hero-copy{position:relative!important;z-index:3!important;max-width:650px!important}
.hero h1,.hero .hero-line{color:#102a43!important;-webkit-text-fill-color:#102a43!important;-webkit-text-stroke:0!important;text-shadow:none!important}
.hero .hero-visual{position:relative!important;z-index:1!important;width:100%!important;height:425px!important;min-height:0!important;overflow:visible!important}
.hero .hero-image-main{position:absolute!important;inset:10px 40px 20px!important;width:auto!important;height:auto!important;border:1px solid rgba(37,139,255,.14)!important;border-radius:24px!important;overflow:hidden!important;background:#d7e9f4 url('assets/real/gallery/gallery-2.jpeg') center/cover no-repeat!important;box-shadow:0 24px 60px rgba(11,70,127,.16)!important}
.hero .hero-image-main:after,.hero .hero-float-card{display:none!important}
.hero .hero-slide{position:absolute!important;inset:0!important;z-index:0!important;width:100%!important;height:100%!important;object-fit:cover!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;mix-blend-mode:normal!important;transition:opacity .35s ease,visibility .35s ease!important}
.hero .hero-image-main>img:first-of-type{display:block!important;opacity:1!important;visibility:visible!important}
.hero .hero-slide:first-child,.hero .hero-slide.active{z-index:1!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.hero .hero-border-runner{position:absolute!important;inset:0!important;z-index:2!important;pointer-events:none!important}
.hero-slider-arrow{position:absolute;top:50%;z-index:7;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #cbddec;border-radius:50%;color:#1769aa;background:#fff;box-shadow:0 8px 18px rgba(11,70,127,.14);font-size:1.1rem;cursor:pointer;pointer-events:auto!important;touch-action:manipulation!important;user-select:none!important;transform:translateY(-50%);transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}
.hero-slider-arrow:hover{background:#eef7ff;box-shadow:0 10px 22px rgba(11,70,127,.22);transform:translateY(-50%) scale(1.06)}
.hero-slider-prev{left:0}.hero-slider-next{right:0}
@media(max-width:680px){.hero{display:flex!important;flex-direction:column!important;gap:20px!important;width:100vw!important;height:100svh!important;min-height:100svh!important;margin:-78px 0 0!important;padding:calc(78px + 28px) 16px 28px!important}.hero .hero-copy{width:100%!important;max-width:100%!important}.hero .hero-visual{height:min(42svh,360px)!important;min-height:235px!important}.hero .hero-image-main{inset:8px 40px 18px!important;border-radius:20px!important}.hero-slider-arrow{width:36px!important;height:36px!important}}

/* Landing hero: one image fills the complete aligned hero surface. */
.navbar-search{position:relative;flex:0 1 250px;min-width:150px;z-index:6}.navbar-search input{width:100%;height:38px;margin:0;padding:0 13px;border:1px solid #d7e2ef;border-radius:10px;background:#f7faff;color:var(--fp-text);font:inherit;font-size:.76rem}.navbar-search input:focus{background:#fff}.navbar-search .search-suggestions{top:calc(100% + 8px);right:0;left:0}
.landing-hero{position:relative;width:min(1180px,calc(100% - 40px));height:clamp(380px,56svh,560px);min-height:380px;margin:18px auto clamp(42px,6vw,78px);overflow:hidden;border-radius:28px;background:#d7e9f4}
.landing-hero-visual,.landing-hero-frame{position:absolute;inset:0;width:100%;height:100%}.landing-hero-frame{overflow:hidden;border:0;border-radius:28px;background:#d7e9f4;box-shadow:none}.landing-hero-slide{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .35s ease}.landing-hero-slide.active{z-index:1;opacity:1;visibility:visible;pointer-events:auto}.landing-hero-lightline{position:absolute;inset:0;z-index:2;width:100%;height:100%;fill:none;pointer-events:none}.landing-hero-lightline rect{fill:none;stroke:#258bff;stroke-width:3;stroke-linecap:round;stroke-dasharray:18 82;vector-effect:non-scaling-stroke;animation:landing-hero-lightline-run 6s linear infinite}@keyframes landing-hero-lightline-run{to{stroke-dashoffset:-100}}.landing-hero-control{position:absolute;top:calc(50% - 25px);z-index:7;display:grid;place-items:center;width:50px;height:50px;padding:0;border:1px solid rgba(255,255,255,.7);border-radius:14px;color:#fff;background:rgba(11,34,65,.62);box-shadow:0 8px 18px rgba(8,24,50,.24);backdrop-filter:blur(8px);cursor:pointer;transition:background-color .18s ease,border-color .18s ease,transform .18s ease;touch-action:manipulation}.landing-hero-control svg{display:block;width:10px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.landing-hero-control:hover{border-color:#fff;background:var(--fp-blue);transform:translateY(-2px)}.landing-hero-control:focus-visible{outline:3px solid #fff;outline-offset:3px}.landing-hero-control-prev{left:22px}.landing-hero-control-next{right:22px}
@media(max-width:900px){.navbar-search{flex:1 1 auto;min-width:0;max-width:none}.navbar-search input{font-size:.7rem}}
@media(max-width:680px){.navbar-search{flex:1 1 auto}.navbar-search input{height:35px;padding-inline:10px}.landing-hero{width:calc(100% - 28px);height:auto;min-height:0;aspect-ratio:16 / 7;margin:14px auto 38px;border-radius:20px}.landing-hero-frame{border-radius:20px}.landing-hero-control{top:calc(50% - 22px);width:44px;height:44px;border-radius:12px}.landing-hero-control-prev{left:12px}.landing-hero-control-next{right:12px}}

/* Keep the promo block visually separated from the hero and its following content. */
.promo-showcase{margin-top:0}
.showcase-meta del{color:#9aa8aa;font-size:.72rem;text-decoration-thickness:1px}
.showcase-meta .showcase-promo-price{color:#e09452}
.showcase-promo-badge,.showcase-promo-ribbon{color:#fff;background:#e09452;font-weight:900}
.showcase-promo-badge{padding:3px 6px;border-radius:6px;font-size:.56rem}
.showcase-promo-ribbon{position:absolute;top:9px;right:9px;padding:5px 7px;border-radius:7px;font-size:.55rem;letter-spacing:.02em}
.promo-showcase-grid{display:flex;grid-template-columns:none;overflow-x:auto;overflow-y:hidden;gap:12px;padding:2px 2px 10px;scroll-snap-type:x mandatory;scrollbar-width:thin}.promo-showcase-grid .promo-product-card{flex:0 0 clamp(170px,calc((100% - 30px)/4),230px);scroll-snap-align:start}.promo-showcase-grid::-webkit-scrollbar{height:6px}.promo-showcase-grid::-webkit-scrollbar-thumb{border-radius:99px;background:rgba(255,255,255,.45)}@media(max-width:680px){.promo-showcase-grid{gap:10px;padding-bottom:9px}.promo-showcase-grid .promo-product-card{flex-basis:72vw;max-width:245px}}
@media(prefers-reduced-motion:reduce){.landing-hero-lightline rect{animation:none}}
.google-auth-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:44px;margin:16px 0 14px;border:1px solid #d6dfeb;border-radius:9px;color:var(--fp-text);background:#fff;font:inherit;font-weight:800;cursor:pointer}.google-auth-button span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;color:#4285f4;background:#f1f5ff;font-weight:900}.auth-divider{display:flex;align-items:center;gap:10px;margin:12px 0;color:var(--fp-muted);font-size:.7rem}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--fp-line)}.auth-mode-toggle{display:block;width:100%;margin-top:13px;border:0;color:var(--fp-blue);background:none;font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.auth-message{min-height:18px;margin:12px 0 0;color:var(--fp-muted);font-size:.76rem;line-height:1.4;text-align:center}.auth-message.success{color:#168e87}.auth-message.warning{color:#9b7415}.auth-message.error{color:#b33f3f}

/* Order history: clear tracking first, saved orders second. */
.order-history-page{max-width:1080px}.order-history-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:stretch}.order-history-panel{box-shadow:0 12px 30px rgba(25,45,75,.06)}.order-history-panel .panel-head{align-items:flex-start}.panel-head .eyebrow{display:block;margin:0;color:var(--fp-blue);font-size:.63rem;font-weight:850;letter-spacing:.1em}.panel-head h2{margin:5px 0 0}.history-hint,.history-count{padding:6px 9px;border-radius:999px;color:var(--fp-blue);background:#eef5ff;font-size:.68rem;font-weight:800;white-space:nowrap}.order-track-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:20px}.order-track-form label{display:block}.order-track-form input{box-sizing:border-box}.order-track-form .primary{min-height:43px;white-space:nowrap}.track-helper{margin-top:10px;color:var(--fp-muted);font-size:.72rem}.history-info-card{display:flex;flex-direction:column;align-items:flex-start;padding:24px;border:1px solid #cde9e2;border-radius:var(--fp-radius);background:linear-gradient(145deg,#eff9f6,#fff)}.history-info-card .eyebrow{margin:0;color:#168e87;font-size:.63rem;font-weight:850;letter-spacing:.1em}.history-info-card h2{margin:9px 0 7px;color:#172b3b;font-size:1.5rem}.history-info-card p{margin:0 0 20px;color:#607879;font-size:.8rem;line-height:1.65}.history-info-card .secondary{margin-top:auto}.saved-orders-panel{margin-top:18px}.saved-orders-panel .panel-head{margin-bottom:2px}.order-history-item,.tracked-order{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--fp-line)}.order-history-item:last-child{border-bottom:0}.history-order-main,.tracked-order-main{display:grid;gap:4px;min-width:0}.history-order-main strong,.tracked-order-main strong{color:var(--fp-text);font-size:.93rem;letter-spacing:.01em}.history-order-main small,.tracked-order-main small,.tracked-order-main>span:not(.product-type){color:var(--fp-muted);font-size:.75rem;overflow-wrap:anywhere}.history-order-side,.tracked-order-side{display:grid;justify-items:end;gap:9px;flex:0 0 auto}.order-status{display:inline-flex;padding:5px 9px;border-radius:999px;background:#fff3c9;color:#8a6814;font-size:.66rem;font-weight:850;white-space:nowrap}.status-settlement,.status-capture{color:#12725b;background:#e7f7ef}.status-deny,.status-cancel,.status-expire,.status-failure{color:#b33f3f;background:#fff0f0}.status-refund,.status-partial_refund{color:#8a4e9c;background:#f7effa}.tracked-order{align-items:flex-start;margin-top:18px;padding:16px;border:1px solid #cde9e2;border-radius:14px;background:#f5fbf9}.tracked-order-side{align-items:end}.history-message{display:grid;gap:8px;padding:28px 10px;text-align:center;color:var(--fp-muted)}.history-message strong{color:var(--fp-text)}.history-message a{justify-self:center;margin-top:4px}.history-error{margin-top:18px;border:1px solid #ffd2d2;border-radius:12px;background:#fff7f7}.history-error strong{color:#a53636}.history-error span{font-size:.78rem}.saved-orders-panel .midtrans-loading{margin-top:10px}
@media(max-width:760px){.order-history-grid{grid-template-columns:1fr}.order-track-form{grid-template-columns:1fr}.order-track-form .primary{width:100%}.history-info-card{min-height:0}.order-history-item,.tracked-order{align-items:flex-start;flex-direction:column;gap:13px}.history-order-side,.tracked-order-side{width:100%;display:flex;justify-content:space-between;align-items:center}.history-order-side .small-button,.tracked-order-side .small-button{min-height:40px}.saved-orders-panel{margin-top:14px}}
.catalog .showcase-track{display:flex!important;grid-template-columns:none!important;overflow-x:auto!important;overflow-y:hidden;gap:14px;padding:2px 2px 12px;scroll-snap-type:x mandatory;scrollbar-width:thin}.catalog .showcase-track .showcase-card{flex:0 0 clamp(210px,calc((100% - 42px)/4),280px)!important;scroll-snap-align:start}.catalog .showcase-track::-webkit-scrollbar{height:6px}.catalog .showcase-track::-webkit-scrollbar-thumb{border-radius:99px;background:#b8c7d9}.catalog .showcase-track::-webkit-scrollbar-track{background:rgba(214,223,235,.55);border-radius:99px}@media(max-width:680px){.catalog .showcase-track{gap:10px;padding-bottom:10px}.catalog .showcase-track .showcase-card{flex-basis:72vw!important;max-width:255px}.catalog .showcase-track .showcase-card:hover{transform:translateY(-3px)}}

/* Final action pass: no cramped text, no tiny controls. */
.catalog .showcase-card-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:14px!important}
.catalog .showcase-card-actions button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:44px!important;padding:9px 12px!important;border-radius:10px!important;font-size:.78rem!important;font-weight:850!important;line-height:1.1!important;white-space:normal!important}
.catalog .showcase-card-actions .product-order{color:#fff!important;background:var(--fp-blue)!important;border:0!important}
.catalog .showcase-card-actions .product-cart{color:var(--fp-text)!important;background:#fff!important;border:1px solid var(--fp-line)!important}
.showcase-category-panel{position:relative;isolation:isolate;overflow:hidden!important;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important}
.showcase-category-panel:before{content:"";position:absolute;z-index:-1;top:-90px;right:-70px;width:210px;height:210px;border-radius:50%;opacity:.72;pointer-events:none}
.showcase-category-panel:after{content:"";position:absolute;z-index:-1;bottom:-40px;left:24%;width:180px;height:70px;border-radius:50%;filter:blur(22px);opacity:.18;pointer-events:none}
.showcase-category-panel:hover{transform:translateY(-3px);box-shadow:0 20px 42px rgba(24,55,71,.13)!important}
.showcase-category-panel[data-showcase-category="Outdoor"]{border-color:#bcd8f7!important;background:linear-gradient(135deg,#f5faff 0%,#fff 58%,#fff7ed 100%)!important}
.showcase-category-panel[data-showcase-category="Outdoor"]:before{background:#258bff}
.showcase-category-panel[data-showcase-category="Outdoor"]:after{background:#f3a04f}
.showcase-category-panel[data-showcase-category="Outdoor"] .showcase-category-index{background:linear-gradient(145deg,#145bd7,#f08b3e)!important;box-shadow:0 9px 20px rgba(37,139,255,.28)}
.showcase-category-panel[data-showcase-category="Outdoor"] .showcase-heading h3{color:#154a85!important}
.showcase-category-panel[data-showcase-category="Indoor"]{border-color:#bfe4d7!important;background:linear-gradient(135deg,#f2fbf8 0%,#fff 62%,#f4faf1 100%)!important}
.showcase-category-panel[data-showcase-category="Indoor"]:before{background:#35b493}
.showcase-category-panel[data-showcase-category="Indoor"]:after{background:#8ecb75}
.showcase-category-panel[data-showcase-category="Indoor"] .showcase-category-index{background:linear-gradient(145deg,#087f72,#62af76)!important;box-shadow:0 9px 20px rgba(22,142,135,.25)}
.showcase-category-panel[data-showcase-category="Indoor"] .showcase-heading h3{color:#14675f!important}
.showcase-category-panel[data-showcase-category="A3"]{border-color:#f0d9a8!important;background:linear-gradient(135deg,#fffaf0 0%,#fff 62%,#fff4dd 100%)!important}
.showcase-category-panel[data-showcase-category="A3"]:before{background:#f3bd48}
.showcase-category-panel[data-showcase-category="A3"]:after{background:#e58b55}
.showcase-category-panel[data-showcase-category="A3"] .showcase-category-index{background:linear-gradient(145deg,#d88927,#efaa51)!important;box-shadow:0 9px 20px rgba(229,139,85,.26)}
.showcase-category-panel[data-showcase-category="A3"] .showcase-heading h3{color:#875520!important}
.showcase-category-panel .showcase-count{position:relative;z-index:1}
@media(max-width:680px){.showcase-category-panel:hover{transform:none}.showcase-category-panel:before{top:-105px;right:-95px;width:190px;height:190px}.showcase-category-panel:after{left:30%;width:130px}}
.chat-panel .chat-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important}
.chat-panel .chat-head>div:first-child{min-width:0!important}
.chat-panel .chat-head>[data-close-chat]{width:36px!important;height:36px!important;display:grid!important;place-items:center!important;padding:0!important;border:1px solid var(--fp-line)!important;border-radius:10px!important;background:#fff!important}
.chat-panel .chat-panel-controls{display:grid!important;grid-template-columns:1fr 1fr!important;grid-column:1/-1!important;gap:8px!important;width:100%!important;margin:2px 0 0!important}
.chat-panel .chat-panel-controls button{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;width:100%!important;min-width:0!important;height:42px!important;padding:0 12px!important;border:1px solid #d5e0d8!important;border-radius:10px!important;background:#f4f7f3!important;color:#19312b!important;font-size:12px!important;font-weight:800!important;line-height:1!important}
.chat-panel .chat-panel-controls .chat-new-session{color:#fff!important;background:#ef7048!important;border-color:#ef7048!important}
.chat-panel .chat-form button{display:grid!important;place-items:center!important;flex:0 0 48px!important;width:48px!important;height:44px!important;padding:0!important;border-radius:10px!important;line-height:0!important}.chat-panel .chat-form button .chat-send-icon{display:block!important;width:20px!important;height:20px!important;overflow:visible;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:420px){.chat-panel .chat-panel-controls button b{display:inline!important}.chat-panel .chat-panel-controls button{width:100%!important;padding:0 8px!important;font-size:11px!important}}

/* Google-only login: the page intentionally has one authentication path. */
.auth-shell-google-only{min-height:calc(100vh - 72px);padding:42px 0 72px}
.auth-card-google-only{position:relative;display:grid;justify-items:center;width:min(520px,100%);padding:clamp(28px,5vw,52px);overflow:hidden;text-align:center}
.auth-card-google-only:before{content:"";position:absolute;z-index:0;top:-145px;right:-115px;width:280px;height:280px;border-radius:50%;background:#edf5ff}
.auth-card-google-only>*{position:relative;z-index:1}
.auth-mark{display:grid;place-items:center;width:58px;height:58px;margin-bottom:18px;border:1px solid #d8e6f7;border-radius:18px;background:#f4f8ff;box-shadow:0 10px 25px rgba(19,94,232,.1)}
.auth-mark img{width:34px;height:34px;object-fit:contain}
.auth-card-google-only .eyebrow{margin:0}
.auth-card-google-only h1{margin:10px 0 14px;font-size:clamp(2.35rem,6vw,3.7rem)}
.auth-intro{max-width:350px;margin:0;color:var(--fp-muted);font-size:.9rem;line-height:1.7}
.google-login-panel{width:100%;margin-top:28px;padding:16px;border:1px solid #e0e9f5;border-radius:18px;background:#f8fbff}
.auth-card-google-only .google-auth-button{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;min-height:50px;margin:0;border:1px solid #d6dfeb;border-radius:11px;color:var(--fp-text);background:#fff;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 6px 16px rgba(25,70,140,.07);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.auth-card-google-only .google-auth-button:hover{transform:translateY(-2px);border-color:#b6ccef;box-shadow:0 10px 22px rgba(25,70,140,.12)}
.auth-card-google-only .google-auth-button:disabled{cursor:wait;opacity:.65;transform:none}
.google-mark{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;color:#4285f4;background:#f1f5ff;font-weight:900}
.auth-card-google-only .google-auth-button .google-mark{display:grid;width:25px;height:25px;min-width:25px;margin:0;border-radius:50%;font-size:.9rem}
.auth-card-google-only .google-auth-button .google-button-label{display:inline;width:auto;height:auto;margin:0;padding:0;border:0;border-radius:0;color:inherit;background:transparent;font-size:.88rem;font-weight:800;line-height:1.2;white-space:nowrap}
.auth-trust-row{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:18px;color:var(--fp-muted);font-size:.72rem}
.auth-trust-row span{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;color:#168e87;background:#e7f7ef;font-weight:900}
.auth-trust-row p{margin:0}
.auth-card-google-only .back-link{margin-top:24px}
.auth-card-google-only .auth-message{min-height:20px;margin:10px 0 0}
@media(max-width:680px){.auth-shell-google-only{min-height:calc(100vh - 62px);padding:28px 0 48px}.auth-card-google-only{padding:28px 18px 30px}.auth-card-google-only h1{font-size:clamp(2.25rem,12vw,3.2rem)}}
