/* HomeInterior owner map: index only — services/prices area. Check this file before touching global CSS for homepage pricing/services issues. */

/* hi-index-services-prices.css — consolidated bundle for index.html */

/* ---- source: hi-landing-surface-tone.css ---- */
body{ background:var(--hi-bg); color:var(--hi-text); }section{ background:var(--hi-surface); color:var(--hi-text); }section p, section li{ color:var(--hi-text-dim); }/* Hero overlay: gentle darkening for slides */#hero{ position:relative; }#hero::before{
  content:""; position:absolute; inset:0; pointer-events:none; z-index:1;
  background: linear-gradient(to bottom, rgba(0,0,0,.22) 0%, rgba(0,0,0,.42) 100%);
}#hero .content, #hero .hero-title, #hero .hero-subtitle, #hero .cta{ position:relative; z-index:2; }/* Keep hero underline above overlay */#hero .hero-subtitle{ position:relative; z-index:3; }/* Header underglow: bright core line + soft glow strictly below the header */

/* ---- source: hi-index-inline-06.css ---- */
/* === merge-services-steps-equal-12 === */
#services{ padding-bottom:12px !important; }
#design-steps{ border-top:0 !important; padding-top:12px !important; }


/* === prices-polish-v2 === */
/* Grid */
#prices .hi-prices-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
  align-items: stretch;
  margin-top: 28px;
}

/* Card */
#prices .price-card{
  background: linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(255,255,255,0) 100%), linear-gradient(135deg, rgba(191,169,122,.10), rgba(12,12,14,.96) 28%, rgba(4,4,4,.98) 100%);
  border: 1px solid rgba(191,169,122,0.24);
  border-radius: 28px;
  padding: 24px 22px 24px;
  box-shadow: 0 18px 46px rgba(0,0,0,.22), inset 0 0 0 1px rgba(255,255,255,.02);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  position: relative;
  overflow: hidden;
}

#prices .price-card:hover{
  transform: translateY(-2px);
  border-color: rgba(191,169,122,0.36);
  box-shadow: 0 0 22px rgba(191,169,122,0.14), 0 18px 46px rgba(0,0,0,.24);
}


/* Header */
#prices .price-card header{ margin-bottom: 10px; }
#prices .price-card h3{
  
  
  margin: 6px 0 6px;
  
  
}

#prices .price-card .subtitle{
  margin: 0;
  font-size: clamp(12px, .95vw, 14px);
  color: var(--hi-text-dim, #CFC8B5);
  opacity: .9;
}

/* Icons (gold, minimalist) */
#prices .icon-dot, #prices .icon-crown{
  width: 22px; height: 22px; border-radius: 50%;
  position: relative; display: inline-block;
  background: radial-gradient(circle at 50% 50%, rgba(191,169,122,0.32), rgba(191,169,122,0.06) 60%, transparent 70%);
  box-shadow: 0 0 10px rgba(191,169,122,0.25);
}
#prices .icon-dot::after{
  content:""; position:absolute; inset:6px;
  border-radius: 50%; border:1px solid rgba(191,169,122,0.9);
}
#prices .icon-crown::after{
  content:""; position:absolute; left:5px; right:5px; top:6px; bottom:6px;
  background:
    linear-gradient(135deg, transparent 45%, rgba(191,169,122,0.95) 46%, rgba(191,169,122,0.95) 54%, transparent 55%) left top/50% 50% no-repeat,
    linear-gradient(225deg, transparent 45%, rgba(191,169,122,0.95) 46%, rgba(191,169,122,0.95) 54%, transparent 55%) right top/50% 50% no-repeat,
    linear-gradient(0deg, rgba(191,169,122,0.95), rgba(191,169,122,0.95)) center bottom/60% 18% no-repeat;
  border-radius: 2px;
}

/* Features list */
#prices .features{
  list-style: disc;
  padding-left: 18px;
  margin: 10px 0 12px;
}
#prices .features li{
  display: list-item;
  margin: 6px 0;
  
  
}
#prices .features li::before{
  content: none;
  display: none;
}

/* Price value */
#prices .price{
  font-size: clamp(16px, 1.2vw, 18px);
  color: var(--hi-text, #E8E3D4);
  letter-spacing: .2px;
  margin: 10px 0 12px;
}
#prices .price strong, #prices .price b{ color: var(--hi-gold, #BFA97A); font-weight: 600; }

/* CTA inside prices only: align with night theme */
#prices .btn-outline{
  display: inline-block;
  padding: 10px 14px;
  border: 1px solid rgba(191,169,122,.7);
  border-radius: 999px !important;
  color: var(--hi-text, #E8E3D4); text-decoration: none;
  transition: box-shadow .25s ease, background-color .25s ease, transform .2s ease;
  background: rgba(191,169,122,.08);
  box-shadow: 0 0 10px rgba(191,169,122,.18) inset, 0 0 0 rgba(0,0,0,0);
}
#prices .btn-outline:hover{
  background: rgba(191,169,122,.16);
  box-shadow: 0 0 18px rgba(191,169,122,.28), 0 0 1px rgba(191,169,122,.65) inset;
  transform: translateY(-1px);
}

