html{scroll-behavior:smooth}body.admin-bar .header{top:32px}.hero,.page-hero{z-index:0;isolation:isolate}.logo__img{object-fit:contain}.cr-custom-hero-media{display:block!important;opacity:1!important;width:100%;height:100%;object-fit:cover}.cr-about-image{width:100%;height:100%;min-height:520px;object-fit:cover;border-radius:inherit}.map-embed iframe{width:100%;height:100%;min-height:420px;border:0;display:block}.wine-card__media>.img,.post-card__media>.img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.wine-card__media>.img{object-fit:contain;padding:16px}.product__stage img{max-width:100%;max-height:680px;object-fit:contain}.cr-form-message{min-height:1.4em;margin:.65rem 0;font-size:.88rem}.cr-form-message.is-error{color:#b42318}.cr-form-message.is-success{color:#067647}.lottery .cr-form-message.is-error{color:#ffb4ab}.btn:disabled{opacity:.6;cursor:wait}.navigation.pagination{margin-top:2.5rem}.nav-links{display:flex;gap:.5rem;justify-content:center}.nav-links .page-numbers{padding:.55rem .8rem;border:1px solid var(--line);text-decoration:none}.nav-links .current{background:var(--wine);color:#fff;border-color:var(--wine)}.cr-article-content{max-width:840px;padding-top:4rem;padding-bottom:5rem}.cr-article-content>*+*{margin-top:1.2rem}.cr-page-content>.elementor{min-height:50vh}.product__copy{margin:1.2rem 0}.product__copy>*+*{margin-top:.8rem}.post-card__title a{color:inherit;text-decoration:none}.filter-toggle{display:none;margin-bottom:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.wp-block-image img{height:auto}.page-hero .bg-fill .ph-img{width:100%;height:100%;object-fit:cover;opacity:.45}
@media(max-width:782px){body.admin-bar .header{top:46px}.form-row{grid-template-columns:1fr}.filter-toggle{display:inline-flex}}
@media(max-width:600px){body.admin-bar .header{top:0}.cr-about-image{min-height:360px}}

/* Product photography is displayed edge-to-edge, without decorative frames. */
.wine-card__media{aspect-ratio:3/4;background:transparent!important}
.wine-card__media>.img{object-fit:cover;padding:0;border:0;border-radius:0}
.product__stage{aspect-ratio:auto;background:transparent;border-radius:0;box-shadow:none;cursor:default}
.product__stage img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border:0;border-radius:0}
.header .logo__img{height:64px;width:auto;max-width:170px}
.footer .logo__img{height:88px;width:auto;max-width:190px}
@media(max-width:720px){.header .logo__img{height:52px;max-width:140px}.footer .logo__img{height:74px;max-width:170px}}

/* The base .field styles are designed for the dark lottery section. Restore
   readable light-theme controls inside the product request modal. */
