/* Responsive and accessibility corrections shared across the existing designs. */
html{scroll-padding-top:150px}
a[href^="mailto:" i]{text-transform:lowercase!important;letter-spacing:normal!important}
input[type="email"]{text-transform:none!important;letter-spacing:normal}
[hidden]{display:none!important}
.hero-container>*,.contact-grid>*,.services-grid>*,.pricing-grid>*,.testimonials-grid>*{min-width:0}
.hero-title{font-size:clamp(48px,5.5vw,84px);line-height:1.03;letter-spacing:-2.5px;text-wrap:initial;overflow-wrap:normal}
.hero-description{line-height:1.8}
.contact-details a,.footer-contact a{overflow-wrap:anywhere}
.contact-privacy-note{font-size:12px;line-height:1.7;color:#596252}
.contact-privacy-note a{text-decoration:underline;text-underline-offset:3px}
.mobile-languages{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.mobile-nav .mobile-languages a{display:flex;padding:10px 12px;min-height:44px;font-size:14px;border:1px solid #677461;border-radius:7px}
.mobile-languages a[aria-current="page"]{background:#f4f1e9;color:#141810}
.site-header .site-language-nav{color:#f4f1e9}
body.translated-page .desktop-nav .language-links a{color:#d0d5c8}
body.translated-page .desktop-nav .language-links a[aria-current]{color:#e9f1df}
.translated-page .why-section .section-heading h2{color:#fff}
.translated-page .why-section .section-intro{color:#c3cbbd}
.page-loader{display:none}
.js .page-loader:not(.is-hidden){display:grid}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #668745;outline-offset:4px}
.email-draft-output textarea{width:100%;resize:vertical}
.email-draft-output .dx-btn{margin:8px 8px 0 0}
.section-heading>*,.hero-grid>*,.about-grid>*,.dx-services-grid>*,.dx-section-head>*{min-width:0;max-width:100%}
@media(max-width:1280px){
 .site-header .header-inner{height:76px}
 .site-header .desktop-nav,.site-header .header-cta{display:none}
 .site-header .menu-toggle{display:block;flex:none}
 .mobile-menu{display:block;position:fixed;top:76px;left:0;right:0;bottom:auto;height:calc(100vh - 76px);height:calc(100dvh - 76px);background:#11180f;color:#fff;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility .2s;overflow:auto;overscroll-behavior:contain}
 .mobile-menu.is-open{opacity:1;visibility:visible;transform:none}
 .mobile-menu-inner{min-height:100%;padding:25px max(22px,5vw) 35px;display:flex;flex-direction:column}
 .mobile-menu-top,.mobile-menu-bottom{display:flex;justify-content:space-between;gap:16px;font-size:10px;color:#b3bcae}
 .mobile-menu-bottom{flex-direction:column;margin-top:auto}
 .mobile-menu-bottom a{color:#e2e9dc;font-size:13px}
 .mobile-nav{display:flex;flex-direction:column;margin:28px 0;gap:0}
 .mobile-nav>a{display:grid;grid-template-columns:35px 1fr 28px;align-items:center;padding:16px 0;border-top:1px solid #ffffff29;gap:10px}
 .mobile-nav>a>span{font-size:10px;color:#a5b299}.mobile-nav strong{font-size:22px}.mobile-nav em{font-style:normal;color:#8ef0b7;text-align:right}
 .site-header:not(:has(.menu-toggle)) .header-inner{flex-wrap:wrap;height:auto;padding-block:16px;gap:16px;justify-content:space-between}
 .site-header:not(:has(.menu-toggle)) .desktop-nav{display:flex;flex-wrap:wrap;gap:12px 18px;margin-left:0}
}
@media(max-width:1100px){
 .hero-container{grid-template-columns:minmax(0,1fr);gap:45px}
 .hero-content{width:100%;max-width:850px}
 .hero-title{max-width:830px;font-size:clamp(44px,7vw,76px)}
 .hero-visual{width:min(100%,590px);min-height:490px;justify-self:center}
 .hero-label{white-space:nowrap}
}
@media(max-width:800px){
 .hero{padding-top:115px;min-height:auto}
 .hero-container{grid-template-columns:minmax(0,1fr);width:calc(100% - 40px);gap:40px;min-height:auto}
 .hero-title{font-size:clamp(38px,9.3vw,64px);line-height:1.08;letter-spacing:-1.5px}
 .hero-title span{display:block}
 .hero-description{max-width:100%;font-size:15px;line-height:1.8}
 .hero-visual{min-height:420px;width:100%;max-width:470px;transform:none!important}
 .visual-card{width:calc(100% - 24px);transform:none!important;aspect-ratio:.92}
 .floating-card{right:0;bottom:30px;max-width:95%}.floating-tag{left:0;top:24px}
 .hero-stats{flex-wrap:wrap;gap:20px}.hero-stat{flex:1;min-width:85px}
 .contact-grid{grid-template-columns:minmax(0,1fr)}
 .site-language-nav{max-width:100%}
 .dx-nav,.ph-nav{flex-wrap:wrap;height:auto!important;min-height:76px;gap:12px;padding-block:14px}
 .dx-nav-links,.ph-nav-links{display:flex!important;flex-wrap:wrap;gap:12px 18px!important;order:3;width:100%;justify-content:center}
 .dx-nav-links a,.ph-nav-links a{font-size:12px!important;min-height:32px;display:inline-flex;align-items:center}
 .dx-header:has(.site-language-nav)~main .dx-hero,.ph-header:has(.site-language-nav)~main .ph-hero{padding-top:245px}
}
@media(max-width:600px){
 .section-heading>*{width:100%}
 .hero-copy h1,.about-copy h2,.dx-section-head h2,.dx-center-head h2,.dx-service h3{overflow-wrap:anywhere;hyphens:auto}
 .dx-services-grid{grid-template-columns:minmax(0,1fr)}
 .hero-container{width:calc(100% - 32px)}
 .hero-title{font-size:clamp(35px,9.5vw,48px)}
 .hero-visual{min-height:370px;max-width:385px}
 .hero-label{max-width:100%;font-size:10px;letter-spacing:1px}
 .hero-actions .button{width:100%}
 .services-grid,.testimonials-grid,.pricing-grid,.why-grid,.process-grid{grid-template-columns:minmax(0,1fr)}
 .section-heading h2,.about-content h2,.contact-content h2{font-size:clamp(32px,8.8vw,42px);line-height:1.12;letter-spacing:-1.4px;overflow-wrap:break-word}
 .service-card h3,.why-card h3,.pricing-card h3{overflow-wrap:break-word}
 .contact-details{grid-template-columns:minmax(0,1fr)}
 .section-intro,.about-text{font-size:15px;line-height:1.8}
 .studio-moments{grid-template-columns:minmax(0,1fr)}
 .studio-moments-copy{grid-column:auto}
 .mobile-nav strong{font-size:19px}
 .contact-form input,.contact-form textarea{font-size:16px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}

/* A dedicated e-shop section, linked from each language's homepage menu. */
.commerce-section{padding:110px 0;background:#111914;color:#f7f5ef;overflow:hidden}
.commerce-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:70px}
.commerce-grid>*{min-width:0}
.commerce-copy .section-label{color:#d8bf87}
.commerce-copy h2{font-size:clamp(36px,4.2vw,62px);line-height:1.08;letter-spacing:-2px;margin:20px 0 26px;font-weight:800;overflow-wrap:anywhere}
.commerce-copy h2 span{color:#d8bf87}
.commerce-intro{color:#ced5cc;font-size:16px;line-height:1.85;max-width:550px}
.commerce-features{padding:0;margin:28px 0 32px;list-style:none;display:grid;gap:14px;color:#f0f3e9;font-size:14px;line-height:1.6}
.commerce-features li{display:flex;gap:12px;align-items:baseline}
.commerce-features li::before{content:'✓';color:#8ce4ad}
.commerce-copy .button{gap:18px;white-space:normal;text-align:center;line-height:1.5}
.store-preview{margin:0;border:1px solid #e7e8da38;border-radius:22px;overflow:hidden;background:#f3f0e8;box-shadow:0 28px 65px #0005;color:#1d2b24;transform:rotate(2deg)}
.store-browser{display:flex;align-items:center;gap:6px;padding:18px 22px;border-bottom:1px solid #17241a18;background:#fffefa}
.store-browser>span:not(.store-bag){width:6px;height:6px;border-radius:50%;background:#b6beb4}
.store-browser b{margin-left:16px;font-size:11px;letter-spacing:2px}
.store-bag{margin-left:auto;font-size:23px;line-height:1}
.store-content{padding:34px 24px 24px}
.store-eyebrow{font-size:9px;letter-spacing:2px;color:#52634f}
.store-content h3{font-size:clamp(22px,2.5vw,35px);letter-spacing:-1px;line-height:1.15;margin:12px 0}
.store-content>p{font-size:12px;color:#596353;line-height:1.6}
.store-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0}
.store-product{min-width:0}
.store-product>span{display:block;font-size:10px;line-height:1.5;margin-top:11px;overflow-wrap:anywhere}
.store-product-art{height:170px;background:#dfe4d6;border-radius:8px;display:grid;place-items:center;overflow:hidden}
.store-product-art i{display:block;position:relative;width:42px;height:87px;background:linear-gradient(90deg,#aab49b,#e1e5cf 45%,#a9b196);border-radius:9px 9px 5px 5px;box-shadow:12px 14px 12px #182e1921}
.store-product-art i::before{content:'';position:absolute;top:-14px;left:11px;width:20px;height:16px;background:#314539;border-radius:4px 4px 0 0}
.store-product-art i::after{content:'N';position:absolute;left:6px;right:6px;top:30px;padding:9px 0;background:#f1f0e6;color:#3e4d3d;text-align:center;font:12px Georgia,serif}
.product-art-1{background:#e8dcc9}.product-art-1 i{width:64px;height:55px;border-radius:5px 5px 20px 20px;background:linear-gradient(90deg,#b8a47d,#e4d3b0,#b6a076)}
.product-art-1 i::before{left:-1px;top:-9px;width:66px;height:12px;background:#4b5146;border-radius:5px}.product-art-1 i::after{top:12px;left:14px;right:14px;padding:5px 0}
.product-art-2{background:#d0d9cb}.product-art-2 i{width:45px;height:105px;background:linear-gradient(90deg,#436447,#73926a,#3f6043);border-radius:18px 18px 5px 5px}
.product-art-2 i::before{top:-12px;left:10px;width:25px;height:19px;background:#d9d5c2}
.store-delivery{border-top:1px solid #26382529;padding-top:18px;font-size:10px;line-height:1.7;display:flex;gap:10px;align-items:center}
.store-delivery>span{font-size:21px;color:#3e6748}
.store-preview figcaption{padding:12px 20px;background:#e6e8df;text-align:center;font-size:10px;color:#53604d;line-height:1.6}
@media(max-width:1000px){.commerce-grid{grid-template-columns:minmax(0,1fr);gap:50px}.commerce-copy{max-width:680px}.store-preview{width:min(100%,560px);justify-self:center;transform:none}.commerce-section{padding:80px 0}}
@media(max-width:600px){.commerce-section{padding:65px 0}.commerce-copy h2{font-size:36px;letter-spacing:-1.4px}.commerce-copy .button{width:100%;padding-inline:18px}.store-content{padding:25px 16px 18px}.store-products{gap:8px}.store-product-art{height:130px}.store-browser{padding:16px}.commerce-intro{font-size:15px}}
