.global-promo,.promo-ribbon{display:flex;justify-content:center;gap:16px;padding:11px 4vw;background:#f24b3a;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.09em}.shop-hero{padding:100px 6vw 70px;background:#191714;color:#fff}.shop-hero h1{font:500 clamp(62px,9vw,130px)/.86 Georgia,serif;letter-spacing:-.06em;margin:18px 0 30px}.shop-hero>p:last-child{max-width:650px;color:#ccc3b8;font-size:18px;line-height:1.6}.shop-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;padding:60px 5vw 90px;background:#eee8df;align-items:start}.shop-products{display:grid;gap:55px}.shop-products section>header{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid #cfc6bb;padding-bottom:18px}.shop-products h2,.shop-cart h2,.rewards-grid h2,.commerce-admin h2{font:500 38px/1 Georgia,serif;margin:0}.shop-products section>header span{font-size:10px;text-transform:uppercase;color:#f24b3a;font-weight:900}.shop-products section>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.shop-products article{background:#fff;padding:24px;display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end}.shop-products h3{font:500 25px/1.1 Georgia,serif;margin:0 0 8px}.shop-products p{color:#776f66;font-size:13px;line-height:1.5}.shop-products label{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:800;text-transform:uppercase}.shop-products input{width:80px;padding:10px;border:1px solid #ccc}.shop-price{display:grid;text-align:right}.shop-price del{color:#999}.shop-price strong{font:500 28px Georgia,serif;color:#f24b3a}.shop-price small{color:#888}.shop-cart{position:sticky;top:90px;background:#fff;padding:30px;display:grid;gap:20px}.shop-cart label,.commerce-admin form label{display:grid;gap:8px;font-size:11px;text-transform:uppercase;font-weight:800}.shop-cart input,.shop-cart textarea,.commerce-admin input,.commerce-admin select,.service-admin-orders select{padding:13px;border:1px solid #ccc;background:#faf8f4}.shop-cart textarea{min-height:110px}.shop-cart>small{color:#756d64}.shop-cart #cart-lines p{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #ddd;padding:10px 0;margin:0;font-size:12px}.cart-total{border-top:2px solid #211e1b;padding-top:18px;display:flex;justify-content:space-between;align-items:end}.cart-total strong{font:500 35px Georgia,serif}.rewards-shell{padding:70px 5vw 100px;background:#eee8df;min-height:80vh}.rewards-shell>header{display:flex;align-items:end;justify-content:space-between;margin-bottom:40px}.rewards-shell h1{font:500 clamp(58px,8vw,105px)/.9 Georgia,serif;margin:10px 0}.rewards-grid,.commerce-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.rewards-grid>section{background:#fff;padding:28px}.rewards-grid article,.service-admin-orders article{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 0;border-top:1px solid #ddd}.rewards-grid article div,.service-admin-orders article div{display:grid;gap:5px}.rewards-grid article span,.service-admin-orders span{font-size:11px;color:#756d64}.rewards-grid .plus{color:#2e7455}.rewards-grid .minus{color:#a8322a}.commerce-admin-grid{color:#211e1b}.commerce-admin .portal-card form{display:grid;gap:14px}.client-balances p,.promo-list form{display:flex!important;justify-content:space-between;align-items:center;border-top:1px solid #ddd;padding:11px 0;margin:0}.promo-list form span{display:grid}.promo-list button{border:0;background:#777;color:#fff;padding:9px 14px}.promo-list button.on{background:#2e7455}.toggle{display:flex!important;flex-direction:row;align-items:center}.toggle input{width:20px;height:20px}.service-admin-orders{margin-top:16px;color:#211e1b}.service-admin-orders article form{display:flex;gap:8px}.service-admin-orders article button{border:0;background:#211e1b;color:#fff;padding:10px}.portal-quick-links{display:flex;gap:8px;margin-bottom:18px}.portal-quick-links a{padding:10px 14px;background:#f24b3a;color:#fff;font-size:11px;font-weight:800;text-transform:uppercase}
@media(max-width:900px){.shop-shell{grid-template-columns:1fr}.shop-cart{position:static}.shop-products section>div,.rewards-grid,.commerce-admin-grid{grid-template-columns:1fr}}
@media(max-width:580px){.global-promo{justify-content:flex-start;overflow:hidden;white-space:nowrap}.shop-hero{padding:70px 5vw 50px}.shop-shell{padding:35px 4vw 65px}.shop-products article{grid-template-columns:1fr}.shop-price{text-align:left}.rewards-shell>header{display:block}.rewards-shell>header .button{margin-top:20px}.service-admin-orders article{align-items:flex-start;flex-direction:column}.service-admin-orders article form{width:100%}}
.shop-hero{display:flex;justify-content:space-between;align-items:end}.shop-cart-link{flex:none;background:#f24b3a;color:#fff;padding:18px 22px;text-transform:uppercase;font-size:11px;font-weight:900}.shop-cart-link b{display:inline-grid;place-items:center;margin-left:8px;background:#fff;color:#211e1b;border-radius:50%;width:25px;height:25px}.store-catalog{padding:70px 5vw 90px;background:#eee8df}.store-catalog>section{margin-bottom:70px}.store-catalog>section>header{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #c9c0b5;padding-bottom:18px}.store-catalog h2{font:500 clamp(42px,5vw,68px)/.95 Georgia,serif;margin:0}.store-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.store-card{background:#fff;overflow:hidden}.store-open{display:block;position:relative;width:100%;padding:0;border:0;background:#211e1b;cursor:pointer;overflow:hidden}.store-open img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:.35s}.store-open:hover img{transform:scale(1.025)}.store-more{position:absolute;right:12px;bottom:12px;background:#fff;color:#211e1b;padding:9px 11px;font-size:9px;text-transform:uppercase;font-weight:900}.store-card>div{padding:22px}.store-card>div>span{font-size:9px;text-transform:uppercase;color:#f24b3a;font-weight:900}.store-card h3{font:500 27px/1.05 Georgia,serif;margin:10px 0}.store-card p{color:#756d64;line-height:1.55;min-height:42px}.store-card-foot{display:flex;align-items:center;gap:8px;border-top:1px solid #ddd;padding-top:18px}.store-card-foot strong{font:500 26px Georgia,serif}.store-card-foot del{color:#999}.store-open-link{margin-left:auto;border:0;background:none;color:#f24b3a;font-weight:900;cursor:pointer}.product-dialog{width:min(1040px,94vw);max-width:none;padding:0;border:0;background:#f6f2ec}.product-dialog[open]{display:grid;grid-template-columns:1fr 1fr}.product-dialog::backdrop{background:rgba(13,12,10,.82)}.product-dialog-image{background:#211e1b}.product-dialog-image img{width:100%;height:100%;min-height:620px;object-fit:cover}.product-dialog-copy{padding:60px 45px;display:flex;flex-direction:column;justify-content:center}.product-dialog-copy h2{font:500 clamp(42px,5vw,66px)/.92 Georgia,serif;margin:12px 0 22px}.product-lead{font-size:16px;line-height:1.7;color:#655e56}.product-dialog-copy ul{padding-left:20px;line-height:1.8;color:#655e56}.product-dialog-copy form{display:grid;gap:16px;margin-top:20px}.product-dialog-copy label{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:900;text-transform:uppercase}.quantity-control{display:flex}.quantity-control button,.quantity-control input{width:44px;height:42px;border:1px solid #bbb;background:#fff;text-align:center}.quantity-control input{border-left:0;border-right:0}.product-dialog-total{display:flex;justify-content:space-between;align-items:end;border-top:1px solid #ccc;padding-top:15px}.product-dialog-total strong{font:500 35px Georgia,serif}.product-close{position:absolute;right:15px;top:12px;border:0;background:#211e1b;color:#fff;width:38px;height:38px;font-size:24px;z-index:2}.product-state{min-height:18px;color:#2e7455}.store-payment-note{display:grid;grid-template-columns:auto 1fr auto;gap:35px;align-items:center;padding:65px 6vw;background:#191714;color:#fff}.store-payment-note>span{font:500 70px Georgia,serif;color:#f24b3a}.store-payment-note h2{font:500 clamp(35px,4vw,56px)/1 Georgia,serif;margin:8px 0}.store-payment-note p:last-child{color:#c8c0b5;max-width:750px;line-height:1.6}.cart-page{padding:70px 5vw 100px;background:#eee8df;min-height:75vh}.cart-page>header{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.cart-page>header h1{font:500 clamp(65px,9vw,115px)/.85 Georgia,serif;margin:10px 0}.cart-page>header p{max-width:700px;color:#655e56}.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}.cart-items{display:grid;gap:8px}.cart-items article{display:grid;grid-template-columns:150px 1fr auto auto;align-items:center;gap:20px;background:#fff;padding:12px}.cart-items img{width:150px;height:110px;object-fit:cover}.cart-items span{font-size:9px;color:#f24b3a;text-transform:uppercase;font-weight:900}.cart-items h2{font:500 25px Georgia,serif;margin:6px 0}.cart-items article>strong{font:500 25px Georgia,serif}.cart-items button{border:0;background:none;color:#a8322a;cursor:pointer}.cart-checkout{position:sticky;top:90px;background:#fff;padding:28px;display:grid;gap:18px}.cart-checkout h2{font:500 35px Georgia,serif;margin:0}.cart-checkout>p,.cart-checkout>div{display:flex;justify-content:space-between;border-top:1px solid #ddd;padding-top:15px}.cart-checkout>div strong{font:500 30px Georgia,serif}.cart-checkout label{display:grid;gap:8px;font-size:11px;font-weight:900;text-transform:uppercase}.cart-checkout label small{font-weight:400;color:#777}.cart-checkout input,.cart-checkout textarea{padding:13px;border:1px solid #ccc}.cart-checkout textarea{min-height:100px}.cart-checkout>small{text-align:center;color:#777}.cart-empty{background:#fff;padding:70px;text-align:center}.cart-empty h2{font:500 45px Georgia,serif}
@media(max-width:900px){.store-grid{grid-template-columns:1fr 1fr}.product-dialog[open]{grid-template-columns:1fr}.product-dialog-image img{height:360px;min-height:0}.product-dialog-copy{padding:35px}.cart-layout{grid-template-columns:1fr}.cart-checkout{position:static}.store-payment-note{grid-template-columns:auto 1fr}.store-payment-note .button{grid-column:2}}
@media(max-width:580px){.shop-hero{display:block}.shop-cart-link{display:inline-block;margin-top:24px}.store-catalog{padding:45px 4vw}.store-grid{grid-template-columns:1fr}.product-dialog{width:100vw;height:100vh;max-height:none}.product-dialog[open]{display:block;overflow:auto}.product-dialog-image img{height:280px}.product-dialog-copy{padding:30px 22px}.store-payment-note{grid-template-columns:1fr;padding:45px 5vw}.store-payment-note>span{font-size:45px}.store-payment-note .button{grid-column:1}.cart-page{padding:45px 4vw 70px}.cart-page>header{display:block}.cart-items article{grid-template-columns:90px 1fr}.cart-items img{width:90px;height:90px}.cart-items article>strong,.cart-items article>button{grid-column:2}.cart-empty{padding:45px 20px}}
.lang-switch{display:flex;gap:2px;align-items:center;margin-left:8px}.lang-switch a{display:grid;place-items:center;min-width:31px;height:29px;border:1px solid #c9c1b7;color:#655e56;font-size:9px;font-weight:900;letter-spacing:.06em}.lang-switch a.active{background:#211e1b;border-color:#211e1b;color:#fff}.admin-shell .lang-switch a{color:#fff;border-color:#665f58}.admin-shell .lang-switch a.active{background:#f24b3a;border-color:#f24b3a}@media(max-width:900px){.site-header nav .lang-switch{position:static;display:flex;margin:12px 0}.lang-switch a{min-width:44px;height:38px}}
.site-header nav{gap:22px}.site-header nav>a{white-space:nowrap}.nav-services{position:relative;display:flex;align-items:center}.nav-services-toggle{border:0;background:transparent;padding:14px 0;font:800 10px/1 Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:inherit;cursor:pointer}.nav-services-toggle span{display:inline-block;margin-left:5px;color:#f24b3a;transition:transform .2s}.nav-services.open .nav-services-toggle span{transform:rotate(180deg)}.nav-services-menu{position:absolute;left:-22px;top:calc(100% + 20px);z-index:150;display:grid;min-width:230px;padding:10px;background:#f7f2eb;border:1px solid #d8d0c6;box-shadow:0 20px 45px rgba(25,23,20,.16);opacity:0;visibility:hidden;transform:translateY(-7px);transition:.2s}.nav-services:hover .nav-services-menu,.nav-services.open .nav-services-menu{opacity:1;visibility:visible;transform:none}.nav-services-menu a{padding:13px 14px;color:#211e1b;border-bottom:1px solid #e0d8ce;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.nav-services-menu a:last-child{border:0}.nav-services-menu a:hover{background:#f24b3a;color:#fff}.site-header .lang-switch{margin-left:2px;padding-left:16px;border-left:1px solid #d3cbc1}.site-header .header-book{padding-left:20px;padding-right:20px}
@media(max-width:1100px) and (min-width:901px){.site-header nav{gap:14px}.site-header nav>a,.nav-services-toggle{font-size:9px}.site-header .lang-switch{padding-left:10px}.site-header .header-book{padding-left:15px;padding-right:15px}}
@media(max-width:900px){.site-header nav{gap:0}.nav-services{display:block}.nav-services-toggle{display:flex;width:100%;justify-content:space-between;align-items:center;padding:15px 0;font-size:11px}.nav-services-menu{position:static;display:none;min-width:0;padding:0 0 8px 14px;border:0;border-left:2px solid #f24b3a;box-shadow:none;opacity:1;visibility:visible;transform:none;background:transparent}.nav-services.open .nav-services-menu{display:grid}.nav-services-menu a{padding:11px 12px;border:0}.site-header .lang-switch{margin:15px 0 0;padding:16px 0 0;border-left:0;border-top:1px solid #d3cbc1}}
.site-header{padding-left:max(4vw,40px);padding-right:max(4vw,40px)}.site-header .brand{flex:none;min-width:180px}.site-header nav{align-items:center;justify-content:center;flex:1;margin:0 28px}.site-header nav>a,.nav-services-toggle{font-size:10px;font-weight:900;letter-spacing:.1em}.site-header .header-book{flex:none;min-width:112px}.page-hero>div{max-width:760px}.page-hero h1{font-weight:400;max-width:720px}.page-hero p:not(.eyebrow){font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.7;max-width:590px}.page-hero:before{background:linear-gradient(90deg,rgba(12,10,8,.94) 0%,rgba(12,10,8,.75) 43%,rgba(12,10,8,.18) 72%,rgba(12,10,8,.08) 100%)}html[lang="ru"] .page-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(54px,5.7vw,82px);line-height:.98;letter-spacing:-.035em;max-width:690px}html[lang="ru"] .page-hero p:not(.eyebrow){font-size:16px;line-height:1.75;max-width:580px}html[lang="ru"] .page-hero{padding-top:74px;padding-bottom:74px}html[lang="ru"] .nav-services-toggle{text-transform:uppercase}
@media(max-width:1180px) and (min-width:901px){.site-header{padding-left:30px;padding-right:30px}.site-header .brand{min-width:165px}.site-header nav{margin:0 18px;gap:16px}.site-header .header-book{min-width:105px}.page-hero{padding-left:7vw}.page-hero h1{font-size:clamp(58px,6.4vw,84px)}html[lang="ru"] .page-hero h1{font-size:clamp(50px,5.5vw,70px);max-width:620px}}
@media(max-width:900px){.site-header{padding-left:5vw;padding-right:5vw}.site-header .brand{min-width:0}.site-header nav{display:none;margin:0;align-items:stretch}.site-header nav.open{display:flex}.page-hero>div{max-width:100%}html[lang="ru"] .page-hero h1{font-size:clamp(46px,11vw,62px);line-height:1.02}.page-hero p:not(.eyebrow),html[lang="ru"] .page-hero p:not(.eyebrow){font-size:15px;line-height:1.65}}
.site-header .lang-switch{position:relative;display:block;margin-left:0;padding-left:14px;border-left:1px solid #d3cbc1}.language-toggle{height:40px;min-width:118px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #c9c1b7;background:#fff;color:#211e1b;cursor:pointer}.language-toggle>span{color:#f24b3a;font-size:16px}.language-toggle b{font-size:10px;text-transform:none;letter-spacing:.03em}.language-toggle i{margin-left:auto;font-style:normal;color:#f24b3a}.language-options{position:absolute;right:0;top:calc(100% + 8px);z-index:180;display:grid;min-width:150px;padding:7px;background:#fff;border:1px solid #d4ccc1;box-shadow:0 15px 35px rgba(25,23,20,.16);opacity:0;visibility:hidden;transform:translateY(-5px);transition:.18s}.lang-switch.open .language-options{opacity:1;visibility:visible;transform:none}.language-options a{display:block!important;width:100%;height:auto!important;padding:12px 13px;border:0!important;background:transparent!important;color:#211e1b!important;text-align:left;font-size:11px!important;text-transform:none;letter-spacing:.02em}.language-options a:hover{background:#f1ebe3!important}.language-options a.active{background:#211e1b!important;color:#fff!important}.language-options a.active:after{content:'✓';float:right;color:#f24b3a}
@media(max-width:1180px) and (min-width:901px){.language-toggle{min-width:104px;padding:0 8px}.language-toggle>span{display:none}}
@media(max-width:900px){.site-header nav .lang-switch{position:relative;display:block;margin:14px 0 0;padding:15px 0 0;border-left:0;border-top:1px solid #d3cbc1;width:100%}.language-toggle{width:100%;height:48px;justify-content:flex-start}.language-toggle>span{display:inline}.language-options{position:static;display:none;min-width:0;margin-top:5px;box-shadow:none;opacity:1;visibility:visible;transform:none}.lang-switch.open .language-options{display:grid}.language-options a{padding:14px}}
@media(max-width:900px){
  .site-header nav{max-height:calc(100dvh - 70px);overflow-y:auto;padding:10px 5vw 14px!important;gap:0!important}
  .site-header nav>a,.nav-services-toggle{display:flex;align-items:center;width:100%;min-height:44px;padding:12px 0!important;font-size:11px!important;line-height:1.35;white-space:normal!important}
  .nav-services{width:100%;height:auto!important}
  .nav-services-toggle{justify-content:space-between}
  .nav-services-menu{padding:2px 0 5px 14px}
  .nav-services-menu a{min-height:40px;padding:11px 12px;line-height:1.35;white-space:normal}
  .site-header nav .lang-switch{width:100%;height:auto;margin:0;padding:0;border:0}
  .language-toggle{height:44px;padding:0;background:transparent;border:0;border-top:1px solid #d3cbc1;justify-content:flex-start}
  .language-toggle>span{margin-left:0}
  .language-options{margin:0;padding:4px 0 0 14px;border:0;border-left:2px solid #f24b3a;background:transparent}
  .language-options a{min-height:40px;padding:11px 12px!important;line-height:1.35}
  html[lang="ru"] .site-header nav>a,html[lang="ru"] .nav-services-toggle{letter-spacing:.075em}
  h1,h2,h3,.page-hero h1,.hero h1{overflow-wrap:break-word;word-break:normal;hyphens:auto}
  .button,.text-link,.filters button{white-space:normal;line-height:1.35;text-align:center}
}
@media(max-width:420px){html[lang="ru"] .hero h1{font-size:clamp(39px,11.5vw,50px);line-height:1.02}html[lang="ru"] .page-hero h1{font-size:clamp(38px,10.8vw,50px);line-height:1.04}.section-heading h2,.process h2,.testimonials h2,.faq h2{font-size:clamp(38px,11vw,50px);line-height:1.02}}
.portfolio-grid{grid-auto-flow:dense}.portfolio-item img{object-position:center 32%}.portfolio-item[data-category="Events"] img,.portfolio-item[data-category="Video"] img,.portfolio-item[data-category="Weddings"] img{object-position:center center}
.wedding-story{grid-template-columns:1.05fr 1fr 1fr;grid-template-rows:minmax(300px,1fr) 320px;align-items:stretch}.wedding-story .story-intro{grid-column:1;grid-row:1;padding:15px 3vw 28px 0}.wedding-story>img{width:100%;height:100%;min-height:0;object-fit:cover}.wedding-story>img:nth-of-type(1){grid-column:2;grid-row:1/3}.wedding-story>img:nth-of-type(2){grid-column:3;grid-row:1}.wedding-story>img:nth-of-type(3){grid-column:1;grid-row:2}.wedding-story>img:nth-of-type(4){grid-column:3;grid-row:2}
@media(max-width:900px){.wedding-story{grid-template-columns:1fr 1fr;grid-template-rows:auto 360px 300px}.wedding-story .story-intro{grid-column:1/-1;grid-row:1;padding:0 0 22px}.wedding-story>img:nth-of-type(1){grid-column:1;grid-row:2/4}.wedding-story>img:nth-of-type(2){grid-column:2;grid-row:2}.wedding-story>img:nth-of-type(3){grid-column:2;grid-row:3}.wedding-story>img:nth-of-type(4){grid-column:1/-1;grid-row:4;height:340px}}
@media(max-width:580px){.wedding-story{display:grid;grid-template-columns:1fr;grid-template-rows:none}.wedding-story .story-intro,.wedding-story>img:nth-of-type(1),.wedding-story>img:nth-of-type(2),.wedding-story>img:nth-of-type(3),.wedding-story>img:nth-of-type(4){grid-column:1;grid-row:auto}.wedding-story>img{height:auto!important;aspect-ratio:4/3}.wedding-story>img:nth-of-type(1){aspect-ratio:3/4}.wedding-story>img:nth-of-type(4){aspect-ratio:16/10}}
html[lang="ru"] .hero-copy{padding-right:2.5vw;overflow:hidden}html[lang="ru"] .hero h1{font-size:clamp(43px,4.15vw,58px);line-height:.98;letter-spacing:-.035em}html[lang="ru"] .hero h1 em{display:block;margin-top:8px;font-size:.95em;line-height:1.02;letter-spacing:-.045em}html[lang="ru"] .hero .lead{font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;max-width:360px}html[lang="ru"] .hero .actions{display:grid;max-width:310px}html[lang="ru"] .hero .button{width:100%;padding-left:15px;padding-right:15px;font-size:10px}
@media(max-width:900px){html[lang="ru"] .hero-copy{padding-right:6vw;overflow:visible}html[lang="ru"] .hero h1{font-size:clamp(44px,12vw,62px)}html[lang="ru"] .hero .lead{max-width:430px}}
