/*
Theme Name: Sousourada Minimal v3.4
Theme URI: https://example.com/
Author: Sousourada
Description: Minimal premium WooCommerce theme for Sousourada Handmade Jewellery — airy editorial design, subtle glass, refined ethnic accents and elegant product presentation.
Version: 3.4.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: sousourada-modern
*/

:root{
  --cream:#fbf7ef;
  --paper:#fffdf8;
  --ink:#173f43;
  --ink2:#0e5960;
  --teal:#08747c;
  --teal-dark:#055d64;
  --mustard:#dc9700;
  --rose:#d93668;
  --sand:#e8d9c7;
  --line:rgba(23,63,67,.13);
  --muted:#657476;
  --shadow:0 22px 55px rgba(13,62,67,.11);
  --radius:26px;
  --max:1280px;
  --font-body:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-heading:Georgia, "Times New Roman", serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--cream);color:var(--ink);
  font-family:var(--font-body);
  line-height:1.55;-webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
h1,h2,h3,h4,.serif{
  font-family:var(--font-heading);
  line-height:1.04;font-weight:500;
}
.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.eyebrow{
  font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--mustard)
}
.btn{
  min-height:50px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:999px;border:1px solid var(--teal);background:var(--teal);color:#fff;
  font-size:.76rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  transition:.2s ease;cursor:pointer;
}
.btn:hover{transform:translateY(-1px);background:var(--teal-dark);border-color:var(--teal-dark)}
.btn-light{background:#fff;color:var(--ink);border-color:#fff}
.btn-ghost{background:transparent;color:var(--ink);border-color:rgba(23,63,67,.35)}
.site-header{
  position:absolute;z-index:50;top:0;left:0;right:0;color:#fff;
}
.announcement{
  min-height:34px;display:flex;align-items:center;justify-content:center;
  background:var(--teal-dark);font-size:.78rem;font-weight:700;letter-spacing:.02em;
}
.header-shell{
  margin:16px auto 0;width:min(var(--max),calc(100% - 48px));
  min-height:84px;padding:10px 22px;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(255,253,248,.82);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  color:var(--ink);border-radius:24px;box-shadow:0 18px 45px rgba(0,0,0,.08);
}
.main-nav ul{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0}
.main-nav a{font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.brand-wrap{text-align:center}
.site-logo{max-height:64px;width:auto;margin:auto;border-radius:12px}
.brand-fallback{font-family:var(--font-heading);font-size:1.9rem;letter-spacing:.06em}
.header-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}
.icon-link{
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  border:1px solid rgba(23,63,67,.14);background:rgba(255,255,255,.55)
}
.hero{position:relative;height:min(860px,100vh);min-height:700px;overflow:hidden;background:#183f43}
.slides{position:absolute;inset:0}
.slide{
  position:absolute;inset:0;opacity:0;transition:opacity .8s ease,transform 6s ease;
  background-size:cover;background-position:center;transform:scale(1.02)
}
.slide.active{opacity:1;transform:scale(1.08)}
.slide:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(8,46,51,.70) 0%,rgba(8,46,51,.36) 42%,rgba(8,46,51,.10) 72%,rgba(8,46,51,.16) 100%);
}
.hero-content{
  position:relative;z-index:3;height:100%;display:flex;align-items:center;padding-top:120px
}
.hero-card{
  width:min(650px,62vw);padding:46px 48px;border-radius:34px;
  color:#fff;background:rgba(13,71,76,.33);
  border:1px solid rgba(255,255,255,.23);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  box-shadow:0 28px 70px rgba(0,0,0,.17)
}
.hero h1{font-size:clamp(3.7rem,7vw,7rem);margin:.08em 0 .18em;letter-spacing:-.03em}
.hero p{max-width:560px;font-size:1.05rem;color:rgba(255,255,255,.9)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.slider-nav{
  position:absolute;z-index:4;left:50%;bottom:32px;transform:translateX(-50%);
  display:flex;gap:8px;background:rgba(255,255,255,.16);backdrop-filter:blur(8px);
  padding:8px 10px;border-radius:999px
}
.dot{width:10px;height:10px;border:0;border-radius:50%;background:rgba(255,255,255,.48);padding:0;cursor:pointer}
.dot.active{background:#fff}
.slider-arrow{
  position:absolute;z-index:4;top:53%;width:48px;height:48px;border-radius:50%;
  border:1px solid rgba(255,255,255,.34);background:rgba(255,255,255,.20);
  color:white;display:grid;place-items:center;font-size:1.5rem;cursor:pointer;backdrop-filter:blur(8px)
}
.prev{left:28px}.next{right:28px}
.trustbar{
  margin-top:-26px;position:relative;z-index:9
}
.trust-grid{
  background:rgba(255,253,248,.92);backdrop-filter:blur(12px);
  box-shadow:var(--shadow);border:1px solid var(--line);border-radius:24px;
  display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden
}
.trust-item{padding:25px 24px;display:flex;gap:14px;align-items:flex-start}
.trust-item+.trust-item{border-left:1px solid var(--line)}
.trust-icon{
  width:38px;height:38px;flex:none;border-radius:50%;background:rgba(8,116,124,.09);
  display:grid;place-items:center;font-size:1.1rem
}
.trust-item strong{display:block;font-size:.94rem;margin-bottom:3px}
.trust-item small{color:var(--muted)}
.section{padding:92px 0}
.section-head{
  display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px
}
.section-head h2{font-size:clamp(2.25rem,4vw,4rem);margin:.12em 0 0}
.section-lead{max-width:570px;color:var(--muted)}
.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.category-card{
  position:relative;min-height:430px;border-radius:28px;overflow:hidden;
  box-shadow:var(--shadow);background:#ddd
}
.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.category-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(5,55,60,.72))}
.category-card:hover img{transform:scale(1.05)}
.category-label{
  position:absolute;z-index:2;left:20px;right:20px;bottom:18px;
  display:flex;align-items:center;justify-content:space-between;gap:14px;color:#fff
}
.category-label span{font-family:var(--font-heading);font-size:1.55rem}
.category-label b{
  width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.28)
}
.featured-bg{background:var(--paper);border-block:1px solid var(--line)}
.woocommerce ul.products{
  display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:18px!important;margin:0!important
}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{
  width:auto!important;float:none!important;margin:0!important;padding:0 0 20px!important;
  background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 12px 36px rgba(23,63,67,.07)
}
.woocommerce ul.products li.product img{margin:0 0 14px!important;aspect-ratio:1/1.12;object-fit:cover}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .button{
  margin-left:18px!important;margin-right:18px!important
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--font-heading);font-size:1.14rem!important;color:var(--ink)}
.woocommerce ul.products li.product .price{color:var(--teal)!important;font-weight:800!important}
.woocommerce ul.products li.product .button{
  border-radius:999px!important;background:var(--teal)!important;color:#fff!important;text-align:center!important
}
.placeholder-products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.placeholder-product{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden}
.placeholder-product .pimg{aspect-ratio:1/1.12;background:linear-gradient(135deg,#e7d8c5,#d6a477)}
.placeholder-product .pbody{padding:17px}
.placeholder-product h3{margin:0 0 6px;font-size:1.15rem}
.story-wrap{
  display:grid;grid-template-columns:1.08fr .92fr;gap:18px;align-items:stretch
}
.story-image,.story-copy{border-radius:30px;overflow:hidden;min-height:560px}
.story-image img{width:100%;height:100%;object-fit:cover}
.story-copy{
  padding:54px;display:flex;flex-direction:column;justify-content:center;
  background:linear-gradient(145deg,#0b6a71,#074f55);color:#fff;position:relative
}
.story-copy:before{
  content:"✿";position:absolute;right:34px;top:26px;font-size:7rem;color:rgba(220,151,0,.28)
}
.story-copy h2{font-size:clamp(2.8rem,5vw,5rem);margin:.08em 0 .22em}
.story-copy p{color:rgba(255,255,255,.86);max-width:610px}
.editorial{
  display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px
}
.editorial-card{
  position:relative;min-height:440px;border-radius:30px;overflow:hidden
}
.editorial-card img{width:100%;height:100%;object-fit:cover}
.editorial-card .glass{
  position:absolute;left:22px;right:22px;bottom:22px;padding:24px;border-radius:22px;
  background:rgba(255,253,248,.78);backdrop-filter:blur(13px);border:1px solid rgba(255,255,255,.6)
}
.editorial-card h3{font-size:2rem;margin:.15em 0}
.insta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.insta-grid a{aspect-ratio:1;border-radius:18px;overflow:hidden}
.insta-grid img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.insta-grid a:hover img{transform:scale(1.04)}
.newsletter{padding:70px 0;background:linear-gradient(110deg,#075c63,#08747c);color:#fff}
.newsletter-inner{
  display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:center
}
.newsletter h2{font-size:clamp(2.4rem,4vw,4rem);margin:.08em 0}
.newsletter p{color:rgba(255,255,255,.82)}
.newsletter-form{display:flex;background:#fff;padding:6px;border-radius:999px}
.newsletter-form input{flex:1;min-width:0;border:0;outline:0;background:transparent;padding:0 18px}
.newsletter-form button{border:0}
.site-footer{background:#062f33;color:#e9f2ef;padding:58px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:42px}
.footer-logo{max-width:230px;border-radius:14px;margin-bottom:16px}
.site-footer h4{margin-top:0}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin:.5em 0;color:rgba(233,242,239,.72)}
.footer-bottom{margin-top:44px;padding-top:18px;border-top:1px solid rgba(255,255,255,.13);font-size:.8rem;color:rgba(233,242,239,.6)}
.woocommerce div.product,.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce,
.woocommerce-account .woocommerce{width:min(var(--max),calc(100% - 48px));margin:150px auto 70px}
body:not(.home) .site-header{position:relative;background:var(--cream);color:var(--ink)}
body:not(.home) .header-shell{box-shadow:var(--shadow);background:rgba(255,253,248,.96)}
body:not(.home) .announcement{background:var(--teal-dark);color:#fff}
@media(max-width:980px){
  .header-shell{grid-template-columns:1fr auto}.main-nav{display:none}.brand-wrap{text-align:left}
  .hero-card{width:min(720px,82vw)}
  .trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(3){border-left:0;border-top:1px solid var(--line)}
  .trust-item:nth-child(4){border-top:1px solid var(--line)}
  .category-grid{grid-template-columns:repeat(2,1fr)}
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}
  .placeholder-products{grid-template-columns:repeat(2,1fr)}
  .story-wrap,.newsletter-inner{grid-template-columns:1fr}
  .editorial{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .container,.header-shell{width:min(100% - 24px,var(--max))}
  .header-shell{margin-top:10px;min-height:72px;padding:8px 12px;border-radius:20px}
  .site-logo{max-height:50px}.header-actions .account-link{display:none}
  .hero{min-height:720px}.hero-content{padding-top:120px;align-items:flex-end;padding-bottom:90px}
  .hero-card{width:100%;padding:28px 24px;border-radius:26px}
  .hero h1{font-size:3.55rem}.hero p{font-size:.96rem}
  .slider-arrow{display:none}
  .trustbar{margin-top:-18px}.trust-grid{grid-template-columns:1fr}
  .trust-item+.trust-item{border-left:0;border-top:1px solid var(--line)}
  .section{padding:64px 0}.section-head{align-items:start;flex-direction:column}
  .category-grid{grid-template-columns:1fr 1fr;gap:10px}.category-card{min-height:280px;border-radius:20px}
  .category-label{left:12px;right:12px;bottom:12px}.category-label span{font-size:1.15rem}
  .woocommerce ul.products{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .placeholder-products{grid-template-columns:1fr 1fr;gap:10px}
  .story-image,.story-copy{min-height:420px}.story-copy{padding:34px 26px}
  .insta-grid{grid-template-columns:1fr 1fr}
  .newsletter-form{flex-direction:column;border-radius:22px;background:transparent;padding:0;gap:10px}
  .newsletter-form input{min-height:50px;background:#fff;border-radius:999px}
  .footer-grid{grid-template-columns:1fr}
}


/* ==========================================================================
   SOUSOURADA MODERN v2.2 — PRODUCTION POLISH
   ========================================================================== */

:root{
  --font-heading:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;
  --header-height:88px;
}

/* Better Greek typography */
h1,h2,h3,h4,.serif,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.category-label span{
  font-family:var(--font-heading);
  font-kerning:normal;
  text-rendering:optimizeLegibility;
}

/* ---------- Header: logo left / menu center / actions right ---------- */
.site-header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:1000;
  color:var(--ink);
  transition:transform .25s ease;
}
body.admin-bar .site-header{top:32px}

.announcement{
  min-height:32px;
  transition:max-height .25s ease,opacity .25s ease,padding .25s ease;
  overflow:hidden;
}

.header-shell{
  width:min(1420px,calc(100% - 40px));
  min-height:var(--header-height);
  margin:12px auto 0;
  padding:10px 18px;
  grid-template-columns:205px minmax(0,1fr) auto;
  gap:20px;
  border-radius:24px;
  background:rgba(255,253,248,.80);
  border:1px solid rgba(255,255,255,.60);
  box-shadow:0 14px 45px rgba(8,46,51,.10);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  transition:min-height .25s ease,background .25s ease,box-shadow .25s ease,margin .25s ease;
}

.site-header.scrolled .announcement{
  max-height:0;
  min-height:0;
  opacity:0;
  padding:0;
}
.site-header.scrolled .header-shell{
  min-height:70px;
  margin-top:8px;
  background:rgba(255,253,248,.94);
  box-shadow:0 12px 34px rgba(8,46,51,.14);
}

.brand-wrap{
  grid-column:1;
  text-align:left;
}
.site-logo{
  max-height:64px;
  max-width:190px;
  width:auto;
  object-fit:contain;
  margin:0;
  border-radius:0;
}
.site-header.scrolled .site-logo{max-height:52px}

.main-nav{
  grid-column:2;
  justify-self:center;
  width:100%;
}
.main-nav ul{
  justify-content:center;
  gap:clamp(11px,1.4vw,23px);
  flex-wrap:nowrap;
}
.main-nav a{
  position:relative;
  font-size:.72rem;
  font-weight:760;
  letter-spacing:.055em;
  white-space:nowrap;
}
.main-nav a:after{
  content:"";
  position:absolute;
  left:50%;right:50%;bottom:-7px;
  height:2px;
  background:var(--mustard);
  transition:left .2s ease,right .2s ease;
}
.main-nav a:hover:after{left:0;right:0}

.header-actions{
  grid-column:3;
  gap:7px;
}
.icon-link,.icon-button{
  width:42px;height:42px;
  border-radius:50%;
  display:grid;place-items:center;
  color:var(--ink);
  border:1px solid rgba(23,63,67,.13);
  background:rgba(255,255,255,.62);
  transition:.2s ease;
  position:relative;
  padding:0;
  cursor:pointer;
}
.icon-link:hover,.icon-button:hover{
  color:#fff;background:var(--teal);border-color:var(--teal);
  transform:translateY(-1px);
}
.icon-link svg,.icon-button svg{width:19px;height:19px}
.cart-badge{
  position:absolute;
  right:-2px;top:-4px;
  min-width:18px;height:18px;padding:0 4px;
  border-radius:999px;
  display:grid;place-items:center;
  background:var(--mustard);
  color:#fff;
  font-size:.62rem;font-weight:800;
  border:2px solid var(--cream);
}

.mobile-menu-button{display:none}

/* Search overlay */
.search-overlay{
  position:fixed;inset:0;z-index:1200;
  display:grid;place-items:start center;
  padding-top:150px;
  background:rgba(5,47,51,.54);
  backdrop-filter:blur(9px);
  opacity:0;visibility:hidden;
  transition:.2s ease;
}
.search-overlay.open{opacity:1;visibility:visible}
.search-panel{
  width:min(720px,calc(100% - 32px));
  padding:28px;
  background:var(--paper);
  border-radius:26px;
  box-shadow:0 25px 80px rgba(0,0,0,.2);
}
.search-panel-top{
  display:flex;align-items:center;justify-content:space-between;
  gap:20px;margin-bottom:18px
}
.search-panel h2{margin:0;font-size:2rem}
.search-form{
  display:flex;gap:10px
}
.search-form input{
  flex:1;min-width:0;
  min-height:52px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  padding:0 20px;
  outline:none;
}
.search-form input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(8,116,124,.10)}

/* Mobile drawer */
.mobile-drawer{
  position:fixed;z-index:1300;
  top:0;bottom:0;left:0;
  width:min(390px,88vw);
  background:var(--paper);
  color:var(--ink);
  transform:translateX(-105%);
  transition:transform .28s cubic-bezier(.22,.75,.24,1);
  box-shadow:22px 0 70px rgba(5,47,51,.20);
  padding:26px;
  overflow:auto;
}
.mobile-drawer.open{transform:translateX(0)}
.mobile-drawer-head{
  display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line)
}
.mobile-drawer-logo{max-width:190px;max-height:68px}
.mobile-drawer nav ul{
  list-style:none;margin:28px 0;padding:0
}
.mobile-drawer nav li{border-bottom:1px solid var(--line)}
.mobile-drawer nav a{
  display:flex;padding:16px 2px;
  font-family:var(--font-heading);
  font-size:1.3rem
}
.mobile-drawer-social{
  margin-top:30px;padding-top:22px;border-top:1px solid var(--line);
  color:var(--muted)
}
.drawer-backdrop{
  position:fixed;z-index:1250;inset:0;
  background:rgba(5,47,51,.44);
  opacity:0;visibility:hidden;
  transition:.25s ease;
  backdrop-filter:blur(3px);
}
.drawer-backdrop.open{opacity:1;visibility:visible}

/* ---------- Hero ---------- */
.hero{
  height:min(820px,100vh);
  min-height:680px;
}
.hero-content{
  padding-top:150px;
}
.hero-card{
  width:min(590px,54vw);
  padding:38px 40px;
  border-radius:30px;
  background:rgba(8,55,60,.27);
  border:1px solid rgba(255,255,255,.25);
  backdrop-filter:blur(11px) saturate(110%);
  -webkit-backdrop-filter:blur(11px) saturate(110%);
  box-shadow:0 25px 75px rgba(0,0,0,.15);
}
.hero h1{
  font-size:clamp(3.25rem,5.4vw,5.55rem);
  line-height:.96;
  margin:.10em 0 .22em;
}
.hero p{font-size:1rem;line-height:1.65}
.hero-card.hero-reveal{
  animation:heroCardReveal .58s cubic-bezier(.2,.75,.2,1);
}
@keyframes heroCardReveal{
  0%{opacity:.35;transform:translateY(14px)}
  100%{opacity:1;transform:translateY(0)}
}
.slider-nav{bottom:24px}
.slider-arrow{width:44px;height:44px}

/* ---------- Categories / product polish ---------- */
.category-card{min-height:400px}
.category-card:after{
  background:linear-gradient(180deg,transparent 52%,rgba(5,55,60,.78))
}

/* ---------- Editorial glass cards: show more photo ---------- */
.editorial-card{min-height:500px}
.editorial-card .glass{
  left:18px;right:18px;bottom:18px;
  padding:18px 22px;
  border-radius:20px;
  background:rgba(255,253,248,.80);
}
.editorial-card h3{
  font-size:clamp(1.55rem,2.4vw,2.2rem);
  margin:.10em 0 .20em
}
.editorial-card .glass p{margin:.35em 0}

/* ---------- Instagram: more compact ---------- */
.insta-section{padding-top:70px;padding-bottom:72px}
.insta-section .section-head{margin-bottom:24px}
.insta-section .section-head h2{
  font-size:clamp(2.15rem,3.5vw,3.45rem)
}
.insta-grid{gap:9px}
.insta-grid a{border-radius:15px}

/* ---------- Newsletter: compact ---------- */
.newsletter{padding:46px 0}
.newsletter-inner{
  grid-template-columns:1fr 1fr;
  gap:44px
}
.newsletter h2{
  font-size:clamp(2rem,3.3vw,3.4rem);
  margin:.05em 0 .10em
}
.newsletter p{margin:.3em 0 0}
.newsletter-form{max-width:600px;justify-self:end;width:100%}

/* ---------- Footer ---------- */
.site-footer{padding:44px 0 20px}
.footer-grid{
  grid-template-columns:1.45fr repeat(4,1fr);
  gap:34px
}
.footer-logo{
  max-width:250px;
  max-height:130px;
  object-fit:contain;
  object-position:left center;
  border-radius:0;
  margin:0 0 15px
}
.site-footer h4{
  font-family:var(--font-body);
  font-size:.77rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#fff;
  margin:0 0 16px
}
.site-footer li{margin:.42em 0;font-size:.92rem}
.footer-bottom{
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
  margin-top:34px;padding-top:16px
}
.footer-legal{display:flex;gap:18px;flex-wrap:wrap}

/* non-home fixed header spacing */
body:not(.home) .site-header{position:fixed;background:transparent}
body:not(.home) main{padding-top:128px}
body:not(.home).admin-bar main{padding-top:128px}

/* ---------- Responsive ---------- */
@media(max-width:1180px){
  .main-nav{display:none}
  .header-shell{
    grid-template-columns:auto 1fr auto;
  }
  .brand-wrap{grid-column:2;text-align:center}
  .site-logo{margin:auto}
  .header-actions{grid-column:3}
  .mobile-menu-button{
    display:grid;
    grid-column:1;grid-row:1;
  }
  .footer-grid{grid-template-columns:1.5fr repeat(2,1fr)}
  .footer-grid>div:nth-child(4),.footer-grid>div:nth-child(5){margin-top:14px}
}
@media(max-width:782px){
  body.admin-bar .site-header{top:46px}
}
@media(max-width:700px){
  :root{--header-height:70px}
  .announcement{font-size:.69rem;padding-inline:10px;text-align:center}
  .header-shell{
    width:calc(100% - 20px);
    margin-top:8px;
    padding:6px 10px;
    border-radius:19px;
    min-height:70px;
  }
  .site-logo{max-height:52px;max-width:170px}
  .header-actions{gap:5px}
  .icon-link,.icon-button{width:38px;height:38px}
  .account-link{display:none}
  .hero{min-height:720px;height:92vh}
  .hero-content{padding-top:132px;padding-bottom:72px;align-items:flex-end}
  .hero-card{
    width:100%;
    padding:25px 22px;
    border-radius:24px
  }
  .hero h1{font-size:clamp(3rem,14vw,4.25rem)}
  .hero-actions .btn-light{display:none}
  .slider-nav{bottom:17px}
  .category-card{min-height:260px}
  .editorial-card{min-height:430px}
  .editorial-card .glass{padding:16px}
  .newsletter{
    padding:40px 0
  }
  .newsletter-inner{
    grid-template-columns:1fr;
    gap:22px
  }
  .newsletter-form{justify-self:stretch}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-grid>div:first-child{grid-column:1/-1}
}
@media(max-width:480px){
  .header-actions .search-button{display:none}
  .hero-card .eyebrow{font-size:.65rem}
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>div:first-child{grid-column:auto}
}


/* ==========================================================================
   SOUSOURADA MODERN v2.3 — FINAL HOMEPAGE POLISH
   ========================================================================== */

/* Announcement readability */
.announcement{
  color:#fff !important;
  font-weight:700;
  text-shadow:0 1px 1px rgba(0,0,0,.08);
}

/* Smarter floating header */
.site-header{
  transition:transform .34s cubic-bezier(.22,.75,.24,1), opacity .25s ease;
  will-change:transform;
}
.site-header.header-hidden{
  transform:translateY(calc(-100% - 18px));
}
.site-header.scrolled .header-shell{
  min-height:64px;
  width:min(1360px,calc(100% - 54px));
  border-radius:20px;
}
.site-header.scrolled .site-logo{
  max-height:45px;
  max-width:155px;
}
.site-header.scrolled .icon-link,
.site-header.scrolled .icon-button{
  width:38px;height:38px;
}
.site-header.scrolled .main-nav a{
  font-size:.68rem;
}
.site-header.scrolled .header-shell{
  padding-top:6px;padding-bottom:6px;
}

/* Slightly airier hero glass */
.hero-card{
  background:rgba(8,55,60,.235);
  border-color:rgba(255,255,255,.28);
  box-shadow:0 24px 72px rgba(0,0,0,.13);
}

/* Smoother hero image transition */
.slide{
  transition:opacity 1.15s ease, transform 8.5s cubic-bezier(.2,.7,.2,1);
}
.slide.active{
  transform:scale(1.065);
}
.hero-card.hero-reveal{
  animation:heroCardRevealV23 .72s cubic-bezier(.2,.75,.2,1);
}
@keyframes heroCardRevealV23{
  0%{opacity:.20;transform:translateY(18px)}
  100%{opacity:1;transform:translateY(0)}
}

/* Category cards — subtle premium hover */
.category-card{
  isolation:isolate;
}
.category-card img{
  transition:transform .65s cubic-bezier(.2,.75,.2,1), filter .35s ease;
}
.category-card:hover img{
  transform:scale(1.055);
  filter:saturate(1.05) contrast(1.02);
}
.category-label{
  transition:transform .28s ease;
}
.category-label b{
  transition:transform .28s ease, background .28s ease;
}
.category-card:hover .category-label{
  transform:translateY(-4px);
}
.category-card:hover .category-label b{
  transform:translateX(3px);
  background:rgba(255,255,255,.28);
}

/* Story section — a touch more breathing room */
.story-wrap{
  gap:20px;
}
.story-copy{
  padding:56px;
}
.story-copy p{
  max-width:650px;
}

/* Instagram final polish */
.insta-grid a{
  position:relative;
  isolation:isolate;
}
.insta-grid a::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,transparent 45%,rgba(5,55,60,.66));
  opacity:0;
  transition:opacity .28s ease;
}
.insta-grid a::before{
  content:"↗  View on Instagram";
  position:absolute;
  left:14px;right:14px;bottom:13px;
  z-index:2;
  color:#fff;
  font-size:.69rem;
  letter-spacing:.09em;
  text-transform:uppercase;
  font-weight:800;
  opacity:0;
  transform:translateY(7px);
  transition:opacity .28s ease, transform .28s ease;
}
.insta-grid a:hover::after,
.insta-grid a:hover::before{
  opacity:1;
}
.insta-grid a:hover::before{
  transform:translateY(0);
}

/* Newsletter: slightly tighter and more balanced */
.newsletter{
  padding:42px 0;
}
.newsletter-inner{
  gap:36px;
}
.newsletter-form{
  box-shadow:0 12px 30px rgba(5,47,51,.12);
}

/* Footer polish */
.site-footer{
  border-top:1px solid rgba(255,255,255,.06);
}
.site-footer a{
  transition:color .2s ease, opacity .2s ease;
}
.site-footer a:hover{
  color:#fff;
}
.footer-bottom{
  align-items:center;
}
.footer-legal a{
  opacity:.78;
}
.footer-legal a:hover{
  opacity:1;
}

/* Small entrance animations, respecting reduced motion */
@media (prefers-reduced-motion:no-preference){
  .category-card,
  .story-wrap,
  .editorial-card,
  .insta-grid a{
    animation:fadeSoft .6s ease both;
  }
  @keyframes fadeSoft{
    from{opacity:.92}
    to{opacity:1}
  }
}

@media(max-width:700px){
  .site-header.scrolled .header-shell{
    width:calc(100% - 18px);
    min-height:60px;
  }
  .site-header.scrolled .site-logo{
    max-height:43px;
  }
  .story-copy{
    padding:32px 25px;
  }
  .insta-grid a::before{
    font-size:.58rem;
    left:9px;right:9px;bottom:9px;
  }
}


/* ==========================================================================
   SOUSOURADA MODERN v2.4 — PRODUCT EXPERIENCE
   ========================================================================== */

/* General WooCommerce page shell */
.woocommerce-breadcrumb{
  width:min(var(--max),calc(100% - 48px));
  margin:150px auto 24px !important;
  color:var(--muted) !important;
  font-size:.82rem !important;
}
body.admin-bar .woocommerce-breadcrumb{margin-top:150px !important}

.single-product div.product{
  width:min(var(--max),calc(100% - 48px));
  margin:0 auto 90px !important;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);
  gap:clamp(44px,6vw,86px);
  align-items:start;
}
.single-product div.product::before,
.single-product div.product::after{display:none !important}

/* Gallery */
.single-product div.product .woocommerce-product-gallery{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  position:relative;
}
.single-product .woocommerce-product-gallery__wrapper{
  border-radius:30px;
  overflow:hidden;
  background:var(--paper);
}
.single-product .woocommerce-product-gallery__image{
  background:var(--paper);
}
.single-product .woocommerce-product-gallery__image img{
  width:100% !important;
  aspect-ratio:1 / 1.08;
  object-fit:cover;
}
.single-product .flex-control-thumbs{
  display:grid !important;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin:12px 0 0 !important;
  padding:0 !important;
}
.single-product .flex-control-thumbs li{
  width:auto !important;
  float:none !important;
  margin:0 !important;
}
.single-product .flex-control-thumbs img{
  aspect-ratio:1;
  object-fit:cover;
  border-radius:14px;
  opacity:.72;
  border:2px solid transparent;
  transition:.2s ease;
}
.single-product .flex-control-thumbs img.flex-active,
.single-product .flex-control-thumbs img:hover{
  opacity:1;
  border-color:var(--mustard);
}
.single-product .woocommerce-product-gallery__trigger{
  top:18px !important;
  right:18px !important;
  width:44px !important;
  height:44px !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.88) !important;
  backdrop-filter:blur(8px);
  box-shadow:0 10px 25px rgba(5,47,51,.12);
}

/* Product summary */
.single-product div.product .summary{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  position:sticky;
  top:110px;
  padding:10px 0 0;
}
.single-product .product-category-chip{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 13px;
  border-radius:999px;
  background:rgba(8,116,124,.08);
  color:var(--teal);
  text-transform:uppercase;
  letter-spacing:.11em;
  font-size:.68rem;
  font-weight:800;
  margin-bottom:17px;
}
.single-product .product_title{
  font-family:var(--font-heading) !important;
  font-size:clamp(2.7rem,4.8vw,4.9rem) !important;
  line-height:.98 !important;
  letter-spacing:-.025em;
  color:var(--ink);
  margin:0 0 20px !important;
}
.single-product .summary .price{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--teal) !important;
  font-size:1.65rem !important;
  font-weight:800 !important;
  margin:0 0 24px !important;
}
.single-product .summary .price del{
  color:#9a9a9a !important;
  opacity:.75;
  font-size:1.1rem;
}
.single-product .summary .price ins{
  text-decoration:none;
}
.single-product .woocommerce-product-details__short-description{
  color:var(--muted);
  font-size:1rem;
  line-height:1.75;
  margin-bottom:25px;
}
.single-product .stock{
  color:var(--teal) !important;
  font-weight:750;
  font-size:.84rem !important;
  margin:0 0 18px !important;
}

/* Quantity + add-to-cart */
.single-product form.cart{
  display:flex !important;
  align-items:stretch;
  gap:12px;
  padding:22px 0 25px;
  margin:0 !important;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.single-product form.cart .quantity{
  float:none !important;
  margin:0 !important;
}
.single-product form.cart .qty{
  min-width:80px;
  height:54px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--ink);
  padding:0 14px;
  text-align:center;
  outline:none;
}
.single-product form.cart .qty:focus{
  border-color:var(--teal);
  box-shadow:0 0 0 3px rgba(8,116,124,.10);
}
.single-product form.cart .single_add_to_cart_button{
  flex:1;
  min-height:54px;
  border-radius:999px !important;
  background:var(--teal) !important;
  color:#fff !important;
  font-size:.79rem !important;
  font-weight:850 !important;
  letter-spacing:.09em;
  text-transform:uppercase;
  transition:.2s ease !important;
}
.single-product form.cart .single_add_to_cart_button:hover{
  background:var(--teal-dark) !important;
  transform:translateY(-1px);
}

/* Variations */
.single-product .variations{
  margin:0 0 15px !important;
}
.single-product .variations th,
.single-product .variations td{
  display:block;
  padding:0 0 8px !important;
}
.single-product .variations label{
  font-size:.77rem;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.single-product .variations select{
  width:100%;
  min-height:48px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  padding:0 14px;
}
.single-product .reset_variations{
  font-size:.75rem !important;
  color:var(--muted) !important;
}

/* Sale badge */
.single-product span.onsale{
  left:18px !important;
  top:18px !important;
  min-width:auto !important;
  min-height:auto !important;
  line-height:1 !important;
  padding:10px 13px !important;
  border-radius:999px !important;
  background:var(--rose) !important;
  font-size:.7rem !important;
  font-weight:800 !important;
  text-transform:uppercase;
  letter-spacing:.07em;
}

/* Meta */
.single-product .product_meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 20px;
  padding:18px 0;
  color:var(--muted);
  font-size:.78rem;
}
.single-product .product_meta > span{
  display:block;
}
.single-product .product_meta a{color:var(--teal)}

/* Trust cards beneath cart */
.sousourada-product-benefits{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  margin:18px 0 20px;
}
.sousourada-product-benefit{
  min-height:94px;
  padding:16px 13px;
  border-radius:17px;
  background:rgba(255,253,248,.88);
  border:1px solid var(--line);
}
.sousourada-product-benefit svg{
  width:22px;height:22px;
  color:var(--teal);
  margin-bottom:8px;
}
.sousourada-product-benefit strong{
  display:block;
  font-size:.76rem;
  line-height:1.3;
  margin-bottom:3px;
}
.sousourada-product-benefit small{
  color:var(--muted);
  line-height:1.35;
  font-size:.68rem;
}

/* Product info accordions */
.sousourada-product-info{
  margin-top:8px;
  border-top:1px solid var(--line);
}
.sousourada-product-info details{
  border-bottom:1px solid var(--line);
}
.sousourada-product-info summary{
  list-style:none;
  cursor:pointer;
  padding:17px 2px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-weight:750;
  font-size:.88rem;
}
.sousourada-product-info summary::-webkit-details-marker{display:none}
.sousourada-product-info summary::after{
  content:"+";
  font-size:1.35rem;
  font-weight:400;
  color:var(--teal);
}
.sousourada-product-info details[open] summary::after{content:"–"}
.sousourada-product-info .accordion-body{
  padding:0 4px 18px;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.7;
}

/* Main Woo tabs */
.single-product .woocommerce-tabs{
  grid-column:1 / -1;
  width:100% !important;
  float:none !important;
  margin-top:30px;
}
.single-product .woocommerce-tabs ul.tabs{
  display:flex;
  gap:8px;
  padding:0 !important;
  margin:0 0 22px !important;
  border-bottom:1px solid var(--line);
}
.single-product .woocommerce-tabs ul.tabs::before{display:none !important}
.single-product .woocommerce-tabs ul.tabs li{
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  margin:0 !important;
  padding:0 !important;
}
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after{display:none !important}
.single-product .woocommerce-tabs ul.tabs li a{
  padding:13px 17px !important;
  color:var(--muted) !important;
  font-size:.77rem;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.single-product .woocommerce-tabs ul.tabs li.active a{
  color:var(--teal) !important;
  border-bottom:2px solid var(--teal);
}
.single-product .woocommerce-Tabs-panel{
  padding:26px 0 !important;
  color:var(--muted);
}
.single-product .woocommerce-Tabs-panel h2{
  font-size:2rem;
  color:var(--ink);
}

/* Related / upsells */
.single-product .related.products,
.single-product .up-sells{
  grid-column:1 / -1;
  width:100%;
  margin-top:35px;
  padding-top:50px;
  border-top:1px solid var(--line);
}
.single-product .related.products > h2,
.single-product .up-sells > h2{
  font-family:var(--font-heading);
  font-size:clamp(2.2rem,4vw,3.6rem);
  color:var(--ink);
  margin:0 0 28px;
}

/* Shop archive */
.post-type-archive-product .site-main,
.tax-product_cat .site-main{
  width:min(var(--max),calc(100% - 48px));
  margin:145px auto 80px;
}
.woocommerce-products-header{
  margin-bottom:30px;
}
.woocommerce-products-header__title{
  font-family:var(--font-heading);
  font-size:clamp(3rem,5vw,5.5rem);
  color:var(--ink);
}
.woocommerce .woocommerce-result-count{
  color:var(--muted);
}
.woocommerce .woocommerce-ordering select{
  min-height:44px;
  border:1px solid var(--line);
  border-radius:999px;
  padding:0 14px;
  background:#fff;
}

/* Product cards refinement */
.woocommerce ul.products li.product{
  transition:transform .25s ease, box-shadow .25s ease;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 44px rgba(23,63,67,.10);
}
.woocommerce ul.products li.product .button{
  min-height:42px;
  display:flex !important;
  align-items:center;
  justify-content:center;
}

/* Mobile */
@media(max-width:900px){
  .single-product div.product{
    grid-template-columns:1fr;
    gap:28px;
  }
  .single-product div.product .summary{
    position:static;
  }
  .single-product .woocommerce-tabs,
  .single-product .related.products,
  .single-product .up-sells{
    grid-column:auto;
  }
}
@media(max-width:620px){
  .woocommerce-breadcrumb{
    width:calc(100% - 24px);
    margin-top:120px !important;
    margin-bottom:16px !important;
  }
  .single-product div.product{
    width:calc(100% - 24px);
    margin-bottom:60px !important;
  }
  .single-product .product_title{
    font-size:clamp(2.65rem,13vw,4rem) !important;
  }
  .single-product form.cart{
    flex-direction:column;
  }
  .single-product form.cart .qty{
    width:100%;
  }
  .sousourada-product-benefits{
    grid-template-columns:1fr;
  }
  .sousourada-product-benefit{
    min-height:unset;
    display:grid;
    grid-template-columns:32px 1fr;
    column-gap:9px;
    align-items:start;
  }
  .sousourada-product-benefit svg{
    grid-row:1 / 3;
  }
  .single-product .flex-control-thumbs{
    grid-template-columns:repeat(4,1fr);
  }
  .single-product .woocommerce-tabs ul.tabs{
    overflow:auto;
    white-space:nowrap;
  }
}


/* ==========================================================================\n   SOUSOURADA ATELIER v3.0 — GLASS + ETHNIC EDITION\n   ========================================================================== */
:root{
  --glass:rgba(255,253,248,.76);
  --glass-strong:rgba(255,253,248,.90);
  --glass-line:rgba(255,255,255,.68);
  --ethnic-line:rgba(220,151,0,.15);
  --soft-shadow:0 24px 70px rgba(10,52,56,.10);
}

/* Subtle Mediterranean / folk geometry — CSS only, fast and crisp */
body{
  background:
    radial-gradient(circle at 8% 12%, rgba(220,151,0,.055) 0 2px, transparent 2.5px) 0 0/26px 26px,
    linear-gradient(135deg, transparent 48%, rgba(8,116,124,.025) 49% 51%, transparent 52%) 0 0/44px 44px,
    var(--cream);
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.55;
  background:
    radial-gradient(circle at 0 0, transparent 0 68px, rgba(220,151,0,.05) 69px 70px, transparent 71px),
    radial-gradient(circle at 100% 100%, transparent 0 84px, rgba(8,116,124,.04) 85px 86px, transparent 87px);
}

/* Header becomes an elegant floating glass ribbon */
.header-shell{
  border:1px solid rgba(255,255,255,.72)!important;
  background:var(--glass)!important;
  box-shadow:0 18px 58px rgba(5,47,51,.12)!important;
  backdrop-filter:blur(22px) saturate(1.12)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.12)!important;
}
.header-shell::before,.header-shell::after{
  content:"✦";position:absolute;top:50%;transform:translateY(-50%);color:var(--mustard);opacity:.38;font-size:.7rem;
}
.header-shell::before{left:12px}.header-shell::after{right:12px}
.main-nav a{position:relative}
.main-nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:-8px;height:1px;background:var(--mustard);transition:.25s ease}
.main-nav a:hover::after,.main-nav .current-menu-item>a::after{left:0;right:0}
.icon-link,.icon-button{transition:transform .2s ease,background .2s ease,border-color .2s ease}
.icon-link:hover,.icon-button:hover{transform:translateY(-2px);background:#fff;border-color:rgba(8,116,124,.26)}

/* Hero — premium translucent editorial card with folk ornament */
.hero{min-height:760px}
.hero::before,.hero::after{
  content:"";position:absolute;z-index:2;pointer-events:none;width:190px;height:190px;opacity:.22;
  background:
    radial-gradient(circle at center, transparent 0 36%, rgba(255,255,255,.9) 37% 38%, transparent 39%),
    repeating-conic-gradient(from 0deg, rgba(255,255,255,.75) 0 5deg, transparent 5deg 15deg);
  -webkit-mask:radial-gradient(circle,#000 0 63%,transparent 64%);
  mask:radial-gradient(circle,#000 0 63%,transparent 64%);
}
.hero::before{left:-70px;bottom:-55px}.hero::after{right:-60px;top:145px;transform:rotate(22deg)}
.hero-card{
  position:relative;overflow:hidden;
  background:linear-gradient(145deg,rgba(255,253,248,.86),rgba(255,253,248,.63))!important;
  color:var(--ink)!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:0 30px 90px rgba(4,38,42,.20)!important;
  backdrop-filter:blur(24px) saturate(1.12)!important;
  -webkit-backdrop-filter:blur(24px) saturate(1.12)!important;
}
.hero-card::after{
  content:"";position:absolute;right:-46px;top:-46px;width:150px;height:150px;border-radius:50%;opacity:.26;
  background:repeating-conic-gradient(var(--mustard) 0 4deg,transparent 4deg 14deg);
  -webkit-mask:radial-gradient(circle,transparent 0 48%,#000 49% 58%,transparent 59%);
  mask:radial-gradient(circle,transparent 0 48%,#000 49% 58%,transparent 59%);
}
.hero-card .eyebrow{color:var(--teal)}
.hero-card p{color:rgba(23,63,67,.78)!important}
.hero h1 em{color:var(--mustard);font-style:normal}
.handmade-seal{
  position:absolute;z-index:5;right:7%;bottom:9%;width:126px;height:126px;border-radius:50%;display:grid;place-items:center;text-align:center;
  background:rgba(255,253,248,.78);border:1px solid rgba(255,255,255,.75);backdrop-filter:blur(16px);color:var(--ink);
  box-shadow:0 18px 46px rgba(4,38,42,.13);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;
}
.handmade-seal::before{content:"✿";display:block;color:var(--mustard);font-size:1.75rem;line-height:1;margin-bottom:5px}
.handmade-seal span{display:block;max-width:90px}

/* Ethnic dividers and signature strip */
.ethnic-divider{display:flex;align-items:center;gap:14px;color:var(--mustard);opacity:.7;margin:0 auto 25px;max-width:360px}
.ethnic-divider::before,.ethnic-divider::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--mustard),transparent)}
.signature-strip{padding:20px 0;border-block:1px solid var(--line);background:rgba(255,253,248,.62);backdrop-filter:blur(8px)}
.signature-strip-inner{display:flex;align-items:center;justify-content:center;gap:26px;flex-wrap:wrap;text-transform:uppercase;letter-spacing:.13em;font-size:.69rem;font-weight:850;color:var(--ink2)}
.signature-strip-inner i{font-style:normal;color:var(--mustard);font-size:1.05rem}

/* Category cards: softer, premium, translucent label */
.category-card{border:1px solid rgba(255,255,255,.7);box-shadow:var(--soft-shadow)}
.category-card::before{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.24);border-radius:21px;z-index:1;pointer-events:none}
.category-label{background:rgba(6,47,51,.58);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(12px);padding:13px 14px;border-radius:18px}

/* Product cards — editorial ecommerce */
.woocommerce ul.products li.product{
  position:relative;background:rgba(255,255,255,.82)!important;border-color:rgba(23,63,67,.10)!important;
  backdrop-filter:blur(10px);box-shadow:0 16px 48px rgba(12,54,58,.075)!important;
}
.woocommerce ul.products li.product>a.woocommerce-LoopProduct-link{display:block;overflow:hidden}
.woocommerce ul.products li.product img{transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease!important}
.woocommerce ul.products li.product:hover img{transform:scale(1.035);filter:saturate(1.04)}
.woocommerce ul.products li.product .button{box-shadow:0 10px 26px rgba(8,116,124,.16);transition:.2s ease!important}
.woocommerce ul.products li.product .button:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(8,116,124,.23)}
.sousourada-new-badge{
  position:absolute;z-index:7;left:14px;top:14px;background:rgba(8,116,124,.90);color:#fff;border:1px solid rgba(255,255,255,.55);
  backdrop-filter:blur(8px);border-radius:999px;padding:8px 11px;font-size:.62rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;
}

