/* Rosaifa 4.13.0 — final storefront UX, accessibility and resilience layer. */
:root{--rf-focus-ring:0 0 0 3px color-mix(in srgb,var(--rf-rose-dark,#744a4e) 32%,transparent);--rf-touch:44px}
html{scroll-padding-top:clamp(78px,8vw,118px)}
:where(h1,h2,h3,[id]){scroll-margin-top:clamp(86px,9vw,126px)}
:where(.rf-display,.woocommerce-products-header__title,.product_title){text-wrap:balance}
:where(p,.woocommerce-product-details__short-description){text-wrap:pretty}
:where(a,button,input,select,textarea,summary,[role="button"]):focus-visible{outline:2px solid var(--rf-rose-dark,#744a4e)!important;outline-offset:3px!important;box-shadow:var(--rf-focus-ring)}
:where(button,.button,input[type="submit"],input[type="button"],input[type="reset"]){touch-action:manipulation}
.rf-mobile-drawer,.rf-v3-drawer,.rf-p5-filter-sheet{overscroll-behavior:contain}
.rf-search-results[aria-busy="true"]{cursor:progress}.rf-search-results[aria-busy="true"]:empty::before{content:"Searching…";display:block;padding:14px;color:var(--rf-ink-soft,#625b56);font-size:12px}
.rf-search-results a:focus-visible{position:relative;z-index:1;background:var(--rf-canvas,#f7f3ef)}
.woocommerce form .form-row.woocommerce-invalid :where(input,select,textarea){border-color:#9c3939!important;box-shadow:0 0 0 1px #9c393933}.woocommerce form .form-row.woocommerce-validated :where(input,select,textarea){border-color:#5d765d}
.woocommerce-error,.woocommerce-message,.woocommerce-info{scroll-margin-top:110px}
.rf-icon-button[aria-expanded="true"],.rf-menu-toggle[aria-expanded="true"]{background:color-mix(in srgb,var(--rf-rose,#955b62) 9%,transparent)}
@supports(height:100dvh){.rf-mobile-drawer-inner,.rf-v3-drawer{max-height:100dvh}.rf-preview-frame iframe{min-height:100dvh}}
@media(max-width:760px){
  :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){font-size:16px}
  :where(.rf-icon-button,.rf-menu-toggle,.rf-context-reveal,.rf-p5-filter-toggle,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button){min-height:var(--rf-touch)}
  .rf-site-footer{padding-bottom:max(104px,calc(92px + env(safe-area-inset-bottom)))}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.rf-preview-frame,.rf-preview-frame iframe{transition:none!important}}
@media(forced-colors:active){:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid CanvasText!important;box-shadow:none!important}.rf-pm-image,.rf-studio-save-state{border:1px solid CanvasText}}
.rf-qty-stepper{display:inline-grid!important;grid-template-columns:38px minmax(48px,62px) 38px;align-items:center;border:1px solid var(--rf-line,#d7cfc8);border-radius:999px;overflow:hidden;background:var(--rf-paper,#fffdfb)}
.rf-qty-stepper .qty{width:100%!important;min-width:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;text-align:center;padding-inline:2px!important;background:transparent!important;-moz-appearance:textfield}.rf-qty-stepper .qty::-webkit-outer-spin-button,.rf-qty-stepper .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.rf-qty-button{min-width:38px;min-height:42px;border:0;background:transparent;color:var(--rf-ink,#171412);font-size:18px;line-height:1;cursor:pointer}.rf-qty-button:hover{background:var(--rf-canvas,#f7f3ef)}.rf-qty-button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:760px){.rf-qty-stepper{grid-template-columns:42px minmax(48px,60px) 42px}.rf-qty-button{min-width:42px;min-height:46px}}

/* Rosaifa 4.13.2 — image-first homepage hero slider */
.rf-hero-slider-section{background:linear-gradient(180deg,#fbf4ed 0%,#f6ede4 100%);padding:12px 0 26px}
.rf-hero-slider{display:grid;gap:18px}
.rf-hero-slider-viewport{overflow:hidden}
.rf-hero-slider-track{display:flex;transition:transform .55s cubic-bezier(.22,.61,.36,1);will-change:transform}
.rf-hero-slide{flex:0 0 100%;min-width:100%}
.rf-hero-slide-card{display:grid;gap:0;text-decoration:none;color:inherit}
.rf-hero-slide-media{background:linear-gradient(135deg,#f3e7dc,#fcf7f2);border-radius:30px;overflow:hidden;position:relative;box-shadow:0 18px 50px rgba(75,40,23,.08)}
.rf-hero-slide-media::after{content:"";position:absolute;inset:auto 0 0 0;height:22%;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,248,241,.34) 100%);pointer-events:none}
.rf-hero-slide-media img{display:block;width:100%;aspect-ratio:1.12 / 1;object-fit:cover;transform:scale(1.01)}
.rf-hero-slide-content{display:grid;gap:10px;padding:18px 6px 0;max-width:720px}
.rf-hero-slide-content .rf-eyebrow{color:var(--rf-rose-dark,#82545a);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.rf-hero-slide-content .rf-display{font-size:clamp(40px,5.4vw,74px);line-height:.94;margin:0;color:var(--rf-ink,#171412)}
.rf-hero-slide-content p{margin:0;color:var(--rf-ink-soft,#625b56);font-size:15px;line-height:1.7;max-width:560px}
.rf-hero-slider-dots{display:flex;align-items:center;justify-content:center;gap:10px;padding-bottom:2px}
.rf-hero-dot{appearance:none;border:0;border-radius:999px;background:rgba(65,37,20,.18);width:10px;height:10px;padding:0;cursor:pointer;transition:transform .2s ease,background-color .2s ease,width .2s ease;box-shadow:none}
.rf-hero-dot.is-active{background:var(--rf-ink,#2b170c);width:28px}
.rf-hero-dot:focus-visible{outline:2px solid var(--rf-rose-dark,#744a4e);outline-offset:3px}
@media(min-width:781px){
  .rf-hero-slider-section{padding:18px 0 34px}
  .rf-hero-slide-card{gap:16px}
  .rf-hero-slide-media{border-radius:34px}
  .rf-hero-slide-media img{aspect-ratio:1.8 / 1}
  .rf-hero-slide-content{padding:0 8px 0}
}
@media(max-width:780px){
  .rf-hero-slider-section{padding-top:8px}
  .rf-hero-slider{gap:14px}
  .rf-hero-slide-media{border-radius:26px}
  .rf-hero-slide-media img{aspect-ratio:1 / 1.04}
  .rf-hero-slide-content{padding:16px 2px 0}
  .rf-hero-slide-content .rf-display{font-size:clamp(32px,10vw,58px)}
  .rf-hero-slide-content p{font-size:14px}
}

/* Rosaifa 4.13.3 — search focus polish */
.rf-product-search .rf-live-search-input:focus,
.rf-product-search .rf-live-search-input:focus-visible{
  outline:0!important;
  box-shadow:none!important;
}
.rf-product-search:focus-within{
  border-color:rgba(116,74,78,.62);
  box-shadow:0 0 0 3px rgba(116,74,78,.12),inset 0 0 0 1px rgba(255,255,255,.5);
}
@media(max-width:820px){
  .rf-mobile-search-panel .rf-product-search:focus-within{
    border-color:rgba(116,74,78,.58);
    box-shadow:0 0 0 2px rgba(116,74,78,.10),inset 0 0 0 1px rgba(255,255,255,.5);
  }
}
