.front-body{
    --pf-bg:#f6f0e6;
    --pf-bg-soft:#fbf8f2;
    --pf-surface:#fffdf8;
    --pf-surface-soft:#f4ede1;
    --pf-surface-dark:#223026;
    --pf-surface-dark-2:#18211b;
    --pf-text:#1f251f;
    --pf-muted:#677066;
    --pf-brand:#25372c;
    --pf-brand-2:#31463a;
    --pf-accent:#b58a59;
    --pf-accent-soft:#eadcc7;
    --pf-line:rgba(37,55,44,.12);
    --pf-shadow:0 28px 80px rgba(31,37,31,.09);
    --pf-shadow-soft:0 16px 40px rgba(31,37,31,.06);
    --pf-radius:34px;
    --pf-radius-lg:42px;
    --pf-radius-md:24px;
    --pf-radius-sm:18px;
    color:var(--pf-text);
    background:
        radial-gradient(circle at top left, rgba(234,220,199,.95), transparent 28%),
        radial-gradient(circle at 100% 8%, rgba(231,237,228,.95), transparent 24%),
        linear-gradient(180deg, #f7f2e9 0%, #f3ede3 48%, #f6f1e8 100%);
    font-family:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    overflow-x:hidden;
}

.front-body::before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    background:linear-gradient(90deg, rgba(181,138,89,.03), transparent 18%, transparent 82%, rgba(181,138,89,.03));
}

.front-body *,
.front-body *::before,
.front-body *::after{
    box-sizing:border-box;
}

.front-body .site-main{
    position:relative;
    z-index:1;
    padding-bottom:48px;
    overflow:hidden;
    width:100%;
}

.front-body .container{
    width:min(calc(100% - 32px), 1520px);
    margin-inline:auto;
    padding-inline:0;
}

.front-body h1,
.front-body h2,
.front-body h3,
.front-body h4,
.front-body .page-title,
.front-body .section-title,
.front-body .product-title,
.front-body .article-title,
.front-body .display{
    font-family:"Cormorant Garamond", Georgia, serif;
    color:var(--pf-text);
    letter-spacing:-.02em;
}

.front-body a{
    transition:all .24s ease;
}

.front-body p,
.front-body .section-description,
.front-body .product-short,
.front-body .notice-box,
.front-body .empty-state,
.front-body .page-shell p,
.front-body .article-shell p{
    color:var(--pf-muted);
}

.front-body .section{
    padding-block:44px;
    width:100%;
}

.front-body .section-tight-top{
    padding-top:12px;
}

.front-body .eyebrow{
    display:inline-flex;
    align-items:center;
    gap:12px;
    color:var(--pf-brand);
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.24em;
    text-transform:uppercase;
}

.front-body .eyebrow::before{
    content:"";
    width:34px;
    height:1px;
    background:linear-gradient(90deg, rgba(181,138,89,.9), rgba(181,138,89,.15));
}

.front-body .button{
    min-height:52px;
    padding:13px 22px;
    border-radius:999px;
    font-weight:700;
    font-size:.96rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:1px solid transparent;
    box-shadow:none;
}

.front-body .button-solid{
    background:linear-gradient(135deg, var(--pf-brand) 0%, var(--pf-brand-2) 100%);
    color:#fff;
    border-color:rgba(255,255,255,.08);
}

.front-body .button-solid:hover{
    transform:translateY(-1px);
    box-shadow:0 18px 28px rgba(37,55,44,.18);
}

.front-body .button-outline{
    background:rgba(255,255,255,.72);
    color:var(--pf-brand);
    border-color:rgba(37,55,44,.14);
}

.front-body .button-outline:hover{
    background:#fff;
    border-color:rgba(37,55,44,.22);
}

.front-body .button-block{
    width:100%;
}

.front-body .text-link{
    color:var(--pf-brand);
    font-weight:700;
}

.front-body .text-link:hover{
    color:var(--pf-accent);
}

.front-body .flash-wrap{
    padding-top:16px;
}

.front-body .flash{
    border-radius:20px;
    border:1px solid var(--pf-line);
    background:rgba(255,255,255,.92);
    box-shadow:var(--pf-shadow-soft);
}

/* Header */
.front-body .premium-header{
    position:relative;
    padding-bottom:12px;
    z-index:20;
}

.front-body .premium-topbar{
    background:linear-gradient(90deg, var(--pf-surface-dark-2), var(--pf-surface-dark));
    color:rgba(255,255,255,.92);
    border-bottom:1px solid rgba(255,255,255,.08);
}

.front-body .premium-topbar-inner{
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}

.front-body .premium-topbar-copy,
.front-body .premium-topbar-actions{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    font-size:.9rem;
}

.front-body .premium-topbar-actions a{
    color:#fff;
    display:inline-flex;
    align-items:center;
    gap:8px;
}

.front-body .premium-topbar-sep{
    width:5px;
    height:5px;
    border-radius:50%;
    background:rgba(255,255,255,.46);
}

.front-body .premium-header-main{
    margin-top:22px;
    width:100%;
    margin-inline:auto;
    background:rgba(255,255,255,.74);
    border:1px solid rgba(37,55,44,.08);
    box-shadow:var(--pf-shadow);
    backdrop-filter:blur(20px);
    border-radius:38px;
    padding:20px 22px;
    display:grid;
    grid-template-columns:320px minmax(0,1fr);
    align-items:start;
    gap:26px;
}

.front-body .premium-brand{
    display:flex;
    align-items:flex-start;
    gap:16px;
    min-width:0;
}

.front-body .premium-brand-logo{
    width:92px;
    min-width:92px;
    height:92px;
    border-radius:28px;
    margin:0;
    background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(245,239,229,.96));
    border:1px solid rgba(37,55,44,.08);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
    display:grid;
    place-items:center;
    padding:12px;
}

.front-body .premium-brand-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}

.front-body .premium-brand-copy{
    min-width:0;
}

.front-body .premium-brand-copy span{
    display:block;
    font-size:.73rem;
    text-transform:uppercase;
    letter-spacing:.18em;
    color:var(--pf-brand);
    font-weight:800;
    margin-bottom:8px;
}

.front-body .premium-brand-copy strong{
    display:block;
    font-family:"Cormorant Garamond", Georgia, serif;
    font-size:2rem;
    line-height:.94;
    margin-bottom:8px;
}

.front-body .premium-brand-copy small{
    display:block;
    color:var(--pf-muted);
    line-height:1.55;
    font-size:.95rem;
}

.front-body .premium-menu-toggle{
    display:none;
}

.front-body .premium-nav-content{
    min-width:0;
}

.front-body .premium-nav-grid{
    display:grid;
    gap:18px;
}

.front-body .premium-main-nav{
    display:flex;
    flex-wrap:wrap;
    gap:10px 12px;
}

.front-body .premium-main-nav a{
    display:inline-flex;
    align-items:center;
    min-height:46px;
    padding:10px 16px;
    border-radius:999px;
    color:var(--pf-brand);
    font-weight:700;
    border:1px solid transparent;
}

.front-body .premium-main-nav a:hover,
.front-body .premium-main-nav a.is-active{
    background:rgba(37,55,44,.06);
    border-color:rgba(37,55,44,.1);
}

.front-body .premium-nav-side{
    display:grid;
    gap:16px;
}

.front-body .premium-search-form{
    display:grid;
    grid-template-columns:20px minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
    background:rgba(245,239,229,.88);
    border:1px solid rgba(37,55,44,.08);
    border-radius:999px;
    padding:10px 10px 10px 18px;
}

.front-body .premium-search-form input{
    border:0;
    background:transparent;
    color:var(--pf-text);
    padding:0;
    min-width:0;
}

.front-body .premium-search-form input:focus{
    outline:none;
}

.front-body .premium-search-form button{
    min-height:44px;
    padding:10px 18px;
    border-radius:999px;
    border:0;
    background:linear-gradient(135deg, var(--pf-brand), var(--pf-brand-2));
    color:#fff;
    font-weight:700;
}

.front-body .premium-search-icon{
    color:var(--pf-muted);
}

.front-body .premium-utility-pills{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.front-body .premium-utility-pill,
.front-body .premium-cart-pill{
    display:inline-flex;
    align-items:center;
    gap:10px;
    min-height:48px;
    padding:0 18px;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(37,55,44,.1);
    color:var(--pf-brand);
    font-weight:700;
}

.front-body .premium-utility-pill.is-strong{
    background:linear-gradient(135deg, var(--pf-brand), var(--pf-brand-2));
    color:#fff;
}

.front-body .premium-cart-pill strong{
    display:inline-grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:999px;
    background:rgba(37,55,44,.08);
    font-size:.9rem;
}

.front-body .premium-utility-pill.is-strong strong,
.front-body .premium-utility-pill.is-strong .icon-sm{
    color:#fff;
}

.front-body .premium-collection-links{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.front-body .premium-collection-links a{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(37,55,44,.08);
    color:var(--pf-brand);
    font-weight:600;
}

.front-body .premium-collection-links a:hover{
    background:#fff;
}

/* Hero */
.front-body .premium-home-hero-section{
    padding-top:18px;
}

.front-body .premium-home-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.06fr) minmax(360px,.94fr);
    gap:30px;
    align-items:stretch;
}

.front-body .premium-home-hero-copy,
.front-body .premium-home-hero-stage{
    min-width:0;
}

.front-body .premium-home-hero-copy{
    background:rgba(255,255,255,.72);
    border:1px solid rgba(37,55,44,.08);
    border-radius:42px;
    box-shadow:var(--pf-shadow);
    padding:42px;
}

.front-body .premium-home-hero-copy h1{
    font-size:clamp(3rem, 7vw, 5.5rem);
    line-height:.93;
    margin:18px 0 18px;
    max-width:11ch;
}

.front-body .premium-home-hero-text{
    font-size:1.1rem;
    line-height:1.75;
    max-width:60ch;
    margin-bottom:20px;
}

.front-body .premium-badge-row{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.front-body .premium-badge-row span{
    display:inline-flex;
    align-items:center;
    min-height:42px;
    padding:0 16px;
    border-radius:999px;
    background:rgba(245,239,229,.95);
    border:1px solid rgba(37,55,44,.08);
    color:var(--pf-brand);
    font-weight:700;
}

.front-body .premium-badge-row.is-compact span{
    min-height:38px;
    padding-inline:14px;
    font-size:.92rem;
}

.front-body .premium-home-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:24px;
}

.front-body .premium-home-stat-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:16px;
    margin-top:28px;
}

.front-body .premium-home-stat-card{
    background:rgba(245,239,229,.72);
    border:1px solid rgba(37,55,44,.08);
    border-radius:24px;
    padding:18px 18px 16px;
}

.front-body .premium-home-stat-card strong{
    display:block;
    font-size:1.18rem;
    color:var(--pf-brand);
    margin-bottom:8px;
}

.front-body .premium-home-stat-card span{
    color:var(--pf-muted);
    font-size:.95rem;
    line-height:1.5;
}

.front-body .premium-home-hero-stage{
    display:grid;
    gap:18px;
}

.front-body .premium-hero-note-card,
.front-body .premium-hero-visual,
.front-body .premium-home-hero-stage .premium-hero-product-list{
    background:rgba(255,255,255,.72);
    border:1px solid rgba(37,55,44,.08);
    box-shadow:var(--pf-shadow);
    border-radius:34px;
}

.front-body .premium-hero-note-card{
    padding:22px 24px;
}

.front-body .premium-hero-note-card small{
    display:block;
    text-transform:uppercase;
    letter-spacing:.18em;
    color:var(--pf-brand);
    font-size:.72rem;
    font-weight:800;
    margin-bottom:10px;
}

.front-body .premium-hero-note-card p{
    margin:0;
    line-height:1.7;
}

.front-body .premium-hero-visual{
    position:relative;
    overflow:hidden;
    min-height:420px;
}

.front-body .premium-hero-visual img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

.front-body .premium-hero-visual::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg, rgba(18,28,22,.04) 0%, rgba(18,28,22,.45) 100%);
}

