/*====================================
  INFO / INTRO
=====================================*/

.info-strip{
    padding:18px 0;
    border-top:1px solid rgba(255,255,255,.05);
    border-bottom:1px solid rgba(255,255,255,.05);
    background:rgba(255,255,255,.015);
}

.info-strip p{
    text-align:center;
    text-transform:uppercase;
    color:var(--muted);
}

.intro-welcome{
    position:relative;
    overflow:hidden;
    padding:100px 0 120px;
    background:
        radial-gradient(circle at 12% 18%, rgba(32,48,88,.06), transparent 52%),
        radial-gradient(circle at 88% 82%, rgba(75,21,28,.07), transparent 56%),
        radial-gradient(circle at 50% 0%, rgba(197,163,108,.025), transparent 60%),
        linear-gradient(180deg, #121318 0%, #0b0b0d 100%);
}

.intro-welcome::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(rgba(255,255,255,.015), rgba(255,255,255,.015));
    opacity:.35;
    pointer-events:none;
}

.pic-welcome img{
    max-width: 480px;
    width:100%;
    min-height:520px;
    object-fit:cover;
    display:block;
    border-radius:var(--radius);
}

.system-signals{
    margin-top:35px;
    padding-top:34px;
    border-top:1px solid rgba(255,255,255,.07);
}


/*====================================
  SERVICES
=====================================*/

.services{
    background:var(--bg-soft);
}

.title-card-page::before,
.title-desc-card::before{
    content:"";
    display:block;
    width:45px;
    height:1px;
    margin-bottom:20px;
    background:rgba(201,168,106,.72);
}

.title-card-page h3,
.title-desc-card h3{
    margin:0 0 20px;
    font-weight:300;
}

.title-desc-card h3 span{
    display:block;
}

.service-meta{
    margin-bottom:20px;
    padding:15px 0;
    color:var(--gold-soft);
    line-height:21px;
    font-weight:700;
    border-top:1px solid rgba(255,255,255,.08);
    border-bottom:1px solid rgba(255,255,255,.08);
}

.btn-block-foot{
    display: flex;
    justify-content: center;
    margin-top: 40px;
}


/*====================================
  VISIT FLOW
=====================================*/

.visit-flow{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(ellipse at 50% 18%, rgba(75,21,28,.13) 0%, transparent 48%),
        linear-gradient(180deg, #080707 0%, #101114 100%);
}

.visit-flow-head{
    max-width:760px;
}

.visit-flow-line{
    position:relative;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:clamp(34px,4vw,70px);
}

.visit-flow-line::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:18px;
    height:1px;
    background:
        linear-gradient(
            90deg,
            transparent 0%,
            rgba(197,163,108,.18) 12%,
            rgba(197,163,108,.18) 88%,
            transparent 100%
        );
}

.visit-step{
    position:relative;
    padding-top:58px;
}

.visit-step::before{
    content:"";
    position:absolute;
    top:12px;
    left:0;
    width:13px;
    height:13px;
    border:1px solid rgba(197,163,108,.48);
    background:#080707;
    transform:rotate(45deg);
}

.visit-step span{
    display:block;
    margin-bottom:18px;
    font-size:12px;
    letter-spacing:.24em;
    font-weight:800;
    color:rgba(197,163,108,.84);
}

.visit-step h3{
    margin:0 0 12px;
    font-weight:300;
    color:var(--text);
}


/*====================================
  PARTS
=====================================*/

.parts{
    padding: 160px 0;
    background: url(../image/parts-bg-3.webp) no-repeat center top / cover;
}

.parts-layout{
    position:relative;
    max-width:45%;
    z-index:2;
}

.parts-layout::before{
    content: "";
    position: absolute;
    inset: -40px;
    background: rgb(5 6 10 / 88%);
    filter: blur(55px);
    z-index: -1;
}

.parts-list{
    margin-top: 35px;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 40px;
}


.parts-item h4{
    color:var(--text);
    margin-bottom:8px;
}

.parts-item p{
    font-size: 14px;
    color:var(--text);
}

.marker-parts{
    display: flex;
    gap: 18px;
}

