/*
Theme Name: Storitellah
Theme URI: https://prints.storitellah.com
Author: Brian Otieno
Author URI: https://storitellah.com
Description: An editorial documentary-photography theme for Storitellah, the print shop of Kenyan photojournalist Brian Otieno. Hand-crafted with WooCommerce support, a customizable homepage, archival-print aesthetics and a WhatsApp-first checkout. Ships with the full Kibera-rooted typographic system (Fraunces + Geist).
Version: 2.10.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: storitellah
Tags: photography, woocommerce, full-width-template, custom-header, custom-logo, custom-menu, custom-colors, editor-style, featured-images, threaded-comments, translation-ready
*/

:root{
  --bone:#f4efe6; --bone-deep:#ebe3d5; --paper:#faf6ef;
  --ink:#1a1612; --ink-soft:#2a231e;
  --ash:#6b645a; --mist:#c9c0b0;
  --clay:#b8533a; --clay-deep:#8a3d2a;
  --whatsapp:#25d366;
  --serif:'Fraunces',Georgia,serif;
  --sans:'Geist',-apple-system,BlinkMacSystemFont,sans-serif;
  --mono:'Geist Mono','Courier New',monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--bone);color:var(--ink);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.1 0 0 0 0 0.09 0 0 0 0 0.07 0 0 0 0.4 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");opacity:.35;pointer-events:none;z-index:9999;mix-blend-mode:multiply}
img{display:block;max-width:100%;height:auto}
a{color:inherit}

/* WP CORE BLOCK COMPATIBILITY */
.alignleft{float:left;margin-right:1.5em}
.alignright{float:right;margin-left:1.5em}
.aligncenter{display:block;margin-left:auto;margin-right:auto}
.alignwide{max-width:1200px;margin-left:auto;margin-right:auto}
.alignfull{max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.skip-link{position:absolute;left:-9999px;top:1em;background:var(--ink);color:var(--bone);padding:.6em 1em;z-index:100000;text-decoration:none;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.skip-link:focus{left:1em}

/* NOTICE BAR — fixed on homepage only, normal flow on subpages.
   Slides up out of view once the user begins scrolling. */
.notice-bar{background:var(--ink);color:var(--bone);font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:11px 0;position:relative;z-index:60;overflow:hidden;white-space:nowrap;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.home .notice-bar,.front-page .notice-bar{position:fixed;top:0;left:0;right:0}
.notice-bar.is-hidden{transform:translateY(-100%)}
/* On home: when notice slides up, slide the header up too so they move as a unit */
.home.notice-up .site-header,.front-page.notice-up .site-header{top:0}
.notice-track{display:inline-block;animation:marquee 42s linear infinite;padding-left:100%}
.notice-track span{margin:0 36px;display:inline-flex;align-items:center;gap:14px}
.notice-track span::after{content:'·';color:var(--clay)}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-100%)}}

/* HEADER */
/* Default: opaque, sticky. On homepage: transparent overlay on hero. */
.site-header{position:sticky;top:0;left:0;right:0;background:rgba(244,239,230,.88);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);z-index:50;border-bottom:1px solid rgba(26,22,18,.07);transition:background .35s ease,border-color .35s ease,backdrop-filter .35s ease,top .4s cubic-bezier(.16,1,.3,1)}
.home .site-header,.front-page .site-header{position:fixed;top:38px;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:transparent}
.home .site-header.is-scrolled,.front-page .site-header.is-scrolled{background:rgba(244,239,230,.88);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-bottom-color:rgba(26,22,18,.07)}

/* When transparent over the hero, switch text/icon colors to bone */
/* Bone-coloured text/icons when transparent over hero (homepage only) */
.home .site-header:not(.is-scrolled) .site-logo,
.front-page .site-header:not(.is-scrolled) .site-logo{color:var(--bone)}
.home .site-header:not(.is-scrolled) .site-logo .dot,
.front-page .site-header:not(.is-scrolled) .site-logo .dot{color:var(--clay)}
.home .site-header:not(.is-scrolled) .main-nav a,
.front-page .site-header:not(.is-scrolled) .main-nav a{color:var(--bone)}
.home .site-header:not(.is-scrolled) .main-nav a:hover,
.front-page .site-header:not(.is-scrolled) .main-nav a:hover{color:var(--clay)}
.home .site-header:not(.is-scrolled) .icon-btn,
.front-page .site-header:not(.is-scrolled) .icon-btn{border-color:rgba(244,239,230,.4);color:var(--bone)}
.home .site-header:not(.is-scrolled) .icon-btn:hover,
.front-page .site-header:not(.is-scrolled) .icon-btn:hover{background:var(--bone);color:var(--ink);border-color:var(--bone)}
.home .site-header:not(.is-scrolled) .menu-toggle,
.front-page .site-header:not(.is-scrolled) .menu-toggle{border-color:rgba(244,239,230,.4);color:var(--bone)}

/* Pages other than the homepage need top padding so their content isn't hidden
   behind the fixed header. Homepage starts with the hero (which has its own
   negative margin to extend up under the header). */
body:not(.home):not(.front-page){padding-top:112px}
.header-inner{max-width:1600px;margin:0 auto;padding:18px 32px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px}
.site-logo{font-family:var(--serif);font-style:italic;font-weight:400;font-size:28px;letter-spacing:-.03em;text-decoration:none;color:var(--ink);font-variation-settings:"opsz" 144,"SOFT" 80;line-height:1;display:inline-block}
.site-logo .dot{color:var(--clay);font-style:normal}
.site-logo img{max-height:42px;width:auto;display:block}
.main-nav ul{list-style:none;display:flex;gap:36px;justify-content:center;margin:0;padding:0}
.main-nav a{font-family:var(--sans);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;font-weight:500;position:relative;padding:6px 0;transition:color .25s}
.main-nav a:hover{color:var(--clay)}
.main-nav a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--clay);transition:width .35s ease}
.main-nav a:hover::after{width:100%}
.main-nav .menu-item-has-children > a::before{content:'';display:inline-block;width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin-right:4px;vertical-align:middle;opacity:.6}
.header-actions{display:flex;justify-content:flex-end;gap:14px;align-items:center}
.icon-btn{width:38px;height:38px;border:1px solid rgba(26,22,18,.18);border-radius:999px;background:transparent;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s,color .2s,border-color .2s;text-decoration:none}
.icon-btn:hover{background:var(--ink);color:var(--bone);border-color:var(--ink)}
.icon-btn svg{width:14px;height:14px}
.cart-btn{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--bone);padding:11px 18px 11px 14px;border-radius:999px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;transition:background .25s,transform .25s}
.cart-btn:hover{background:var(--clay);transform:translateY(-1px);color:var(--bone)}
.cart-btn .wa{width:18px;height:18px;background:var(--whatsapp);border-radius:999px;display:inline-flex;align-items:center;justify-content:center}
.cart-btn .wa svg{width:11px;height:11px;fill:#fff}
.cart-count{background:var(--clay);color:var(--bone);min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:10px;display:inline-flex;align-items:center;justify-content:center}
.menu-toggle{display:none;background:transparent;border:1px solid rgba(26,22,18,.18);width:38px;height:38px;border-radius:999px;cursor:pointer;align-items:center;justify-content:center;color:var(--ink)}
.menu-toggle svg{width:16px;height:16px}

/* HERO */
.hero{position:relative;min-height:calc(100vh + 112px);display:flex;align-items:flex-end;overflow:hidden;background:#100c08;margin-top:-112px;padding-top:112px}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78;filter:contrast(1.05) saturate(1.05)}
.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,12,8,.55) 0%,rgba(16,12,8,.18) 38%,rgba(16,12,8,.85) 100%)}
.hero-content{position:relative;z-index:2;max-width:1600px;margin:0 auto;width:100%;padding:80px 32px 70px;color:var(--bone);display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:end}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;display:inline-flex;align-items:center;gap:14px}
.eyebrow::before{content:'';width:36px;height:1px;background:var(--clay)}
.hero .eyebrow{color:var(--mist);margin-bottom:28px}
.hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(28px,8.5vw,140px);line-height:1;letter-spacing:-.04em;white-space:nowrap;font-variation-settings:"opsz" 144,"SOFT" 30;color:var(--bone)}
.hero h1 em{font-style:italic;font-weight:300;color:var(--bone-deep);font-variation-settings:"opsz" 144,"SOFT" 100}
.hero-meta{display:flex;flex-direction:column;gap:18px;padding-bottom:14px}
.hero-caption{font-family:var(--serif);font-size:19px;line-height:1.5;color:var(--bone);font-weight:300;max-width:400px;font-variation-settings:"opsz" 36,"SOFT" 60}
.hero-byline{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--mist);padding-top:18px;border-top:1px solid rgba(244,239,230,.18);display:grid;gap:6px}
.hero-byline strong{color:var(--bone);font-weight:500}
.hero-corner{position:absolute;top:32px;right:32px;z-index:3;font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--mist);text-transform:uppercase;text-align:right}
.hero-corner::before{display:none}