.front-body .premium-hero-visual-card{
    position:absolute;
    left:24px;
    right:24px;
    bottom:24px;
    z-index:2;
    background:rgba(255,255,255,.9);
    border:1px solid rgba(37,55,44,.08);
    border-radius:26px;
    padding:20px 22px;
    box-shadow:var(--pf-shadow-soft);
}

.front-body .premium-hero-visual-card span{
    display:block;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.18em;
    color:var(--pf-brand);
    font-weight:800;
    margin-bottom:8px;
}

.front-body .premium-hero-visual-card strong,
.front-body .premium-hero-visual-card h4{
    display:block;
    font-family:"Cormorant Garamond", Georgia, serif;
    font-size:2rem;
    line-height:.98;
    margin-bottom:8px;
}

.front-body .premium-hero-visual-card p{
    margin:0;
    line-height:1.65;
}

.front-body .premium-hero-product-list{
    padding:16px;
    display:grid;
    gap:12px;
}

.front-body .premium-hero-product-card{
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    gap:14px;
    align-items:center;
    background:rgba(245,239,229,.72);
    border:1px solid rgba(37,55,44,.08);
    border-radius:24px;
    padding:12px;
}

.front-body .premium-hero-product-card img{
    width:92px;
    height:92px;
    object-fit:cover;
    border-radius:18px;
}

.front-body .premium-hero-product-card small{
    display:block;
    color:var(--pf-accent);
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:.7rem;
    margin-bottom:6px;
}

.front-body .premium-hero-product-card strong{
    display:block;
    font-size:1.05rem;
    margin-bottom:6px;
}

.front-body .premium-hero-product-card strong a{
    color:var(--pf-text);
}

.front-body .premium-hero-product-card span{
    color:var(--pf-brand);
    font-weight:700;
}

/* Section head */
.front-body .premium-section-head,
.front-body .section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:24px;
}

.front-body .premium-section-head .section-title,
.front-body .section-head .section-title{
    font-size:clamp(2rem, 4.4vw, 3.3rem);
    margin:10px 0 8px;
    line-height:.98;
}

.front-body .section-description{
    max-width:62ch;
    line-height:1.75;
}

/* Categories */
.front-body .premium-category-mosaic{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    gap:24px;
}

.front-body .premium-category-feature-card,
.front-body .premium-category-tile{
    background:rgba(255,255,255,.78);
    border:1px solid rgba(37,55,44,.08);
    border-radius:34px;
    box-shadow:var(--pf-shadow-soft);
    overflow:hidden;
}

.front-body .premium-category-feature-card a,
.front-body .premium-category-tile a{
    display:block;
    color:inherit;
}

.front-body .premium-category-feature-card{
    min-height:100%;
}

.front-body .premium-category-feature-media{
    aspect-ratio:16/10;
    overflow:hidden;
}

.front-body .premium-category-feature-media img,
.front-body .premium-category-tile img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .45s ease;
}

.front-body .premium-category-feature-card:hover img,
.front-body .premium-category-tile:hover img{
    transform:scale(1.04);
}

.front-body .premium-category-feature-copy{
    padding:26px 28px 30px;
}

.front-body .premium-category-feature-copy h3{
    font-size:2.2rem;
    margin:12px 0 10px;
}

.front-body .premium-category-feature-copy p{
    margin:0 0 18px;
    line-height:1.72;
}

.front-body .premium-category-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:20px;
}

.front-body .premium-category-tile a{
    display:grid;
    grid-template-columns:120px minmax(0,1fr);
    gap:16px;
    align-items:center;
    padding:16px;
    min-height:170px;
}

.front-body .premium-category-tile img{
    border-radius:22px;
    aspect-ratio:1/1;
}

.front-body .premium-category-tile small{
    display:block;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.18em;
    color:var(--pf-brand);
    font-weight:800;
    margin-bottom:8px;
}

.front-body .premium-category-tile strong{
    display:block;
    font-size:1.18rem;
    margin-bottom:8px;
}

.front-body .premium-category-tile p{
    margin:0;
    line-height:1.6;
}

/* Home showcase */
.front-body .premium-home-showcase-shell{
    display:grid;
    gap:22px;
}

.front-body .premium-home-showcase-toolbar{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);
    gap:18px;
    align-items:start;
    padding:22px 24px;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(37,55,44,.08);
    border-radius:34px;
    box-shadow:var(--pf-shadow-soft);
}

.front-body .premium-home-category-pills{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.front-body .premium-home-category-pills button{
    appearance:none;
    border:1px solid rgba(37,55,44,.1);
    background:rgba(245,239,229,.78);
    color:var(--pf-brand);
    min-height:46px;
    padding:0 16px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    gap:10px;
    font:inherit;
    font-weight:700;
    cursor:pointer;
    transition:transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.front-body .premium-home-category-pills button span{
    white-space:nowrap;
}

.front-body .premium-home-category-pills button small{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:28px;
    min-height:28px;
    padding:0 8px;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    font-size:.76rem;
    font-weight:800;
    color:var(--pf-brand);
}

.front-body .premium-home-category-pills button:hover{
    background:#fff;
    transform:translateY(-1px);
    box-shadow:0 12px 28px rgba(28,36,29,.08);
}

.front-body .premium-home-category-pills button.is-active{
    background:linear-gradient(180deg, rgba(37,55,44,.98), rgba(28,39,31,.96));
    color:#fff;
    border-color:rgba(37,55,44,.98);
    box-shadow:0 18px 34px rgba(28,36,29,.16);
}

.front-body .premium-home-category-pills button.is-active small{
    background:rgba(255,255,255,.16);
    color:#fff;
}

.front-body .premium-home-showcase-summary{
    padding:4px 0 4px 6px;
}

.front-body .premium-home-showcase-summary strong{
    display:block;
    color:var(--pf-brand);
    font-size:1.12rem;
    margin-bottom:8px;
}

.front-body .premium-home-showcase-summary p{
    margin:0;
    color:var(--pf-muted);
    line-height:1.7;
}

.front-body .premium-home-showcase-grid{
    align-items:stretch;
}

.front-body .premium-home-showcase-item{
    display:flex;
}

.front-body .premium-home-showcase-item.is-hidden{
    display:none;
}

.front-body .premium-home-showcase-item > .product-card{
    width:100%;
    height:100%;
}

.front-body .premium-home-showcase-grid .product-card{
    min-height:100%;
}

.front-body .premium-home-showcase-grid .product-card-media{
    aspect-ratio:4/4.6;
}

.front-body .premium-home-showcase-grid .product-card h3{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:2.08em;
    font-size:1.5rem;
}

.front-body .premium-home-showcase-grid .product-card p{
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:5.1em;
}

.front-body .premium-home-empty{
    display:none;
    padding:22px 24px;
    border-radius:30px;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(37,55,44,.08);
    box-shadow:var(--pf-shadow-soft);
    color:var(--pf-muted);
    line-height:1.7;
}

.front-body .premium-home-empty.is-visible{
    display:block;
}

/* Featured */
.front-body .premium-featured-layout{
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
    gap:24px;
    align-items:start;
}

.front-body .premium-featured-lead{
    background:linear-gradient(180deg, rgba(37,55,44,.98), rgba(28,39,31,.96));
    color:#fff;
    border-radius:34px;
    overflow:hidden;
    box-shadow:0 28px 70px rgba(22,30,24,.18);
}

.front-body .premium-featured-lead-media{
    aspect-ratio:16/12;
    overflow:hidden;
}

.front-body .premium-featured-lead-media img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.front-body .premium-featured-lead-copy{
    padding:28px;
}

.front-body .premium-featured-lead-copy .eyebrow,
.front-body .premium-featured-lead-copy h3,
.front-body .premium-featured-lead-copy .premium-price,
.front-body .premium-featured-lead-copy li,
.front-body .premium-featured-lead-copy p{
    color:#fff;
}

.front-body .premium-featured-lead-copy h3{
    font-size:2.35rem;
    margin:14px 0 12px;
}

.front-body .premium-featured-lead-copy p{
    opacity:.88;
    line-height:1.72;
}

.front-body .premium-featured-lead-copy ul{
    margin:18px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:10px;
}

.front-body .premium-featured-lead-copy li{
    position:relative;
    padding-left:18px;
    opacity:.94;
}

.front-body .premium-featured-lead-copy li::before{
    content:"";
    position:absolute;
    left:0;
    top:.65em;
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--pf-accent);
}

.front-body .premium-featured-lead-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:24px;
}

.front-body .premium-featured-lead .button-solid{
    background:#fff;
    color:var(--pf-brand);
}

.front-body .premium-price{
    font-weight:800;
    font-size:1.1rem;
}

.front-body .premium-featured-grid.product-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
}

/* Product cards */
.front-body .product-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:22px;
    width:100%;
    max-width:100%;
}

.front-body .product-card,
.front-body .category-card,
.front-body .article-card,
.front-body .compact-info-card,
.front-body .detail-panel,
.front-body .contact-card,
.front-body .cart-panel,
.front-body .checkout-panel,
.front-body .account-dashboard-card,
.front-body .order-card,
.front-body .table-card{
    background:rgba(255,255,255,.8);
    border:1px solid rgba(37,55,44,.08);
    box-shadow:var(--pf-shadow-soft);
    border-radius:30px;
}

.front-body .product-card{
    overflow:hidden;
    display:flex;
    flex-direction:column;
}

.front-body .product-card-media{
    position:relative;
    aspect-ratio:4/4.3;
    overflow:hidden;
    background:linear-gradient(180deg, rgba(244,237,225,.75), rgba(255,255,255,.95));
}

.front-body .product-card-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .45s ease;
}

.front-body .product-card:hover .product-card-media img{
    transform:scale(1.05);
}

.front-body .product-badge{
    position:absolute;
    top:14px;
    left:14px;
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    color:var(--pf-brand);
    font-weight:800;
    font-size:.76rem;
    z-index:2;
}

.front-body .product-card-body{
    padding:20px;
    display:flex;
    flex:1;
    flex-direction:column;
}

.front-body .product-card-meta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    color:var(--pf-muted);
    font-size:.82rem;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:700;
    margin-bottom:10px;
}

.front-body .product-card h3{
    font-size:1.55rem;
    line-height:1.02;
    margin:0 0 10px;
}

.front-body .product-card h3 a{
    color:var(--pf-text);
}

.front-body .product-card p{
    line-height:1.68;
    margin:0 0 18px;
}

.front-body .price-row{
    display:flex;
    align-items:flex-end;
    gap:10px;
    margin-top:auto;
    margin-bottom:18px;
}

.front-body .price-row strong{
    color:var(--pf-brand);
    font-size:1.16rem;
}

.front-body .price-row span{
    color:var(--pf-muted);
    text-decoration:line-through;
}

.front-body .product-card-actions{
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px;
}

.front-body .product-card-actions form{
    margin:0;
}

.front-body .product-card-actions .button{
    width:100%;
}

/* Articles */
.front-body .article-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:22px;
}

.front-body .article-card{
    overflow:hidden;
}

.front-body .article-cover{
    display:block;
    aspect-ratio:16/11;
    overflow:hidden;
}

.front-body .article-cover img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.front-body .article-body{
    padding:20px;
}

.front-body .article-meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    color:var(--pf-muted);
    font-size:.84rem;
    font-weight:700;
    margin-bottom:12px;
}

.front-body .article-body h3{
    font-size:1.65rem;
    line-height:1.02;
    margin:0 0 12px;
}

.front-body .article-body h3 a{
    color:var(--pf-text);
}

.front-body .article-body p{
    margin:0 0 14px;
    line-height:1.68;
}

/* Story / Experience */
.front-body .premium-story-grid{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    gap:24px;
}

.front-body .premium-story-side{
    display:grid;
    gap:18px;
}

.front-body .premium-story-card{
    background:rgba(255,255,255,.78);
    border:1px solid rgba(37,55,44,.08);
    border-radius:34px;
    padding:26px;
    box-shadow:var(--pf-shadow-soft);
}

