
    :root { --green:#193e34; --green-2:#274b3f; --gold:#d4a76e; --gold-dark:#aa7843; --cream:#f5f0e6; --paper:#fffcf6; --ink:#2d342e; --muted:#777970; --line:#ded8cb; --clay:#b55f3b; }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; background:var(--paper); color:var(--ink); font:15px/1.55 Arial, Helvetica, sans-serif; }
    body.no-scroll { overflow:hidden; }
    button, input, select { font:inherit; }
    button { cursor:pointer; }
    a { color:inherit; text-decoration:none; }
    button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
    .serif { font-family:Georgia, 'Times New Roman', serif; }
    .wrap { max-width:1232px; padding:0 32px; margin:0 auto; }
    .announce { padding:9px 18px; background:#d9b487; color:#27372f; font-size:11px; letter-spacing:.13em; text-align:center; font-weight:700; text-transform:uppercase; }
    .site-header { background:var(--paper); border-bottom:1px solid #eae4d9; position:sticky; top:0; z-index:20; }
    .head-main { display:flex; min-height:88px; gap:24px; align-items:center; }
    .brand { display:flex; align-items:center; gap:13px; flex-shrink:0; }
    .brand-mark { width:49px; height:49px; border:1.7px solid var(--green); border-radius:50%; display:grid; place-items:center; color:var(--green); font:30px Georgia,serif; position:relative; }
    .brand-mark:after { content:''; position:absolute; inset:5px; border:1px solid #c9ae81; border-radius:50%; }
    .brand-name { font-family:Georgia,serif; font-size:21px; line-height:1.07; letter-spacing:-.04em; color:var(--green); max-width:330px; }
    .brand-sub { color:#9a7d58; font-size:9px; letter-spacing:.21em; margin-top:5px; text-transform:uppercase; font-weight:700; }
    .desktop-nav { display:flex; gap:23px; align-items:center; margin-left:auto; }
    .desktop-nav a { font-size:12px; font-weight:700; letter-spacing:.035em; position:relative; padding:10px 0; }
    .desktop-nav a:hover:after { content:''; background:var(--gold-dark); height:2px; position:absolute; bottom:4px; left:0; right:0; }
    .head-tools { display:flex; align-items:center; gap:14px; margin-left:5px; }
    .icon-button { border:0; background:none; display:inline-flex; justify-content:center; align-items:center; position:relative; padding:8px; color:var(--green); }
    .icon-button svg { width:22px; height:22px; stroke:currentColor; stroke-width:1.7; fill:none; }
    .bag-count { position:absolute; right:-4px; top:-2px; background:var(--clay); color:white; border-radius:50%; display:grid; place-items:center; min-width:17px; height:17px; padding:0 4px; font-size:10px; font-weight:bold; }
    .menu-button { display:none; }
    .mobile-nav { display:none; }
    .hero { background:var(--green); color:#f6f1e6; overflow:hidden; position:relative; }
    .hero:before { content:''; position:absolute; height:800px; width:800px; right:-330px; top:-360px; border:1px solid rgba(221,195,152,.12); border-radius:50%; box-shadow:0 0 0 115px rgba(220,194,151,.03),0 0 0 230px rgba(220,194,151,.025); pointer-events:none; }
    .hero-inner { display:grid; grid-template-columns:1.05fr .95fr; min-height:538px; align-items:center; gap:30px; position:relative; }
    .hero-copy { padding:55px 0 68px; position:relative; z-index:2; }
    .eyebrow { display:flex; gap:13px; align-items:center; font-size:10px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; }
    .eyebrow:before { content:''; width:28px; height:1px; background:var(--gold); }
    .hero .eyebrow { color:#dabb8f; }
    .hero h1 { font:normal clamp(49px,5.2vw,78px)/1.09 Georgia,serif; letter-spacing:-.05em; max-width:620px; margin:25px 0 23px; }
    .hero h1 em { color:#ddb582; font-style:italic; }
    .hero p { max-width:430px; color:#d7ded6; font-size:15px; line-height:1.8; margin:0 0 31px; }
    .hero-buttons { display:flex; gap:18px; align-items:center; flex-wrap:wrap; }
    .btn { border:1px solid transparent; min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:0 24px; font-weight:700; font-size:11px; text-transform:uppercase; letter-spacing:.1em; transition:transform .2s,background .2s; }
    .btn:hover { transform:translateY(-2px); }
    .btn-gold { background:var(--gold); color:#183d32; }
    .btn-outline { background:transparent; border-color:#8c9d90; color:#f9f5e9; }
    .btn-dark { background:var(--green); color:white; }
    .text-link { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.11em; border-bottom:1px solid currentColor; padding:8px 0; }
    .hero-books { position:relative; height:510px; isolation:isolate; }
    .hero-books:before { content:''; position:absolute; left:7%; right:0; bottom:30px; height:25px; background:#071b16; filter:blur(22px); border-radius:50%; opacity:.65; }
    .display-book { position:absolute; bottom:47px; box-shadow:15px 19px 20px rgba(0,0,0,.27), inset -7px 0 9px rgba(0,0,0,.16); border-radius:3px 9px 9px 3px; display:flex; flex-direction:column; align-items:center; text-align:center; justify-content:space-between; padding:29px 15px 22px; transform-origin:bottom center; }
    .display-book:after { content:''; position:absolute; right:5px; top:5px; bottom:6px; border-right:2px solid rgba(255,255,255,.22); }
    .display-book .small { text-transform:uppercase; font-size:9px; font-weight:700; letter-spacing:.22em; }
    .display-book .big { font:normal 30px/1.05 Georgia,serif; }
    .display-book .orn { font:normal 70px Georgia,serif; opacity:.6; line-height:1; }
    .display-book.one { width:205px; height:335px; left:10%; z-index:1; background:#a75235; color:#f7e5bd; transform:rotate(-12deg); }
    .display-book.two { width:228px; height:380px; left:34%; z-index:3; background:#e2c28f; color:#25493a; transform:rotate(2deg); }
    .display-book.three { width:190px; height:307px; right:1%; z-index:2; background:#648277; color:#f5ead3; transform:rotate(13deg); }
    .seal { position:absolute; top:48px; right:20px; z-index:4; width:98px; height:98px; display:grid; place-items:center; text-align:center; border:1px solid #d4b98d; border-radius:50%; font:italic 15px/1.15 Georgia,serif; color:#ead1ac; transform:rotate(13deg); }
    .seal:after { content:''; inset:6px; position:absolute; border:1px dashed #a89371; border-radius:50%; }
    .feature-band { background:#eee6d8; border-bottom:1px solid #e2d8c8; }
    .feature-grid { display:grid; grid-template-columns:repeat(3,1fr); }
    .feature { display:flex; align-items:center; justify-content:center; gap:18px; min-height:92px; padding:18px; border-right:1px solid #d9cdbb; }
    .feature:last-child { border-right:none; }
    .feature-icon { color:#ab7848; font:normal 34px Georgia,serif; }
    .feature strong { display:block; font-family:Georgia,serif; font-size:17px; font-weight:normal; color:var(--green); }
    .feature span { display:block; color:#7c7b71; font-size:11px; margin-top:3px; }
    .section { padding:90px 0; }
    .section-top { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:32px; }
    .section-kicker { font-size:10px; letter-spacing:.22em; font-weight:800; text-transform:uppercase; color:var(--gold-dark); margin-bottom:10px; }
    .section h2 { font:normal clamp(34px,3.9vw,53px)/1.1 Georgia,serif; letter-spacing:-.045em; color:var(--green); margin:0; }
    .section-intro { color:#76776d; font-size:13px; max-width:430px; margin:14px 0 0; line-height:1.7; }
    .demo-flag { background:#f7edda; border:1px solid #e6d5b3; color:#76512d; padding:10px 15px; font-size:11px; border-radius:3px; }
    .catalog-controls { display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; margin-bottom:31px; }
    .chips { display:flex; flex-wrap:wrap; gap:8px; }
    .chip { padding:10px 15px; color:#677168; background:#f3f0e9; border:1px solid #e9e3d8; border-radius:28px; font-size:11px; font-weight:700; }
    .chip.active, .chip:hover { background:var(--green); color:white; border-color:var(--green); }
    .catalog-search { display:flex; align-items:center; gap:10px; border:1px solid #e0dacd; min-height:42px; padding:0 13px; background:#fff; min-width:235px; }
    .catalog-search svg { width:15px; height:15px; stroke:#7d837b; fill:none; stroke-width:2; }
    .catalog-search input { background:transparent; border:0; outline:0; width:100%; min-width:0; font-size:12px; }
    .book-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px 24px; }
    .book-card { min-width:0; }
    .cover-well { height:293px; background:#f0ebe1; display:flex; justify-content:center; align-items:center; padding:21px; position:relative; overflow:hidden; }
    .cover-well:before { content:''; position:absolute; height:110px; width:160px; bottom:18px; left:50%; transform:translateX(-50%); filter:blur(19px); background:rgba(49,36,22,.15); }
    .book-cover { width:min(175px,78%); height:242px; position:relative; display:flex; flex-direction:column; align-items:center; justify-content:space-between; text-align:center; padding:18px 16px 19px; box-shadow:8px 10px 12px rgba(42,39,31,.22),inset -5px 0 6px rgba(0,0,0,.15),inset 4px 0 2px rgba(255,255,255,.15); border-radius:2px 5px 5px 2px; transition:transform .25s; }
    .book-card:hover .book-cover { transform:translateY(-6px) rotate(-2deg); }
    .book-cover:after { content:''; position:absolute; top:0; bottom:0; left:9px; border-left:1px solid rgba(255,255,255,.18); }
    .cover-top { font-size:8px; letter-spacing:.21em; font-weight:800; text-transform:uppercase; opacity:.85; }
    .cover-title { font:normal 25px/1.04 Georgia,serif; letter-spacing:-.03em; }
    .cover-art { font:normal 66px/1 Georgia,serif; }
    .cover-foot { font-size:8px; letter-spacing:.14em; font-weight:700; text-transform:uppercase; }
    .cover-1 { background:#3c665c; color:#f4e4c4; }.cover-2 { background:#d1a576; color:#352b25; }.cover-3 { background:#953e38; color:#fcebd4; }.cover-4 { background:#d9d7c9; color:#384941; }
    .cover-5 { background:#2c4e67; color:#fff1cf; }.cover-6 { background:#bd6c3a; color:#f4ead0; }.cover-7 { background:#677553; color:#f5ebcf; }.cover-8 { background:#b5a68f; color:#3d3d39; }
    .condition { position:absolute; top:12px; left:12px; z-index:3; background:#fffdf7; color:#53665b; font-weight:800; font-size:9px; letter-spacing:.09em; text-transform:uppercase; padding:6px 10px; }
    .book-meta { padding:16px 0 0; }
    .book-cat { font-size:10px; letter-spacing:.12em; color:#9b835e; text-transform:uppercase; font-weight:800; }
    .book-name { font:normal 21px/1.2 Georgia,serif; color:var(--green); margin:7px 0; }
    .book-author { color:#7e8077; font-size:11px; }
    .book-bottom { display:flex; justify-content:space-between; align-items:center; gap:5px; margin-top:14px; }
    .price { font-family:Georgia,serif; color:var(--green); font-size:20px; }
    .add-btn { border:1px solid #c9d0c6; background:none; border-radius:50%; width:36px; height:36px; font-size:22px; font-weight:normal; color:var(--green); display:grid; place-items:center; transition:background .2s; }
    .add-btn:hover { background:var(--green); color:white; }
    .empty { display:none; padding:35px; text-align:center; background:#f4f0e8; color:#71796e; }
    .catalog-foot { text-align:center; margin-top:40px; font-size:11px; color:#7d8076; }
    .categories { background:#f1ebe0; }
    .category-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:34px; }
    .category-card { background:#fcfaf5; padding:30px; min-height:175px; position:relative; border:1px solid #e1d9ca; transition:transform .2s,background .2s; overflow:hidden; }
    .category-card:hover { transform:translateY(-4px); background:#fff; }
    .category-card .category-symbol { position:absolute; font:normal 90px/1 Georgia,serif; right:17px; bottom:-14px; opacity:.13; color:var(--green); }
    .category-card small { color:var(--gold-dark); text-transform:uppercase; font-size:9px; letter-spacing:.15em; font-weight:800; }
    .category-card h3 { font:normal 26px Georgia,serif; color:var(--green); margin:10px 0 16px; }
    .category-card .explore { font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#728276; }
    .story { background:var(--green); color:#f4f0e8; }
    .story-inner { display:grid; grid-template-columns:.85fr 1.15fr; align-items:center; gap:8%; }
    .story-art { height:355px; position:relative; border:1px solid #668277; background:radial-gradient(circle at 50% 80%,#536e5b 0%,#315548 46%,#24483b 70%); overflow:hidden; }
    .story-art .sun { position:absolute; width:140px; height:140px; border-radius:50%; background:#d6b98e; top:38px; left:calc(50% - 70px); box-shadow:0 0 80px rgba(226,198,155,.2); }
    .story-art .hill { position:absolute; bottom:-80px; left:-30px; width:130%; height:220px; background:#193b32; border-radius:50% 55% 0 0; transform:rotate(7deg); }
    .story-art .hill.two { bottom:-120px; left:-80px; background:#11342b; transform:rotate(-13deg); }
    .story-art .bookline { position:absolute; z-index:4; bottom:34px; left:28%; width:44%; border-bottom:4px solid #e9d8b7; height:80px; border-radius:0 0 50% 50%; box-shadow:0 8px 0 -4px #bb9770; }
    .story-art .bookline:before,.story-art .bookline:after { content:''; position:absolute; bottom:0; width:49%; height:65px; border:3px solid #e9d8b7; border-bottom:0; }
    .story-art .bookline:before { left:0; transform:skewY(13deg); border-radius:0 26px 0 0; }.story-art .bookline:after { right:0; transform:skewY(-13deg); border-radius:26px 0 0 0; }
    .story .section-kicker { color:#d3a877; }
    .story h2 { color:#f4f0e8; }
    .story p { max-width:540px; color:#cedbd1; font-size:14px; line-height:1.9; margin:25px 0 28px; }
    .story-note { display:flex; align-items:center; gap:15px; color:#dbc19b; font:italic 19px Georgia,serif; }
    .story-note:before { content:''; width:38px; border-top:1px solid #dbc19b; }
    .steps { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; margin-top:43px; }
    .step { padding-top:16px; border-top:1px solid #d9d6cc; }
    .step span { font:italic 27px Georgia,serif; color:#a87f4f; }
    .step h3 { font:normal 23px Georgia,serif; margin:12px 0; color:var(--green); }
    .step p { color:#7d7d72; font-size:12px; line-height:1.8; margin:0; }
    .contact-panel { background:#ebdfcb; padding:44px 55px; display:flex; justify-content:space-between; align-items:center; gap:25px; margin-top:80px; }
    .contact-panel h3 { font:normal 32px Georgia,serif; margin:0 0 8px; color:var(--green); }
    .contact-panel p { font-size:12px; color:#697369; max-width:540px; margin:0; }
    footer { background:#15372e; color:#d4ddd4; padding:52px 0 27px; }
    .foot-grid { display:grid; grid-template-columns:1.3fr .7fr .7fr; gap:50px; padding-bottom:47px; }
    .foot-brand { font:normal 29px Georgia,serif; color:#f4eee1; }
    footer p { color:#afc0b3; max-width:340px; font-size:12px; line-height:1.85; }
    footer h4 { color:#d2aa78; font-size:10px; letter-spacing:.18em; text-transform:uppercase; margin:5px 0 18px; }
    footer ul { list-style:none; padding:0; margin:0; display:grid; gap:11px; }
    footer li a { font-size:12px; color:#dce2d8; }
    .footer-bottom { border-top:1px solid #35574b; padding-top:23px; display:flex; justify-content:space-between; gap:20px; font-size:10px; color:#aebeb4; }
    .drawer-backdrop { position:fixed; inset:0; background:rgba(15,29,23,.49); z-index:30; display:none; }
    .drawer-backdrop.open { display:block; }
    .drawer { position:fixed; top:0; right:0; bottom:0; width:min(440px,100vw); background:#fffcf6; z-index:31; transform:translateX(110%); transition:transform .26s; padding:30px; display:flex; flex-direction:column; box-shadow:-5px 0 30px #0002; }
    .drawer.open { transform:translateX(0); }
    .drawer-head { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #ded8cb; padding-bottom:18px; }
    .drawer-head h2 { margin:0; font:normal 29px Georgia,serif; color:var(--green); }
    .drawer-close { border:0; background:none; font-size:29px; color:var(--green); }
    .cart-content { flex:1; overflow:auto; }
    .cart-empty { margin:40px 0; color:#748076; text-align:center; font-size:13px; }
    .cart-row { padding:18px 0; display:flex; gap:15px; border-bottom:1px solid #e7dfd1; align-items:center; }
    .mini-cover { width:48px; height:64px; flex-shrink:0; box-shadow:2px 3px 5px #0002; }
    .cart-row-title { flex:1; font-family:Georgia,serif; font-size:17px; line-height:1.2; }
    .cart-row small { display:block; font-family:Arial,sans-serif; color:#878576; margin-top:5px; }
    .remove { border:0; background:none; text-decoration:underline; color:#aa6d48; font-size:10px; }
    .cart-total { margin:20px 0; display:flex; justify-content:space-between; font:normal 21px Georgia,serif; }
    .cart-warning { background:#f6ead7; color:#785c3d; padding:13px; font-size:11px; line-height:1.6; margin-bottom:18px; }
    .drawer .btn { width:100%; }
    @media(max-width:1080px){.desktop-nav{gap:17px}.hero-books{transform:scale(.85); transform-origin:center right}.book-grid{grid-template-columns:repeat(3,1fr)}.head-main{gap:15px}}
    @media(max-width:800px){.desktop-nav{display:none}.menu-button{display:flex}.head-tools{margin-left:auto}.mobile-nav.open{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #ece4d7;padding:5px 20px 15px}.mobile-nav a{padding:13px;border-bottom:1px solid #ece4d7;font-size:13px}.hero-inner{grid-template-columns:1fr;gap:0}.hero-copy{padding:65px 0 0}.hero-books{height:350px;transform:scale(.72);transform-origin:center center;margin-top:-25px}.feature-grid{grid-template-columns:1fr 1fr}.feature:last-child{grid-column:span 2;border-top:1px solid #d9cdbb}.feature:nth-child(2){border-right:0}.book-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}.story-inner{grid-template-columns:1fr}.story-art{max-width:460px;width:100%;height:290px}.story-copy{padding-top:35px}.steps{gap:20px}.contact-panel{padding:32px;align-items:flex-start;flex-direction:column}}
    @media(max-width:540px){.wrap{padding:0 20px}.announce{font-size:9px}.head-main{min-height:78px}.brand-mark{width:40px;height:40px;font-size:24px}.brand-name{font-size:16px;max-width:215px}.brand-sub{font-size:7px}.head-tools{gap:5px}.hero h1{font-size:47px}.hero-copy{padding:52px 0 0}.hero p{font-size:13px}.hero-books{height:260px;transform:scale(.56);margin:-36px -70px -7px}.seal{right:14%;top:30px}.hero-buttons{gap:14px}.feature{justify-content:flex-start;gap:10px;min-height:80px;padding:15px}.feature-icon{font-size:25px}.feature strong{font-size:14px}.feature span{font-size:10px}.section{padding:65px 0}.section-top{display:block}.section h2{font-size:38px}.section-top .demo-flag{margin-top:20px}.book-grid{gap:27px 13px}.cover-well{height:220px;padding:12px}.book-cover{height:187px;width:125px;padding:12px 9px}.cover-title{font-size:20px}.cover-art{font-size:44px}.cover-top,.cover-foot{font-size:6px}.book-name{font-size:17px}.book-author{font-size:10px}.book-cat{font-size:9px}.price{font-size:18px}.condition{font-size:8px;padding:4px 6px}.category-grid{gap:10px}.category-card{padding:22px;min-height:145px}.category-card h3{font-size:21px}.steps{grid-template-columns:1fr;gap:24px}.contact-panel{margin-top:55px}.contact-panel h3{font-size:27px}.foot-grid{grid-template-columns:1fr 1fr;gap:32px}.foot-grid >div:first-child{grid-column:span 2}.footer-bottom{flex-direction:column}.catalog-search{width:100%}}

/* WordPress / WooCommerce refinements for the standalone front page. */
.admin-bar .site-header{top:32px}
.site-header .icon-button{text-decoration:none}
.book-grid .wp-block-shortcode{grid-column:1/-1}
.real-cover img{display:block;width:100%;height:100%;object-fit:contain}
.real-cover .woocommerce-placeholder{object-fit:contain}
.catalog-footer-actions{display:flex;justify-content:center;margin-top:34px}
.placeholder-badge{margin-top:8px;color:#7b817a;font-size:11px}
.book-card .cover-well a{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.book-card .book-name a{text-decoration:none;color:inherit}
.book-card .book-name a:hover{text-decoration:underline}
.announcement-note{font-size:13px;color:#82796b;max-width:580px;margin-top:12px}
.livraria-home-page .site-header{box-shadow:0 1px 0 #eae4d9}
.hero-search{max-width:460px;margin:-7px 0 24px}
.hero-search label{display:block;margin-bottom:9px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#efd3ac;font-weight:700}
.hero-search-fields{display:flex;min-height:53px;border:1px solid #dbc7a8;background:#fffcf6}
.hero-search-fields input[type=search]{flex:1;min-width:0;border:0!important;background:#fffcf6!important;color:#193e34!important;box-shadow:none!important;border-radius:0!important;padding:12px 15px!important;font-size:13px}
.hero-search-fields input[type=search]:focus-visible{outline:3px solid #d4a76e;outline-offset:2px;z-index:1}
.hero-search-fields button{border:0;background:#d4a76e;color:#173a31;cursor:pointer;padding:10px 21px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;white-space:nowrap}
.hero-search-fields button:hover{background:#ebbe85}
@media(max-width:540px){.hero-search-fields button{padding:10px 13px;font-size:10px}.hero-search-fields input[type=search]{font-size:12px;padding:10px!important}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:540px){.admin-bar .site-header{top:0}.real-cover img{max-height:100%}}
