/* Western Domain site styles. Tokens from the approved brand (2026-10-24). */
:root{
  --cream:#faf4e8; --parch:#f5e8d0; --parch2:#eddbb8; --gold:#c4893a; --saddle:#6b3a1f;
  --dk:#2f1d10; --ink:#1a0f08; --txt2:#4a2c14; --ok:#2c4a1e; --okbg:#e3ecd9; --err:#5a2418;
  --head:'Oswald',sans-serif; --body:'Source Sans 3',system-ui,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.55}
img,svg{max-width:100%}
a{color:var(--saddle)} a:hover{color:var(--dk)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.sec{padding:88px 0}.sec-sm{padding:64px 0}
.bg-dk{background:var(--dk);color:var(--cream)} .bg-parch{background:var(--parch)} .bg-cream{background:var(--cream)}
.eyebrow{font-family:var(--head);font-size:15px;letter-spacing:4px;text-transform:uppercase;color:var(--saddle)}
.bg-dk .eyebrow{color:var(--gold)}
h1,h2,h3{font-family:var(--head);font-weight:600;text-transform:uppercase;margin:0}
h1{font-size:clamp(40px,5vw,64px);line-height:1.04}
.hero h1{font-size:clamp(44px,6vw,78px);line-height:1.02;letter-spacing:1px}
h2{font-size:clamp(30px,4vw,48px);line-height:1.08}
h3{font-size:21px;letter-spacing:1px}
.lede{color:var(--txt2);max-width:720px;margin:0}
.bg-dk .lede,.bg-dk p{color:var(--parch2)}
.stack{display:flex;flex-direction:column;gap:14px}
.row{display:flex;flex-wrap:wrap;gap:40px;align-items:center}
.row>*{flex:1 1 380px;min-width:0}
.top{align-items:flex-start}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:4px;border:none;
  background:var(--dk);color:var(--cream);text-decoration:none;font-family:var(--head);font-weight:600;font-size:17px;letter-spacing:2px;text-transform:uppercase;cursor:pointer}