.front-body .premium-story-card-main{
    background:linear-gradient(180deg, rgba(255,255,255,.86), rgba(245,239,229,.9));
    padding:34px;
}

.front-body .premium-story-card-main .section-title{
    font-size:clamp(2.2rem, 4.4vw, 3.6rem);
    margin:12px 0 10px;
}

.front-body .premium-story-points{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:22px;
}

.front-body .premium-story-points span{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(37,55,44,.08);
    color:var(--pf-brand);
    font-weight:700;
}

.front-body .premium-story-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:24px;
}

.front-body .premium-story-card strong,
.front-body .premium-story-card h4{
    display:block;
    font-size:1.18rem;
    color:var(--pf-brand);
    margin-bottom:8px;
}

.front-body .premium-story-card p{
    margin:0;
    line-height:1.7;
}

/* Project */
.front-body .premium-project-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,.9fr);
    gap:24px;
    align-items:stretch;
}

.front-body .premium-project-card,
.front-body .premium-project-media-card,
.front-body .premium-appointment-form,
.front-body .premium-insight-panel,
.front-body .premium-faq-card{
    background:rgba(255,255,255,.8);
    border:1px solid rgba(37,55,44,.08);
    box-shadow:var(--pf-shadow);
    border-radius:34px;
}

.front-body .premium-project-card{
    padding:30px;
}

.front-body .premium-project-features{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:14px;
    margin-top:24px;
}

.front-body .premium-project-features article{
    background:rgba(245,239,229,.84);
    border:1px solid rgba(37,55,44,.08);
    border-radius:22px;
    padding:16px;
}

.front-body .premium-project-features strong,
.front-body .premium-project-features h4{
    display:block;
    color:var(--pf-brand);
    margin-bottom:8px;
}

.front-body .premium-project-features p{
    margin:0;
    line-height:1.6;
}

.front-body .premium-project-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:26px;
}

.front-body .premium-project-media-card{
    overflow:hidden;
    min-height:100%;
}

.front-body .premium-project-media-card img{
    width:100%;
    height:100%;
    min-height:100%;
    object-fit:cover;
}

/* Appointment */
.front-body .premium-appointment-layout{
    display:grid;
    grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
    gap:24px;
    align-items:start;
}

.front-body .premium-appointment-copy{
    background:linear-gradient(180deg, rgba(37,55,44,.97), rgba(26,36,29,.95));
    color:#fff;
    padding:34px;
    border-radius:34px;
    box-shadow:0 28px 70px rgba(26,36,29,.18);
}

.front-body .premium-appointment-copy .eyebrow,
.front-body .premium-appointment-copy .section-title,
.front-body .premium-appointment-copy .section-description,
.front-body .premium-appointment-copy .premium-appointment-note,
.front-body .premium-appointment-copy .premium-badge-row span{
    color:#fff;
}

.front-body .premium-appointment-copy .premium-badge-row span{
    background:rgba(255,255,255,.08);
    border-color:rgba(255,255,255,.08);
}

.front-body .premium-appointment-note{
    margin-top:22px;
    opacity:.86;
    line-height:1.75;
}

.front-body .premium-appointment-form{
    padding:24px;
}

.front-body .premium-form-grid,
.front-body .form-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:16px;
}

.front-body .field{
    display:grid;
    gap:8px;
}

.front-body .field-full{
    grid-column:1 / -1;
}

.front-body .field label{
    color:var(--pf-brand);
    font-weight:700;
    font-size:.92rem;
}

.front-body .field input,
.front-body .field select,
.front-body .field textarea{
    min-height:54px;
    border-radius:18px;
    border:1px solid rgba(37,55,44,.12);
    background:rgba(245,239,229,.65);
    padding:14px 16px;
    font:inherit;
    color:var(--pf-text);
}

.front-body .field textarea{
    min-height:120px;
    resize:vertical;
}

.front-body .field input:focus,
.front-body .field select:focus,
.front-body .field textarea:focus{
    outline:none;
    border-color:rgba(37,55,44,.28);
    background:#fff;
    box-shadow:0 0 0 3px rgba(181,138,89,.12);
}

.front-body .premium-appointment-actions,
.front-body .luxury-appointment-actions,
.front-body .account-inline-actions,
.front-body .hero-cta{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:22px;
}

/* Insights */
.front-body .premium-insight-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:24px;
}

.front-body .premium-insight-panel{
    padding:28px;
}

.front-body .premium-testimonial-list{
    display:grid;
    gap:16px;
}

.front-body .premium-testimonial-card{
    background:rgba(245,239,229,.82);
    border:1px solid rgba(37,55,44,.08);
    border-radius:24px;
    padding:20px;
}

.front-body .premium-testimonial-card p{
    margin:0 0 12px;
    line-height:1.72;
}

.front-body .premium-testimonial-card strong{
    display:block;
    color:var(--pf-brand);
    margin-bottom:4px;
}

.front-body .premium-testimonial-card span{
    color:var(--pf-muted);
    font-size:.92rem;
}

.front-body .premium-home-article-grid.article-grid{
    grid-template-columns:1fr;
}

/* FAQ */
.front-body .premium-faq-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:18px;
}

.front-body .premium-faq-card{
    padding:22px;
}

.front-body .premium-faq-card strong{
    display:block;
    font-size:1.12rem;
    color:var(--pf-brand);
    margin-bottom:10px;
}

.front-body .premium-faq-card p{
    margin:0;
    line-height:1.7;
}

/* Generic hero blocks */
.front-body .page-hero{
    padding-top:18px;
    width:100%;
}

.front-body .page-hero-card,
.front-body .page-cover-card,
.front-body .page-shell,
.front-body .article-shell,
.front-body .checkout-headline-card{
    width:100%;
    max-width:100%;
    margin-inline:auto;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(37,55,44,.08);
    border-radius:36px;
    box-shadow:var(--pf-shadow);
}

.front-body .page-hero-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,.88fr);
    gap:24px;
    overflow:hidden;
    padding:24px;
}

.front-body .page-cover-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);
    gap:24px;
    align-items:stretch;
    overflow:hidden;
    padding:24px;
}

.front-body .page-hero-card-compact{
    grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);
}

.front-body .page-hero-copy,
.front-body .page-cover-copy{
    padding:8px;
    min-width:0;
}

.front-body .page-title{
    font-size:clamp(2.4rem, 5vw, 4rem);
    line-height:.95;
    margin:14px 0 12px;
}

.front-body .page-hero-copy p,
.front-body .page-cover-copy p{
    line-height:1.78;
    max-width:64ch;
}

.front-body .page-hero-media,
.front-body .page-cover-media{
    overflow:hidden;
    border-radius:28px;
    min-height:100%;
}

.front-body .page-hero-media img,
.front-body .page-cover-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.front-body .breadcrumb{
    color:var(--pf-muted);
    font-size:.9rem;
    margin-bottom:8px;
}

.front-body .breadcrumb a{
    color:var(--pf-brand);
}

.front-body .meta-chip-list,
.front-body .trust-row{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.front-body .meta-chip,
.front-body .trust-chip,
.front-body .status-badge{
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(245,239,229,.86);
    border:1px solid rgba(37,55,44,.08);
    color:var(--pf-brand);
    font-weight:700;
}

.front-body .filter-shell{
    width:100%;
    max-width:100%;
    margin:24px 0;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(37,55,44,.08);
    border-radius:28px;
    box-shadow:var(--pf-shadow-soft);
    padding:18px;
}

.front-body .filter-shell form{
    display:grid;
    grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(160px,.7fr)) auto;
    gap:12px;
    align-items:center;
}

.front-body .filter-shell input,
.front-body .filter-shell select{
    min-height:50px;
    border-radius:16px;
    border:1px solid rgba(37,55,44,.12);
    background:rgba(245,239,229,.65);
    padding:0 14px;
    font:inherit;
    width:100%;
}

.front-body .filter-meta{
    margin-top:12px;
    color:var(--pf-muted);
}

.front-body .empty-state{
    padding:40px;
    text-align:center;
}

/* Product detail */
.front-body .product-detail{
    display:grid;
    grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
    gap:28px;
    margin-top:18px;
}

.front-body .product-gallery,
.front-body .product-summary,
.front-body .buy-box,
.front-body .spec-item,
.front-body .notice-box,
.front-body .wallet-checkout-card,
.front-body .member-lounge-media-card,
.front-body .guest-lounge-media-card,
.front-body .account-stat-card,
.front-body .account-highlight-item,
.front-body .account-inline-card,
.front-body .account-summary-item,
.front-body .order-track-card,
.front-body .compact-info-card{
    background:rgba(255,255,255,.8);
    border:1px solid rgba(37,55,44,.08);
    box-shadow:var(--pf-shadow-soft);
    border-radius:28px;
}

.front-body .product-gallery{
    padding:18px;
}

.front-body .product-main-image{
    border-radius:26px;
    overflow:hidden;
    aspect-ratio:1/1.06;
    background:rgba(245,239,229,.72);
}

.front-body .product-main-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.front-body .thumb-strip{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:12px;
    margin-top:14px;
}

.front-body .thumb-button{
    border:1px solid rgba(37,55,44,.1);
    border-radius:18px;
    background:#fff;
    padding:0;
    overflow:hidden;
}

.front-body .thumb-button img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
}

.front-body .thumb-button.is-active{
    border-color:rgba(181,138,89,.8);
    box-shadow:0 0 0 3px rgba(181,138,89,.14);
}

.front-body .product-summary{
    padding:28px;
}

.front-body .product-title{
    font-size:clamp(2.4rem, 5vw, 4rem);
    line-height:.95;
    margin:12px 0 14px;
}

.front-body .product-meta,
.front-body .rating-line{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    color:var(--pf-muted);
    font-weight:700;
}

.front-body .product-price{
    display:flex;
    align-items:flex-end;
    gap:14px;
    margin:20px 0 8px;
}

.front-body .product-price strong{
    font-size:2rem;
    color:var(--pf-brand);
}

.front-body .product-price s{
    color:var(--pf-muted);
}

.front-body .tax-note{
    color:var(--pf-muted);
    margin-bottom:14px;
}

.front-body .highlight-list{
    list-style:none;
    margin:18px 0 0;
    padding:0;
    display:grid;
    gap:10px;
}

.front-body .highlight-list li{
    position:relative;
    padding-left:18px;
    line-height:1.68;
}

.front-body .highlight-list li::before{
    content:"";
    position:absolute;
    left:0;
    top:.7em;
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--pf-accent);
}

.front-body .buy-box{
    padding:20px;
    margin-top:20px;
}

.front-body .quantity-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}

.front-body .quantity-wrap{
    display:grid;
    grid-template-columns:42px 84px 42px;
    align-items:center;
    gap:8px;
}

.front-body .quantity-wrap button,
.front-body .quantity-wrap input{
    min-height:44px;
    border-radius:14px;
    border:1px solid rgba(37,55,44,.12);
    background:rgba(245,239,229,.72);
    text-align:center;
    font:inherit;
}

.front-body .buy-actions{
    display:grid;
    grid-template-columns:1fr auto;
    gap:12px;
    margin-bottom:16px;
}

.front-body .spec-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:12px;
    margin-top:18px;
}

.front-body .spec-item{
    padding:16px;
}

.front-body .spec-item strong{
    display:block;
    color:var(--pf-brand);
    margin-bottom:6px;
}

.front-body .spec-item span{
    color:var(--pf-muted);
}

.front-body .detail-grid,
.front-body .compact-info-grid{
    display:grid;
    gap:20px;
    margin-top:24px;
    width:100%;
    max-width:100%;
}

.front-body .detail-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
}

.front-body .compact-info-grid{
    grid-template-columns:repeat(3, minmax(0,1fr));
}

.front-body .detail-panel,
.front-body .compact-info-card{
    padding:24px;
}

.front-body .detail-panel h2,
.front-body .compact-info-card strong{
    margin-top:0;
    color:var(--pf-brand);
}

