/*
Theme Name: Imperium Vittori
Theme URI: https://imperiumvittori.com
Author: Yimyos Agency
Description: Tema a medida de lujo para Imperium Vittori (WooCommerce). Diseño Claude Design.
Version: 1.0
Text Domain: imperium-vittori
*/

:root{
  --bg:#FFFFFF; --surface:#F7F5F1; --surface2:#EDEAE4;
  --border:#E3DFD7; --border-soft:#F1EEE9;
  --ink:#1C1B19; --muted:#6B675F; --faint:#9A958B; --faint2:#B8B2A6;
  --bronze:#8C7A5B; --dark:#1C1B19;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Jost',-apple-system,Segoe UI,Roboto,sans-serif;
  --maxw:460px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:#e9e6df; color:var(--ink);
  font-family:var(--sans); font-weight:300;
  -webkit-font-smoothing:antialiased; line-height:1.6;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none;transition:color .16s cubic-bezier(.2,.8,.2,1)}
a:hover{color:var(--bronze)}
.iv-shell{max-width:var(--maxw);margin:0 auto;background:var(--bg);min-height:100vh;
  box-shadow:0 0 60px rgba(0,0,0,.08);overflow:hidden}
.serif{font-family:var(--serif)}
.kicker{font-size:9px;font-weight:400;letter-spacing:.32em;color:var(--bronze);text-transform:uppercase}
.rule{height:1px;background:var(--ink);width:56px}
.btn-dark{display:flex;align-items:center;justify-content:center;background:var(--ink);color:var(--surface);
  font-size:10px;font-weight:400;letter-spacing:.3em;text-transform:uppercase;height:52px;border:none;cursor:pointer}
.btn-dark:hover{background:var(--bronze);color:#fff}

/* announcement + header */
.iv-announce{height:34px;display:flex;align-items:center;justify-content:center;font-size:9px;
  letter-spacing:.26em;color:var(--bronze);text-transform:uppercase;border-bottom:1px solid var(--border-soft)}
.iv-header{height:64px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;position:relative}
.iv-logo{display:flex;flex-direction:column;align-items:center;gap:3px}
.iv-logo b{font-family:var(--serif);font-size:22px;font-weight:400;letter-spacing:.12em;line-height:1}
.iv-logo span{font-size:7px;letter-spacing:.42em;color:var(--bronze)}
.iv-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;position:relative}
.iv-bag-dot{position:absolute;top:10px;right:8px;width:5px;height:5px;background:var(--bronze);border-radius:50%}

/* hero */
.iv-hero{position:relative;height:600px;background:linear-gradient(175deg,#F7F5F1,#E3DFD7 80%);background-size:cover;background-position:center}
.iv-hero .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:9px;letter-spacing:.3em;color:var(--faint2);text-transform:uppercase}
.iv-hero .cap{position:absolute;left:24px;right:24px;bottom:36px;display:flex;flex-direction:column;gap:20px}
.iv-hero h1{font-family:var(--serif);font-size:52px;font-weight:300;color:var(--ink);line-height:1.02;letter-spacing:-.01em;margin:0}
.iv-hero h1 i{font-style:italic}
.iv-hero .sub{font-size:9px;letter-spacing:.32em;color:var(--ink);text-transform:uppercase}
.iv-hero .link{font-size:11px;letter-spacing:.24em;color:var(--ink);text-transform:uppercase}

/* section head */
.iv-sec-head{padding:56px 24px 0;display:flex;flex-direction:column;gap:18px}
.iv-sec-head h2{font-family:var(--serif);font-size:34px;font-weight:300;color:var(--ink);line-height:1.15;margin:0}

/* product list (one per row) */
.iv-plist{padding:40px 24px 0;display:flex;flex-direction:column;gap:44px}
.iv-card{display:flex;flex-direction:column;gap:16px}
.iv-card .img{aspect-ratio:3/4;background:var(--surface);overflow:hidden;position:relative}
.iv-card .img img{width:100%;height:100%;object-fit:cover}
.iv-card .img .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:9px;letter-spacing:.24em;color:var(--faint2);text-transform:uppercase}
.iv-card .meta{display:flex;flex-direction:column;gap:8px}
.iv-card .line{font-size:9px;letter-spacing:.28em;color:var(--bronze);text-transform:uppercase}
.iv-card .name{font-family:var(--serif);font-size:26px;font-weight:400;color:var(--ink);line-height:1.2}
.iv-card .detail{font-size:13px;font-weight:300;color:var(--muted);line-height:1.7}
.iv-card .price{font-size:13px;font-weight:400;color:var(--ink);letter-spacing:.1em;padding-top:4px}