.marker-parts-icon{
    display:block;
    width:9px;
    height:9px;
    border-radius:50%;
    background:var(--gold);
    box-shadow:0 0 0 7px rgba(197,163,108,.11);
    flex:0 0 auto;
    margin-top: 4px;
}


/*====================================
  BRANDS
=====================================*/

.brands{
    padding-top: calc(65px + 120px);
    padding-bottom: 100px;
    background:
        radial-gradient(circle at 50% -15%, rgba(226,200,145,.06), transparent 28%),
        radial-gradient(circle at 10% 22%, rgba(75,21,28,.14), transparent 34%),
        radial-gradient(circle at 92% 70%, rgba(32,26,24,.20), transparent 32%),
        linear-gradient(180deg, #17181c 0%, #101114 52%, #080707 100%);
}

.brand-group h3{
    margin-bottom:22px;
    color:var(--text);
}

.brand-group + .brand-group{
    position:relative;
    margin-top:70px;
    padding-top:60px;
}

.brand-group + .brand-group::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:1px;
    background:linear-gradient(90deg, transparent 0%, rgba(244,239,232,.16) 50%, transparent 100%);
}

.logostrip{
    grid-template-columns:repeat(6,1fr);
    gap:18px;
}

.item-brands{
    height:96px;
    padding:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(226,200,145,.16);
    border-radius:var(--radius);
    background:linear-gradient(180deg, rgba(255,255,255,.015), rgba(0,0,0,.08));
    transition:.25s ease;
}

.item-brands img{
    max-width:82%;
    max-height:48px;
    object-fit:contain;
    opacity:.68;
    filter:grayscale(1) brightness(1.45) contrast(.95);
    transition:.25s ease;
}

.item-brands:hover{
    background:rgba(226,200,145,.08);
    border-color:rgba(226,200,145,.32);
    transform:translateY(-2px);
}

.item-brands:hover img{
    opacity:1;
    filter:grayscale(.15) brightness(1.35) contrast(1);
}

/*====================================
  CUSTOMER
=====================================*/

.customer{
    background:#080707;
    position:relative;
}

.customer::before{
    content:"";
    position:absolute;
    top:0;
    left:50%;
    transform:translateX(-50%);
    max-width: 570px;
    width: 100%;
    height:1px;

    background:linear-gradient(
        90deg,
        transparent 0%,
        rgba(197,163,108,.10) 22%,
        rgba(197,163,108,.24) 50%,
        rgba(197,163,108,.10) 78%,
        transparent 100%
    );
}

.customer::after{
    content:"";
    position:absolute;
    bottom:0;
    left:50%;
    transform:translateX(-50%);
    max-width: 570px;
    width: 100%;
    height:1px;

    background:linear-gradient(
        90deg,
        transparent 0%,
        rgba(197,163,108,.10) 22%,
        rgba(197,163,108,.24) 50%,
        rgba(197,163,108,.10) 78%,
        transparent 100%
    );
}


.general-customer-container{
    align-items:center;
    gap:clamp(34px,5vw,76px);
}

.pic-customer{
    display:flex;
    justify-content:end;
}

.pic-customer img{
    width:462px;
    height:630px;
    object-fit:cover;
    display:block;
}

.block-item-previlegy{
    margin-top:42px;
    display:flex;
    gap:56px;
}

.item-previlegy{
    display:flex;
    gap:14px;
    align-items:flex-start;
}

.privilege-icon{
    width:9px;
    height:9px;
    margin-top:7px;
    border-radius:50%;
    background:var(--gold);
    box-shadow:0 0 0 7px rgba(197,163,108,.11);
    flex:0 0 auto;
}


.item-previlegy h5 span{
    display:block;
    color:var(--gold-soft);
}

/*=============================================
    WINE CELLAR
==============================================*/

.wine-cellar{
    position:relative;
    padding-top:100px;
    height:930px;
    padding-bottom:150px;
}


.pic-bg-wine-cellar{
    position:absolute;
    inset:0;
    z-index:1;
}

.pic-bg-wine-cellar img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.wine-cellar .container{
    position:relative;
    z-index:2;
}

.cellar-panel{
    justify-content:center;
    gap: 70px;
    text-align:center;
}

.cellar-descriptions-block{
    max-width:840px;
}

.block-pic-buttel{
    position:relative;
    z-index:2;
}