.front-body .detail-panel p,
.front-body .detail-panel li,
.front-body .compact-info-card p{
    line-height:1.75;
}

/* Contact */
.front-body .contact-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:22px;
}

.front-body .contact-card{
    padding:28px;
}

.front-body .contact-list{
    display:grid;
    gap:14px;
    margin-top:18px;
}

.front-body .contact-list a,
.front-body .contact-list span{
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:14px 16px;
    background:rgba(245,239,229,.72);
    border:1px solid rgba(37,55,44,.08);
    border-radius:18px;
}

.front-body .contact-list strong{
    color:var(--pf-brand);
}

.front-body .kicker-grid{
    display:grid;
    gap:12px;
    margin-top:20px;
}

.front-body .kicker{
    background:rgba(245,239,229,.72);
    border:1px solid rgba(37,55,44,.08);
    border-radius:18px;
    padding:14px 16px;
    color:var(--pf-muted);
    line-height:1.65;
}

.front-body .kicker strong{
    display:block;
    color:var(--pf-brand);
    margin-bottom:6px;
}

/* Cart / checkout / order track */
.front-body .cart-layout,
.front-body .checkout-layout,
.front-body .account-dashboard-grid,
.front-body .order-track-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,.88fr);
    gap:22px;
}

.front-body .checkout-layout-enhanced{
    grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
}

.front-body .cart-panel,
.front-body .checkout-panel,
.front-body .account-dashboard-card,
.front-body .guest-lounge-panel,
.front-body .guest-lounge-showcase,
.front-body .member-lounge-hero,
.front-body .wallet-panel,
.front-body .order-track-card{
    padding:26px;
}

.front-body .cart-list,
.front-body .admin-mini-list,
.front-body .account-highlight-list{
    display:grid;
    gap:14px;
}

.front-body .cart-item{
    display:grid;
    grid-template-columns:118px minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    padding:16px;
    background:rgba(245,239,229,.7);
    border:1px solid rgba(37,55,44,.08);
    border-radius:22px;
}

.front-body .cart-item-media img{
    width:118px;
    height:118px;
    object-fit:cover;
    border-radius:18px;
}

.front-body .cart-item-copy h3{
    margin:0 0 8px;
    font-size:1.55rem;
}

.front-body .cart-item-meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    color:var(--pf-muted);
    font-weight:700;
    font-size:.86rem;
}

.front-body .cart-item-actions{
    display:grid;
    gap:10px;
    min-width:180px;
}

.front-body .checkout-headline-card{
    padding:26px;
    margin-bottom:22px;
}

.front-body .checkout-headline-card .page-title{
    margin-top:10px;
}

.front-body .wallet-checkout-card,
.front-body .notice-box.account-inline-notice{
    padding:18px;
}

.front-body .wallet-checkout-toggle{
    display:flex;
    align-items:center;
    gap:12px;
    cursor:pointer;
    font-weight:700;
    color:var(--pf-brand);
}

.front-body .wallet-checkout-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin-top:14px;
}

/* Account */
.front-body .guest-lounge-shell{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
    gap:24px;
}

.front-body .guest-lounge-showcase,
.front-body .member-lounge-hero{
    background:rgba(255,255,255,.8);
    border:1px solid rgba(37,55,44,.08);
    box-shadow:var(--pf-shadow);
    border-radius:38px;
}

.front-body .guest-lounge-showcase{
    display:grid;
    gap:22px;
}

.front-body .guest-lounge-copy h1,
.front-body .member-lounge-copy h1{
    font-size:clamp(2.5rem, 5vw, 4.1rem);
    line-height:.96;
    margin:14px 0 12px;
}

.front-body .guest-lounge-copy p,
.front-body .member-lounge-copy p{
    line-height:1.76;
}

.front-body .guest-lounge-badges,
.front-body .member-lounge-highlights,
.front-body .account-stat-grid,
.front-body .account-summary-grid,
.front-body .account-inline-grid{
    display:grid;
    gap:16px;
}

.front-body .guest-lounge-badges{
    grid-template-columns:repeat(3, minmax(0,1fr));
}

.front-body .guest-lounge-badges span,
.front-body .member-lounge-highlights article,
.front-body .guest-lounge-benefits article,
.front-body .account-stat-card,
.front-body .account-summary-item,
.front-body .account-inline-card,
.front-body .account-highlight-item{
    padding:16px 18px;
}

.front-body .guest-lounge-media,
.front-body .member-lounge-media{
    position:relative;
    overflow:hidden;
    border-radius:28px;
}

.front-body .guest-lounge-media img,
.front-body .member-lounge-media img{
    width:100%;
    height:100%;
    min-height:320px;
    object-fit:cover;
}

.front-body .guest-lounge-media-card,
.front-body .member-lounge-media-card{
    position:absolute;
    left:18px;
    right:18px;
    bottom:18px;
    padding:18px;
    background:rgba(255,255,255,.92);
}

.front-body .guest-lounge-media-card small,
.front-body .member-lounge-media-card small{
    display:block;
    text-transform:uppercase;
    letter-spacing:.16em;
    color:var(--pf-brand);
    font-size:.72rem;
    font-weight:800;
    margin-bottom:8px;
}

.front-body .guest-lounge-media-card strong,
.front-body .member-lounge-media-card strong{
    display:block;
    font-size:1.22rem;
    margin-bottom:8px;
}

.front-body .guest-lounge-media-card span,
.front-body .member-lounge-media-card span{
    color:var(--pf-muted);
    line-height:1.6;
}

.front-body .guest-lounge-benefits,
.front-body .member-lounge-highlights{
    grid-template-columns:repeat(3, minmax(0,1fr));
}

.front-body .guest-lounge-benefits article,
.front-body .member-lounge-highlights article,
.front-body .account-stat-card,
.front-body .account-summary-item,
.front-body .account-inline-card,
.front-body .account-highlight-item{
    background:rgba(245,239,229,.76);
    border:1px solid rgba(37,55,44,.08);
    border-radius:22px;
}

.front-body .guest-lounge-benefits strong,
.front-body .member-lounge-highlights strong,
.front-body .account-stat-card strong,
.front-body .account-summary-item strong,
.front-body .account-inline-card strong,
.front-body .account-highlight-item strong{
    display:block;
    color:var(--pf-brand);
    margin-bottom:8px;
}

.front-body .tab-switch{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-bottom:18px;
}

.front-body .tab-switch button{
    min-height:46px;
    padding:0 18px;
    border-radius:999px;
    border:1px solid rgba(37,55,44,.1);
    background:#fff;
    color:var(--pf-brand);
    font-weight:700;
}

.front-body .tab-switch button.is-active{
    background:linear-gradient(135deg, var(--pf-brand), var(--pf-brand-2));
    color:#fff;
}

.front-body .tab-panel{
    display:none;
}

.front-body .tab-panel.is-active{
    display:block;
}

.front-body .account-stat-grid,
.front-body .account-summary-grid,
.front-body .account-inline-grid{
    grid-template-columns:repeat(4, minmax(0,1fr));
    margin:22px 0;
}

.front-body .account-stat-card small,
.front-body .account-summary-item small,
.front-body .account-inline-card small,
.front-body .account-highlight-item p,
.front-body .account-highlight-side small{
    color:var(--pf-muted);
}

.front-body .account-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:14px;
    margin-bottom:16px;
}

.front-body .account-section-head h2{
    margin:0;
    font-size:2rem;
}

.front-body .account-section-head p{
    margin:4px 0 0;
}

.front-body .account-highlight-item{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}

.front-body .account-highlight-side{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:8px;
}

/* Page and article shells */
.front-body .page-shell,
.front-body .article-shell{
    width:100%;
    max-width:100%;
    padding:32px;
}

.front-body .page-shell > *,
.front-body .article-shell > *{
    max-width:100%;
}

.front-body .page-shell section,
.front-body .article-shell section{
    padding-top:18px;
    width:100%;
}

.front-body .page-shell h2,
.front-body .article-shell h2{
    font-size:2rem;
    margin:0 0 10px;
}

.front-body .page-shell p,
.front-body .article-shell p{
    line-height:1.82;
}

.front-body .page-shell h2,
.front-body .page-shell p,
.front-body .page-shell .breadcrumb,
.front-body .page-shell .page-title{
    text-align:left;
}

/* Footer */
.front-body .premium-footer{
    position:relative;
    background:linear-gradient(180deg, rgba(32,44,36,.98), rgba(22,30,25,.98));
    color:#fff;
    padding:64px 0 112px;
    overflow:hidden;
}

.front-body .premium-footer::before{
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(circle at 0% 0%, rgba(181,138,89,.16), transparent 24%), radial-gradient(circle at 100% 0%, rgba(255,255,255,.06), transparent 20%);
    pointer-events:none;
}

.front-body .premium-footer-shell{
    position:relative;
    z-index:1;
    width:100%;
    max-width:100%;
}

.front-body .premium-footer-intro{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr);
    gap:24px;
    margin-bottom:24px;
    width:100%;
}

.front-body .premium-footer-brand,
.front-body .premium-footer-newsletter,
.front-body .premium-footer-column{
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.08);
    border-radius:34px;
    padding:28px;
    backdrop-filter:blur(10px);
    min-width:0;
}

.front-body .premium-footer-logo{
    display:inline-flex;
    width:118px;
    height:118px;
    border-radius:28px;
    background:rgba(255,255,255,.92);
    padding:14px;
    margin-bottom:18px;
}

.front-body .premium-footer-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
}

.front-body .premium-footer-brand h2,
.front-body .premium-footer-newsletter h3,
.front-body .premium-footer-column h3{
    color:#fff;
    margin:12px 0 10px;
}

.front-body .premium-footer-brand h2{
    font-size:2.35rem;
}

.front-body .premium-footer-brand p,
.front-body .premium-footer-newsletter p,
.front-body .premium-footer-column p,
.front-body .premium-footer-column li a,
.front-body .premium-footer-bottom,
.front-body .premium-credit-line a,
.front-body .premium-footer-address span{
    color:rgba(255,255,255,.76);
}

.front-body .premium-footer-contact{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:20px;
}

.front-body .premium-footer-contact a{
    display:inline-flex;
    align-items:center;
    gap:10px;
    min-height:46px;
    padding:0 16px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.08);
    color:#fff;
}

.front-body .premium-footer-address{
    display:grid;
    gap:6px;
    margin-top:18px;
}

.front-body .premium-footer-address strong{
    color:#fff;
}

.front-body .premium-newsletter-form{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    margin-top:18px;
}

.front-body .premium-newsletter-form input{
    min-height:54px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.92);
    padding:0 18px;
    font:inherit;
}

.front-body .premium-newsletter-form button{
    min-height:54px;
    padding:0 22px;
    border:0;
    border-radius:999px;
    background:#fff;
    color:var(--pf-brand);
    font-weight:800;
}

.front-body .premium-footer-socials{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:16px;
}

.front-body .premium-footer-socials a{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.08);
    color:#fff;
    font-weight:700;
}

.front-body .premium-footer-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:18px;
    margin-bottom:22px;
    width:100%;
}

.front-body .premium-footer-column ul{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:10px;
}

.front-body .premium-footer-column a:hover,
.front-body .premium-credit-line a:hover,
.front-body .premium-footer-socials a:hover{
    color:#fff;
}

.front-body .premium-footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.08);
}

.front-body .premium-credit-line{
    margin-top:18px;
    text-align:center;
}

.front-body .premium-credit-line a{
    font-family:"Allura", "Cormorant Garamond", serif;
    font-size:1.55rem;
    letter-spacing:.02em;
}

.front-body .premium-mobile-sticky{
    display:none;
}

