/* Главная, «Возможности и цены», «Заказ и контакты» */

/* hero */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:120px 20px 90px}
.hero-bg{position:absolute;inset:0;z-index:0;animation:acKen 22s ease-in-out infinite alternate}
.hero-bg img{width:100%;height:100%;object-fit:cover;display:block}
.hero::before,.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}
.hero::before{background:linear-gradient(180deg,rgba(11,9,16,.62),rgba(11,9,16,.5) 40%,rgba(11,9,16,.92))}
.hero::after{background:radial-gradient(60% 60% at 50% 42%,transparent,rgba(11,9,16,.55))}
.hero-moon{position:absolute;z-index:2;top:16%;right:14%;width:clamp(120px,16vw,230px);opacity:.5;animation:acMoon 9s ease-in-out infinite;pointer-events:none}
.hero-content{position:relative;z-index:3;max-width:900px}
.hero .eyebrow{margin:0 0 26px}
.hero h1{margin:0}
.hero-title{display:block;font:500 clamp(48px,10vw,128px)/.98 'Cinzel',Georgia,serif;letter-spacing:2px;text-transform:uppercase;background:linear-gradient(100deg,#8f8aa0,#efeaf6 18%,#c7b489 38%,#efeaf6 52%,#9a93ac 72%,#efeaf6 90%);background-size:220% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:acShimmer 12s ease-in-out infinite}
.hero-lead{max-width:620px;margin:26px auto 40px;font:italic clamp(18px,2.4vw,25px)/1.5 var(--serif);color:var(--text)}
.scroll-cue{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--dim)}
.scroll-cue i{width:1px;height:40px;background:linear-gradient(#c7b489,transparent);position:relative;overflow:hidden}
.scroll-cue i::after{content:"";position:absolute;top:0;left:0;width:100%;height:12px;background:var(--cream);animation:acScrollcue 2.4s ease-in-out infinite}

/* коротко о мастерской */
.facts-section{padding-bottom:0}
.facts-lead{max-width:860px;margin:0 auto;text-align:center;font:italic clamp(20px,2.4vw,27px)/1.55 var(--serif);color:#ddd3ea}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;max-width:900px;margin:44px auto 0;text-align:center}
.facts dt,.stats dt{font:400 clamp(26px,3vw,34px) 'Cinzel',var(--serif);color:var(--gold)}
.facts dd,.stats dd{margin:4px 0 0;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--dim)}

/* философия */
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:clamp(28px,5vw,70px);align-items:center;padding-top:0}
.split-media{margin:0;border-radius:20px;overflow:hidden;aspect-ratio:3/4;box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.split-media img{width:100%;height:100%;object-fit:cover;display:block}
.split-title{margin:16px 0 20px;font-size:clamp(30px,4.4vw,50px)}
.split p{font-size:16px;line-height:1.8;color:var(--muted)}
.split .note{font-size:15px;color:#bfb3ca}
.stats{display:flex;gap:38px;flex-wrap:wrap;margin:30px 0 0}
.stats div{margin:0}

/* знаковые модели */
.section--wide{padding-top:0}
.model{position:relative;display:block;border-radius:18px;overflow:hidden;aspect-ratio:3/4;color:inherit;transition:transform .5s}
.model img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s}
.model::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(11,9,16,.92))}
.model:hover{transform:translateY(-8px)}
.model:hover img{transform:scale(1.07)}
.model-body{position:absolute;left:22px;right:22px;bottom:22px;z-index:1;display:block}
.model-name{display:block;font:26px var(--serif);color:var(--ink)}
.model-meta{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:6px;font-size:13px;letter-spacing:.5px;color:#c3b8d2;white-space:nowrap}
.model-meta>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}
.model-price{color:var(--gold);white-space:nowrap}

/* другие изделия */
.product{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:rgba(56,50,64,.35);transition:transform .35s,border-color .35s,box-shadow .35s}
.product:hover,.product:focus-within{transform:translateY(-5px);border-color:rgba(199,180,137,.42);box-shadow:0 18px 35px rgba(0,0,0,.18)}
.product img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.product>div{flex:1;display:flex;flex-direction:column;padding:22px;background:var(--panel)}
.product h3{margin:0 0 8px;font:25px/1.2 var(--serif);min-height:2.4em}
.product p{margin:0 0 16px;font-size:14px;line-height:1.55;color:var(--text)}
.product a{margin-top:auto;color:var(--gold);font-size:13px}
@media(max-width:600px){.product h3{min-height:0}}
.center-link{text-align:center;margin:36px 0 0}

/* видео */
.videos video{width:100%;height:480px;object-fit:contain;background:#17121b;border-radius:18px;display:block}
@media(max-width:600px){.videos video{height:auto;aspect-ratio:9/16;max-height:72vh}}

/* мозаика питомцев */
.mosaic{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));grid-auto-rows:230px;gap:16px}
.mosaic img{width:100%;height:100%;object-fit:cover;border-radius:16px;display:block}
.mosaic .tall{grid-row:span 2}
.mosaic img:first-child{object-position:100% center}