.btn:hover{color:var(--cream);background:#24160c}
.btn-gold{background:var(--gold);color:var(--dk)} .btn-gold:hover{background:#b07a31;color:var(--dk)}
.btn-line{background:transparent;border:1.5px solid var(--parch2);color:var(--cream);font-weight:400}
.btn-line:hover{background:rgba(250,244,232,.08);color:var(--cream)}
.btn[disabled]{background:#d8c8ad;color:#6b5640;cursor:not-allowed}
.link-cta{font-family:var(--head);font-size:16px;letter-spacing:2px;text-transform:uppercase}
.self-start{align-self:flex-start}

/* header */
.site-head{background:var(--dk);color:var(--cream);position:relative;z-index:20}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:14px;padding-bottom:14px}
.brand-link{display:flex;align-items:center}
.brand-link img{height:54px;width:auto;display:block}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 22px;font-family:var(--head);font-size:14px;letter-spacing:2px;text-transform:uppercase}
.nav a{color:var(--parch2);text-decoration:none;padding:10px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current=page]{color:var(--cream);border-bottom-color:var(--gold)}
.nav a.nav-cta{background:var(--gold);color:var(--dk);padding:12px 18px;border-radius:4px;font-weight:600;border:none}
.nav .cart-link{display:inline-flex;align-items:center;gap:6px}
.cart-count{background:var(--gold);color:var(--dk);border-radius:10px;font-size:12px;padding:1px 7px;font-weight:600}
.menu-btn{display:none;background:transparent;border:1.5px solid var(--parch2);color:var(--cream);border-radius:4px;min-height:44px;padding:0 14px;
  font-family:var(--head);letter-spacing:2px;text-transform:uppercase;font-size:14px;cursor:pointer}
@media (max-width:1020px){
  .menu-btn{display:inline-flex;align-items:center}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--dk);flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 20px;border-top:1px solid #4a2c14}
  .nav.open{display:flex}
  .nav a{padding:14px 0;border-bottom:1px solid #3d2716}
  .nav a.nav-cta{margin-top:12px;text-align:center}
  .brand-link img{height:44px}
}
.preopen{background:var(--gold);color:var(--dk);text-align:center;font-size:15px;padding:8px 16px}

/* footer */
.site-foot{background:var(--ink);color:var(--parch2);font-size:15px}
.site-foot .wrap{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:28px;padding-top:44px;padding-bottom:36px}
.site-foot a{color:var(--parch2)} .site-foot a:hover{color:var(--cream)}
.foot-brand img{height:52px;width:auto;display:block;margin-bottom:10px}
.foot-nav{display:flex;flex-wrap:wrap;gap:8px 22px}
.foot-legal{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.powered{font-family:var(--head);font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--gold)}
@media (max-width:700px){.foot-legal{align-items:flex-start}}

/* option buttons + fields */
.opt-group{display:flex;flex-direction:column;gap:8px}
.opt-label,.field>span:first-child,.field-label{font-family:var(--head);font-size:13px;letter-spacing:3px;text-transform:uppercase;color:var(--txt2)}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{min-height:44px;padding:0 16px;border-radius:4px;border:1.5px solid var(--saddle);background:transparent;color:var(--dk);font-family:var(--head);font-size:15px;letter-spacing:1px;cursor:pointer}
.opt[aria-pressed=true]{background:var(--dk);border-color:var(--dk);color:var(--cream)}
.swatch{width:44px;height:44px;border-radius:50%;cursor:pointer;border:2px solid var(--parch2);padding:0}
.swatch[aria-pressed=true]{border:3px solid var(--gold);box-shadow:0 0 0 2px var(--dk)}
.field{display:flex;flex-direction:column;gap:8px}
.field input[type=text],.field input[type=email],.field input[type=tel],.field input[type=number],.field select,.field textarea{
  font-family:var(--body);font-size:17px;padding:13px 14px;border:1.5px solid var(--saddle);border-radius:6px;background:var(--cream);color:var(--ink);width:100%}
.field textarea{min-height:110px}
.check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:17px}
.check input{width:20px;height:20px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.panel{background:var(--parch);border-radius:10px;padding:28px}
.panel-cream{background:var(--cream)}
.preview{background:var(--parch2);border-radius:10px;padding:24px;display:flex;justify-content:center}
.preview svg{height:auto}
.note{font-size:15px;color:var(--txt2)}
.price-line{font-family:var(--head);font-size:20px;color:var(--dk)}
.alert{border-radius:6px;padding:12px 14px;font-size:16px;border:1.5px solid var(--gold);background:var(--parch);color:var(--txt2)}
.alert-ok{border-color:#5b7a44;background:var(--okbg);color:var(--ok)}
.alert-err{border-color:#7a3a2c;color:var(--err)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.drop{border:2px dashed var(--saddle);border-radius:8px;padding:22px;display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--cream);
  font-family:var(--body);font-size:16px;letter-spacing:0;text-transform:none;color:var(--txt2);text-align:center}

/* home */
.hero .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:48px;padding-top:48px;padding-bottom:96px}
.hero .wrap>*{flex:1 1 440px;min-width:0}
.hero p{font-size:20px;max-width:520px;margin:0}
.hero .field>span:first-child{color:var(--parch2)}
.hero .field input{border-color:var(--gold);max-width:420px}
.hero-card{background:var(--parch);color:var(--dk);border-radius:10px;padding:26px;display:flex;flex-direction:column;align-items:center;gap:18px}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px}
.tile{text-decoration:none;color:var(--ink);background:var(--parch);border-radius:10px;overflow:hidden;display:flex;flex-direction:column}
.tile:hover{color:var(--ink);box-shadow:0 4px 14px rgba(47,29,16,.15)}
.tile-art{height:170px;background:var(--parch2);display:flex;align-items:center;justify-content:center}
.tile-body{padding:18px 20px 22px;display:flex;flex-direction:column;gap:4px}
.tile-body div:last-child{font-size:15px;color:var(--txt2)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px}
.step{display:flex;gap:16px}
.step-n{font-family:var(--head);font-weight:600;font-size:52px;line-height:1;color:var(--gold)}
.step h3{font-size:21px}
.step p{margin:0;color:var(--txt2)}
.band .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding-top:72px;padding-bottom:72px}
.band .wrap>div{flex:1 1 520px;min-width:0}
.cards3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px}
.cards3 p{margin:0;color:var(--txt2)}