/* Responsive */
@media (max-width: 1280px){
    .front-body .product-grid{grid-template-columns:repeat(3, minmax(0,1fr));}
    .front-body .premium-home-showcase-toolbar{grid-template-columns:1fr;}
    .front-body .premium-featured-layout,
    .front-body .premium-category-mosaic,
    .front-body .premium-story-grid,
    .front-body .premium-project-layout,
    .front-body .premium-appointment-layout,
    .front-body .premium-insight-grid,
    .front-body .product-detail,
    .front-body .guest-lounge-shell,
    .front-body .cart-layout,
    .front-body .checkout-layout,
    .front-body .account-dashboard-grid,
    .front-body .page-hero-card,
    .front-body .page-cover-card{grid-template-columns:1fr;}
    .front-body .premium-home-hero-grid{grid-template-columns:1fr;}
}

@media (max-width: 1100px){
    .front-body .premium-header-main{grid-template-columns:1fr;}
    .front-body .premium-brand{padding-right:56px;}
    .front-body .premium-menu-toggle{
        display:inline-grid;
        place-items:center;
        width:52px;
        height:52px;
        position:absolute;
        top:18px;
        right:18px;
        border:1px solid rgba(37,55,44,.1);
        border-radius:18px;
        background:#fff;
        color:var(--pf-brand);
    }
    .front-body .premium-nav-content{display:none;}
    .front-body .premium-nav-content.is-open{display:block;}
    .front-body .premium-topbar-inner{min-height:unset;padding:10px 0;align-items:flex-start;}
    .front-body .premium-topbar-copy{max-width:68ch;}
    .front-body .product-grid{grid-template-columns:repeat(2, minmax(0,1fr));}
    .front-body .article-grid,
    .front-body .premium-faq-grid,
    .front-body .premium-footer-grid,
    .front-body .compact-info-grid,
    .front-body .guest-lounge-benefits,
    .front-body .member-lounge-highlights,
    .front-body .account-stat-grid,
    .front-body .account-summary-grid,
    .front-body .account-inline-grid,
    .front-body .premium-project-features,
    .front-body .premium-category-grid,
    .front-body .premium-home-stat-grid{grid-template-columns:repeat(2, minmax(0,1fr));}
    .front-body .detail-grid,
    .front-body .contact-grid,
    .front-body .wallet-checkout-grid{grid-template-columns:1fr;}
    .front-body .premium-footer-intro{grid-template-columns:1fr;}
}

@media (max-width: 820px){
    .front-body .container{
        width:min(calc(100% - 20px), 1520px);
        margin-inline:auto;
    }
    .front-body .section{padding-block:34px;}
    .front-body .premium-home-hero-copy,
    .front-body .premium-home-showcase-toolbar,
    .front-body .premium-project-card,
    .front-body .premium-appointment-copy,
    .front-body .premium-appointment-form,
    .front-body .premium-insight-panel,
    .front-body .page-shell,
    .front-body .article-shell,
    .front-body .cart-panel,
    .front-body .checkout-panel,
    .front-body .account-dashboard-card,
    .front-body .guest-lounge-showcase,
    .front-body .guest-lounge-panel,
    .front-body .member-lounge-hero,
    .front-body .contact-card,
    .front-body .detail-panel,
    .front-body .premium-footer-brand,
    .front-body .premium-footer-newsletter,
    .front-body .premium-footer-column{
        padding:22px;
        border-radius:28px;
    }
    .front-body .premium-home-hero-copy h1{max-width:none;}
    .front-body .premium-home-showcase-toolbar{padding:20px;border-radius:28px;}
    .front-body .premium-featured-grid.product-grid,
    .front-body .premium-home-article-grid.article-grid,
    .front-body .product-grid,
    .front-body .article-grid,
    .front-body .premium-faq-grid,
    .front-body .compact-info-grid,
    .front-body .premium-project-features,
    .front-body .premium-category-grid,
    .front-body .premium-home-stat-grid,
    .front-body .guest-lounge-badges,
    .front-body .guest-lounge-benefits,
    .front-body .member-lounge-highlights,
    .front-body .account-stat-grid,
    .front-body .account-summary-grid,
    .front-body .account-inline-grid{grid-template-columns:1fr;}
    .front-body .premium-category-tile a{grid-template-columns:96px minmax(0,1fr);min-height:150px;}
    .front-body .product-card-actions,
    .front-body .buy-actions,
    .front-body .premium-footer-bottom,
    .front-body .premium-newsletter-form,
    .front-body .filter-shell form,
    .front-body .premium-form-grid,
    .front-body .form-grid,
    .front-body .cart-item{
        grid-template-columns:1fr;
    }
    .front-body .cart-item-actions{min-width:0;}
    .front-body .cart-item-media img{width:100%;height:auto;aspect-ratio:1/1;}
    .front-body .page-hero-card,
    .front-body .page-cover-card{padding:18px;}
    .front-body .page-hero-media,
    .front-body .page-cover-media{min-height:220px;}
    .front-body .thumb-strip{grid-template-columns:repeat(2, minmax(0,1fr));}
    .front-body .premium-topbar-actions{display:none;}
    .front-body .premium-footer{padding-bottom:100px;}
    .front-body .premium-mobile-sticky{
        position:fixed;
        left:12px;
        right:12px;
        bottom:12px;
        z-index:60;
        display:grid;
        grid-template-columns:repeat(3, minmax(0,1fr));
        gap:10px;
        padding:10px;
        border-radius:999px;
        background:rgba(255,255,255,.95);
        border:1px solid rgba(37,55,44,.1);
        box-shadow:0 18px 40px rgba(31,37,31,.16);
        backdrop-filter:blur(18px);
    }
    .front-body .premium-mobile-sticky a{
        min-height:46px;
        border-radius:999px;
        display:flex;
        align-items:center;
        justify-content:center;
        gap:8px;
        background:rgba(245,239,229,.75);
        color:var(--pf-brand);
        font-weight:700;
    }
}

@media (max-width: 560px){
    .front-body .premium-topbar{display:none;}
    .front-body .container{
        width:min(calc(100% - 16px), 1520px);
        margin-inline:auto;
    }
    .front-body .premium-header-main{padding:18px; margin-top:14px; border-radius:28px;}
    .front-body .premium-brand{gap:12px;}
    .front-body .premium-brand-logo{width:78px;height:78px;min-width:78px;border-radius:22px;}
    .front-body .premium-brand-copy strong{font-size:1.72rem;}
    .front-body .premium-brand-copy small{font-size:.9rem;}
    .front-body .premium-home-hero-copy h1,
    .front-body .page-title,
    .front-body .product-title,
    .front-body .guest-lounge-copy h1,
    .front-body .member-lounge-copy h1{font-size:2.55rem;}
    .front-body .premium-hero-visual{min-height:300px;}
    .front-body .premium-hero-product-card{grid-template-columns:78px minmax(0,1fr);}
    .front-body .premium-hero-product-card img{width:78px;height:78px;}
    .front-body .premium-home-hero-actions,
    .front-body .premium-appointment-actions,
    .front-body .premium-story-actions,
    .front-body .premium-project-actions,
    .front-body .hero-cta,
    .front-body .premium-footer-contact,
    .front-body .premium-footer-socials,
    .front-body .tab-switch{display:grid;grid-template-columns:1fr;}
    .front-body .premium-home-hero-actions .button,
    .front-body .premium-appointment-actions .button,
    .front-body .premium-story-actions .button,
    .front-body .premium-project-actions .button,
    .front-body .hero-cta .button,
    .front-body .premium-footer-contact a,
    .front-body .premium-footer-socials a,
    .front-body .tab-switch button{width:100%;}
    .front-body .premium-home-category-pills{display:grid;grid-template-columns:repeat(2, minmax(0,1fr));}
    .front-body .premium-home-category-pills button{width:100%;justify-content:center;padding-inline:14px;}
    .front-body .premium-home-showcase-summary{padding-left:0;}
    .front-body .premium-home-stat-card,
    .front-body .premium-story-card,
    .front-body .product-card-body,
    .front-body .article-body,
    .front-body .detail-panel,
    .front-body .compact-info-card,
    .front-body .premium-faq-card{padding:18px;}
    .front-body .premium-category-tile a{grid-template-columns:1fr;}
    .front-body .premium-category-tile img{aspect-ratio:16/10;}
    .front-body .quantity-row{flex-direction:column;align-items:stretch;}
    .front-body .page-shell{padding:18px;}
    .front-body .meta-chip-list{display:grid;grid-template-columns:1fr;}
}
/* ===== MOBİLDE ANASAYFA ÜRÜNLERİ YANA KAYDIRMALI ===== */
@media (max-width: 820px){
    .front-body .premium-home-showcase-grid{
        display:grid !important;
        grid-auto-flow:column !important;
        grid-auto-columns:minmax(220px, 78vw) !important;
        grid-template-columns:none !important;
        gap:14px !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        padding-bottom:8px !important;
        scroll-snap-type:x mandatory;
        -webkit-overflow-scrolling:touch;
    }

    .front-body .premium-home-showcase-grid::-webkit-scrollbar{
        height:8px;
    }

    .front-body .premium-home-showcase-grid::-webkit-scrollbar-thumb{
        background:rgba(37,55,44,.18);
        border-radius:999px;
    }

    .front-body .premium-home-showcase-item{
        display:block !important;
        width:100% !important;
        min-width:0 !important;
        scroll-snap-align:start;
    }

    .front-body .premium-home-showcase-item > .product-card{
        width:100% !important;
        min-height:100% !important;
    }

    .front-body .premium-home-showcase-grid .product-card{
        border-radius:22px !important;
    }

    .front-body .premium-home-showcase-grid .product-card-body{
        padding:16px !important;
    }

    .front-body .premium-home-showcase-grid .product-card h3{
        font-size:1.22rem !important;
        min-height:auto !important;
    }

    .front-body .premium-home-showcase-grid .product-card p{
        -webkit-line-clamp:2 !important;
        min-height:auto !important;
        font-size:.92rem !important;
    }

    .front-body .premium-home-showcase-grid .product-card-media{
        aspect-ratio:4/4.5 !important;
    }
}

/* Insight scrollers + pickup map */
.front-body .premium-section-head--slider{
    align-items:flex-end;
    gap:16px;
}

.front-body .premium-slider-header-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
}

.front-body .premium-slider-controls{
    display:flex;
    align-items:center;
    gap:10px;
    flex-shrink:0;
}

