    :root { --ink:#30281f; --cocoa:#4d3824; --gold:#b68a3d; --cream:#fbf8f3; --sand:#efe7dc; --rose:#d9a69b; --white:#fffdf9; --line:rgba(77,56,36,.14); --shadow:0 18px 50px rgba(73,51,28,.12); }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; background:var(--cream); color:var(--ink); font-family:"DM Sans",sans-serif; }
    button, input { font:inherit; }
    button { cursor:pointer; }
    a { color:inherit; text-decoration:none; }
    .announcement { background:var(--cocoa); color:#fff9ef; text-align:center; font-size:12px; letter-spacing:.08em; padding:10px 16px; }
    .announcement span { color:#f3c86b; }
    .site-header { position:sticky; top:0; z-index:30; background:rgba(251,248,243,.94); backdrop-filter:blur(15px); border-bottom:1px solid var(--line); }
    .nav { max-width:1240px; margin:auto; min-height:78px; padding:0 28px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
    .brand { display:flex; align-items:center; min-width:170px; gap:7px; }
    .brand-logo { width:54px; height:54px; object-fit:contain;  }
    .brand-text { font-family:"Playfair Display",serif; color:var(--cocoa); font-size:24px; letter-spacing:-.055em; line-height:1; }
    .brand-text small { display:block; margin-top:4px; font-family:"DM Sans",sans-serif; font-size:7px; letter-spacing:.22em; text-transform:uppercase; color:var(--gold); }
    .nav-links { display:flex; align-items:center; gap:26px; font-size:13px; font-weight:600; }
    .nav-links a { position:relative; }
    .nav-links a:after { content:""; position:absolute; bottom:-7px; left:0; width:0; height:1px; background:var(--gold); transition:.25s; }
    .nav-links a:hover:after { width:100%; }
    .nav-actions { display:flex; align-items:center; gap:8px; }
    .icon-button { width:39px; height:39px; display:grid; place-items:center; padding:0; border:1px solid transparent; border-radius:50%; color:var(--cocoa); background:transparent; transition:.2s; position:relative; }
    .icon-button:hover { border-color:var(--line); background:var(--white); }
    .cart-count { position:absolute; top:1px; right:1px; width:16px; height:16px; border-radius:50%; display:grid; place-items:center; background:var(--cocoa); color:white; font-size:9px; font-weight:700; }
    .mobile-menu { display:none; }
    .hero { min-height:630px; position:relative; overflow:hidden; isolation:isolate; display:flex; align-items:center; }
    .hero:before { content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(90deg, rgba(37,25,12,.78) 0%,rgba(37,25,12,.43) 43%,rgba(37,25,12,.05) 72%), url('https://images.unsplash.com/photo-1617038220319-276d3cfab638?auto=format&fit=crop&w=1900&q=88') center 42%/cover; }
    .hero:after { content:""; position:absolute; width:510px; height:510px; right:-180px; bottom:-320px; z-index:-1; border-radius:50%; background:rgba(236,190,102,.38); filter:blur(1px); }
    .hero-content { max-width:1240px; width:100%; margin:0 auto; padding:84px 28px; color:white; }
    .eyebrow { display:flex; align-items:center; gap:9px; font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
    .eyebrow:before { content:""; display:block; height:1px; width:30px; background:currentColor; }
    .hero h1 { max-width:650px; margin:18px 0; font-family:"Playfair Display",serif; font-size:clamp(49px,6.2vw,86px); line-height:.98; letter-spacing:-.055em; font-weight:500; }
    .hero h1 em { color:#efd192; font-weight:500; }
    .hero p { max-width:390px; margin:0 0 30px; font-size:16px; line-height:1.6; color:rgba(255,255,255,.9); }
    .button { display:inline-flex; align-items:center; gap:9px; padding:14px 23px; border:1px solid var(--cocoa); background:var(--cocoa); color:white; font-size:12px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; transition:.25s; }
    .button:hover { transform:translateY(-2px); background:#271b11; box-shadow:0 8px 20px rgba(0,0,0,.18); }
    .button.light { background:#fffdf8; color:var(--cocoa); border-color:#fffdf8; }
    .button.light:hover { background:#f1d79f; border-color:#f1d79f; }
    .hero-note { margin-top:33px; display:flex; align-items:center; gap:11px; font-size:11px; letter-spacing:.07em; color:rgba(255,255,255,.83); }
    .hero-note svg { color:#f3c86b; }
    .section { max-width:1240px; margin:0 auto; padding:94px 28px; }
    .section-head { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:34px; }
    .section-tag { color:var(--gold); font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
    h2 { margin:7px 0 0; font-family:"Playfair Display",serif; font-size:clamp(33px,4vw,49px); font-weight:500; letter-spacing:-.045em; line-height:1.05; }
    .text-link { padding-bottom:4px; border-bottom:1px solid var(--gold); color:var(--cocoa); font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
    .text-link:hover { color:var(--gold); }
    .categories { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
    .category { min-height:365px; position:relative; overflow:hidden; background:#e8e0d4; color:white; display:flex; align-items:end; padding:24px; }
    .category:before { content:""; position:absolute; inset:0; background:var(--image) center/cover; transition:transform .55s; }
    .category:after { content:""; position:absolute; inset:0; background:linear-gradient(transparent 30%,rgba(23,16,8,.7)); }
    .category:hover:before { transform:scale(1.07); }
    .category.selected { outline:3px solid var(--gold); outline-offset:3px; }
    .category.selected:after { background:linear-gradient(transparent 20%,rgba(66,43,20,.78)); }
    .category span { z-index:1; position:relative; width:100%; display:flex; align-items:center; justify-content:space-between; font-family:"Playfair Display",serif; font-size:27px; }
    .round-arrow { width:34px; height:34px; border:1px solid rgba(255,255,255,.65); border-radius:50%; display:grid; place-items:center; font-size:0; position:relative; background:rgba(255,255,255,.08); }
    .round-arrow:before { content:""; width:10px; height:10px; border-top:2px solid currentColor; border-right:2px solid currentColor; transform:rotate(45deg); }
    .round-arrow:after { content:""; width:13px; height:2px; background:currentColor; position:absolute; transform:translateX(-1px); }
    .featured { background:var(--sand); }
    .products { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
    .product-load-more { display:flex; justify-content:center; padding-top:34px; }
    .load-more { padding:13px 23px; border:1px solid var(--cocoa); background:transparent; color:var(--cocoa); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; }
    .load-more:hover { background:var(--cocoa); color:#fff; }
    .load-more span { font-weight:500; }
    .seo-section { padding-top:68px; padding-bottom:68px; }
    .seo-section p { max-width:820px; color:#716252; font-size:15px; line-height:1.75; }
    .seo-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
    .seo-links a { padding:9px 12px; border:1px solid var(--line); background:var(--white); color:var(--cocoa); font-size:11px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
    .seo-links a:hover { border-color:var(--gold); color:var(--gold); }
    .product { min-width:0; position:relative; }
    .product-image { aspect-ratio: .82; overflow:hidden; position:relative; background:#e9e3dc; cursor:zoom-in; }
    .product-image img { width:100%; height:100%; object-fit:cover; transition:transform .55s; }
    .product:hover .product-image img { transform:scale(1.055); }
    .badge { position:absolute; top:12px; left:12px; z-index:2; background:var(--white); color:var(--cocoa); font-size:9px; letter-spacing:.13em; font-weight:700; text-transform:uppercase; padding:7px 9px; }
    .wish { position:absolute; top:9px; right:9px; z-index:2; width:35px; height:35px; border:0; border-radius:50%; background:rgba(255,253,249,.9); color:var(--cocoa); display:grid; place-items:center; font-size:18px; }
    .wish.active { color:#af5f57; }
    .product-info { padding:14px 3px 4px; }
    .product-type { display:block; color:#8d7966; font-size:10px; text-transform:uppercase; letter-spacing:.11em; font-weight:700; margin-bottom:6px; }
    .product-row { display:flex; justify-content:space-between; gap:9px; align-items:start; }
    .product h3 { margin:0; font-size:14px; line-height:1.35; font-weight:600; }
    .price { color:var(--cocoa); font-family:"Playfair Display",serif; font-size:17px; white-space:nowrap; }
    .product .quick-add { position:absolute; left:12px; right:12px; bottom:12px; opacity:0; transform:translateY(8px); transition:.25s; }
    .product:hover .quick-add { opacity:1; transform:none; }
    .quick-add { width:calc(100% - 24px); display:flex; align-items:center; justify-content:center; gap:7px; padding:12px; border:0; background:var(--cocoa); color:white; font-size:10px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; cursor:pointer; }
    .quick-add:disabled{background:#9b8f83;cursor:not-allowed}.stock-note{display:block;margin-top:7px;color:#766655;font-size:10px;font-weight:700;letter-spacing:.04em}.stock-note.low{color:#a35b42}.sale-price{display:block;font-size:11px;color:#a35b42;text-decoration:line-through}.offer-ribbon{margin:0 0 19px;padding:11px 14px;background:#4d3824;color:#fff5e7;font-size:11px;font-weight:700;letter-spacing:.06em;text-align:center}.product-actions{display:flex;gap:8px;margin-top:12px}.mini-action{flex:1;padding:9px 8px;border:1px solid var(--line);background:#fffdf9;color:var(--cocoa);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.mini-action:hover{border-color:var(--gold);color:var(--gold)}
    .promise { display:grid; grid-template-columns:1.15fr 1fr; gap:70px; align-items:center; }
    .promise-image { min-height:510px; overflow:hidden; position:relative; }
    .promise-image img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; }
    .promise-image .image-note { position:absolute; bottom:20px; right:20px; background:var(--white); padding:16px 19px; color:var(--cocoa); font-family:"Playfair Display",serif; font-size:17px; }
    .promise-copy p { max-width:430px; line-height:1.75; color:#716252; margin:20px 0 26px; }
    .checks { margin:0 0 29px; padding:0; list-style:none; display:grid; gap:15px; }
    .checks li { display:flex; gap:11px; align-items:center; font-size:14px; font-weight:600; }
    .check { width:22px; height:22px; background:#eadcc8; border-radius:50%; display:grid; place-items:center; color:var(--cocoa); font-size:13px; }
    .review-band { background:var(--cocoa); color:white; padding:78px 28px; text-align:center; }
    .review-band .quote { max-width:810px; margin:15px auto 23px; font-family:"Playfair Display",serif; font-size:clamp(29px,4vw,48px); line-height:1.17; letter-spacing:-.045em; }
    .reviewer { font-size:11px; color:#f0cc87; letter-spacing:.15em; font-weight:700; text-transform:uppercase; }
    .instagram { display:grid; grid-template-columns:1fr 1.05fr .9fr 1.1fr 1fr; gap:10px; }
    .insta-tile { aspect-ratio:1; overflow:hidden; position:relative; }
    .insta-tile img { width:100%; height:100%; object-fit:cover; transition:.3s; }
    .insta-tile:hover img { transform:scale(1.07); }
    .insta-tile:hover:after { content:"♡  @sparklyseol.14"; position:absolute; inset:0; display:grid; place-items:center; background:rgba(54,39,22,.55); color:white; font-size:12px; }
    .newsletter { margin:0 28px 0; padding:54px max(28px,calc((100vw - 1184px)/2)); background:#d3b68e; color:var(--cocoa); display:flex; justify-content:space-between; align-items:center; gap:35px; }
    .newsletter h2 { font-size:36px; }
    .newsletter p { margin:10px 0 0; max-width:450px; font-size:14px; line-height:1.5; }
    .email-form { display:flex; width:min(100%,420px); border-bottom:1px solid var(--cocoa); }
    .email-form input { flex:1; min-width:0; padding:12px 0; background:transparent; border:0; outline:0; color:var(--cocoa); }
    .email-form input::placeholder { color:rgba(77,56,36,.73); }
    .email-form button { background:transparent; border:0; font-size:11px; color:var(--cocoa); font-weight:700; letter-spacing:.1em; }
    footer { max-width:1240px; margin:auto; padding:69px 28px 27px; }
    .footer-main { display:grid; grid-template-columns:1.5fr repeat(4,1fr); gap:34px; padding-bottom:55px; }
    .footer-logo { width:116px; height:95px; object-fit:contain;  margin:-14px 0 -12px -27px; }
    .footer-blurb { max-width:250px; line-height:1.7; font-size:13px; color:#796a5b; }
    .footer-heading { display:block; margin:7px 0 15px; color:var(--cocoa); font-size:11px; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
    .footer-column a, .footer-column p { display:block; margin:0 0 10px; color:#796a5b; font-size:13px; }
    .footer-column a:hover { color:var(--gold); }
    .footer-bottom { padding-top:21px; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:20px; font-size:11px; color:#897a6b; }
    .footer-bottom span:last-child { color:var(--cocoa); }
    .drawer-backdrop { position:fixed; inset:0; z-index:60; background:rgba(31,22,12,.38); opacity:0; visibility:hidden; transition:.25s; }
    .drawer { position:fixed; z-index:61; top:0; right:0; height:100dvh; width:min(430px,100%); padding:24px; background:var(--white); box-shadow:-15px 0 40px rgba(28,20,10,.16); transform:translateX(100%); transition:.3s ease; display:flex; flex-direction:column; }
    .drawer-backdrop.open { opacity:1; visibility:visible; }
    .drawer.open { transform:none; }
    .drawer-head { display:flex; align-items:center; justify-content:space-between; padding-bottom:19px; border-bottom:1px solid var(--line); }
    .drawer-title { margin:0; font-family:"Playfair Display",serif; font-size:27px; font-weight:500; }
    .close { background:transparent; border:0; color:var(--cocoa); font-size:26px; line-height:1; }
    .cart-items { flex:1; overflow:auto; padding:17px 0; }
    .empty-cart { color:#857565; text-align:center; margin-top:70px; line-height:1.7; }
    .cart-item { display:grid; grid-template-columns:75px 1fr auto; gap:13px; padding:12px 0; border-bottom:1px solid var(--line); }
    .cart-item img { width:75px; height:88px; object-fit:cover; }
    .cart-item h4 { margin:2px 0 7px; font-size:13px; }
    .cart-item span { color:#806f5f; font-size:12px; }
    .cart-item button { align-self:start; border:0; background:transparent; color:#aa796e; font-size:18px; }
    .cart-total { border-top:1px solid var(--line); padding-top:18px; }
    .total-row { display:flex; justify-content:space-between; font-size:14px; font-weight:700; margin-bottom:16px; }
    .cart-total .button { width:100%; justify-content:center; }
    .drawer-search { width:100%; margin-top:20px; padding:13px 0; outline:0; border:0; border-bottom:1px solid var(--cocoa); background:transparent; }
    .search-results { overflow:auto; padding:18px 0; }
    .search-result { display:flex; gap:13px; padding:10px 0; border-bottom:1px solid var(--line); cursor:pointer; }
    .search-result img { width:60px; height:70px; object-fit:cover; }
    .search-result h4 { margin:2px 0 5px; font-size:13px; }
    .search-result span { color:var(--cocoa); font-family:"Playfair Display",serif; }
    .toast { position:fixed; z-index:80; bottom:24px; left:50%; transform:translate(-50%,20px); opacity:0; pointer-events:none; padding:13px 18px; background:var(--cocoa); color:#fffdf7; font-size:13px; box-shadow:var(--shadow); transition:.25s; }
    .toast.show { transform:translate(-50%,0); opacity:1; }
    .review-float{position:fixed;z-index:58;left:18px;bottom:18px;width:min(300px,calc(100vw - 36px));padding:13px 42px 13px 15px;background:#fffdf9;border:1px solid rgba(77,56,36,.16);box-shadow:0 14px 42px rgba(51,34,17,.16);color:var(--cocoa);transform:translateY(12px);opacity:0;pointer-events:none;transition:.3s}.review-float.show{opacity:1;transform:translateY(0);pointer-events:auto}.review-float .stars-line{color:var(--gold);font-size:13px;letter-spacing:.04em}.review-float strong{display:block;margin:3px 0 2px;font-size:12px}.review-float span{display:block;color:#766554;font-size:12px;line-height:1.45}.review-close{position:absolute;top:7px;right:7px;width:28px;height:28px;border:0;border-radius:50%;background:#f3eadc;color:var(--cocoa);font-size:18px;line-height:1;cursor:pointer}.review-close:hover{background:#ead9bf}
    .product-modal{position:fixed;inset:0;z-index:90;display:none;background:rgba(32,22,12,.72);padding:26px;place-items:center}.product-modal.open{display:grid}.product-dialog{width:min(980px,100%);max-height:92dvh;display:grid;grid-template-columns:minmax(0,1.1fr) 340px;background:var(--white);box-shadow:0 25px 80px rgba(0,0,0,.28);overflow:hidden}.gallery-stage{position:relative;background:#1f160d;min-height:600px;display:grid;place-items:center;touch-action:pan-y}.gallery-stage img,.gallery-stage video{width:100%;height:100%;max-height:92dvh;object-fit:contain}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,253,249,.88);color:var(--cocoa);font-size:25px}.gallery-arrow.prev{left:15px}.gallery-arrow.next{right:15px}.gallery-count{position:absolute;left:15px;bottom:15px;padding:7px 10px;background:rgba(255,253,249,.9);color:var(--cocoa);font-size:11px;font-weight:700}.product-detail{padding:30px;display:flex;flex-direction:column;gap:16px}.product-detail h3{margin:0;font-size:31px;font-family:"Playfair Display",serif;font-weight:500;letter-spacing:-.04em}.product-detail p{margin:0;color:#756655;font-size:13px;line-height:1.6}.modal-close{position:absolute;top:18px;right:18px;width:38px;height:38px;border:0;border-radius:50%;background:#fffdf9;color:var(--cocoa);font-size:24px;z-index:2}.thumb-row{display:flex;gap:8px;overflow:auto;padding-top:2px}.thumb-row button{width:58px;height:66px;flex:0 0 auto;border:2px solid transparent;padding:0;background:#eee2d3}.thumb-row button.active{border-color:var(--gold)}.thumb-row img{width:100%;height:100%;object-fit:cover}.detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}.detail-actions .button{justify-content:center;padding-inline:12px}
    @media (max-width:850px) { .nav{padding:0 18px;min-height:68px}.nav-links{display:none}.mobile-menu{display:grid}.brand{min-width:auto}.brand-text{font-size:21px}.hero{min-height:570px}.hero-content{padding:70px 22px}.categories,.products{grid-template-columns:repeat(2,1fr)}.category{min-height:300px}.promise{grid-template-columns:1fr;gap:38px}.promise-image{min-height:390px}.newsletter{margin:0;padding:43px 28px;display:block}.email-form{margin-top:28px}.footer-main{grid-template-columns:1.5fr 1fr 1fr;gap:30px}.footer-column:last-child{grid-column:2}.instagram{grid-template-columns:repeat(5,1fr)}.product-dialog{grid-template-columns:1fr;overflow:auto}.gallery-stage{min-height:55dvh}.product-detail{padding:22px}.modal-close{top:10px;right:10px} }
    @media (max-width:530px) { .announcement{font-size:10px}.brand-logo{width:44px;height:44px}.nav-actions .icon-button:first-child{display:none}.hero:before{background:linear-gradient(90deg,rgba(37,25,12,.78),rgba(37,25,12,.28)),url('https://images.unsplash.com/photo-1617038220319-276d3cfab638?auto=format&fit=crop&w=1000&q=85') 60%/cover}.hero h1{font-size:49px}.section{padding:64px 18px}.section-head{margin-bottom:24px}.section-head .text-link{font-size:10px}.categories{gap:10px}.category{min-height:210px;padding:14px}.category span{font-size:21px}.round-arrow{width:28px;height:28px}.products{gap:12px}.product-info{padding-top:10px}.product h3{font-size:12px}.price{font-size:15px}.badge{top:7px;left:7px;font-size:8px;padding:5px}.wish{top:5px;right:5px;width:30px;height:30px}.product .quick-add{position:absolute;left:7px;right:7px;bottom:7px;width:calc(100% - 14px);opacity:1;transform:none;padding:11px 7px;font-size:9px}.stock-note{font-size:9px}.product-actions{gap:6px}.mini-action{font-size:8px;padding:8px 5px}.promise-image{min-height:340px}.promise-copy h2{font-size:38px}.review-band{padding:60px 20px}.instagram{gap:4px}.newsletter{margin:0;padding:38px 22px}.newsletter h2{font-size:32px}.review-float{left:16px;right:auto;bottom:16px;width:min(268px,calc(100vw - 32px));padding:12px 38px 12px 13px}.review-close{top:6px;right:6px;width:26px;height:26px}.footer-main{grid-template-columns:1fr 1fr;gap:28px 18px;padding-bottom:40px}.footer-main>div:first-child{grid-column:span 2}.footer-column:last-child{grid-column:auto}.footer-bottom{display:block;line-height:2}.footer-bottom span:last-child{display:block}.drawer{padding:19px}.product-modal{padding:0}.product-dialog{min-height:100dvh;max-height:100dvh}.gallery-stage{min-height:58dvh}.gallery-arrow{width:36px;height:36px;font-size:21px}.detail-actions{grid-template-columns:1fr} }

    .product-image video{width:100%;height:100%;object-fit:cover;transition:transform .55s}.product:hover .product-image video{transform:scale(1.055)}