/* atelier */
.iv-atelier{margin-top:56px;height:520px;position:relative;background:var(--dark);background-size:cover;background-position:center}
.iv-atelier .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:9px;letter-spacing:.3em;color:#403E39;text-transform:uppercase}
.iv-atelier .cap{position:absolute;left:24px;right:24px;bottom:40px;display:flex;flex-direction:column;gap:18px}
.iv-atelier h2{font-family:var(--serif);font-size:34px;font-weight:300;color:var(--surface);line-height:1.15;margin:0}
.iv-atelier h2 i{font-style:italic}
.iv-atelier p{font-size:13px;font-weight:300;color:#A8A29A;line-height:1.75;max-width:290px;margin:0}
.iv-atelier .link{font-size:10px;letter-spacing:.26em;color:var(--surface);text-transform:uppercase;border-bottom:1px solid #58554E;padding-bottom:6px;width:fit-content}

/* services */
.iv-services{padding:52px 24px;display:flex;flex-direction:column}
.iv-services .row{padding:22px 0;border-top:1px solid var(--border-soft);display:flex;flex-direction:column;gap:6px}
.iv-services .row:last-child{border-bottom:1px solid var(--border-soft)}
.iv-services .row .t{font-size:10px;letter-spacing:.26em;color:var(--ink);text-transform:uppercase}
.iv-services .row .d{font-size:12px;font-weight:300;color:var(--faint);line-height:1.6}

/* newsletter */
.iv-news{padding:52px 24px;background:var(--surface);display:flex;flex-direction:column;gap:16px}
.iv-news h2{font-family:var(--serif);font-size:30px;font-weight:300;color:var(--ink);line-height:1.2;margin:0}
.iv-news p{font-size:13px;font-weight:300;color:var(--muted);line-height:1.7;margin:0}
.iv-news .field{height:52px;background:#fff;border:1px solid var(--border);display:flex;align-items:center;padding:0 16px;font-size:13px;color:var(--faint2)}
.iv-news input[type=email]{width:100%;height:52px;background:#fff;border:1px solid var(--border);padding:0 16px;font-family:var(--sans);font-size:13px;color:var(--ink)}

/* footer + bottom nav */
.iv-footer{padding:44px 24px 32px;display:flex;flex-direction:column}
.iv-footer .frow{padding:16px 0;border-bottom:1px solid var(--border-soft);display:flex;justify-content:space-between;font-size:11px;color:var(--ink);letter-spacing:.2em;text-transform:uppercase}
.iv-footer .frow span{color:var(--faint2)}
.iv-footer .copy{margin-top:28px;font-size:9px;color:var(--faint2);letter-spacing:.2em}
.iv-bottomnav{position:sticky;bottom:0;height:70px;border-top:1px solid var(--border-soft);display:grid;grid-template-columns:repeat(4,1fr);align-items:center;background:#fff;padding-bottom:6px;z-index:20}
.iv-bottomnav a{display:flex;flex-direction:column;align-items:center;gap:7px;height:48px;justify-content:center;font-size:8px;letter-spacing:.2em;text-transform:uppercase;color:var(--faint)}
.iv-bottomnav a.active{color:var(--ink)}

/* ---- WooCommerce ---- */
.iv-page{padding:40px 24px 60px}
.iv-page h1.page-title,.woocommerce-products-header__title{font-family:var(--serif);font-weight:300;font-size:38px;color:var(--ink);margin:0 0 8px}
.woocommerce ul.products{display:flex!important;flex-direction:column;gap:44px;margin:24px 0 0!important}
.woocommerce ul.products li.product{width:100%!important;margin:0!important;text-align:left;float:none}
.woocommerce ul.products li.product a img{aspect-ratio:3/4;object-fit:cover;margin:0 0 16px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--serif)!important;font-size:26px!important;font-weight:400!important;color:var(--ink);padding:0!important;line-height:1.2}
.woocommerce ul.products li.product .price{font-size:13px!important;color:var(--ink)!important;font-weight:400!important;letter-spacing:.1em}
.woocommerce ul.products li.product .price del{color:var(--faint2)!important}
.woocommerce ul.products li.product .button,.woocommerce a.button,.woocommerce button.button,.woocommerce .single_add_to_cart_button{
  background:var(--ink)!important;color:var(--surface)!important;border-radius:0!important;font-family:var(--sans)!important;
  font-size:10px!important;letter-spacing:.24em!important;text-transform:uppercase!important;font-weight:400!important;padding:16px 22px!important}
.woocommerce .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--bronze)!important;color:#fff!important}
.woocommerce div.product .product_title{font-family:var(--serif)!important;font-weight:300!important;font-size:40px!important;color:var(--ink)}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink)!important;font-size:16px!important;letter-spacing:.06em}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--muted);font-weight:300;line-height:1.75}
.woocommerce .quantity input,.woocommerce input,.woocommerce select,.woocommerce textarea{border-radius:0!important;border:1px solid var(--border)!important;font-family:var(--sans)!important}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--bronze)!important;border-radius:0}
.woocommerce span.onsale{background:var(--ink);border-radius:0;color:#fff}
.woocommerce .star-rating span:before{color:var(--bronze)}