.front-body .premium-slider-button{
    width:44px;
    height:44px;
    border:1px solid rgba(37,55,44,.12);
    border-radius:999px;
    background:#fff;
    color:var(--pf-brand);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    cursor:pointer;
    transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.front-body .premium-slider-button:hover{
    transform:translateY(-1px);
    border-color:rgba(37,55,44,.2);
    box-shadow:0 10px 22px rgba(17,24,19,.08);
}

.front-body .premium-inline-scroller{
    display:grid;
    grid-auto-flow:column;
    gap:16px;
    overflow-x:auto;
    overflow-y:hidden;
    padding:4px 2px 10px;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
}

.front-body .premium-inline-scroller > *{
    min-width:0;
    scroll-snap-align:start;
}

.front-body .premium-inline-scroller::-webkit-scrollbar{
    height:8px;
}

.front-body .premium-inline-scroller::-webkit-scrollbar-thumb{
    background:rgba(37,55,44,.18);
    border-radius:999px;
}

.front-body .premium-testimonial-list.premium-inline-scroller{
    grid-auto-columns:minmax(260px, 320px);
}

.front-body .premium-home-article-scroller{
    grid-auto-columns:minmax(270px, 350px);
}

.front-body .premium-home-article-scroller .article-card{
    height:100%;
    display:grid;
    grid-template-rows:auto 1fr;
}

.front-body .premium-home-article-scroller .article-body{
    display:grid;
    align-content:start;
    gap:12px;
}

.front-body .premium-home-article-scroller .article-body p,
.front-body .premium-testimonial-card p{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.front-body .premium-home-article-scroller .article-body p{
    -webkit-line-clamp:3;
}

.front-body .premium-testimonial-card p{
    -webkit-line-clamp:4;
    min-height:0;
    margin-bottom:12px;
}

.front-body .pickup-location-card{
    margin-top:20px;
    padding:24px;
    border-radius:26px;
    background:#fff;
    border:1px solid rgba(37,55,44,.08);
    box-shadow:0 18px 46px rgba(17,24,19,.08);
    display:grid;
    grid-template-columns:minmax(0, .95fr) minmax(0, 1.05fr);
    gap:20px;
    align-items:start;
}

.front-body .pickup-location-copy{
    display:grid;
    gap:14px;
}

.front-body .pickup-location-meta{
    display:grid;
    gap:10px;
    color:var(--pf-muted);
    line-height:1.8;
}

.front-body .pickup-location-meta p{
    margin:0;
}

.front-body .pickup-location-meta strong{
    color:var(--pf-brand);
}

.front-body .pickup-map-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.front-body .pickup-map-embed{
    position:relative;
    width:100%;
    min-height:300px;
    border-radius:22px;
    overflow:hidden;
    background:#f4efe6;
    box-shadow:inset 0 0 0 1px rgba(37,55,44,.06);
}

.front-body .pickup-map-embed iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}

@media (max-width: 900px){
    .front-body .pickup-location-card{
        grid-template-columns:1fr;
    }

    .front-body .pickup-map-embed{
        min-height:260px;
    }
}

@media (max-width: 640px){
    .front-body .premium-slider-header-actions{
        width:100%;
        justify-content:space-between;
    }

    .front-body .premium-inline-scroller{
        gap:14px;
    }

    .front-body .premium-testimonial-list.premium-inline-scroller,
    .front-body .premium-home-article-scroller{
        grid-auto-columns:minmax(82vw, 1fr);
    }

    .front-body .pickup-location-card{
        padding:18px;
        border-radius:22px;
    }
}

@media print{
    .front-body .pickup-location-card{
        display:none !important;
    }
}
.contact-map{
    margin-top:24px;
    border-radius:24px;
    overflow:hidden;
}

.contact-map iframe{
    width:100%;
    height:450px;
    border:0;
    display:block;
}

/* Home category product sections: 15 products per category on desktop, responsive on tablet/mobile */
.front-body .home-category-stack{
    display:grid;
    gap:34px;
}

.front-body .home-category-block{
    padding:24px;
    border-radius:34px;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(37,55,44,.09);
    box-shadow:var(--pf-shadow-soft);
}

.front-body .home-category-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:20px;
}

.front-body .home-category-head h3{
    margin:6px 0 8px;
    font-family:var(--pf-serif);
    font-size:clamp(1.45rem,2vw,2.2rem);
    line-height:1.15;
    color:var(--pf-brand);
}

.front-body .home-category-head p{
    max-width:680px;
    color:var(--pf-muted);
    margin:0;
}

.front-body .home-category-actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    justify-content:flex-end;
    min-width:190px;
    font-weight:800;
    color:var(--pf-muted);
}

.front-body .home-category-actions span{
    min-height:36px;
    display:inline-flex;
    align-items:center;
    padding:0 12px;
    border-radius:999px;
    background:rgba(37,55,44,.06);
    color:var(--pf-brand);
}

.front-body .home-category-grid.product-grid{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:18px;
}

.front-body .home-category-grid .product-card{
    border-radius:24px;
}

.front-body .home-category-grid .product-card-media{
    aspect-ratio:1/1;
    min-height:0;
}

.front-body .home-category-grid .product-card-media img{
    min-height:0;
}

.front-body .home-category-grid .product-card-body{
    padding:16px;
}

.front-body .home-category-grid .product-card-body h3{
    font-size:1rem;
}

.front-body .home-category-grid .product-card-body p{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.front-body .home-category-grid .product-card-actions{
    gap:8px;
}

.front-body .home-category-grid .product-card-actions .button{
    min-height:42px;
    padding-inline:12px;
    font-size:.88rem;
}

@media (max-width:1200px){
    .front-body .home-category-grid.product-grid{
        grid-template-columns:repeat(4,minmax(0,1fr));
    }
}

@media (max-width:980px){
    .front-body .home-category-grid.product-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .front-body .home-category-head{
        flex-direction:column;
    }

    .front-body .home-category-actions{
        justify-content:flex-start;
        min-width:0;
    }
}

@media (max-width:680px){
    .front-body .home-category-block{
        padding:16px;
        border-radius:26px;
    }

    .front-body .home-category-grid.product-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
    }

    .front-body .home-category-grid .product-card-body{
        padding:12px;
    }

    .front-body .home-category-grid .product-card-actions{
        flex-direction:column;
        align-items:stretch;
    }

    .front-body .home-category-grid .product-card-actions .button{
        width:100%;
    }
}

@media (max-width:420px){
    .front-body .home-category-grid.product-grid{
        grid-template-columns:1fr;
    }
}

/* ------------------------------------------------------------
   Son düzenleme: mobil header, geniş sayfa hizası, kampanya pop-up
   ve çerez bandı. Admin paneli ürün/kategori yapısına dokunmaz.
------------------------------------------------------------ */
.front-body .section > .container,
.front-body .page-hero > .container,
.front-body .page-cover > .container,
.front-body .premium-header > .container{
    margin-left:auto;
    margin-right:auto;
}

@media (min-width: 821px){
    .front-body .container{
        width:min(calc(100% - 48px), 1680px);
    }

    .front-body.page-catalog .product-grid,
    .front-body.page-category .product-grid{
        grid-template-columns:repeat(auto-fit, minmax(230px, 1fr));
        justify-content:center;
        align-items:stretch;
    }

    .front-body.page-blog .article-grid{
        grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
        justify-content:center;
    }

    .front-body.page-catalog .filter-shell,
    .front-body.page-category .filter-shell,
    .front-body.page-blog .article-grid,
    .front-body.page-page .page-shell,
    .front-body.page-article .article-shell{
        margin-left:auto;
        margin-right:auto;
    }
}

@media (min-width: 1281px){
    .front-body.page-catalog .product-grid,
    .front-body.page-category .product-grid{
        grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
    }
}

@media (max-width: 820px){
    .front-body .premium-section-head,
    .front-body .section-head,
    .front-body .home-category-head{
        flex-direction:column;
        align-items:flex-start;
        gap:14px;
    }

    .front-body .premium-section-head > .text-link,
    .front-body .section-head > .text-link,
    .front-body .home-category-actions{
        align-self:flex-start;
        justify-content:flex-start;
        min-width:0;
        width:100%;
        white-space:normal;
        line-height:1.35;
    }
}

@media (max-width: 560px){
    .front-body .premium-header{
        padding-bottom:4px;
    }

    .front-body .premium-header-main{
        min-height:74px;
        margin-top:8px;
        padding:10px 12px;
        border-radius:24px;
        display:flex;
        align-items:center;
        box-shadow:0 14px 34px rgba(31,37,31,.08);
    }

    .front-body .premium-brand{
        width:100%;
        align-items:center;
        gap:10px;
        padding-right:54px;
    }

    .front-body .premium-brand-logo{
        width:58px;
        height:58px;
        min-width:58px;
        border-radius:18px;
        padding:8px;
    }

    .front-body .premium-brand-copy{
        min-width:0;
        gap:0;
    }

    .front-body .premium-brand-copy span,
    .front-body .premium-brand-copy small{
        display:none;
    }

    .front-body .premium-brand-copy strong{
        margin:0;
        max-width:calc(100vw - 150px);
        font-size:1.36rem;
        line-height:1.05;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
    }

    .front-body .premium-menu-toggle{
        width:44px;
        height:44px;
        top:50%;
        right:12px;
        transform:translateY(-50%);
        border-radius:16px;
    }

    .front-body .premium-nav-content.is-open{
        position:absolute;
        top:calc(100% + 8px);
        left:0;
        right:0;
        z-index:30;
        width:100%;
        padding:12px;
        border-radius:22px;
        background:rgba(255,255,255,.98);
        border:1px solid rgba(37,55,44,.09);
        box-shadow:0 18px 44px rgba(31,37,31,.12);
    }
}

.site-promo-popup{
    position:fixed;
    inset:0;
    z-index:9998;
    display:grid;
    place-items:center;
    padding:24px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .24s ease, visibility .24s ease;
}

.site-promo-popup.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

.site-promo-popup__backdrop{
    position:absolute;
    inset:0;
    background:rgba(18,28,22,.54);
    backdrop-filter:blur(10px);
}

.site-promo-popup__dialog{
    position:relative;
    z-index:1;
    width:min(920px, 100%);
    display:grid;
    grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);
    gap:0;
    overflow:hidden;
    border-radius:34px;
    background:linear-gradient(135deg, #fffdf8 0%, #f7efe2 100%);
    border:1px solid rgba(255,255,255,.76);
    box-shadow:0 40px 110px rgba(0,0,0,.28);
    transform:translateY(18px) scale(.985);
    transition:transform .26s ease;
}

.site-promo-popup.is-visible .site-promo-popup__dialog{
    transform:translateY(0) scale(1);
}