/* MANIFESTO */
.manifesto{padding:140px 32px;max-width:1100px;margin:0 auto;text-align:center}
.manifesto .eyebrow{color:var(--clay);margin-bottom:36px;justify-content:center}
.manifesto blockquote{font-family:var(--serif);font-weight:300;font-size:clamp(26px,3.2vw,42px);line-height:1.32;letter-spacing:-.018em;font-variation-settings:"opsz" 144,"SOFT" 70;border:none;padding:0;margin:0}
.manifesto blockquote em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.manifesto cite{font-family:var(--mono);font-style:normal;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ash);margin-top:44px;display:block}

/* SECTION HEADS */
.section-head{max-width:1600px;margin:0 auto;padding:0 32px 56px;display:flex;justify-content:space-between;align-items:end;gap:32px}
.section-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(40px,5.5vw,76px);line-height:.94;letter-spacing:-.025em;font-variation-settings:"opsz" 144,"SOFT" 50;max-width:760px}
.section-head h2 em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.section-head .meta{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ash);max-width:300px;text-align:right;line-height:1.7}

/* COLLECTIONS */
.collections{padding:60px 0 100px}
.collections-grid{max-width:1600px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:repeat(12,1fr);gap:28px}
.collection{position:relative;text-decoration:none;color:inherit;display:block}
.collection-img-wrap{overflow:hidden;background:var(--ink);position:relative;aspect-ratio:var(--ratio,3/2)}
.collection-img-wrap::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(16,12,8,.55) 100%);opacity:0;transition:opacity .4s}
.collection:hover .collection-img-wrap::after{opacity:1}
.collection img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.16,1,.3,1)}
.collection:hover img{transform:scale(1.05)}
.collection-info{padding:18px 4px 0;display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.collection-info h3{font-family:var(--serif);font-weight:400;font-size:24px;letter-spacing:-.012em;font-variation-settings:"opsz" 36,"SOFT" 60;line-height:1.1}
.collection-info h3 em{font-style:italic;font-variation-settings:"opsz" 36,"SOFT" 100}
.collection-info .count{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ash);white-space:nowrap}
.col-1{grid-column:span 7}
.col-2{grid-column:span 5;margin-top:80px}
.col-3{grid-column:span 4}
.col-4{grid-column:span 4;margin-top:60px}
.col-5{grid-column:span 4}

/* SHOP */
.shop{background:var(--paper);padding:130px 0;border-top:1px solid rgba(26,22,18,.07);border-bottom:1px solid rgba(26,22,18,.07)}
.filter-bar{max-width:1600px;margin:0 auto 56px;padding:0 32px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.filter-tabs{display:flex;gap:6px;flex-wrap:wrap}
.filter-tab{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:11px 18px;background:transparent;border:1px solid rgba(26,22,18,.18);border-radius:999px;cursor:pointer;color:var(--ink-soft);transition:all .2s;text-decoration:none;display:inline-flex;align-items:center}
.filter-tab.active,.filter-tab:hover{background:var(--ink);color:var(--bone);border-color:var(--ink)}
.sort{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash);display:flex;align-items:center;gap:10px}
.sort select{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:transparent;border:none;border-bottom:1px solid var(--ink);padding:4px 22px 4px 4px;cursor:pointer;color:var(--ink);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%231a1612' d='M6 8 0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center;background-size:9px}

.products{max-width:1600px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:repeat(3,1fr);gap:60px 40px;list-style:none}
.product{display:flex;flex-direction:column;list-style:none}
.product-img-wrap{aspect-ratio:var(--ratio,3/2);overflow:hidden;background:var(--bone-deep);position:relative;margin-bottom:20px}
.product img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.product:hover img{transform:scale(1.04)}
.product-badge{position:absolute;top:14px;left:14px;background:var(--bone);color:var(--ink);padding:6px 10px;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;z-index:2}
.product-badge.limited{background:var(--clay);color:var(--bone)}
.product-quick{position:absolute;left:0;right:0;bottom:0;padding:20px 16px;background:linear-gradient(0deg,rgba(16,12,8,.92),transparent);transform:translateY(105%);transition:transform .45s cubic-bezier(.16,1,.3,1);display:flex;gap:8px;justify-content:center}
.product:hover .product-quick{transform:translateY(0)}
.quick-link{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone);text-decoration:none;padding:9px 14px;border:1px solid var(--bone);border-radius:999px;transition:background .2s,color .2s;cursor:pointer;background:transparent}
.quick-link:hover{background:var(--bone);color:var(--ink)}
.product-meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash);margin-bottom:8px}
.product h3,.product .woocommerce-loop-product__title{font-family:var(--serif);font-weight:400;font-size:28px;letter-spacing:-.018em;line-height:1.05;font-variation-settings:"opsz" 36,"SOFT" 70;margin-bottom:6px;padding:0}
.product h3 em{font-style:italic;font-variation-settings:"opsz" 36,"SOFT" 100}
.product-loc{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--ash);margin-bottom:16px;font-variation-settings:"opsz" 14,"SOFT" 100}
.product-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:16px;border-top:1px solid rgba(26,22,18,.14);margin-top:auto}
.price,.product .price{font-family:var(--serif);font-weight:400;font-size:18px;letter-spacing:-.005em;color:var(--ink)}
.price .from,.price ins,.price del{font-weight:400}
.price del{color:var(--ash);opacity:.6;margin-right:8px}
.price ins{text-decoration:none}
.price .from{font-family:var(--mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ash);margin-right:6px;font-weight:500}
.add-cart,.products a.button,.products .add_to_cart_button{font-family:var(--mono)!important;font-size:10px!important;letter-spacing:.14em!important;text-transform:uppercase!important;background:transparent!important;border:1px solid var(--ink)!important;color:var(--ink)!important;padding:11px 16px!important;border-radius:999px!important;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s;text-decoration:none!important;line-height:1!important;font-weight:500!important;box-shadow:none!important}
.add-cart:hover,.products a.button:hover,.products .add_to_cart_button:hover{background:var(--whatsapp)!important;border-color:var(--whatsapp)!important;color:#fff!important}
.add-cart svg{width:13px;height:13px}

.shop-footer{max-width:1600px;margin:90px auto 0;padding:0 32px;display:flex;justify-content:center;align-items:center;gap:40px;flex-wrap:wrap}
.shop-footer-text{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ash)}
.view-all{display:inline-flex;align-items:center;gap:14px;font-family:var(--serif);font-size:22px;color:var(--ink);text-decoration:none;padding:18px 36px;border:1px solid var(--ink);border-radius:999px;transition:background .25s,color .25s;font-variation-settings:"opsz" 36,"SOFT" 100}
.view-all em{font-style:italic}
.view-all:hover{background:var(--ink);color:var(--bone)}
.view-all svg{width:16px;height:16px;transition:transform .3s}
.view-all:hover svg{transform:translateX(4px)}

/* ABOUT */
.about{background:var(--ink);color:var(--bone);padding:140px 32px;position:relative;overflow:hidden}
.about::before{content:'';position:absolute;top:-100px;right:-100px;width:500px;height:500px;border:1px solid rgba(184,83,58,.18);border-radius:50%;pointer-events:none}
.about::after{content:'';position:absolute;bottom:-150px;left:-100px;width:400px;height:400px;border:1px solid rgba(184,83,58,.12);border-radius:50%;pointer-events:none}
.about-grid{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr 1.4fr;gap:80px;align-items:center;position:relative}
.about-portrait{position:relative;aspect-ratio:var(--ratio,3/2);overflow:hidden}
.about-portrait img{width:100%;height:100%;object-fit:cover;filter:saturate(.9)}
.about-portrait .tag{position:absolute;bottom:16px;left:16px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;background:var(--bone);color:var(--ink);padding:7px 11px}
.about-text .eyebrow{color:var(--clay);margin-bottom:28px}
.about-text h2{font-family:var(--serif);font-weight:300;font-size:clamp(38px,4.4vw,62px);line-height:1.02;letter-spacing:-.022em;margin-bottom:34px;font-variation-settings:"opsz" 144,"SOFT" 50;color:var(--bone)}
.about-text h2 em{font-style:italic;color:var(--bone-deep);font-variation-settings:"opsz" 144,"SOFT" 100}
.about-text p{font-family:var(--serif);font-weight:300;font-size:19px;line-height:1.55;color:var(--bone-deep);margin-bottom:20px;max-width:580px;font-variation-settings:"opsz" 36,"SOFT" 70}
.press-strip{margin-top:50px;padding-top:36px;border-top:1px solid rgba(244,239,230,.15)}
.press-strip-label{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--mist);margin-bottom:22px}
.press-list{display:flex;gap:36px;flex-wrap:wrap;align-items:center}
.press-list span,.press-list a{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--bone);font-variation-settings:"opsz" 36,"SOFT" 100;opacity:.85;transition:opacity .3s,color .3s;text-decoration:none}
.press-list span:hover,.press-list a:hover{opacity:1;color:var(--clay)}
.press-list a{cursor:pointer;border-bottom:1px solid transparent;transition:opacity .3s,color .3s,border-color .3s}
.press-list a:hover{border-bottom-color:var(--clay)}

