/* Release 21: one token set for the smaller navigation and shared polish. */
:root{
 --height-header:80px;--width-header-logo:136px;--logo-desktop-width:128px;--logo-header-height:64px;
 --header-logo-mobile:44px;--header-mobile-height:64px;--header-mobile-action:30px;--header-mobile-icon:17px;
 --section-title-size:clamp(2.1rem,4.5vw,3.5rem);--section-title-leading:1.14;--section-copy-width:680px;
 --heading-spark-size:40px;--heading-accent:#b48b43;--heading-rule-width:78px;--heading-rule-height:1px;--heading-rule-bg:linear-gradient(90deg,transparent,var(--heading-accent),transparent);
 --newsletter-width:1240px;--newsletter-copy-width:460px;--newsletter-input-height:56px;--newsletter-icon-size:30px;--newsletter-icon-box:56px;
 --newsletter-tint:color-mix(in srgb,var(--color-primary) 3%,var(--color-bg));--newsletter-line:color-mix(in srgb,var(--color-primary) 14%,var(--color-bg));
 --newsletter-shadow:0 20px 64px color-mix(in srgb,var(--color-primary) 5%,transparent);
 --button-sheen:linear-gradient(115deg,transparent 20%,color-mix(in srgb,var(--color-on-primary) 14%,transparent) 48%,transparent 75%);
 --button-inset:inset 0 0 0 3px color-mix(in srgb,var(--color-on-primary) 7%,transparent);
 --button-line-height:1.25;--summary-divider:color-mix(in srgb,var(--color-primary) 14%,var(--color-bg));--summary-label-size:.92rem;
}
.site-header .navbar-inner{min-height:var(--height-header);gap:var(--space-4)}
.site-header .image-brand{width:var(--width-header-logo);flex:0 0 var(--width-header-logo);align-items:center}
.site-header .image-brand img{width:var(--logo-desktop-width);max-height:var(--logo-header-height);height:auto;display:block}
.site-header .image-brand picture{display:flex;align-items:center}
/* Underlines remain aligned to the lower edge of the smaller desktop nav. */
@media(min-width:1200px){.site-header .desktop-nav>.menu-level>.menu-entry>.menu-row{min-height:var(--height-header)}.site-header .desktop-nav>.menu-level>.menu-entry>.menu-row>a{display:flex;align-items:center}}
.section-heading-premium{display:flex;flex-direction:column;align-items:center;text-align:center;margin:var(--space-0) auto var(--space-8);max-width:var(--width-full,100%);gap:var(--space-3)}
.section-heading-premium h2{display:flex;align-items:center;justify-content:center;gap:var(--space-3);font-family:var(--font-heading);font-size:var(--section-title-size);font-weight:var(--h2-weight);line-height:var(--section-title-leading);margin:var(--space-0);letter-spacing:-.025em}
.section-heading-premium h2>span{min-width:var(--space-0)}
.section-heading-premium>p{max-width:var(--section-copy-width);margin:var(--space-0);font-size:var(--font-base,1.1rem);color:var(--color-muted);text-wrap:balance}
.heading-sparkles{flex-shrink:0;width:var(--heading-spark-size);height:var(--heading-spark-size);fill:var(--heading-accent);transform-origin:center;animation:heading-glint 6s ease-in-out infinite}
.heading-rule{display:block;width:var(--heading-rule-width);height:var(--heading-rule-height);background:var(--heading-rule-bg);transform-origin:center;transform:scaleX(.2);transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.section-heading-premium.is-visible .heading-rule{transform:scaleX(1)}
.section-heading-premium.is-visible h2{animation:heading-arrive .65s ease-out both}
.section-heading-link{margin-top:var(--space-2);font-size:var(--font-xs)}
@keyframes heading-arrive{from{transform:translateY(12px)}to{transform:translateY(0)}}
@keyframes heading-glint{0%,70%,100%{opacity:1;transform:scale(1)}80%{opacity:.6;transform:scale(.9)}90%{opacity:1;transform:scale(1.06)}}
/* Newsletter: editorial copy beside a crisp, accessible subscription form. */
.newsletter-section.newsletter-editorial{background:var(--newsletter-tint);border-top:var(--border-width) solid var(--newsletter-line);border-bottom:var(--border-width) solid var(--newsletter-line);padding:var(--space-11) var(--space-0);position:relative;overflow:hidden}
.newsletter-editorial-inner{max-width:var(--newsletter-width);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:var(--space-10);align-items:center}
.newsletter-editorial-copy{max-width:var(--newsletter-copy-width)}
.newsletter-mail-mark{display:grid;place-items:center;width:var(--newsletter-icon-box);height:var(--newsletter-icon-box);border:var(--border-width) solid var(--newsletter-line);font-size:var(--newsletter-icon-size);margin-bottom:var(--space-4);color:var(--color-primary)}
.newsletter-editorial-copy h2{font-family:var(--font-heading);font-weight:var(--h2-weight);font-size:var(--section-title-size);line-height:var(--section-title-leading);margin:var(--space-0) var(--space-0) var(--space-4)}
.newsletter-editorial-copy p{font-size:var(--font-base,1rem);line-height:1.8;margin:var(--space-0);color:var(--color-muted)}
.newsletter-form.newsletter-form-editorial{display:block;margin:var(--space-0);padding:var(--space-0);background:var(--color-transparent);border:var(--space-0)}
.newsletter-form-editorial>label:first-child{display:block;margin-bottom:var(--space-3);font-size:var(--font-xs);font-weight:var(--weight-strong);letter-spacing:var(--tracking-nav)}
.newsletter-entry{display:flex;align-items:stretch;box-shadow:var(--newsletter-shadow)}
.newsletter-form-editorial .newsletter-input{flex:1;min-width:var(--space-0);border:var(--border-width) solid var(--color-border);border-right:var(--space-0);background:var(--color-bg);display:flex;align-items:center;padding:var(--space-0) var(--space-4);gap:var(--space-3)}
.newsletter-form-editorial .newsletter-input:focus-within{border-color:var(--color-primary)}
.newsletter-form-editorial .newsletter-input input{flex:1;min-width:var(--space-0);width:100%;border:var(--space-0);border-radius:var(--radius-input,0);background:var(--color-transparent);min-height:var(--newsletter-input-height);padding:var(--space-0);box-shadow:none}
.newsletter-form-editorial .newsletter-submit{flex-shrink:0;min-height:var(--newsletter-input-height);width:auto;margin:var(--space-0)}
.newsletter-form-editorial .newsletter-submit .bx-arrow-back{transform:rotate(180deg)}
.newsletter-form-editorial .consent-label{display:flex;align-items:flex-start;gap:var(--space-2);margin:var(--space-4) var(--space-0) var(--space-0);font-size:var(--font-xs);color:var(--color-muted);line-height:1.6}
.newsletter-form-editorial .consent-label input{flex-shrink:0;margin-top:var(--space-1)}
.newsletter-form-editorial .consent-label a{text-decoration:underline;text-underline-offset:3px}
.newsletter-form-editorial .form-message{margin-top:var(--space-3);overflow-wrap:anywhere}
.newsletter-privacy{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);color:var(--color-muted);font-size:var(--font-xs)}
/* Global buttons keep square corners and a restrained inset/sheen finish. */
.luxury-button{position:relative;isolation:isolate;line-height:var(--button-line-height);box-shadow:var(--button-inset);border-radius:var(--radius-button,0);font-weight:var(--weight-strong);overflow:hidden}
.luxury-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}
.luxury-button:after{content:"";position:absolute;inset:var(--space-0);background:var(--button-sheen);transform:translateX(-110%);transition:transform .6s;pointer-events:none;z-index:-1}
.luxury-button:hover:after{transform:translateX(110%)}
.product-whatsapp{display:flex;align-items:center;justify-content:center;gap:var(--space-3);text-decoration:none;border-radius:var(--radius-button,0)}
.product-share{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}
.product-share>span{font-size:var(--font-xs);color:var(--color-muted);margin-right:var(--space-2)}
.product-share .social-icon{padding:var(--space-0);border:var(--space-0);border-radius:var(--social-radius);cursor:pointer}
@media(max-width:1199.98px){.site-header .nav-actions{gap:var(--space-1)}}
@media(max-width:767.98px){
 :root{--height-header:var(--header-mobile-height);--logo-desktop-width:var(--header-logo-mobile);--logo-header-height:48px;--width-header-logo:var(--header-logo-mobile);--heading-spark-size:30px;--section-title-size:clamp(1.85rem,7.2vw,2.5rem)}
 .site-header .navbar-inner{min-height:var(--header-mobile-height);gap:var(--space-2);flex-wrap:nowrap}
 .site-header .image-brand,.site-header .image-brand img{width:var(--header-logo-mobile);max-width:var(--header-logo-mobile)}
 .site-header .nav-actions{gap:var(--space-0);margin-left:auto}
 .site-header .nav-actions .icon-button{width:var(--header-mobile-action);height:var(--header-mobile-action);font-size:var(--header-mobile-icon);min-width:var(--space-0)}
 .site-header .avatar-trigger{width:var(--header-mobile-action);height:var(--header-mobile-action)}
 .site-header .avatar-trigger img{width:var(--header-mobile-action);height:var(--header-mobile-action)}
 .newsletter-section.newsletter-editorial{padding:var(--space-8) var(--space-0)}
 .newsletter-editorial-inner{grid-template-columns:minmax(0,1fr);gap:var(--space-6)}
 .newsletter-editorial-copy{max-width:100%}.newsletter-mail-mark{margin-bottom:var(--space-3)}
 .newsletter-entry{flex-wrap:wrap;gap:var(--space-3);box-shadow:none}
 .newsletter-form-editorial .newsletter-input{flex-basis:100%;border-right:var(--border-width) solid var(--color-border)}
 .newsletter-form-editorial .newsletter-submit{width:100%;justify-content:center}
 .section-heading-premium{margin-bottom:var(--space-6)}
}
@media(prefers-reduced-motion:reduce){.heading-sparkles,.section-heading-premium.is-visible h2{animation:none}.heading-rule{transform:scaleX(1);transition:none}.luxury-button:after{transition:none}}