.modal__box{z-index:1;color:var(--ink);opacity:1;visibility:visible;animation:none!important}
.modal__box .field label{color:var(--clay)}
.modal__box .field input[type=text],
.modal__box .field input[type=email],
.modal__box .field input[type=tel],
.modal__box .field textarea{
  background:var(--white);
  border-color:var(--line);
  color:var(--ink);
}
.modal__box .field input::placeholder,
.modal__box .field textarea::placeholder{color:var(--ink-soft)}
.modal__box .field input:focus,
.modal__box .field textarea:focus{
  background:var(--white);
  border-color:var(--ruby);
  box-shadow:0 0 0 3px rgba(139,26,47,.12);
}
.modal__box .consent{color:var(--ink-soft)}
.modal__box .consent a{color:var(--ruby)}
.modal__box .consent input{accent-color:var(--ruby)}
.modal__box .cr-form-message.is-error{color:#b42318}
.modal__box .cr-form-message.is-success{color:#067647}

/* Mobile layout pass: keep the catalogue, forms and editorial pages readable
   without horizontal scrolling on narrow phones. */
@media(max-width:782px){
  body{font-size:15px}
  body.admin-bar .header{top:46px}
  .header{padding:.65rem 0}
  .header__bar{min-height:58px;gap:.6rem}
  .header__cta{gap:.35rem}
  .logo{min-width:0;gap:.45rem}
  .logo__mark{width:38px;height:38px;font-size:1rem;flex:0 0 auto}
  .logo__txt{min-width:0;white-space:nowrap}
  .logo__name{font-size:.95rem;display:block;overflow:hidden;text-overflow:ellipsis}
  .logo__sub{font-size:.48rem;letter-spacing:.22em}
  .hero{min-height:calc(100svh - 58px);padding-top:4.5rem}
  .hero__content{padding-bottom:4.5rem}
  .hero h1{font-size:clamp(2rem,9vw,3.1rem);line-height:1.08}
  .hero__actions{flex-direction:column;align-items:stretch;max-width:320px}
  .hero__actions .btn{justify-content:center}
  .hero__stats{gap:1rem;margin-top:2rem}
  .hero__stats .num{font-size:1.55rem}
  .page-hero{min-height:42svh;padding:7rem 0 2.5rem}
  .page-hero h1{font-size:clamp(2rem,9vw,3rem)}
  .catalog-layout{display:block}
  .filters{position:static;margin-bottom:1rem}
  .filters.open{display:block}
  .filter-toggle{display:inline-flex}
  .grid-wines{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
  .wine-card__media{aspect-ratio:3/4}
  .wine-card__body{padding:1rem}
  .wine-card__title{font-size:1rem;line-height:1.2}
  .wine-card__desc{font-size:.8rem;line-height:1.45}
  .wine-card__foot{display:block}
  .wine-card__foot .link-arrow{margin-top:.55rem;font-size:.7rem}
  .split,.tech-grid,.contacts-grid,.product,.quote-card,.form-row{grid-template-columns:1fr}
  .about-art .badge{right:0;bottom:-18px;width:112px;height:112px}
  .cr-about-image{min-height:300px}
  .product__media{position:static}
  .product__stage{min-height:0}
  .product__stage img{max-height:70svh}
  .product__thumbs{overflow-x:auto;padding-bottom:.35rem}
  .product__thumbs th{flex:0 0 62px;width:62px;height:78px}
  .spec-table{font-size:.85rem}
  .spec-table th{width:40%}
  .map-embed{min-height:290px}
  .map-embed iframe{min-height:290px}
  .form-card{padding:1.2rem}
  .form-row{gap:.8rem}
  .modal{padding:.75rem}
  .modal__box{max-height:calc(100svh - 1.5rem);overflow:auto;padding:1.25rem}
  .footer__grid{grid-template-columns:1fr;gap:1.5rem}
  .footer__bottom{align-items:flex-start;flex-direction:column}
}
@media(max-width:480px){
  .wrap{width:min(100% - 1.25rem,var(--wrap))}
  .grid-wines{grid-template-columns:1fr}
  .hero__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}
  .hero__stats .lbl{font-size:.62rem;line-height:1.3}
  .catalog-toolbar{align-items:flex-start;gap:.5rem}
  .page-hero{min-height:36svh}
}

/* Elementor or block-editor content can replace the built-in page layouts. */
.cr-page-content>.elementor,.cr-elementor-home>.elementor{min-height:50vh}
.cr-elementor-home{min-height:60vh}
.footer-menu{list-style:none;margin:0;padding:0}.footer-menu li+li{margin-top:.4rem}.footer-menu a{color:inherit;text-decoration:none}

/* Editable media block: images and videos share the same responsive frame. */
.video_about{display:block;width:100%;height:100%;min-height:520px;object-fit:cover;border-radius:inherit}
@media(max-width:600px){.video_about{min-height:300px}}
.cr-editable-section-video{display:block;position:absolute!important;inset:0;width:100%;height:100%;min-height:100%;object-fit:cover;z-index:0!important;border-radius:inherit}
.about-art .frame,.gallery .g,.tech-card,.quote-card .ava{position:relative;overflow:hidden}
.cr-live-content{width:100%}
.cr-elementor-editor-preview{position:relative;min-height:80px;outline:1px dashed rgba(154,103,45,.42);outline-offset:-1px}
.cr-elementor-editor-preview:before{content:"Редактируемая секция — " attr(data-section-title);display:block;position:relative;z-index:20;padding:.45rem .7rem;background:#fff7e8;color:#6b3d19;border-bottom:1px solid rgba(154,103,45,.28);font:600 12px/1.35 Montserrat,sans-serif;letter-spacing:.02em}
.cr-elementor-editor-preview .reveal{opacity:1!important;visibility:visible!important;transform:none!important}
.cr-elementor-editor-preview .ph,.cr-elementor-editor-preview video{opacity:1!important;visibility:visible!important}
.cr-elementor-editor-live .elementor-widget-cr-editable-section{outline:1px dashed rgba(154,103,45,.42);outline-offset:-1px}
.cr-elementor-editor-live .elementor-widget-cr-editable-section .reveal,.cr-elementor-editor-live .elementor-widget-cr-editable-section .ph,.cr-elementor-editor-live .elementor-widget-cr-editable-section video{opacity:1!important;visibility:visible!important;transform:none!important}

/* Keep the address map next to the contact details, with the form below. */
.cr-contacts-map-grid{align-items:stretch}
.cr-contact-map{min-height:100%;margin:0}
.cr-contact-map iframe{height:100%;min-height:460px}
.cr-contact-form-wrap{max-width:900px;margin-top:3rem}
@media(max-width:760px){.cr-contacts-map-grid{grid-template-columns:1fr}.cr-contact-map{min-height:300px}.cr-contact-map iframe{min-height:300px}.cr-contact-form-wrap{margin-top:2rem}}

/* Full-bleed Elementor layout without white gutters or horizontal overflow. */
html,body{width:100%;max-width:100%;margin:0!important;padding:0!important;overflow-x:hidden}
body{position:relative}
body>.elementor,.cr-page-content>.elementor,.cr-elementor-home>.elementor{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.elementor>.e-con,.elementor>.elementor-element.e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;gap:0}
.elementor-widget,.elementor-widget-container,main,section{max-width:100%}
.elementor-widget,.elementor-widget-container,.split>*,.tech-grid>*,.contacts-grid>*,.product>*{min-width:0}
.cr-elementor-post-preview{max-width:900px;margin:0 auto;padding:2rem}.cr-elementor-post-preview__image{display:block;width:100%;max-height:520px;object-fit:cover;margin-bottom:1.5rem}.cr-elementor-post-preview .lead{color:var(--ink-soft);margin-bottom:1.5rem}
img,video,iframe{max-width:100%}
h1,h2,h3,p,a{overflow-wrap:anywhere}
@media(max-width:767px){
  body>.elementor,.cr-page-content>.elementor,.cr-elementor-home>.elementor{overflow:hidden}
  .elementor>.e-con,.elementor>.elementor-element.e-con{width:100%!important;max-width:100%!important}
  .wrap{width:calc(100% - 1.25rem);max-width:100%;margin-left:auto;margin-right:auto}
}

/* Wine cards: show the editable WordPress title and colour clearly. */
.wine-card__identity{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}
.wine-card__identity .wine-card__title{margin:0;min-width:0}
.wine-card__color{display:inline-flex;align-items:center;gap:.4rem;flex:0 0 auto;padding:.3rem .55rem;border:1px solid rgba(74,13,26,.18);border-radius:999px;font-size:.68rem;font-weight:700;line-height:1;letter-spacing:.04em;white-space:nowrap;color:#4a0d1a;background:#fffaf2}
.wine-card__color-dot{width:.55rem;height:.55rem;border-radius:50%;background:#8e1c32;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.wine-card__color--white .wine-card__color-dot{background:#f2df9f}
.wine-card__color--amber .wine-card__color-dot{background:#d88222}
.wine-card__color--red .wine-card__color-dot{background:#7b1830}
@media(max-width:480px){.wine-card__identity{display:block}.wine-card__color{margin-top:.45rem}.wine-card__type{display:block}}