/* PRINT INFO */
.print-info{padding:140px 32px;max-width:1600px;margin:0 auto}
.info-head{text-align:center;margin-bottom:80px}
.info-head .eyebrow{color:var(--clay);margin-bottom:24px;justify-content:center}
.info-head h2{font-family:var(--serif);font-weight:300;font-size:clamp(40px,5.5vw,76px);line-height:.95;letter-spacing:-.025em;max-width:900px;margin:0 auto;font-variation-settings:"opsz" 144,"SOFT" 50}
.info-head h2 em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(26,22,18,.14);border:1px solid rgba(26,22,18,.14)}
.info-card{background:var(--bone);padding:44px 32px;display:flex;flex-direction:column;gap:18px;transition:background .3s}
.info-card:hover{background:var(--paper)}
.info-num{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--clay);font-weight:500}
.info-card h3{font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.018em;line-height:1.1;font-variation-settings:"opsz" 36,"SOFT" 70}
.info-card h3 em{font-style:italic;font-variation-settings:"opsz" 36,"SOFT" 100}
.info-card p{font-family:var(--sans);font-size:15.5px;line-height:1.6;color:var(--ink-soft)}

/* NEWSLETTER */
.newsletter{background:var(--ink-soft);color:var(--bone);padding:120px 32px;position:relative;overflow:hidden}
.newsletter::before{content:'';position:absolute;top:50%;left:-200px;width:500px;height:500px;background:radial-gradient(circle,rgba(184,83,58,.18) 0%,transparent 70%);transform:translateY(-50%);pointer-events:none}
.newsletter-inner{max-width:920px;margin:0 auto;text-align:center;position:relative}
.newsletter .eyebrow{justify-content:center;color:var(--mist);margin-bottom:28px}
.newsletter h2{font-family:var(--serif);font-weight:300;font-size:clamp(36px,5vw,64px);line-height:1;letter-spacing:-.025em;margin-bottom:22px;font-variation-settings:"opsz" 144,"SOFT" 60;color:var(--bone)}
.newsletter h2 em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.newsletter p{font-family:var(--serif);font-size:18px;color:var(--bone-deep);margin-bottom:42px;font-weight:300;max-width:560px;margin-left:auto;margin-right:auto;line-height:1.5;font-variation-settings:"opsz" 36,"SOFT" 70}
.newsletter-form{display:flex;max-width:520px;margin:0 auto;gap:8px;background:rgba(244,239,230,.06);border:1px solid rgba(244,239,230,.18);border-radius:999px;padding:7px}
.newsletter-dnt-notice{font-family:var(--serif);font-size:16px;line-height:1.55;color:var(--bone-deep);max-width:560px;margin:0 auto;padding:24px;background:rgba(244,239,230,.04);border:1px solid rgba(244,239,230,.12);border-radius:18px;font-weight:300}
.newsletter-dnt-notice a{color:var(--clay);border-bottom:1px solid rgba(184,83,58,.4);padding-bottom:1px}
.newsletter-dnt-notice a:hover{border-bottom-color:var(--clay)}
.newsletter-form input[type=email]{flex:1;background:transparent;border:none;padding:14px 22px;color:var(--bone);font-family:var(--sans);font-size:15.5px;outline:none;letter-spacing:.01em}
.newsletter-form input[type=email]::placeholder{color:var(--mist)}
.newsletter-form button{background:var(--clay);color:var(--bone);border:none;padding:13px 28px;border-radius:999px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .2s;font-weight:500}
.newsletter-form button:hover{background:var(--clay-deep)}

/* FOOTER */
.site-footer{background:var(--ink);color:var(--bone);padding:90px 32px 32px}
.footer-inner{max-width:1600px;margin:0 auto}
.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:60px;padding-bottom:60px;border-bottom:1px solid rgba(244,239,230,.12)}
.footer-brand .site-logo{color:var(--bone);font-size:34px;display:inline-block;margin-bottom:22px}
.footer-brand p{font-family:var(--serif);font-size:17px;line-height:1.55;color:var(--bone-deep);max-width:380px;font-weight:300;font-variation-settings:"opsz" 36,"SOFT" 70}
.footer-brand .credit{margin-top:24px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--mist)}
.footer-col h4{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mist);margin-bottom:24px;font-weight:500}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:13px;margin:0;padding:0}
.footer-col a{font-family:var(--serif);font-size:18px;color:var(--bone);text-decoration:none;transition:color .2s,letter-spacing .2s;font-variation-settings:"opsz" 14,"SOFT" 80;display:inline-block}
.footer-col a:hover{color:var(--clay)}
.footer-bottom{padding-top:32px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
.footer-bottom p{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mist)}
.socials{display:flex;gap:12px}
.socials a{width:38px;height:38px;border:1px solid rgba(244,239,230,.25);border-radius:999px;display:flex;align-items:center;justify-content:center;color:var(--bone);transition:all .2s}
.socials a:hover{background:var(--clay);border-color:var(--clay)}
.socials svg{width:15px;height:15px;fill:currentColor}

/* TOAST */
.st-toast{position:fixed;bottom:-100px;right:28px;background:var(--whatsapp);color:#fff;padding:16px 22px;border-radius:14px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;opacity:0;pointer-events:none;transition:bottom .45s cubic-bezier(.16,1,.3,1),opacity .3s,box-shadow .3s;z-index:1000;display:flex;align-items:center;gap:12px}
.st-toast.show{bottom:28px;opacity:1;pointer-events:auto;box-shadow:0 14px 40px rgba(37,211,102,.35)}
.st-toast svg{width:18px;height:18px;fill:#fff}

/* Newsletter honeypot — off-screen but submittable */
.newsletter-hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}

/* REVEAL */
.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.reveal.in{opacity:1;transform:translateY(0)}

/* GENERIC PAGE / SINGLE / ARCHIVE */
.page-shell{max-width:920px;margin:0 auto;padding:120px 32px}
.page-shell h1{font-family:var(--serif);font-weight:300;font-size:clamp(40px,5vw,72px);line-height:1;letter-spacing:-.025em;margin-bottom:40px;font-variation-settings:"opsz" 144,"SOFT" 50}
.page-shell h1 em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.page-shell h2{font-family:var(--serif);font-weight:400;font-size:32px;letter-spacing:-.015em;margin:48px 0 18px;font-variation-settings:"opsz" 36,"SOFT" 60}
.page-shell h3{font-family:var(--serif);font-weight:400;font-size:22px;margin:32px 0 14px;font-variation-settings:"opsz" 36,"SOFT" 60}
.page-shell p{font-family:var(--serif);font-size:19px;line-height:1.65;margin-bottom:18px;font-weight:300;font-variation-settings:"opsz" 36,"SOFT" 70}
.page-shell a{color:var(--clay);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.page-shell ul,.page-shell ol{font-family:var(--serif);font-size:19px;line-height:1.65;margin:0 0 18px 24px;font-weight:300;font-variation-settings:"opsz" 36,"SOFT" 70}
.page-shell img{margin:24px 0;border-radius:2px}
.entry-meta{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ash);margin-bottom:24px}
.archive-list{list-style:none;padding:0;margin:0;display:grid;gap:60px}
.archive-list article{padding-bottom:48px;border-bottom:1px solid rgba(26,22,18,.12)}
.archive-list article:last-child{border-bottom:none}
.archive-list h2{margin-top:0}

/* WOOCOMMERCE TWEAKS */
.woocommerce-notices-wrapper{max-width:1600px;margin:0 auto;padding:24px 32px 0}
.woocommerce-message,.woocommerce-info,.woocommerce-error{background:var(--paper);border:1px solid rgba(26,22,18,.14);border-left:3px solid var(--clay);padding:18px 22px;font-family:var(--sans);font-size:15.5px;color:var(--ink-soft);border-radius:2px;list-style:none}
.woocommerce-message a,.woocommerce-info a,.woocommerce-error a{color:var(--clay);text-decoration:underline}
.woocommerce-breadcrumb{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash);max-width:1600px;margin:24px auto 0;padding:0 32px}
.woocommerce-breadcrumb a{color:var(--ink-soft);text-decoration:none}
.woocommerce-breadcrumb a:hover{color:var(--clay)}