:root{--feature-min-column:220px}.store-features .feature-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--feature-min-column)),1fr))}

.newsletter-editorial-copy .section-heading-premium{margin:var(--space-0)}
.signature-cta-copy .section-heading-premium{margin-bottom:var(--space-5)}
.signature-cta-copy{text-align:center}
.film-cta-content .section-heading-premium{margin-bottom:var(--space-5)}
.film-cta-content .section-heading-premium>p{color:var(--color-hero-secondary)}

/* Shared purchase actions use the same filled treatment as product details. */
:root{--purchase-button-height:var(--height-button);--search-clean-width:640px;--newsletter-equal-height:56px}
.sf-card-button.luxury-button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:var(--purchase-button-height);background:var(--color-primary);color:var(--color-on-primary);border:var(--border-width) solid var(--color-primary);border-radius:var(--button-radius);padding:var(--space-3) var(--space-4);box-shadow:var(--button-inset);font-size:var(--font-xs);line-height:var(--button-line-height);text-decoration:none}
.sf-card-button.luxury-button:hover,.sf-card-button.luxury-button:focus-visible{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}
.sf-card-button.luxury-button.is-disabled{opacity:var(--store-disabled-opacity);pointer-events:none}
.video-product-info .sf-card-button{margin-top:var(--space-4)}
.section-bottom-action{display:flex;justify-content:center;margin-top:var(--space-8)}
.newsletter-form-editorial .newsletter-input{height:var(--newsletter-equal-height);min-height:var(--newsletter-equal-height);box-sizing:border-box}
.newsletter-form-editorial .newsletter-input input{height:100%;min-height:var(--space-0);max-height:100%;padding-block:var(--space-0);box-sizing:border-box}
.newsletter-form-editorial .newsletter-submit{height:var(--newsletter-equal-height);min-height:var(--newsletter-equal-height);max-height:var(--newsletter-equal-height);box-sizing:border-box;padding-block:var(--space-0);align-self:stretch}
.search-modal-simple .modal-dialog{max-width:var(--search-clean-width)}
.search-modal-simple .modal-content{display:block}
.search-modal-simple .modal-body{width:100%;max-width:100%;padding:var(--space-8)}
.search-modal-simple h2{font-size:var(--font-h2,2rem);margin:var(--space-0) var(--space-0) var(--space-6);line-height:1.15}
.search-modal-simple .stack-form .luxury-button{justify-content:center;gap:var(--space-3)}
@media(max-width:575.98px){.search-modal-simple .modal-body{padding:var(--space-7) var(--space-5)}.search-modal-simple .modal-dialog{max-width:calc(100% - 24px)}.section-bottom-action{margin-top:var(--space-6)}}

.store-features .feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:991.98px){.store-features .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575.98px){.store-features .feature-grid{grid-template-columns:minmax(0,1fr)}}

.search-modal-simple h2{padding-right:var(--space-6)}
