/*
Theme Name: Nacreuse Child
Template: kadence
Version: 1.0.0
*/
:root{
  --nc-bg:#101418; --nc-panel:#1B2733; --nc-ink:#F2EEE6; --nc-muted:#9AA5AD;
  --nc-champagne:#C9AE7C; --nc-line:rgba(201,174,124,.28); --nc-radius:0px;
}
body{background:var(--nc-bg);color:var(--nc-ink);font-family:'Jost',sans-serif;}
h1,h2,h3{font-family:'Playfair Display',serif;font-weight:500;}
/* theme overrides headings with higher specificity - force the house serif */
html body h1,html body h2,html body h3,html body h4{font-family:'Playfair Display',serif!important;}
html body{background:var(--nc-bg);}
.nc-wrap{max-width:1140px;margin:0 auto;padding:0 24px;}
.nc-section{padding:90px 0;}
.nc-eyebrow{font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:var(--nc-champagne);text-align:center;margin:0 0 16px;}
.nc-h2{font-size:clamp(30px,3.8vw,50px);text-align:center;margin:0 0 14px;}
.nc-lead{text-align:center;color:var(--nc-muted);max-width:62ch;margin:0 auto 52px;line-height:1.8;}
/* hide kadence footer */
footer.site-footer{display:none!important;}
/* hero: museum display case - text left, framed specimen right */
.nc-hero{position:relative;padding:120px 24px 110px;background:radial-gradient(1200px 500px at 50% -10%, rgba(27,39,51,.9), transparent), var(--nc-bg);}
.nc-hero .inner{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;max-width:1140px;margin:0 auto;text-align:left;}
.nc-hero .art{position:relative;border:1px solid var(--nc-line);padding:14px;background:rgba(27,39,51,.5);}
.nc-hero .art img{position:static;width:100%;height:auto;max-height:64vh;object-fit:contain;opacity:1;display:block;}
.nc-hero .art::after{content:"";position:absolute;inset:6px;border:1px solid rgba(201,174,124,.22);pointer-events:none;}
.nc-hero .no{font-size:12px;letter-spacing:.5em;color:var(--nc-champagne);text-transform:uppercase;}
.nc-hero h1{font-size:clamp(42px,4.6vw,66px);margin:18px 0;color:#F2EEE6;}
.nc-hero p{color:var(--nc-muted);font-size:17px;max-width:52ch;margin:0 0 36px;line-height:1.8;}
@media(max-width:960px){.nc-hero .inner{grid-template-columns:1fr;text-align:center;}.nc-hero p{margin:0 auto 32px;}}
.nc-btn{display:inline-block;padding:16px 46px;border:1px solid var(--nc-champagne);color:var(--nc-champagne)!important;font-size:12px;letter-spacing:.32em;text-transform:uppercase;text-decoration:none;transition:.25s;}
.nc-btn:hover{background:var(--nc-champagne);color:#101418!important;}
.nc-btn.solid{background:var(--nc-champagne);color:#101418!important;}
.nc-btn.solid:hover{background:transparent;color:var(--nc-champagne)!important;}
/* exhibit grid */
.nc-exhibits{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.nc-ex{background:var(--nc-panel);border:1px solid var(--nc-line);text-decoration:none;color:var(--nc-ink);display:block;padding:18px 18px 24px;position:relative;}
.nc-ex .plate{font-size:10px;letter-spacing:.34em;color:var(--nc-champagne);text-transform:uppercase;}
.nc-ex img{width:100%;aspect-ratio:3/4;object-fit:cover;margin:14px 0;filter:saturate(.9);}
.nc-ex h3{font-size:20px;margin:0 0 8px;font-weight:500;}
.nc-ex .price{color:var(--nc-muted);font-size:13px;letter-spacing:.06em;}
.nc-ex .price s{opacity:.5;margin-right:8px;}
.nc-ex::after{content:"";position:absolute;inset:8px;border:1px solid transparent;transition:.3s;pointer-events:none;}
.nc-ex:hover::after{border-color:var(--nc-line);}
/* galleries (categories) */
.nc-galleries{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;}
.nc-gal{position:relative;display:block;text-decoration:none;color:var(--nc-ink);overflow:hidden;}
.nc-gal img{width:100%;aspect-ratio:3/4.2;object-fit:cover;opacity:.72;transition:.4s;}
.nc-gal:hover img{opacity:.95;transform:scale(1.03);}
.nc-gal .cap{position:absolute;left:0;right:0;bottom:0;padding:18px;background:linear-gradient(transparent, rgba(16,20,24,.92));text-align:center;}
.nc-gal h3{font-size:19px;margin:0;}
.nc-gal span{font-size:10px;letter-spacing:.3em;color:var(--nc-champagne);text-transform:uppercase;}
/* heritage strip */
.nc-heritage{background:var(--nc-panel);border-top:1px solid var(--nc-line);border-bottom:1px solid var(--nc-line);}
.nc-heritage .row{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center;}
.nc-heritage .n{font-family:'Playfair Display',serif;font-size:52px;color:var(--nc-champagne);}
.nc-heritage h3{font-size:19px;margin:6px 0 8px;}
.nc-heritage p{color:var(--nc-muted);font-size:14px;line-height:1.75;}
/* story */
.nc-story{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;}
.nc-story img{width:100%;aspect-ratio:4/5;object-fit:cover;border:1px solid var(--nc-line);padding:12px;}
.nc-story p{color:var(--nc-muted);line-height:1.9;}
/* reviews plaques */
.nc-reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.nc-rev{border:1px solid var(--nc-line);padding:34px;text-align:center;}
.nc-rev .stars{color:var(--nc-champagne);letter-spacing:.3em;font-size:12px;}
.nc-rev p{font-family:'Playfair Display',serif;font-style:italic;font-size:17px;line-height:1.8;margin:16px 0;}
.nc-rev .who{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--nc-muted);}
/* faq */
.nc-faq{max-width:720px;margin:0 auto;}
.nc-faq details{border-bottom:1px solid var(--nc-line);padding:20px 2px;}
.nc-faq summary{cursor:pointer;font-family:'Playfair Display',serif;font-size:21px;list-style:none;display:flex;justify-content:space-between;}
.nc-faq summary::after{content:"+";color:var(--nc-champagne);}
.nc-faq details[open] summary::after{content:"\2013";}
.nc-faq p{color:var(--nc-muted);line-height:1.8;padding-top:12px;margin:0;}
/* cta */
.nc-cta{text-align:center;background:radial-gradient(900px 420px at 50% 120%, rgba(27,39,51,.95), transparent), var(--nc-panel);padding:100px 24px;border-top:1px solid var(--nc-line);}
.nc-cta h2{font-size:clamp(32px,4.4vw,56px);margin:0 0 14px;}
.nc-cta p{color:var(--nc-muted);margin-bottom:34px;}
/* footer */
.nc-footer{border-top:1px solid var(--nc-line);background:var(--nc-bg);padding:64px 0 40px;font-size:14px;color:var(--nc-muted);}
.nc-footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;}
.nc-footer h4{color:var(--nc-ink);font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;margin:0 0 16px;font-weight:400;}
.nc-footer a{color:var(--nc-muted);text-decoration:none;line-height:2.15;display:inline-block;}
.nc-footer a:hover{color:var(--nc-champagne);}
.nc-footer .brand{font-family:'Playfair Display',serif;font-size:30px;color:var(--nc-ink);}
.nc-footer .base{border-top:1px solid var(--nc-line);margin-top:44px;padding-top:22px;font-size:12px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}
@media(max-width:960px){.nc-exhibits{grid-template-columns:repeat(2,1fr);}.nc-galleries{grid-template-columns:repeat(2,1fr);}.nc-story{grid-template-columns:1fr;}.nc-reviews{grid-template-columns:1fr;}.nc-heritage .row{grid-template-columns:1fr;}.nc-footer .cols{grid-template-columns:1fr 1fr;}}

/* --- brand buttons (woo) --- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.single_add_to_cart_button,
.wc-block-components-button,body .woocommerce-message .button{
  background:var(--nc-champagne)!important;color:#101418!important;border:1px solid var(--nc-champagne)!important;border-radius:0!important;
  font-size:12px!important;letter-spacing:.28em!important;text-transform:uppercase!important;padding:16px 36px!important;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.single_add_to_cart_button:hover,
.wc-block-components-button:hover{background:transparent!important;color:var(--nc-champagne)!important;}
.woocommerce .quantity input{background:#1B2733!important;color:#F2EEE6!important;border:1px solid var(--nc-line)!important;border-radius:0!important;}

/* --- woocommerce pages in the navy museum world (theme defaults are dark ink on dark bg) --- */
.woocommerce div.product .product_title,.woocommerce div.product p.price,.woocommerce div.product span.price,
.woocommerce div.product p.price ins,.woocommerce div.product p.price del,
.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce div.product .woocommerce-product-details__short-description p,
.woocommerce div.product .woocommerce-tabs .panel,.woocommerce div.product .woocommerce-tabs .panel h2,
.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce div.product .product_meta,.woocommerce div.product .product_meta a,
.woocommerce-breadcrumb,.woocommerce-breadcrumb a,
.woocommerce div.product form.cart .variations label,.woocommerce div.product form.cart .variations td.label,
.woocommerce .woocommerce-result-count,.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price,.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price del,.woocommerce-page h1.page-title,.woocommerce h1.entry-title,
.woocommerce .cart_totals h2,.woocommerce table.shop_table,.woocommerce table.shop_table td,
.woocommerce table.shop_table th,.woocommerce-cart .cart-empty,.woocommerce-info,.woocommerce-message,
.woocommerce form.checkout h3,.woocommerce .woocommerce-checkout h3,
.woocommerce .woocommerce-additional-fields h3,.woocommerce ul.order_details li,
.woocommerce .woocommerce-order p,.woocommerce .woocommerce-order h2,
.woocommerce form.login label,.woocommerce form.register label,
.woocommerce-account .woocommerce-MyAccount-navigation a,.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce .woocommerce-customer-details address,.woocommerce-column__title,
.woocommerce div.product .stock,.woocommerce div.product .woocommerce-variation-price{color:var(--nc-ink)!important;}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--nc-champagne)!important;}
.woocommerce div.product form.cart .variations select,.woocommerce .quantity input,
.woocommerce .woocommerce-ordering select,.woocommerce form.checkout input[type=text],
.woocommerce form.checkout input[type=email],.woocommerce form.checkout input[type=tel],
.woocommerce form.checkout input[type=password],.woocommerce form.checkout textarea,
.woocommerce form.checkout select,.woocommerce form.login input[type=text],
.woocommerce form.login input[type=password],.woocommerce-EditAccountForm input,
.woocommerce .select2-container .select2-selection,.woocommerce .select2-dropdown
{background:var(--nc-panel)!important;color:var(--nc-ink)!important;border:1px solid var(--nc-line)!important;}
.woocommerce table.shop_table,.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--nc-line)!important;}
.woocommerce-info,.woocommerce-message,.woocommerce-error{background:var(--nc-panel)!important;}
.woocommerce-info::before,.woocommerce-message::before{color:var(--nc-champagne)!important;}
.woocommerce span.onsale{background:var(--nc-champagne)!important;color:#141414!important;font-weight:600!important;}
.woocommerce .star-rating span::before,.woocommerce p.stars a{color:var(--nc-champagne)!important;}

/* archive / shop title band: the theme renders a light banner that fights the dark world */
.entry-hero-container-inner,.entry-hero,.hero-container,.page-hero,.site-content .page-header,
.woocommerce-products-header,.woocommerce-products-header .page-title,
.ct-container-full[data-content] > .page-title,.ct-page-title,
.woocommerce-page .entry-header,.archive .entry-header{background-color:var(--nc-bg)!important;}
.entry-hero-container-inner h1,.entry-hero h1,.page-hero h1,.woocommerce-products-header h1,
.wp-block-woocommerce-product-categories + h1,.ct-page-title h1,.page-title.archive-title,
h1.page-title,header.entry-header h1{
  color:var(--nc-ink)!important;font-family:'Playfair Display',serif!important;
}
.woocommerce-products-header .term-description,.term-description,.archive-description{color:var(--nc-muted)!important;}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering select{background:var(--nc-panel)!important;}

/* hero-section + blocksy hero rows carry their own light background */
.hero-section,.ct-hero-section,.hero-section .ct-container,.ct-container-full .hero-section,
.hero-section-inner,.ct-hero,.page-hero-section{background-color:var(--nc-bg)!important;}
.hero-section h1,.hero-section .page-title{color:var(--nc-ink)!important;}
.hero-section .entry-meta,.hero-section .term-description{color:var(--nc-muted)!important;}
.hero-section::before,.hero-section::after{display:none!important;}

/* --- woocommerce BLOCKS (cart / checkout / product grid) in the dark world --- */
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout,.wp-block-woocommerce-cart-cross-sells,
.wp-block-woocommerce-cart-order-summary-block,.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-components-sidebar,.wc-block-cart,.wc-block-checkout,
.wp-block-heading,.wc-block-components-title,.wc-block-cart__empty-cart__title,
.wc-block-grid__product-title,.wc-block-grid__product-title a,
.wc-block-grid__product-price,.wc-block-grid__product-price .amount,
.wc-block-grid__product-price ins,.wc-block-grid__product-price del,
.wc-block-components-product-name,.wc-block-components-product-price,
.wc-block-components-product-price__value,.wc-block-components-product-details,
.wc-block-cart-item__prices,.wc-block-cart-item__total,.wc-block-cart-item__total-price-and-sale-badge,
.wc-block-components-totals-item,.wc-block-components-totals-item__label,
.wc-block-components-totals-item__value,.wc-block-components-totals-footer-item,
.wc-block-components-order-summary-item__description,.wc-block-components-order-summary-item__total-price,
.wc-block-components-panel__button,.wc-block-components-review-list-item__text,
.wc-block-components-notice-banner,.wc-block-components-notice-banner__content,
.wc-block-components-form .wc-block-components-text-input label,
.wc-block-components-shipping-rates-control__package,.wc-block-components-radio-control__option,
.wc-block-components-radio-control__label,.wc-block-components-checkbox__label,
.wc-block-components-validation-error,.wc-block-cart__submit-button__text,
.wc-block-checkout__sidebar .wc-block-components-totals-item,
.wc-block-components-order-summary__content,.wc-block-components-order-summary-item__quantity{color:var(--nc-ink)!important;}
.wc-block-components-title,.wc-block-cart__empty-cart__title,.wp-block-heading{font-family:'Jost',sans-serif!important;}
.wc-block-grid__product-price del,.wc-block-components-product-price del{color:var(--nc-muted)!important;}
.wc-block-components-product-sale-badge,.wc-block-grid__product-onsale{background:var(--nc-champagne)!important;color:#141414!important;border:0!important;}
.wc-block-components-text-input input,.wc-block-components-text-input textarea,
.wc-block-components-select select,.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-components-quantity-selector,.wc-block-components-quantity-selector input,
.wc-block-components-form .wc-block-components-text-input input,
.wc-block-components-address-form input,.wc-block-components-address-form select,
.wc-block-cart .wc-block-components-quantity-selector__input{background:var(--nc-panel)!important;color:var(--nc-ink)!important;border:1px solid var(--nc-line)!important;}
.wc-block-components-quantity-selector__button{color:var(--nc-ink)!important;}
.wc-block-components-notice-banner{background:var(--nc-panel)!important;border-color:var(--nc-line)!important;}
.wc-block-cart-items,.wc-block-cart-items td,.wc-block-cart-items th,
.wc-block-components-order-summary,.wc-block-components-totals-item{border-color:var(--nc-line)!important;}
.wc-block-components-sidebar-layout .wc-block-components-sidebar{background:var(--nc-panel)!important;}
.wc-block-components-button:not(.is-link){color:#141414!important;}
.wc-block-cart__empty-cart__title.with-empty-cart-icon::before{filter:invert(.85);}

/* kadence renders every page as a white content card - keep it in the navy world */
article.entry.content-bg,.entry.content-bg,.content-bg,.entry-content-wrap,
.site .content-bg,.site-content .content-bg,.entry-hero-container-inner,
.wp-site-blocks .entry-content-wrap{background-color:var(--nc-panel)!important;}
article.entry.content-bg{padding:0 0 40px;}
.entry-content,.entry-content p,.entry-content li,.entry-content td,.entry-content th,
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,
.entry-content strong,.entry-content em{color:var(--nc-ink)!important;}
.entry-content a{color:var(--nc-champagne)!important;}
.entry-content table,.entry-content td,.entry-content th,.entry-content hr{border-color:var(--nc-line)!important;}