/* отзывы */
.reviews{position:relative;margin:56px auto 0;max-width:820px;text-align:center}
.reviews svg{opacity:1;margin-bottom:12px}
.reviews-track{min-height:180px}
.reviews figure{margin:0}
.reviews blockquote{margin:0 0 18px;font:italic clamp(20px,2.6vw,28px)/1.5 var(--serif);color:var(--ink)}
.reviews figcaption{font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--gold)}
.reviews-controls{display:flex;gap:4px;justify-content:center;align-items:center;margin-top:22px}
.reviews-controls [data-dot]{position:relative;width:36px;height:36px;min-height:36px;border:0;background:transparent;padding:0}
.reviews-controls [data-dot]::after{content:"";position:absolute;inset:13px;border-radius:50%;background:#8f82a2}
.reviews-controls [data-dot][aria-current=true]::after{background:#e8d8b3;box-shadow:0 0 0 3px rgba(199,180,137,.15)}
.reviews-pause{margin-left:10px;width:36px;height:36px;min-height:36px;border:1px solid var(--line-2);border-radius:50%;background:transparent;color:var(--text);font-size:11px}

/* CTA-панели */
.cta-panel{position:relative;overflow:hidden;max-width:1132px;margin:0 auto clamp(60px,8vw,100px);padding:clamp(40px,6vw,80px) clamp(24px,5vw,60px);border:1px solid rgba(199,180,137,.2);border-radius:24px;background:radial-gradient(100% 140% at 80% 0%,rgba(91,70,111,.5),rgba(24,19,32,.8));text-align:center}
.cta-panel .h2{margin:14px auto 0;max-width:680px}
.cta-panel .lead{margin-bottom:28px}
.cta-panel--moon{background:radial-gradient(120% 140% at 50% 0%,rgba(59,48,84,.7),rgba(20,15,28,.6))}
.cta-panel--moon svg{position:absolute;top:-30px;right:-20px;width:220px;opacity:.14}
@media(max-width:1180px){.cta-panel{margin-left:16px;margin-right:16px}}

/* цены */
.card-num{display:block;margin-bottom:14px;font:15px 'Cinzel',serif;letter-spacing:2px;color:var(--gold)}
.size-card{padding:30px;border:1px solid rgba(199,180,137,.22);border-radius:20px;background:linear-gradient(158deg,rgba(154,138,162,.19),rgba(35,27,42,.72))}
.size-code{margin:0;font:400 28px 'Cinzel',serif;color:var(--cream)}
.size-label{margin:10px 0 22px;font:24px var(--serif);color:var(--ink)}
.size-prices{margin:0;border-top:1px solid rgba(199,180,137,.18);padding-top:16px}
.size-prices div+div{margin-top:16px}
.size-prices dt{font-size:12px;color:#c3b8d0}
.size-prices dd{margin:4px 0 0;font:32px var(--serif);color:#eee5ee}
.size-prices dd.premium{font-size:27px;color:#d8c9a4}
.size-links{display:flex;gap:18px;margin-top:22px;font-size:13px;letter-spacing:1px}
.size-links a{color:var(--cream)}
.price-note{text-align:center;color:#b8acc2;font-size:13px;line-height:1.7;margin:28px auto 0;max-width:650px}
.addons{border:1px solid rgba(199,180,137,.12);border-radius:20px;background:var(--card);overflow:hidden}
.addons h2{margin:0;padding:22px 30px;border-bottom:1px solid rgba(199,180,137,.1);font:24px var(--serif)}
.addons dl{margin:0}
.addon{display:flex;justify-content:space-between;gap:16px;padding:18px 30px;border-bottom:1px solid rgba(199,180,137,.07)}
.addon:last-child{border-bottom:0}
.addon dt{color:var(--text)}
.addon dd{margin:0;color:var(--gold);white-space:nowrap}
.palette{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:26px;justify-content:center}
.palette li{width:96px;text-align:center;font-size:12px;letter-spacing:1px;color:var(--muted)}
.palette i{display:block;width:74px;height:74px;margin:0 auto 10px;border-radius:50%;border:1px solid rgba(199,180,137,.2);box-shadow:0 8px 24px -8px rgba(0,0,0,.6)}
.faq-list{display:flex;flex-direction:column;gap:12px}
.faq{border:1px solid rgba(199,180,137,.12);border-radius:14px;background:var(--card)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;cursor:pointer;list-style:none;font:20px/1.3 var(--serif);color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;color:var(--gold);font-size:22px;transition:transform .3s}
.faq[open] summary::after{transform:rotate(45deg)}
.faq-a p{margin:0;padding:0 24px 22px;font-size:15px;line-height:1.7;color:var(--muted)}

/* заказ */
.order-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,4vw,50px);align-items:start}
@media(max-width:900px){.order-layout{grid-template-columns:1fr}}
.order-side{display:flex;flex-direction:column;gap:22px}
.panel{position:relative;padding:clamp(24px,3vw,40px);border:1px solid rgba(199,180,137,.16);border-radius:22px;background:linear-gradient(158deg,rgba(154,138,162,.24),rgba(70,62,78,.52)),radial-gradient(150% 130% at 100% 0%,rgba(212,197,174,.14),transparent 58%)}
.panel-title{margin:0 0 22px;font:26px var(--serif)}
.form-hint{margin:0;font-size:13px;color:#b8acc6}
.form-hint a{color:var(--cream)}
.contact-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.contact-list a{display:flex;align-items:center;gap:14px;font-size:16px}
.contact-icon{width:38px;height:38px;flex:none;border-radius:50%;border:1px solid var(--line-2);display:flex;align-items:center;justify-content:center;color:var(--gold)}
.contact-label{display:block;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--dim)}
.contacts-empty{margin:0;font-size:15px;line-height:1.7;color:#d1c6de}
.info-list{list-style:none;margin:24px 0 0;padding:20px 0 0;border-top:1px solid rgba(199,180,137,.1);display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--muted)}
.steps{list-style:none;margin:0 0 20px;padding:0;counter-reset:s;display:flex;flex-direction:column;gap:18px}
.steps li{display:grid;grid-template-columns:34px 1fr;column-gap:12px}
.steps li::before{counter-increment:s;content:"0" counter(s);grid-row:span 2;font:18px 'Cinzel',serif;color:var(--gold)}
.steps strong{font-weight:400;color:var(--ink);font-size:16px}
.steps span{font-size:13px;color:var(--dim)}
