.inquiry-form { scroll-margin-top: 96px; text-align: left; }
.inquiry-intro, .inquiry-help, .inquiry-privacy { color: #555; line-height: 1.6; }
.inquiry-intro { margin-bottom: 24px; }
.inquiry-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 20px; }
.inquiry-fields .form-group { margin: 0; min-width: 0; }
.inquiry-form label { display: block; margin-bottom: 7px; color: #35312d; font-size: 14px; font-weight: 600; letter-spacing: normal; text-transform: none; }
.inquiry-form label small { font-size: 12px; font-weight: 400; }
.inquiry-form .form-control { width: 100%; font-size: 16px; min-height: 48px; text-transform: none; letter-spacing: normal; }
.inquiry-form select.form-control { padding-right: 24px; }
.inquiry-help, .inquiry-message { grid-column: 1 / -1; }
.inquiry-help { font-size: 13px; margin: -4px 0 4px; }
.inquiry-details { margin: 20px 0; border-top: 1px solid #e5ddd4; border-bottom: 1px solid #e5ddd4; }
.inquiry-details summary { cursor: pointer; padding: 15px 0; color: #4a4035; font-weight: 600; }
.inquiry-details summary span { font-weight: 400; }
.inquiry-details summary::after { content: "+"; float: right; color: #655039; }
.inquiry-details[open] summary::after { content: "-"; }
.inquiry-details[open] .inquiry-fields { padding-bottom: 18px; }
.inquiry-company[hidden] { display: none !important; }
.inquiry-privacy { font-size: 12px; margin: 18px 0; }
.inquiry-privacy a { color: #655039; text-decoration: underline; }
.inquiry-form .form-submit .btn { min-height: 50px; }
.inquiry-form .col-message { padding: 0; }
.inquiry-form label.error { color: #a32929; font-size: 13px; margin-top: 6px; }
.inquiry-form .form-control.error { border-color: #a32929; }
.inquiry-form .form-control:focus { outline: 2px solid #9b784f; outline-offset: 2px; }
.inquiry-form .error-message { color: #a32929; line-height: 1.6; }

.page-index #about .col-about-img { display: flex; flex-direction: column; gap: 16px; }
.page-index #about .col-about-img > picture { display: block; width: 100%; }
.page-index #about .col-about-img > br { display: none; }
.page-index #about .col-about-img img { display: block; width: 100%; height: auto; margin: 0 auto !important; border-radius: var(--r-md, 16px); box-shadow: var(--sh-sm); }

@media (min-width: 768px) and (max-width: 991px) {
  .page-index #about .section-content > .row-base { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: min-content 1fr; row-gap: 24px; margin-top: 0; align-items: start; }
  .page-index #about .section-content > .row-base::before,
  .page-index #about .section-content > .row-base::after,
  .page-index #about .section-content > .row-base > .clearfix { display: none; }
  .page-index #about .section-content > .row-base > .col-base { width: 100%; min-width: 0; float: none; margin-top: 0; }
  .page-index #about .section-content > .row-base > .col-base:first-child { grid-column: 1; grid-row: 1; }
  .page-index #about .col-about-spec { grid-column: 1; grid-row: 2; }
  .page-index #about .col-about-img { grid-column: 2; grid-row: 1 / span 2; }
}

@media (max-width: 991px) {
  .m-scrolled .navbar-mobile { background: rgba(255,255,255,.97); box-shadow: 0 3px 18px rgba(42,38,34,.08); }
  .m-scrolled .navbar-mobile .brand { color: #292620 !important; }
  .m-scrolled .navbar-mobile .navbar-toggle { background: #f7f3ee; }
  .m-scrolled .navbar-mobile .navbar-toggle .icon-bar { background: #9b784f !important; }
  .navbar-collapse.navbar-collapse { justify-content: flex-start; padding: 76px 24px calc(24px + env(safe-area-inset-bottom, 0px)); }
  .navbar-nav-mobile { flex: none; width: 100%; gap: 0; margin: 0; }
  .navbar-nav-mobile li a { min-height: 46px !important; padding: 10px 6px !important; font-size: 15px !important; line-height: 1.5 !important; letter-spacing: .06em !important; }
  .navbar-nav-mobile .desktop-btn-li { display: block !important; margin-top: 12px; }
  .navbar-nav-mobile .desktop-btn-book { background: #c5a47e !important; color: #241d16 !important; justify-content: center; border-radius: 26px; }
  .m-menu-contact { flex: none; margin-top: 18px; padding-top: 16px; }
  .navbar-toggle:focus-visible, .navbar-nav-mobile a:focus-visible { outline: 2px solid #8b6944; outline-offset: 3px; }
  .main-header .project-title-info, .main-header .project-title-info .text-primary, .main-header .m-hero-sub { color: #fff !important; opacity: 1 !important; font-size: 16px !important; line-height: 1.55 !important; font-weight: 500 !important; letter-spacing: .025em !important; text-transform: none !important; text-shadow: 0 2px 12px rgba(0,0,0,.8); }
  .main-inner::after { background: linear-gradient(180deg, rgba(0,0,0,.42), rgba(0,0,0,.1) 28%, rgba(0,0,0,.35) 52%, rgba(0,0,0,.82)) !important; }
  .main-header h1 { font-size: clamp(26px, 7.2vw, 34px) !important; line-height: 1.2 !important; letter-spacing: .025em !important; }
  .section-title, #about .section-title { font-size: 26px !important; line-height: 1.3 !important; letter-spacing: .035em !important; }
  .section p { line-height: 1.6 !important; }
  .main-header .m-hero-cta { gap: 10px; width: 100%; flex-wrap: wrap; }
  .main-header .m-hero-cta .btn { padding: 13px 14px !important; font-size: 12px !important; letter-spacing: .04em !important; min-height: 48px; }
  .main-header .m-hero-btn-primary { background: #c5a47e !important; color: #241d16 !important; border: 1px solid #c5a47e !important; }
  .m-actionbar .m-quote { flex: 1.3; background: #c5a47e; color: #241d16; border-color: #c5a47e; }
  .m-actionbar .m-call { background: #fff; color: #35312d; border: 1px solid #c5a47e; box-shadow: none; }
  .m-actionbar a { font-size: 12px !important; letter-spacing: .02em !important; min-height: 48px; gap: 5px; }
  .page-contacts .main-inner, .page-gallery .main-inner, .page-blog .main-inner, .page-thankyou .main-inner, .page-privacy-policy .main-inner, .page-terms-of-service .main-inner, [class*="page-blog-"] .main-inner { min-height: 0; padding: 110px 0 48px !important; }
  .page-contacts .m-hero-scroll, .page-gallery .m-hero-scroll, .page-blog .m-hero-scroll, .page-thankyou .m-hero-scroll, .page-privacy-policy .m-hero-scroll, .page-terms-of-service .m-hero-scroll, [class*="page-blog-"] .m-hero-scroll { display: none; }
  .contacts .row-base { display: flex; flex-direction: column; margin-top: 0; }
  .contacts .row-base > .col-address { order: 2; margin-top: 24px; }
  .contacts .row-base > .col-base:not(.col-address) { order: 1; margin-top: 0; }
  .contacts .section-content { margin-top: 28px !important; }
  .inquiry-form { scroll-margin-top: 90px; }
  #inquiry-form { scroll-margin-top: 90px; }
  .inquiry-fields { gap: 16px; }
  .inquiry-form .form-submit .btn { width: 100%; }
  .home-intro-details { margin-top: 18px; }
  .home-intro-details summary { padding: 12px 0; font-weight: 600; color: #655039; cursor: pointer; }
  .gallery-nav { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 22px; }
  .gallery-nav button { min-height: 44px; padding: 10px 14px; border: 1px solid #c5a47e; border-radius: 22px; background: #fff; color: #433a30; font: 500 14px 'Montserrat', sans-serif; }
  .gallery-nav button.active { background: #c5a47e; color: #241d16; }
  .page-gallery .gallery-intro h2 { font-size: 26px !important; letter-spacing: .03em !important; }
}
@media (max-width: 479px) {
  .inquiry-fields { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .m-hero-scroll, .wow, .m-actionbar, .navbar-toggle .icon-bar { animation: none !important; transition: none !important; }
  .wow { visibility: visible !important; }
}
