/*
Theme Name: Flatsome Child
Description: DVNT child theme for Flatsome (managed from infra/flatsome-child) — "Pretty Things, Everyday."
Author: UX Themes / DVNT
Template: flatsome
Version: 3.0-dvnt.3
*/

/* DVNT palette (BRAND.md). Pastels are surfaces; rose/plum carry text for WCAG AA contrast. */
:root{
  --dvnt-pink:#F3C9D5;--dvnt-cream:#FFF6EB;--dvnt-lavender:#D9D1F0;--dvnt-butter:#F5E5A9;--dvnt-blue:#C9DFE9;--dvnt-pistachio:#D6E3CE;
  --dvnt-rose:#A8566F;--dvnt-rose-dark:#8C4058;--dvnt-ink:#3D3340;--dvnt-muted:#6B5E6E;--dvnt-line:#F0DCE2;
  --dvnt-serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --dvnt-sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --dvnt-radius:18px
}
body,.page-wrapper,#wrapper,#main{background-color:var(--dvnt-cream)!important;color:var(--dvnt-ink)}
body,p,li,input,select,textarea,.nav>li>a{font-family:var(--dvnt-sans)}
h1,h2,h3,h4,.heading-font,.product-title,.woocommerce-loop-product__title{font-family:var(--dvnt-serif)!important;color:var(--dvnt-ink);font-weight:400;letter-spacing:-.01em}
a{color:var(--dvnt-rose)}
a:hover{color:var(--dvnt-rose-dark)}

/* Header + soft wordmark logo (lowercase "dvnt") */
.header-top{background:var(--dvnt-pink)!important;color:var(--dvnt-ink)}
.header-main,.header-bottom,.header-wrapper.stuck .header-main{background:var(--dvnt-cream)!important}
.header-wrapper{border-bottom:1px solid var(--dvnt-line)}
#logo a,.logo a{font-family:var(--dvnt-serif);text-transform:lowercase;letter-spacing:.12em;font-weight:400;color:var(--dvnt-ink)!important}
.header-main .nav>li>a{color:var(--dvnt-ink);font-weight:500;letter-spacing:.04em;text-transform:none}
.header-main .nav>li>a:hover,.header-main .nav>li.active>a{color:var(--dvnt-rose)}

/* Buttons: rounded, rose with white text; pastel outline variant */
.button,button,input[type=submit],.button.primary,.button.alt,.button.secondary,.single_add_to_cart_button,.checkout-button{background-color:var(--dvnt-rose)!important;border-color:var(--dvnt-rose)!important;color:#fff!important;border-radius:999px!important;text-transform:none;letter-spacing:.02em;font-weight:500;min-height:44px}
.button:hover,button:hover,input[type=submit]:hover,.button.primary:hover{background-color:var(--dvnt-rose-dark)!important;border-color:var(--dvnt-rose-dark)!important}
.button.is-outline,.dvnt-btn-soft{background:transparent!important;color:var(--dvnt-rose)!important;border:2px solid var(--dvnt-rose)!important}

/* Homepage (tools/home.html) */
.dvnt-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--dvnt-pink) 0%,var(--dvnt-cream) 55%,var(--dvnt-lavender) 100%);border-radius:var(--dvnt-radius);padding:clamp(3rem,8vw,6.5rem) clamp(1.5rem,6vw,5rem);margin:1.5rem 0 3rem;text-align:center}
.dvnt-hero::before,.dvnt-hero::after{content:"";position:absolute;border-radius:50%;filter:blur(2px);opacity:.7;pointer-events:none}
.dvnt-hero::before{width:180px;height:180px;background:var(--dvnt-butter);top:-60px;left:-40px}
.dvnt-hero::after{width:220px;height:220px;background:var(--dvnt-blue);bottom:-90px;right:-60px}
.dvnt-hero>*{position:relative;z-index:1}
.dvnt-hero h1{font-size:clamp(2.4rem,7vw,4.8rem);line-height:1.05;margin:.4em auto .35em;max-width:14ch;overflow-wrap:anywhere}
.dvnt-hero p{max-width:34rem;margin-left:auto;margin-right:auto;font-size:1.08rem;color:var(--dvnt-ink)}
.dvnt-kicker{font-size:.72rem!important;text-transform:uppercase;letter-spacing:.24em;color:var(--dvnt-muted)!important}
.dvnt-heart{color:var(--dvnt-rose)}
.header-top .nav>li>a,.header-top .html{color:var(--dvnt-ink)!important;text-transform:none;letter-spacing:.06em;font-weight:500}
#logo{width:auto!important}
#logo a{font-size:2rem;line-height:1;text-decoration:none}
.dvnt-values{margin-left:0!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0 0 3.5rem;padding:0;list-style:none}
.dvnt-values li{margin:0;padding:1.4rem 1.2rem;border-radius:var(--dvnt-radius);text-align:center}
.dvnt-values li:nth-child(1){background:var(--dvnt-pistachio)}
.dvnt-values li:nth-child(2){background:var(--dvnt-blue)}
.dvnt-values li:nth-child(3){background:var(--dvnt-butter)}
.dvnt-values strong{display:block;font-family:var(--dvnt-serif);font-weight:400;font-size:1.2rem;margin-bottom:.25rem}
.dvnt-values span{font-size:.92rem;color:var(--dvnt-ink)}
.dvnt-section-title{text-align:center;margin-bottom:1.2rem}

/* Category + product cards */
.product-category .box-image,.product-small .box-image{border-radius:var(--dvnt-radius);overflow:hidden;background:var(--dvnt-pink)}
.product-category:nth-child(4n+2) .box-image{background:var(--dvnt-lavender)}
.product-category:nth-child(4n+3) .box-image{background:var(--dvnt-blue)}
.product-category:nth-child(4n+4) .box-image{background:var(--dvnt-pistachio)}
/* Until real photos exist, show the pastel tile instead of the grey WooCommerce placeholder. */
.box-image img[src*="woocommerce-placeholder"]{opacity:0}
.product-category .box-image{min-height:180px}
.product-category .box-text{background:transparent!important}
.product-category .box-text h5,.product-category .header-title{font-family:var(--dvnt-serif);text-transform:none;letter-spacing:0;color:var(--dvnt-ink)}
.price,.amount{color:var(--dvnt-ink);font-weight:600}
.badge-inner{background-color:var(--dvnt-rose)!important;border-radius:999px}
input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:12px;border-color:var(--dvnt-line);background:#fff}

/* Footer */
.footer-wrapper,.footer-1,.footer-2{background:var(--dvnt-pink)!important;color:var(--dvnt-ink)}
.absolute-footer{background:var(--dvnt-cream)!important;color:var(--dvnt-muted);border-top:1px solid var(--dvnt-line)}
.footer-wrapper a,.absolute-footer a{color:var(--dvnt-ink)}

/* Accessibility: visible keyboard focus, reduced motion. */
a:focus-visible,button:focus-visible,.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--dvnt-rose-dark)!important;outline-offset:2px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

@media only screen and (max-width: 48em) {
/* Phones */
.dvnt-hero{padding:3rem 1.25rem;margin-top:1rem;border-radius:14px}
.dvnt-values{grid-template-columns:1fr;gap:.6rem;margin-bottom:2.5rem}
.dvnt-values li{padding:1rem}
input,select,textarea{font-size:16px}
}