/* Small rhythm tweaks */
#prices h2{ margin-bottom: 12px; }

#prices .hi-prices-note{
  max-width:860px;
  margin:0 auto 28px;
  
  
  
  
  text-align:center;
  
  white-space:normal;
  
  
  
}
#prices .hi-prices-note + .hi-prices-grid{
  margin-top:0 !important;
}
@media (max-width: 900px){
  #prices .hi-prices-note{
    max-width:none;
    margin:0 auto 30px;
    
    
  }
}

#prices p.muted{ color: var(--hi-text-dim, #CFC8B5); }
#prices .hi-prices-subtitle{ margin-bottom: 28px; }
@media (max-width: 900px){
  #prices .hi-prices-grid{ margin-top: 24px; }
  #prices .hi-prices-subtitle{ margin-bottom: 24px; }
}

/* ---- source: hi-landing-contact-mobile.css ---- */
#contacts a[href^="tel:"],
#contacts a[href^="mailto:"]{
  color: var(--hi-text, #E8E3D4) !important;
  text-decoration: none;
}
#contacts a[href^="tel:"]:hover,
#contacts a[href^="mailto:"]:hover{
  color: var(--hi-text, #E8E3D4) !important;
  text-shadow: 0 0 10px rgba(191,169,122,.25);
}
#contacts .btn, #contacts button, #contacts input[type="submit"]{
  display:inline-block; padding:12px 18px; border-radius:999px; text-decoration:none;
  border:1px solid rgba(255,255,255,.12);
  background:#111; color:#E8E3D4;
  box-shadow:0 0 12px rgba(0,0,0,.45), 0 0 16px rgba(191,169,122,.20);
  cursor:pointer;
}
#contacts .btn:hover, #contacts button:hover, #contacts input[type="submit"]:hover{
  background:#161616;
  box-shadow:0 0 18px rgba(0,0,0,.55), 0 0 22px rgba(191,169,122,.28);
}

@media (max-width: 768px){
  html, body { width:100%; max-width:100vw; overflow-x:hidden; }
  section, [class*="section"], [class*="block"], .container {
    box-sizing:border-box; width:100%; max-width:100%; margin-left:auto; margin-right:auto;
  }
  header nav a[href^="#"]{
    padding: 8px 14px; border:1px solid transparent; border-radius:12px;
  }
  * {
    transition-property: color, background-color, box-shadow, opacity, transform !important;
  }
  img, video { display:block; max-width:100%; height:auto; }
}

/* ---- source: hi-index-inline-07.css ---- */
/* === himob-align-fix-v2 === */
@media (max-width: 900px){
.himob-fixed{
    display:grid !important;
    grid-template-columns: 44px 1fr auto !important;
    align-items:center !important;
    gap:12px !important;
}


/* === portfolio-gallery-2cols-desktop === */
@media (min-width: 1024px){
  .gallery{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* === mobile-team-gap-fix === */
@media (max-width: 900px){
  /* Поднять раздел "Обо мне и команде" ближе к "Цены на дизайн интерьера" и не трогать десктоп */
  #team{
    margin-top: -30px !important;
    padding-top: 20px !important;
  }
}


/* === desktop-prices-align-20251129 === */
@media (min-width: 1024px){
    #prices .price-card .subtitle{
      display:block;
      text-align:left;
    }
    #prices .price-card .btn{
      display:block;
      width:max-content;
      margin:12px auto 0;
      text-align:center;
    }
  }


/* === prices-subtitle-all-align-20251129 === */
#prices .price-card .subtitle{
    display:block;
    text-align:left;
  }
  #prices .price-card .price{
    text-align:center;
  }

/* ---- source: hi-landing-pricecard-rows.css ---- */
#prices .price-card .price-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin-top:12px;
  }
  #prices .price-card .price-row .price{
    text-align:left;
    margin:0;
  }
  #prices .price-card .price-row .btn{
    display:inline-flex;
    width:auto;
    margin:0;
    text-align:center;
  }

#prices .price-card header{
    gap:10px;
    flex-wrap:wrap;
  }
  #prices .price-card header .subtitle{
    flex-basis:100%;
  }
  #prices .price-card header .icon-dot,
  #prices .price-card header .icon-crown,
  #prices .price-card header .icon-star{
    margin:0;
    flex:0 0 auto;
  }

/* ---- source: hi-index-inline-08.css ---- */
/* === prices-price-size-20251130 === */
#prices .price-card .price{
    font-size:22px;
  }
  #prices .price-card .price.main{
    font-size:22px;
  }

/* ---- source: hi-index-inline-09.css ---- */
/* === prices-finetune-20251130 === */
/* 4) More top margin for contract note under packages */
  #prices .prices-contract-note{
    margin-top: 24px;
  }

  /* 5) Contract link color same as main text (like "Эскизный проект") */
  #prices .prices-contract-note a{
    color: var(--hi-text);
    text-decoration: underline;
  }

  /* 6) Contract texts alignment and rhythm unified with "О студии" */
  #prices .prices-contract-note,
  #prices .footnote{
    text-align: justify;
    text-justify: inter-word;
  }


