/*
Theme Name: ByLingos Demo Showcase
Theme URI: https://bylingos.com/
Author: ByLingos
Description: Lightweight, editable demonstration storefront theme for approved review sites.
Version: 1.0.0
Text Domain: bylingos-demo
*/

:root { --ink:#15231d; --paper:#fffdf6; --muted:#617069; --accent:#e3702d; --accent-2:#f4bd53; --line:#e6e2d8; --surface:#f6f3e9; --max:1120px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:16px; line-height:1.6; }
body.site-cartwrights { --ink:#142131; --paper:#f6f7f8; --surface:#e7edf2; --line:#cad4df; --accent:#dc531e; --accent-2:#163f63; }
body.site-tikibikinihut { --ink:#153f4b; --paper:#fff8e8; --surface:#e1f4ee; --line:#c4e5dc; --accent:#d45b35; --accent-2:#0f9d99; }
body.site-genevabrass { --ink:#152a31; --paper:#fbf9f3; --surface:#e5f0ed; --line:#c8d8d4; --accent:#bd5a35; --accent-2:#145f6d; }
body.site-ambristers { --ink:#1d2920; --paper:#fffdf3; --surface:#e9efe2; --line:#d6dfcb; --accent:#a85a25; --accent-2:#486b35; }
a { color:inherit; text-underline-offset:3px; }
img { max-width:100%; height:auto; }
.demo-banner { background:var(--ink); color:#fff; text-align:center; padding:.55rem 1rem; font-size:.78rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.site-header { position:sticky; top:0; z-index:10; background:color-mix(in srgb,var(--paper) 94%,transparent); backdrop-filter:blur(14px); border-bottom:1px solid var(--line); }
.header-inner { width:min(var(--max),calc(100% - 2rem)); margin:auto; min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; }
.brand { text-decoration:none; display:flex; flex-direction:column; line-height:1.05; min-width:0; }
.brand-name { font-family:Georgia,serif; font-size:clamp(1.15rem,2.7vw,1.7rem); font-weight:900; letter-spacing:-.04em; }
.brand-label { font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); margin-top:.35rem; }
.primary-nav .menu { list-style:none; display:flex; align-items:center; gap:1rem; padding:0; margin:0; }
.primary-nav a { text-decoration:none; font-size:.88rem; font-weight:750; }
.primary-nav a:hover { color:var(--accent); }
.menu-toggle { display:none; border:1px solid var(--line); border-radius:6px; background:var(--paper); padding:.5rem .65rem; color:var(--ink); }
.site-main { overflow:hidden; }
.hero { background:linear-gradient(135deg,var(--surface),var(--paper)); border-bottom:1px solid var(--line); padding:clamp(3rem,8vw,7rem) 0; }
.hero-grid { width:min(var(--max),calc(100% - 2rem)); margin:auto; display:grid; grid-template-columns:1.2fr .8fr; gap:2.5rem; align-items:center; }
.eyebrow { color:var(--accent); font-size:.78rem; font-weight:900; text-transform:uppercase; letter-spacing:.13em; margin:0 0 .8rem; }
.hero h1, .entry-content h1 { font-family:Georgia,serif; letter-spacing:-.055em; font-size:clamp(2.8rem,6.2vw,5.8rem); line-height:.94; max-width:11ch; margin:.1em 0 .35em; }
.hero-copy { color:var(--muted); font-size:clamp(1.05rem,1.8vw,1.25rem); max-width:52ch; }
.hero-badge { aspect-ratio:1; max-width:360px; justify-self:end; width:100%; background:var(--ink); border-radius:48% 52% 39% 61% / 60% 45% 55% 40%; color:#fff; display:grid; place-items:center; padding:2rem; box-shadow:14px 14px 0 var(--accent); transform:rotate(-5deg); }
.hero-badge span { font-family:Georgia,serif; font-size:clamp(1.8rem,4vw,3.4rem); line-height:1.03; text-align:center; transform:rotate(5deg); }
.button, .wp-element-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit { display:inline-block; border:0; border-radius:5px; background:var(--accent); color:#fff !important; padding:.78rem 1rem; font-weight:850; letter-spacing:.02em; text-decoration:none; cursor:pointer; box-shadow:none; }
.button:hover, .wp-element-button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .woocommerce #respond input#submit:hover { background:var(--ink); color:#fff; }
.button.alt { background:transparent; color:var(--ink)!important; border:1px solid var(--ink); }
.button.alt:hover { background:var(--ink); }
.entry-content { width:min(var(--max),calc(100% - 2rem)); margin:0 auto; padding:clamp(2.5rem,6vw,5rem) 0; }
.entry-content > h2, .entry-content > h3 { font-family:Georgia,serif; line-height:1.05; letter-spacing:-.035em; }
.entry-content > h2 { font-size:clamp(2rem,4vw,3.5rem); margin-top:1.7em; }
.entry-content > h3 { font-size:1.35rem; }
.entry-content p { max-width:72ch; }
.entry-content .wp-block-columns { gap:1rem; margin:2rem 0; }
.entry-content .wp-block-column { background:var(--surface); border:1px solid var(--line); border-radius:10px; padding:1.25rem; }
.entry-content .wp-block-group { border-left:4px solid var(--accent); background:var(--surface); padding:1.5rem; margin:2rem 0; }
.entry-content .wp-block-button { margin:.8rem .5rem .8rem 0; display:inline-block; }
.site-footer { border-top:1px solid var(--line); background:var(--surface); padding:2.5rem 0; }
.footer-inner { width:min(var(--max),calc(100% - 2rem)); margin:auto; display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; color:var(--muted); font-size:.9rem; }
.footer-title { color:var(--ink); font-weight:850; }
.woocommerce { width:min(var(--max),calc(100% - 2rem)); margin:0 auto; padding:3rem 0; }
.woocommerce ul.products { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1.2rem; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display:none; }
.woocommerce ul.products li.product { width:auto; float:none; margin:0; padding:1.1rem; background:var(--surface); border:1px solid var(--line); border-radius:10px; display:flex; flex-direction:column; }
.woocommerce ul.products li.product a img { background:#fff; border-radius:7px; padding:.45rem; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { color:var(--ink); font-family:Georgia,serif; font-size:1.25rem; padding:0; margin-top:1rem; }
.woocommerce span.onsale { background:var(--accent); min-height:auto; min-width:auto; border-radius:4px; line-height:1; padding:.4rem; }
.woocommerce .price { color:var(--accent)!important; font-weight:850; }
.woocommerce .woocommerce-breadcrumb { color:var(--muted); }
.woocommerce-cart-form, .woocommerce-checkout-review-order, .woocommerce form.checkout, .woocommerce-account .woocommerce-MyAccount-content { background:var(--surface); border:1px solid var(--line); border-radius:10px; padding:1.2rem; }
.woocommerce input.input-text, .woocommerce select, .woocommerce textarea, .demo-pickup-fields input, .demo-pickup-fields select { border:1px solid var(--line); border-radius:5px; padding:.7rem; background:#fff; color:var(--ink); width:100%; }
.demo-pickup-fields { background:var(--surface); border-left:4px solid var(--accent); padding:1rem 1rem .3rem; margin:1.5rem 0; }
.demo-pickup-fields p { margin:.4rem 0 1rem; }
.demo-order-note { padding:1rem; background:#fff4d8; border-left:4px solid var(--accent); }
.woocommerce-message, .woocommerce-info { border-top-color:var(--accent); background:var(--surface); }
.woocommerce-message::before, .woocommerce-info::before { color:var(--accent); }
@media (max-width:740px) { .header-inner { min-height:64px; } .menu-toggle { display:block; } .primary-nav { display:none; position:absolute; top:100%; right:1rem; left:1rem; background:var(--paper); border:1px solid var(--line); border-radius:8px; padding:.75rem; } .primary-nav.is-open { display:block; } .primary-nav .menu { flex-direction:column; align-items:stretch; } .primary-nav a { display:block; padding:.5rem; } .hero-grid { grid-template-columns:1fr; } .hero-badge { justify-self:start; max-width:230px; } .footer-inner { flex-direction:column; } }