/* Story / editorial — frosted folk paper */
.story-copy{background:linear-gradient(145deg,rgba(5,93,100,.95),rgba(5,63,68,.96))!important;isolation:isolate}
.story-copy::after{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,.12);border-radius:22px;pointer-events:none}
.editorial-card .glass{background:rgba(255,253,248,.80)!important;box-shadow:0 18px 48px rgba(5,47,51,.10)}

/* Newsletter: jewel-like gradient with ornamental edge */
.newsletter{position:relative;overflow:hidden;background:linear-gradient(112deg,#064e54,#08747c 58%,#0b838a)!important}
.newsletter::before,.newsletter::after{content:"✿ ✦ ✿ ✦ ✿";position:absolute;color:rgba(255,210,122,.17);font-size:3rem;letter-spacing:.45em;white-space:nowrap}
.newsletter::before{left:-30px;top:-28px}.newsletter::after{right:-50px;bottom:-35px;transform:rotate(180deg)}
.newsletter-inner{position:relative;z-index:2}
.newsletter-form{box-shadow:0 16px 42px rgba(0,0,0,.13)}

/* Footer: more refined and ethnic */
.site-footer{position:relative;overflow:hidden;background:linear-gradient(145deg,#052f33,#073f44)!important}
.site-footer::before{content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;opacity:.09;background:repeating-conic-gradient(#fff 0 4deg,transparent 4deg 13deg)}
.footer-grid,.footer-bottom{position:relative;z-index:2}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.footer-legal{display:flex;gap:16px;flex-wrap:wrap}

/* My Account — full premium login / register experience */
.woocommerce-account .woocommerce{max-width:1180px}
.account-welcome{
  position:relative;overflow:hidden;margin-bottom:24px;padding:34px 38px;border-radius:28px;
  background:linear-gradient(135deg,rgba(8,116,124,.96),rgba(5,79,85,.96));color:#fff;box-shadow:var(--soft-shadow)
}
.account-welcome::after{content:"✿";position:absolute;right:28px;top:-18px;font-size:9rem;color:rgba(220,151,0,.18)}
.account-welcome .eyebrow{color:#ffd27a}.account-welcome h2{font-size:clamp(2.2rem,4vw,4rem);margin:.12em 0 .2em}.account-welcome p{max-width:690px;color:rgba(255,255,255,.82)}
.woocommerce-account #customer_login{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.woocommerce-account #customer_login::before,.woocommerce-account #customer_login::after{display:none!important}
.woocommerce-account #customer_login .u-column1,.woocommerce-account #customer_login .u-column2{
  width:auto!important;float:none!important;margin:0!important;padding:34px!important;border-radius:28px;
  background:var(--glass-strong);border:1px solid rgba(255,255,255,.72);box-shadow:var(--soft-shadow);backdrop-filter:blur(18px)
}
.woocommerce-account #customer_login h2{font-size:2.35rem;margin:0 0 22px;color:var(--ink)}
.woocommerce-account form.login,.woocommerce-account form.register{border:0!important;padding:0!important;margin:0!important}
.woocommerce-account form .form-row{margin:0 0 16px!important}
.woocommerce-account form label{font-size:.76rem;font-weight:850;letter-spacing:.045em;color:var(--ink2)}
.woocommerce-account form input.input-text{
  width:100%;min-height:52px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.88);padding:0 15px;outline:none;transition:.2s ease
}
.woocommerce-account form input.input-text:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(8,116,124,.09)}
.woocommerce-account .woocommerce-form-login__submit,.woocommerce-account .woocommerce-form-register__submit{
  min-height:50px!important;border-radius:999px!important;background:var(--teal)!important;color:#fff!important;padding:0 24px!important;font-weight:850!important
}
.woocommerce-account .woocommerce-LostPassword a{color:var(--teal);font-weight:700}
.woocommerce-account .woocommerce-MyAccount-navigation{width:28%!important;padding:18px;border-radius:24px;background:rgba(255,255,255,.80);border:1px solid var(--line);box-shadow:var(--soft-shadow)}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:13px 14px;border-radius:13px;font-weight:750;color:var(--muted)}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:rgba(8,116,124,.08);color:var(--teal)}
.woocommerce-account .woocommerce-MyAccount-content{width:68%!important;padding:30px;border-radius:24px;background:rgba(255,255,255,.74);border:1px solid var(--line);box-shadow:var(--soft-shadow)}

/* Checkout & cart — style both classic and Woo blocks */
.woocommerce-checkout .woocommerce,.woocommerce-cart .woocommerce{max-width:1280px}
.wc-block-checkout,.wc-block-cart{font-family:var(--font-body);color:var(--ink)}
.wc-block-components-sidebar-layout .wc-block-components-main,.wc-block-components-sidebar{border-radius:28px}
.wc-block-components-sidebar{background:rgba(255,255,255,.72);border:1px solid var(--line);padding:22px!important;box-shadow:var(--soft-shadow)}
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input{
  border-radius:14px!important;background:rgba(255,255,255,.9)!important;border-color:rgba(23,63,67,.18)!important
}
.wc-block-components-checkout-place-order-button,.wc-block-cart__submit-button{border-radius:999px!important;background:var(--teal)!important;color:#fff!important;border:0!important;min-height:54px!important;font-weight:850!important}
.wc-block-components-radio-control-accordion-option,.wc-block-components-radio-control__option{border-radius:16px!important}

/* Single product gets a transparent paper panel */
.single-product div.product{position:relative}
.single-product div.product::after{content:"";position:absolute;z-index:-1;inset:-24px;border-radius:34px;background:rgba(255,255,255,.34);border:1px solid rgba(255,255,255,.5);backdrop-filter:blur(6px)}

/* Reveal motion */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.slide{transition:none!important}.woocommerce ul.products li.product img{transition:none!important}}

@media(max-width:900px){
  .handmade-seal{display:none}
  .woocommerce-account #customer_login{grid-template-columns:1fr}
  .woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{width:100%!important;float:none!important}
  .woocommerce-account .woocommerce-MyAccount-navigation{margin-bottom:18px}
}
@media(max-width:620px){
  .account-welcome{padding:28px 23px;border-radius:22px}
  .woocommerce-account #customer_login .u-column1,.woocommerce-account #customer_login .u-column2{padding:24px!important;border-radius:22px}
  .signature-strip-inner{gap:12px 18px;font-size:.61rem}
  .hero-card{background:rgba(255,253,248,.83)!important}
  .footer-bottom{flex-direction:column}
}


/* ========================================================================
   SOUSOURADA MINIMAL v3.1 — refined editorial skin
   Keeps all v3 functionality, strips visual noise, adds quiet luxury.
   ===================================================================== */
:root{
  --cream:#f8f5ee;
  --paper:#fffefa;
  --ink:#123f43;
  --ink2:#355d60;
  --teal:#0b6f75;
  --teal-dark:#0a555a;
  --mustard:#c99116;
  --rose:#b54c66;
  --sand:#e7dfd2;
  --line:rgba(18,63,67,.10);
  --muted:#6c7777;
  --shadow:0 18px 50px rgba(25,53,54,.07);
  --radius:20px;
  --max:1360px;
}
body{background:var(--cream);letter-spacing:.005em}
.container{width:min(var(--max),calc(100% - 64px))}
.eyebrow{font-size:.68rem;letter-spacing:.20em;color:var(--teal);font-weight:700}
.btn{min-height:48px;padding:0 24px;border-radius:999px;letter-spacing:.08em;background:var(--ink);border-color:var(--ink);box-shadow:none}
.btn:hover{background:var(--teal);border-color:var(--teal);transform:none}
.btn-light{background:rgba(255,255,255,.92);color:var(--ink);border-color:rgba(255,255,255,.92)}
.btn-ghost{background:transparent;border-color:rgba(18,63,67,.18)}

/* Header: translucent, thin, architectural */
.site-header{position:absolute}
.announcement{min-height:30px;background:rgba(8,79,84,.95);font-size:.70rem;font-weight:600;letter-spacing:.06em}
.header-shell{
  margin-top:18px;min-height:76px;padding:8px 18px;
  border-radius:18px;border:1px solid rgba(255,255,255,.48);
  background:rgba(255,254,250,.84);box-shadow:0 10px 32px rgba(18,63,67,.06);
  backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%)
}
.site-logo{max-height:54px;border-radius:0}
.main-nav ul{gap:28px}.main-nav a{font-size:.70rem;letter-spacing:.095em;font-weight:700}
.icon-link,.icon-button{background:transparent!important;border-color:rgba(18,63,67,.12)!important}

/* Hero: calm, editorial and open */
.hero{height:min(900px,100vh);min-height:720px;background:#284c4e}
.slide{transform:scale(1.005);transition:opacity .9s ease,transform 9s ease}
.slide.active{transform:scale(1.045)}
.slide:after{background:linear-gradient(90deg,rgba(10,48,50,.50) 0%,rgba(10,48,50,.22) 40%,rgba(10,48,50,.05) 72%,rgba(10,48,50,.02) 100%)}
.hero-content{align-items:flex-end;padding-top:150px;padding-bottom:92px}
.hero-card{
  width:min(590px,55vw);padding:34px 36px 38px;border-radius:20px;
  background:rgba(255,254,250,.78);color:var(--ink);
  border:1px solid rgba(255,255,255,.52);box-shadow:0 26px 70px rgba(9,44,46,.12);
  backdrop-filter:blur(18px) saturate(105%);-webkit-backdrop-filter:blur(18px) saturate(105%)
}
.hero .eyebrow{color:var(--teal)}
.hero h1{font-size:clamp(3.2rem,6.6vw,6.8rem);margin:.08em 0 .15em;letter-spacing:-.045em;color:var(--ink)}
.hero p{max-width:510px;font-size:1rem;color:var(--ink2)}
.hero-actions{margin-top:24px}
.handmade-seal,.trustbar,.signature-strip,.ethnic-divider{display:none!important}
.slider-arrow{width:42px;height:42px;background:rgba(255,254,250,.72);color:var(--ink);border-color:rgba(255,255,255,.72);box-shadow:none}
.slider-nav{bottom:26px;background:rgba(255,254,250,.68);padding:7px 9px}
.dot{width:7px;height:7px;background:rgba(18,63,67,.25)}.dot.active{background:var(--ink)}

/* Sections */
.section{padding:110px 0}
.section-head{margin-bottom:42px;align-items:end}
.section-head h2{font-size:clamp(2.4rem,4.2vw,4.6rem);letter-spacing:-.025em;margin:.08em 0 0}
.section-lead{max-width:500px;font-size:.95rem;line-height:1.75}
.featured-bg{background:rgba(255,254,250,.56);border-block:1px solid var(--line)}

/* Categories: image-first, almost gallery-like */
.category-grid{gap:22px}
.category-card{min-height:500px;border-radius:16px;box-shadow:none;border:1px solid rgba(18,63,67,.08)}
.category-card:after{background:linear-gradient(180deg,transparent 58%,rgba(10,51,53,.58))}
.category-card:hover img{transform:scale(1.025)}
.category-label{left:22px;right:22px;bottom:22px}
.category-label span{font-size:1.45rem}.category-label b{width:34px;height:34px;background:rgba(255,255,255,.12)}

/* Products: quiet luxury cards */
.woocommerce ul.products{gap:24px!important}
.woocommerce ul.products li.product{
  border:0;border-radius:0;background:transparent;box-shadow:none!important;padding-bottom:26px!important;overflow:visible
}
.woocommerce ul.products li.product a img{
  border-radius:16px;margin-bottom:18px!important;aspect-ratio:4/5;object-fit:cover;
  box-shadow:none;border:1px solid rgba(18,63,67,.07);transition:transform .35s ease,box-shadow .35s ease
}
.woocommerce ul.products li.product:hover a img{transform:translateY(-3px);box-shadow:0 18px 46px rgba(22,51,52,.09)}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .button{margin-left:2px!important;margin-right:2px!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.14rem!important;line-height:1.25;margin-top:0!important}
.woocommerce ul.products li.product .price{font-size:.92rem!important;color:var(--ink2)!important;font-weight:650!important}
.woocommerce ul.products li.product .button{
  background:transparent!important;color:var(--ink)!important;border:0!important;border-bottom:1px solid rgba(18,63,67,.28)!important;
  padding:7px 0!important;border-radius:0!important;display:inline-block!important;font-size:.72rem!important;text-transform:uppercase;letter-spacing:.10em
}
.woocommerce span.onsale{background:var(--paper)!important;color:var(--ink)!important;border:1px solid var(--line);min-height:auto!important;line-height:1!important;padding:9px 10px!important;border-radius:999px!important;font-size:.68rem!important}

/* Story: soft paper editorial, not saturated */
.story-wrap{grid-template-columns:1.05fr .95fr;gap:0;background:var(--paper);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.story-image,.story-copy{border-radius:0;min-height:620px}
.story-copy{padding:68px;background:var(--paper);color:var(--ink)}
.story-copy:before{content:"✦";font-size:3.5rem;color:rgba(201,145,22,.20);right:42px;top:34px}
.story-copy .eyebrow{color:var(--teal)}
.story-copy h2{font-size:clamp(3rem,5vw,5.4rem);letter-spacing:-.035em;margin:.10em 0 .28em}
.story-copy p{color:var(--muted);line-height:1.8}
.story-copy .btn-light{background:var(--ink);color:#fff;border-color:var(--ink)}

/* Editorial: keep one wide fashion image, hide duplicate */
.editorial{grid-template-columns:1fr;margin-top:24px}
.editorial-card{min-height:560px;border-radius:18px}
.editorial-card:nth-child(2){display:none}
.editorial-card .glass{left:28px;right:auto;bottom:28px;max-width:520px;padding:26px 28px;border-radius:16px;background:rgba(255,254,250,.82);box-shadow:none}
.editorial-card h3{font-size:2.2rem;letter-spacing:-.02em}

/* Instagram: restrained grid */
.insta-grid{gap:14px}.insta-grid a{border-radius:14px}

/* Newsletter */
.newsletter{padding:78px 0;background:var(--ink);border-top:1px solid rgba(255,255,255,.08)}
.newsletter h2{letter-spacing:-.025em}
.newsletter-form input{border-radius:999px;background:rgba(255,255,255,.98)}

/* Footer / generic pages */
.site-footer{background:#102f32!important}
.page-shell,.woocommerce-page main{background:var(--cream)}

/* Product page polish */
.single-product div.product{gap:58px!important}
.single-product .woocommerce-product-gallery{background:transparent!important}
.single-product .woocommerce-product-gallery__image img{border-radius:18px!important}
.single-product div.product .summary h1{font-size:clamp(2.5rem,4vw,4.7rem)!important;letter-spacing:-.03em!important}
.single-product div.product .summary .price{font-size:1.15rem!important}
.single-product .single_add_to_cart_button{background:var(--ink)!important;border-radius:999px!important;min-height:52px!important}

/* Account / Checkout: slim and elegant */
.woocommerce form.login,.woocommerce form.register,.woocommerce form.checkout,.woocommerce-account .woocommerce-MyAccount-content{
  background:var(--paper)!important;border:1px solid var(--line)!important;border-radius:18px!important;box-shadow:none!important
}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{
  border:1px solid rgba(18,63,67,.16)!important;border-radius:12px!important;background:#fff!important;min-height:48px!important
}

@media (max-width:980px){
  .container{width:min(100% - 34px,var(--max))}
  .header-shell{width:calc(100% - 28px);grid-template-columns:auto 1fr auto;min-height:68px;border-radius:16px}
  .hero{min-height:680px;height:88vh}
  .hero-content{padding-bottom:62px}
  .hero-card{width:min(590px,calc(100vw - 44px));padding:28px}
  .category-grid{grid-template-columns:repeat(2,1fr)}
  .category-card{min-height:430px}
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}
  .story-wrap{grid-template-columns:1fr}.story-image,.story-copy{min-height:auto}.story-image{height:520px}.story-copy{padding:46px}
}
@media (max-width:640px){
  .container{width:calc(100% - 28px)}
  .announcement{font-size:.64rem}
  .header-shell{margin-top:10px}
  .hero{min-height:650px;height:84vh}
  .hero-content{align-items:flex-end;padding-bottom:48px}
  .hero-card{padding:24px 22px;border-radius:16px}
  .hero h1{font-size:clamp(3rem,15vw,4.8rem)}
  .hero p{font-size:.92rem}
  .slider-arrow{display:none}
  .section{padding:76px 0}.section-head{display:block;margin-bottom:28px}.section-lead{margin-top:14px}
  .category-grid{grid-template-columns:1fr 1fr;gap:10px}.category-card{min-height:310px;border-radius:12px}.category-label{left:14px;right:14px;bottom:14px}.category-label span{font-size:1.12rem}
  .woocommerce ul.products{gap:14px!important}.woocommerce ul.products li.product a img{border-radius:12px}
  .story-image{height:400px}.story-copy{padding:34px 26px}.story-copy h2{font-size:3.3rem}
  .editorial-card{min-height:440px}.editorial-card .glass{left:16px;right:16px;bottom:16px}
  .insta-grid{grid-template-columns:repeat(2,1fr)}
}


/* ==========================================================================
   SOUSOURADA MINIMAL v3.2 — BOUTIQUE REFINEMENT
   ========================================================================== */
:root{
  --story-teal:#2f8b91;
  --story-teal-deep:#24747a;
  --ivory:#fff8e9;
}

/* quieter, more editorial header */
.header-shell{
  min-height:78px;
  margin-top:10px;
  padding:8px 18px;
  border-radius:22px;
  background:rgba(255,253,248,.76);
  border-color:rgba(255,255,255,.72);
  box-shadow:0 12px 38px rgba(8,46,51,.08);
  backdrop-filter:blur(20px) saturate(135%);
  -webkit-backdrop-filter:blur(20px) saturate(135%);
}
.site-logo{max-height:60px;max-width:205px}
.site-header.scrolled .header-shell{min-height:66px;background:rgba(255,253,248,.92)}
.site-header.scrolled .site-logo{max-height:48px}
.main-nav a{font-size:.70rem;letter-spacing:.07em}

/* hero: lighter glass, less typographic weight */
.hero-card{
  background:rgba(255,251,243,.76)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 24px 64px rgba(13,45,48,.12)!important;
  backdrop-filter:blur(18px) saturate(118%);
  -webkit-backdrop-filter:blur(18px) saturate(118%);
}
.hero h1{font-size:clamp(3.5rem,6.2vw,6.35rem)!important;line-height:.93!important}
.hero-card p{max-width:610px}
.handmade-seal{opacity:.28!important}
.ethnic-divider{opacity:.42}

/* category section: premium spacing and quieter decoration */
.section-head h2{font-size:clamp(2.2rem,3.6vw,3.55rem)}
.category-card{box-shadow:0 18px 46px rgba(23,63,67,.09)}
.category-card:before{opacity:.18!important}
.category-card:hover{transform:translateY(-3px)}
.category-card{transition:transform .35s ease,box-shadow .35s ease}

/* recent products: adaptive elegant layout */
.featured-bg .woocommerce ul.products{justify-content:start}
.featured-bg .woocommerce ul.products:has(> li.product:only-child){
  grid-template-columns:minmax(260px,340px)!important;
  justify-content:center!important;
}
.featured-bg .woocommerce ul.products:has(> li.product:nth-child(2):last-child){
  grid-template-columns:repeat(2,minmax(260px,340px))!important;
  justify-content:center!important;
}
.featured-bg .woocommerce ul.products:has(> li.product:nth-child(3):last-child){
  grid-template-columns:repeat(3,minmax(240px,1fr))!important;
}
.woocommerce ul.products li.product{
  border:0!important;
  border-radius:20px!important;
  box-shadow:none!important;
  background:transparent!important;
  overflow:visible!important;
  transition:transform .3s ease;
}
.woocommerce ul.products li.product:hover{transform:translateY(-4px)}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:block;position:relative}
.woocommerce ul.products li.product img{
  border-radius:20px!important;
  box-shadow:0 14px 35px rgba(23,63,67,.08);
  transition:opacity .35s ease,transform .45s ease!important;
}
.woocommerce ul.products li.product:hover img{transform:scale(1.012)}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price{margin-left:4px!important;margin-right:4px!important}
.woocommerce ul.products li.product .button{
  margin-left:4px!important;margin-right:4px!important;
  opacity:0;transform:translateY(6px);transition:.25s ease!important;
}
.woocommerce ul.products li.product:hover .button{opacity:1;transform:none}
.sousourada-loop-second-image{
  position:absolute;inset:0 0 auto 0;width:100%;height:auto;aspect-ratio:1/1.12;
  object-fit:cover;border-radius:20px;opacity:0;z-index:2;transition:opacity .38s ease!important;
  box-shadow:0 14px 35px rgba(23,63,67,.08)
}
.woocommerce ul.products li.product:hover .sousourada-loop-second-image{opacity:1}

/* story: brighter Mediterranean teal with ivory typography */
.story-wrap{gap:0;border-radius:30px;overflow:hidden;box-shadow:0 20px 58px rgba(13,62,67,.09)}
.story-image,.story-copy{border-radius:0;min-height:520px}
.story-image img{filter:brightness(1.06) saturate(.96)}
.story-copy{
  background:linear-gradient(145deg,var(--story-teal),var(--story-teal-deep))!important;
  color:var(--ivory)!important;
  padding:58px 64px!important;
}
.story-copy .eyebrow{color:#f4c96b!important}
.story-copy h2{color:var(--ivory)!important;text-shadow:0 1px 0 rgba(0,0,0,.02)}
.story-copy p{color:rgba(255,248,233,.92)!important;line-height:1.8}
.story-copy:before{color:rgba(255,218,133,.22)!important;font-size:5.8rem!important}
.story-copy .btn-light{background:#fff5dd!important;color:var(--ink)!important;border-color:rgba(255,255,255,.45)!important}

/* one controlled editorial campaign banner */
.editorial{grid-template-columns:1fr!important;margin-top:28px!important}
.editorial-card{min-height:340px!important;max-height:430px!important}
.editorial-card:nth-child(2){display:none!important}
.editorial-card img{object-position:center 44%;filter:saturate(.94)}
.editorial-card .glass{
  left:32px!important;right:auto!important;bottom:32px!important;
  max-width:560px;padding:26px 30px!important;
  background:rgba(255,253,248,.78)!important;
  backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;
  box-shadow:0 16px 42px rgba(20,55,57,.08)
}
.editorial-card h3{font-size:clamp(1.9rem,3vw,3rem)!important}

/* Instagram / newsletter / footer refinements */
.insta-grid{gap:14px}
.insta-grid a{border-radius:16px;box-shadow:0 10px 28px rgba(23,63,67,.06)}
.newsletter{padding:52px 0!important;background:linear-gradient(110deg,#277d84,#0e6970)!important}
.newsletter h2{font-size:clamp(2.1rem,3.5vw,3.35rem)!important}
.site-footer{padding-top:50px!important;background:#083b3f!important}
.footer-grid{gap:34px!important}
.footer-logo{max-width:205px!important}

/* mobile refinement */
@media(max-width:980px){
  .story-wrap{grid-template-columns:1fr!important}
  .story-image,.story-copy{min-height:420px}
  .story-copy{padding:44px 38px!important}
}
@media(max-width:620px){
  .hero h1{font-size:3.15rem!important}
  .featured-bg .woocommerce ul.products,
  .featured-bg .woocommerce ul.products:has(> li.product:only-child),
  .featured-bg .woocommerce ul.products:has(> li.product:nth-child(2):last-child),
  .featured-bg .woocommerce ul.products:has(> li.product:nth-child(3):last-child){
    grid-template-columns:1fr 1fr!important;justify-content:stretch!important
  }
  .featured-bg .woocommerce ul.products:has(> li.product:only-child){grid-template-columns:minmax(0,1fr)!important}
  .woocommerce ul.products li.product .button{opacity:1;transform:none}
  .story-copy{padding:34px 26px!important}
  .editorial-card{min-height:300px!important}
  .editorial-card .glass{left:16px!important;right:16px!important;bottom:16px!important;max-width:none}
  .newsletter{padding:42px 0!important}
}


/* ==========================================================================
   SOUSOURADA MINIMAL v3.3 — PREMIUM SHOPPING UX
   ========================================================================== */

/* Product hover: second gallery image becomes the editorial reveal. */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  position:relative;
  isolation:isolate;
}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link > img:not(.sousourada-loop-second-image){
  position:relative;
  z-index:1;
}
.woocommerce ul.products li.product .sousourada-loop-second-image{
  z-index:2;
  pointer-events:none;
  background:var(--paper);
}
@media (hover:hover) and (pointer:fine){
  .woocommerce ul.products li.product:hover .sousourada-loop-second-image{opacity:1!important}
}
@media (hover:none){
  .woocommerce ul.products li.product .sousourada-loop-second-image{display:none!important}
}

/* Mini cart drawer */
.mini-cart-backdrop{
  position:fixed;inset:0;z-index:1390;
  background:rgba(7,38,41,.38);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  opacity:0;visibility:hidden;
  transition:opacity .25s ease,visibility .25s ease;
}
.mini-cart-backdrop.open{opacity:1;visibility:visible}
.mini-cart-drawer{
  position:fixed;z-index:1400;
  top:0;right:0;bottom:0;
  width:min(430px,92vw);
  padding:24px 26px 30px;
  background:rgba(255,253,248,.96);
  color:var(--ink);
  box-shadow:-22px 0 70px rgba(5,47,51,.18);
  backdrop-filter:blur(22px) saturate(125%);
  -webkit-backdrop-filter:blur(22px) saturate(125%);
  transform:translateX(105%);
  transition:transform .32s cubic-bezier(.22,.75,.24,1);
  overflow-y:auto;
}
.mini-cart-drawer.open{transform:translateX(0)}
.mini-cart-head{
  display:flex;align-items:center;justify-content:space-between;
  gap:18px;padding:2px 0 20px;margin-bottom:20px;
  border-bottom:1px solid var(--line);
}
.mini-cart-head-text .eyebrow{margin-bottom:5px}
.mini-cart-head h2{font-size:2rem;margin:0;line-height:1}
.mini-cart-content .woocommerce-mini-cart{list-style:none;margin:0;padding:0}
.mini-cart-content .woocommerce-mini-cart-item{
  position:relative;display:grid!important;
  grid-template-columns:82px 1fr;column-gap:14px;
  min-height:102px;padding:0 28px 18px 0!important;margin:0 0 18px!important;
  border-bottom:1px solid var(--line);
}
.mini-cart-content .woocommerce-mini-cart-item > a:not(.remove){
  display:grid;grid-template-columns:82px 1fr;gap:14px;
  align-items:start;font-family:var(--font-heading);font-size:1rem;line-height:1.25;
}
.mini-cart-content .woocommerce-mini-cart-item img{
  width:82px!important;height:94px!important;object-fit:cover;
  border-radius:14px;margin:0!important;float:none!important;
  grid-column:1;
}
.mini-cart-content .woocommerce-mini-cart-item .quantity{
  grid-column:2;display:block;margin-top:-42px;
  color:var(--muted);font-size:.82rem;
}
.mini-cart-content .remove_from_cart_button{
  position:absolute!important;right:0;top:0;
  width:24px;height:24px;border-radius:50%;
  display:grid!important;place-items:center;
  color:var(--muted)!important;background:transparent!important;
  border:1px solid var(--line);font-size:16px!important;line-height:1!important;
}
.mini-cart-content .remove_from_cart_button:hover{color:#fff!important;background:var(--teal)!important}
.mini-cart-content .woocommerce-mini-cart__total{
  display:flex;justify-content:space-between;align-items:center;
  gap:14px;padding:18px 0 12px!important;margin:0!important;
  border-top:0!important;font-size:1rem;
}
.mini-cart-content .woocommerce-mini-cart__total strong{font-family:var(--font-heading);font-size:1.3rem}
.mini-cart-content .woocommerce-mini-cart__buttons{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 0!important;
}
.mini-cart-content .woocommerce-mini-cart__buttons .button{
  margin:0!important;min-height:48px;display:grid!important;place-items:center;
  border-radius:999px!important;text-align:center;font-size:.74rem!important;
  text-transform:uppercase;letter-spacing:.07em;font-weight:800!important;
  background:transparent!important;color:var(--ink)!important;border:1px solid var(--line)!important;
}
.mini-cart-content .woocommerce-mini-cart__buttons .checkout{
  background:var(--teal)!important;color:#fff!important;border-color:var(--teal)!important;
}
.mini-cart-content .woocommerce-mini-cart__empty-message{
  padding:54px 12px;text-align:center;color:var(--muted);
  font-family:var(--font-heading);font-size:1.35rem;
}

/* Mobile sticky add-to-cart */
.sousourada-mobile-sticky-cart{display:none}
@media (max-width:760px){
  body.single-product{padding-bottom:92px}
  .sousourada-mobile-sticky-cart{
    position:fixed;z-index:1150;
    left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));
    display:grid;grid-template-columns:50px minmax(0,1fr) auto;
    align-items:center;gap:10px;
    padding:8px 9px 8px 8px;
    border:1px solid rgba(255,255,255,.72);
    border-radius:20px;
    background:rgba(255,253,248,.93);
    box-shadow:0 18px 50px rgba(7,45,49,.18);
    backdrop-filter:blur(18px) saturate(130%);
    -webkit-backdrop-filter:blur(18px) saturate(130%);
    transform:translateY(0);opacity:1;
    transition:opacity .2s ease,transform .2s ease;
  }
  .sousourada-mobile-sticky-cart.is-hidden{
    opacity:0;pointer-events:none;transform:translateY(115%);
  }
  .sousourada-mobile-sticky-cart img{
    width:50px;height:58px;object-fit:cover;border-radius:13px;
  }
  .mobile-sticky-product-info{min-width:0}
  .mobile-sticky-product-name{
    display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    font-family:var(--font-heading);font-size:.9rem;line-height:1.15;color:var(--ink);
  }
  .mobile-sticky-product-price{display:block;margin-top:3px;font-size:.78rem;color:var(--teal);font-weight:800}
  .mobile-sticky-product-price del{opacity:.55;margin-right:4px}
  .mobile-sticky-product-price ins{text-decoration:none}
  .mobile-sticky-add-button{
    min-height:44px;padding:0 16px;border:0;border-radius:999px;
    background:var(--teal);color:#fff;font-size:.68rem;font-weight:850;
    text-transform:uppercase;letter-spacing:.055em;white-space:nowrap;cursor:pointer;
  }
}
@media (max-width:420px){
  .sousourada-mobile-sticky-cart{grid-template-columns:44px minmax(0,1fr) auto}
  .sousourada-mobile-sticky-cart img{width:44px;height:51px}
  .mobile-sticky-add-button{padding:0 12px;font-size:.62rem}
}


/* =========================================================
   v3.4 — Designer credit
   A discreet signature line at the very bottom of the footer.
========================================================= */
.site-credit{
  width:100%;
  margin-top:20px;
  padding-top:17px;
  border-top:1px solid rgba(255,255,255,.09);
  text-align:center;
  font-size:10.5px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:.48;
  transition:opacity .28s ease, letter-spacing .28s ease;
}
.site-credit strong{
  font-weight:600;
}
.site-credit:hover{
  opacity:.82;
  letter-spacing:.185em;
}
@media (max-width:640px){
  .site-credit{
    margin-top:17px;
    padding-top:15px;
    font-size:9.5px;
    letter-spacing:.13em;
  }
}