.pic-buttel{
    display:flex;
    justify-content:center;
    position: relative;
    margin-bottom: -100px;
}

.pic-buttel img{
    max-width:100%;
    height:540px;
    display:block;
}

/*====================================
  ERRORS
=====================================*/

.errors{
    position:relative;
    overflow:visible;
    background:
        linear-gradient(120deg, transparent 68%, rgba(75,21,28,.12) 100%),
        linear-gradient(180deg, #080707 0%, #0d0e10 48%, #15161a 100%);
    color:#f4efe8;
}

.errors .container{
    position:relative;
    z-index:2;
}

.errors-layout{
    align-items:start;
    gap:clamp(60px,7vw,120px);
}

.errors-intro{
    position:sticky;
    top:120px;
    align-self:start;
}

.errors-intro .title-block{
    position:relative;
    z-index:2;
}

.pic-errors{
    margin-top:38px;
    pointer-events:none;
}


.pic-errors img{
    display:block;
    width:100%;
    max-width:480px;
    opacity:.72;
    filter:brightness(.9) contrast(1.04) saturate(.9);
}

.errors-list{
    border-top:1px solid rgba(226,200,145,.12);
}

.error-note{
    position:relative;
    padding:34px 0;
    border-bottom:1px solid rgba(255,255,255,.07);
}


.error-note::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-1px;
    width:100%;
    height:1px;
    background:linear-gradient(90deg, transparent 0%, rgba(197,163,108,.14) 18%, rgba(197,163,108,.14) 82%, transparent 100%);
    opacity:.7;
}

.error-note:first-child,
.error-note:last-child{
    border-bottom:none !important;
}

.errors-list{
    border-top: none;
}

.error-note:last-child{
    padding-bottom: 0;
}


.error-note:first-child::after,
.error-note:last-child::after{
    display: none !important;;
}

.error-head{
    display: flex;
    gap:22px;
    align-items:start;
    margin-bottom:18px;
}

.error-head span{
    font-size: 12px;
    margin-top: 2px;
    letter-spacing: .24em;
    font-weight: 800;
    color: var(--gold-soft);
    font-variant-numeric: lining-nums;
}

.error-head h3{
    margin:0;
    font-weight:300;
    line-height:1.12;
    color:var(--text);
}

.error-note ul {
    margin: 0;
    padding: 0 0 0 40px;
    list-style: none;
}

.error-note li{
    position:relative;
    padding-left:18px;
    margin-bottom:10px;
    color:rgba(244,239,232,.60);
    line-height:1.62;
}

.error-note li:last-child{
    margin-bottom:0;
}

.error-note li::before{
    content:"";
    position:absolute;
    left:0;
    top:10px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--gold);
    opacity:.72;
}


/*====================================
  COLLECTION
=====================================*/


.collection {
    padding-top: 140px;
}

.collection-panel {
    text-align: center;
    max-width: 750px;
}

.collection-panel::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 120%; 
    height: 150%;
    z-index: -1;
    
    background: 
     
        radial-gradient(circle at 80% 60%, rgba(30, 80, 150, 0.5) 0%, transparent 60%), 
        
   
        radial-gradient(circle at 20% 30%, rgba(212, 175, 55, 0.3) 0%, transparent 50%), 
        
    
        radial-gradient(circle at 50% 50%, #2a0a0a 0%, transparent 70%);

    filter: blur(60px); 
    opacity: 0.3;
}

.collection .container{
    position:relative;
    z-index:3;
}

.block-description-collections{
    display:flex;
    justify-content:center;
}


.collection-pic{
    display:flex;
    justify-content:center;
    margin-top:80px;
}

.collection-pic img{
    display:block;
    width:100%;
    height: 350px;
    max-width:1640px;
    object-fit:cover;
    opacity:.5;
}

/*====================================
  AREAS 
=====================================*/

.areas{
    padding: 160px 0;
}

.areas{
    overflow:hidden;
background: #08090A;
background: linear-gradient(176deg,rgba(8, 9, 10, 1) 0%, rgba(15, 4, 4, 0.63) 49%, rgba(2, 3, 20, 0.4) 80%, rgba(2, 5, 15, 0.51) 100%);
}

