/*
Theme Name: Trinity Artifex
Theme URI: https://trinityartifex.com
Author: Trinity Artifex
Description: Original bespoke Trinity Artifex storefront theme for books, artwork, and WooCommerce.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: trinity-artifex
*/
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--cream:#faf8f3;--paper:#fffefa;--ink:#302b2d;--muted:#716b6c;--gold:#a88651;--border:#e9e0d4;--sea:#d7e8e3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);font-family:'DM Sans',Arial,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.shell{width:min(1180px,calc(100% - 44px));margin:auto}.skip{position:absolute;top:-50px;left:20px;background:white;padding:12px;z-index:50}.skip:focus{top:10px}.top{background:rgba(250,248,243,.97);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(168,134,81,.16);backdrop-filter:blur(12px)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;font-size:14px;letter-spacing:.19em;font-weight:700}.brand img{height:58px;width:58px;object-fit:contain}.brand em{font-style:normal;color:#a17c4a}.nav nav{display:flex;align-items:center;gap:30px}.nav nav a{font-size:12px;font-weight:600;letter-spacing:.04em;transition:color .2s}.nav nav a:hover{color:var(--gold)}.menu{display:none}.hero{min-height:545px;background:linear-gradient(90deg,rgba(255,252,247,.96) 0%,rgba(255,252,247,.84) 41%,rgba(255,252,247,.1) 100%),url('assets/hero.webp') center/cover}.hero-inner{padding:110px 0 110px}.eyebrow,.mini{color:#9f7947;letter-spacing:.2em;font-size:11px;font-weight:700}.hero h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500}.hero h1{font-size:clamp(58px,7vw,91px);line-height:.98;letter-spacing:-.04em;margin:27px 0 25px}.hero h1 i,.digital h2 i{font-weight:400;color:#947545}.hero p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:505px;color:#5f5958}.btn{display:inline-flex;align-items:center;gap:35px;padding:15px 21px;border-radius:2px;margin-top:20px;font-size:12px;font-weight:700;letter-spacing:.05em}.primary{background:#332f30;color:white}.primary:hover{background:#7a6345}.intro{text-align:center;padding:70px 0 62px;max-width:760px}.intro h2{font-size:clamp(38px,4.8vw,55px);margin:13px 0 12px}.intro>p:last-child{font-size:14px;line-height:1.9;color:var(--muted)}.section{padding-top:45px;padding-bottom:100px}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:35px}.section-head h2{font-size:clamp(40px,4.4vw,56px);line-height:1.1;margin:12px 0 0}.section-head>p{font-size:12px;line-height:1.8;max-width:295px;color:var(--muted);margin-bottom:7px}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.product{background:var(--paper);border:1px solid var(--border);overflow:hidden;display:flex;flex-direction:column}.art{height:290px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#f1eee9,#e7e3dd);padding:26px}.art img{height:100%;width:100%;object-fit:contain;filter:drop-shadow(0px 12px 12px rgba(40,27,20,.17))}.art-landscape{background:linear-gradient(145deg,#f4f0e8,#e3e7e3)}.copy{padding:25px 25px 28px;display:flex;flex-direction:column;flex:1}.tag{color:#967c58;letter-spacing:.15em;font-size:10px;font-weight:700}.copy h3{font-size:29px;line-height:1.05;margin:14px 0 10px}.copy p{font-size:12px;line-height:1.75;color:var(--muted);margin:0 0 24px}.inactive{display:inline-block;align-self:start;margin-top:auto;color:#8c8175;border-bottom:1px solid #cbbb9d;padding-bottom:6px;font-size:11px;font-weight:700;letter-spacing:.04em}.digital{background:#e3eeea;padding:84px 0;overflow:hidden}.split{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center}.digital h2{font-size:clamp(43px,5.3vw,68px);line-height:1.03;margin:18px 0}.digital p:not(.mini),.handmade p:not(.mini){font-size:14px;line-height:1.95;color:#625f5e;max-width:480px}.pill{display:inline-block;border:1px solid #aab9ae;color:#546d64;font-size:11px;font-weight:700;padding:11px 16px;margin-top:12px}.digital-visual{height:280px;display:flex;justify-content:center;align-items:center;gap:18px;transform:rotate(-5deg)}.digital-visual img{width:45%;max-width:220px;box-shadow:10px 15px 23px #66796d50;border:6px solid white}.digital-visual img:last-child{transform:translateY(36px) rotate(8deg)}.handmade{display:grid;grid-template-columns: 1fr 1fr;gap:90px;align-items:center}.handmade-image{height:410px;background:#f0e8df;overflow:hidden}.handmade-image img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.handmade h2{font-size:clamp(44px,5vw,64px);line-height:1.02;margin:18px 0}.handmade .pill{color:#947545;border-color:#cab89b}.story{padding:75px 0;background:#f3ede5;text-align:center}.story-inner{max-width:650px}.story img{width:95px;margin:0 auto 18px;mix-blend-mode:multiply}.story h2{font-size:49px;margin:18px 0}.story p:last-child{font-size:14px;line-height:2;color:#675e5a}footer{padding:35px 0;background:#302c2e;color:#ece2d4}.footer{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-brand{font-size:16px;letter-spacing:.16em;font-weight:700}.footer p{font-size:11px;color:#d4c9bd;line-height:1.5}section{scroll-margin-top:90px}@media(max-width:850px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}.split{gap:25px}.handmade{gap:35px}.hero{background-position:60% center}}@media(max-width:630px){.nav{height:70px}.brand img{height:48px;width:48px}.brand{font-size:12px}.menu{display:block;background:none;border:0;font:600 12px 'DM Sans';color:var(--ink);cursor:pointer}.nav nav{display:none;position:absolute;left:0;right:0;top:70px;background:#faf8f3;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--border);padding:10px 22px 20px}.nav nav.open{display:flex}.nav nav a{padding:13px 0}.hero{min-height:500px;background:linear-gradient(90deg,rgba(255,252,247,.94),rgba(255,252,247,.65)),url('assets/hero.webp') center/cover}.hero-inner{padding:93px 0}.hero h1{font-size:60px}.intro{padding:55px 0 30px}.section{padding:30px 0 65px}.section-head{display:block}.section-head>p{max-width:none;margin:15px 0 0}.products{grid-template-columns:1fr;gap:16px}.art{height:330px}.split,.handmade{grid-template-columns:1fr}.digital{padding:60px 0}.digital-visual{height:235px}.handmade-image{height:320px}.handmade{gap:35px}.story{padding:60px 0}.story h2{font-size:42px}.footer{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* V4: aligned Amazon buttons over product images */
.product .art { position: relative; padding-bottom: 68px; }
.product .art .buy {
  position: absolute;
  left: 20px; right: 20px; bottom: 16px;
  margin: 0; min-height: 40px;
  display: flex; align-items: center; justify-content: center;
  gap: 12px; background: rgba(255,254,250,.96);
  border: 1px solid rgba(168,134,81,.45); color: #302b2d;
  box-shadow: 0 3px 12px rgba(48,43,45,.08);
  text-align: center; font-size: 12px; padding: 10px 14px;
}
.product .art .buy:hover, .product .art .buy:focus-visible {
  background: #302b2d; color: white;
}
.product .art .buy:focus-visible { outline: 3px solid #a88651; outline-offset: 2px; }
.product .art img { object-fit: contain; }

/* Social profiles in footer */
.footer-end{text-align:right}.social-links{display:flex;justify-content:flex-end;gap:22px;flex-wrap:wrap}.social-links a{color:#f4e5c7;font-size:12px;font-weight:600;text-decoration:none;border-bottom:1px solid rgba(244,229,199,.5);padding-bottom:5px}.social-links a:hover,.social-links a:focus-visible{color:#fff;border-bottom-color:#fff}.social-links a:focus-visible{outline:2px solid #f4e5c7;outline-offset:4px}@media(max-width:630px){.footer-end{text-align:left}.social-links{justify-content:flex-start}}

/* V7: Coming soon artwork gallery */
.coming-soon{padding-top:62px}.soon-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.soon-card{background:#fffefa;border:1px solid #e9e0d4;overflow:hidden}
.soon-image{height:265px;padding:22px;background:linear-gradient(145deg,#f5f0e9,#eae7e3);display:flex;align-items:center;justify-content:center}
.soon-image img{display:block;max-height:100%;width:100%;object-fit:contain;filter:drop-shadow(0px 6px 7px rgba(48,43,45,.10))}
.soon-copy{padding:18px 20px 21px}.soon-copy span{color:#967c58;letter-spacing:.14em;font-size:10px;font-weight:700;text-transform:uppercase}
.soon-copy h3{font-size:26px;line-height:1.1;margin:9px 0 0}
.soon-note{color:#716b6c;font-size:12px;margin-top:22px;text-align:center}
@media(max-width:850px){.soon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:630px){.soon-grid{grid-template-columns:1fr}.soon-image{height:305px}.coming-soon{padding-top:30px}}

/* WordPress / WooCommerce layout */
.wp-content{padding:60px 0 90px;min-height:55vh}.wp-content h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(40px,5vw,60px);font-weight:500}
.wp-content p{line-height:1.8}.wp-content a:not(.button){text-decoration:underline;text-underline-offset:3px}
.woocommerce .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wp-element-button{background:#302b2d!important;color:white!important;border-radius:2px!important}
.woocommerce .products li.product{background:#fffefa;padding:14px;border:1px solid #e9e0d4}
.woocommerce .products li.product img{width:100%;height:auto}.woocommerce .woocommerce-breadcrumb{margin:0 0 2rem}
.woocommerce-cart .wc-block-cart,.woocommerce-checkout .wc-block-checkout{max-width:1080px;margin:0 auto}