/* tag strip */
.strip{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.strip .t{min-width:56px;height:64px;padding:0 8px;display:flex;align-items:center;justify-content:center;border-radius:10px 10px 8px 8px;
  font-family:var(--head);font-weight:600;font-size:20px;color:#161512}

/* examples (how it works) */
.ex{display:flex;gap:14px}
.ex figure{margin:0;flex:1;display:flex;flex-direction:column;gap:6px}
.ex .pic{border-radius:6px;height:108px;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px rgba(47,29,16,.18);background:#fff}
.ex figcaption{font-size:14px;color:var(--dk)}

/* proof page */
.proof-img{background:#fff;border-radius:10px;padding:12px;box-shadow:0 1px 4px rgba(47,29,16,.15)}
.proof-img img{display:block;width:100%;height:auto;border-radius:6px}
.kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;font-size:16px;margin:0}
.kv dt{font-family:var(--head);letter-spacing:2px;text-transform:uppercase;font-size:13px;color:var(--txt2);padding-top:3px}
.kv dd{margin:0}

/* names */
.name-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:10px 0;border-bottom:1px solid var(--parch2)}
.name-row .field{flex:1 1 200px}
.qty{display:flex;align-items:center;gap:6px}
.qty button{width:44px;height:44px;border-radius:4px;border:1.5px solid var(--saddle);background:transparent;font-size:22px;color:var(--dk);cursor:pointer}
.qty output{min-width:40px;text-align:center;font-family:var(--head);font-weight:600;font-size:22px}

/* generic page content (policies) */
.page-body{max-width:820px}
.page-body h2{font-size:28px;margin:36px 0 10px}
.page-body h3{font-size:20px;margin:26px 0 8px}
.page-body p,.page-body li{color:var(--ink)}
.page-body ul{padding-left:22px}

/* WooCommerce */
.wc-wrap{padding:56px 0 88px}
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce #respond input#submit,.woocommerce button.button.alt,.woocommerce a.button.alt{
  background:var(--dk)!important;color:var(--cream)!important;border-radius:4px!important;font-family:var(--head)!important;letter-spacing:2px;text-transform:uppercase;font-weight:600!important;padding:14px 22px!important}
.woocommerce .button:hover{background:#24160c!important}
.woocommerce-message,.woocommerce-info{border-top-color:var(--gold)!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--gold)!important}
.woocommerce table.shop_table{border-radius:8px;background:#fff}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{padding:12px;border:1.5px solid var(--saddle);border-radius:6px;background:var(--cream)}
.woocommerce-checkout #payment{background:var(--parch)!important;border-radius:8px}
.wd-cart-meta{font-size:14px;color:var(--txt2);margin-top:4px}
.wd-cart-meta img{width:72px;border-radius:4px;display:block;margin-top:6px}
.product-thumbnail img{border-radius:6px}

/* shop grid (product listing pages) */
.price-from{font-family:var(--head);font-size:18px;color:var(--dk)}

/* radio chips (brand form) */
.chips .chip{position:relative;display:inline-flex}
.chips .chip input{position:absolute;opacity:0;width:1px;height:1px}
.chips .chip span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:4px;border:1.5px solid var(--saddle);color:var(--dk);font-family:var(--head);font-size:15px;letter-spacing:1px;cursor:pointer}
.chips .chip input:checked+span{background:var(--dk);border-color:var(--dk);color:var(--cream)}
.chips .chip input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}
[hidden]{display:none!important}
@media (max-width:520px){.grid2{grid-template-columns:1fr}}
.tiers{list-style:none;margin:6px 0 8px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;font-size:16px}
.tiers strong{font-family:var(--head);font-weight:500;letter-spacing:1px}
[data-preview][aria-busy=true]{opacity:.6}
/* proof being made */
.burn-g path{stroke-dasharray:1;stroke-dashoffset:1;animation:wdburn 2.4s ease-in-out infinite}
.burn-g path:nth-child(2){animation-delay:.5s}.burn-g path:nth-child(3){animation-delay:1s}
@keyframes wdburn{0%{stroke-dashoffset:1;stroke:#6b3a1f}55%{stroke-dashoffset:0;stroke:#2f1d10}100%{stroke-dashoffset:0;stroke:#2f1d10}}
@media (prefers-reduced-motion:reduce){.burn-g path{animation:none;stroke-dashoffset:0}}
