/*
Theme Name: Vailetta
Author: Daniel
Description: Ropa de mujer para bailar. Marfil, terracota y fotografía cálida, con WooCommerce.
Version: 2.0.2
Requires at least: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: vailetta
*/
:root {
  --paper:#f8f4ed; --ink:#38251f; --muted:#726157; --line:#d9ccbd;
  --terracotta:#9c472f; --soft:#eee4d6; --white:#fffaf3; --page:1320px;
  --serif:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:24px; }
body { margin:0; background:var(--paper); color:var(--ink); font:15px/1.7 "Segoe UI",Arial,Helvetica,sans-serif; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; text-underline-offset:5px; }
img { display:block; max-width:100%; height:auto; }
svg { flex-shrink:0; }
button,input,select,textarea { font:inherit; }
a,button,input,summary { touch-action:manipulation; }
:where(a,button,input,select,textarea,summary):focus-visible { outline:2px solid var(--terracotta); outline-offset:5px; }
.wrap { width:min(calc(100% - 112px),var(--page)); margin-inline:auto; }
.skip { position:fixed; top:-90px; left:16px; z-index:100000; padding:12px 22px; color:var(--white); background:var(--ink); }
.skip:focus { top:8px; }
.launch-note { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:6px max(24px,calc((100% - var(--page))/2)); background:var(--ink); color:var(--white); font-size:10px; letter-spacing:.045em; }
.launch-status { white-space:nowrap; }
.site-header { position:relative; z-index:30; background:var(--paper); border-bottom:1px solid var(--line); }
.header-inner { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; column-gap:32px; }
.brand-caption { font-family:var(--serif); font-style:italic; font-size:15px; }
.wordmark { display:inline-block; font-family:var(--serif); font-size:54px; font-weight:400; line-height:1; letter-spacing:-.06em; white-space:nowrap; }
.wordmark-dot { color:var(--terracotta); margin-left:1px; }
.header-inner>.wordmark { grid-column:2; grid-row:1; padding-block:23px 18px; }
.header-actions { grid-column:3; grid-row:1; display:flex; justify-content:flex-end; align-items:center; gap:28px; font-size:12px; }
.shop-link { display:flex; align-items:center; gap:15px; min-height:44px; }
.shop-link>span { font-size:18px; }
.cart-link { display:flex; align-items:center; justify-content:center; gap:7px; min-width:44px; min-height:44px; }
.cart-count { font-size:11px; }
.main-nav { grid-row:2; grid-column:1/-1; display:flex; align-items:center; justify-content:center; gap:36px; border-top:1px solid var(--line); font-size:12px; }
.main-nav a { min-height:47px; display:flex; align-items:center; position:relative; }
.main-nav a::after { content:""; position:absolute; bottom:8px; height:1px; left:0; right:100%; background:var(--terracotta); transition:right .2s; }
.main-nav a:hover::after,.main-nav a[aria-current]::after { right:0; }
.main-nav a:hover,.main-nav a[aria-current],.shop-link:hover { color:var(--terracotta); }
.mobile-navigation { display:none; }
.hero { position:relative; isolation:isolate; height:clamp(560px,43vw,690px); color:var(--white); background:#653421; }
.hero-photo { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:66% center; }
.hero-shade { position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(38,18,9,.68),rgba(38,18,9,.2) 47%,transparent 66%); }
.hero-inner { height:100%; display:flex; align-items:center; justify-content:space-between; }
.hero-copy { padding-block:24px; max-width:660px; }
.hero-eyebrow,.eyebrow { font-size:10px; font-weight:500; line-height:1.6; letter-spacing:.17em; text-transform:uppercase; }
.hero-eyebrow { display:flex; align-items:center; gap:12px; color:#fff1df; margin:0 0 28px; }
.hero-eyebrow>span { width:28px; height:1px; background:currentColor; }
.hero h1 { margin:0 0 23px; font:400 clamp(60px,5.3vw,88px)/1.06 var(--serif); letter-spacing:-.055em; }
em { font-weight:400; }
.hero-description { font-size:15px; line-height:1.7; letter-spacing:.02em; margin:0 0 30px; }
.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button {
  display:inline-flex; align-items:center; justify-content:space-between; gap:32px; min-height:50px;
  padding:13px 22px; border:1px solid var(--terracotta); border-radius:0; background:var(--terracotta); color:var(--white);
  font:500 12px/1.5 "Segoe UI",Arial,sans-serif; letter-spacing:.03em; cursor:pointer; transition:background .2s,color .2s,border-color .2s;
}
.button>span { font-size:21px; line-height:1; }
.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover { background:#743221; border-color:#743221; color:white; }
.button-light { background:var(--paper); border-color:var(--paper); color:var(--ink); min-width:225px; }
.button-light:hover { background:#eee2d2; border-color:#eee2d2; color:var(--ink); }
.hero :focus-visible { outline-color:var(--white); }
.hero-signature { align-self:flex-end; padding-bottom:32px; font:italic 21px var(--serif); text-shadow:0 1px 8px #27160e; }
.hero-edition { position:absolute; left:22px; bottom:27px; writing-mode:vertical-rl; transform:rotate(180deg); font-size:8px; letter-spacing:.16em; opacity:.8; }
.occasion-strip { display:grid; grid-template-columns:repeat(3,1fr); align-items:center; text-align:center; background:var(--soft); border-bottom:1px solid var(--line); padding:22px max(24px,calc((100% - 1080px)/2)); font:italic 21px/1.3 var(--serif); }
.occasion-strip>span+span { border-left:1px solid #ccbaaa; }
.section { padding-block:72px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:34px; }
.eyebrow { color:var(--terracotta); margin:0 0 16px; }
.section-heading h2,.outfit-copy h2,.editorial h2 { margin:0; font:400 clamp(34px,3.3vw,48px)/1.12 var(--serif); letter-spacing:-.045em; }
.text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:24px; min-height:44px; border-bottom:1px solid currentColor; font-size:12px; line-height:1.5; }
.text-link>span { font-size:20px; }
.text-link:hover { color:var(--terracotta); }
.categories { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.category { min-width:0; }
.category-visual { position:relative; display:block; width:100%; aspect-ratio:4/5; overflow:hidden; background:var(--soft); }
.category-visual>img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.category:first-child .category-visual>img { object-position:center top; }
.category:hover img { transform:scale(1.025); }
.category-counter { position:absolute; top:17px; left:17px; width:32px; height:32px; border:1px solid #ffffff9c; color:#fffaf3; border-radius:50%; display:grid; place-items:center; font-size:10px; background:#38251f4a; }
.category h3 { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:18px 0 0; font:400 30px/1.3 var(--serif); letter-spacing:-.03em; }
.category-arrow { width:42px; height:42px; border:1px solid var(--line); border-radius:50%; display:grid; place-items:center; font:20px Arial,sans-serif; transition:background .2s; }
.category:hover .category-arrow { background:var(--ink); color:var(--paper); }
.more-collections { display:flex; flex-wrap:wrap; align-items:center; gap:10px 28px; padding-top:28px; margin-top:28px; border-top:1px solid var(--line); font-size:12px; }
.more-collections>span { color:var(--muted); margin-right:auto; }
.more-collections>a { display:flex; gap:14px; align-items:center; min-height:44px; }
.more-collections>a:hover { color:var(--terracotta); }
.arrivals { padding-top:0; }
.catalogue-preview-note { font-size:12px; color:var(--muted); border:1px solid var(--line); border-left:3px solid var(--terracotta); padding:14px 18px; margin:0 0 28px; }
.preview-products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px 28px; }
.preview-product { min-width:0; }
.preview-product-visual { overflow:hidden; background:var(--soft); }
.preview-product-visual>img { width:100%; height:auto; aspect-ratio:4/5; object-fit:contain; }
.product-state { display:block; color:var(--terracotta); text-transform:uppercase; letter-spacing:.11em; font-size:9px; margin-top:18px; }
.preview-product h3 { font:400 22px/1.4 var(--serif); margin:6px 0 12px; }
.preview-link { display:inline-flex; align-items:center; gap:22px; min-height:44px; font-size:12px; }
.preview-product:hover .preview-link { text-decoration:underline; }
.outfit-section { background:var(--soft); padding-block:64px; }
.outfit-idea { display:grid; grid-template-columns:1.05fr 1fr; align-items:center; gap:clamp(40px,7vw,110px); }
.outfit-visual { position:relative; }
.outfit-visual>img { width:100%; aspect-ratio:1; object-fit:cover; }
.image-caption { display:block; margin-top:12px; color:var(--muted); font-size:10px; }
.outfit-copy h2 { font-size:clamp(42px,4.5vw,64px); margin:0 0 24px; }
.outfit-copy>p:not(.eyebrow) { color:var(--muted); max-width:395px; font-size:14px; line-height:1.9; }
.outfit-copy>.text-link { margin-top:16px; margin-bottom:26px; }
.outfit-copy>p.outfit-included { font-size:11px; line-height:1.75; padding-top:19px; border-top:1px solid #ccbaaa; }
.editorial { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:110px; align-items:center; padding-block:88px; }
.editorial h2 { font-size:clamp(42px,4.4vw,64px); }
.editorial-copy { max-width:450px; position:relative; z-index:1; }
.editorial-copy>p { color:var(--muted); font-size:14px; line-height:1.9; margin:0 0 18px; }
.editorial-copy>p:first-child { font:400 22px/1.5 var(--serif); color:var(--ink); }
.editorial-mark { position:absolute; left:37%; bottom:35px; font:italic 150px/1 var(--serif); color:#e8ded1; pointer-events:none; }
.site-footer { background:#eadfce; padding-top:56px; padding-bottom:24px; border-top:1px solid var(--line); }
.footer-top { display:flex; justify-content:space-between; gap:64px; padding-bottom:46px; }
.footer-brand { margin-right:auto; }
.footer-brand .wordmark { font-size:44px; }
.footer-brand>p { font-size:12px; color:var(--muted); margin:19px 0 0; }
.footer-top .eyebrow { color:var(--ink); font-size:9px; margin-bottom:13px; }
.footer-collections>div { display:grid; grid-template-columns:1fr 1fr; gap:0 34px; }
.footer-collections a,.footer-links>a { min-height:36px; display:flex; align-items:center; font-size:12px; }
.footer-links { display:flex; flex-direction:column; }
.footer-top a:hover { color:var(--terracotta); }
.footer-bottom { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px 24px; padding-top:18px; border-top:1px solid #cdbca8; font-size:10px; color:#665349; }
.footer-bottom>a { min-height:36px; display:flex; align-items:center; }
.content-area { padding-block:44px 72px; min-height:50vh; }
.content-area h1,.woocommerce-products-header__title { font:400 clamp(34px,3.5vw,50px)/1.18 var(--serif); letter-spacing:-.04em; }
.content-area h2 { font:400 30px/1.25 var(--serif); }
.entry-content { max-width:900px; overflow-wrap:anywhere; }
.entry-content a { text-decoration:underline; }
.entry-content :where(input,textarea,select) { max-width:100%; }
.post-card { padding:24px 0; border-bottom:1px solid var(--line); }
.shop-intro { color:var(--muted); max-width:610px; margin:12px 0 34px; }
.woocommerce .woocommerce-breadcrumb { font-size:11px; color:var(--muted); margin-bottom:28px; }
.woocommerce .woocommerce-breadcrumb a { color:var(--muted); }
.woocommerce .woocommerce-breadcrumb a:hover { color:var(--terracotta); }
.woocommerce ul.products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px 28px; }
.woocommerce ul.products::before,.woocommerce ul.products::after { display:none!important; }
.woocommerce ul.products li.product { float:none!important; width:auto!important; margin:0!important; min-width:0; }
.woocommerce ul.products li.product a img { aspect-ratio:4/5; object-fit:contain; background:var(--soft); margin-bottom:16px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font:400 20px/1.4 var(--serif); padding:0; }
.woocommerce ul.products li.product .price { color:var(--ink); font-size:14px; margin-top:10px; }
.woocommerce ul.products li.product .button { margin-top:13px; font-size:11px; min-height:44px; padding:11px 16px; letter-spacing:0; }
.woocommerce span.onsale { background:var(--terracotta); color:var(--white); font-size:10px; font-weight:500; min-width:46px; min-height:46px; line-height:46px; padding:0; }
.woocommerce div.product { margin-top:18px; }
.woocommerce div.product div.images { width:51%; }
.woocommerce div.product div.summary { width:42%; }
.woocommerce div.product .product_title { font:400 clamp(32px,3.1vw,46px)/1.2 var(--serif); letter-spacing:-.04em; margin-bottom:22px; }
.woocommerce div.product p.price,.woocommerce div.product span.price { color:var(--ink); font-size:20px; }
.woocommerce .woocommerce-product-details__short-description { color:var(--muted); font-size:14px; }
.woocommerce div.product .product_meta { border-top:1px solid var(--line); padding-top:22px; font-size:11px; color:var(--muted); }
.woocommerce div.product .product_meta>span { display:block; margin-bottom:6px; }
.woocommerce div.product .product_meta a { color:var(--ink); text-decoration:underline; }
.product-preparation { padding:20px; background:var(--soft); border-left:2px solid var(--terracotta); font-size:12px; line-height:1.8; color:var(--muted); }
.product-preparation>.eyebrow { display:block; margin:0 0 8px; font-size:9px; }
.woocommerce div.product .summary>.product-preparation~.stock { display:none; }
.woocommerce div.product form.cart .variations { width:100%; }
.woocommerce div.product form.cart .variations select { padding:12px; min-height:46px; border:1px solid var(--line); background:var(--paper); min-width:0; max-width:100%; }
.woocommerce .quantity input.qty { min-height:48px; border:1px solid var(--line); }
.woocommerce input.input-text,.woocommerce textarea,.woocommerce select { border:1px solid var(--line); padding:12px; background:var(--paper); max-width:100%; }
.woocommerce-info,.woocommerce-message { border-top-color:var(--terracotta); }
.woocommerce-info::before,.woocommerce-message::before { color:var(--terracotta); }
.woocommerce table.shop_table { border-radius:0; border-color:var(--line); }
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering { font-size:12px; }
.woocommerce .woocommerce-ordering select { padding:10px; min-height:44px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding-left:0; margin-top:44px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background:transparent; border:0; border-radius:0; margin:0 24px 0 0; padding:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-weight:400; font-size:13px; padding:14px 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom:2px solid var(--terracotta); background:transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display:none; }
.woocommerce .woocommerce-MyAccount-navigation ul { list-style:none; padding:0; }
.woocommerce .woocommerce-MyAccount-navigation li { padding:12px 0; border-bottom:1px solid var(--line); }
.woocommerce a.remove { color:var(--terracotta)!important; }
.woocommerce a.remove:hover { background:var(--terracotta)!important; color:var(--white)!important; }
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt { background:var(--terracotta); color:var(--white); }
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover { background:#743221; }
.woocommerce div.product form.cart .button:disabled { opacity:.55; }
.wc-block-components-button:not(.is-link) { border-radius:0; }
.woocommerce-coming-soon-default { padding:72px 24px!important; color:var(--ink); background:var(--paper)!important; }
.woocommerce-coming-soon-default h1 { font-family:var(--serif); font-weight:400; letter-spacing:-.035em; }
.vailetta-coming-soon { text-align:center; padding:100px 24px; background:var(--paper); min-height:55vh; }
.vailetta-coming-soon h1 { font:400 clamp(42px,5vw,72px)/1.13 var(--serif); letter-spacing:-.05em; margin:24px 0; color:var(--ink); }
.vailetta-coming-soon>p:not(.eyebrow) { font:14px/1.9 "Segoe UI",Arial,sans-serif; color:var(--muted); margin:0 0 24px; }
@media (min-width:1800px) {
  .hero-photo { object-position:66% 65%; }
}
@media (max-width:1100px) {
  .wrap { width:calc(100% - 72px); }
  .main-nav { gap:28px; }
  .hero h1 { font-size:68px; }
  .hero-copy { max-width:540px; }
  .hero-signature { font-size:17px; }
  .editorial { gap:64px; }
  .hero-edition { left:13px; }
}
@media (max-width:800px) {
  .wrap { width:calc(100% - 48px); }
  .brand-caption { font-size:13px; }
  .wordmark { font-size:46px; }
  .header-inner { column-gap:20px; }
  .header-actions { gap:14px; font-size:11px; }
  .main-nav { gap:23px; font-size:11px; }
  .hero { height:530px; }
  .hero h1 { font-size:58px; }
  .hero-copy { max-width:440px; }
  .hero-photo { object-position:64% center; }
  .hero-signature,.hero-edition { display:none; }
  .section { padding-block:52px; }
  .section-heading { gap:22px; }
  .categories,.preview-products { gap:18px; }
  .category h3 { font-size:25px; }
  .category-arrow { width:34px; height:34px; }
  .more-collections { gap:8px 22px; }
  .more-collections>span { width:100%; }
  .outfit-idea { gap:32px; }
  .outfit-copy h2 { font-size:45px; }
  .editorial { padding-block:64px; gap:40px; }
  .footer-top { gap:36px; }
  .woocommerce div.product div.images { width:50%; }
  .woocommerce div.product div.summary { width:45%; }
  .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 18px; }
}
@media (max-width:600px) {
  html { scroll-padding-top:16px; }
  .wrap { width:calc(100% - 40px); }
  .launch-note { justify-content:center; padding:7px 16px; font-size:9px; letter-spacing:.015em; gap:10px; }
  .launch-status { display:none; }
  .brand-caption,.main-nav,.shop-link { display:none; }
  .header-inner { grid-template-columns:1fr auto; column-gap:16px; }
  .header-inner>.wordmark { grid-column:1; justify-self:start; font-size:41px; padding-block:17px 14px; }
  .header-actions { grid-column:2; }
  .mobile-navigation { display:block; grid-row:2; grid-column:1/-1; border-top:1px solid var(--line); }
  .mobile-navigation summary { cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; min-height:47px; font-size:11px; }
  .mobile-navigation summary::-webkit-details-marker { display:none; }
  .menu-label { display:flex; align-items:center; gap:11px; }
  .menu-indicator { font-size:22px; font-weight:300; transition:transform .2s; }
  .mobile-navigation[open] .menu-indicator { transform:rotate(45deg); }
  .mobile-navigation nav { position:absolute; z-index:50; left:0; right:0; top:100%; padding:10px 20px 22px; display:grid; grid-template-columns:1fr 1fr; gap:0 22px; background:var(--paper); border-block:1px solid var(--line); box-shadow:0 14px 18px #38251f14; }
  .mobile-navigation nav a { min-height:48px; display:flex; justify-content:space-between; align-items:center; gap:16px; border-bottom:1px solid var(--line); font-size:13px; }
  .mobile-navigation .mobile-all { grid-column:1/-1; font-family:var(--serif); font-size:20px; margin-bottom:9px; min-height:55px; }
  .hero { height:auto; display:flex; flex-direction:column; background:var(--paper); color:var(--ink); }
  .hero-photo { position:static; z-index:auto; height:355px; width:100%; object-position:72% center; }
  .hero-shade { display:none; }
  .hero-inner { width:calc(100% - 40px); height:auto; padding-block:27px 33px; }
  .hero-copy { padding:0; max-width:none; }
  .hero-eyebrow { color:var(--terracotta); font-size:9px; margin-bottom:16px; gap:10px; }
  .hero-eyebrow>span { width:20px; }
  .hero h1 { font-size:48px; margin-bottom:16px; line-height:1.04; }
  .hero-description { font-size:13px; line-height:1.65; margin:0 0 20px; }
  .hero-description br { display:none; }
  .button-light { min-width:215px; background:var(--terracotta); border-color:var(--terracotta); color:var(--white); }
  .button-light:hover { background:#743221; border-color:#743221; color:var(--white); }
  .hero :focus-visible { outline-color:var(--terracotta); }
  .occasion-strip { padding:19px 12px; font-size:16px; line-height:1.2; gap:0; }
  .occasion-strip>span { padding-inline:9px; }
  .section { padding-block:42px; }
  .section-heading { flex-direction:column; align-items:flex-start; gap:15px; margin-bottom:25px; }
  .eyebrow { font-size:9px; letter-spacing:.14em; margin-bottom:12px; }
  .section-heading h2 { font-size:35px; }
  .text-link { font-size:12px; gap:20px; }
  .categories { gap:24px; grid-template-columns:1fr; }
  .category-visual { aspect-ratio:1; }
  .category:first-child .category-visual { aspect-ratio:4/5; }
  .category h3 { font-size:29px; margin-top:12px; }
  .category-arrow { width:40px; height:40px; }
  .category-counter { top:13px; left:13px; }
  .more-collections { padding-top:19px; margin-top:25px; gap:2px 24px; }
  .more-collections>span { font-size:11px; margin-bottom:6px; }
  .preview-products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 14px; }
  .preview-product h3 { font-size:19px; overflow-wrap:break-word; }
  .catalogue-preview-note { font-size:11px; padding:12px 14px; }
  .arrivals { padding-top:0; }
  .outfit-section { padding-block:32px; }
  .outfit-idea { grid-template-columns:1fr; gap:29px; }
  .outfit-copy h2 { font-size:47px; margin-bottom:19px; }
  .outfit-copy>p:not(.eyebrow) { font-size:13px; }
  .outfit-copy>.text-link { margin-top:4px; margin-bottom:18px; }
  .outfit-copy>p.outfit-included { font-size:11px; padding-top:15px; margin-bottom:0; }
  .editorial { grid-template-columns:1fr; gap:24px; padding-block:49px; }
  .editorial h2 { font-size:46px; }
  .editorial-copy>p { font-size:13px; }
  .editorial-copy>p:first-child { font-size:22px; }
  .editorial-mark { bottom:30px; right:0; left:auto; opacity:.6; }
  .site-footer { padding-top:38px; padding-bottom:18px; }
  .footer-top { flex-wrap:wrap; gap:30px; padding-bottom:24px; }
  .footer-brand { width:100%; }
  .footer-brand .wordmark { font-size:42px; }
  .footer-brand>p { margin-top:13px; }
  .footer-collections { margin-right:auto; }
  .footer-collections>div { column-gap:29px; }
  .footer-links { min-width:110px; }
  .footer-bottom { font-size:9px; gap:5px 16px; }
  .footer-bottom>a { margin-left:auto; }
  .content-area { padding-block:29px 48px; }
  .content-area h1 { font-size:37px; }
  .woocommerce .woocommerce-breadcrumb { font-size:10px; line-height:1.8; margin-bottom:22px; overflow-wrap:anywhere; }
  .woocommerce div.product div.images,.woocommerce div.product div.summary { float:none; width:100%; }
  .woocommerce div.product div.summary { margin-top:29px; }
  .woocommerce div.product .product_title { font-size:34px; }
  .woocommerce ul.products { gap:26px 14px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:19px; }
  .woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering { float:none; }
  .woocommerce .woocommerce-ordering { margin-bottom:25px; }
  .woocommerce .woocommerce-ordering select { width:100%; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { margin-top:28px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs li { margin-right:20px; }
  .woocommerce-coming-soon-default { padding:45px 20px!important; }
}
@media (max-width:360px) {
  .wrap { width:calc(100% - 32px); }
  .hero-inner { width:calc(100% - 32px); }
  .hero-photo { height:310px; }
  .hero h1 { font-size:43px; }
  .section-heading h2 { font-size:31px; }
  .occasion-strip { font-size:14px; }
  .footer-links { min-width:96px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition:none!important; animation:none!important; }
}
