:root{
    --ivory:#fbf6ed; --pearl:#fffdf8; --beige:#efe2cf; --gold:#c9a15b; --gold2:#e7c98d;
    --taupe:#cdbfae; --emerald:#46685b; --mocha:#7b604b; --charcoal:#24211d; --muted:#71695e;
    --shadow:0 24px 70px rgba(91,64,35,.13); --soft:0 12px 35px rgba(91,64,35,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at top left,#fffaf1,#fbf6ed 35%,#f4eadc);color:var(--charcoal);font-family:Inter,system-ui,sans-serif;line-height:1.65;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
main{min-height:70vh}

.site-header{position:sticky;top:0;z-index:100;background:rgba(255,253,248,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(201,161,91,.28)}
.nav-wrap{max-width:1220px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:15px 22px;gap:18px}
.brand{font-weight:800;letter-spacing:.18em;font-size:18px}
.brand-mark{color:var(--gold);margin-right:8px}
.nav-links{display:flex;gap:22px;font-size:14px}
.nav-links a{position:relative;color:#3d372f}
.nav-links a:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:linear-gradient(90deg,var(--gold),var(--gold2));transition:.35s}
.nav-links a:hover:after,.nav-links a.active:after{width:100%}
.nav-actions{display:flex;align-items:center;gap:10px}
.icon-link,.account-link,.logout,.cart-pill{font-size:13px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.6);border:1px solid rgba(201,161,91,.2)}
.cart-pill span{background:var(--gold);color:white;border-radius:999px;padding:2px 7px;margin-left:5px}
.mobile-toggle{display:none;background:none;border:0;font-size:24px}

.hero{max-width:1220px;margin:0 auto;display:grid;grid-template-columns:1.03fr .97fr;gap:48px;align-items:center;padding:90px 22px 70px}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;color:var(--gold);font-weight:800}
.hero h1,.page-hero h1,.section-head h2,.request-cta h2{font-family:"Cormorant Garamond",serif;font-size:clamp(44px,7vw,82px);line-height:.95;margin:14px 0 22px}
.hero p,.section-head p,.page-hero p{color:var(--muted);max-width:610px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;cursor:pointer;border-radius:999px;padding:13px 22px;font-weight:800;transition:.35s;position:relative;overflow:hidden}
.btn.primary{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#2d2418;box-shadow:0 14px 30px rgba(201,161,91,.28)}
.btn.ghost{background:rgba(255,255,255,.55);border:1px solid rgba(201,161,91,.5);color:#453a2e}
.btn.sm{padding:9px 12px;font-size:12px}
.btn.full{width:100%}
.btn:before{content:"";position:absolute;top:0;left:-120%;width:80%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:.65s}
.btn:hover:before{left:140%}
.btn:hover{transform:translateY(-2px)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}

.hero-visual{position:relative;height:520px}
.gold-orbit{position:absolute;inset:35px;border-radius:42% 58% 48% 52%;background:linear-gradient(140deg,rgba(201,161,91,.18),rgba(70,104,91,.08));filter:blur(.2px);animation:morph 9s ease-in-out infinite}

.float-img{position:absolute;width:300px;border-radius:32px;filter:drop-shadow(0 28px 50px rgba(65,45,24,.18));animation:float 6s ease-in-out infinite}
.float-img.one{right:90px;top:30px}
.float-img.two{left:30px;top:170px;animation-delay:.8s}
.float-img.three{right:10px;bottom:10px;width:235px;animation-delay:1.4s}

.section{max-width:1220px;margin:0 auto;padding:70px 22px}
.intro-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-top:30px}
.intro-strip div,.step-card,.category-card,.summary-card,.auth-card,.glass-form,.trust-note,.tracking-card,.product-story,.specs-grid>div{background:rgba(255,253,248,.68);border:1px solid rgba(201,161,91,.20);box-shadow:var(--soft);border-radius:28px;padding:24px;backdrop-filter:blur(14px)}
.intro-strip strong{display:block}
.intro-strip span{color:var(--muted);font-size:13px}
.section-head{text-align:center;margin-bottom:35px}
.section-head h2{font-size:clamp(34px,4vw,56px)}
.category-grid,.steps-grid,.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.category-card{min-height:185px;position:relative;overflow:hidden}
.category-card h3,.step-card h3{font-family:"Cormorant Garamond",serif;font-size:29px;margin:8px 0}
.category-card:hover{transform:translateY(-8px);border-color:rgba(201,161,91,.65)}
.cat-glow{position:absolute;inset:auto -30px -70px auto;width:170px;height:170px;background:rgba(201,161,91,.18);border-radius:50%;filter:blur(30px)}
.request-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(135deg,rgba(255,253,248,.85),rgba(239,226,207,.7));border:1px solid rgba(201,161,91,.24);border-radius:36px;margin-top:50px}

.page-hero{max-width:1220px;margin:0 auto;padding:85px 22px 35px}
.page-hero.compact h1{font-size:clamp(42px,5vw,68px)}

.site-footer{margin-top:80px;background:#2a241e;color:#f9f1e4;padding:55px 22px 24px}
.footer-grid{max-width:1220px;margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:30px}
.footer-grid a{display:block;color:#e8dccb;margin:6px 0}
.newsletter-form{display:flex;gap:8px}
.newsletter-form input{min-width:0;flex:1}
.newsletter-form button,.newsletter-form input,input,select,textarea{border:1px solid rgba(201,161,91,.26);background:rgba(255,255,255,.75);padding:12px 14px;border-radius:16px;font:inherit;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(201,161,91,.12)}
textarea{min-height:130px;width:100%;resize:vertical}
.copyright{text-align:center;max-width:1220px;margin:35px auto 0;color:#cbbda8}

.lux-toast-static{max-width:900px;margin:18px auto;padding:14px 18px;border-radius:18px;text-align:center}
.lux-toast-static.success{background:#eef8ef;color:#245b35}
.lux-toast-static.error{background:#fff0ef;color:#8b2b24}
.toast{position:fixed;right:24px;bottom:24px;background:#2a241e;color:white;padding:14px 18px;border-radius:18px;box-shadow:var(--shadow);transform:translateY(30px);opacity:0;pointer-events:none;z-index:200}
.toast.show{transform:translateY(0);opacity:1}

.modal{position:fixed;inset:0;background:rgba(25,20,15,.45);display:none;align-items:center;justify-content:center;z-index:160;padding:20px}
.modal.show{display:flex}
.modal-card{background:var(--pearl);border-radius:30px;max-width:760px;width:100%;padding:22px;position:relative;box-shadow:var(--shadow)}
.modal-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:32px;cursor:pointer}
.quick-view-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}
.quick-view-grid img{border-radius:24px}
.modal-actions{display:flex;gap:10px;flex-wrap:wrap}
.empty-state{background:rgba(255,253,248,.8);border:1px solid rgba(201,161,91,.22);padding:30px;border-radius:24px;text-align:center}

.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.lux-form,.admin-form{display:grid;gap:14px}
.request-page,.checkout-layout,.cart-page{max-width:1220px;margin:auto;padding:35px 22px;display:grid;grid-template-columns:1.4fr .6fr;gap:24px}
.auth-page{min-height:70vh;display:grid;place-items:center;padding:60px 22px}
.auth-card{width:min(450px,100%);display:grid;gap:14px}
.auth-card h1{font-family:"Cormorant Garamond",serif;font-size:46px;margin:0}
.summary-card p{display:flex;justify-content:space-between;border-bottom:1px solid rgba(201,161,91,.14);padding:10px 0}
.summary-card .total{font-size:20px}

.cart-items{display:grid;gap:14px}
.cart-row{display:grid;grid-template-columns:92px 1fr 90px 120px 90px;gap:14px;align-items:center;background:rgba(255,253,248,.78);border:1px solid rgba(201,161,91,.20);border-radius:24px;padding:14px}
.cart-row img{border-radius:18px}
.remove-btn,.link-danger{border:0;background:transparent;color:#9f3128;cursor:pointer;font-weight:800}

.tracking-card{max-width:1000px;margin:30px auto}
.timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:25px}
.track-step{text-align:center;opacity:.45}
.track-step span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;margin:0 auto 8px;background:#d7cbbb}
.track-step.done{opacity:1}
.track-step.done span{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#2a241e}

.lux-table{width:100%;border-collapse:collapse;background:rgba(255,253,248,.78);border-radius:22px;overflow:hidden}
.lux-table th,.lux-table td{padding:14px;border-bottom:1px solid rgba(201,161,91,.15);text-align:left}
.table-section{max-width:1220px;margin:30px auto;padding:0 22px}
.dash-card{text-align:center;padding:28px;border-radius:28px;background:rgba(255,253,248,.75);box-shadow:var(--soft);border:1px solid rgba(201,161,91,.2)}
.dash-card b{display:block;font-size:38px;color:var(--gold)}

/* Auth + OAuth refinements */
.auth-muted{margin:.25rem 0 1rem;color:#7a6f62;line-height:1.65;font-size:.95rem}
.oauth-buttons{display:grid;gap:.75rem;margin:1rem 0}
.social-btn{display:flex;align-items:center;justify-content:center;gap:.7rem;border:1px solid rgba(190,150,76,.34);background:rgba(255,255,255,.78);color:#2d2822;text-decoration:none;border-radius:999px;padding:.92rem 1rem;font-weight:700;box-shadow:0 14px 34px rgba(55,42,25,.08);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease}
.social-btn span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:inset 0 0 0 1px rgba(190,150,76,.22);font-family:Inter,sans-serif;font-weight:800}
.social-btn:hover{transform:translateY(-3px);box-shadow:0 20px 44px rgba(55,42,25,.13);border-color:rgba(190,150,76,.65);background:#fffdf8}
.social-btn.google span{color:#b05b32}
.social-btn.facebook span{color:#1877f2;font-size:1.15rem}
.auth-divider{display:flex;align-items:center;gap:1rem;color:#9a8b79;font-size:.82rem;text-transform:uppercase;letter-spacing:.13em;margin:1rem 0}
.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(190,150,76,.35),transparent)}
.admin-login-note{font-size:.92rem}
.admin-auth-card{border-color:rgba(127,92,37,.26);box-shadow:0 22px 64px rgba(70,48,20,.14)}
.admin-auth-page:before{content:"";position:absolute;inset:10% 18%;background:radial-gradient(circle,rgba(204,160,82,.18),transparent 62%);pointer-events:none}
.account-link img{width:24px;height:24px;border-radius:50%;vertical-align:middle;margin-right:.35rem}

/* Homepage visual and alignment fixes */
.section-head{max-width:880px;margin-left:auto;margin-right:auto;text-align:center}
.section-head p{margin:0 auto;max-width:720px;text-align:center;line-height:1.75}
.section-head h2{max-width:950px;margin-left:auto;margin-right:auto}
.product-section .section-head{margin-bottom:28px}
.section-feature-image{max-width:980px;margin:0 auto 28px;border-radius:34px;overflow:hidden;border:1px solid rgba(201,161,91,.22);box-shadow:var(--soft);background:linear-gradient(145deg,#fffaf1,#eadbc4)}
.section-feature-image img{width:100%;height:320px;object-fit:cover}
.hero-visual img{background:#fffaf2;object-fit:cover}
.float-img{aspect-ratio:1.2/1;object-fit:cover}
.float-img.one{aspect-ratio:1/1}
.float-img.three{aspect-ratio:1.25/1}

@media(max-width:720px){
    .section-feature-image img{height:220px}
    .section-head p{max-width:100%}
}

/* Interactive hero feature cards - exact sample-like motion */
.hero-swap-stack{
    position:relative;
    isolation:isolate;
    perspective:1200px;
    overflow:visible;
}

.hero-swap-stack .float-img-card{
    position:absolute;
    display:block;
    border-radius:32px;
    overflow:hidden;
    background:#fffaf2;
    box-shadow:0 28px 50px rgba(65,45,24,.18);
    filter:drop-shadow(0 20px 38px rgba(65,45,24,.12));
    cursor:default;
    opacity:1;
    will-change:transform,filter,box-shadow;
    backface-visibility:hidden;
    animation:float 6s ease-in-out infinite;
    transition:
        transform .55s cubic-bezier(.2,.8,.2,1),
        opacity .45s ease,
        filter .55s ease,
        box-shadow .55s ease;
}

.hero-swap-stack .float-img-card img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:inherit;
    transition:transform .55s cubic-bezier(.2,.8,.2,1);
}

.hero-swap-stack .float-img-card.one{
    right:90px;
    top:30px;
    width:300px;
    aspect-ratio:1/1;
    z-index:3;
    animation-delay:0s;
}

.hero-swap-stack .float-img-card.two{
    left:30px;
    top:170px;
    width:300px;
    aspect-ratio:1.2/1;
    z-index:4;
    animation-delay:.8s;
}

.hero-swap-stack .float-img-card.three{
    right:10px;
    bottom:10px;
    width:235px;
    aspect-ratio:1.25/1;
    z-index:5;
    animation-delay:1.4s;
}

.hero-swap-stack .float-img-card.clickable{
    cursor:pointer;
}

.hero-swap-stack:hover .float-img-card{
    opacity:.66;
    filter:blur(.3px) saturate(.9);
    transform:translateY(8px) scale(.92);
    box-shadow:0 14px 34px rgba(65,45,24,.10);
}

.hero-swap-stack .float-img-card:hover{
    opacity:1;
    filter:drop-shadow(0 34px 58px rgba(65,45,24,.28)) saturate(1.06);
    transform:translateY(-22px) scale(1.09) rotateX(2deg);
    z-index:30;
    box-shadow:0 36px 70px rgba(65,45,24,.25);
}

.hero-swap-stack .float-img-card:hover img{
    transform:scale(1.018);
}

.hero-card-hint{
    position:absolute;
    left:18px;
    bottom:16px;
    padding:9px 14px;
    border-radius:999px;
    background:rgba(255,253,248,.88);
    border:1px solid rgba(201,161,91,.35);
    color:#3f3428;
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    opacity:0;
    transform:translateY(8px);
    transition:.35s ease;
    box-shadow:0 10px 24px rgba(65,45,24,.12);
    pointer-events:none;
}

.hero-swap-stack .float-img-card:hover .hero-card-hint{
    opacity:1;
    transform:translateY(0);
}

.float-img-card.not-clickable{
    pointer-events:none;
}

.home-link-product-select{
    display:grid;
    gap:6px;
    margin-top:10px;
    font-size:12px;
    color:#786851;
}

.home-link-product-select select{
    width:100%;
    border-radius:14px;
    border:1px solid rgba(201,161,91,.28);
    background:rgba(255,255,255,.84);
    padding:10px 12px;
    font:inherit;
    color:#3e342a;
}

@media(max-width:900px){
    .hero-swap-stack .float-img-card.one{right:42px}
    .hero-swap-stack .float-img-card.two{left:16px}
    .hero-swap-stack .float-img-card.three{right:0}
}

@media(max-width:720px){
    .hero-swap-stack{height:390px}

    .hero-swap-stack .float-img-card.one{
        right:30px;
        top:20px;
        width:210px;
    }

    .hero-swap-stack .float-img-card.two{
        left:12px;
        top:150px;
        width:220px;
    }

    .hero-swap-stack .float-img-card.three{
        right:6px;
        bottom:0;
        width:175px;
    }

    .hero-swap-stack:hover .float-img-card{
        transform:none;
        opacity:1;
        filter:none;
    }

    .hero-swap-stack .float-img-card:hover{
        transform:translateY(-10px) scale(1.04);
    }
}