/*
Theme Name: WPWC Hotel
Theme URI: https://wpwc.ru/templates/hotel/
Author: WPWC / ООО «НА ЮГА»
Author URI: https://wpwc.ru/
Description: Modern boutique-hotel OTA storefront on WPWC Atelier — stay packages, date booking, calm hospitality UI.
Template: wpwc-atelier
Version: 1.3.0
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: wpwc-atelier-hotel
WPWC Modules: supported
WPWC Preset: hotel
*/

@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@500;600;700;800&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap');

:root {
  --wpwc-accent: #1F6B5A;
  --wpwc-ink: #10231F;
  --wpwc-muted: #4B635C;
  --wpwc-bg: #EEF3F1;
  --wpwc-card: #ffffff;
  --wpwc-line: rgba(16, 35, 31, 0.10);
  --wpwc-radius: 14px;
  --wpwc-radius-sm: 10px;
  --wpwc-font: "Figtree", "Segoe UI", sans-serif;
  --wpwc-display: "Fraunces", Georgia, serif;
  --wpwc-ease: cubic-bezier(.22, 1, .36, 1);
}

body {
  background:
    radial-gradient(1000px 480px at 90% -20%, rgba(31, 107, 90, 0.12), transparent 55%),
    radial-gradient(800px 400px at 0% 10%, rgba(20, 50, 45, 0.06), transparent 50%),
    var(--wpwc-bg);
  font-family: var(--wpwc-font);
}

.site-promo {
  background: #10231F;
  color: #D7E8E2;
}

.site-header {
  background: color-mix(in srgb, #EEF3F1 86%, white);
}

.site-brand {
  font-family: var(--wpwc-display);
  font-size: 24px;
  letter-spacing: -.03em;
}
.site-brand span { color: var(--wpwc-accent); }

.wpwc-main--ota { padding-top: 0; }

.hero--ota.hero--visual {
  min-height: min(76vh, 680px);
}
.hero--ota.hero--visual::after {
  background:
    linear-gradient(100deg, rgba(6,16,14,.95) 0%, rgba(6,16,14,.65) 42%, rgba(6,16,14,.35) 70%, rgba(6,16,14,.26) 100%),
    linear-gradient(180deg, rgba(6,16,14,.22), rgba(6,16,14,.88));
}
.hero--ota h1 {
  font-family: var(--wpwc-display);
  font-size: clamp(38px, 6vw, 64px);
  max-width: 11ch;
  font-weight: 700;
}
.hero--ota .hero-kicker {
  color: #9FD6C5;
  letter-spacing: .2em;
}
.hero--ota .hero-lead {
  max-width: 40ch;
  font-size: 17px;
}
.hero--ota .btn-primary {
  background: var(--wpwc-accent) !important;
}

.trust-strip--ota {
  margin: 8px 0 32px;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
}
.trust-strip--ota .trust-item strong {
  font-family: var(--wpwc-display);
  font-size: 17px;
}

.section-head h2 {
  font-family: var(--wpwc-display);
  font-size: clamp(28px, 4vw, 38px);
}

ul.products li.product {
  border: 0;
  padding: 0 0 16px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(16, 35, 31, 0.07);
  transition: transform .22s var(--wpwc-ease), box-shadow .22s var(--wpwc-ease);
}
ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 44px rgba(16, 35, 31, 0.12);
}
ul.products li.product img {
  aspect-ratio: 5 / 4;
  border-radius: 0;
}
ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--wpwc-display);
  font-size: 19px !important;
}
ul.products li.product .price {
  color: var(--wpwc-ink) !important;
}
ul.products li.product .price::after {
  content: " / пакет";
  font-size: 12px;
  color: var(--wpwc-muted);
  font-weight: 600;
}

.woocommerce div.product {
  border: 0;
  box-shadow: 0 18px 48px rgba(16, 35, 31, 0.08);
}
.woocommerce div.product .product_title {
  font-family: var(--wpwc-display);
}

.wpwc-stay-booking {
  border: 0 !important;
  background: linear-gradient(180deg, #f5faf8, #e7f1ee) !important;
  box-shadow: inset 0 0 0 1px rgba(31, 107, 90, 0.18);
  border-radius: var(--wpwc-radius) !important;
  padding: 18px !important;
  margin: 16px 0 !important;
}

@media (prefers-reduced-motion: reduce) {
  ul.products li.product { transition: none; }
}

/* 1.2.0 sellable polish */
.hero--ota.hero--visual { min-height: min(76vh, 680px); }
ul.products li.product .button {
  background: var(--wpwc-accent) !important; color: #fff !important; border-color: transparent !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button { min-width: 260px; }


/* 1.2.2 */
.woocommerce div.product .product_meta { opacity: .85; }
.hero-actions .btn-primary { min-width: 180px; }


/* 1.3.0 cards */
.hero--ota.hero--visual::after {
  background:
    linear-gradient(100deg, rgba(6,16,14,.95) 0%, rgba(6,16,14,.65) 42%, rgba(6,16,14,.35) 70%, rgba(6,16,14,.26) 100%),
    linear-gradient(180deg, rgba(6,16,14,.22), rgba(6,16,14,.88));
}
ul.products li.product .button {
  background: var(--wpwc-accent) !important; color: #fff !important; border: 0 !important;
}
.hero-secondary { border-bottom-color: rgba(255,255,255,.4); }
