/* BooksFirst Uganda 10.63: Uganda market editorial storefront.
   Intentionally overrides presentation only; never replaces checkout, auth or stock actions. */
:root{--ug-ink:#182c3e;--ug-teal:#144b50;--ug-accent:#c44131;--ug-brass:#bf9651;--ug-paper:#fbf8f3;--ug-soft:#f2ede5;--ug-line:#e7dfd5;--ug-serif:Georgia,'Times New Roman',serif}
html{scroll-behavior:smooth}body{color:var(--ug-ink);background:var(--ug-paper)}
body :is(button,a,input,select,textarea):focus-visible{outline:3px solid #a65f18!important;outline-offset:3px}
.utility-bar{background:var(--ug-teal)!important;color:#fff!important}
.site-header,.site-header.bf6-header{background:#fffdf9!important;border-color:var(--ug-line)!important;box-shadow:0 10px 32px rgba(24,44,62,.05)!important}
.site-header .main-nav,.site-header .nav-inner{border-color:var(--ug-line)!important}
.site-header .nav-inner a{font-size:11px;letter-spacing:.01em}
.site-header .nav-inner a:hover,.site-header .header-actions a:hover{color:var(--ug-accent)!important}
.search,.search-desktop,.search-mobile{border-color:#ddd5ca!important;border-radius:6px!important;box-shadow:none!important}
.search button{background:var(--ug-teal)!important;letter-spacing:.05em!important}
.search:focus-within{border-color:var(--ug-teal)!important;box-shadow:0 0 0 3px rgba(20,75,80,.12)!important}
.ug-editorial{position:relative;padding-top:40px;padding-bottom:48px;overflow:hidden}
.ug-editorial-top{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #aaa08e;padding-top:16px;margin-bottom:25px}
.ug-ledger{font:800 10px Montserrat,Arial,sans-serif;letter-spacing:.15em;color:var(--ug-teal)}
.ug-editorial-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(28px,5vw,92px);align-items:center}
.ug-editorial-copy{position:relative;z-index:2;max-width:760px;padding:16px 0 18px}
.ug-intro-kicker{color:var(--ug-accent)!important;text-transform:uppercase;letter-spacing:.11em;font-weight:800;font-size:11px!important;margin-bottom:20px!important}
.ug-editorial-copy h1{font:400 clamp(44px,5.8vw,95px)/1.05 var(--ug-serif)!important;letter-spacing:-.056em;color:var(--ug-ink)!important;margin:0 0 28px!important;max-width:790px;text-wrap:balance}
.ug-editorial-copy>p:not(.ug-intro-kicker){font-size:clamp(13px,1.2vw,16px)!important;line-height:1.85;color:#54616b;max-width:565px;margin:0 0 29px!important}
.ug-editorial-actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px}
.ug-button-main,.ug-button-alt{min-height:50px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 22px;border:1px solid var(--ug-teal);font:800 11px Montserrat,Arial,sans-serif;text-decoration:none!important;letter-spacing:.035em;transition:background .2s,transform .2s,color .2s}
.ug-button-main{background:var(--ug-teal);color:#fff!important}.ug-button-main:hover{background:#0b363b;transform:translateY(-2px)}
.ug-button-alt{color:var(--ug-teal)!important;background:transparent}.ug-button-alt:hover{background:#e8eeed;transform:translateY(-2px)}
.ug-button-main span,.ug-button-alt span{font-size:17px;font-weight:400}
.ug-editorial-foot{margin-top:44px;color:#7c7c70;font:700 9px Montserrat,Arial,sans-serif;letter-spacing:.075em;line-height:1.8}.ug-editorial-foot span{padding:0 6px;color:var(--ug-accent)}
.ug-editorial-photo{position:relative;min-width:0;height:clamp(390px,42vw,620px);margin:0;overflow:hidden;background:#d5d0c7;border-radius:4px 120px 4px 4px}
.ug-editorial-photo:after{content:'';position:absolute;inset:38% 0 0;background:linear-gradient(transparent,rgba(10,25,28,.6));pointer-events:none}
.ug-editorial-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.ug-editorial-photo figcaption{position:absolute;z-index:1;bottom:26px;left:27px;right:27px;display:flex;justify-content:space-between;align-items:end;gap:20px;color:#fff;font-size:10px}.ug-editorial-photo figcaption b{font:400 19px var(--ug-serif)}.ug-editorial-photo figcaption span{color:#eee4d6;font-size:10px}
.ug-collections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid #d8cdc0;margin-top:7px!important;margin-bottom:70px!important;padding:0!important}
.ug-collections a{min-width:0;min-height:141px;padding:25px clamp(17px,2.4vw,42px);display:grid;grid-template-columns:1fr auto;align-content:center;gap:12px;border-right:1px solid #d8cdc0;transition:background .2s}
.ug-collections a:last-child{border-right:0}.ug-collections a:hover{background:#f1e9dd}
.ug-collections a span{grid-column:1/-1;font-size:9px;letter-spacing:.12em;color:var(--ug-accent);font-weight:800}.ug-collections a strong{font:400 clamp(20px,2.35vw,33px)/1.2 var(--ug-serif);letter-spacing:-.04em;color:var(--ug-ink)}.ug-collections a i{align-self:center;color:var(--ug-teal);font-style:normal;font-size:22px}
/* The second, CMS-driven carousel is a campaign feature, not an additional competing hero. */
.page-home .bf9-hero{max-width:min(1440px,94%);margin:0 auto 75px;border-radius:5px;overflow:hidden}
.page-home .bf9-hero-slide{min-height:390px!important}.page-home .bf9-hero-copy h2{font:400 clamp(32px,4.2vw,64px)/1.12 var(--ug-serif)!important;letter-spacing:-.043em!important}
.ug-discover-band{margin-top:10px!important;margin-bottom:90px!important;padding:clamp(30px,5vw,65px)!important;background:var(--ug-ink);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:35px;position:relative;overflow:hidden;border-radius:5px}
.ug-discover-band:after{content:'B';position:absolute;right:17%;top:-110px;font:400 340px/1 var(--ug-serif);color:rgba(255,255,255,.035);pointer-events:none}
.ug-discover-band .ug-ledger{color:#e6bf81}.ug-discover-band h2{color:#fff!important;font:400 clamp(36px,4vw,64px)/1.1 var(--ug-serif)!important;letter-spacing:-.04em!important;margin:15px 0!important;max-width:700px}.ug-discover-band p{color:#c4d5dc;font-size:13px;line-height:1.8;max-width:490px;margin:0}
.ug-discover-band>.ug-button-main{flex-shrink:0;position:relative;z-index:1;background:#e7d5b6;color:#172f34!important;border-color:#e7d5b6}
.page-home .bf9-quick-discovery,.page-home .bf9-shelf,.page-home .bf39-deals-promo,.page-home .bf35-home-reseller{border-radius:4px}
.page-home .bf9-shelf h2,.page-home .bf9-quick-discovery h2,.shop-top h1{font-family:var(--ug-serif)!important;font-weight:400!important;letter-spacing:-.045em!important}
.product-card,.bf9-product-card,.bf10-product-card{border-color:#e8e0d5!important;border-radius:5px!important;background:#fffefa!important;box-shadow:0 5px 24px rgba(20,47,52,.035)!important}
.product-card:hover,.bf9-product-card:hover{box-shadow:0 16px 40px rgba(20,47,52,.13)!important;transform:translateY(-3px)}
.shop-top{padding-top:47px!important}.shop-top h1{font-size:clamp(43px,5vw,74px)!important}.bf7-shelf-banner{border-radius:5px!important}
.btn-primary,.button-primary,.bf9-btn.primary{background:var(--ug-teal)!important;border-color:var(--ug-teal)!important;color:#fff!important}
.btn-outline,.bf9-btn.secondary{border-color:var(--ug-teal)!important;color:var(--ug-teal)!important}
.filters,.summary,.purchase-card{border-color:var(--ug-line)!important;border-radius:6px!important}
.ug-outlet-section{margin-top:85px!important;margin-bottom:100px!important;padding:44px 50px!important;background:#ece9e0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:40px;border-left:5px solid var(--ug-accent)}
.ug-outlet-section h2{font:400 clamp(34px,3.6vw,55px)/1.13 var(--ug-serif)!important;letter-spacing:-.04em!important;margin:16px 0!important}.ug-outlet-section p{max-width:550px;color:#5d6669;font-size:12px;line-height:1.85}.ug-outlet-section address{font-size:13px;font-weight:800;color:var(--ug-teal);font-style:normal;margin-top:16px}
.footer{background:#102a35!important}.newsletter{background:var(--ug-teal)!important}.footer a:hover{color:#e9c792!important}
@media(max-width:980px){.ug-editorial-grid{gap:28px}.ug-editorial-photo{height:480px}.ug-collections a{min-height:125px}}
@media(max-width:720px){.ug-editorial{padding-top:26px;padding-bottom:20px}.ug-editorial-top{margin-bottom:18px}.ug-editorial-top .ug-ledger:last-child{display:none}.ug-editorial-grid{display:flex;flex-direction:column;gap:24px}.ug-editorial-copy{padding:0}.ug-editorial-copy h1{font-size:clamp(44px,10.6vw,69px)!important;line-height:1.06!important;margin-bottom:19px!important}.ug-intro-kicker{margin-bottom:15px!important}.ug-editorial-copy>p:not(.ug-intro-kicker){font-size:13px!important;margin-bottom:19px!important}.ug-editorial-foot{margin-top:24px}.ug-editorial-photo{width:100%;height:380px;border-top-right-radius:90px}.ug-collections{grid-template-columns:1fr;margin-bottom:38px!important}.ug-collections a{min-height:95px;border-right:0;border-bottom:1px solid #d8cdc0;padding:17px 22px}.ug-collections a:last-child{border:0}.ug-collections a strong{font-size:27px}.page-home .bf9-hero{max-width:100%;border-radius:0;margin-bottom:35px}.page-home .bf9-hero-slide{min-height:410px!important}.ug-discover-band{margin-bottom:45px!important;padding:28px!important;align-items:stretch;flex-direction:column;gap:24px}.ug-discover-band h2{font-size:40px!important}.ug-discover-band>.ug-button-main{align-self:flex-start}.ug-outlet-section{margin-top:50px!important;margin-bottom:55px!important;padding:28px!important;grid-template-columns:1fr;gap:22px}.ug-outlet-section h2{font-size:40px!important}.ug-outlet-section>.ug-button-alt{justify-self:start}.mobile-tab{grid-template-columns:repeat(5,minmax(0,1fr))!important}.mobile-tab .ug-mobile-discover{font-size:9px!important;font-weight:900;color:var(--ug-accent)!important;display:grid!important;place-items:center}.site-header{z-index:600}}
@media(max-width:400px){.ug-editorial-copy h1{font-size:43px!important}.ug-editorial-photo{height:330px}.ug-editorial-actions{gap:9px}.ug-button-main,.ug-button-alt{font-size:10px;padding:14px 16px;min-height:48px}.ug-editorial-photo figcaption{left:18px;right:18px}.ug-discover-band h2{font-size:34px!important}.ug-editorial-foot{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ug-button-main,.ug-button-alt,.ug-collections a,.product-card,.bf9-product-card{transition:none!important;transform:none!important}}