.site-promo-popup__close{
    position:absolute;
    top:14px;
    right:14px;
    z-index:3;
    width:42px;
    height:42px;
    border:0;
    border-radius:999px;
    background:rgba(255,255,255,.9);
    color:var(--pf-brand, #25372c);
    font-size:28px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 10px 24px rgba(0,0,0,.12);
}

.site-promo-popup__media{
    min-height:410px;
    background:linear-gradient(180deg, rgba(37,55,44,.08), rgba(181,138,89,.16));
}

.site-promo-popup__media img{
    width:100%;
    height:100%;
    min-height:410px;
    display:block;
    object-fit:cover;
}

.site-promo-popup__content{
    min-width:0;
    padding:46px 42px 38px;
    display:grid;
    align-content:center;
    gap:16px;
}

.site-promo-popup__kicker{
    width:max-content;
    max-width:100%;
    padding:8px 12px;
    border-radius:999px;
    background:rgba(37,55,44,.08);
    color:var(--pf-brand, #25372c);
    font-weight:800;
    font-size:12px;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.site-promo-popup__content h2{
    margin:0;
    font-family:"Cormorant Garamond", Georgia, serif;
    font-size:clamp(2.1rem, 4vw, 3.8rem);
    line-height:.98;
    color:var(--pf-brand, #25372c);
}

.site-promo-popup__content p{
    margin:0;
    color:var(--pf-muted, #677066);
    line-height:1.75;
    font-size:1rem;
}

.site-promo-popup__chips{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.site-promo-popup__chips span{
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    background:#fff;
    border:1px solid rgba(37,55,44,.08);
    color:var(--pf-brand, #25372c);
    font-size:.88rem;
    font-weight:800;
}

.site-promo-popup__note{
    padding:14px 16px;
    border-radius:18px;
    background:rgba(37,55,44,.06);
    color:var(--pf-brand, #25372c) !important;
    font-weight:700;
}

.site-promo-popup__actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
}

.site-promo-popup__actions a{
    min-height:46px;
    padding:0 18px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    font-weight:800;
}

.site-promo-popup__primary{
    background:var(--pf-brand, #25372c);
    color:#fff;
}

.site-promo-popup__secondary{
    background:#fff;
    border:1px solid rgba(37,55,44,.12);
    color:var(--pf-brand, #25372c);
}

.site-cookie-banner{
    position:fixed;
    left:18px;
    right:18px;
    bottom:18px;
    z-index:9997;
    width:min(980px, calc(100% - 36px));
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    padding:16px;
    border-radius:24px;
    background:rgba(255,253,248,.97);
    border:1px solid rgba(37,55,44,.11);
    box-shadow:0 24px 70px rgba(0,0,0,.18);
    backdrop-filter:blur(18px);
    opacity:0;
    visibility:hidden;
    transform:translateY(18px);
    pointer-events:none;
    transition:opacity .22s ease, transform .22s ease, visibility .22s ease;
}

.site-cookie-banner.is-visible{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    pointer-events:auto;
}

.site-cookie-banner__content{
    min-width:0;
}

.site-cookie-banner__content strong{
    display:block;
    margin-bottom:4px;
    color:var(--pf-brand, #25372c);
}

.site-cookie-banner__content p{
    margin:0;
    color:var(--pf-muted, #677066);
    font-size:.94rem;
    line-height:1.55;
}

.site-cookie-banner__actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    justify-content:flex-end;
    align-items:center;
}

.site-cookie-banner__actions a,
.site-cookie-banner__actions button{
    min-height:40px;
    padding:0 14px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:800;
    text-decoration:none;
    cursor:pointer;
}

.site-cookie-banner__actions a,
.site-cookie-banner__ghost{
    color:var(--pf-brand, #25372c);
    background:#fff;
    border:1px solid rgba(37,55,44,.1);
}

.site-cookie-banner__solid{
    color:#fff;
    background:var(--pf-brand, #25372c);
    border:1px solid var(--pf-brand, #25372c);
}

@media (max-width: 760px){
    .site-promo-popup{
        padding:12px;
    }

    .site-promo-popup__dialog{
        max-height:calc(100vh - 24px);
        overflow:auto;
        grid-template-columns:1fr;
        border-radius:26px;
    }

    .site-promo-popup__media,
    .site-promo-popup__media img{
        min-height:190px;
        max-height:240px;
    }

    .site-promo-popup__content{
        padding:24px 20px 22px;
        gap:12px;
    }

    .site-promo-popup__content h2{
        font-size:2.1rem;
    }

    .site-promo-popup__actions{
        display:grid;
        grid-template-columns:1fr;
    }

    .site-promo-popup__actions a{
        width:100%;
    }

    .site-cookie-banner{
        left:10px;
        right:10px;
        bottom:82px;
        width:calc(100% - 20px);
        grid-template-columns:1fr;
        gap:12px;
        padding:14px;
        border-radius:20px;
    }

    .site-cookie-banner__actions{
        display:grid;
        grid-template-columns:1fr 1fr;
        width:100%;
    }

    .site-cookie-banner__actions a{
        grid-column:1 / -1;
    }
}

.front-body .premium-header-main{position:relative;}

/* ============================================================
   ACIL DUZELTME 2: tum on sayfalarin ortalanmasi + mobil giris.
   luxury-theme.css icindeki .page-hero grid tanimi tek container'i
   sol kolona sikistiriyordu. Bu bolum onu kesin olarak kapatir.
============================================================ */
body.front-body .site-main,
body.front-body .premium-header,
body.front-body .premium-footer,
body.front-body .page-hero,
body.front-body .page-cover,
body.front-body .section{
    width:100% !important;
    max-width:100% !important;
}

body.front-body .page-hero,
body.front-body .page-cover,
body.front-body .section{
    display:block !important;
    grid-template-columns:none !important;
    justify-content:initial !important;
    align-items:initial !important;
}

body.front-body .container,
body.front-body .page-hero > .container,
body.front-body .page-cover > .container,
body.front-body .section > .container,
body.front-body .premium-header > .container,
body.front-body .premium-topbar > .container,
body.front-body .premium-footer > .container{
    width:min(calc(100% - 48px), 1680px) !important;
    max-width:1680px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    float:none !important;
    box-sizing:border-box !important;
}

body.front-body .page-hero-card,
body.front-body .page-cover-card,
body.front-body .filter-shell,
body.front-body .product-grid,
body.front-body .article-grid,
body.front-body .page-shell,
body.front-body .article-shell,
body.front-body .contact-grid,
body.front-body .cart-layout,
body.front-body .checkout-layout,
body.front-body .detail-grid{
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
}

body.front-body.page-catalog .product-grid,
body.front-body.page-category .product-grid{
    display:grid !important;
    grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)) !important;
    gap:22px !important;
    justify-content:stretch !important;
    align-items:stretch !important;
}

body.front-body.page-blog .article-grid{
    display:grid !important;
    grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)) !important;
    justify-content:stretch !important;
}

body.front-body .page-hero-card,
body.front-body .page-cover-card{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(320px, .82fr) !important;
}

@media (max-width: 1100px){
    body.front-body .page-hero-card,
    body.front-body .page-cover-card{
        grid-template-columns:1fr !important;
    }

    body.front-body.page-catalog .product-grid,
    body.front-body.page-category .product-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 820px){
    body.front-body .container,
    body.front-body .page-hero > .container,
    body.front-body .page-cover > .container,
    body.front-body .section > .container,
    body.front-body .premium-header > .container,
    body.front-body .premium-topbar > .container,
    body.front-body .premium-footer > .container{
        width:min(calc(100% - 20px), 1680px) !important;
        max-width:1680px !important;
    }

    body.front-body .premium-section-head,
    body.front-body .section-head,
    body.front-body .home-category-head{
        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        justify-content:flex-start !important;
        gap:12px !important;
        text-align:left !important;
    }

    body.front-body .premium-section-head > .text-link,
    body.front-body .section-head > .text-link{
        align-self:flex-start !important;
        width:auto !important;
        max-width:100% !important;
        display:inline-flex !important;
        align-items:center !important;
        white-space:nowrap !important;
        margin-top:2px !important;
        padding:10px 14px !important;
        border-radius:999px !important;
        background:rgba(255,255,255,.76) !important;
        border:1px solid rgba(37,55,44,.08) !important;
    }

    body.front-body .home-category-actions{
        width:100% !important;
        min-width:0 !important;
        justify-content:flex-start !important;
        align-items:center !important;
        gap:10px !important;
    }

    body.front-body.page-catalog .product-grid,
    body.front-body.page-category .product-grid,
    body.front-body .home-category-grid.product-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:12px !important;
    }
}

@media (max-width: 560px){
    body.front-body .container,
    body.front-body .page-hero > .container,
    body.front-body .page-cover > .container,
    body.front-body .section > .container,
    body.front-body .premium-header > .container,
    body.front-body .premium-topbar > .container,
    body.front-body .premium-footer > .container{
        width:min(calc(100% - 16px), 1680px) !important;
    }

    body.front-body .premium-header-main{
        min-height:66px !important;
        padding:8px 10px !important;
        border-radius:22px !important;
    }

    body.front-body .premium-brand{
        gap:8px !important;
        padding-right:50px !important;
    }

    body.front-body .premium-brand-logo{
        width:52px !important;
        height:52px !important;
        min-width:52px !important;
        border-radius:16px !important;
        padding:7px !important;
    }

    body.front-body .premium-brand-copy span,
    body.front-body .premium-brand-copy small{
        display:none !important;
    }

    body.front-body .premium-brand-copy strong{
        font-size:1.2rem !important;
        line-height:1.05 !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        max-width:calc(100vw - 140px) !important;
    }

    body.front-body .premium-menu-toggle{
        width:42px !important;
        height:42px !important;
        right:10px !important;
        border-radius:15px !important;
    }

    body.front-body .premium-home-showcase-section{
        padding-top:24px !important;
    }

    body.front-body .premium-section-head{
        margin-bottom:16px !important;
    }

    body.front-body .premium-section-head .section-title,
    body.front-body .section-head .section-title{
        font-size:clamp(1.85rem, 8vw, 2.45rem) !important;
        line-height:1.05 !important;
        margin:8px 0 6px !important;
    }

    body.front-body .section-description,
    body.front-body .premium-section-head p,
    body.front-body .section-head p{
        font-size:1rem !important;
        line-height:1.58 !important;
    }

    body.front-body .home-category-block{
        padding:14px !important;
        border-radius:24px !important;
    }

    body.front-body .home-category-head h3{
        font-size:1.45rem !important;
    }

    body.front-body .home-category-actions{
        flex-direction:row !important;
        flex-wrap:wrap !important;
    }

    body.front-body .home-category-actions .text-link,
    body.front-body .home-category-actions a{
        white-space:nowrap !important;
    }

    body.front-body .product-card{
        border-radius:22px !important;
    }

    body.front-body .product-card-body{
        padding:12px !important;
    }

    body.front-body .product-card h3{
        font-size:.98rem !important;
        line-height:1.15 !important;
    }

    body.front-body .product-card-actions{
        grid-template-columns:1fr !important;
        gap:8px !important;
    }
}


/* Resimsiz eklenen ürünler için kırık görsel yerine düzenli placeholder */
.front-body .product-image-placeholder,
.front-body .product-detail-placeholder{
    width:100%;
    height:100%;
    min-height:170px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:22px;
    border-radius:inherit;
    background:
        radial-gradient(circle at 30% 20%, rgba(255,255,255,.88), rgba(255,255,255,0) 42%),
        linear-gradient(135deg, rgba(244,237,225,.9), rgba(255,255,255,.96));
    color:var(--pf-brand);
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:.78rem;
}

.front-body .product-image-placeholder span,
.front-body .product-detail-placeholder span{
    display:inline-flex;
    min-height:42px;
    align-items:center;
    justify-content:center;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.82);
    border:1px solid rgba(37,55,44,.08);
    box-shadow:0 10px 26px rgba(37,55,44,.08);
}

.front-body .product-image-placeholder-small{
    min-height:72px;
    border-radius:18px;
    font-size:.62rem;
    letter-spacing:.05em;
}

@media (max-width: 640px){
    .front-body .product-image-placeholder,
    .front-body .product-detail-placeholder{
        min-height:145px;
        font-size:.7rem;
        padding:16px;
    }
}

/* Ürün renk/çeşit seçimi */
.front-body .product-option-box{
    display:grid;
    gap:8px;
    margin-bottom:18px;
    padding:16px;
    border-radius:20px;
    background:rgba(245,239,229,.78);
    border:1px solid rgba(37,55,44,.10);
}
.front-body .product-option-box label{
    color:var(--pf-brand);
}
.front-body .product-option-select{
    width:100%;
    min-height:50px;
    border-radius:16px;
    border:1px solid rgba(37,55,44,.16);
    background:#fff;
    color:var(--pf-ink);
    font:inherit;
    font-weight:700;
    padding:0 14px;
}
.front-body .product-option-box small{
    color:var(--pf-muted);
    line-height:1.55;
}
.front-body .cart-item-meta span:nth-child(2){
    color:var(--pf-brand);
}
@media (max-width: 640px){
    .front-body .product-option-box{padding:14px;border-radius:18px;}
    .front-body .product-option-select{min-height:48px;}
}
.front-body .cart-item-media .product-image-placeholder{
    width:118px;
    height:118px;
    border-radius:18px;
    display:grid;
    place-items:center;
    text-align:center;
    font-weight:800;
    color:var(--pf-muted);
}
@media (max-width: 640px){
    .front-body .cart-item-media .product-image-placeholder{width:100%;height:auto;aspect-ratio:1/1;}
}

/* Anneler Günü Orkide Vitrini */
.front-body .mothers-day-orchid-showcase{
    padding-top:18px;
    padding-bottom:28px;
}

.front-body .mothers-day-orchid-shell{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    padding:clamp(22px, 4vw, 46px);
    border-radius:clamp(28px, 4vw, 52px);
    border:1px solid rgba(118, 63, 86, .14);
    background:
        radial-gradient(circle at 8% 12%, rgba(255, 212, 234, .95), transparent 28%),
        radial-gradient(circle at 92% 6%, rgba(255, 245, 201, .82), transparent 24%),
        radial-gradient(circle at 74% 92%, rgba(214, 237, 219, .86), transparent 30%),
        linear-gradient(135deg, rgba(255, 250, 252, .94) 0%, rgba(255, 238, 246, .88) 45%, rgba(250, 244, 232, .96) 100%);
    box-shadow:0 34px 90px rgba(111, 42, 72, .14), 0 18px 42px rgba(31, 37, 31, .07);
}

.front-body .mothers-day-orchid-shell::before,
.front-body .mothers-day-orchid-shell::after{
    content:"";
    position:absolute;
    pointer-events:none;
    z-index:-1;
}

.front-body .mothers-day-orchid-shell::before{
    inset:-90px -80px auto auto;
    width:420px;
    height:420px;
    border-radius:50%;
    background:
        radial-gradient(circle, rgba(255,255,255,.84) 0 14%, transparent 15% 100%),
        conic-gradient(from 18deg, rgba(183, 73, 128, .18), rgba(255, 196, 217, .55), rgba(181, 138, 89, .18), rgba(183, 73, 128, .18));
    filter:blur(1px);
    opacity:.82;
}

.front-body .mothers-day-orchid-shell::after{
    inset:auto auto -120px -96px;
    width:360px;
    height:360px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(255,255,255,.72), rgba(255, 211, 232, .42) 42%, transparent 70%);
}

.front-body .mothers-day-orchid-sparkle{
    position:absolute;
    z-index:2;
    display:grid;
    place-items:center;
    width:46px;
    height:46px;
    border-radius:999px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(118, 63, 86, .11);
    color:#9d466c;
    box-shadow:0 16px 32px rgba(111, 42, 72, .12);
    animation:mothersDayFloat 7s ease-in-out infinite;
}

.front-body .mothers-day-orchid-sparkle-one{top:30px;right:34%;}
.front-body .mothers-day-orchid-sparkle-two{right:28px;top:42%;animation-delay:1.4s;}
.front-body .mothers-day-orchid-sparkle-three{left:28px;bottom:28px;animation-delay:2.1s;}

.front-body .mothers-day-orchid-layout{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0, .9fr) minmax(420px, 1.1fr);
    gap:clamp(22px, 3vw, 38px);
    align-items:stretch;
}

.front-body .mothers-day-orchid-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(4px, 1vw, 12px);
}

.front-body .mothers-day-orchid-copy .eyebrow{
    color:#6f2a48;
}

.front-body .mothers-day-orchid-copy .eyebrow::before{
    background:linear-gradient(90deg, rgba(183, 73, 128, .85), rgba(183, 73, 128, .12));
}

.front-body .mothers-day-orchid-copy .section-title{
    max-width:12ch;
    margin:18px 0 18px;
    color:#3b2633;
    font-size:clamp(2.75rem, 6vw, 5.35rem);
    line-height:.92;
    text-shadow:0 12px 34px rgba(111, 42, 72, .08);
}

.front-body .mothers-day-orchid-copy .section-description{
    max-width:66ch;
    color:rgba(59, 38, 51, .72);
    font-size:1.08rem;
    line-height:1.75;
}

.front-body .mothers-day-orchid-highlights{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:24px 0 0;
}

.front-body .mothers-day-orchid-highlights span{
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:42px;
    padding:0 15px;
    border-radius:999px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(118, 63, 86, .12);
    color:#6f2a48;
    font-size:.92rem;
    font-weight:800;
    box-shadow:0 10px 24px rgba(111, 42, 72, .07);
}

.front-body .mothers-day-orchid-highlights span::before{
    content:"✿";
    color:#b74980;
    font-size:.84rem;
}

.front-body .mothers-day-orchid-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:26px;
}

.front-body .mothers-day-orchid-feature-card,
.front-body .mothers-day-orchid-card{
    min-width:0;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(118, 63, 86, .12);
    box-shadow:0 24px 58px rgba(111, 42, 72, .10);
    backdrop-filter:blur(18px);
}

.front-body .mothers-day-orchid-feature-card{
    display:grid;
    grid-template-columns:minmax(210px, .86fr) minmax(0, 1.14fr);
    gap:18px;
    padding:18px;
    border-radius:38px;
}

.front-body .mothers-day-orchid-feature-media{
    position:relative;
    min-height:430px;
    overflow:hidden;
    display:grid;
    place-items:center;
    border-radius:30px;
    background:
        radial-gradient(circle at 50% 18%, rgba(255,255,255,.96), transparent 36%),
        linear-gradient(180deg, rgba(255, 246, 250, .96), rgba(251, 235, 241, .9));
}

.front-body .mothers-day-orchid-feature-media::after{
    content:"";
    position:absolute;
    inset:14px;
    border-radius:24px;
    border:1px dashed rgba(183, 73, 128, .28);
    pointer-events:none;
}

.front-body .mothers-day-orchid-feature-media img{
    position:relative;
    z-index:1;
    width:100%;
    height:100%;
    max-height:460px;
    object-fit:contain;
    object-position:center bottom;
    padding:34px 16px 20px;
    filter:drop-shadow(0 22px 28px rgba(55, 48, 43, .18));
    transform:scale(1.03);
    transition:transform .28s ease;
}

.front-body .mothers-day-orchid-feature-card:hover .mothers-day-orchid-feature-media img{
    transform:scale(1.07) translateY(-4px);
}

.front-body .mothers-day-orchid-ribbon{
    position:absolute;
    z-index:2;
    top:16px;
    left:16px;
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:0 13px;
    border-radius:999px;
    background:#6f2a48;
    color:#fff;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    box-shadow:0 12px 22px rgba(111, 42, 72, .22);
}

.front-body .mothers-day-orchid-feature-body,
.front-body .mothers-day-orchid-card-body{
    min-width:0;
    display:flex;
    flex-direction:column;
}

.front-body .mothers-day-orchid-feature-body{
    justify-content:center;
    padding:8px 8px 8px 4px;
}

.front-body .mothers-day-orchid-feature-body small,
.front-body .mothers-day-orchid-card-badge{
    display:inline-flex;
    width:max-content;
    align-items:center;
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(255, 237, 246, .9);
    border:1px solid rgba(183, 73, 128, .14);
    color:#8d3b62;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.front-body .mothers-day-orchid-feature-body h3,
.front-body .mothers-day-orchid-card-body h3{
    margin:14px 0 10px;
    line-height:1.02;
}

.front-body .mothers-day-orchid-feature-body h3{
    font-size:clamp(2rem, 3.3vw, 3.05rem);
}

.front-body .mothers-day-orchid-card-body h3{
    font-size:1.36rem;
}

.front-body .mothers-day-orchid-feature-body h3 a,
.front-body .mothers-day-orchid-card-body h3 a{
    color:#3b2633;
}

.front-body .mothers-day-orchid-feature-body p{
    margin:0 0 18px;
    color:rgba(59, 38, 51, .68);
    line-height:1.7;
    display:-webkit-box;
    -webkit-line-clamp:4;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.front-body .mothers-day-orchid-price-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:auto;
    padding-top:12px;
    border-top:1px solid rgba(118, 63, 86, .1);
}

.front-body .mothers-day-orchid-price-row strong{
    color:#6f2a48;
    font-size:1.28rem;
}

.front-body .mothers-day-orchid-price-row span{
    color:rgba(59, 38, 51, .62);
    font-size:.9rem;
    font-weight:800;
}

.front-body .mothers-day-orchid-card-actions{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
    margin-top:14px;
}

.front-body .mothers-day-orchid-card-actions form{
    display:flex;
    min-width:0;
}

.front-body .mothers-day-orchid-card-actions .button{
    width:100%;
    min-height:46px;
    justify-content:center;
    padding-inline:16px;
}

.front-body .mothers-day-orchid-product-grid{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:14px;
    margin-top:18px;
}

.front-body .mothers-day-orchid-card{
    display:grid;
    grid-template-columns:128px minmax(0, 1fr);
    gap:14px;
    align-items:stretch;
    border-radius:28px;
    padding:12px;
}

.front-body .mothers-day-orchid-card-media{
    position:relative;
    overflow:hidden;
    display:grid;
    place-items:center;
    min-height:172px;
    border-radius:22px;
    background:linear-gradient(180deg, rgba(255, 247, 251, .95), rgba(255,255,255,.72));
}

.front-body .mothers-day-orchid-card-media img{
    width:100%;
    height:100%;
    object-fit:contain;
    padding:12px 8px;
    filter:drop-shadow(0 14px 18px rgba(55, 48, 43, .13));
    transition:transform .26s ease;
}

.front-body .mothers-day-orchid-card:hover .mothers-day-orchid-card-media img{
    transform:scale(1.06) translateY(-3px);
}

.front-body .mothers-day-orchid-card-body{
    padding:6px 4px 4px 0;
}

.front-body .mothers-day-orchid-card-body .mothers-day-orchid-price-row{
    margin-top:auto;
}

@keyframes mothersDayFloat{
    0%, 100%{transform:translateY(0) rotate(0deg);}
    50%{transform:translateY(-12px) rotate(8deg);}
}

@media (max-width: 1180px){
    .front-body .mothers-day-orchid-layout{
        grid-template-columns:1fr;
    }
    .front-body .mothers-day-orchid-copy .section-title{
        max-width:16ch;
    }
    .front-body .mothers-day-orchid-feature-media{
        min-height:360px;
    }
}

@media (max-width: 980px){
    .front-body .mothers-day-orchid-product-grid{
        grid-template-columns:1fr;
    }
    .front-body .mothers-day-orchid-card{
        grid-template-columns:150px minmax(0, 1fr);
    }
}

@media (max-width: 760px){
    .front-body .mothers-day-orchid-showcase{
        padding-top:10px;
        padding-bottom:18px;
    }
    .front-body .mothers-day-orchid-shell{
        padding:18px;
        border-radius:30px;
    }
    .front-body .mothers-day-orchid-copy{
        padding:0;
    }
    .front-body .mothers-day-orchid-copy .section-title{
        max-width:none;
        font-size:clamp(2.25rem, 11vw, 3.1rem);
        line-height:.98;
        margin:14px 0 12px;
    }
    .front-body .mothers-day-orchid-copy .section-description{
        font-size:1rem;
        line-height:1.62;
    }
    .front-body .mothers-day-orchid-highlights,
    .front-body .mothers-day-orchid-actions,
    .front-body .mothers-day-orchid-card-actions{
        display:grid;
        grid-template-columns:1fr;
    }
    .front-body .mothers-day-orchid-feature-card{
        grid-template-columns:1fr;
        border-radius:28px;
        padding:12px;
    }
    .front-body .mothers-day-orchid-feature-media{
        min-height:310px;
        border-radius:24px;
    }
    .front-body .mothers-day-orchid-feature-media img{
        max-height:330px;
        padding:28px 12px 16px;
    }
    .front-body .mothers-day-orchid-feature-body{
        padding:8px 4px 4px;
    }
    .front-body .mothers-day-orchid-feature-body h3{
        font-size:2rem;
    }
    .front-body .mothers-day-orchid-card{
        grid-template-columns:1fr;
        border-radius:24px;
    }
    .front-body .mothers-day-orchid-card-media{
        min-height:230px;
    }
    .front-body .mothers-day-orchid-card-body{
        padding:2px;
    }
    .front-body .mothers-day-orchid-price-row{
        align-items:flex-start;
        flex-direction:column;
        gap:4px;
    }
    .front-body .mothers-day-orchid-sparkle{
        width:36px;
        height:36px;
        opacity:.72;
    }
    .front-body .mothers-day-orchid-sparkle-one{right:18px;top:16px;}
    .front-body .mothers-day-orchid-sparkle-two{display:none;}
    .front-body .mothers-day-orchid-sparkle-three{left:auto;right:18px;bottom:18px;}
}

@media (prefers-reduced-motion: reduce){
    .front-body .mothers-day-orchid-sparkle,
    .front-body .mothers-day-orchid-feature-media img,
    .front-body .mothers-day-orchid-card-media img{
        animation:none;
        transition:none;
    }
}

.front-body .mothers-day-orchid-card-actions.has-options{
    grid-template-columns:1fr;
}

.front-body .mothers-day-orchid-option-form{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(128px, .56fr);
    gap:8px;
    width:100%;
    min-width:0;
}

.front-body .mothers-day-orchid-option-form select{
    width:100%;
    min-width:0;
    min-height:46px;
    border-radius:999px;
    border:1px solid rgba(118, 63, 86, .18);
    background:rgba(255,255,255,.94);
    color:#3b2633;
    font:inherit;
    font-size:.9rem;
    font-weight:800;
    padding:0 14px;
    outline:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}

.front-body .mothers-day-orchid-option-form select:focus{
    border-color:rgba(183, 73, 128, .48);
    box-shadow:0 0 0 4px rgba(183, 73, 128, .12);
}

@media (max-width: 760px){
    .front-body .mothers-day-orchid-option-form{
        grid-template-columns:1fr;
    }
}
