:root{--ink:#402b1d;--brown:#744b2d;--clay:#a87958;--cream:#f6eee4;--sand:#ead8c4;--paper:#fffdf9;--sage:#7c8872;--line:rgba(64,43,29,.14);--shadow:0 18px 50px rgba(64,43,29,.1);--serif:'Italiana',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
.login-trigger{display:inline-flex;align-items:center;justify-content:center;padding:9px 17px;border:1px solid var(--brown);border-radius:999px;font-size:.9rem;font-weight:600;white-space:nowrap}
.login-trigger:hover{background:var(--brown);color:white}
body.login-open{overflow:hidden}
.login-dialog{width:min(460px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:36px;border:1px solid var(--line);border-radius:22px;background:var(--paper);color:var(--ink);box-shadow:var(--shadow);overflow:auto}
.login-dialog::backdrop{background:rgba(31,21,15,.6);backdrop-filter:blur(4px)}
.login-dialog h2{margin:0;font-family:var(--serif);font-size:2.3rem;font-weight:400;line-height:1.15}
.login-dialog #login-description{color:#786557;font-size:.9rem;margin:14px 0 24px}
.login-close{position:absolute;right:12px;top:8px;background:transparent;border:0;font-size:1.8rem;color:var(--brown);cursor:pointer;padding:4px 10px}
.login-dialog label{display:block;font-size:.85rem;font-weight:600;margin:15px 0 6px}
.login-dialog input:not([type=hidden]){width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink);font-size:1rem}
.login-dialog input:focus-visible,.login-trigger:focus-visible,.login-close:focus-visible{outline:2px solid var(--clay);outline-offset:3px}
.login-dialog button[type=submit]{margin-top:24px}.login-dialog button:disabled{opacity:.6;cursor:wait}
.login-error{background:#f7e7df;color:#7c3a25;border-radius:8px;padding:10px;font-size:.85rem}
@media(max-width:620px){.login-dialog{padding:30px 22px}.login-trigger{padding:8px 12px;font-size:.8rem}}
/* Desktop hero: reserve room for the header and category strip on short screens. */
@media (min-width: 981px) {
  body .hero {
    min-height: clamp(440px, calc(100svh - 205px), 620px);
  }
  body .hero-copy {
    padding-block: clamp(28px, 5svh, 56px);
    padding-left: max(40px, calc((100vw - 1180px) / 2));
    padding-right: clamp(32px, 4vw, 64px);
  }
  body .hero h1 {
    font-size: clamp(3rem, min(4.8vw, 8svh), 5.2rem);
    line-height: 1.02;
  }
  body .hero-lead {
    margin-block: 20px;
    font-size: 1.05rem;
  }
  body .hero-image {
    min-height: 0;
  }
  body .hero-image img {
    position: absolute;
    inset: 0;
    object-position: center 60%;
  }
  body .hero-seal {
    left: 24px;
    bottom: 30px;
    width: 110px;
    height: 110px;
  }
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}body.cart-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.section{padding:100px 0}.eyebrow{margin:0 0 12px;color:var(--clay);font-size:.75rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 25px;border:1px solid transparent;border-radius:999px;font-weight:700;cursor:pointer;transition:.25s}.button-primary{background:var(--brown);color:#fff}.button-primary:hover{background:var(--ink);transform:translateY(-2px)}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#fff;transform:translateY(-2px)}.button-outline{border-color:var(--brown);background:transparent;color:var(--brown)}.button-outline:hover{background:var(--brown);color:#fff}.button-full{width:100%}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);background:rgba(255,253,249,.92);backdrop-filter:blur(14px)}.header-inner{display:flex;align-items:center;min-height:82px;gap:34px}.brand{display:grid;grid-template-columns:auto auto;align-items:end;line-height:1}.brand-celebrarte{grid-column:1/3;font-family:var(--serif);font-size:1rem;letter-spacing:.08em}.brand-by{font-size:.55rem;letter-spacing:.18em;text-transform:uppercase;opacity:.6}.brand-logo-crop{position:relative;width:78px;height:27px;margin-left:5px;overflow:hidden}.brand-logo-crop img{position:absolute;top:-5px;left:0;width:78px;height:72px;object-fit:cover;object-position:50% 0}.main-nav{display:flex;align-items:center;gap:30px;margin-left:auto}.main-nav a{font-size:.9rem;font-weight:600}.main-nav a:hover,.main-nav a.active{color:var(--clay)}.cart-button{display:flex;align-items:center;gap:8px;border:0;border-radius:999px;background:var(--cream);padding:11px 16px;color:var(--ink);cursor:pointer}.cart-button b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--brown);color:white;font-size:.7rem}.is-hidden{display:none!important}.nav-toggle{display:none;border:0;background:transparent;font-size:1.7rem;color:var(--ink)}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.88fr);min-height:720px;background:var(--cream)}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:90px max(40px,calc((100vw - 1180px)/2))}.hero h1{max-width:700px;margin:0;font-family:var(--serif);font-size:clamp(3.5rem,6vw,6.8rem);font-weight:400;line-height:.98}.hero-lead{max-width:600px;margin:28px 0;color:#6f5d50;font-size:1.15rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-image{position:relative;min-height:650px;overflow:hidden}.hero-image:after{position:absolute;inset:0;content:'';background:linear-gradient(90deg,rgba(246,238,228,.16),transparent 35%)}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-seal{position:absolute;z-index:2;left:-54px;bottom:65px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:132px;height:132px;border-radius:50%;background:var(--brown);color:white;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;transform:rotate(-8deg)}.hero-seal strong{font-size:2.1rem;line-height:1}.category-strip{border-block:1px solid var(--line);background:#fff}.category-list{display:grid;grid-template-columns:repeat(4,1fr)}.category-list a{display:flex;flex-direction:column;padding:26px 28px;border-right:1px solid var(--line);transition:.2s}.category-list a:first-child{border-left:1px solid var(--line)}.category-list a:hover{background:var(--cream)}.category-list span{font-family:var(--serif);font-size:1.45rem}.category-list small{color:#8c7768}
.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:42px}.section-heading h2,.catalog-results-head h2{margin:0;font-family:var(--serif);font-size:clamp(2.4rem,4vw,4rem);font-weight:400}.arrow-link{font-weight:700;color:var(--brown)}.arrow-link i{margin-left:8px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.product-card{min-width:0}.product-image{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;border-radius:180px 180px 18px 18px;background:var(--cream)}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product-image:hover img{transform:scale(1.04)}.product-image>span{position:absolute;left:14px;bottom:14px;padding:6px 12px;border-radius:99px;background:rgba(255,253,249,.9);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(5px)}.product-info{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:17px 4px}.product-info h3{margin:0 0 4px;font-family:var(--serif);font-size:1.35rem;font-weight:400;line-height:1.25}.product-info p{display:-webkit-box;overflow:hidden;margin:0;color:#846f60;font-size:.82rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.product-buy{display:flex;flex-direction:column;align-items:end;gap:9px}.product-buy strong{font-size:1.05rem}.product-buy button{display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;background:var(--brown);color:#fff;cursor:pointer;transition:.2s}.product-buy button:hover{background:var(--ink);transform:scale(1.08)}
.brand-story{background:#f2e8dc}.story-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:90px}.story-collage{position:relative;min-height:670px}.story-main{width:76%;height:620px;border-radius:240px 240px 18px 18px;object-fit:cover}.story-detail{position:absolute;right:0;bottom:0;width:42%;height:300px;border:12px solid #f2e8dc;border-radius:150px 150px 12px 12px;object-fit:cover}.ceco-wordmark{margin-bottom:18px;font-family:var(--serif);font-size:5rem;line-height:1;color:var(--brown)}.story-copy h2{margin:0 0 26px;font-family:var(--serif);font-size:3rem;font-weight:400;line-height:1.1}.story-copy>p:not(.eyebrow){color:#6f5d50}.story-copy .button{margin-top:15px}.gift-banner{padding:110px 0;background:linear-gradient(rgba(60,39,25,.66),rgba(60,39,25,.66)),url('../../productos/WhatsApp Image 2026-09-02 at 11.40.44.jpeg') center 48%/cover;color:white;text-align:center}.gift-content{max-width:760px}.gift-banner .eyebrow{color:#ead8c4}.gift-banner h2{margin:0;font-family:var(--serif);font-size:clamp(2.8rem,5vw,5rem);font-weight:400;line-height:1.05}.gift-banner p:not(.eyebrow){margin:20px 0 30px}.site-footer{padding:75px 0 25px;background:var(--ink);color:#f7eee5}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-logo{font-family:var(--serif);font-size:3.2rem}.footer-grid p{max-width:420px;color:#cbbcaf}.footer-grid h3{margin:0 0 13px;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase}.footer-grid a{display:block;margin:7px 0;color:#d8cbc0}.footer-grid a:hover{color:#fff}.footer-bottom{margin-top:55px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);color:#a9998c;font-size:.8rem}
.catalog-hero{padding:85px 0;background:var(--cream);text-align:center}.catalog-hero h1{margin:0;font-family:var(--serif);font-size:clamp(3rem,5vw,5.4rem);font-weight:400;line-height:1}.catalog-hero p:last-child{margin:18px 0 0;color:#7a6758}.catalog-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:50px}.filters{position:sticky;top:110px;align-self:start}.filters label,.filters h2{display:block;margin:0 0 10px;font-size:.75rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.search-box{display:flex;margin-bottom:35px;border:1px solid var(--line);border-radius:99px;background:white;overflow:hidden}.search-box input{min-width:0;width:100%;padding:11px 4px 11px 15px;border:0;outline:0;background:transparent}.search-box button{width:45px;border:0;background:transparent;color:var(--brown);cursor:pointer}.filters nav{display:flex;flex-direction:column}.filters nav a{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);color:#756255}.filters nav a.active,.filters nav a:hover{color:var(--brown);font-weight:700}.filters nav span{font-size:.75rem}.catalog-results-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.catalog-results-head>span{color:#8b7768;font-size:.85rem}.catalog-results .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.empty-state{padding:80px 20px;text-align:center}.empty-state>i{font-size:3rem;color:var(--clay)}
.product-detail{padding-top:45px}.back-link{display:inline-flex;gap:8px;align-items:center;margin-bottom:28px;color:#7d695b;font-size:.85rem;font-weight:700}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.detail-image{height:700px;border-radius:280px 280px 25px 25px;overflow:hidden;background:var(--cream)}.detail-image img{width:100%;height:100%;object-fit:cover}.detail-copy h1{margin:0;font-family:var(--serif);font-size:clamp(3.5rem,6vw,6rem);font-weight:400;line-height:1}.detail-description{max-width:560px;color:#786557;font-size:1.1rem}.detail-price{display:block;margin:25px 0;font-size:2rem}.detail-note{padding:15px 18px;border-radius:12px;background:var(--cream);color:#6e5b4d}.detail-note i{margin-right:8px}.detail-actions{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0 35px}.detail-features{display:grid;gap:15px;margin:0;padding:28px 0 0;border-top:1px solid var(--line);list-style:none}.detail-features li{display:flex;gap:15px;align-items:center;color:#786557}.detail-features i{font-size:1.35rem;color:var(--clay)}.detail-features b{display:block;color:var(--ink)}
.cart-shell{position:fixed;inset:0;z-index:100;visibility:hidden;opacity:0;transition:.25s}.cart-shell.open{visibility:visible;opacity:1}.cart-overlay{position:absolute;inset:0;width:100%;border:0;background:rgba(31,21,15,.56);cursor:pointer}.cart-drawer{position:absolute;top:0;right:0;display:flex;flex-direction:column;width:min(460px,100%);height:100%;background:var(--paper);transform:translateX(100%);transition:.3s}.cart-shell.open .cart-drawer{transform:none}.cart-head{display:flex;align-items:center;justify-content:space-between;padding:25px;border-bottom:1px solid var(--line)}.cart-head span{font-size:.68rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--clay)}.cart-head h2{margin:1px 0 0;font-family:var(--serif);font-size:2rem;font-weight:400}.cart-head button{border:0;background:transparent;color:var(--ink);font-size:1.15rem;cursor:pointer}.cart-message{margin:15px 22px 0;padding:10px 13px;border-radius:9px;background:#f7e7df;color:#7c3a25;font-size:.85rem}.cart-items{flex:1;overflow:auto;padding:20px}.cart-empty{padding:70px 15px;text-align:center;color:#887466}.cart-empty i{font-size:2.5rem}.cart-item{display:grid;grid-template-columns:74px 1fr auto;gap:13px;padding:13px 0;border-bottom:1px solid var(--line)}.cart-item img{width:74px;height:88px;border-radius:10px;object-fit:cover}.cart-item h3{margin:0;font-family:var(--serif);font-size:1.05rem;font-weight:400}.cart-item strong{font-size:.9rem}.cart-qty{display:flex;align-items:center;gap:10px;margin-top:9px}.cart-qty button{display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--line);border-radius:50%;background:white;cursor:pointer}.cart-remove{align-self:start;border:0;background:transparent;color:#a18d7e;cursor:pointer}.cart-footer{padding:20px 25px;border-top:1px solid var(--line);background:#fff}.cart-total{display:flex;justify-content:space-between;margin-bottom:14px}.cart-total strong{font-size:1.25rem}.text-button{display:block;margin:12px auto 0;border:0;background:transparent;color:var(--brown);font-weight:700;cursor:pointer}.checkout-form{flex:1;overflow:auto;padding:24px}.checkout-form h3{margin:0;font-family:var(--serif);font-size:2rem;font-weight:400}.checkout-form>p{margin:5px 0 22px;color:#7d6a5c;font-size:.85rem}.checkout-form>label{display:grid;gap:5px;margin-bottom:14px;font-size:.75rem;font-weight:700;letter-spacing:.05em}.checkout-form small{font-weight:400}.checkout-form input,.checkout-form textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;outline:none}.checkout-form input:focus,.checkout-form textarea:focus{border-color:var(--clay)}.checkout-form fieldset{display:flex;gap:20px;margin:0 0 14px;padding:0;border:0}.checkout-form legend{margin-bottom:5px;font-size:.75rem;font-weight:700;letter-spacing:.05em}.checkout-form fieldset label{font-size:.9rem}
@media(max-width:980px){.main-nav{display:none;position:absolute;top:82px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:0;padding:15px 20px;background:var(--paper);border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.main-nav a{width:100%;padding:12px}.nav-toggle{display:block;margin-left:auto}.cart-button span{display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:85px 30px}.hero-image{min-height:620px}.hero-seal{left:auto;right:24px}.product-grid{grid-template-columns:repeat(2,1fr)}.story-grid{grid-template-columns:1fr;gap:50px}.catalog-layout{grid-template-columns:1fr}.filters{position:static}.filters nav{display:grid;grid-template-columns:repeat(2,1fr);column-gap:25px}.catalog-results .product-grid{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr;gap:45px}.detail-image{height:min(700px,110vw)}}
@media(max-width:620px){.container{width:min(100% - 26px,1180px)}.section{padding:70px 0}.header-inner{min-height:72px;gap:10px}.main-nav{top:72px}.brand-ceco{font-size:1.55rem}.cart-button{padding:10px}.hero-copy{padding:65px 20px}.hero h1{font-size:3.2rem}.hero-image{min-height:500px}.category-list{grid-template-columns:repeat(2,1fr)}.category-list a{padding:18px 13px;border-bottom:1px solid var(--line)}.category-list span{font-size:1.1rem}.section-heading{display:block}.arrow-link{display:inline-block;margin-top:15px}.product-grid,.catalog-results .product-grid{grid-template-columns:1fr 1fr;gap:16px}.product-image{border-radius:100px 100px 12px 12px}.product-info{grid-template-columns:1fr;padding-top:11px}.product-info h3{font-size:1.05rem}.product-info p{display:none}.product-buy{flex-direction:row;align-items:center;justify-content:space-between}.story-collage{min-height:470px}.story-main{height:440px}.story-detail{height:220px}.ceco-wordmark{font-size:4rem}.footer-grid{grid-template-columns:1fr;gap:30px}.catalog-hero{padding:60px 0}.filters nav{grid-template-columns:1fr}.catalog-results-head{align-items:start}.detail-image{height:500px}.detail-actions{flex-direction:column}.detail-actions .button{width:100%}}
.story-logo-crop{position:relative;width:270px;height:112px;margin-bottom:20px;overflow:hidden}.story-logo-crop img{position:absolute;top:-18px;left:0;width:270px;height:250px;object-fit:cover;object-position:50% 0}.footer-logo-crop{position:relative;width:190px;height:80px;overflow:hidden;border-radius:14px}.footer-logo-crop img{position:absolute;top:-12px;left:0;width:190px;height:176px;object-fit:cover;object-position:50% 0}
