/* ==========================================================
   HÉCATE V7.0 — PREMIUM STOREFRONT REFRESH
   Keeps the existing brand, logo and mystery-box photography.
   ========================================================== */
:root{
  --v7-ink:#181219;
  --v7-night:#171019;
  --v7-night-2:#241827;
  --v7-plum:#4d3556;
  --v7-violet:#765883;
  --v7-violet-2:#9a78aa;
  --v7-lilac:#c7b0cf;
  --v7-paper:#f3ede5;
  --v7-paper-2:#fbf8f3;
  --v7-paper-3:#e8ddd2;
  --v7-gold:#b38a5d;
  --v7-line:rgba(31,21,32,.12);
  --v7-soft-shadow:0 22px 70px rgba(40,24,44,.09);
  --v7-deep-shadow:0 28px 90px rgba(15,8,18,.22);
  --v7-radius:28px;
  --v7-radius-sm:18px;
  --v7-max:1440px;
}

html{scroll-padding-top:110px}
body{
  overflow-x:hidden;
  background:
    radial-gradient(circle at 8% 4%,rgba(118,88,131,.10),transparent 28%),
    radial-gradient(circle at 91% 34%,rgba(179,138,93,.07),transparent 24%),
    linear-gradient(180deg,var(--v7-paper-2),var(--v7-paper) 46%,#eee6dd);
  color:var(--v7-ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.announcement,
.category-announcement{
  min-height:32px;
  padding:7px 18px;
  background:#100b12;
  color:rgba(255,255,255,.84);
  border-bottom:1px solid rgba(255,255,255,.06);
  letter-spacing:.16em;
  font-size:8px;
}

.site-header,.top{
  min-height:86px!important;
  height:auto!important;
  padding:10px clamp(18px,4vw,64px)!important;
  background:rgba(250,246,240,.86)!important;
  border-bottom:1px solid rgba(31,21,32,.09)!important;
  backdrop-filter:blur(24px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(24px) saturate(1.08)!important;
  box-shadow:0 8px 30px rgba(36,24,39,.035);
}

.brand,.footer-brand{gap:14px!important}
.site-header .brand-logo,.top .brand-logo{
  width:58px!important;
  height:58px!important;
  flex:0 0 58px!important;
  background:#110c13!important;
  border-radius:50%!important;
  box-shadow:0 0 0 1px rgba(118,88,131,.19),0 0 0 5px rgba(118,88,131,.045),0 10px 26px rgba(36,24,39,.09)!important;
}
.site-header .brand-logo img,.top .brand-logo img{object-fit:contain!important}
.brand strong{font-size:12px!important;letter-spacing:.01em!important}
.brand small{font-size:7px!important;letter-spacing:.17em!important;opacity:.48!important}

.desktop-nav,.top .nav{
  gap:clamp(12px,1.8vw,28px)!important;
  font-size:11px!important;
  font-weight:600!important;
}
.desktop-nav a,.top .nav a{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  color:rgba(24,18,25,.72);
  transition:color .2s ease;
}
.desktop-nav a:hover,.top .nav a:hover{color:var(--v7-plum);text-decoration:none!important}
.desktop-nav a:after,.top .nav a:after{bottom:4px!important;background:var(--v7-violet)!important}

.header-actions{align-items:center!important;gap:8px!important}
.icon-btn,.bag-btn,.category-cart-btn,.header-actions a{
  min-height:42px!important;
  border-radius:999px!important;
  border:1px solid rgba(31,21,32,.12)!important;
  background:rgba(255,255,255,.55)!important;
  color:var(--v7-ink)!important;
  box-shadow:none!important;
  font-size:9px!important;
}
.bag-btn,.category-cart-btn{font-weight:700!important}
.admin-access-btn,.header-actions .admin{color:rgba(24,18,25,.52)!important;background:transparent!important;border-color:rgba(31,21,32,.08)!important}

/* Homepage hero */
.hero{
  width:min(calc(100% - 36px),var(--v7-max));
  min-height:700px!important;
  margin:24px auto 0;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;
  border:1px solid rgba(31,21,32,.08)!important;
  border-radius:36px;
  overflow:hidden;
  background:var(--v7-paper-2);
  box-shadow:var(--v7-soft-shadow);
}
.hero-copy{
  padding:clamp(54px,7vw,110px) clamp(28px,5vw,78px)!important;
  background:
    radial-gradient(circle at 8% 10%,rgba(118,88,131,.09),transparent 28%),
    linear-gradient(rgba(31,21,32,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(31,21,32,.025) 1px,transparent 1px),
    var(--v7-paper-2)!important;
  background-size:auto,42px 42px,42px 42px,auto!important;
}
.hero-copy:after{opacity:.55}
.hero-brand-logo{width:min(340px,68%);margin:16px 0 6px}
.hero-brand-logo img{filter:none!important}
.hero h1{
  max-width:660px;
  margin:16px 0 18px!important;
  font-size:clamp(50px,5.6vw,84px)!important;
  line-height:.91!important;
  letter-spacing:-.045em!important;
}
.hero h1 em{color:var(--v7-violet)!important}
.hero-copy>p{font-size:13px!important;line-height:1.85!important;color:rgba(24,18,25,.62)!important;max-width:590px!important}
.eyebrow{font-size:8px!important;letter-spacing:.19em!important;color:rgba(77,53,86,.72)}
.primary-btn{
  min-height:52px!important;
  padding:0 22px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(100deg,#251829,var(--v7-plum))!important;
  color:white!important;
  box-shadow:0 14px 30px rgba(49,31,54,.16)!important;
  font-size:10px!important;
}
.primary-btn:hover{transform:translateY(-2px)!important;box-shadow:0 18px 36px rgba(49,31,54,.20)!important}
.text-link{border-bottom-color:rgba(24,18,25,.32)!important;font-size:10px!important}
.hero-proof{margin-top:22px!important;gap:10px!important}
.hero-proof span{
  padding:8px 11px;
  border:1px solid rgba(31,21,32,.09);
  border-radius:999px;
  background:rgba(255,255,255,.52);
  font-size:8px;
}
.moon-phases{opacity:.48!important;margin-top:28px!important}
.hero-visual{min-height:700px!important;background:#211725!important}
.hero-visual>img{filter:saturate(.92) contrast(1.02)!important}
.hero-visual .veil{background:linear-gradient(180deg,rgba(15,9,17,.03) 20%,rgba(15,9,17,.46))!important}
.hero-card{
  left:24px!important;bottom:24px!important;
  border-radius:18px!important;
  background:rgba(250,246,240,.88)!important;
  border:1px solid rgba(255,255,255,.6)!important;
}
.rd-signature{display:none!important}

.incantation-strip{margin-top:24px;background:#1b121e!important;padding:13px 0!important}
.incantation-strip div{font-size:8px!important;gap:24px!important;opacity:.9}

.shop-intro,.product-showcase,.custom-order,.category-banner,.bookmark-feature,.story,.rd-block,.faq,.newsletter,.mystery-box-home{
  width:min(calc(100% - 36px),var(--v7-max));
  margin-left:auto!important;
  margin-right:auto!important;
}
.shop-intro{padding:92px 0 32px!important}
.shop-intro>div{max-width:760px}
.shop-intro h2,.mystery-box-home h2,.custom-order h2,.category-banner h2,.bookmark-feature h2,.story h2,.rd-block h2,.faq h2,.newsletter h2{
  font-size:clamp(42px,5vw,70px)!important;
  line-height:.96!important;
  letter-spacing:-.04em!important;
}
.home-selection-copy{max-width:640px;font-size:12px!important;line-height:1.8!important;color:rgba(24,18,25,.58)}

.product-showcase{padding:0 0 100px!important}
.product-grid{gap:18px!important}
.product-card{
  padding:10px;
  border:1px solid rgba(31,21,32,.08);
  border-radius:26px;
  background:rgba(252,249,245,.78);
  box-shadow:0 16px 50px rgba(41,25,45,.055);
  overflow:hidden;
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.product-card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(41,25,45,.11);border-color:rgba(118,88,131,.20)}
.product-image-wrap,.product-image,.bookmark-wrap{border-radius:18px!important;overflow:hidden!important;background:#e4d8cd!important}
.product-image-wrap{aspect-ratio:4/5!important}
.product-image-wrap img,.product-image img{height:100%!important;object-fit:cover!important;transition:transform .55s cubic-bezier(.2,.7,.2,1)!important}
.product-card:hover .product-image-wrap>img,.product-card:hover .product-image img{transform:scale(1.035)}
.quick-add{
  left:12px!important;right:12px!important;bottom:12px!important;
  min-height:44px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  border:0!important;border-radius:999px!important;
  background:rgba(24,18,25,.88)!important;color:white!important;
  backdrop-filter:blur(14px)!important;
  font-size:9px!important;font-weight:700!important;
}
.badge{border-radius:999px!important;padding:7px 10px!important;font-size:7px!important;letter-spacing:.12em!important}
.product-meta{padding:16px 7px 8px!important;align-items:flex-start!important}
.product-meta h3{font-size:25px!important;line-height:1!important;margin-bottom:6px!important}
.product-meta p{font-size:9px!important;line-height:1.55!important;color:rgba(24,18,25,.52)!important}
.product-meta strong{padding-top:2px;font-size:10px!important}

.v7-trust-strip{
  width:min(calc(100% - 36px),var(--v7-max));
  margin:0 auto 100px;
  display:grid;grid-template-columns:repeat(3,1fr);
  border:1px solid rgba(31,21,32,.08);
  border-radius:24px;
  background:rgba(252,249,245,.72);
  overflow:hidden;
}
.v7-trust-strip article{padding:24px 26px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;border-right:1px solid rgba(31,21,32,.08)}
.v7-trust-strip article:last-child{border-right:0}
.v7-trust-strip b{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(118,88,131,.09);color:var(--v7-violet)}
.v7-trust-strip strong{display:block;font-family:"Cormorant Garamond",serif;font-size:21px}
.v7-trust-strip span{display:block;margin-top:3px;font-size:8px;line-height:1.5;color:rgba(24,18,25,.50)}

.mystery-box-home{
  display:grid!important;
  grid-template-columns:1.05fr .95fr!important;
  margin-top:0!important;margin-bottom:110px!important;
  border-radius:34px!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#130d15,#2b1c30)!important;
  box-shadow:var(--v7-deep-shadow)!important;
  color:white!important;
}
.mystery-box-home-visual{min-height:620px!important;background:#211725!important}
.mystery-box-photo-wrap{height:100%!important}
.mystery-box-photo{
  width:100%!important;height:100%!important;object-fit:cover!important;
  filter:none!important;
}
.mystery-box-home-copy{padding:clamp(42px,6vw,88px)!important;display:flex;flex-direction:column;justify-content:center}
.mystery-box-home-copy .eyebrow{color:#d8c4df!important}
.mystery-box-home-copy h2{color:white!important}
.mystery-box-home-copy h2 em{color:#c9afd2!important}
.mystery-box-home-copy p,.mystery-box-home-copy li{color:rgba(255,255,255,.68)!important;font-size:10px!important;line-height:1.65!important}
.mystery-box-home-copy ul{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding:0!important;list-style:none!important}
.mystery-box-home-copy li{padding:12px 13px!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:13px!important;background:rgba(255,255,255,.035)!important}
.mystery-home-price{border-top-color:rgba(255,255,255,.12)!important}
.mystery-home-price strong{font-size:34px!important}
.mystery-box-home .primary-btn{background:#f2ebe4!important;color:#181219!important;box-shadow:none!important;align-self:flex-start}

.custom-order{
  margin-bottom:110px!important;
  grid-template-columns:.86fr 1.14fr!important;
  gap:38px!important;
  padding:clamp(34px,5vw,72px)!important;
  border:1px solid rgba(31,21,32,.08)!important;
  border-radius:32px!important;
  background:rgba(252,249,245,.78)!important;
  box-shadow:var(--v7-soft-shadow);
}
.custom-order-copy>p{font-size:11px!important;line-height:1.8!important;color:rgba(24,18,25,.58)!important}
.custom-price{border-radius:18px!important;background:#f0e8df!important;padding:18px!important;border:1px solid rgba(31,21,32,.06)!important}
.custom-examples button{border-radius:999px!important;background:white!important}
.direct-message-card{border-radius:24px!important;overflow:hidden!important;border:1px solid rgba(31,21,32,.10)!important;box-shadow:0 18px 50px rgba(41,25,45,.08)!important}
.dm-header{background:#171019!important;padding:16px 18px!important}
.dm-form input,.dm-form textarea,.reference-field{border-radius:12px!important;background:white!important}

.category-banner,.bookmark-feature,.story,.rd-block{
  margin-bottom:100px!important;
  border-radius:30px!important;
  overflow:hidden!important;
  border:1px solid rgba(31,21,32,.08)!important;
  box-shadow:var(--v7-soft-shadow);
}
.category-banner,.story{background:rgba(252,249,245,.78)!important}
.category-banner-copy,.story-copy{padding:clamp(38px,6vw,80px)!important}
.category-banner-copy p,.bookmark-feature-copy p,.story-copy p,.rd-copy p{font-size:11px!important;line-height:1.8!important;color:rgba(24,18,25,.58)!important}
.bookmark-feature{background:linear-gradient(135deg,#1a121c,#2c1f31)!important;color:white!important;padding:clamp(42px,6vw,82px)!important}
.bookmark-feature-copy p{color:rgba(255,255,255,.62)!important}
.bookmark-feature .eyebrow{color:#d1bdd8!important}
.rd-block{
  background:linear-gradient(130deg,#efe5dc,#f8f4ef)!important;
  color:var(--v7-ink)!important;
  padding:clamp(38px,5vw,72px)!important;
}
.rd-emblem{background:#201523!important;color:#dfc9e5!important}
.rd-copy a{color:var(--v7-violet)!important}

.faq{padding:0 0 110px!important}
.faq .section-heading{margin-bottom:26px!important}
.faq details{
  margin-bottom:10px!important;
  padding:0 22px!important;
  border:1px solid rgba(31,21,32,.08)!important;
  border-radius:18px!important;
  background:rgba(252,249,245,.76)!important;
}
.faq summary{min-height:64px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;font-size:11px!important;font-weight:650!important}
.faq details p{padding-bottom:20px!important;font-size:10px!important;line-height:1.7!important;color:rgba(24,18,25,.58)!important}

.newsletter{
  padding:72px 28px!important;
  margin-bottom:32px!important;
  border-radius:32px!important;
  background:linear-gradient(145deg,#18101a,#2a1b2e)!important;
  color:white!important;
  overflow:hidden;
}
.newsletter .eyebrow{color:#d5c1dc!important}
.newsletter form{max-width:620px!important;margin-left:auto!important;margin-right:auto!important}
.newsletter input{border-radius:999px 0 0 999px!important;border-color:rgba(255,255,255,.16)!important;background:rgba(255,255,255,.08)!important;color:white!important}
.newsletter button{border-radius:0 999px 999px 0!important}

footer{
  margin-top:0!important;
  padding:58px clamp(20px,5vw,72px) 30px!important;
  background:#0f0a11!important;
  color:white!important;
}
footer .brand-logo{width:56px!important;height:56px!important;background:#0b080c!important}
.footer-links{gap:22px!important;font-size:9px!important;color:rgba(255,255,255,.58)!important}
.footer-bottom{border-top-color:rgba(255,255,255,.08)!important;color:rgba(255,255,255,.42)!important}
.made-by b{color:#c5a8ce!important}

/* Cart drawer */
.cart-drawer,.hecate-cart-drawer{
  width:min(440px,94vw)!important;
  background:#f8f3ed!important;
  box-shadow:-28px 0 80px rgba(16,9,18,.24)!important;
}
.cart-top{padding:24px!important;border-bottom:1px solid rgba(31,21,32,.08)!important}
.cart-top h2{font-size:38px!important}
.cart-items{padding:12px 18px!important}
.cart-line{border-radius:16px!important;border:1px solid rgba(31,21,32,.08)!important;background:white!important;padding:10px!important}
.cart-line-image{border-radius:12px!important}
.cart-footer{padding:20px 22px calc(22px + env(safe-area-inset-bottom))!important;background:#f2eae2!important;border-top:1px solid rgba(31,21,32,.08)!important}

/* Category pages */
body[data-type] main,.box-content-section,.box-how,.box-reservation,.custom-shell{max-width:none}
.top{position:sticky!important;top:0!important;z-index:30!important}
.top .brand strong{font-size:12px!important}
.top .brand small{display:block!important}
.category-switch{
  width:min(calc(100% - 36px),var(--v7-max));
  margin:18px auto 0!important;
  padding:8px!important;
  border-radius:999px!important;
  background:#171019!important;
  box-shadow:0 12px 32px rgba(23,16,25,.12);
}
.category-switch a{
  min-height:42px!important;padding:0 17px!important;border:0!important;border-radius:999px!important;
  font-size:9px!important;color:rgba(255,255,255,.64)!important;
}
.category-switch a.active{background:#f7f1eb!important;color:#181219!important}
body[data-type] .hero,
.personnalisation-page .hero{
  margin-top:24px!important;
}
body[data-type] .hero-copy h1{font-size:clamp(52px,6vw,88px)!important}
body[data-type] .hero-visual{min-height:560px!important}
.content{
  width:min(calc(100% - 36px),var(--v7-max));
  margin:0 auto;
  padding:84px 0 110px!important;
}
.section-head h2{font-size:clamp(42px,4.8vw,64px)!important}
.content .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.content .product-card{padding:10px!important}
.content .product-image{aspect-ratio:4/5!important}
.collection-folder-grid{gap:14px!important}
.collection-folder-card{border-radius:22px!important;overflow:hidden!important;border:1px solid rgba(31,21,32,.08)!important;background:white!important}

/* Box page — exact source image retained and shown without filter */
.box-hero{
  width:min(calc(100% - 36px),var(--v7-max));
  min-height:680px!important;
  margin:24px auto 0;
  border-radius:36px!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#120c14,#2a1b2e)!important;
  box-shadow:var(--v7-deep-shadow);
}
.box-hero-copy{padding:clamp(44px,6vw,88px)!important}
.box-hero-copy h1{font-size:clamp(58px,6.7vw,96px)!important}
.box-main-image{filter:none!important;object-fit:cover!important}
.box-hero-visual{min-height:680px!important}
.box-edition-stamp{border-radius:22px!important;backdrop-filter:blur(12px)!important}
.box-primary,.box-secondary,.box-submit{border-radius:999px!important}
.box-content-section,.box-how,.box-reservation{
  width:min(calc(100% - 36px),var(--v7-max));
  margin-left:auto!important;margin-right:auto!important;
}
.box-content-section{padding:100px 0!important}
.box-content-grid{gap:14px!important}
.box-content-grid article{border-radius:22px!important;background:rgba(252,249,245,.74)!important;border:1px solid rgba(31,21,32,.08)!important}
.box-how{margin-bottom:90px!important;border-radius:30px!important;overflow:hidden!important}
.box-reservation{margin-bottom:100px!important;border-radius:30px!important;overflow:hidden!important;border:1px solid rgba(31,21,32,.08)!important}
.box-form input,.box-form textarea,.box-form select{border-radius:12px!important}

/* Personalisation page */
.custom-shell{
  width:min(calc(100% - 36px),var(--v7-max));
  margin:0 auto!important;
  padding:90px 0 110px!important;
  gap:42px!important;
}
.custom-shell .custom-copy{
  padding:34px;
  border:1px solid rgba(31,21,32,.08);
  border-radius:28px;
  background:rgba(252,249,245,.72);
}
.custom-shell .custom-copy h2{font-size:clamp(44px,5vw,64px)!important}
.custom-shell .dm{border-radius:28px!important;overflow:hidden!important;box-shadow:var(--v7-soft-shadow)!important;background:#faf6f1!important}
.custom-shell .dm-head{padding:18px!important;background:#171019!important}
.custom-shell .dm-form{padding:20px!important;display:grid;gap:10px!important}
.custom-shell .dm-form input,.custom-shell .dm-form textarea{margin:0!important;border-radius:12px!important;min-height:48px!important;padding:12px 14px!important}
.custom-shell .dm-form button{border-radius:999px!important;background:linear-gradient(100deg,#251829,var(--v7-plum))!important}

/* reveal motion: subtle, respects reduced motion */
.reveal{transform:translateY(16px)!important;opacity:0!important;transition:opacity .55s ease,transform .55s ease!important}
.reveal.visible{transform:none!important;opacity:1!important}

@media(max-width:1100px){
  .desktop-nav,.top .nav{gap:12px!important;font-size:9px!important}
  .hero{grid-template-columns:1fr 1fr!important}
  .content .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:900px){
  .desktop-nav,.top .nav{display:none!important}
  .hero{grid-template-columns:1fr!important}
  .hero-visual{min-height:520px!important}
  .hero-copy{order:1}.hero-visual{order:2}
  .mystery-box-home{grid-template-columns:1fr!important}
  .mystery-box-home-visual{min-height:520px!important}
  .custom-order{grid-template-columns:1fr!important}
  .v7-trust-strip{grid-template-columns:1fr}
  .v7-trust-strip article{border-right:0;border-bottom:1px solid rgba(31,21,32,.08)}
  .v7-trust-strip article:last-child{border-bottom:0}
  .box-hero{grid-template-columns:1fr!important}
  .box-hero-visual{min-height:540px!important}
  .custom-shell{grid-template-columns:1fr!important}
}

@media(max-width:700px){
  html{scroll-padding-top:78px}
  body{padding-bottom:82px!important}
  .announcement,.category-announcement{font-size:6.5px;gap:7px;min-height:28px;padding:6px 10px;white-space:nowrap;overflow:hidden}
  .site-header,.top{min-height:68px!important;padding:8px 12px!important}
  .site-header .brand-logo,.top .brand-logo{width:46px!important;height:46px!important;flex:0 0 46px!important}
  .brand-copy,.top .brand>span:last-child{min-width:0}
  .brand strong,.top .brand strong{max-width:140px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:9px!important}
  .brand small,.top .brand small{display:none!important}
  .admin-access-btn,.header-actions .admin,.icon-btn{display:none!important}
  .bag-btn,.category-cart-btn{min-height:40px!important;padding:0 12px!important}

  .hero{width:calc(100% - 20px);margin-top:10px;border-radius:26px;min-height:0!important}
  .hero-copy{padding:46px 22px 40px!important}
  .hero-brand-logo{width:74%;margin-top:12px}
  .hero h1{font-size:clamp(46px,13.7vw,62px)!important;line-height:.91!important}
  .hero-copy>p{font-size:11px!important;line-height:1.7!important}
  .hero-cta{align-items:flex-start!important;flex-direction:column!important;gap:16px!important}
  .hero-proof{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
  .hero-proof span{font-size:7px;padding:7px 8px;text-align:center}
  .hero-visual{min-height:430px!important}
  .hero-card{left:12px!important;right:12px!important;bottom:12px!important;min-width:0!important}
  .hero-orbit{display:none!important}

  .incantation-strip{margin-top:10px}
  .shop-intro,.product-showcase,.custom-order,.category-banner,.bookmark-feature,.story,.rd-block,.faq,.newsletter,.mystery-box-home,.v7-trust-strip,
  .content,.category-switch,.box-hero,.box-content-section,.box-how,.box-reservation,.custom-shell{
    width:calc(100% - 20px)!important;
  }
  .shop-intro{padding:64px 4px 24px!important}
  .shop-intro h2,.mystery-box-home h2,.custom-order h2,.category-banner h2,.bookmark-feature h2,.story h2,.rd-block h2,.faq h2,.newsletter h2{font-size:44px!important}
  .product-showcase{padding-bottom:64px!important}
  .product-grid,.content .product-grid{grid-template-columns:1fr!important;gap:14px!important}
  .product-card{border-radius:22px!important}
  .product-image-wrap{aspect-ratio:4/4.8!important}
  .v7-trust-strip{margin-bottom:64px!important}
  .v7-trust-strip article{padding:18px}

  .mystery-box-home{margin-bottom:64px!important;border-radius:26px!important}
  .mystery-box-home-visual{min-height:410px!important}
  .mystery-box-home-copy{padding:32px 22px 36px!important}
  .mystery-box-home-copy ul{grid-template-columns:1fr!important}
  .custom-order{margin-bottom:64px!important;padding:22px!important;border-radius:24px!important}
  .category-banner,.bookmark-feature,.story,.rd-block{margin-bottom:64px!important;border-radius:24px!important}
  .bookmark-feature{padding:32px 22px!important}
  .rd-block{padding:30px 22px!important}
  .faq{padding-bottom:64px!important}
  .newsletter{padding:50px 18px!important;border-radius:24px!important;margin-bottom:10px!important}
  .newsletter form{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .newsletter input,.newsletter button{border-radius:999px!important;min-height:48px!important}

  .category-switch{margin-top:10px!important;border-radius:18px!important;overflow-x:auto!important;display:flex!important;flex-wrap:nowrap!important;padding:7px!important}
  .category-switch a{flex:0 0 auto!important}
  .content{padding:58px 0 72px!important}
  body[data-type] .hero-copy h1{font-size:52px!important}
  body[data-type] .hero-visual{min-height:420px!important}

  .box-hero{margin-top:10px!important;border-radius:26px!important}
  .box-hero-copy{padding:44px 22px 38px!important}
  .box-hero-copy h1{font-size:56px!important}
  .box-hero-visual{min-height:430px!important}
  .box-content-section{padding:64px 0!important}
  .box-content-grid{grid-template-columns:1fr!important}
  .box-how{margin-bottom:64px!important}
  .box-reservation{margin-bottom:64px!important}
  .custom-shell{padding:60px 0 72px!important}
  .custom-shell .custom-copy{padding:24px!important;border-radius:22px!important}
  .custom-shell .dm{border-radius:22px!important}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
  .reveal{opacity:1!important;transform:none!important}
}


/* =====================================================
   V7.0.1 — header public unifié
   Toutes les pages boutique utilisent exactement la même
   échelle typographique que l'accueil.
   ===================================================== */
@media(min-width:1101px){
  html body .site-header .desktop-nav,
  html body .top .category-home-nav{
    font-size:11px!important;
    gap:clamp(12px,1.8vw,28px)!important;
    font-weight:600!important;
  }

  html body .site-header .desktop-nav a,
  html body .top .category-home-nav a{
    font-size:11px!important;
    line-height:1!important;
  }
}

@media(max-width:1100px) and (min-width:901px){
  html body .site-header .desktop-nav,
  html body .top .category-home-nav{
    font-size:9px!important;
    gap:12px!important;
  }

  html body .site-header .desktop-nav a,
  html body .top .category-home-nav a{
    font-size:9px!important;
  }
}