/* SINGLE PRODUCT */
.single-product div.product{max-width:1600px;margin:0 auto;padding:80px 32px;display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:start}
.single-product div.product .woocommerce-product-gallery{width:100%!important}
.single-product div.product .woocommerce-product-gallery img{width:100%;height:auto}
.single-product div.product .product_title{font-family:var(--serif);font-weight:300;font-size:clamp(36px,4vw,56px);line-height:1;letter-spacing:-.022em;font-variation-settings:"opsz" 144,"SOFT" 60;margin-bottom:14px}
.single-product div.product .price{font-family:var(--serif);font-size:28px;margin-bottom:30px;display:block}
.single-product div.product .woocommerce-product-details__short-description{font-family:var(--serif);font-size:18.5px;line-height:1.6;color:var(--ink-soft);margin-bottom:36px;font-variation-settings:"opsz" 36,"SOFT" 70}
.single-product div.product form.cart{display:flex;gap:12px;align-items:center;margin-bottom:40px;flex-wrap:wrap}
.single-product div.product .quantity input{font-family:var(--mono);font-size:14px;padding:14px 12px;border:1px solid rgba(26,22,18,.18);border-radius:999px;width:80px;text-align:center;background:transparent;color:var(--ink)}
.single-product div.product button.single_add_to_cart_button,.single-product div.product .single_add_to_cart_button{font-family:var(--mono)!important;font-size:11px!important;letter-spacing:.14em!important;text-transform:uppercase!important;background:var(--ink)!important;color:var(--bone)!important;border:1px solid var(--ink)!important;padding:15px 28px!important;border-radius:999px!important;cursor:pointer;transition:background .2s,border-color .2s;font-weight:500!important;line-height:1!important}
.single-product div.product button.single_add_to_cart_button:hover{background:var(--whatsapp)!important;border-color:var(--whatsapp)!important;color:#fff!important}
.single-product div.product .variations{margin-bottom:20px}
.single-product div.product .variations select{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:12px 36px 12px 16px;border:1px solid rgba(26,22,18,.18);border-radius:999px;background:transparent;color:var(--ink);appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%231a1612' d='M6 8 0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:9px}
.single-product div.product .product_meta{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash);padding-top:24px;border-top:1px solid rgba(26,22,18,.14);display:flex;flex-direction:column;gap:8px}
.single-product div.product .product_meta a{color:var(--ink-soft);text-decoration:none}
.single-product div.product .product_meta a:hover{color:var(--clay)}
.woocommerce-tabs{max-width:1600px;margin:80px auto 120px;padding:0 32px;border-top:1px solid rgba(26,22,18,.12)}
.woocommerce-tabs ul.tabs{list-style:none;padding:32px 0;margin:0;display:flex;gap:32px;border-bottom:1px solid rgba(26,22,18,.12)}
.woocommerce-tabs ul.tabs li{padding:0!important;background:transparent!important;border:none!important}
.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce-tabs ul.tabs li a{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ash);text-decoration:none;padding:12px 0;display:inline-block;border-bottom:1px solid transparent}
.woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom-color:var(--clay)}
.woocommerce-tabs .panel{padding:48px 0;font-family:var(--serif);font-size:18.5px;line-height:1.65;font-variation-settings:"opsz" 36,"SOFT" 70}

/* CART / CHECKOUT */
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce{max-width:1300px;margin:0 auto;padding:80px 32px}
.woocommerce-cart h1,.woocommerce-checkout h1{font-family:var(--serif);font-weight:300;font-size:clamp(40px,5vw,64px);line-height:1;letter-spacing:-.025em;margin-bottom:40px;font-variation-settings:"opsz" 144,"SOFT" 50}
.woocommerce table.shop_table{font-family:var(--sans);font-size:14px;border:1px solid rgba(26,22,18,.12);border-radius:2px;border-collapse:separate;border-spacing:0}
.woocommerce table.shop_table th{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash);background:var(--paper);padding:18px}
.woocommerce table.shop_table td{padding:20px 18px;border-top:1px solid rgba(26,22,18,.08)}
.woocommerce-cart-form button.button,.checkout-button{font-family:var(--mono)!important;font-size:11px!important;letter-spacing:.14em!important;text-transform:uppercase!important;background:var(--ink)!important;color:var(--bone)!important;border:1px solid var(--ink)!important;padding:14px 26px!important;border-radius:999px!important}

/* CTA · SHIPPING & CARE (homepage) */
.cta-care{background:var(--bone-deep);padding:130px 0;border-top:1px solid rgba(26,22,18,.07);position:relative;overflow:hidden}
.cta-care::before{content:'';position:absolute;top:-200px;right:-200px;width:600px;height:600px;border:1px solid rgba(184,83,58,.1);border-radius:50%;pointer-events:none}
.cta-care-inner{max-width:1600px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:start;position:relative}
.cta-intro .eyebrow{color:var(--clay);margin-bottom:28px}
.cta-intro h2{font-family:var(--serif);font-weight:300;font-size:clamp(40px,5.2vw,68px);line-height:.96;letter-spacing:-.025em;margin-bottom:28px;font-variation-settings:"opsz" 144,"SOFT" 50}
.cta-intro h2 em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.cta-intro p{font-family:var(--serif);font-weight:300;font-size:18px;line-height:1.55;color:var(--ink-soft);margin-bottom:32px;max-width:460px;font-variation-settings:"opsz" 36,"SOFT" 70}
.cta-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.cta-link{display:inline-flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);text-decoration:none;padding:14px 22px;border:1px solid var(--ink);border-radius:999px;transition:background .25s,color .25s}
.cta-link:hover{background:var(--ink);color:var(--bone)}
.cta-link.primary{background:var(--ink);color:var(--bone)}
.cta-link.primary:hover{background:var(--clay);border-color:var(--clay)}
.cta-link svg{width:13px;height:13px;transition:transform .3s}
.cta-link:hover svg{transform:translateX(3px)}
.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(26,22,18,.14);border:1px solid rgba(26,22,18,.14)}
.cta-card{background:var(--bone);padding:36px 30px;display:flex;flex-direction:column;gap:14px;transition:background .3s}
.cta-card:hover{background:var(--paper)}
.cta-card-num{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--clay);font-weight:500;display:flex;align-items:center;gap:10px}
.cta-card-num::before{content:'';width:18px;height:1px;background:var(--clay)}
.cta-card h3{font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.015em;line-height:1.15;font-variation-settings:"opsz" 36,"SOFT" 70}
.cta-card h3 em{font-style:italic;font-variation-settings:"opsz" 36,"SOFT" 100}
.cta-card p{font-family:var(--sans);font-size:13.5px;line-height:1.6;color:var(--ink-soft)}

/* PAGE HERO (long-form pages) */
.page-hero{padding:90px 32px 72px;max-width:1600px;margin:0 auto;border-bottom:1px solid rgba(26,22,18,.1)}
.page-hero-inner{display:grid;grid-template-columns:1fr 1.5fr;gap:80px;align-items:end;max-width:1400px;margin:0 auto}
.page-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--clay);display:inline-flex;align-items:center;gap:14px;margin-bottom:24px}
.page-eyebrow::before{content:'';width:36px;height:1px;background:var(--clay)}
.page-hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(48px,7vw,108px);line-height:.92;letter-spacing:-.035em;font-variation-settings:"opsz" 144,"SOFT" 40}
.page-hero h1 em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.page-hero-meta{font-family:var(--serif);font-weight:300;font-size:20px;line-height:1.55;color:var(--ink-soft);max-width:520px;font-variation-settings:"opsz" 36,"SOFT" 70;padding-bottom:8px}
.page-hero-meta a{color:var(--clay);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

/* LONG-FORM PROSE w/ TOC */
.prose-shell{max-width:1600px;margin:0 auto;padding:90px 32px 110px;display:grid;grid-template-columns:1fr 2.6fr;gap:80px;align-items:start}
.prose-toc{position:sticky;top:120px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash)}
.prose-toc strong{display:block;color:var(--ink);margin-bottom:18px;font-weight:500}
.prose-toc ul{list-style:none;display:flex;flex-direction:column;gap:10px;padding:0;margin:0}
.prose-toc a{color:var(--ash);text-decoration:none;transition:color .25s,padding .25s}
.prose-toc a:hover,.prose-toc a.current{color:var(--clay);padding-left:6px}
.prose{max-width:780px}
.prose section{margin-bottom:80px;scroll-margin-top:120px}
.prose section:last-child{margin-bottom:0}
.prose h2{font-family:var(--serif);font-weight:300;font-size:clamp(32px,4vw,52px);line-height:1;letter-spacing:-.025em;margin-bottom:32px;font-variation-settings:"opsz" 144,"SOFT" 50}
.prose h2 em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.prose h2 .num{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.22em;color:var(--clay);text-transform:uppercase;margin-bottom:14px;font-weight:500}
.prose p{font-family:var(--serif);font-weight:300;font-size:19px;line-height:1.62;color:var(--ink-soft);margin-bottom:22px;font-variation-settings:"opsz" 36,"SOFT" 70}
.prose p:last-child{margin-bottom:0}
.prose p strong{font-weight:500;color:var(--ink)}
.prose p em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 36,"SOFT" 100}
.prose a{color:var(--clay);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .2s}
.prose a:hover{color:var(--clay-deep)}
.prose ul{margin:24px 0;padding-left:0;list-style:none}
.prose ul li{font-family:var(--serif);font-weight:300;font-size:19px;line-height:1.55;color:var(--ink-soft);padding:14px 0 14px 28px;border-bottom:1px solid rgba(26,22,18,.1);position:relative;font-variation-settings:"opsz" 36,"SOFT" 70}
.prose ul li::before{content:'';position:absolute;left:0;top:24px;width:14px;height:1px;background:var(--clay)}
.prose ul li:first-child{border-top:1px solid rgba(26,22,18,.1)}
.callout{background:var(--paper);padding:36px 40px;border-left:3px solid var(--clay);margin:40px 0;font-family:var(--serif);font-style:italic;font-weight:300;font-size:21px;line-height:1.5;color:var(--ink);font-variation-settings:"opsz" 36,"SOFT" 100}

