/* Amaluna — Estrutura fixa: topo, menu, rodapé, gaveta da sacola.
   Gerado por tools/css-build.php a partir de _mockup/extraido/estilo.css.
   Ajustes próprios da loja ficam em 06-loja.css, que não é gerado. */

.container{width:100%;max-width:1800px;margin:auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.skip-link{position:fixed;z-index:100;top:5px;left:10px;transform:translateY(-150%);background:var(--ink);color:white;padding:15px 25px}
.skip-link:focus{transform:none}
.announcement{height:29px;background:#2d2e27;color:#f5f3ed;display:flex;justify-content:center;align-items:center;gap:85px;font-size:16px;letter-spacing:.035em;text-align:center}
.announcement button{height:26px;width:30px;display:grid;place-items:center}
.announcement svg{width:12px;height:12px}
.announce-copy{min-width:310px;animation:gentleIn .45s var(--ease)}
.site-header{height:var(--header);background:#faf9f6ed;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);position:sticky;top:0;z-index:40;border-bottom:1px solid #e5dfd638;transition:box-shadow .3s}
.site-header.scrolled{box-shadow:0 2px 15px #221d1706}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font-family:var(--serif);font-size:27px;letter-spacing:.27em;white-space:nowrap;line-height:1;padding:5px 0}
.brand span{letter-spacing:0}
.main-nav{display:flex;align-items:stretch;gap:27px;align-self:stretch}
.main-nav>a,.nav-collection>a{display:flex;align-items:center;position:relative;font-size:16px;white-space:nowrap}
.main-nav>a:after,.nav-collection>a:after{content:'';position:absolute;left:0;right:0;bottom:25px;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:right;transition:transform .3s var(--ease)}
.main-nav>a:hover:after,.nav-collection:hover>a:after,.main-nav>a.active:after{transform:scaleX(1);transform-origin:left}
.header-actions{display:flex;align-items:center;gap:12px}
.header-search{display:flex;align-items:center;gap:9px;padding:10px 6px;margin-right:10px}
.header-search span{font-size:16px;color:#6a6761}
.header-actions svg{width:21px;height:21px;stroke-width:1.2}
.mobile-menu-btn{display:none}
.footer{padding-top:51px;padding-bottom:25px;background:#f7f5ef}
.footer-main{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:50px}
.footer-brand .brand{font-size:28px}
.footer-brand p{font-size:16px;color:var(--muted);max-width:250px;margin-top:20px;line-height:1.8}
.footer-col h3{font-size:16px;text-transform:uppercase;letter-spacing:.13em;font-weight:600;margin-bottom:17px}
.footer-col a,.footer-col button{display:block;font-size:16px;color:#6b655b;padding:5px 0;text-align:left}
.footer-col a:hover,.footer-col button:hover{color:#26251f}
.footer-bottom{border-top:1px solid var(--line);margin-top:39px;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:16px;color:var(--muted)}
.footer-note{font-size:16px;margin-top:15px;line-height:1.7;color:#827c71;max-width:650px}
.panel-header{padding:26px 27px 19px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);flex-shrink:0}
.panel-header h2{font-size:34px;line-height:1.05;display:flex;align-items:baseline;gap:10px}
.panel-header h2 small{font:16px var(--sans);letter-spacing:0;color:var(--muted)}
.panel-header .icon-btn{width:31px;height:31px}
.panel-header .icon-btn svg{width:18px;height:18px}
.panel-body{padding:25px 27px;overflow:auto;flex:1;overscroll-behavior:contain}
.panel-footer{padding:21px 27px 24px;border-top:1px solid var(--line);background:var(--paper);flex-shrink:0}
.mobile-menu-image{height:180px;margin-top:30px;position:relative;overflow:hidden}
.mobile-menu-image img{width:100%;height:100%;object-position:50% 30%}
.mobile-menu-image span{position:absolute;left:20px;bottom:20px;color:white;font:30px var(--serif)}
.brand{font-family:Georgia,serif;font-size:25px;letter-spacing:.3em}
.brand-sub{font:16px var(--sans);letter-spacing:.24em;text-transform:uppercase;display:block;margin-top:8px;color:var(--muted)}
.announcement{height:30px;font-size:16px;gap:55px;pointer-events:auto;background:#302f28}
.site-header{position:relative;top:auto;height:84px;background:#faf8f4f5;transition:height var(--ui) var(--ease),background var(--ui),box-shadow var(--ui);pointer-events:auto;border-bottom:1px solid #b7a18518}
.site-header.scrolled{height:68px;background:#faf8f4f7;box-shadow:0 5px 22px #21170906}
.header-inner{gap:20px}
.main-nav{gap:25px}
.main-nav>a,.nav-collection>a{font-size:16px}
.main-nav>a:after,.nav-collection>a:after{bottom:22px}
.site-header.scrolled .main-nav>a:after,.site-header.scrolled .nav-collection>a:after{bottom:15px}
.header-search span{font-size:16px}
.header-actions{gap:8px}
.footer-main{gap:40px}
.footer-brand p{font-size:16px}
.footer-col h3{font-size:16px}
.footer-col a,.footer-col button{font-size:16px;padding:6px 0;min-height:31px}
.footer-bottom{font-size:16px}
.footer-note{font-size:16px;max-width:930px;line-height:1.7}
.footer .motion-switch{font-size:16px}
.footer-tools{display:flex;align-items:center;gap:20px;margin-top:15px}
.footer-tools button{font-size:16px;letter-spacing:.03em;min-height:35px;color:#88775e;border-bottom:1px solid #d8cbb6}
.panel-header{padding:25px 28px 19px}
.panel-header h2{font-size:37px}
.panel-header h2 small{font-size:16px}
.panel-header .icon-btn{min-width:44px;min-height:44px}
.panel-body{padding:24px 28px}
.panel-footer .btn{min-height:49px;font-size:16px}
.media-panel .panel-header h2{font-size:37px}
.footer-tools button{display:inline-flex;align-items:center;gap:9px}
.footer-tools button svg{width:14px;height:14px}
.container{width:100%;max-width:none;margin-left:0;margin-right:0;padding-left:var(--gutter);padding-right:var(--gutter)}
.container .container{width:100%;padding-left:0;padding-right:0}
/* Header: never shrink navigation text to make it fit. */
.header-inner{gap:clamp(20px,2vw,52px)}
.brand{font-size:28px;letter-spacing:.26em}
.brand-sub{font-size:16px;line-height:1.4;letter-spacing:.13em;margin-top:8px}
.announcement{font-size:16px;line-height:1.4;height:34px;gap:40px;background:#20201f;padding:0 var(--gutter)}
.announce-copy{min-width:0;max-width:100%}
.site-header{height:92px}
.site-header.scrolled{height:76px}
.main-nav{gap:clamp(15px,1.65vw,37px)}
.main-nav>a:nth-child(n){display:flex}
.main-nav>a:after,.nav-collection>a:after{bottom:26px}
.site-header.scrolled .main-nav>a:after,.site-header.scrolled .nav-collection>a:after{bottom:19px}
.header-actions{gap:10px}
.header-search{margin:0;gap:10px}
.header-search span{display:inline}
/* Stories, edge to edge, with no inherited 3-column mosaic or first-card span. */
.ed-stories.container{padding-left:0;padding-right:0;padding-top:10px;padding-bottom:58px}
.newsletter.container{width:100%;max-width:none;padding:70px var(--gutter);gap:clamp(36px,6vw,160px);overflow:hidden}
.footer.container{width:100%;max-width:none;background:#f5f1ea;padding:64px var(--gutter) 32px}
.footer-main{grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:clamp(24px,5vw,120px)}
.footer-brand .brand{font-size:31px;letter-spacing:.26em}
.footer-brand p{font-size:16px;max-width:32ch;line-height:1.8;margin-top:24px;color:var(--muted)}
.footer-col h3{font-size:16px;line-height:1.5;letter-spacing:.1em;margin-bottom:18px;color:#292724}
.footer-col a,.footer-col button{font-size:16px;line-height:1.6;padding:8px 0;min-height:40px;color:#504a43}
.footer-main .footer-col:last-child{grid-column:auto;display:block}
.footer-main .footer-col:last-child h3{margin-bottom:18px}
.footer-main .footer-col:last-child a,.footer-main .footer-col:last-child button{font-size:16px}
.footer-bottom{font-size:16px;line-height:1.6;gap:24px;flex-wrap:wrap;padding-top:27px;margin-top:46px;color:var(--muted)}
.footer-note{font-size:16px;max-width:100ch;line-height:1.75;margin-top:24px;color:#6a6258}
.footer-tools{gap:24px;flex-wrap:wrap;margin-top:22px}
.footer-tools button{font-size:16px;min-height:44px;gap:10px}
.footer-tools>span{font-size:16px!important;color:#6a6258!important}
.panel-header h2{font-size:36px}
.panel-header h2 small{font-size:16px}
.panel-body,.panel-footer{font-size:16px}
.panel-footer .btn{font-size:16px;min-height:52px}
.a7-checkout-head .brand{font-size:29px;letter-spacing:.24em}
.a7-guide-dialog .panel-header{flex-shrink:0}
.a7-guide-dialog .panel-header h2{font-size:33px}
.a7-guide-dialog .panel-body{padding:30px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
.a7-collection-list>.container{padding:0}
.a7-dialog .panel-header h2{font-size:33px}
.a7-dialog .panel-body{font-size:16px;line-height:1.75;padding:27px}