/* === team-text-justify-experiment-archive-v14 === */
/* Ранний эксперимент оставлен нейтральным, чтобы не конфликтовать с финальным owner в partners-links.css. */
@media (min-width: 901px){
  #team .team-text p{
    text-align: left !important;
    text-justify: auto;
    text-align-last: auto;
    -webkit-hyphens: none;
    hyphens: none;
    word-break: normal;
    overflow-wrap: normal;
  }
}


/* === team-mobile-left-align-20260328 === */
@media (max-width: 900px){
  #team .team-text p{
    text-align: left !important;
    text-justify: auto;
    text-align-last: auto;
    -webkit-hyphens: none;
    hyphens: none;
    word-break: normal;
    overflow-wrap: normal;
  }
}


/* === inline-5 === */
@media (max-width: 900px) {
  /* Prices note: align left on mobile */
  .prices-contract-note {
    text-align: left !important;
  }
  /* Hide paragraph about voice assistant "Алиса" only on mobile */
  #services .hi-about p:nth-of-type(3) {
    display: none;
  }
  /* Hide list item "Всегда на связи..." in calm block only on mobile */
}


/* === inline-6 === */
#design-steps .grid {
    counter-reset: hi-step;
    padding-top: 10px;
  }
  #design-steps .grid > div {
    position: relative;
    padding-left: 52px;
  }
  #design-steps .grid > div::before {
    counter-increment: hi-step;
    content: counter(hi-step);
    position: absolute;
    top: -0.38em;
    left: 0;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid var(--hi-accent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 15px;
    color: #fff;
  }

  #design-steps .grid > div.hi-step-active::before {
    background: #BFA97A;
    color: #000;
    border-color: #BFA97A;
    box-shadow: 0 0 18px rgba(191,169,122,0.7), 0 0 36px rgba(191,169,122,0.45);
  }
  @media (max-width: 900px) {
    #design-steps .grid > div {
      padding-left: 44px;
    }
    #design-steps .grid > div::before {
      width: 30px;
      height: 30px;
      font-size: 14px;
    }
  }


/* === v6-price-card-header-rollback === */
/* Возврат вида звёздочек и ритма заголовка пакетов как в v4, без других изменений */
#prices .price-card header{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  gap:6px;
  text-align:center;
}
#prices .price-card header .price-stars{
  width:100%;
  text-align:center;
  margin:0;
  order:0;
  color:inherit;
  letter-spacing:normal;
  font-size:inherit;
  line-height:inherit;
}
#prices .price-card header h3{
  text-align:center;
  margin:0;
  order:1;
}
#prices .price-card header .subtitle{
  text-align:center;
  margin:0;
  margin-top:0;
  order:2;
  flex-basis:auto;
}


/* === prices-compact-desktop-v04 === */
@media (min-width: 1024px){
  #prices .hi-prices-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    margin-top: 24px;
    align-items: start;
  }
  #prices .price-card{
    padding: 22px;
  }
  #prices .price-card header{
    margin-bottom: 8px;
  }
  #prices .price-card h3{
    margin: 4px 0 2px;
  }
  #prices .features{
    margin: 10px 0 14px;
  }
  #prices .features li{
    gap: 8px;
    margin: 5px 0;
    
  }
  #prices .price-card .price{
    font-size: 22px;
  }
  #prices .price-card .price.main{
    font-size: 22px;
  }
}

/* === prices-row-font-size-fix-v10 ===
   Owner: index.html, section #prices.
   Goal: make all three price values identical to the large price style on design-interiera-samara.html. */
#prices .price-card .price-row .price,
#prices .price-card .price-row .price.main{
  font-size:22px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.2px !important;
}
}

/* === index-v12-prices-note-to-cards-gap-desktop ===
   Owner: index.html / #prices.
   Goal: match the desktop gap from the prices note to the cards with the accepted
   live-view intro-to-frame gap (30px). Mobile remains unchanged. */
@media (min-width:901px){
  body.project-hero-fullscreen-page#top #prices .hi-prices-note{
    margin-bottom:30px !important;
  }
  body.project-hero-fullscreen-page#top #prices .hi-prices-note + .hi-prices-grid{
    margin-top:0 !important;
  }
}

/* === index-v14-prices-related-services-notes ===
   Owner: index.html / #prices.
   Discount accent and calm estimates for complectation and construction work. */
body.project-hero-fullscreen-page#top #prices .hi-volume-discount{
  max-width:920px !important;
  margin:30px auto 0 !important;
  color:#D8CCAD !important;
  font-size:clamp(21px,2vw,28px) !important;
  font-weight:800 !important;
  line-height:1.35 !important;
  text-align:center !important;
}

body.project-hero-fullscreen-page#top #prices .hi-sketch-complectation,
body.project-hero-fullscreen-page#top #prices .hi-repair-cost-estimate{
  max-width:920px !important;
  margin:10px auto 0 !important;
  color:rgba(255,255,255,.78) !important;
  font-size:clamp(16px,1.3vw,19px) !important;
  font-weight:500 !important;
  line-height:1.5 !important;
  text-align:center !important;
}
