@import url('https://fonts.googleapis.com/css2?family=Archivo+SemiCondensed:wght@400;500;600;700&family=Public+Sans:wght@400;500;600;700&display=swap');
:root {
  --color-primary: #B45309;
  --color-secondary: #451A03;
  --color-accent: #F5EBDD;
  --color-background: #fcf8f5;
  --color-surface: #f9f1eb;
  --color-text: #1A1A22;
  --color-muted: #6B7280;
  --nav-fg: #ffffff;
  --logo-filter: brightness(0) invert(1);
  --font-heading: "Archivo SemiCondensed", "Arial Narrow", Arial, sans-serif;
  --font-body: "Public Sans", Arial, sans-serif;
  --section-padding: 54px 20px;
  --max-width: 1100px;
  --border-radius: 20px;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { overflow-x: hidden; scroll-behavior: smooth; }
body { overflow-x: clip; }
img { max-width: 100%; height: auto; }

body { font-family: var(--font-body); font-size: 14px; line-height: 1.6; color: var(--color-text, #1a1a22); background: var(--color-background, #ffffff); }
p, li, a, span, label, input, textarea, button { font-family: var(--font-body); }
p { font-size: 0.98rem; line-height: 1.8; margin-bottom: 0.9rem; }
h1, h2, h3, h4 { font-family: var(--font-heading); }

.container { max-width: var(--max-width); margin: 0 auto; padding: 0 20px; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

header { position: sticky; top: 0; z-index: 1000; background: linear-gradient(90deg, var(--color-secondary), var(--color-primary)); box-shadow: 0 10px 24px rgba(69, 26, 3, 0.18); }
header .nav-inner { max-width: var(--max-width); margin: 0 auto; padding: 0 20px; display: flex !important; justify-content: space-between; align-items: center; min-height: 70px; }
header img.logo { max-height: 54px; max-width: min(220px, 38vw); width: auto; height: auto; display: block; object-fit: contain; filter: var(--logo-filter); }
.brand { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.brand-name { color: var(--nav-fg); font-family: var(--font-heading); font-size: 1.2rem; font-weight: 700; white-space: nowrap; letter-spacing: 0.01em; }
nav { display: flex; align-items: center; }
nav #nav-links { display: flex !important; flex-direction: row !important; list-style: none !important; gap: 24px; padding: 0; margin: 0; background: transparent !important; position: static !important; }
nav #nav-links li { padding: 0; border: none; }
nav #nav-links a { color: var(--nav-fg); text-decoration: none; font-weight: 500; font-family: var(--font-body); font-size: 0.9rem; letter-spacing: 0.02em; }
nav #nav-links a:hover { opacity: 0.8; }
nav #nav-links li.nav-more { position: relative; padding-bottom: 14px; margin-bottom: -14px; }
nav #nav-links li.nav-more::after { content: ''; position: absolute; top: 100%; left: 0; right: 0; height: 16px; }
nav #nav-links .nav-more-trigger { background: transparent; border: 0; color: var(--nav-fg); font: inherit; font-weight: 500; letter-spacing: 0.02em; cursor: pointer; padding: 0; }
nav #nav-links .nav-more-trigger::after { content: ' ▾'; font-size: 0.78em; }
nav #nav-links .sub-nav { display: none; list-style: none; position: absolute; top: calc(100% + 6px); right: 0; min-width: 220px; padding: 14px 16px; margin: 0; background: rgba(30, 22, 18, 0.96); border: 1px solid rgba(255,255,255,0.14); border-radius: 14px; box-shadow: 0 18px 36px rgba(0,0,0,0.22); z-index: 1002; }
nav #nav-links .sub-nav li + li { margin-top: 10px; }
nav #nav-links .sub-nav a { display: block; white-space: nowrap; }
nav #nav-links .nav-more:hover .sub-nav, nav #nav-links .nav-more:focus-within .sub-nav, nav #nav-links .nav-more.open .sub-nav { display: block; }
nav #nav-links .nav-cta a { background: rgba(255, 237, 213, 0.18); border: 1px solid rgba(255,255,255,0.22); padding: 10px 16px; border-radius: 999px; }
#hamburger { display: none; background: none; border: none; color: var(--nav-fg); font-size: 1.5rem; cursor: pointer; font-family: inherit; }

#hero { position: relative; min-height: 100vh; background-image: url('hero-800x400.jpg?v=1785320429099'); background-size: cover; background-position: center; display: flex; align-items: center; justify-content: center; text-align: center; color: white; }
#hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(69, 26, 3, 0.55), rgba(0, 0, 0, 0.62)); }
#hero .hero-content { position: relative; z-index: 1; max-width: 860px; padding: 20px; }
.eyebrow { display: inline-block; margin-bottom: 0.85rem; padding: 8px 14px; border-radius: 999px; background: rgba(255, 237, 213, 0.18); color: #fff7ed; letter-spacing: 0.08em; text-transform: uppercase; font-size: 0.8rem; }
#hero h1 { font-size: clamp(2.2rem, 5vw, 4.2rem); margin-bottom: 1rem; line-height: 1.04; text-shadow: 0 8px 22px rgba(0,0,0,0.3); }
#hero p { font-size: clamp(1rem, 1.8vw, 1.18rem); margin-bottom: 2rem; max-width: 720px; margin-left: auto; margin-right: auto; color: #fff7ed; }
.hero-actions { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }
.cta-button, .btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; background: var(--color-secondary); color: white; padding: 14px 32px; border-radius: var(--border-radius); font-weight: 600; text-decoration: none; transition: transform 0.2s, box-shadow 0.2s, background 0.2s; box-shadow: 0 8px 20px rgba(69, 26, 3, 0.24); }
.cta-button:hover, .btn:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,0.2); background: var(--color-primary); }
.btn-secondary { background: rgba(255, 237, 213, 0.14); border: 1px solid rgba(255,255,255,0.26); }

section { padding: var(--section-padding); }
section h2, .section-title, .section-heading { font-size: clamp(1.45rem, 2.5vw, 2.2rem); margin-bottom: 1.5rem; color: var(--color-primary); text-align: center; }
section h2::after, .section-title::after, .section-heading::after { content: ''; display: block; width: 48px; height: 3px; background: var(--color-primary); margin: 10px auto 0 auto; border-radius: 2px; }
section > p:first-of-type { text-align: center; max-width: 700px; margin-left: auto; margin-right: auto; }
#about { background: var(--color-background, #fff); }
#offerings { background: var(--color-surface, #f7f7f7); }
#compare { background: linear-gradient(180deg, #fff7ed, #ffedd5); }
#contact { background: var(--color-background, #fff); }
#about p, #about li { text-align: center; max-width: 880px; margin-left: auto; margin-right: auto; color: #2A1206; }
#offerings .container > p, #contact > .container > p { text-align: center; max-width: 760px; margin-left: auto; margin-right: auto; color: #5e4030; }

.cards-grid { display: grid; grid-template-columns: 1fr; gap: 24px; margin-top: 1.8rem; text-align: center; }
.card { background: linear-gradient(180deg, #fff8f2, #fff2e8); padding: 22px; border-radius: var(--border-radius); border: 1px solid #e0e0e0; box-shadow: 0 1px 4px rgba(0,0,0,0.04); transition: transform 0.3s, box-shadow 0.3s, border-color 0.3s; overflow: hidden; }
.card:hover { transform: translateY(-6px); box-shadow: 0 12px 28px rgba(69, 26, 3, 0.12); border-color: rgba(180, 83, 9, 0.24); }
.card-photo { width:100%; height:180px; object-fit:cover; border-radius:var(--border-radius) var(--border-radius) 0 0; margin:-22px -22px 1rem -22px; display:block; }
.card-icon { width: 56px; height: 56px; border-radius: 50%; background: rgba(180, 83, 9, 0.1); display: flex; align-items: center; justify-content: center; margin: 0 auto 1rem auto; }
.card-icon i { font-size: 1.4rem; color: var(--color-primary); }
.card h3 { margin-bottom: 0.7rem; font-size: 1.28rem; color: var(--color-secondary); }
.card p { color: #4c352b; }

.contact-details-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 32px; margin-top: 1.5rem; }
.contact-item { display: flex; align-items: center; gap: 12px; background: #fff7ed; padding: 14px 18px; border-radius: 999px; border: 1px solid rgba(180, 83, 9, 0.12); box-shadow: 0 6px 18px rgba(69, 26, 3, 0.06); }
.contact-icon-circle { width: 40px; height: 40px; border-radius: 50%; background: var(--color-primary); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.contact-icon-circle i { color: white; font-size: 0.9rem; }
.contact-item a { color: #333; text-decoration: none; font-size: 0.9rem; }
.contact-item a:hover { color: var(--color-primary); }
.contact-item span { font-size: 0.9rem; }
.social-links { display: flex; gap: 12px; justify-content: center; margin-top: 1rem; min-height: 4px; }
.social-links a, .social-circle { width: 40px; height: 40px; border-radius: 50%; background: var(--color-primary); display: flex; align-items: center; justify-content: center; color: white; font-size: 1rem; text-decoration: none; transition: transform 0.2s, opacity 0.2s; }
.social-links a:hover, .social-circle:hover { transform: translateY(-2px); opacity: 0.85; }
.form-wrapper { width: 100%; max-width: 700px; margin: 2rem auto 0; overflow: hidden; border-radius: var(--border-radius); border: 1px solid #e5e7eb; box-shadow: 0 10px 24px rgba(69, 26, 3, 0.08); background: white; }
.form-wrapper iframe { display: block; }

.about-photo { width: 100%; max-height: 420px; object-fit: cover; border-radius: var(--border-radius); margin: 1.5rem 0 1.6rem; box-shadow: 0 18px 40px rgba(69, 26, 3, 0.12); }
.map-wrapper { margin: 1.5rem 0; border-radius: var(--border-radius); overflow: hidden; box-shadow: 0 12px 30px rgba(69, 26, 3, 0.08); }
.map-wrapper iframe { display: block; border: 0; }

.sh-table-scroll { width: 100%; overflow-x: auto; margin-top: 1.4rem; }
.sh-table { width: 100%; border-collapse: collapse; min-width: 620px; background: #fffaf5; border-radius: var(--border-radius); overflow: hidden; box-shadow: 0 12px 30px rgba(69, 26, 3, 0.08); }
.sh-table th, .sh-table td { padding: 16px 18px; text-align: left; border-bottom: 1px solid rgba(180, 83, 9, 0.12); color: #2A1206; }
.sh-table thead th { background: var(--color-secondary); color: #fff7ed; font-family: var(--font-heading); font-size: 1rem; }
.sh-table tbody th { background: #fff3e2; color: var(--color-secondary); font-family: var(--font-heading); }

.site-footer, footer { background: linear-gradient(180deg, #5a2204, #451A03); color: white; text-align: center; padding: 24px 20px; }
footer a { color: rgba(255,255,255,0.85); }
.sh-ftr-inner { max-width: var(--max-width); margin: 0 auto; }
.sh-ftr-cols { display: flex; justify-content: space-between; gap: 30px; align-items: flex-start; text-align: left; flex-wrap: wrap; }
.sh-ftr-name { font-family: var(--font-heading); font-size: 1.6rem; }
.sh-ftr-col h4 { margin-bottom: 0.8rem; font-size: 1rem; }
.sh-ftr-col ul { list-style: none; }
.sh-ftr-col li + li { margin-top: 0.5rem; }
.sh-ftr-col a { text-decoration: none; }
.sh-ftr-bar { display: flex; justify-content: space-between; gap: 18px; margin-top: 22px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,0.14); flex-wrap: wrap; }
.sh-ftr-legal a { font-weight: 600; }

.page-hero, .inner-hero { position: relative; padding: 90px 20px 70px; background: linear-gradient(135deg, rgba(180,83,9,0.95), rgba(69,26,3,0.96)); color: #fff7ed; text-align: center; }
.page-hero::before, .inner-hero::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at top, rgba(255,255,255,0.1), transparent 45%); }
.page-hero .container, .inner-hero .container { position: relative; z-index: 1; }
.page-hero h1, .inner-hero h1 { font-size: clamp(2rem, 4vw, 3.4rem); margin-bottom: 0.8rem; color: white; }
.page-hero p, .inner-hero p { max-width: 760px; margin: 0 auto; color: #fff7ed; }

.content-grid, .info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.image-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 1.5rem; }
.image-grid img, .content-image, .post-image { width: 100%; border-radius: var(--border-radius); display: block; box-shadow: 0 14px 28px rgba(69, 26, 3, 0.1); }
.article-shell, .blog-list, .shop-grid, .legal-copy, .faq-list { max-width: 900px; margin: 0 auto; }
.blog-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 1.8rem; }
.blog-card, .shop-card, .faq-item, .info-card { background: #fffaf5; border: 1px solid #eadfd6; border-radius: var(--border-radius); box-shadow: 0 8px 22px rgba(69, 26, 3, 0.07); overflow: hidden; }
.blog-card img, .shop-card img { width: 100%; height: 220px; object-fit: cover; display: block; }
.blog-card-content, .shop-card-content, .info-card-content { padding: 20px; }
.blog-card h2, .blog-card h3, .shop-card h3, .faq-item h3, .info-card h3 { color: var(--color-secondary); margin-bottom: 0.7rem; }
.article-shell article { background: #fffaf5; padding: 28px; border-radius: var(--border-radius); border: 1px solid #eadfd6; box-shadow: 0 10px 28px rgba(69, 26, 3, 0.07); }
.article-shell h2, .article-shell h3 { text-align: left; color: var(--color-secondary); margin-top: 1.2rem; }
.article-shell h2::after, .article-shell h3::after { display: none; }
.article-shell ul, .article-shell ol, .legal-copy ul { padding-left: 1.2rem; margin: 0.8rem 0 1rem; }
.article-shell .back-links { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 1.5rem; }
.price-badge { display: inline-block; background: #ffedd5; color: var(--color-secondary); border-radius: 999px; padding: 8px 12px; font-weight: 700; margin-bottom: 0.8rem; }

@media (max-width: 767px) {
  #hamburger { display: block !important; }
  nav #nav-links { display: none !important; flex-direction: column !important; gap: 0 !important; position: absolute !important; top: 70px; left: 0; right: 0; background: var(--color-primary) !important; padding: 10px 20px; z-index: 999; }
  nav #nav-links.open { display: flex !important; }
  nav #nav-links li { padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,0.1); }
  nav #nav-links a { font-size: 1rem; padding: 8px 0; display: flex; align-items: center; min-height: 44px; color: var(--nav-fg) !important; }
  nav #nav-links .nav-more-trigger { width: 100%; min-height: 44px; text-align: left; padding: 8px 0; color: var(--nav-fg) !important; }
  nav #nav-links .sub-nav { display: block; position: static; min-width: 0; padding: 0 0 0 14px; margin-top: 6px; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
  nav #nav-links .sub-nav li { border-bottom: 0; padding: 6px 0; }
  nav #nav-links .sub-nav a { min-height: 36px; font-size: 0.98rem; opacity: 0.92; }
  #hero { min-height: 80vh; }
  #hero h1 { font-size: clamp(1.8rem, 7vw, 2.8rem); }
  #hero p { font-size: clamp(0.95rem, 3vw, 1.05rem); }
  section { padding: 48px 16px; }
  section h2, .section-title, .section-heading { font-size: clamp(1.2rem, 5vw, 1.6rem); margin-bottom: 1rem; }
  .cards-grid, .blog-cards, .content-grid, .info-grid, .image-grid { grid-template-columns: 1fr; gap: 16px; }
  .card { padding: 20px; }
  .contact-details-row { flex-direction: column; align-items: center; gap: 16px; }
  .cta-button, .btn { padding: 14px 28px; font-size: 1rem; min-height: 48px; }
  .form-wrapper iframe { height: 700px; }
  footer { padding: 20px 16px; font-size: 0.85rem; }
  .sh-ftr-cols, .sh-ftr-bar { flex-direction: column; text-align: center; }
  .contact-item { width: 100%; justify-content: center; border-radius: 18px; }
  .article-shell article { padding: 20px; }
}

@media (min-width: 768px) {
  .cards-grid { grid-template-columns: 1fr 1fr; }
}

@media (min-width: 1024px) {
  .cards-grid { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
}

/* ── SiteHub ecommerce shop showcase (post-processed) ── */
.shop-showcase-page .container{max-width:min(2400px,98vw)}.shop-item-page .container{max-width:min(1500px,96vw)}.shop-showcase-page .shop-showcase-shell{display:flex;flex-direction:column;gap:.45rem;padding:clamp(.5rem,1vw,.78rem)}.shop-showcase-page,.shop-item-page{min-height:calc(100vh - 70px);padding:clamp(.3rem,.7vw,.55rem) 0 clamp(1.35rem,2.4vw,2rem);background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary,#0ea5e9) 10%,#fff) 0%,#fff 16%,color-mix(in srgb,var(--color-secondary,#38bdf8) 8%,#fff) 100%)}.shop-showcase-shell,.shop-item-shell{display:grid;gap:.8rem;padding:clamp(.78rem,1.7vw,1.05rem);border:1px solid color-mix(in srgb,var(--color-primary,#0ea5e9) 16%,rgba(15,23,42,.08));border-radius:min(calc(var(--border-radius,8px) + 8px),24px);background:rgba(255,255,255,.95);box-shadow:0 24px 60px rgba(15,23,42,.1)}.shop-showcase-hero{text-align:center;padding:0;display:grid;gap:.14rem}.shop-showcase-hero-collection{text-align:left;justify-items:start;gap:.3rem;margin-bottom:.3rem}.shop-showcase-h1-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.shop-showcase-page h1,.shop-item-copy h1,.shop-cart-header h2{font-size:clamp(1.68rem,3vw,2.65rem);line-height:1;color:var(--color-primary,#0ea5e9);margin:0 0 .18rem}.shop-cart-header h2{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:0}.shop-showcase-kicker{margin:0;text-transform:uppercase;font-size:.66rem;font-weight:700;letter-spacing:.14em;color:var(--color-primary,#0ea5e9)}.shop-showcase-intro{max-width:500px;margin:0 auto .08rem;color:color-mix(in srgb,var(--color-primary,#0ea5e9) 30%,#1e293b);font-size:.8rem;line-height:1.24}.shop-showcase-back-link{display:inline-flex;align-items:center;justify-content:center;margin-top:0;font-weight:700;color:var(--color-primary,#0ea5e9);text-decoration:none;font-size:.82rem}.shop-showcase-back-link:hover{text-decoration:underline}.shop-cart-launcher{position:relative;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid rgba(15,23,42,.12);border-radius:999px;background:#fff;color:#0f172a;box-shadow:0 10px 24px rgba(15,23,42,.12);cursor:pointer;flex-shrink:0;margin-left:.75rem}.shop-cart-launcher svg{display:block;width:22px;height:22px;fill:currentColor}.shop-cart-launcher-badge{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;padding:0 .32rem;border-radius:999px;background:var(--color-primary,#0ea5e9);color:#fff;font-size:.74rem;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(15,23,42,.18)}.shop-showcase-grid{display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr))}@media(min-width:1440px){.shop-showcase-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.shop-showcase-card{overflow:hidden;border:1px solid rgba(15,23,42,.1);border-radius:min(calc(var(--border-radius,8px) + 2px),18px);background:#fff;box-shadow:0 10px 22px rgba(15,23,42,.06);display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.shop-showcase-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(15,23,42,.1);border-color:color-mix(in srgb,var(--color-primary,#0ea5e9) 24%,rgba(15,23,42,.12))}.shop-showcase-card img,.shop-showcase-image-placeholder{width:100%;height:124px;object-fit:cover;background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary,#0ea5e9) 14%,#fff),color-mix(in srgb,var(--color-secondary,#38bdf8) 10%,#fff));display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:800;color:var(--color-primary,#0ea5e9)}.shop-showcase-card-copy{padding:.7rem .7rem .78rem;text-align:left;display:flex;flex-direction:column;gap:.26rem;flex:1}.shop-showcase-card-copy .shop-showcase-kicker{text-align:left;margin:0;font-size:.62rem;letter-spacing:.1em}.shop-showcase-card h2{font-size:.94rem;line-height:1.14;text-align:left;margin:0;color:var(--shop-ink,#0f172a)}.shop-showcase-card h2::after{display:none}.shop-showcase-card p{margin:0;font-size:.84rem;line-height:1.28;color:var(--shop-muted,#475569)}.shop-showcase-card-copy p:last-of-type{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.2em}.shop-showcase-price{display:inline-flex;align-items:center;align-self:flex-start;padding:.18rem .42rem;border-radius:999px;background:color-mix(in srgb,var(--color-primary,#0ea5e9) 10%,#fff);border:1px solid color-mix(in srgb,var(--color-primary,#0ea5e9) 20%,rgba(15,23,42,.08));color:var(--shop-ink,#0f172a);font-weight:800;font-size:.76rem;line-height:1.05}.shop-showcase-item-link{margin-top:auto;text-align:center;padding:.58rem .72rem;font-size:.84rem}.shop-showcase-empty{grid-column:1/-1;text-align:center;border:1px solid rgba(15,23,42,.1);border-radius:min(calc(var(--border-radius,8px) + 2px),18px);background:#fff;padding:2rem}.shop-item-layout{display:block}.shop-item-shell{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:start}.shop-item-media,.shop-item-copy{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:min(calc(var(--border-radius,8px) + 2px),18px);box-shadow:0 14px 36px rgba(15,23,42,.08)}.shop-item-media{overflow:hidden}.shop-item-media img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover}.shop-item-copy{padding:clamp(1.25rem,3vw,2rem)}.shop-item-options{margin:1rem 0;padding:1rem;border:1px solid rgba(15,23,42,.08);border-radius:min(var(--border-radius,8px),14px);background:color-mix(in srgb,var(--color-secondary,#38bdf8) 8%,#fff)}.shop-item-options h2{font-size:1rem;margin:0 0 .5rem}.shop-item-options ul{margin:0;padding-left:1.2rem}.shop-item-options span{font-weight:700}.shop-item-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:end;margin-top:1.2rem}.shop-item-actions label{display:grid;gap:.25rem;font-weight:700}.shop-item-actions input{width:84px;padding:.72rem;border:1px solid rgba(15,23,42,.16);border-radius:min(var(--border-radius,8px),12px)}.shop-item-status{min-height:1.4rem;font-weight:700;color:var(--color-primary,#0ea5e9)}@media(min-width:1280px){.shop-showcase-card img,.shop-showcase-image-placeholder{height:112px}}@media(max-width:1200px){.shop-showcase-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:980px){.shop-showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:860px){.shop-item-shell{grid-template-columns:1fr}.shop-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.shop-showcase-page,.shop-item-page{padding:.7rem 0 1.6rem}.shop-showcase-shell,.shop-item-shell{padding:.8rem}.shop-showcase-hero{gap:.14rem}.shop-showcase-intro{max-width:100%;font-size:.8rem;line-height:1.24}.shop-showcase-card-copy{text-align:center}.shop-showcase-card h2,.shop-showcase-card-copy .shop-showcase-kicker{text-align:center}.shop-showcase-card img,.shop-showcase-image-placeholder{height:138px}.shop-showcase-card-copy p:last-of-type{min-height:auto}.shop-showcase-price{align-self:center}.shop-cart-launcher{width:42px;height:42px;margin-left:.5rem}.shop-cart-line{grid-template-columns:56px minmax(0,1fr)}.shop-cart-line-thumb{width:56px;height:56px}.shop-cart-drawer{width:100%;padding:1rem}}@media(max-width:520px){.shop-showcase-grid{grid-template-columns:1fr}}.shop-filter-sticky{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:.5rem 0 .4rem;margin:0 0 .55rem;border-bottom:1px solid rgba(15,23,42,.08)}.shop-filter-bar{display:flex;flex-wrap:wrap;gap:.5rem .8rem;align-items:center;margin:0 0 .45rem}.shop-search-wrap{flex:1 1 240px;min-width:180px}.shop-search{width:100%;padding:.6rem .95rem;border:1px solid rgba(15,23,42,.16);border-radius:999px;font-size:.9rem;background:#fff}.shop-search:focus{outline:none;border-color:var(--color-primary,#0ea5e9);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary,#0ea5e9) 22%,transparent)}.shop-cat-chips{display:flex;flex-wrap:wrap;gap:.4rem;width:100%}.shop-cat-chip{padding:.34rem .72rem;border:1px solid color-mix(in srgb,var(--color-primary,#0ea5e9) 26%,rgba(15,23,42,.12));border-radius:999px;background:#fff;color:var(--color-primary,#0ea5e9);font-size:.8rem;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease}.shop-cat-chip:hover{background:color-mix(in srgb,var(--color-primary,#0ea5e9) 10%,#fff)}.shop-cat-chip.is-active{background:var(--color-primary,#0ea5e9);color:#fff;border-color:var(--color-primary,#0ea5e9)}.shop-filter-count{margin:0 0 .7rem;color:#64748b;font-weight:700;font-size:.84rem}.shop-filter-empty{padding:1.4rem;text-align:center;color:#64748b;border:1px dashed rgba(15,23,42,.16);border-radius:14px;margin-bottom:1rem}.shop-showcase-card-media{position:relative;overflow:hidden}.shop-showcase-card-media .shop-showcase-card-alt{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s ease;pointer-events:none}.shop-showcase-card:hover .shop-showcase-card-media .shop-showcase-card-alt,.shop-showcase-card:focus-within .shop-showcase-card-media .shop-showcase-card-alt{opacity:1}@media(prefers-reduced-motion:reduce){.shop-showcase-card-media .shop-showcase-card-alt{transition:none}}
    /* ===== Modern base refresh (applies to every shop style, incl. match_site) ===== */
    .shop-showcase-hero{gap:.55rem}
    .shop-showcase-hero .cta-button{justify-self:center;width:auto;max-width:min(440px,100%);padding:.82rem 2.4rem;border-radius:999px;font-weight:700;letter-spacing:.01em}
    /* Premium default cards — bigger, editorial imagery + site heading font. Applies to inherit/match_site too,
       so every generated shop looks premium out of the box (still re-tinted by each site's own CSS tokens). */
    .shop-showcase-grid{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:clamp(16px,1.6vw,24px)}
    .shop-showcase-card{border-radius:min(calc(var(--border-radius,8px) + 10px),20px);box-shadow:0 12px 30px rgba(15,23,42,.07)}
    .shop-showcase-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(15,23,42,.13)}
    .shop-showcase-card>img,.shop-showcase-card-media,.shop-showcase-card>.shop-showcase-image-placeholder{height:auto;aspect-ratio:4/5}
    .shop-showcase-card-media>img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.22,1,.36,1)}
    .shop-showcase-card:hover>img,.shop-showcase-card:hover .shop-showcase-card-media>img{transform:scale(1.05)}
    .shop-showcase-card-copy{gap:.42rem;padding:1rem 1.05rem 1.15rem}
    .shop-showcase-card h2{font-size:1.06rem;line-height:1.2;font-family:var(--font-heading,inherit)}
    .shop-showcase-card-copy .shop-showcase-kicker{font-size:.64rem;letter-spacing:.15em;opacity:1;color:var(--shop-muted,#64748b)}
    .shop-showcase-card p{font-size:.87rem;line-height:1.42}
    .shop-showcase-heading,.shop-item-copy h1{font-family:var(--font-heading,inherit);letter-spacing:-.01em}
    .shop-showcase-item-link{border-radius:999px;font-weight:600;margin-top:.75rem}
    .shop-showcase-image-placeholder{font-size:.98rem;font-weight:600;letter-spacing:.32em;color:color-mix(in srgb,var(--color-primary,#0ea5e9) 48%,#94a3b8);background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary,#0ea5e9) 9%,#f8fafc),color-mix(in srgb,var(--color-secondary,#38bdf8) 7%,#fff))}

    /* Category jump strip (base chrome — all presets) */
    .shop-category-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:.1rem auto .35rem;max-width:760px}
    .shop-category-chip{display:inline-flex;align-items:center;padding:.4rem .85rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary,#0ea5e9) 24%,rgba(15,23,42,.12));background:#fff;color:var(--nav-fg,#0f172a);text-decoration:none;font-size:.78rem;font-weight:700;transition:transform .14s ease,box-shadow .14s ease,background .14s ease,color .14s ease}
    .shop-category-chip:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--color-primary,#0ea5e9) 12%,#fff);box-shadow:0 8px 18px rgba(15,23,42,.08)}

    /* ===== modern_clean — sleek teal, Plus Jakarta Sans, compact cards ===== */
    body[data-menu-style="modern_clean"]{--color-primary:#0d7490;--color-secondary:#22b8cf;--border-radius:14px;--nav-fg: #ffffff;--font-heading: "Archivo SemiCondensed", "Arial Narrow", Arial, sans-serif;--font-body: "Public Sans", Arial, sans-serif;font-family:var(--font-body)}
    body[data-menu-style="modern_clean"] .shop-showcase-page,body[data-menu-style="modern_clean"] .shop-item-page{background:linear-gradient(180deg,#eef6fb 0%,#f7fbfd 22%,#ffffff 100%)}
    body[data-menu-style="modern_clean"] .shop-showcase-shell,body[data-menu-style="modern_clean"] .shop-item-shell{background:#fff;border-color:rgba(13,116,144,.12);box-shadow:0 18px 44px rgba(13,116,144,.08);backdrop-filter:none}
    body[data-menu-style="modern_clean"] .shop-showcase-card,body[data-menu-style="modern_clean"] .shop-item-media,body[data-menu-style="modern_clean"] .shop-item-copy{border-radius:18px;border-color:rgba(15,23,42,.07);box-shadow:0 8px 22px rgba(15,23,42,.05)}
    body[data-menu-style="modern_clean"] .shop-showcase-card img,body[data-menu-style="modern_clean"] .shop-showcase-image-placeholder{height:auto;aspect-ratio:4/3}
    body[data-menu-style="modern_clean"] .shop-showcase-card h2,body[data-menu-style="modern_clean"] .shop-showcase-page h1,body[data-menu-style="modern_clean"] .shop-item-copy h1{font-family:'Plus Jakarta Sans','Segoe UI',sans-serif;font-weight:700;letter-spacing:-.02em}
    body[data-menu-style="modern_clean"] .shop-showcase-price{border:0;border-radius:10px;background:linear-gradient(135deg,#0d7490,#22b8cf);color:#fff;padding:.26rem .62rem}
    body[data-menu-style="modern_clean"] .shop-category-chip{border-radius:12px}
    body[data-menu-style="modern_clean"] .cta-button{border-radius:12px}

    /* ===== warm_editorial — terracotta magazine, Fraunces serif, portrait imagery ===== */
    body[data-menu-style="warm_editorial"]{--color-primary:#9a3412;--color-secondary:#c2671f;--border-radius:14px;--nav-fg: #ffffff;--font-heading: "Archivo SemiCondensed", "Arial Narrow", Arial, sans-serif;--font-body: "Public Sans", Arial, sans-serif;font-family:var(--font-body)}
    body[data-menu-style="warm_editorial"] .shop-showcase-page,body[data-menu-style="warm_editorial"] .shop-item-page{background:linear-gradient(180deg,#fbf3e6 0%,#fff8ef 32%,#fffdf8 100%)}
    body[data-menu-style="warm_editorial"] .cta-button{border-radius:10px;letter-spacing:.02em}
    body[data-menu-style="warm_editorial"] .shop-showcase-shell,body[data-menu-style="warm_editorial"] .shop-item-shell{background:linear-gradient(180deg,rgba(255,250,242,.96),rgba(252,244,232,.96));border-color:rgba(154,52,18,.14);box-shadow:0 22px 50px rgba(154,52,18,.08)}
    @media(min-width:861px){body[data-menu-style="warm_editorial"] .shop-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}}
    body[data-menu-style="warm_editorial"] .shop-showcase-card{border-radius:26px;border-color:rgba(154,52,18,.12);background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,249,241,.96));box-shadow:0 14px 34px rgba(154,52,18,.08)}
    body[data-menu-style="warm_editorial"] .shop-showcase-card img,body[data-menu-style="warm_editorial"] .shop-showcase-image-placeholder{height:auto;aspect-ratio:4/5}
    body[data-menu-style="warm_editorial"] .shop-showcase-card-copy{padding:1rem 1.1rem 1.15rem;gap:.4rem}
    body[data-menu-style="warm_editorial"] .shop-showcase-card h2,body[data-menu-style="warm_editorial"] .shop-showcase-page h1,body[data-menu-style="warm_editorial"] .shop-item-copy h1{font-family:'Fraunces','Baskerville','Palatino Linotype',Georgia,serif;font-weight:600;letter-spacing:-.01em}
    body[data-menu-style="warm_editorial"] .shop-showcase-card h2{font-size:1.1rem}
    body[data-menu-style="warm_editorial"] .shop-showcase-price{background:transparent;border:0;border-bottom:1px solid rgba(154,52,18,.4);border-radius:0;color:#9a3412;padding:.1rem 0;font-family:'Fraunces','Baskerville',Georgia,serif;font-size:1.05rem;font-weight:600}
    body[data-menu-style="warm_editorial"] .shop-category-chip{border-radius:999px;border-color:rgba(154,52,18,.28);background:rgba(255,248,238,.9)}

    /* ===== bold_contrast — dark stage, Space Grotesk, framed cards, amber accents ===== */
    body[data-menu-style="bold_contrast"]{--color-primary:#f59e0b;--color-secondary:#fbbf24;--border-radius:6px;--nav-fg: #ffffff;--font-heading: "Archivo SemiCondensed", "Arial Narrow", Arial, sans-serif;--font-body: "Public Sans", Arial, sans-serif;font-family:var(--font-body)}
    body[data-menu-style="bold_contrast"] .shop-showcase-page,body[data-menu-style="bold_contrast"] .shop-item-page{--nav-fg: #ffffff;background:linear-gradient(180deg,#0f172a 0%,#111c30 60%,#0b1220 100%)}
    body[data-menu-style="bold_contrast"] .shop-showcase-shell,body[data-menu-style="bold_contrast"] .shop-item-shell{background:transparent;border:0;box-shadow:none;backdrop-filter:none}
    body[data-menu-style="bold_contrast"] .shop-showcase-intro{color:rgba(248,250,252,.82)}
    body[data-menu-style="bold_contrast"] .shop-showcase-card{border:2px solid #0f172a;border-radius:8px;background:#fff;box-shadow:0 10px 0 rgba(245,158,11,.25)}
    body[data-menu-style="bold_contrast"] .shop-showcase-card:hover{transform:translateY(-2px);box-shadow:0 14px 0 rgba(245,158,11,.4)}
    body[data-menu-style="bold_contrast"] .shop-showcase-card img,body[data-menu-style="bold_contrast"] .shop-showcase-image-placeholder{height:auto;aspect-ratio:1/1}
    body[data-menu-style="bold_contrast"] .shop-showcase-card h2,body[data-menu-style="bold_contrast"] .shop-item-copy h1{font-family:'Space Grotesk','Arial Black',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.005em;color:#0f172a}
    body[data-menu-style="bold_contrast"] .shop-showcase-page h1{font-family:'Space Grotesk','Arial Black',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.005em;color:#f59e0b}
    body[data-menu-style="bold_contrast"] .shop-showcase-card .shop-showcase-kicker{color:#b45309}
    body[data-menu-style="bold_contrast"] .shop-showcase-price{border:0;border-radius:6px;background:#f59e0b;color:#0f172a;font-weight:700;padding:.26rem .62rem}
    body[data-menu-style="bold_contrast"] .shop-item-media,body[data-menu-style="bold_contrast"] .shop-item-copy{border:2px solid #0f172a;border-radius:8px;box-shadow:none}
    body[data-menu-style="bold_contrast"] .shop-category-chip{background:#0f172a;color:#fff;border-color:#0f172a;border-radius:6px}
    body[data-menu-style="bold_contrast"] .cta-button{border-radius:6px;text-transform:uppercase;letter-spacing:.04em}

    /* ===== luxury_minimal — bronze, airy, Cormorant + Jost, tall portrait frames ===== */
    body[data-menu-style="luxury_minimal"]{--color-primary:#8b6f47;--color-secondary:#b79b6e;--border-radius:14px;--nav-fg: #ffffff;--font-heading: "Archivo SemiCondensed", "Arial Narrow", Arial, sans-serif;--font-body: "Public Sans", Arial, sans-serif;font-family:var(--font-body)}
    body[data-menu-style="luxury_minimal"] .shop-showcase-page,body[data-menu-style="luxury_minimal"] .shop-item-page{background:linear-gradient(180deg,#f5f0e9 0%,#fbf8f3 22%,#fcfaf7 100%)}
    body[data-menu-style="luxury_minimal"] .cta-button{border-radius:999px;letter-spacing:.1em;text-transform:uppercase;font-size:.82rem}
    body[data-menu-style="luxury_minimal"] .shop-showcase-shell,body[data-menu-style="luxury_minimal"] .shop-item-shell{background:rgba(255,255,255,.72);border-color:rgba(139,111,71,.14);box-shadow:0 20px 50px rgba(34,28,24,.06)}
    @media(min-width:861px){body[data-menu-style="luxury_minimal"] .shop-showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}}
    body[data-menu-style="luxury_minimal"] .shop-showcase-card{border-radius:22px;border-color:rgba(139,111,71,.14);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(249,245,239,.96));box-shadow:none}
    body[data-menu-style="luxury_minimal"] .shop-showcase-card:hover{box-shadow:0 18px 40px rgba(34,28,24,.08)}
    body[data-menu-style="luxury_minimal"] .shop-showcase-card img,body[data-menu-style="luxury_minimal"] .shop-showcase-image-placeholder{height:auto;aspect-ratio:3/4}
    body[data-menu-style="luxury_minimal"] .shop-showcase-card-copy{padding:1rem 1.05rem 1.15rem;gap:.45rem}
    body[data-menu-style="luxury_minimal"] .shop-showcase-card h2,body[data-menu-style="luxury_minimal"] .shop-showcase-page h1,body[data-menu-style="luxury_minimal"] .shop-item-copy h1{font-family:'Cormorant Garamond','Times New Roman',serif;font-weight:600;letter-spacing:.01em}
    body[data-menu-style="luxury_minimal"] .shop-showcase-page h1{font-size:clamp(2rem,3.4vw,3rem)}
    body[data-menu-style="luxury_minimal"] .shop-showcase-card h2{font-size:1.2rem}
    body[data-menu-style="luxury_minimal"] .shop-showcase-card .shop-showcase-kicker{letter-spacing:.24em}
    body[data-menu-style="luxury_minimal"] .shop-showcase-price{background:transparent;color:#8b6f47;border:1px solid rgba(139,111,71,.4);border-radius:999px;padding:.2rem .7rem;font-weight:500}
    body[data-menu-style="luxury_minimal"] .shop-category-chip{border-radius:999px;border-color:rgba(139,111,71,.3);background:rgba(252,250,247,.9)}

    /* ===== playful_casual — orange, rounded, Poppins, friendly ===== */
    body[data-menu-style="playful_casual"]{--color-primary:#ea580c;--color-secondary:#f59e0b;--border-radius:18px;--nav-fg: #ffffff;--font-heading: "Archivo SemiCondensed", "Arial Narrow", Arial, sans-serif;--font-body: "Public Sans", Arial, sans-serif;font-family:var(--font-body)}
    body[data-menu-style="playful_casual"] .shop-showcase-page,body[data-menu-style="playful_casual"] .shop-item-page{background:linear-gradient(180deg,#fff0e3 0%,#fff7f0 26%,#fffaf5 100%)}
    body[data-menu-style="playful_casual"] .shop-showcase-shell,body[data-menu-style="playful_casual"] .shop-item-shell{background:rgba(255,255,255,.85);border-color:rgba(234,88,12,.14);box-shadow:0 20px 46px rgba(234,88,12,.08)}
    body[data-menu-style="playful_casual"] .shop-showcase-card,body[data-menu-style="playful_casual"] .shop-item-media,body[data-menu-style="playful_casual"] .shop-item-copy{border-radius:24px;border-color:rgba(234,88,12,.14);background:linear-gradient(180deg,#fff,#fff4ea)}
    body[data-menu-style="playful_casual"] .shop-showcase-card:hover{transform:translateY(-4px) rotate(-.4deg);box-shadow:0 18px 36px rgba(234,88,12,.16)}
    body[data-menu-style="playful_casual"] .shop-showcase-card img,body[data-menu-style="playful_casual"] .shop-showcase-image-placeholder{height:auto;aspect-ratio:5/4}
    body[data-menu-style="playful_casual"] .shop-showcase-card h2,body[data-menu-style="playful_casual"] .shop-showcase-page h1,body[data-menu-style="playful_casual"] .shop-item-copy h1{font-family:'Poppins','Trebuchet MS',sans-serif;font-weight:700;letter-spacing:-.01em}
    body[data-menu-style="playful_casual"] .shop-showcase-price{border:0;border-radius:999px;background:linear-gradient(135deg,#ea580c,#f59e0b);color:#fff;padding:.26rem .72rem;font-weight:700}
    body[data-menu-style="playful_casual"] .shop-category-chip{border-radius:999px;background:color-mix(in srgb,#ea580c 12%,#fff);border-color:rgba(234,88,12,.2)}
    body[data-menu-style="playful_casual"] .cta-button{border-radius:999px}

    /* ===== 3B: Editorial gallery — imagery-led layout for visual brands (art/fashion/decor) ===== */
    body[data-menu-style="editorial"] .shop-showcase-page,body[data-menu-style="editorial"] .shop-item-page{background:linear-gradient(180deg,#fafaf9 0%,#fff 18%)}
    body[data-menu-style="editorial"] .shop-showcase-shell,body[data-menu-style="editorial"] .shop-item-shell{background:#fff;border-color:rgba(28,25,23,.08);box-shadow:0 20px 50px rgba(28,25,23,.05)}
    body[data-menu-style="editorial"] .shop-showcase-heading{font-size:clamp(2.3rem,4.6vw,3.7rem);letter-spacing:-.02em}
    body[data-menu-style="editorial"] .shop-showcase-intro{font-size:.92rem;max-width:560px}
    body[data-menu-style="editorial"] .shop-showcase-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:clamp(30px,3vw,52px)}
    body[data-menu-style="editorial"] .shop-showcase-card{border:none;border-radius:4px;background:transparent;box-shadow:none;overflow:visible}
    body[data-menu-style="editorial"] .shop-showcase-card:hover{transform:none;box-shadow:none}
    body[data-menu-style="editorial"] .shop-showcase-card-media{border-radius:5px;overflow:hidden;box-shadow:0 10px 30px rgba(28,25,23,.09);transition:box-shadow .3s ease,transform .3s ease}
    body[data-menu-style="editorial"] .shop-showcase-card:hover .shop-showcase-card-media{box-shadow:0 20px 46px rgba(28,25,23,.16);transform:translateY(-4px)}
    body[data-menu-style="editorial"] .shop-showcase-card img,body[data-menu-style="editorial"] .shop-showcase-card .shop-showcase-image-placeholder{height:auto;aspect-ratio:4/5}
    body[data-menu-style="editorial"] .shop-showcase-card-copy{padding:.95rem .15rem 0;text-align:left;gap:.32rem}
    body[data-menu-style="editorial"] .shop-showcase-card h2{font-size:1.14rem;color:#1c1917;letter-spacing:-.01em}
    body[data-menu-style="editorial"] .shop-showcase-card-copy .shop-showcase-kicker{letter-spacing:.18em;color:#a8a29e}
    body[data-menu-style="editorial"] .shop-showcase-price{background:transparent;border:none;padding:0;color:#1c1917;font-size:.98rem;font-weight:700}
    body[data-menu-style="editorial"] .shop-showcase-card-copy p:last-of-type{color:#78716c}
    body[data-menu-style="editorial"] .shop-showcase-card-actions{margin-top:.65rem}
    body[data-menu-style="editorial"] .shop-showcase-item-link,body[data-menu-style="editorial"] .cta-button{border-radius:2px;letter-spacing:.05em;text-transform:uppercase;font-size:.74rem}
    body[data-menu-style="editorial"] .shop-cat-chip,body[data-menu-style="editorial"] .shop-sort{border-radius:2px}
    body[data-menu-style="editorial"] .shop-showcase-view-link{border-radius:2px}
    @media(min-width:1200px){body[data-menu-style="editorial"] .shop-showcase-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}}

    /* ===== Product image shape (owner choice — overrides the preset's default aspect) ===== */
    body[data-shop-img="square"] .shop-showcase-card>img,body[data-shop-img="square"] .shop-showcase-card>.shop-showcase-image-placeholder{aspect-ratio:1/1}
    body[data-shop-img="landscape"] .shop-showcase-card>img,body[data-shop-img="landscape"] .shop-showcase-card>.shop-showcase-image-placeholder{aspect-ratio:4/3}
    body[data-shop-img="portrait"] .shop-showcase-card>img,body[data-shop-img="portrait"] .shop-showcase-card>.shop-showcase-image-placeholder{aspect-ratio:4/5}
  

/* ── SiteHub nav token enforcement (post-processed) ── */
:root{--sitehub-header-nav-fg:#B45309;--sitehub-on-primary-fg:#ffffff;}

/* ── SiteHub canvas enforcement (post-processed) ── */
body{background:var(--color-background) !important;}

/* ── SiteHub global navigation enforcement (post-processed) ── */
header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.98) !important;border-bottom:1px solid rgba(0,0,0,.1) !important;box-shadow:0 10px 24px rgba(15,23,42,.08) !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}header .nav-inner{max-width:min(1380px,calc(100vw - 32px));margin:0 auto;padding:0 18px;display:flex !important;justify-content:space-between;align-items:center;gap:22px;min-height:84px}header img.logo{max-height:72px;max-width:min(260px,34vw);width:auto;height:auto;display:block;object-fit:contain;filter:none !important;background:transparent !important;padding:0 !important;border-radius:0 !important;box-shadow:none !important;position:relative;z-index:1}.brand{display:flex;align-items:center;gap:14px;min-width:0;text-decoration:none;position:relative}.brand-name{color:var(--sitehub-header-nav-fg,var(--nav-fg,var(--color-primary,#111827)));font-family:var(--font-heading);font-size:1.02rem;font-weight:700;white-space:normal;letter-spacing:.01em;max-width:clamp(180px,32vw,360px);line-height:1.12;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;position:relative;z-index:1}nav{display:flex;align-items:center;justify-content:flex-end;flex:1 1 auto;min-width:0}nav #nav-links{display:flex !important;flex-direction:row !important;align-items:center;justify-content:flex-end;flex-wrap:nowrap;list-style:none !important;gap:22px;padding:0;margin:0;background:transparent !important;position:static !important}nav #nav-links li{padding:0;border:none;flex:0 0 auto}nav #nav-links a,nav #nav-links .nav-more-trigger{color:var(--sitehub-header-nav-fg,var(--nav-fg,var(--color-primary,#111827)));text-decoration:none;font-weight:600;font-family:var(--font-body);font-size:.83rem;letter-spacing:.015em;white-space:nowrap;line-height:1.1}nav #nav-links a:hover,nav #nav-links .nav-more-trigger:hover{opacity:.78}nav #nav-links li.nav-more{position:relative;padding-bottom:14px;margin-bottom:-14px}nav #nav-links .nav-more::after{content:'';position:absolute;left:0;right:0;top:100%;height:16px}nav #nav-links .nav-more-trigger{background:transparent;border:0;cursor:pointer;padding:0}nav #nav-links .nav-more-trigger::after{content:' ▾';font-size:.78em}nav #nav-links .sub-nav{display:none;list-style:none;position:absolute;top:calc(100% + 2px);right:0;min-width:200px;padding:14px 16px;margin:0;background:rgba(255,255,255,.98);border:1px solid rgba(0,0,0,.1);border-radius:14px;box-shadow:0 18px 36px rgba(15,23,42,.12);z-index:1002}nav #nav-links .sub-nav li+li{margin-top:10px}nav #nav-links .sub-nav a{display:block;white-space:nowrap;color:var(--sitehub-header-nav-fg,var(--nav-fg,var(--color-primary,#111827)))}nav #nav-links .nav-more:hover .sub-nav,nav #nav-links .nav-more:focus-within .sub-nav,nav #nav-links .nav-more.open .sub-nav{display:block}header+section,header+main,header+main>section:first-of-type{margin-top:0 !important;padding-top:0 !important}#hamburger{display:none;background:none;border:none;color:var(--sitehub-header-nav-fg,var(--nav-fg,var(--color-primary,#111827)));font-size:1.5rem;cursor:pointer;font-family:inherit}@media (max-width:1320px){header .nav-inner{padding:0 16px;gap:16px}nav #nav-links{gap:16px}nav #nav-links a,nav #nav-links .nav-more-trigger{font-size:.79rem}}@media (max-width:1024px){#hamburger{display:block !important}header .nav-inner{min-height:78px}header img.logo{max-height:64px;max-width:min(230px,52vw)}nav #nav-links{display:none !important;flex-direction:column !important;align-items:stretch;gap:0 !important;position:absolute !important;top:78px;left:0;right:0;background:rgba(255,255,255,.99) !important;padding:10px 20px;z-index:999;border-top:1px solid rgba(0,0,0,.1);box-shadow:0 16px 32px rgba(15,23,42,.12)}nav #nav-links.open{display:flex !important}nav #nav-links li{padding:10px 0;border-bottom:1px solid rgba(0,0,0,.08)}nav #nav-links li.nav-more{padding-bottom:10px;margin-bottom:0}nav #nav-links .nav-more::after{display:none}nav #nav-links a{font-size:1rem;padding:8px 0;display:flex;align-items:center;min-height:44px;color:var(--sitehub-header-nav-fg,var(--nav-fg,var(--color-primary,#111827))) !important}nav #nav-links .nav-more-trigger{width:100%;min-height:44px;text-align:left;padding:8px 0;color:var(--sitehub-header-nav-fg,var(--nav-fg,var(--color-primary,#111827))) !important}nav #nav-links .sub-nav{display:block;position:static;min-width:0;padding:0 0 0 14px;margin-top:6px;background:transparent;border:0;border-radius:0;box-shadow:none}nav #nav-links .sub-nav li{border-bottom:0;padding:6px 0}nav #nav-links .sub-nav a{min-height:36px;font-size:.98rem;opacity:.92;color:var(--sitehub-header-nav-fg,var(--nav-fg,var(--color-primary,#111827))) !important}}

/* ── SiteHub font enforcement (post-processed) ── */
body, p, li, a, span, div, button, input, textarea, label, select, td, th, blockquote, figcaption, nav, ul, ol, dl, dt, dd, address, small, strong, em, b, footer, header, main, section, article, aside, figure, details, summary { font-family: "Public Sans", Arial, sans-serif !important; }
h1, h2, h3, h4, h5, h6, .brand-name, .stat-number { font-family: "Archivo SemiCondensed", "Arial Narrow", Arial, sans-serif !important; }

/* ── SiteHub layout polish (post-processed) ── */
html{scroll-behavior:smooth}body{overflow-x:clip}main>section:not(#hero),body>section:not(#hero),main>.section:not(#hero),body>.section:not(#hero){margin-top:0 !important;margin-bottom:0 !important;padding-top:clamp(30px,3.6vw,54px) !important;padding-bottom:clamp(30px,3.6vw,54px) !important}main>section:not(#hero) .container,body>section:not(#hero) .container,main>.section:not(#hero) .container,body>.section:not(#hero) .container{width:min(1140px,calc(100% - 32px));margin-inline:auto}section h2,.section h2{margin:0 0 .8rem;line-height:1.08;text-wrap:balance}section h3,.section h3{line-height:1.14}section p:last-child,.section p:last-child{margin-bottom:0}.sitehub-section-intro,.section-intro,section .lead,.section .lead{max-width:58rem;margin:0 auto 1rem;line-height:1.6}.about-grid,.cards-grid,.gallery-grid,.testimonials-grid,.shop-showcase-grid{row-gap:clamp(14px,2vw,24px) !important}.about-grid{align-items:center}.about-photo,.card img,.shop-showcase-card img,.team-photo,.team-card img,.team-card .team-photo{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(180px,240px)) !important;justify-content:center;gap:14px !important}.gallery-item{margin:0 !important}.gallery-item img{display:block;width:100%;height:170px !important;object-fit:cover;border-radius:var(--border-radius)}section .card,section .shop-showcase-shell,section .testimonial-card,section .blog-card{margin-top:0 !important}@media (max-width:767px){main>section:not(#hero),body>section:not(#hero),main>.section:not(#hero),body>.section:not(#hero){padding-top:30px !important;padding-bottom:30px !important}.sitehub-section-intro,.section-intro,section .lead,.section .lead{margin-bottom:.9rem}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}.gallery-item img{height:150px !important}.about-photo,.card img,.shop-showcase-card img,.team-photo,.team-card img{aspect-ratio:16/10}}


/* ── SiteHub enrichment components (art-directed, Phase 2) ── */
.sh-enrichment { padding: var(--section-padding, 72px) 0; }
.sh-enrichment .container { max-width: var(--max-width, 1160px); margin: 0 auto; padding-left: 24px; padding-right: 24px; }
.sh-enrichment .section-title { font-family: var(--font-heading, inherit); color: var(--color-text, #1a1a1a); margin-bottom: 28px; }

/* Tables (comparison + spec) */
.sh-table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.sh-table { width: 100%; border-collapse: collapse; background: var(--color-surface, #fff); border-radius: var(--border-radius, 10px); overflow: hidden; font-family: var(--font-body, inherit); }
.sh-table th, .sh-table td { padding: 14px 18px; text-align: left; border-bottom: 1px solid color-mix(in srgb, var(--color-muted, #888) 28%, transparent); vertical-align: top; }
.sh-table thead th { background: var(--color-primary, #222); color: var(--sitehub-on-primary-fg, #fff); font-family: var(--font-heading, inherit) !important; font-weight: 600; }
.sh-table tbody th[scope="row"] { font-weight: 600; color: var(--color-text, #1a1a1a); }
.sh-table tbody tr:last-child th, .sh-table tbody tr:last-child td { border-bottom: 0; }
.sh-table.sh-table-2col th[scope="row"] { width: 38%; background: color-mix(in srgb, var(--color-primary, #222) 6%, var(--color-surface, #fff)); }

/* Stat band */
.sh-stat-band { background: var(--color-primary, #222); }
.sh-stat-band .sh-stats { display: flex; flex-wrap: wrap; gap: 24px; justify-content: space-around; }
.sh-stat { flex: 1 1 160px; text-align: center; color: var(--sitehub-on-primary-fg, #fff); }
.sh-stat-num { display: block; font-family: var(--font-heading, inherit) !important; font-size: clamp(2rem, 4vw, 3rem); font-weight: 700; line-height: 1.05; color: var(--color-accent, #fff); }
.sh-stat-label { display: block; margin-top: 6px; font-size: 0.95rem; opacity: 0.9; letter-spacing: 0.02em; }

/* Process steps */
.sh-process { list-style: none; margin: 0; padding: 0; display: grid; gap: 20px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); counter-reset: sh-step; }
.sh-step { background: var(--color-surface, #fff); border-radius: var(--border-radius, 10px); padding: 26px 22px; border: 1px solid color-mix(in srgb, var(--color-muted, #888) 22%, transparent); }
.sh-step-num { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; background: var(--color-primary, #222); color: var(--sitehub-on-primary-fg, #fff); font-family: var(--font-heading, inherit) !important; font-weight: 700; margin-bottom: 14px; }
.sh-step h3 { font-family: var(--font-heading, inherit); color: var(--color-text, #1a1a1a); margin: 0 0 8px; }
.sh-step p { color: var(--color-muted, #555); margin: 0; }

/* FAQ */
.sh-faq-list { display: grid; gap: 12px; max-width: 820px; }
.sh-faq-item { background: var(--color-surface, #fff); border: 1px solid color-mix(in srgb, var(--color-muted, #888) 22%, transparent); border-radius: var(--border-radius, 10px); padding: 4px 20px; }
.sh-faq-item summary { cursor: pointer; padding: 16px 0; font-family: var(--font-heading, inherit) !important; font-weight: 600; color: var(--color-text, #1a1a1a); list-style: none; position: relative; padding-right: 28px; }
.sh-faq-item summary::-webkit-details-marker { display: none; }
.sh-faq-item summary::after { content: "+"; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); color: var(--color-accent, var(--color-primary, #222)); font-size: 1.4rem; line-height: 1; }
.sh-faq-item[open] summary::after { content: "\2212"; }
.sh-faq-item p { color: var(--color-muted, #555); margin: 0 0 16px; }

/* Pricing tiers */
.sh-pricing { display: grid; gap: 22px; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
.sh-tier { background: var(--color-surface, #fff); border: 1px solid color-mix(in srgb, var(--color-muted, #888) 22%, transparent); border-radius: var(--border-radius, 10px); padding: 28px 24px; display: flex; flex-direction: column; }
.sh-tier h3 { font-family: var(--font-heading, inherit); color: var(--color-text, #1a1a1a); margin: 0 0 8px; }
.sh-tier-price { font-family: var(--font-heading, inherit) !important; font-size: 1.9rem; font-weight: 700; color: var(--color-primary, #222); margin: 0 0 16px; }
.sh-tier-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.sh-tier-list li { color: var(--color-muted, #555); padding-left: 24px; position: relative; }
.sh-tier-list li::before { content: "\2713"; position: absolute; left: 0; color: var(--color-accent, var(--color-primary, #222)); font-weight: 700; }

/* Featured testimonial */
.sh-testimonial-feature .container { max-width: 900px; text-align: center; }
.sh-feature-quote { font-family: var(--font-heading, inherit) !important; font-size: clamp(1.4rem, 3vw, 2rem); line-height: 1.35; color: var(--color-text, #1a1a1a); margin: 0 0 18px; quotes: "\201C" "\201D"; }
.sh-feature-cite { color: var(--color-muted, #555); font-style: normal; font-weight: 600; }

/* Bar chart — CSS-only; fill heights are % of the largest value */
.sh-bars { display: flex; align-items: flex-end; justify-content: space-around; gap: 14px; height: 260px; padding: 26px 4px 0; border-bottom: 2px solid color-mix(in srgb, var(--color-muted, #94a3b8) 30%, transparent); }
.sh-bar { flex: 1 1 0; min-width: 0; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; }
.sh-bar-fill { position: relative; width: 66%; max-width: 78px; min-height: 4px; max-height: 100%; background: linear-gradient(180deg, var(--color-primary, #222), color-mix(in srgb, var(--color-primary, #222) 78%, var(--color-background, #fff))); border-radius: 10px 10px 0 0; }
.sh-bar-value { position: absolute; top: -24px; left: 50%; transform: translateX(-50%); font-family: var(--font-heading, inherit) !important; font-weight: 700; font-size: .95rem; color: var(--color-text, #1a1a1a); white-space: nowrap; }
.sh-bar-label { margin-top: 12px; font-size: .85rem; color: var(--color-muted, #555); text-align: center; line-height: 1.2; }

/* Donut chart — conic-gradient ring + legend */
.sh-donut-wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: clamp(24px, 5vw, 56px); }
.sh-donut { position: relative; width: clamp(160px, 40vw, 220px); aspect-ratio: 1; border-radius: 50%; flex: 0 0 auto; }
.sh-donut::after { content: ""; position: absolute; inset: 27%; background: var(--color-background, #fff); border-radius: 50%; }
.sh-donut-legend { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.sh-donut-legend li { display: flex; align-items: center; gap: 10px; color: var(--color-text, #1a1a1a); font-size: .95rem; }
.sh-donut-legend .sh-dot { width: 14px; height: 14px; border-radius: 4px; flex: 0 0 auto; }

/* Progress bars — labelled horizontal % bars */
.sh-progress-list { display: grid; gap: 20px; max-width: 720px; }
.sh-progress-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 8px; }
.sh-progress-head span:first-child { color: var(--color-text, #1a1a1a); font-weight: 600; }
.sh-progress-num { font-family: var(--font-heading, inherit) !important; font-weight: 700; color: var(--color-primary, #222); }
.sh-progress-track { height: 12px; border-radius: 999px; background: color-mix(in srgb, var(--color-muted, #94a3b8) 24%, transparent); overflow: hidden; }
.sh-progress-fill { height: 100%; max-width: 100%; border-radius: 999px; background: linear-gradient(90deg, var(--color-primary, #222), var(--color-accent, var(--color-primary, #222))); }

@media (max-width: 640px) {
  .sh-stat-band .sh-stats { gap: 16px; }
  .sh-stat { flex-basis: 40%; }
  /* A 2-col spec table in a horizontal scroller hides its value column off-screen on a phone — stack each
     row (label above value, full width) instead so both are readable without sideways scrolling. */
  .sh-table.sh-table-2col, .sh-table.sh-table-2col tbody, .sh-table.sh-table-2col tr { display: block; width: 100%; }
  .sh-table.sh-table-2col th[scope="row"] { display: block; width: auto; background: transparent; border-bottom: 0; padding: 12px 16px 2px; color: var(--color-primary, #222); }
  .sh-table.sh-table-2col td { display: block; width: auto; padding: 0 16px 14px; border-bottom: 1px solid color-mix(in srgb, var(--color-muted, #888) 22%, transparent); }
  .sh-table.sh-table-2col tr:last-child td { border-bottom: 0; }
}


/* ── SiteHub content-grid resilience (post-processed) ── */
.content-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,0.8fr)}
.content-grid>*{min-width:0}
.content-grid table,.content-grid .sh-table{width:100%;max-width:100%;table-layout:fixed}
.content-grid table td,.content-grid table th,.content-grid .sh-table td,.content-grid .sh-table th{overflow-wrap:anywhere;word-break:normal}
@media(max-width:820px){.content-grid{grid-template-columns:1fr}}

/* ── SiteHub mobile nav enforcement (post-processed) ── */
@media (max-width: 767px) {
  nav #nav-links, #nav-links { background: rgba(255,255,255,.99) !important; }
  nav #nav-links a, #nav-links a { color: #4b2e1f !important; }
}

/* ── SiteHub inner hero overlay (post-processed) ── */
.sitehub-inner-hero{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:clamp(300px,44vh,460px);overflow:hidden;text-align:center}.sitehub-inner-hero.sitehub-inner-hero--image{background-image:linear-gradient(180deg,rgba(15,23,42,.58),rgba(15,23,42,.48)),url('hero-800x400.jpg?v=1785320429099');background-position:center 25%;background-size:cover}.sitehub-inner-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,23,42,.22) 0%,rgba(15,23,42,.1) 38%,rgba(15,23,42,.28) 100%);opacity:0;transition:opacity .2s ease;z-index:0}.sitehub-inner-hero.sitehub-inner-hero--image::before{opacity:1}.sitehub-inner-hero>.container,.sitehub-inner-hero .sitehub-inner-hero-content{position:relative;z-index:1}.sitehub-inner-hero.sitehub-inner-hero--image .page-title,.sitehub-inner-hero.sitehub-inner-hero--image .lead,.sitehub-inner-hero.sitehub-inner-hero--image p,.sitehub-inner-hero.sitehub-inner-hero--image a{color:#fff !important;text-shadow:0 2px 20px rgba(0,0,0,.24)}.sitehub-inner-hero.sitehub-inner-hero--image .text-link{text-decoration-color:rgba(255,255,255,.85)}@media (max-width:767px){.sitehub-inner-hero{min-height:clamp(240px,34vh,320px)}}

/* ── SiteHub full-bleed hero enhancement (post-processed) ── */
#hero:not(.hero-split){position:relative;min-height:clamp(460px,72svh,700px);margin-top:0;padding:0;display:flex;align-items:center;justify-content:center;text-align:center;background-image:linear-gradient(180deg,rgba(15,23,42,.5),rgba(15,23,42,.55)),url('hero-800x400.jpg?v=1785320429099');background-size:cover;background-position:center;color:#fff}#hero:not(.hero-split) .hero-content,#hero:not(.hero-split)>.container{position:relative;z-index:1;max-width:840px;margin:0 auto;padding:clamp(28px,5vw,56px) clamp(20px,4vw,32px)}#hero:not(.hero-split) h1{font-size:clamp(2.2rem,5vw,4.2rem);line-height:1.02;margin:0 0 1rem;text-wrap:balance;color:#fff}#hero:not(.hero-split) p{font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.6;max-width:44rem;margin:0 auto 1.4rem;color:rgba(255,255,255,.92)}#hero:not(.hero-split) .cta-button,#hero:not(.hero-split) .btn{box-shadow:0 14px 28px rgba(0,0,0,.22)}@media(max-width:767px){#hero:not(.hero-split){min-height:clamp(380px,60svh,520px)}#hero:not(.hero-split) h1{font-size:clamp(1.9rem,9vw,3rem)}}


/* ── SiteHub hero layout (from editor) ── */
#hero.hero-split { background-image: url('hero-800x400.jpg?v=1785320429099'); background-position: 50% 50%; background-size: 100% auto; background-repeat: no-repeat; display: block !important; position: relative !important; min-height: clamp(540px,78svh,760px); }
#hero.hero-split::before { display: none !important; }
#hero.hero-split::after { content: '' !important; position: absolute !important; inset: 0 !important; background: rgba(2, 6, 23, var(--sitehub-hero-overlay-opacity, 0.35)) !important; z-index: 1 !important; pointer-events: none !important; }
#hero.hero-split .hero-split-image { display: none !important; }
#hero.hero-split .hero-split-text { background: transparent !important; min-height: inherit; display: flex; align-items: center; justify-content: center; padding: clamp(28px,6vw,72px); position: relative; z-index: 2; }
#hero.hero-split .hero-split-text::before { display: none !important; }
#hero.hero-split .hero-split-text .hero-content { max-width: min(760px,92vw); margin: 0 auto; text-align: center; padding: clamp(20px,3vw,32px); border-radius: 24px; background: transparent; backdrop-filter: none; }
#hero.hero-split .hero-actions { justify-content: center; }
.sitehub-hero-motion .sitehub-hero-motion-media video { object-position: 50% 50% !important; transform: scale(1.00) !important; transform-origin: 50% 50% !important; }
@media (max-width: 860px) { #hero.hero-split { min-height: auto !important; } #hero.hero-split .hero-split-text { min-height: clamp(320px, 56svh, 560px) !important; padding: clamp(20px, 6vw, 32px) !important; } #hero.hero-split .hero-content { max-width: min(100%, 32rem) !important; } #hero.hero-split h1 { font-size: clamp(1.9rem, 9vw, 3rem) !important; line-height: 1 !important; } #hero.hero-split p { font-size: clamp(.98rem, 3.6vw, 1.05rem) !important; line-height: 1.55 !important; margin-bottom: .95rem !important; } #hero.hero-split .eyebrow { font-size: .72rem !important; letter-spacing: .16em !important; margin-bottom: .75rem !important; } #hero.hero-split .hero-split-image { min-height: clamp(240px, 38svh, 420px) !important; } }
@media (max-width: 640px) { #hero.hero-split .hero-split-text { min-height: clamp(300px, 52svh, 500px) !important; } #hero.hero-split .hero-split-image { min-height: clamp(220px, 34svh, 320px) !important; } #hero.hero-split .hero-actions { flex-direction: column !important; align-items: stretch !important; gap: 10px !important; } #hero.hero-split .hero-actions > .cta-button, #hero.hero-split .hero-actions > .btn.btn-secondary { width: 100% !important; max-width: none !important; flex: 1 1 auto !important; } }
#hero.hero-split .hero-split-text .hero-content > .cta-button, #hero.hero-split .hero-split-text .hero-content .hero-actions > .cta-button { background: rgba(245, 158, 11, 1) !important; color: #111827 !important; border: 1px solid transparent !important; border-radius: 999px !important; }
#hero.hero-split .hero-split-text .hero-content > .btn.btn-secondary, #hero.hero-split .hero-split-text .hero-content .hero-actions > .btn.btn-secondary { background: rgba(0, 0, 0, 0) !important; color: #ffffff !important; border: 1px solid #ffffff !important; border-radius: 999px !important; }



/* ── SiteHub Art-Director corrective overrides (post-build, self-checked) ── */
header .nav-inner{gap:18px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px;} .brand{flex-shrink:0;} .sh-hdr-tools{flex:1 1 220px;min-width:0;} .sh-site-search form{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.18);border-radius:999px;padding:8px 12px;} .sh-site-search svg{flex:0 0 auto;width:14px;height:14px;color:var(--nav-fg);} .sh-site-search-input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--nav-fg);font:inherit;} .sh-site-search-input::placeholder{color:rgba(255,255,255,0.76);} nav{flex:1 1 100%;justify-content:flex-end;} nav #nav-links{flex-wrap:wrap;justify-content:flex-end;row-gap:10px;column-gap:18px;} nav #nav-links a,nav #nav-links .nav-more-trigger{line-height:1.2;} nav #nav-links .nav-cta a{padding:9px 14px;} #hero{min-height:clamp(560px,88vh,760px);padding:84px 0 72px;} #hero::before{background:linear-gradient(180deg,rgba(69,26,3,0.5),rgba(0,0,0,0.7));} #hero .hero-content{max-width:760px;padding:32px 20px;} .eyebrow{margin-bottom:1rem;padding:7px 12px;font-weight:600;letter-spacing:.1em;} #hero h1{margin-bottom:.75rem;letter-spacing:-0.02em;} #hero p{max-width:680px;line-height:1.75;margin-bottom:2.2rem;} .hero-actions{gap:12px;} .cta-button,.btn{padding:13px 24px;border-radius:calc(var(--border-radius) - 2px);} section{padding:clamp(48px,6vw,72px) 20px;} section h2,.section-title,.section-heading{margin-bottom:1rem;line-height:1.1;letter-spacing:-0.01em;} section > p:first-of-type{margin-bottom:1.6rem;} #about .container,#offerings .container,#contact .container{max-width:980px;} #about p,#about li{max-width:760px;line-height:1.85;} .about-photo{display:block;width:min(100%,720px);margin:0 auto 1.75rem;border-radius:var(--border-radius);box-shadow:0 10px 30px rgba(69,26,3,0.12);} .cards-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px;align-items:stretch;} .card{padding:24px;border-color:rgba(180,83,9,0.14);box-shadow:0 6px 18px rgba(69,26,3,0.05);} .card-photo{height:200px;margin:-24px -24px 1.1rem -24px;} .card h3{line-height:1.15;margin-bottom:.6rem;} .card p{line-height:1.75;} @media (max-width: 720px){header .nav-inner{gap:12px;} .brand-name{font-size:1.05rem;} header img.logo{max-width:min(180px,42vw);max-height:48px;} .sh-hdr-tools,nav{flex-basis:100%;} nav #nav-links{justify-content:flex-start;gap:12px 16px;} #hero .hero-content{padding:24px 16px;} .cta-button,.btn{width:100%;max-width:320px;} .card-photo{height:180px;}}


/* ===== SiteHub premium refinements (auto-appended) ===== */
:root{--sh-shadow:0 8px 20px rgba(15,23,42,.13);--sh-shadow-hover:0 14px 30px rgba(15,23,42,.2)}
html{-webkit-text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
img{max-width:100%}
a{transition:color .15s ease,opacity .15s ease}
:where(a,button,[role="button"]):focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:4px}
::selection{background:color-mix(in srgb,var(--color-primary,#0ea5e9) 20%,#ffffff)}
.cta-button,a.cta-button,button.cta-button,.btn,button.btn,a.btn{
  border-radius:clamp(10px,var(--border-radius,12px),16px);
  box-shadow:var(--sh-shadow);
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.cta-button:hover,.btn:hover{transform:translateY(-2px);box-shadow:var(--sh-shadow-hover);filter:brightness(1.04)}
.cta-button:active,.btn:active{transform:translateY(0);box-shadow:0 6px 16px rgba(15,23,42,.16)}
@media(prefers-reduced-motion:reduce){.cta-button,.btn,a{transition:none}.cta-button:hover,.btn:hover{transform:none}}
/* Split hero: STACK to a single column on phones/tablets. The generated split-hero rule sets a 2-column grid
   with !important, which overrides the non-!important stack rule — so on a ~412px phone each column is ~198px
   and long headings clip. This mobile-only override (loaded last, also !important) restores the stack. */
@media(max-width:860px){#hero.hero-split{grid-template-columns:1fr !important}#hero.hero-split .hero-split-text .hero-content{width:min(100%,32rem) !important}}
/* Angled section edges: the AI sometimes clips sections with clip-path:polygon() for a diagonal look. The %
   offsets are relative to the section's OWN height, so on a tall+narrow phone the slant becomes STEEP and slices
   into the section's heading/first line (headings appear "covered"). Flatten these decorative clips on small
   screens so nothing is cut off. Loaded last + !important so it beats the generated (non-!important) clip. */
@media(max-width:768px){section,[class*="hero"],[class*="banner"],[class*="cta-section"],[class*="angle"],[class*="slant"],[class*="diagonal"]{clip-path:none !important}}

/* === SITEHUB HEADER FIT === */
@media (min-width:1025px){
header .nav-inner{flex-wrap:nowrap}
header nav #nav-links{flex-wrap:nowrap !important}
header .sh-hdr-tools{flex:0 1 auto;min-width:0}
header .sh-site-search{flex:0 1 auto;min-width:0}
header .sh-site-search form{min-width:0}
header .sh-site-search input{min-width:0}
}
/* === END SITEHUB HEADER FIT === */