/* CONTACT GRID */
.contact-grid{max-width:1600px;margin:0 auto;padding:90px 32px 110px;display:grid;grid-template-columns:1fr 1.4fr;gap:80px;align-items:start}
.contact-info{position:sticky;top:120px}
.contact-info h2{font-family:var(--serif);font-weight:300;font-size:clamp(28px,3.2vw,40px);line-height:1.05;letter-spacing:-.022em;margin-bottom:30px;font-variation-settings:"opsz" 144,"SOFT" 60}
.contact-info h2 em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.contact-info p{font-family:var(--serif);font-weight:300;font-size:18px;line-height:1.55;color:var(--ink-soft);margin-bottom:22px;font-variation-settings:"opsz" 36,"SOFT" 70}
.contact-list{list-style:none;border-top:1px solid rgba(26,22,18,.1);margin-top:36px;padding:0}
.contact-list li{padding:18px 0;border-bottom:1px solid rgba(26,22,18,.1);display:flex;align-items:flex-start;gap:18px;font-family:var(--sans);font-size:16px;color:var(--ink)}
.contact-list .label{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ash);min-width:96px;padding-top:2px;font-weight:500}
.contact-list .value{flex:1;font-family:var(--serif);font-size:18px;color:var(--ink);font-variation-settings:"opsz" 36,"SOFT" 80}
.contact-list .value a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--clay);transition:color .2s}
.contact-list .value a:hover{color:var(--clay)}
.contact-form{background:var(--paper);padding:48px 44px;border:1px solid rgba(26,22,18,.08)}
.form-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--clay);margin-bottom:18px;display:inline-flex;align-items:center;gap:14px}
.form-eyebrow::before{content:'';width:30px;height:1px;background:var(--clay)}
.contact-form h3{font-family:var(--serif);font-weight:300;font-size:32px;line-height:1.05;letter-spacing:-.018em;margin-bottom:34px;font-variation-settings:"opsz" 144,"SOFT" 60}
.contact-form h3 em{font-style:italic;color:var(--clay);font-variation-settings:"opsz" 144,"SOFT" 100}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:22px}
.field label{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ash);font-weight:500}
.field input,.field textarea,.field select{font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--bone);border:1px solid rgba(26,22,18,.14);padding:14px 16px;outline:none;transition:border-color .2s,background .2s;font-weight:400;border-radius:0}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--clay);background:white}
.field textarea{resize:vertical;min-height:130px;line-height:1.55}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-submit{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;background:var(--ink);color:var(--bone);border:none;padding:18px 32px;border-radius:999px;cursor:pointer;transition:background .25s,transform .25s;font-weight:500;display:inline-flex;align-items:center;gap:12px;margin-top:10px}
.form-submit:hover{background:var(--clay);transform:translateY(-1px)}
.form-submit svg{width:14px;height:14px;transition:transform .3s}
.form-submit:hover svg{transform:translateX(3px)}
.form-note{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash);margin-top:18px;line-height:1.6}
.form-note a{color:var(--clay)}

/* MOBILE */
@media (max-width:980px){
  /* Mobile menu — hidden by default, slides in via .is-open class */
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bone);border-bottom:1px solid rgba(26,22,18,.07);box-shadow:0 12px 32px rgba(26,22,18,.08);padding:32px 24px;z-index:49}
  .main-nav.is-open{display:block}
  .main-nav ul{flex-direction:column;align-items:center;justify-content:center;gap:0;display:flex;width:100%}
  .main-nav li{width:100%;text-align:center}
  .main-nav a{display:inline-block;padding:16px 0;font-size:13px;letter-spacing:.22em}
  .main-nav a::after{display:none}
  /* Force dark text inside mobile menu panel even on homepage where header
     is transparent and would otherwise make nav links bone-cream-on-bone. */
  .main-nav.is-open a,
  .home .site-header .main-nav.is-open a,
  .front-page .site-header .main-nav.is-open a,
  .home .site-header:not(.is-scrolled) .main-nav.is-open a,
  .front-page .site-header:not(.is-scrolled) .main-nav.is-open a{color:var(--ink-soft)}
  .main-nav.is-open a:hover,
  .home .site-header:not(.is-scrolled) .main-nav.is-open a:hover,
  .front-page .site-header:not(.is-scrolled) .main-nav.is-open a:hover{color:var(--clay)}
  body.nav-open{overflow:hidden}
  .menu-toggle{display:inline-flex}
  .header-inner{grid-template-columns:1fr auto}
  .hero-content{grid-template-columns:1fr;gap:36px;padding:60px 24px 60px}
  .hero-corner{display:none}
  .collections-grid{grid-template-columns:1fr;gap:36px}
  .col-1,.col-2,.col-3,.col-4,.col-5{grid-column:span 1;margin-top:0}
  .products{grid-template-columns:1fr;gap:48px}
  .about-grid{grid-template-columns:1fr;gap:48px}
  .about::before{width:300px;height:300px;top:-150px;right:-150px}
  .about::after{display:none}
  .info-grid{grid-template-columns:1fr 1fr}
  .cta-care-inner{grid-template-columns:1fr;gap:48px}
  .cta-grid{grid-template-columns:1fr 1fr}
  .page-hero{padding:60px 24px 50px}
  .page-hero-inner{grid-template-columns:1fr;gap:32px;align-items:start}
  .prose-shell{grid-template-columns:1fr;padding:60px 24px 80px;gap:48px}
  .prose-toc{position:static}
  .contact-grid{grid-template-columns:1fr;padding:60px 24px 80px;gap:48px}
  .contact-info{position:static}
  .footer-grid{grid-template-columns:1fr 1fr;gap:40px}
  .section-head{flex-direction:column;align-items:flex-start;padding-bottom:40px}
  .section-head .meta{text-align:left;max-width:none}
  .manifesto,.shop,.about,.print-info,.cta-care,.newsletter{padding-top:90px;padding-bottom:90px}
  .single-product div.product{grid-template-columns:1fr;gap:48px;padding:48px 24px}
}
@media (max-width:600px){
  .header-inner{padding:14px 20px;gap:14px}
  .site-logo{font-size:24px}
  .cart-btn span.lbl{display:none}
  .cart-btn{padding:9px 14px}
  .hero{min-height:80vh}
  .hero h1{white-space:normal;line-height:.95}
  .info-grid{grid-template-columns:1fr}
  .cta-grid{grid-template-columns:1fr}
  .field-row{grid-template-columns:1fr}
  .contact-form{padding:36px 24px}
  .footer-grid{grid-template-columns:1fr;gap:36px}
  .manifesto,.shop,.about,.print-info,.cta-care,.newsletter,.site-footer{padding-left:20px;padding-right:20px}
  .filter-bar,.products,.shop-footer,.collections-grid,.section-head,.cta-care-inner{padding-left:20px;padding-right:20px}
  .newsletter-form{flex-direction:column;border-radius:18px;gap:6px}
  .newsletter-form button{padding:14px}
  .page-shell{padding:80px 20px}
}

/* =========================================================================
   PREMIUM SINGLE PRODUCT (v2.2.0) — replaces the configurator
   ========================================================================= */
.st-product{max-width:1640px;margin:0 auto;padding:56px 40px 100px}
.st-product-inner{display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:72px;align-items:start}
@media(max-width:1200px){.st-product-inner{grid-template-columns:minmax(0,1fr) 400px;gap:48px}}
@media(max-width:980px){.st-product{padding:32px 20px 70px}.st-product-inner{grid-template-columns:1fr;gap:36px}}

