/*
Theme Name: CaliFactory
Theme URI: https://www.califactory.com/
Author: Lynn Chang
Description: Custom editable catalog theme for CaliFactory with hierarchical product categories.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: califactory
*/

@font-face{font-family:CFDisplay;src:local("Arial Narrow");font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f0e8;color:#1e1e1e;font-family:"DM Sans",Arial,sans-serif;line-height:1.6}body.admin-bar .site-header{top:32px}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}.wrap{width:min(1260px,calc(100% - 48px));margin-inline:auto}.site-header{position:fixed;inset:0 0 auto;z-index:100;background:#171717;border-bottom:1px solid #ffffff22}.site-nav{min-height:104px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px}.brand img,.brand .custom-logo{width:115px;max-height:78px}.nav-list{display:flex;align-items:center;gap:30px;margin:0;padding:0;list-style:none}.nav-left{justify-content:flex-end}.nav-right{justify-content:flex-start}.nav-list a,.nav-toggle{font-family:CFDisplay,"Arial Narrow",sans-serif;font-weight:900;letter-spacing:1.4px;text-transform:uppercase;color:#f9f3e9}.nav-list a:hover{color:#ef3b23}.menu-item-has-children{position:relative}.sub-menu{display:none;position:absolute;top:100%;left:0;min-width:250px;margin:0;padding:12px;background:#171717;border-top:3px solid #ef3b23;list-style:none}.menu-item-has-children:hover>.sub-menu,.menu-item-has-children:focus-within>.sub-menu{display:block}.sub-menu li{padding:8px 10px}.cta,.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;background:#ef3b23;color:#fff!important;border:2px solid #171717;box-shadow:4px 4px 0 #171717;font-family:CFDisplay,"Arial Narrow",sans-serif;font-weight:900;letter-spacing:1.2px;text-transform:uppercase}.cta:hover,.button:hover{transform:translateY(-2px);box-shadow:6px 6px 0 #171717}.nav-toggle{display:none;background:none;border:0;font-size:28px}.hero{position:relative;overflow:hidden;padding:180px 0 65px;background:#171717;color:#f9f3e9}.home-hero{min-height:650px;background-image:linear-gradient(#17171788,#17171788),url('assets/images/hero-bg.png');background-size:cover}.hero-copy{position:relative;z-index:2;max-width:650px}.eyebrow{margin:0 0 12px;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.script{color:#ef3b23;font-family:cursive;font-size:22px;transform:rotate(-3deg);display:inline-block}.display{margin:0;font-family:CFDisplay,"Arial Narrow",Impact,sans-serif;font-size:clamp(52px,8vw,96px);font-weight:900;line-height:.92;letter-spacing:-2px;text-transform:uppercase}.display .red,.red{color:#ef3b23}.lead{max-width:580px;font-size:18px;color:#e9e3da}.hero-character{position:absolute;right:max(4vw,40px);bottom:-5px;width:min(50vw,640px)}.ticker{overflow:hidden;padding:12px 0;background:#ef3b23;border-bottom:3px solid #171717;box-shadow:0 4px 0 #171717}.ticker-track{display:flex;width:max-content;gap:40px;animation:ticker 25s linear infinite;font-family:CFDisplay,Impact,sans-serif;font-size:28px;font-weight:900;letter-spacing:3px;color:#fff}@keyframes ticker{to{transform:translateX(-50%)}}.section{padding:72px 0}.section.white{background:#fff}.section.dark{background:#1e1e1e;color:#f9f3e9}.section.red-bg{background:#ef3b23;color:#fff}.section-title{margin:0;font-family:CFDisplay,Impact,sans-serif;font-size:clamp(38px,5vw,58px);line-height:1;text-transform:uppercase}.section-intro{max-width:670px;color:#575757}.dark .section-intro{color:#eee}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:42px}.card{background:#fff;border:1px solid #1e1e1e18;transition:.2s}.card:hover{transform:translateY(-4px)}.card-image{aspect-ratio:4/3;overflow:hidden;background:#eae7e7}.card-image img{width:100%;height:100%;object-fit:cover}.card-body{padding:24px}.card-title{margin:0 0 8px;font-family:CFDisplay,Impact,sans-serif;font-size:32px;line-height:1;text-transform:uppercase}.badge{display:inline-block;margin-bottom:12px;padding:4px 7px;background:#575757;color:#fff;font-family:CFDisplay,Impact,sans-serif;font-size:12px;letter-spacing:.6px;text-transform:uppercase}.steps,.features{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:42px}.step,.feature{padding:30px;background:#f5f0e8;border:1px solid #1e1e1e18;box-shadow:6px 6px 0 #1e1e1e}.step-number{color:#ef3b23;font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.split-image{min-height:460px;background:#eae7e7}.split-image img{width:100%;height:100%;object-fit:cover}.quote-grid{display:grid;grid-template-columns:380px 1fr;gap:50px}.quote-box{padding:44px;background:#f5f0e8;color:#1e1e1e;border:3px solid #1e1e1e;box-shadow:8px 8px 0 #1e1e1e}.quote-box input,.quote-box textarea,.quote-box select{width:100%;margin-bottom:14px;padding:13px;border:1px solid #aaa;background:#fff;font:inherit}.site-footer{padding:60px 0 25px;background:#171717;color:#f9f3e9}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px}.footer-links{margin:0;padding:0;list-style:none}.footer-links li{margin:8px 0}.footer-bottom{margin-top:45px;padding-top:20px;border-top:1px solid #ffffff22;color:#aaa;font-size:13px}.product-hero{padding-top:160px}.breadcrumbs{margin-bottom:25px;color:#aaa;font-size:12px;text-transform:uppercase}.product-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.product-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.product-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.product-content{font-size:17px}.product-content h2,.product-content h3{font-family:CFDisplay,Impact,sans-serif;text-transform:uppercase}.specs{margin:0}.spec-row{display:grid;grid-template-columns:1fr 2fr;gap:22px;padding:16px 0;border-bottom:1px solid #ddd}.spec-row dt{font-weight:800;text-transform:uppercase}.taxonomy-head{padding:170px 0 60px;background:#171717;color:#fff}.subcategory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:35px}.empty{padding:30px;border:1px dashed #aaa}.pagination{margin-top:35px}.pagination .page-numbers{display:inline-block;padding:8px 12px;background:#fff}.pagination .current{background:#ef3b23;color:#fff}.wp-block-image img{height:auto}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){body.admin-bar .site-header{top:46px}.site-nav{display:flex;justify-content:space-between;min-height:90px}.nav-toggle{display:block}.nav-left,.nav-right{display:none;position:absolute;top:90px;left:0;right:0;background:#171717;padding:18px 24px;flex-direction:column;align-items:flex-start}.nav-left.open{display:flex}.nav-right.open{display:flex;top:auto;transform:translateY(100%)}.sub-menu{position:static;display:block;padding-left:15px;border:0}.hero{padding-top:140px}.hero-character{opacity:.38;width:75vw;right:-15vw}.cards,.steps,.features,.subcategory-grid{grid-template-columns:repeat(2,1fr)}.split,.quote-grid,.product-hero-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.quote-grid{gap:28px}}
@media(max-width:600px){.wrap{width:min(100% - 32px,1260px)}.display{font-size:54px}.section{padding:52px 0}.cards,.steps,.features,.subcategory-grid,.footer-grid{grid-template-columns:1fr}.product-gallery{grid-template-columns:1fr}.spec-row{grid-template-columns:1fr}.hero-character{width:100vw}.card{display:grid;grid-template-columns:42% 1fr}.card-image{aspect-ratio:auto}.card-title{font-size:25px}}
