/* Amaluna — Peças reutilizáveis: botões, cartão de produto, vitrine, formulários.
   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. */

.eyebrow{font-size:16px;letter-spacing:.23em;font-weight:500;text-transform:uppercase;line-height:1.6}
.icon-btn{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s,transform .3s var(--ease);flex-shrink:0}
.icon-btn:hover{background:#e8e2d878}
.icon-btn:active{transform:scale(.93)}
.btn{min-height:48px;display:inline-flex;justify-content:center;align-items:center;gap:24px;border-radius:99px;background:var(--ink);border:1px solid var(--ink);color:var(--paper);padding:16px 29px;font-size:16px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;line-height:1.4;position:relative;overflow:hidden;transition:background .3s,transform .3s var(--ease),box-shadow .3s;white-space:nowrap}
.btn svg{width:17px;height:17px;transition:transform .3s var(--ease)}
.btn:hover{background:#464239;box-shadow:0 5px 16px #25201815}
.btn:hover svg{transform:translateX(4px)}
.btn:active{transform:scale(.98)}
.btn-light{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.btn-light:hover{background:white}
.btn-outline{background:transparent;border-color:#c8c0b4;color:var(--ink)}
.btn-outline:hover{background:#e9e1d6}
.btn-small{min-height:38px;padding:11px 19px;font-size:16px;gap:14px}
.btn-full{width:100%}
.text-link{display:inline-flex;align-items:center;gap:12px;font-size:16px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;padding:7px 0;border-bottom:1px solid transparent;white-space:nowrap}
.text-link svg{width:17px;height:17px;transition:transform .3s var(--ease)}
.text-link:hover{border-color:currentColor}
.text-link:hover svg{transform:translateX(4px)}
.hero-copy .eyebrow{color:#605c52;letter-spacing:.27em;font-size:16px;margin-bottom:23px}
.hero-panel.active .hero-copy .eyebrow{transition-delay:.12s}
.hero-panel.active .hero-copy .btn{transition-delay:.3s}
.slide-tabs{display:flex;align-items:center;gap:17px}
.slide-tab{display:flex;align-items:center;gap:10px;font-size:16px;color:#686153;padding:10px 0}
.slide-tab.active{color:#272821}
.slide-tab .timeline{width:0;transition:width .4s var(--ease);height:1px;background:#29292333;overflow:hidden}
.slide-tab.active .timeline{width:55px}
.categories::-webkit-scrollbar,.product-rail::-webkit-scrollbar,.style-tabs::-webkit-scrollbar{display:none}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:27px}
.section-heading .eyebrow{margin-bottom:9px;color:var(--muted)}
.section-heading h2{font-size:clamp(33px,3.1vw,51px);line-height:1.04}
.heading-controls{display:flex;align-items:center;gap:20px}
.rail-buttons{display:flex;gap:7px}
.rail-btn{border:1px solid var(--line);width:34px;height:34px}
.rail-btn svg{width:15px;height:15px}
.editorial-copy .eyebrow{font-size:16px;color:#f8ead8}
.editorial-copy .btn{min-height:40px;padding:13px 23px;font-size:16px;gap:16px}
.featured-products .section-heading h2{font-size:clamp(32px,2.8vw,47px)}
.product-rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 32px)/3);gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:5px;scroll-behavior:smooth}
.product-card{min-width:0;position:relative;scroll-snap-align:start}
.product-photo{position:relative;overflow:hidden;background:#e9e0d3;aspect-ratio:.92;border-radius:1px;isolation:isolate}
.product-photo>a:not(.product-quick){display:block;width:100%;height:100%}
.product-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.product-card:hover .product-photo img{transform:scale(1.045)}
.product-badge{position:absolute;left:11px;top:11px;z-index:1;background:#faf9f6df;padding:5px 7px;font-size:16px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;line-height:1.2;pointer-events:none}
.product-quick{position:absolute;right:10px;bottom:10px;z-index:2;display:flex;align-items:center;gap:11px;height:33px;max-width:33px;border-radius:20px;background:#faf9f6eb;overflow:hidden;padding:0 8px;box-shadow:0 2px 10px #3b29150c;transition:max-width .45s var(--ease),background .2s,color .2s}
.product-quick svg{width:17px;height:17px;flex-shrink:0}
.product-quick span{font-size:16px;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;padding-right:6px}
.product-card:hover .product-quick,.product-quick:focus-visible{max-width:170px;background:var(--ink);color:white}
.product-info{padding:13px 2px 2px;position:relative}
.product-name{display:block;font-size:16px;font-weight:400;line-height:1.5}
.product-price{font-size:16px;font-weight:600;display:block;margin-top:4px;letter-spacing:.01em}
.product-installments{font-size:16px;color:var(--muted);margin-top:5px;display:block}
.product-pix{font-size:16px;color:var(--gold-escuro);font-weight:600;margin-top:2px;display:block}
.hotspot{position:absolute;width:33px;height:33px;border-radius:50%;background:#faf9f6eb;color:var(--ink);display:grid;place-items:center;z-index:3;box-shadow:0 0 0 6px #fff4;transition:transform .4s var(--ease),background .4s;animation:hotspotPulse 3s ease-in-out infinite}
.hotspot svg{width:16px;height:16px}
.hotspot:hover,.hotspot.selected{background:var(--ink);color:white;transform:scale(1.07)}
.hotspot:nth-of-type(1){left:24%;top:43%}
.hotspot:nth-of-type(2){left:29%;top:82%;animation-delay:1s}
.look-selection .product-price{margin-top:7px}
.look-selection .text-link{font-size:16px;margin-top:9px;gap:7px}
.look-controls .btn{gap:15px;padding:14px 23px;min-height:43px;font-size:16px}
.style-tabs{display:flex;align-items:center;gap:7px;overflow:auto;scrollbar-width:none}
.style-tab{padding:11px 18px;background:#eeece7;border-radius:30px;font-size:16px;white-space:nowrap;transition:background .25s,color .25s}
.style-tab.active{background:var(--ink);color:var(--paper)}
.style-tab:hover:not(.active){background:#e4ded4}
.philosophy-copy .eyebrow{font-size:16px;margin:17px 0 19px;max-width:240px}
.philosophy-over .text-link{font-family:var(--sans);font-size:16px;margin-top:23px;letter-spacing:.1em}
.stories-section .section-heading{margin-bottom:29px}
.stories-section .section-heading p{font-size:16px;max-width:245px;color:var(--muted);text-align:right}
.story-card{position:relative;aspect-ratio:.77;overflow:hidden;text-align:left;background:#bca78d;border-radius:2px;padding:0;isolation:isolate}
.story-card>img,.story-card>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.story-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#22181192,transparent 65%);z-index:1}
.story-card:hover>img,.story-card:hover>video{transform:scale(1.035)}
.story-caption .eyebrow{font-size:16px;letter-spacing:.13em}
.motion-switch{display:inline-flex;align-items:center;gap:7px;font-size:16px;color:var(--muted);padding:7px 0}
.motion-switch svg{width:12px;height:12px}
.newsletter-form .btn{font-size:16px;min-height:46px;padding:14px 25px}
/* Internal views */
.breadcrumb{display:flex;align-items:center;gap:10px;font-size:16px;color:var(--muted);padding-top:25px;padding-bottom:25px;flex-wrap:wrap}
.breadcrumb a:hover{text-decoration:underline}
.breadcrumb svg{width:10px;height:10px}
.breadcrumb span:last-child{color:var(--ink)}
.page-intro .eyebrow{margin-bottom:12px;color:var(--muted)}
.filter-trigger{display:flex;align-items:center;gap:9px;font-size:16px}
.filter-trigger svg{width:17px;height:17px}
.catalog-grid .product-photo{aspect-ratio:.92}
.catalog-grid .product-name{font-size:16px}
.catalog-grid .product-price{font-size:16px}
.empty-state{text-align:center;padding:65px 25px;grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}
.empty-state h2{font-size:39px;line-height:1.1;max-width:340px}
.empty-state p{font-size:16px;color:var(--muted);max-width:340px}
.empty-state>img{width:140px;height:140px;border-radius:50%;margin-bottom:4px}
.empty-state .btn{margin-top:6px}
.collection-card-content .eyebrow{margin-bottom:8px;color:#f2e4d2}
.collection-card-content .text-link{font-size:16px}
.pdp-buy .btn{flex:1;min-height:50px}
.quantity{height:40px;display:inline-flex;align-items:center;border:1px solid var(--line);flex-shrink:0}
.quantity button{height:100%;width:30px;display:grid;place-items:center}
.quantity svg{width:12px;height:12px}
.quantity span{min-width:22px;text-align:center;font-size:16px}
.quantity button:hover{background:#eee7dd}
.pdp-buy .quantity{height:50px}
.pdp-buy .quantity button{width:32px}
.field-feedback{font-size:16px;line-height:1.6;margin-top:9px;color:#766449;min-height:0}
.field-feedback.error{color:#a23f34}
.accordion{border-bottom:1px solid var(--line)}
.accordion summary{cursor:pointer;padding:17px 0;list-style:none;display:flex;align-items:center;justify-content:space-between;font-size:16px;gap:20px}
.accordion summary::-webkit-details-marker{display:none}
.accordion summary svg{width:14px;height:14px;transition:transform .3s}
.accordion[open] summary svg{transform:rotate(45deg)}
.accordion p{font-size:16px;color:var(--muted);padding-bottom:20px;line-height:1.85}
.related-section .product-rail{grid-auto-columns:calc((100% - 64px)/5)}
.cart-item{display:grid;grid-template-columns:86px 1fr;gap:17px;position:relative}
.cart-item-image{width:86px;height:101px;object-fit:cover}
.cart-item-content{padding:3px 0}
.cart-item-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;font-size:16px}
.cart-item-title-row a{line-height:1.5;padding-right:15px}
.cart-item-meta{font-size:16px;color:var(--muted);margin-top:7px}
.cart-item-bottom{margin-top:15px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.cart-item-bottom strong{font-size:16px;font-weight:500}
.cart-item .quantity{height:27px}
.cart-item .quantity button{width:24px}
.cart-item .quantity span{font-size:16px;min-width:19px}
.gift-option{margin-top:25px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;cursor:pointer}
.gift-option input{accent-color:var(--ink);width:14px;height:14px;cursor:pointer;flex-shrink:0}
.gift-option>svg{width:18px;height:18px;stroke-width:1.3}
.gift-option span{font-size:16px;line-height:1.5}
.gift-option small{font-size:16px;color:var(--muted);display:block}
.filter-group{padding-bottom:26px;margin-bottom:23px;border-bottom:1px solid var(--line)}
.filter-group h3{font-size:16px;font-weight:500;margin-bottom:20px}
.filter-options{display:grid;gap:15px}
.filter-options label{display:flex;gap:10px;align-items:center;font-size:16px;cursor:pointer}
.filter-options input{accent-color:var(--ink)}
.filter-range{width:100%;accent-color:var(--ink)}
.filter-price-labels{display:flex;justify-content:space-between;font-size:16px;color:var(--muted);margin-top:10px}
.filter-footer{display:flex;gap:11px}
.filter-footer .btn{flex:1}
.quick-info .btn{font-size:16px;padding:15px 20px}
.quick-info .text-link{font-size:16px;margin-top:15px}
.cart-page .cart-item{grid-template-columns:120px 1fr;gap:25px;padding-bottom:25px;border-bottom:1px solid var(--line)}
.cart-page .cart-item-image{width:120px;height:145px}
.cart-page .cart-item-title-row{font-size:16px}
.cart-page .cart-item-meta{font-size:16px;margin-top:10px}
.cart-page .cart-item-bottom{margin-top:24px}
.cart-page .cart-item-bottom strong{font-size:16px}
.order-summary .gift-option{border-color:#d9d1c4;margin:21px 0}
.form-section h2{font-size:35px;margin-bottom:22px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 16px}
.form-field{display:flex;flex-direction:column;gap:8px;font-size:16px;color:#72695d}
.form-field input,.form-field select{padding:14px 13px;border:1px solid #d8d1c6;background:#fff7;color:var(--ink);width:100%;min-width:0;border-radius:0;font-size:16px}
.form-field.full{grid-column:1/-1}
.form-actions{margin-top:29px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.form-actions .text-link{font-size:16px}
.account-form .form-field{margin-bottom:18px}
.account-form .btn{margin-top:7px}
.help-page .accordion summary{font-size:16px;padding:22px 0}
.help-page .accordion p{font-size:16px;padding-bottom:24px;max-width:700px}
.help-page .btn{margin-top:35px}
.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);z-index:90;background:var(--ink);color:white;box-shadow:0 10px 30px #1c140f25;border-radius:5px;padding:14px 18px;display:flex;align-items:center;gap:11px;max-width:calc(100vw - 40px);width:max-content;font-size:16px;line-height:1.5;opacity:0;visibility:hidden;transition:.3s var(--ease);pointer-events:none}
.toast.show{opacity:1;visibility:visible;transform:translate(-50%,0)}
.toast svg{width:16px;height:16px;color:#ded0b7;flex-shrink:0}
.toast span{max-width:420px}
.product-rail{cursor:grab}
.product-rail a,.product-rail button{cursor:pointer}
.eyebrow{font-size:16px;letter-spacing:.2em}
.btn{font-size:16px;min-height:48px;padding:16px 25px;transition:background var(--ui),transform var(--press),box-shadow var(--ui);letter-spacing:.1em}
.btn:hover{box-shadow:none}
.btn:active{transform:scale(.975)}
.btn.confirmed{background:#65705a;border-color:#65705a}
.text-link{font-size:16px;min-height:44px}
.icon-btn{min-width:44px;min-height:44px}
.icon-btn svg{width:19px;height:19px}
.hero-copy .eyebrow{margin-bottom:25px;font-size:16px;letter-spacing:.24em}
.hero-copy .btn{min-height:49px;padding:16px 28px}
.hero-panel.active .hero-copy .btn{transition-delay:190ms}
.slide-tab{min-height:44px;font-size:16px}
.slide-tab .timeline,.timeline i{height:2px}
.section-heading h2{font-size:clamp(34px,3.35vw,52px);line-height:1.08}
.section-heading .eyebrow{font-size:16px;margin-bottom:11px}
.editorial-copy .eyebrow{font-size:16px}
.editorial-copy .btn{font-size:16px;min-height:44px}
.featured-products .section-heading h2{font-size:clamp(33px,2.7vw,46px)}
.featured-products .section-heading{margin-bottom:26px}
.rail-buttons{gap:2px}
.rail-btn{width:40px;height:40px;min-width:40px;min-height:40px;border:0;background:#ede8df}
.rail-btn:disabled{opacity:.25;background:transparent}
.rail-btn:hover:not(:disabled){background:#e2d8c9}
.product-rail{grid-auto-columns:calc((100% - 50px)/3.12);gap:17px;scroll-snap-type:x proximity;scroll-padding:0;overscroll-behavior-x:contain;cursor:grab;padding-bottom:10px}
.product-photo{aspect-ratio:.83;background:#e8dfd3;border-radius:2px}
.product-photo>a:not(.product-quick){position:relative}
.product-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity 480ms var(--ease),transform 750ms var(--ease);transform:scale(1.01)}
.product-photo .product-secondary{opacity:0;transform:scale(1.035)}
.product-card:hover .product-photo img{transform:scale(1.035)}
.product-badge{font-size:16px;top:11px;left:11px;padding:6px 8px;background:#faf8f4ed;letter-spacing:.07em;max-width:calc(100% - 20px)}
.product-quick{height:42px;max-width:42px;min-width:42px;padding:0 12px;bottom:11px;right:11px;border-radius:50px;box-shadow:none;background:#faf8f4ed;gap:10px}
.product-quick svg{width:18px;height:18px}
.product-quick span{font-size:16px;letter-spacing:.04em}
.product-card:hover .product-quick,.product-quick:focus-visible{max-width:200px}
.product-quick.confirmed{max-width:200px!important;background:#66715b!important;color:#fff!important}
.product-info{padding:15px 1px 3px}
.product-name{font-size:16px;line-height:1.5;padding-right:0}
.product-price{font-size:16px;font-weight:500;margin-top:5px;letter-spacing:0}
.product-installments{font-size:16px;line-height:1.6;margin-top:4px}
.product-card{contain:layout style}
.product-rail img{user-select:none;-webkit-user-drag:none}
.shop-style .section-heading{align-items:center;gap:30px}
.style-tabs{position:relative;gap:3px;background:#eeebe5;border-radius:40px;padding:4px;isolation:isolate;max-width:100%;overflow:auto}
.style-tab{z-index:1;position:relative;background:transparent;min-height:38px;padding:10px 14px;font-size:16px;color:#6b655d;transition:color 220ms;flex-shrink:0}
.style-tab.active{background:transparent;color:#fff}
.style-tab:hover:not(.active){background:transparent;color:#28251f}
.look-content>.eyebrow{font-size:16px}
.look-selection .product-price{font-size:16px}
.look-selection .text-link{font-size:16px;margin-top:3px;min-height:34px}
.hotspot{width:44px;height:44px;animation:none;box-shadow:0 0 0 5px #fff3;border:1px solid #fff6;background:#faf8f4dc}
.hotspot svg{width:17px;height:17px}
.hotspot.selected{box-shadow:0 0 0 7px #fff3;background:var(--ink);color:white}
.hotspot.selected:after{content:'';position:absolute;inset:-8px;border:1px solid #fff9;border-radius:50%;animation:selectionRipple 650ms ease-out both}
.hotspot:nth-of-type(1){left:25%;top:42%}
.hotspot:nth-of-type(2){left:27%;top:81%}
.hotspot:nth-of-type(3){left:59%;top:93%}
.look-piece{position:relative;width:65px;height:69px;border:1px solid #c2b5a1;padding:3px;opacity:.62;transition:border-color 250ms,opacity 250ms,transform 250ms;background:transparent}
.look-piece img{width:100%;height:100%}
.look-piece.chosen{border-color:#716044;opacity:1}
.look-piece:hover{opacity:1;transform:translateY(-2px)}
.look-piece b{position:absolute;bottom:-4px;right:-4px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#faf8f4;border:1px solid #dbcfbc}
.look-piece.chosen b{background:var(--ink);color:#fff;border-color:var(--ink)}
.look-piece svg{width:10px;height:10px}
.philosophy-copy .eyebrow{font-size:16px;line-height:1.8}
.philosophy-copy .btn{font-size:16px;min-height:42px}
.philosophy-over .text-link{font-size:16px;letter-spacing:.06em}
.stories-section .section-heading p{font-size:16px;max-width:290px}
.story-card{aspect-ratio:.73;border-radius:3px}
.story-card>video{opacity:0;transition:opacity 500ms}
.story-card>video.has-frame{opacity:1}
.story-caption .eyebrow{font-size:16px;letter-spacing:.14em}
.motion-switch{font-size:16px;min-height:44px}
.story-buy-sheet>.icon-btn{position:absolute;right:7px;top:7px}
.story-buy-sheet>.btn{margin-top:21px;font-size:16px}
.newsletter-form .btn{font-size:16px}
/* Product, quick view and retained internal pages */
.breadcrumb{font-size:16px;padding-top:28px;padding-bottom:27px}
.catalog-tools,.filter-trigger,.sort-select{font-size:16px}
.catalog-grid .product-name,.catalog-grid .product-price{font-size:16px}
.catalog-grid .product-photo{aspect-ratio:.85}
.pdp-info>.eyebrow{font-size:16px}
.pdp-buy .quantity button{width:38px}
.pdp-buy .quantity span{font-size:16px}
.pdp-buy .btn{font-size:16px;min-height:52px}
.accordion summary{font-size:16px;min-height:51px}
.accordion p{font-size:16px;line-height:1.85}
.field-feedback{font-size:16px}
.quick-info .text-link{font-size:16px;min-height:44px}
.cart-item{grid-template-columns:89px 1fr;gap:18px}
.cart-item-image{width:89px;height:106px}
.cart-item-title-row{font-size:16px}
.cart-item-meta{font-size:16px}
.cart-item .quantity{height:36px}
.cart-item .quantity button{width:33px;position:relative}
.cart-item .quantity button:after{content:'';position:absolute;inset:-5px 0}
.cart-item .quantity span{font-size:16px;min-width:22px}
.cart-item-bottom strong{font-size:16px;font-weight:500}
.gift-option{min-height:70px;gap:13px}
.gift-option span{font-size:16px}
.gift-option small{font-size:16px}
.gift-option input{width:16px;height:16px}
.toast{z-index:120;bottom:24px;font-size:16px;border-radius:4px;padding:16px 19px;gap:13px;pointer-events:none}
.toast.show{pointer-events:auto}
.toast button{color:#efdfc7;text-decoration:underline;text-underline-offset:4px;padding:2px 5px;font-size:16px;min-height:32px}
.toast span{max-width:390px}
.filter-options label{font-size:16px;min-height:35px}
.form-field{font-size:16px}
.form-field input,.form-field select{font-size:16px}
.form-actions .btn{font-size:16px}
.account-form p,.account-form small,.about-copy p,.about-values p,.help-page>p,.help-page .accordion p{font-size:16px}
/* Hotspots share the photographic coordinate system, independent of control size. */
.hotspot{translate:-50% -50%}
.hotspot:nth-of-type(1){left:30%;top:29%}
.hotspot:nth-of-type(2){left:12%;top:49%}
.hotspot:nth-of-type(3){left:47%;top:87%}
.ed-section .section-heading h2{font-size:clamp(34px,3.25vw,52px);line-height:1.08}
.ed-section .section-heading .eyebrow{font-size:16px;margin-bottom:12px}
.ed-section .section-heading{margin-bottom:27px}
.ed-featured .product-rail,.ed-style .product-rail{grid-auto-columns:calc((100% - 88px)/5.13);gap:20px}
.ed-featured .product-photo,.ed-style .product-photo{aspect-ratio:.87}
.ed-featured .product-info,.ed-style .product-info{padding-top:16px}
.ed-featured .product-name,.ed-style .product-name{font-size:16px}
.ed-featured .product-price,.ed-style .product-price{font-size:16px;margin-top:5px}
.ed-featured .product-installments,.ed-style .product-installments{font-size:16px;line-height:1.65}
.ed-featured .product-photo img,.ed-style .product-photo img{object-fit:cover}
.ed-featured .product-card[data-product="anel-flor-de-luz"] .product-primary{object-position:center 52%}
.ed-featured .product-quick span,.ed-style .product-quick span{font-size:16px}
.ed-featured .product-badge,.ed-style .product-badge{font-size:16px;max-width:calc(100% - 18px)}
.ed-tile .eyebrow{font-size:16px;letter-spacing:.2em}
.ed-collection .text-link{font-size:16px;letter-spacing:.1em;border-bottom:1px solid #fffa;padding-bottom:8px;gap:30px}
.ed-flor .eyebrow{font-size:16px;letter-spacing:.16em;max-width:175px;line-height:1.8;color:#66634f}
.ed-flor .ed-tile-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;max-width:160px;color:#686251}
.ed-gift .eyebrow{font-size:16px;letter-spacing:.15em;color:#766754}
.ed-gift .text-link{font-size:16px;letter-spacing:.05em;gap:13px;border-bottom:1px solid #99886e90;padding-bottom:7px}
.ed-style .section-heading{align-items:flex-end}
.ed-style .heading-controls{gap:20px}
.ed-style .style-tabs{position:relative;padding:4px;gap:0;background:#eeebe5;border-radius:35px;isolation:isolate}
.ed-style .style-tab{padding:11px 18px;background:none;font-size:16px}
.ed-look-list .look-piece{display:flex;position:relative;align-items:center;gap:14px;padding:10px 0;width:100%;height:auto;aspect-ratio:auto;background:none;text-align:left;outline:0;border:0;border-bottom:1px solid #c6baaa69;overflow:visible;border-radius:0;transition:opacity .25s}
.ed-look-list .look-piece>img{height:53px;width:47px;object-fit:cover;opacity:1;border:0;border-radius:1px}
.ed-look-list .look-piece.chosen>img{opacity:1}
.ed-look-list .look-piece>span{flex:1;font-size:16px;line-height:1.6}
.ed-look-list .look-piece>span small{display:block;color:#8a8072;font-size:16px;font-weight:400}
.ed-look-list .look-piece>strong{font-size:16px;font-weight:500;margin-right:7px;white-space:nowrap}
.ed-look-list .look-piece>b{position:static;display:grid;place-items:center;flex-shrink:0;width:22px;height:22px;border:1px solid #b6a895;border-radius:50%;background:transparent;color:#88765f;transform:none}
.ed-look-list .look-piece>b svg{width:12px;height:12px}
.ed-look-list .look-piece.chosen>b{background:var(--ink);border-color:var(--ink);color:white}
.ed-look-list .look-piece:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.ed-look-list .look-piece.is-highlighted>span{color:#8e6d48}
.ed-look-list .look-piece.chosen:after{display:none}
.ed-look .hotspot{width:38px;height:38px;min-width:38px;min-height:38px;box-shadow:0 0 0 6px #fff3;animation:none}
.ed-look .hotspot:focus-visible{outline-color:white;outline-offset:9px}
.ed-stories .section-heading h2{max-width:650px}
.ed-story-grid .story-card{height:360px;aspect-ratio:auto;border-radius:2px}
.ed-story-grid .story-card:first-child>img,.ed-story-grid .story-card:first-child>video{object-position:50% 35%}
.ed-story-grid .story-card:nth-child(2)>img{object-position:50% 42%}
.ed-story-grid .story-card:nth-child(3)>img,.ed-story-grid .story-card:nth-child(3)>video{object-position:50% center}
.ed-story-grid .story-caption .eyebrow{font-size:16px}
.ed-story-grid .story-card:after{background:linear-gradient(0deg,#221911b0,transparent 70%)}
.ed-stories .motion-switch{font-size:16px;flex-shrink:0}
.ed-stories .story-controls .rail-buttons{flex-shrink:0}
.ed-story-grid.stories-grid .story-card{height:360px;aspect-ratio:auto;scroll-snap-align:start;border-radius:2px}
.ed-story-grid.stories-grid .story-caption .eyebrow{font-size:16px}
.pdp-sticky-buy.flor-pdp-sticky .btn{min-height:50px;padding:14px 20px;border-radius:999px;font-size:16px;gap:14px;white-space:nowrap}
.pdp-sticky-buy.flor-pdp-sticky .btn svg{width:16px;height:16px}
.has-pdp .toast{bottom:112px}
.eyebrow{font-size:16px;line-height:1.5;font-weight:500;letter-spacing:.14em}
.btn,.text-link{font-size:16px;letter-spacing:.01em;text-transform:none;line-height:1.4}
.btn{min-height:52px;padding:15px 25px;gap:14px;font-weight:500}
.btn.confirmed{background:#252525;border-color:#252525}
.text-link{gap:10px;min-height:44px;font-weight:500}
.btn-small{min-height:44px;padding:11px 19px}
.icon-btn{min-width:44px;min-height:44px}
.hero-copy .eyebrow{font-size:16px;letter-spacing:.15em}
.hero-copy .btn{font-size:16px;min-height:52px;padding:15px 25px;letter-spacing:.01em}
.slide-tab{font-size:16px}
/* Vitrines remain a single row; card density changes instead of type size. */
.ed-section .section-heading{gap:24px;flex-wrap:wrap;margin-bottom:30px}
.ed-section .section-heading .eyebrow,.ed-tile .eyebrow{font-size:16px;line-height:1.5;letter-spacing:.13em}
.ed-section .section-heading h2{font-size:clamp(36px,3vw,62px);line-height:1.08}
.ed-featured .product-rail,.ed-style .product-rail{grid-auto-columns:calc((100% - 78px)/4.3);gap:22px;padding:3px 2px 8px;min-width:0}
.product-name{padding-right:0;font-weight:400}
.product-price{margin-top:6px;font-weight:600}
.product-info{padding-top:17px}
.product-badge,.ed-featured .product-badge,.ed-style .product-badge{font-size:16px;line-height:1.4;letter-spacing:.03em;padding:6px 9px;max-width:calc(100% - 22px)}
.product-quick,.ed-featured .product-quick,.ed-style .product-quick{width:44px;height:44px;min-width:44px;max-width:44px;bottom:12px;right:12px;padding:0 13px;gap:11px}
.product-quick span,.ed-featured .product-quick span,.ed-style .product-quick span{font-size:16px;letter-spacing:0;text-transform:none}
.product-card:hover .product-quick,.product-quick:focus-visible{width:auto;max-width:240px}
.ed-featured .heading-controls .text-link,.ed-style .style-more{font-size:16px}
.ed-style .style-tabs{min-width:0;max-width:100%}
.ed-style .style-tab{font-size:16px;min-height:46px;padding:12px 18px;line-height:1.4}
.ed-style .heading-controls{flex-wrap:wrap;gap:18px;min-width:0}
.ed-collection .text-link,.ed-gift .text-link{font-size:16px;letter-spacing:0;gap:14px}
.ed-flor .eyebrow,.ed-gift .eyebrow{max-width:24ch;font-size:16px}
.ed-flor .ed-tile-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;max-width:24ch}
.ed-look-list .look-piece{gap:18px;padding:15px 0;min-width:0}
.ed-look-list .look-piece>img{width:58px;height:66px}
.ed-look-list .look-piece>span,.ed-look-list .look-piece>strong,.ed-look-list .look-piece>span small{font-size:16px;line-height:1.5}
.ed-look-list .look-piece>span{min-width:0}
.ed-look-list .look-piece>span small{color:var(--muted);margin-top:4px}
.ed-look-list .look-piece>b{width:26px;height:26px}
.ed-stories>.section-heading,.ed-stories>.story-bottom-note{padding-left:var(--gutter);padding-right:var(--gutter)}
.ed-story-grid.stories-grid .story-card,.ed-story-grid.stories-grid .story-card:first-child{grid-column:auto;grid-row:auto;height:auto;min-height:0;aspect-ratio:2/3;width:100%;border-radius:8px;scroll-snap-align:start;cursor:grab;transition:transform .35s var(--ease)}
.ed-story-grid.stories-grid .story-card:hover{transform:translateY(-3px)}
.ed-story-grid.stories-grid .story-card::after{background:linear-gradient(0deg,#181510bd,transparent 65%,#18151030)}
.ed-story-grid.stories-grid .story-top>span,.ed-story-grid.stories-grid .story-card:first-child .story-top>span{display:block;font-size:16px;letter-spacing:.09em}
.ed-story-grid.stories-grid .story-caption .eyebrow{font-size:16px;line-height:1.5;letter-spacing:.06em}
.ed-story-grid.stories-grid .story-caption h3,.ed-story-grid.stories-grid .story-card:first-child .story-caption h3{font-size:clamp(31px,2.6vw,43px);line-height:1.08;margin:12px 0 21px;max-width:none;font-weight:400}
.ed-story-grid.stories-grid .story-card:first-child .story-caption h3 br{display:initial}
.ed-story-grid.stories-grid .story-caption>span,.ed-story-grid.stories-grid .story-card:first-child .story-caption>span{font-size:16px;letter-spacing:0;text-transform:none}
.ed-stories .motion-switch{font-size:16px;min-height:44px}
.ed-stories .rail-buttons{display:flex}
.newsletter-form .btn{font-size:16px;min-height:50px;padding:13px 25px;letter-spacing:0;gap:12px}
.payment-words .motion-switch{font-size:16px}
/* Product pages and internal flows use the same readable scale. */
.breadcrumb{font-size:16px;line-height:1.6;gap:12px}
.catalog-categories a,.catalog-toolbar>span,.filter-trigger,.sort-select{font-size:16px}
.shipping-progress,.cart-item-title-row,.cart-item-bottom strong,.summary-line,.summary-pix,.continue-shopping,.cart-coupon summary,.gift-option span,.gift-option small,.coupon-applied,.radio-card,.radio-card small,.radio-card strong{font-size:16px;line-height:1.65}
.cart-item-meta,.cart-demo-note{font-size:16px;line-height:1.65}
.cart-item{grid-template-columns:90px minmax(0,1fr)}
.cart-item-content{min-width:0}
.cart-item-image{width:90px;height:110px}
.cart-item-title-row a{padding-right:30px}
.cart-item-bottom{gap:12px;flex-wrap:wrap}
.cart-item .quantity{height:38px}
.cart-item .quantity button{width:32px}
.cart-item .quantity span{font-size:16px;min-width:26px}
.search-result h3,.search-result p,.search-results-count,.search-popular button,.filter-options label,.filter-group h3{font-size:16px;line-height:1.5}
.quick-info .btn,.quick-info .pdp-description,.quick-info .pdp-installments,.quick-info .stock-note,.quick-info .text-link{font-size:16px;line-height:1.65;letter-spacing:0}
.quick-info .eyebrow{font-size:16px}
.quick-info .btn{width:100%;gap:10px;padding:14px 18px}
.story-buy-sheet .btn{font-size:16px;letter-spacing:0}
.toast{font-size:16px;line-height:1.6}
.toast button{font-size:16px}
.toast span{max-width:420px}
.pdp-sticky-buy.flor-pdp-sticky .btn{font-size:16px;padding:14px 22px;min-height:52px;gap:10px;letter-spacing:0;text-transform:none}
.has-pdp .toast{bottom:145px}
.a7-product-related .section-heading h2{font-size:43px}
.a7-product-related .product-rail{grid-auto-columns:calc((100% - 60px)/4.2);gap:20px}
.a7-collection-list .breadcrumb,.a7-collection-list .page-intro{display:none}
.has-pdp .toast{bottom:120px}
.a7-gallery-head .icon-btn{width:44px;height:44px;color:#fff7ed;background:#ffffff0c;flex-shrink:0}
.a7-gallery-head .icon-btn:hover{background:#ffffff23}