.title-container-area{
    position:relative;
}

.title-block{
    position:relative;
    z-index:2;
}

.pic-miami {
    position: absolute;
    top: -27%;
    left: -20%;
    z-index: 1;
    pointer-events: none;
    opacity: .065;
}

.pic-miami img{
    display: block;
    width: 425px;
}

.areas-list{

    z-index:2;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    padding-top:10px;
}

.areas-list a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:12px 14px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.018);
    color:rgba(244,239,232,.72);
    text-align:center;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:800;
    text-decoration:none;
    transition:.25s ease;
    border-radius: 5px;
}

.areas-list a:hover{
    color:var(--text);
    border-color:rgba(226,200,145,.28);
    background:rgba(226,200,145,.055);
}

/*====================================
  DIAGNOSTIC LEDGER / DRIFT SIGNS
=====================================*/

.drift-signs{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(ellipse at 18% 42%, rgba(75,21,28,.12) 0%, transparent 44%),
        radial-gradient(ellipse at 82% 72%, rgba(197,163,108,.045) 0%, transparent 42%),
        linear-gradient(180deg, #101114 0%, #080707 100%);
}

.drift-signs .container{
    position:relative;
    z-index:2;
}

.ledger-header{
    max-width:820px;
    margin-bottom:86px;
}

.ledger-items{
    position:relative;
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:clamp(70px,8vw,140px);
    row-gap:0;
}

.ledger-items::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:50%;
    width:1px;
    background:linear-gradient(
        180deg,
        transparent,
        rgba(197,163,108,.10),
        transparent
    );
}

.ledger-row{
    position:relative;
    display:grid;
    grid-template-columns:54px 1fr;
    column-gap:24px;
    padding:0 0 46px;
    margin-bottom:46px;
}

.ledger-row:nth-child(even){
    transform:translateY(72px);
}

.ledger-row::after{
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    height:1px;
    background:linear-gradient(
        90deg,
        rgba(197,163,108,.12),
        rgba(255,255,255,.035),
        transparent
    );
}

.ledger-row span{
    grid-row:1 / 4;
    padding-top:5px;
    font-size:12px;
    letter-spacing:.22em;
    font-weight:800;
    color:rgba(197,163,108,.82);
}

.ledger-row h3{
    margin:0 0 14px;
    font-weight:300;
    line-height:1.12;
    color:var(--text);
}

.ledger-row p{
    margin:0 0 16px;
    max-width:460px;
    color:rgba(244,239,232,.58);
    line-height:1.72;
}

.ledger-row small{
    display:inline-flex;
    width:max-content;
    max-width:100%;
    color:rgba(197,163,108,.58);
    font-size:11px;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.ledger-row small::before{
    content:"";
    width:42px;
    height:1px;
    margin:8px 12px 0 0;
    background:rgba(197,163,108,.22);
}


/*====================================
  INTERIORS
=====================================*/

.interiors{
    position:relative;
    overflow:hidden;
    background:url('../image/bg-interiors.webp') no-repeat center top / cover;
}

.interiors::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(
        90deg,
        rgba(5,6,10,.82) 0%,
        rgba(5,6,10,.48) 34%,
        rgba(5,6,10,.08) 72%,
        rgba(5,6,10,.34) 100%
        ),
        linear-gradient(
        180deg,
        rgba(5,6,10,.58) 0%,
        transparent 24%,
        rgba(5,6,10,.72) 100%
        );
    z-index:1;
}

.interiors .container{
    position:relative;
    z-index:2;
}


.interiors-layout{
    position: relative;
    max-width: 60%;
    z-index: 2;
}

.interiors-layout::before {
    content: "";
    position: absolute;
    inset: -40px;
    background: rgb(5 6 10 / 75%);
    filter: blur(75px);
    z-index: -1;
}


.interiors-notes{
    display:flex;
    flex-wrap:wrap;
    gap:18px 34px;
    margin-top:50px;
    padding-top:28px;
    border-top:1px solid rgba(197,163,108,.18);
}

.interiors-notes span{
    position:relative;
    padding-left:25px;
    color:rgba(244,239,232,.66);
    letter-spacing:.08em;
    line-height:1.6;
}