/* Gallery */
.st-product-gallery{position:sticky;top:28px}
@media(max-width:980px){.st-product-gallery{position:static}}
.st-gallery-main{margin:0;line-height:0;background:var(--bone-deep,#ebe3d5)}
.st-gallery-main img{display:block;width:100%;height:auto;max-width:100%;box-shadow:0 10px 40px rgba(26,22,18,.16)}
.st-gallery-thumbs{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}
.st-thumb{padding:0;border:1px solid rgba(26,22,18,.14);background:none;cursor:pointer;width:72px;height:72px;overflow:hidden;border-radius:2px;transition:border-color .2s,transform .2s}
.st-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.st-thumb.active,.st-thumb:hover{border-color:var(--clay,#b8533a)}

/* Details (right) */
.st-product-details{display:flex;flex-direction:column}
.st-product-eyebrow{font-family:var(--mono,monospace);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--clay,#b8533a);margin-bottom:16px}
.st-product-title{font-family:var(--serif,Georgia);font-weight:300;font-size:clamp(34px,4vw,56px);line-height:1.02;letter-spacing:-.02em;margin:0 0 18px}
.st-product-price{font-family:var(--serif,Georgia);font-size:24px;color:var(--ink,#1a1612);margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid rgba(26,22,18,.12)}
.st-product-price .woocommerce-Price-amount{font-weight:400}
.st-product-shortdesc{font-family:var(--serif,Georgia);font-size:18px;line-height:1.6;color:var(--ink-soft,#2a231e);margin-bottom:28px}

/* Size selector */
.st-size-block{margin-bottom:26px}
.st-size-label{font-family:var(--mono,monospace);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink,#1a1612);margin-bottom:12px}
.st-size-opts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.st-size-opt{font-family:var(--mono,monospace);font-size:12.5px;letter-spacing:.04em;padding:11px 18px;border:1px solid rgba(26,22,18,.2);background:transparent;color:var(--ink,#1a1612);border-radius:999px;cursor:pointer;transition:all .2s}
.st-size-opt.active,.st-size-opt:hover{background:var(--ink,#1a1612);color:var(--bone,#f4efe6);border-color:var(--ink,#1a1612)}
.st-size-note{font-family:var(--mono,monospace);font-size:10.5px;color:var(--ash,#6b645a);letter-spacing:.03em;opacity:.85}

/* Actions */
.st-product-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:26px 0}
.st-cart-form{margin:0}
.st-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--mono,monospace);font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:16px 26px;border-radius:999px;cursor:pointer;border:1px solid transparent;text-decoration:none;transition:all .25s;line-height:1}
.st-btn svg{width:18px;height:18px}
.st-btn-primary{background:var(--whatsapp,#25d366);color:#fff;border-color:var(--whatsapp,#25d366)}
.st-btn-primary:hover{filter:brightness(.94)}
.st-btn-ghost{background:transparent;color:var(--ink,#1a1612);border-color:var(--ink,#1a1612)}
.st-btn-ghost:hover{background:var(--ink,#1a1612);color:var(--bone,#f4efe6)}
.st-btn-ghost.is-added{background:var(--clay,#b8533a);border-color:var(--clay,#b8533a);color:#fff}
.st-btn-ghost.is-loading{opacity:.6;pointer-events:none}
.st-btn-icon{width:52px;height:52px;padding:0;border:1px solid rgba(26,22,18,.2);background:transparent;border-radius:999px;position:relative}
.st-btn-icon svg{width:20px;height:20px}
.st-wishlist-toggle .st-heart-full{display:none;color:var(--clay,#b8533a)}
.st-wishlist-toggle.is-active{border-color:var(--clay,#b8533a)}
.st-wishlist-toggle.is-active .st-heart-empty{display:none}
.st-wishlist-toggle.is-active .st-heart-full{display:inline-flex}

/* Product meta */
.st-product-meta{margin-top:10px;padding-top:24px;border-top:1px solid rgba(26,22,18,.12);display:grid;grid-template-columns:auto 1fr;gap:8px 20px;font-family:var(--sans,sans-serif);font-size:14.5px}
.st-product-meta dt{font-family:var(--mono,monospace);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash,#6b645a);padding-top:2px}
.st-product-meta dd{margin:0;color:var(--ink-soft,#2a231e);line-height:1.5}

/* Long description */
.st-product-description{max-width:1640px;margin:0 auto;padding:0 40px 40px}
@media(max-width:980px){.st-product-description{padding:0 20px 30px}}
.st-section-label{font-family:var(--mono,monospace);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--clay,#b8533a);margin-bottom:20px}
.st-description-body{font-family:var(--serif,Georgia);font-size:18px;line-height:1.7;color:var(--ink-soft,#2a231e);max-width:760px}
.st-description-body p{margin:0 0 1em}

/* =========================================================================
   HEADER CART + WISHLIST ICONS
   ========================================================================= */
.st-icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(26,22,18,.16);border-radius:999px;color:var(--ink,#1a1612);background:transparent;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.st-icon-btn:hover{background:var(--ink,#1a1612);color:var(--bone,#f4efe6);border-color:var(--ink,#1a1612)}
.st-icon-btn svg{width:19px;height:19px}
.st-icon-count{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;background:var(--clay,#b8533a);color:#fff;border-radius:999px;font-family:var(--mono,monospace);font-size:10px;display:none;align-items:center;justify-content:center;line-height:1}
.st-icon-count.has-items{display:inline-flex}
.header-actions{display:flex;align-items:center;gap:10px}

/* =========================================================================
   RELATED PRODUCTS — full-width grid, edge to edge, no horizontal scroll
   ========================================================================= */
.related.products{width:100%;max-width:100%;margin:24px 0 0;padding:48px 40px 0;border-top:1px solid rgba(26,22,18,.1)}
@media(max-width:980px){.related.products{padding:36px 20px 0}}
.related.products>h2{font-family:var(--serif,Georgia);font-weight:300;font-size:clamp(26px,3vw,40px);letter-spacing:-.02em;margin-bottom:28px}
.related.products ul.products,
.related.products .products{display:grid !important;grid-template-columns:repeat(6,1fr);gap:28px;list-style:none;margin:0;padding:0;width:100%}
.related.products ul.products li.product,
.related.products .products li.product{margin:0 !important;width:auto !important;float:none !important}
@media(max-width:1400px){.related.products ul.products,.related.products .products{grid-template-columns:repeat(5,1fr)}}
@media(max-width:1100px){.related.products ul.products,.related.products .products{grid-template-columns:repeat(4,1fr)}}
@media(max-width:820px){.related.products ul.products,.related.products .products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.related.products ul.products,.related.products .products{grid-template-columns:repeat(2,1fr);gap:18px}}

/* =========================================================================
   HERO — video + CTA (v2.3.0)
   ========================================================================= */
.hero-video{object-fit:cover;width:100%;height:100%}
.hero-video-fallback{display:none}
@media(max-width:780px){
  .hero-video{display:none}
  .hero-video-fallback{display:block;object-fit:cover;width:100%;height:100%}
}
.hero-cta{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;margin-top:8px;font-family:var(--mono,monospace);font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding:14px 26px;border-radius:999px;background:var(--bone,#f4efe6);color:var(--ink,#1a1612);text-decoration:none;border:1px solid var(--bone,#f4efe6);transition:background .25s,color .25s,transform .25s}
.hero-cta:hover{background:transparent;color:var(--bone,#f4efe6);transform:translateY(-1px)}

/* =========================================================================
   COLLECTORS' WALLS (v2.3.0)
   ========================================================================= */
.collectors-walls{padding:110px 0;background:var(--paper,#faf6ef);overflow:hidden}
.cw-head{max-width:1640px;margin:0 auto 56px;padding:0 40px;text-align:center}
@media(max-width:980px){.cw-head{padding:0 20px;margin-bottom:40px}}
.cw-head .eyebrow{justify-content:center;color:var(--clay,#b8533a);margin-bottom:20px;display:flex;align-items:center;gap:14px;font-family:var(--mono,monospace);font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.cw-head .eyebrow::before,.cw-head .eyebrow::after{content:'';width:30px;height:1px;background:var(--clay,#b8533a)}
.cw-head h2{font-family:var(--serif,Georgia);font-weight:300;font-size:clamp(36px,5vw,68px);line-height:.98;letter-spacing:-.025em;margin:0 0 18px}
.cw-head h2 em{font-style:italic;color:var(--clay,#b8533a)}
.cw-intro{font-family:var(--serif,Georgia);font-size:18px;line-height:1.6;color:var(--ash,#6b645a);max-width:600px;margin:0 auto}

/* Card (shared) */
.cw-card{margin:0;background:var(--bone,#f4efe6);box-shadow:0 8px 30px rgba(26,22,18,.1);overflow:hidden}
.cw-img-wrap{aspect-ratio:4/3;overflow:hidden;background:var(--bone-deep,#ebe3d5)}
.cw-img-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.16,1,.3,1)}
.cw-card:hover .cw-img-wrap img{transform:scale(1.05)}
.cw-caption{padding:18px 20px 22px;display:flex;flex-direction:column;gap:6px}
.cw-title{font-family:var(--serif,Georgia);font-size:19px;font-style:italic;color:var(--ink,#1a1612)}
.cw-meta{font-family:var(--mono,monospace);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ash,#6b645a)}
.cw-quote{font-family:var(--serif,Georgia);font-size:14.5px;line-height:1.5;color:var(--ink-soft,#2a231e);margin-top:6px}

/* Slider layout */
.collectors-walls.layout-slider .cw-slider{width:100%;cursor:grab;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.collectors-walls.layout-slider .cw-slider.is-dragging{cursor:grabbing}
.collectors-walls.layout-slider .cw-track{display:flex;gap:28px;width:max-content;will-change:transform}
.collectors-walls.layout-slider .cw-card{flex:0 0 360px;width:360px}
@media(max-width:600px){.collectors-walls.layout-slider .cw-card{flex-basis:280px;width:280px}}

/* Grid / uniform layout */
.collectors-walls.layout-grid .cw-grid,
.collectors-walls.layout-masonry .cw-grid,
.collectors-walls.layout-editorial .cw-grid,
.collectors-walls.layout-feature .cw-grid{max-width:1640px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
@media(max-width:1100px){.collectors-walls .cw-grid{grid-template-columns:repeat(3,1fr) !important}}
@media(max-width:760px){.collectors-walls .cw-grid{grid-template-columns:repeat(2,1fr) !important;padding:0 20px !important;gap:18px}}
@media(max-width:480px){.collectors-walls .cw-grid{grid-template-columns:1fr !important}}

/* Masonry uses CSS columns for varied heights */
.collectors-walls.layout-masonry .cw-grid{display:block;columns:4;column-gap:28px}
.collectors-walls.layout-masonry .cw-card{break-inside:avoid;margin-bottom:28px}
.collectors-walls.layout-masonry .cw-img-wrap{aspect-ratio:auto}
@media(max-width:1100px){.collectors-walls.layout-masonry .cw-grid{columns:3}}
@media(max-width:760px){.collectors-walls.layout-masonry .cw-grid{columns:2}}
@media(max-width:480px){.collectors-walls.layout-masonry .cw-grid{columns:1}}

/* Feature layout — first card spans larger */
.collectors-walls.layout-feature .cw-card.is-featured,
.collectors-walls.layout-feature .cw-card:first-child{grid-column:span 2;grid-row:span 2}
.collectors-walls.layout-feature .cw-card.is-featured .cw-img-wrap,
.collectors-walls.layout-feature .cw-card:first-child .cw-img-wrap{aspect-ratio:1/1}

/* Editorial — alternating emphasis */
.collectors-walls.layout-editorial .cw-card:nth-child(6n+1){grid-column:span 2}

/* =========================================================================
   THREE-COLUMN FOOTER (v2.3.0)
   ========================================================================= */
.footer-grid-3{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:64px;padding-bottom:56px;border-bottom:1px solid rgba(244,239,230,.14)}
@media(max-width:900px){.footer-grid-3{grid-template-columns:1fr 1fr;gap:40px}}
@media(max-width:560px){.footer-grid-3{grid-template-columns:1fr;gap:36px}}
.footer-about .footer-bio{font-family:var(--serif,Georgia);font-size:16px;line-height:1.6;color:var(--bone-deep,#ebe3d5);max-width:380px;margin:18px 0 0}
.footer-about .footer-credit{margin-top:20px;font-family:var(--mono,monospace);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mist,#c9c0b0)}
.footer-col h4{font-family:var(--mono,monospace);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mist,#c9c0b0);margin:0 0 22px}
.footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:13px}
.footer-links li{margin:0}
.footer-links a{display:inline-flex;align-items:center;gap:12px;font-family:var(--serif,Georgia);font-size:17px;color:var(--bone,#f4efe6);text-decoration:none;transition:color .2s}
.footer-links a:hover{color:var(--clay,#b8533a)}
.footer-links a svg{width:17px;height:17px;flex:0 0 auto;opacity:.8}
.footer-links a span{line-height:1}
.footer-spotify-embed{margin-top:20px;max-width:340px}
.footer-newsletter{margin-top:26px;padding-top:22px;border-top:1px solid rgba(244,239,230,.12)}
.footer-newsletter-label{font-family:var(--serif,Georgia);font-style:italic;font-size:15px;color:var(--bone-deep,#ebe3d5);margin-bottom:8px}
.footer-newsletter-link{font-family:var(--mono,monospace);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--clay,#b8533a);text-decoration:none}
.footer-newsletter-link:hover{color:var(--bone,#f4efe6)}

/* =========================================================================
   VARIABLE PRODUCT — native WooCommerce variation form, themed (v2.3.1)
   ========================================================================= */
.st-variation-form{margin-bottom:24px}
.st-variation-form table.variations{width:100%;margin:0 0 18px;border-collapse:collapse}
.st-variation-form table.variations th,
.st-variation-form table.variations td{display:block;width:100%;text-align:left;padding:0}
.st-variation-form table.variations th.label{font-family:var(--mono,monospace);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink,#1a1612);margin-bottom:10px;font-weight:400}
.st-variation-form table.variations td.value{margin-bottom:16px}
.st-variation-form select{width:100%;font-family:var(--sans,sans-serif);font-size:15px;padding:13px 16px;border:1px solid rgba(26,22,18,.2);border-radius:8px;background:var(--bone,#f4efe6);color:var(--ink,#1a1612);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%231a1612' d='M6 8 0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:11px}
.st-variation-form .reset_variations{display:inline-block;margin-top:6px;font-family:var(--mono,monospace);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ash,#6b645a);text-decoration:none}
.st-variation-form .reset_variations:hover{color:var(--clay,#b8533a)}
.st-variation-form .woocommerce-variation-price{font-family:var(--serif,Georgia);font-size:22px;color:var(--ink,#1a1612);margin:8px 0 18px}
.st-variation-form .woocommerce-variation-price .price{font-weight:400}
.st-variation-form .woocommerce-variation-availability{font-family:var(--mono,monospace);font-size:12px;color:var(--ash,#6b645a);margin-bottom:14px}
.st-variation-form .quantity{display:inline-flex;margin-right:12px;margin-bottom:12px}
.st-variation-form .quantity input.qty{width:64px;padding:13px 10px;border:1px solid rgba(26,22,18,.2);border-radius:8px;font-family:var(--mono,monospace);text-align:center;background:var(--bone,#f4efe6)}
.st-variation-form .single_add_to_cart_button{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--mono,monospace);font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:16px 30px;border-radius:999px;cursor:pointer;border:1px solid var(--ink,#1a1612);background:var(--ink,#1a1612);color:var(--bone,#f4efe6);transition:all .25s}
.st-variation-form .single_add_to_cart_button:hover{background:var(--clay,#b8533a);border-color:var(--clay,#b8533a)}
.st-variation-form .single_add_to_cart_button.disabled,
.st-variation-form .single_add_to_cart_button[disabled]{opacity:.45;cursor:not-allowed}
.st-variation-form .woocommerce-variation-add-to-cart{display:flex;align-items:center;flex-wrap:wrap;gap:8px}

/* =========================================================================
   SHOP CARDS — prices and titles on one line (v2.7.0)
   ========================================================================= */
.product h3,.product .woocommerce-loop-product__title{font-size:21px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.product-bottom{gap:12px;flex-wrap:nowrap}
.product-bottom .price{font-size:15px;line-height:1.3;white-space:nowrap;flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
.product-bottom .price .woocommerce-Price-amount,.product-bottom .price bdi{display:inline;white-space:nowrap}
.product-bottom .price .from{font-size:8.5px;margin-right:4px}
.product-bottom .add-cart,.product-bottom .button{flex:0 0 auto;padding:9px 14px;font-size:10px}
@media(max-width:600px){.product h3,.product .woocommerce-loop-product__title{font-size:19px}}

/* =========================================================================
   v2.8.0 — polish: calmer chrome, no decorative filler
   ========================================================================= */
body::before{content:none}
.eyebrow::before{content:none}
.eyebrow{gap:0;letter-spacing:.14em}
.about::before,.about::after,.newsletter::before{content:none}
.notice-bar{overflow:hidden}
.notice-track{animation:none;display:flex;justify-content:center;flex-wrap:wrap;gap:6px 28px;padding:0 20px;white-space:normal;text-align:center}
.notice-track span{margin:0}
.notice-track span::after{content:none}
@media(max-width:700px){.notice-track span:nth-child(n+2){display:none}}
.info-num,.cta-card-num{letter-spacing:.12em}

/* Long-form pages: one centred reading column (sidebar contents box removed) */
.prose-shell{grid-template-columns:minmax(0,780px);justify-content:center}

/* Header link to the print sale */
.st-sale-link{display:inline-flex;align-items:center;height:38px;padding:0 16px;border-radius:999px;background:var(--clay);color:#fff;font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:.01em;text-decoration:none;white-space:nowrap;transition:background .2s}
.st-sale-link:hover,.st-sale-link.is-current{background:var(--clay-deep)}
@media(max-width:600px){.st-sale-link{height:34px;padding:0 12px;font-size:12px}}

/* =========================================================================
   v2.8.0 — shop frame preview, years, product page fit, page separation
   ========================================================================= */

/* Shop cards: media wrapper holds the image link and the frame button */
.product-media{position:relative;margin-bottom:20px}
.product-media .product-img-wrap{margin-bottom:0;display:block;text-decoration:none;color:inherit}
.st-card-frame{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 12px;border:0;border-radius:999px;background:rgba(255,255,255,.94);color:var(--ink);font-family:var(--sans);font-size:12px;font-weight:500;cursor:pointer;box-shadow:0 2px 10px rgba(26,22,18,.12);opacity:0;transform:translateY(4px);transition:opacity .25s,transform .25s,background .2s}
.st-card-frame svg{width:14px;height:14px}
.product-media:hover .st-card-frame,.st-card-frame:focus-visible{opacity:1;transform:none}
.st-card-frame:hover{background:#fff}
@media(hover:none){.st-card-frame{opacity:1;transform:none}}

/* Year beside the title */
.product h3,.product .woocommerce-loop-product__title{display:flex;align-items:baseline;gap:.45em}
.product h3 a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit;text-decoration:none}
.product-year{flex:none;font-size:.72em;color:var(--ash);font-family:var(--sans);font-weight:400;letter-spacing:0}
.product-meta{justify-content:flex-start}
.st-product-year{font-size:.5em;color:var(--ash);font-family:var(--sans);font-weight:400;letter-spacing:0;vertical-align:.35em;white-space:nowrap}

/* Product page: image, thumbnails and frame button visible together on a laptop screen */
.st-product{padding-top:36px}
.st-gallery-main{background:none;display:flex;justify-content:center}
.st-gallery-main img{width:auto;max-width:100%;max-height:max(320px,calc(100vh - 330px));object-fit:contain}
.st-gallery-thumbs{justify-content:center;margin-top:12px;gap:10px}
.st-thumb{width:60px;height:60px}
.st-frame-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin:14px auto 0;height:40px;padding:0 18px;border:1px solid rgba(26,22,18,.25);border-radius:999px;background:transparent;color:var(--ink);font-family:var(--sans);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .2s,background .2s}
.st-frame-btn svg{width:15px;height:15px}
.st-frame-btn:hover{border-color:var(--ink);background:#fff}
@media(max-width:980px){.st-gallery-main img{max-height:70vh}}

/* Breathing room before the footer, and a softer edge into it */
body.single-product #main,body.woocommerce-page #main,body.wishlist-page #main{padding-bottom:clamp(72px,9vw,128px)}
.related.products{padding-bottom:0}
.site-footer{background:linear-gradient(180deg,#2a2420 0,var(--ink) 220px)}

/* Print sale: brilliant white page that stands apart from the rest of the site */
body.print-sale{background:#fff}
body.print-sale .site-header{background:rgba(255,255,255,.92)}

/* Saved prints */
.wishlist-shell{max-width:1600px;margin:0 auto;padding:56px 32px 0}
.wishlist-head{margin-bottom:40px}
.wishlist-head h1{font-family:var(--serif);font-weight:300;font-size:clamp(36px,4.5vw,56px);letter-spacing:-.02em;line-height:1;margin:0 0 12px}
.wishlist-head p{color:var(--ash);margin:0}
.wishlist-empty{padding:48px 0;display:flex;flex-direction:column;align-items:flex-start;gap:18px;color:var(--ash)}
@media(max-width:600px){.wishlist-shell{padding:36px 20px 0}}

/* Inner pages: the header is sticky (in the page flow), so no extra top
   padding is needed. The old 112px padding left an empty band above the
   header on every page except the homepage. */
body:not(.home):not(.front-page){padding-top:0}

/* =========================================================================
   v2.9.0 — mobile: nothing wider than the screen, iOS/Android behaviour
   ========================================================================= */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{-webkit-tap-highlight-color:transparent}
/* Grid items may shrink below their longest one-line title/price (they truncate instead of widening the page) */
.products > *,.products .product{min-width:0}
.st-product-inner > *{min-width:0}
/* Header on phones: compact sale pill, tighter spacing */
.st-sale-short{display:none}
@media(max-width:600px){
  .header-actions{gap:6px}
  .st-icon-btn,.menu-toggle{width:40px;height:40px}
  .st-sale-link{height:34px;padding:0 12px}
}
@media(max-width:480px){
  .st-sale-long{display:none}
  .st-sale-short{display:inline}
  .site-logo{font-size:22px}
  .header-inner{padding:12px 16px;gap:10px}
}
/* iOS Safari zooms the page when a form field under 16px is focused */
@media(max-width:980px){
  input,select,textarea{font-size:16px !important}
}
/* Keep touch targets at least 44px tall */
@media(pointer:coarse){
  .st-size-opt,.st-btn,.add-cart,.st-frame-btn{min-height:44px}
}

/* Bundle promotion above the shop grid */
.st-bundle-promo{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;max-width:1600px;margin:0 auto 40px;padding:16px 20px;border:1px solid rgba(26,22,18,.14);border-radius:10px;background:#fff;color:var(--ink);text-decoration:none;font-family:var(--sans);font-size:15px;line-height:1.45}
.st-bundle-promo strong{font-weight:600}
.st-bundle-promo-cta{display:inline-flex;align-items:center;min-height:40px;padding:0 18px;border-radius:999px;background:var(--ink);color:#fff;font-size:14px;font-weight:500;white-space:nowrap}
.st-bundle-promo:hover .st-bundle-promo-cta{background:var(--clay)}
/* Bundle page: keep the footer clear of the pinned order bar */
body.bundle-page .site-footer{padding-bottom:calc(150px + env(safe-area-inset-bottom))}

/* =========================================================================
   v2.10.0 — layout fixes
   ========================================================================= */
/* Related products: the section also carries the "products" class, so the
   shop grid rule split it into columns (heading left, prints squeezed right). */
.related.products{display:block !important;max-width:none;padding-left:40px;padding-right:40px}
.related.products .products{display:grid !important;grid-template-columns:repeat(6,minmax(0,1fr)) !important;gap:40px 28px;padding:0 !important;max-width:none}
@media(max-width:1400px){.related.products .products{grid-template-columns:repeat(4,minmax(0,1fr)) !important}}
@media(max-width:980px){.related.products{padding-left:20px;padding-right:20px}.related.products .products{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:32px 18px}}
@media(max-width:600px){.related.products .products{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:28px 14px}}

/* Shop: responsive padding, toolbar row above the grid */
.storitellah-woo-shell{max-width:1600px;margin:0 auto;padding:60px 32px 100px}
.storitellah-woo-shell > .products,.storitellah-woo-shell .products.woocommerce{padding:0;clear:both}
.st-shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin:0 0 32px;font-family:var(--sans);font-size:14px;color:var(--ash)}
.st-shop-toolbar .woocommerce-result-count,.st-shop-toolbar .woocommerce-ordering{float:none !important;margin:0 !important}
.st-shop-toolbar select{min-height:40px;padding:0 36px 0 14px;border:1px solid rgba(26,22,18,.2);border-radius:999px;background-color:#fff;font-family:var(--sans);font-size:14px;color:var(--ink)}
@media(max-width:980px){.storitellah-woo-shell .products{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:40px 18px}}
@media(max-width:600px){
  .storitellah-woo-shell{padding:28px 16px 72px}
  .storitellah-woo-shell .products{grid-template-columns:1fr !important;gap:44px}
  .st-shop-toolbar{margin-bottom:24px}
  .st-shop-toolbar .woocommerce-ordering,.st-shop-toolbar select{width:100%}
}

/* Hero: centred composition, button centred under the caption */
.hero-content{grid-template-columns:1fr;justify-items:center;text-align:center;gap:28px}
.hero-content > div:first-child{display:flex;flex-direction:column;align-items:center}
.hero-meta{align-items:center;text-align:center;max-width:640px}
.hero-caption{margin-left:auto;margin-right:auto;max-width:560px}
.hero-cta{align-self:center;justify-content:center;text-align:center}
.hero-byline{justify-items:center}
/* Titles: one line where they fit, two where they don't (never cut short) */
.product h3,.product .woocommerce-loop-product__title{white-space:normal;overflow:visible;text-overflow:clip;flex-wrap:wrap;row-gap:0}
.product h3 a{white-space:normal;overflow:visible;text-overflow:clip;display:inline}
.product-bottom{flex-wrap:wrap;row-gap:10px}
.product-bottom .price{overflow:visible;text-overflow:clip}
@media(max-width:600px){
  .st-card-frame{width:36px;height:36px;padding:0;justify-content:center;left:10px;bottom:10px}
  .st-card-frame span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}