.interiors-notes span::before{
    content:"";
    position:absolute;
    left:0;
    top:3px;
    width:7px;
    height:7px;
    border:1px solid rgba(197, 163, 108, .48);
    transform:rotate(45deg);
}

/*====================================
  INSTALL FIELD
=====================================*/

.install-field{
    padding: 140px 0 130px 0;
    position:relative;
    overflow:hidden;
        
}

.install-field::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background: radial-gradient(at 18% 28%, rgba(83, 27, 35, 0.14), #2e212100 42%), radial-gradient(at 88% 72%, rgba(3, 48, 131, 0.08), transparent 45%);

}
.install-field-list{
    margin-top: 60px;
    gap: 60px 40px;
}


.pic-frost {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -100px;
    z-index: 1;
    pointer-events: none;
    margin: 0;
}

.pic-frost img{
    display:block;
    width:100%;
    object-fit:cover;
    opacity: 0.037;;
}

.install-field-item::before{
    content:"";
    display:block;
    width:72px;
    height:1px;
    margin-bottom:24px;
    background:linear-gradient(90deg, rgba(197,163,108,.34), transparent);
}

.install-field-item h3{
    margin:0 0 18px;
    font-weight:300;
    line-height:1.08;
    color:var(--text);
}

/*====================================
  FAQ
=====================================*/

.schedule-block-head{
    position:relative;
    padding:70px;
    background:
        rgba(18,19,22,.72);
    backdrop-filter:blur(18px);
    isolation:isolate;
}


.schedule-block-head::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 0; /* сверху, а не снизу */
    transform: translateX(-50%);
    width: min(760px, 80%);
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(197, 163, 108, .18),
        transparent
    );
    pointer-events: none;
}


.schedule-block-head::before{
    content:"";
    position:absolute;
    inset:0;

    background:
        radial-gradient(
            at 80% 20%,
            rgba(75,21,28,.12),
            transparent 42%
        );

    opacity:.7;
    pointer-events:none;
}



.faq-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(ellipse at 78% 18%, rgba(75,21,28,.13), transparent 42%),
        radial-gradient(ellipse at 16% 88%, rgba(197,163,108,.045), transparent 38%),
        linear-gradient(180deg, #101114 0%, #0b0b0d 58%, #080707 100%);
}


.faq-list{
    border-top:1px solid rgba(255,255,255,.08);
}

.faq-item{
    border-bottom:1px solid rgba(255,255,255,.075);
}

.faq-question{
    position:relative;
    width:100%;
    padding:28px 54px 28px 25px;
    border:0;
    background:none;
    color:var(--text);
    font-family:var(--title-font);
    text-align:left;
    cursor:pointer;
}

.faq-question::after{
    content:"+";
    position:absolute;
    right:0;
    top:28px;
    right: 20px;
    color: var(--gold);
    font-family:var(--text-font);
    font-size: 25px;
    font-weight:200;
}

.faq-item.active .faq-question::after{
    content:"–";
}

.faq-answer{
    max-height:0;
    overflow:hidden;
    transition:max-height .35s ease;
}

.faq-item.active .faq-answer{
    max-height:180px;
}

.faq-answer p{
    padding: 0 30px 20px;
}

.form-defoult{
    max-width: 100% !important;
    padding: 35px 40px;
    margin: 0 !important;
}

.form-defoult .form-container{
    height: 470px !important;
    margin-top: -35px;
}


.general-schedule-container{
    align-items: start;
}

/*====================================
  schedule
=====================================*/

.customer-support p{
    margin-bottom: 40px;
}

.pic-customer-support img{
    display: block;
    object-fit: cover;
    height: 220px;
}

.pic-customer-support{
    margin-bottom: 40px;
}

/*====================================
  INNER PAGE 
=====================================*/

.title-card-page p {
    padding-top: 20px;
    margin-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, .08);
}

.inner-page-section{
    padding: 45px 0 100px 0;
    background: var(--bg-soft);
}

.inner-page-title,
.content h1{
    font-size: 50px;
    letter-spacing: 0.5px;
    font-weight: 400;
}

.inner-page-section .title-block{
    margin-bottom: 40px;
}

.inner-page-section .title-block h1{
    margin-bottom: 15px;
}


