/* Full Clinic / direct sale. Reference observations: DESIGN.md. */
.fc-direct { background:var(--stone-200); --fc-line:#ddd4c5; --fc-soft:#eee8dd; }
.fc-direct h2,.fc-direct h3 { font-family:var(--text); font-weight:500; letter-spacing:-.025em; }
.fc-direct h2 { font-size:clamp(28px,3vw,42px); line-height:1.12; margin:0 0 26px; text-wrap:balance; }
.fc-direct h3 { font-size:20px; line-height:1.25; }
.fc-direct .accent { color:var(--brass-ink); }
.fc-direct .lights-up { opacity:1; transform:none; }
.fc-direct .masthead { position:static; border-bottom:1px solid #d9cfbe; box-shadow:0 4px 12px rgba(43,38,33,.10); }
.fc-direct .masthead__inner { flex-wrap:wrap; }
.fc-direct .masthead__logo img { width:62px; height:62px; transform:scale(1.1); }
.fc-direct .masthead__wordmark { font-size:1.32rem; }
.fc-header-metro { display:grid; grid-template-columns:22px auto; gap:2px 8px; font-size:15px; text-decoration:none; line-height:1.2; }
.fc-header-metro img { width:22px; height:18px; object-fit:contain; }
.fc-header-metro span { grid-column:2; font-size:13px; color:var(--ink-soft); }
.fc-direct .hero { padding-bottom:24px; }
.fc-direct .hero__grid { align-items:center; }
.fc-hero-action { display:grid; justify-items:start; gap:12px; margin-top:28px; }
.fc-hero-action>span { font-size:16px; color:var(--ink-soft); }
.fc-italy-fact { display:inline-block; white-space:nowrap; }
.fc-italy-flag { display:inline-block; width:20px; height:14px; margin-left:3px; vertical-align:-2px; border:1px solid rgba(43,38,33,.2); border-radius:2px; background:linear-gradient(90deg,#009246 0 33.33%,#fff 33.33% 66.66%,#ce2b37 66.66% 100%); }
.fc-section { padding:48px 0; background:var(--stone-200); scroll-margin-top:20px; }
.fc-section .page { min-width:0; }
.fc-section p { margin:0; }
.fc-section p+p { margin-top:10px; }
.fc-section .fc-note { font-size:12px; line-height:1.45; color:var(--ink-soft); margin-top:14px; max-width:70ch; }
.fc-intro { color:var(--ink-soft); font-size:18px; line-height:1.45; margin-top:-10px!important; margin-bottom:24px!important; }
.fc-muted { color:var(--ink-soft); }
.fc-direct .fc-cta { min-height:56px; font-size:16px; font-weight:600; padding:16px 24px; border-radius:12px; white-space:normal; line-height:1.25; text-align:center; }
.fc-offer-section { padding-top:20px; }
.fc-offer-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:28px; align-items:start; }
.fc-offer-bundle { display:grid; gap:20px; min-width:0; align-content:start; }
.fc-price { padding:26px 26px 24px; border:1px solid #c5a467; border-radius:16px; position:relative; }
.fc-offer-tag { display:table; margin:-48px 0 12px; padding:11px 18px; border-radius:10px; background:linear-gradient(180deg,#e78f23,#c56b08); box-shadow:0 5px 13px rgba(126,74,8,.22); color:#fff; text-shadow:0 1px 2px rgba(78,39,0,.8); font-size:16px; font-weight:500; line-height:1.25; }
.fc-price h2 { font-size:34px; margin-bottom:14px; }
.fc-price-row { display:flex; align-items:center; gap:16px; }
.fc-price-row .fc-implants { flex:none; width:140px; height:auto; object-fit:contain; }
.fc-price-row h3 { font-size:21px; margin:4px 0 0; }
.fc-price-row .fc-muted { font-size:13px; }
.fc-price-number { margin-top:0!important; font-size:22px; white-space:nowrap; color:var(--brass-ink); }
.fc-price-number strong { font-size:40px; font-weight:500; letter-spacing:-.04em; }
.fc-included { padding:0; list-style:none; margin:16px 0; display:grid; gap:8px; font-size:16px; }
.fc-included li { position:relative; padding-left:25px; }
.fc-included li:before { content:''; position:absolute; top:5px; left:2px; width:13px; height:7px; border-left:2px solid var(--brass-ink); border-bottom:2px solid var(--brass-ink); transform:rotate(-45deg); }
.fc-installment { display:flex; gap:12px; align-items:center; padding:12px 0; border-top:1px solid var(--fc-line); margin-bottom:10px!important; font-size:16px; }
.fc-installment b { font-size:25px; font-weight:500; }
.fc-price .fc-cta,.fc-gifts .fc-cta { width:100%; }
.fc-gifts { padding:26px 30px 26px; background:var(--fc-soft); border-radius:16px; }
.fc-gifts .fc-offer-tag { margin-top:-48px; }
.fc-gifts h2 { font-size:30px; margin-bottom:18px; }
.fc-gift-row { display:grid; grid-template-columns:58px minmax(0,1fr) auto; align-items:center; gap:14px; padding:10px 12px; margin-bottom:10px; background:var(--stone-200); border-radius:10px; min-height:91px; }
.fc-gift-row img { width:58px; height:70px; object-fit:contain; }
.fc-gift-doctor-frame { width:58px; height:58px; overflow:hidden; border-radius:50%; background:#e9dfd0; }
.fc-gift-doctor-frame img { display:block; width:100px; height:auto; max-width:none; transform:translateX(-28px); }
.fc-gift-row b { display:block; font-size:15px; line-height:1.3; font-weight:500; }
.fc-gift-row span { display:block; margin-top:4px; font-size:12px; color:var(--ink-soft); }
.fc-gift-row>strong { color:var(--brass-ink); font-size:18px; white-space:nowrap; font-weight:500; }
.fc-gifts .fc-cta { margin-top:12px; font-size:17px; }
.fc-no-need { max-width:620px; background:#302d28; color:#fdfbf7; padding:34px; border-radius:16px; }
.fc-no-need h2 { color:inherit; }
.fc-no-need ul { list-style:none; padding:0; margin:0; }
.fc-no-need li { position:relative; padding-left:38px; margin-top:24px; }
.fc-no-need li:before { content:''; border:1.5px solid #d6b77d; border-radius:50%; width:22px; height:22px; position:absolute; left:0; top:1px; }
.fc-no-need li:after { content:''; position:absolute; left:4px; top:12px; width:15px; height:1.5px; background:#d6b77d; transform:rotate(-45deg); }
.fc-no-need b { font-size:20px; font-weight:500; display:block; line-height:1.2; }
.fc-no-need span { font-size:14px; color:#d5cabe; display:block; margin-top:5px; line-height:1.35; }
.fc-animation { margin:24px 0 0; }
.fc-direct .fc-animation .reel__frame { border:3px solid #bd964c; padding:0; border-radius:16px; background:#fff; overflow:hidden; box-sizing:border-box; }
.fc-animation video { width:100%; height:100%; object-fit:contain; background:#fff; display:block; }
.fc-animation .is-playable::before,.fc-animation .is-playable::after { display:none; }
.fc-animation figcaption { text-align:center; font-size:16px; padding:12px 0; }
.fc-method-media { max-width:800px; }
.fc-method-media h2 { margin:0; }
.fc-video { min-width:0; margin:0; }
.fc-video .reel__frame { position:relative; overflow:hidden; border-radius:14px; background:#e8e0d4; aspect-ratio:3/4; }
.fc-video video { width:100%; height:100%; object-fit:cover; object-position:center 22%; display:block; }
.fc-video figcaption { font-size:16px; line-height:1.35; margin-top:12px; }
.fc-sound { position:absolute; right:10px; bottom:10px; display:flex; align-items:center; gap:5px; padding:7px 9px; background:rgba(35,31,27,.82); color:#fffaf2; border-radius:8px; font-size:11px; pointer-events:none; }
.fc-sound svg { width:16px; height:16px; }
.fc-video .is-playable:before,.fc-video .is-playable:after { display:none; }
.fc-circle { width:150px; flex:none; }
.fc-circle .reel__frame { aspect-ratio:1; border-radius:50%; }
.fc-circle .fc-sound { left:50%; right:auto; transform:translateX(-50%); bottom:13px; font-size:10px; }
.fc-case-track { display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-inline:contain; }
.fc-case-track::-webkit-scrollbar { display:none; }
.fc-case { flex:0 0 calc(50% - 10px); scroll-snap-align:start; margin:0; border-radius:14px; overflow:hidden; background:var(--fc-soft); display:flex; align-items:center; }
.fc-case img { width:100%; height:auto; display:block; }
.fc-slider-controls { display:flex; align-items:center; gap:10px; margin-top:16px; }
.fc-slider-controls>span { margin-right:auto; font-size:14px; color:var(--ink-soft); }
.fc-slider-controls button { display:grid; place-items:center; background:transparent; border:1px solid var(--fc-line); border-radius:50%; width:44px; height:44px; cursor:pointer; color:var(--ink); }
.fc-slider-controls button svg { width:20px; height:20px; }
.fc-slider-controls button:first-of-type svg { transform:rotate(180deg); }
.fc-slider-controls button:disabled { opacity:.3; cursor:default; }
.fc-review-layout { display:grid; grid-template-columns:.6fr 1fr; gap:40px; }
.fc-topics { display:flex; flex-direction:column; align-items:stretch; gap:10px; }
.fc-topics button { font-family:inherit; text-align:left; border:1px solid var(--fc-line); background:transparent; border-radius:10px; padding:18px; font-size:18px; color:var(--ink); cursor:pointer; }
.fc-topics button[aria-selected=true] { background:#302d28; color:var(--stone-200); border-color:#302d28; }
.fc-review-panel { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.fc-review-panel[hidden] { display:none; }
.fc-direct .proof { margin-top:52px; gap:24px; }
.fc-direct .proof__headline { display:grid; grid-template-columns:1fr auto; align-items:center; gap:24px 40px; padding:32px; border-radius:16px; background:linear-gradient(135deg,#fff 20%,#f3eadb); box-shadow:0 12px 28px rgba(62,49,29,.09); }
.fc-direct .proof__headline h3 { grid-column:1/-1; margin:0; font-size:36px; font-weight:500; letter-spacing:-.03em; line-height:1.12; }
.fc-direct .proof__headline h3 span { color:var(--ink); }
.fc-direct .proof__score>strong { display:block; color:var(--ink); font-size:88px; font-weight:500; line-height:.95; letter-spacing:-.04em; }
.fc-direct .proof__score .proof__stars { display:flex; gap:4px; margin:14px 0 12px; }
.fc-direct .proof__score .proof__stars svg { width:23px; height:23px; }
.fc-direct .proof__headline p { margin:0; font-size:17px; line-height:1.4; color:var(--ink-soft); }
.fc-direct .proof__award { margin:0; text-align:center; }
.fc-direct .proof__award img { display:block; width:130px; height:auto; margin:0 auto; filter:drop-shadow(0 8px 8px rgba(62,49,29,.12)); }
.fc-direct .proof__award figcaption { margin-top:10px; color:var(--ink-soft); font-size:14px; }
.fc-direct .proof__sites { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:0; padding:0; }
.fc-direct .proof__sites li { display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:24px; min-width:0; min-height:174px; padding:21px; border:1px solid #d9c9ac; border-radius:14px; background:#f7f2e9; box-shadow:0 10px 24px rgba(62,49,29,.055); text-align:left; }
.fc-direct .proof__logo { display:flex; align-items:center; gap:8px; width:100%; max-width:210px; min-height:43px; color:#302d28; }
.fc-direct .proof__logo img { display:block; width:auto; max-width:100%; height:31px; margin:0; object-fit:contain; }
.fc-direct .proof__logo--yell img { width:31px; height:31px; }
.fc-direct .proof__logo--yell span { font-size:19px; font-weight:600; }
.fc-direct .proof__rating strong { display:block; color:var(--brass-ink); font-size:36px; font-weight:600; line-height:1; font-variant-numeric:tabular-nums; }
.fc-direct .proof__rating span { display:block; margin-top:7px; color:var(--ink-soft); font-size:14px; white-space:nowrap; }
.fc-direct .proof__widget { max-height:730px; }
#raboty { padding-bottom:24px; }
#otzyvy { padding-top:24px; padding-bottom:0; }
#vrach { padding-top:16px; }
.fc-doctors { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.fc-doctors .fc-video .reel__frame { aspect-ratio:4/5; }
.fc-doctors figcaption b { display:block; font-weight:500; font-size:20px; line-height:1.2; }
.fc-doctors figcaption span { display:block; color:var(--ink-soft); font-size:14px; margin-top:8px; }
.fc-doctors figcaption strong { display:block; color:var(--brass-ink); font-weight:500; font-size:16px; margin-top:10px; }
.fc-compare { max-width:960px; overflow:hidden; border:1px solid #d9c9ac; border-radius:16px; }
.fc-compare-head,.fc-compare-row { display:grid; grid-template-columns:1fr 1fr; gap:0; }
.fc-compare-head>span,.fc-compare-head>b { padding:22px; background:#f4efe6; font-weight:500; font-size:23px; line-height:1.2; }
.fc-compare-head>b { background:#34312d; color:#fdfbf7; }
.fc-compare-head small { display:block; font-size:13px; font-weight:400; color:var(--ink-soft); margin-top:7px; }
.fc-compare-head>b small { color:#d5cabe; }
.fc-compare-row { position:relative; }
.fc-compare-row h3 { position:absolute; top:16px; left:22px; margin:0; color:var(--brass-ink); font-size:18px; line-height:1.2; font-weight:600; letter-spacing:0; }
.fc-compare-row>span,.fc-compare-row>strong { display:block; min-height:88px; padding:49px 22px 20px; border-top:1px solid #d9c9ac; font-size:17px; line-height:1.35; font-weight:400; background:#f4efe6; }
.fc-compare-row>strong { padding:16px 22px 20px; border-color:#655f57; background:#34312d; color:#fdfbf7; font-weight:500; }
.fc-compare-label { display:block; margin-bottom:11px; color:#fdfbf7; font-size:18px; line-height:1.2; font-weight:600; }
.fc-warranty { display:grid; grid-template-columns:1fr 320px; gap:40px; align-items:center; max-width:960px; }
.fc-certificate { width:280px; height:auto; max-width:100%; object-fit:contain; filter:drop-shadow(0 12px 14px rgba(75,56,33,.12)); justify-self:center; }
.fc-warranty-terms { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.fc-warranty-terms p+p { margin:0; }
.fc-warranty-terms b { display:block; font-size:22px; font-weight:500; color:var(--brass-ink); white-space:nowrap; }
.fc-warranty-terms span { font-size:14px; line-height:1.3; display:block; margin-top:5px; }
.fc-warranty details { font-size:14px; margin-top:25px; color:var(--ink-soft); max-width:60ch; }
.fc-warranty summary { cursor:pointer; text-decoration:underline; text-underline-offset:4px; }
.fc-warranty details p { margin-top:14px; }
.fc-quiz-section .quiz { max-width:800px; padding:30px; box-shadow:none; border:1px solid var(--fc-line); background:transparent; border-radius:16px; }
.fc-quiz-section .quiz__question { font-size:25px; }
.fc-quiz-section .picks { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.fc-quiz-section .pick--card { display:block; padding:0; overflow:hidden; border-radius:12px; background:#fff; }
.fc-quiz-section .pick__art { padding:0; height:auto; aspect-ratio:1; background:#fff; display:flex; align-items:center; justify-content:center; }
.fc-quiz-section .pick__art img { width:100%; height:100%; object-fit:contain; }
.fc-quiz-section .pick__art svg { width:80px; height:80px; color:var(--brass-ink); }
.fc-quiz-section .pick__label { display:block; padding:12px 7px; font-size:14px; font-weight:500; min-height:60px; }
.fc-quiz-section .pick:not(.pick--card) { font-size:16px; }
.fc-quiz-section .quiz__counter { font-size:13px; margin-bottom:15px; }
.fc-quiz-section .quiz__back { margin-top:20px; }
.fc-location { display:grid; grid-template-columns:1fr 300px; gap:45px; align-items:center; max-width:1000px; }
.fc-location .fc-circle { width:280px; }
.fc-location .fc-circle figcaption { text-align:center; font-size:14px; }
.fc-metro { display:flex; align-items:center; gap:8px; font-weight:500; }
.fc-metro img { width:26px; height:20px; }
.fc-location p { font-size:17px; }
.fc-location-phone { display:block; font-size:25px; font-weight:500; margin-top:24px; text-decoration:none; }
.fc-location .fc-cta { margin-top:24px; }
.fc-direct .footer { border-top:1px solid var(--fc-line); background:var(--stone-200); }
.fc-direct .footer__legal { font-size:13px; }
.fc-direct .dock .btn { font-size:14px; }
.fc-direct :focus-visible { outline:2px solid var(--brass-ink); outline-offset:4px; }
.fc-direct ::selection { background:#dfcba4; color:#2b2621; }
@media(min-width:721px) {
 .fc-direct .hero__implant { display:flex; align-items:center; gap:24px; margin-top:25px; }
 .fc-direct .hero__implant-copy { display:grid; gap:12px; }
 .fc-direct .hero__implant-copy p { margin:0; }
 .fc-direct .hero__implant-copy strong { display:block; font-size:22px; font-weight:500; }
 .fc-direct .hero__implant-copy span { font-size:14px; color:var(--ink-soft); display:block; }
 .fc-direct .hero__implant>img { width:210px; height:auto; object-fit:contain; }
}
@media(max-width:1000px) and (min-width:721px) {
 .fc-offer-grid { gap:20px; }
 .fc-price,.fc-gifts { padding:24px; }
 .fc-price-number strong { font-size:30px; }
 .fc-price-row .fc-implants { width:90px; }
 .fc-gift-row { grid-template-columns:42px 1fr auto; gap:8px; }
 .fc-gift-row img { width:42px; }
 .fc-warranty { gap:24px; }
}
@media(max-width:720px) {
 .fc-direct .hero { padding-top:24px; }
 .fc-header-metro { order:3; width:100%; display:flex; justify-content:center; align-items:center; gap:7px; padding-top:7px; font-size:12px; }
 .fc-header-metro img { width:17px; height:14px; }
 .fc-header-metro span { font-size:12px; }
 .fc-direct .masthead__inner { gap:5px 10px; padding-block:8px; }
 .fc-direct .hero__grid { display:contents; }
 .fc-hero-action { display:none; }
 .fc-direct .hero { padding-bottom:18px; }
 .fc-section { padding:30px 0; scroll-margin-top:105px; }
 .fc-direct h2 { font-size:28px; margin-bottom:20px; }
 .fc-intro { font-size:15px; margin-bottom:20px!important; }
 .fc-offer-section { padding-top:24px; }
 .fc-offer-grid { grid-template-columns:1fr; gap:24px; }
 .fc-offer-grid { gap:48px; }
 .fc-price { padding:18px 18px 18px; }
 .fc-offer-tag { margin:-40px 0 10px; padding:10px 16px; font-size:15px; }
 .fc-price h2 { font-size:27px; margin-bottom:12px; }
 .fc-price-row { gap:10px; }
 .fc-price-row .fc-implants { width:clamp(100px,29vw,116px); }
 .fc-price-row h3 { font-size:18px; letter-spacing:-.03em; }
 .fc-price-row .fc-muted { font-size:11px; }
 .fc-price-number { font-size:17px; }
 .fc-price-number strong { font-size:30px; }
 .fc-included { font-size:14px; gap:8px; margin:14px 0 12px; }
 .fc-installment { font-size:14px; }
 .fc-installment b { font-size:23px; }
 .fc-direct .fc-cta { font-size:15px; min-height:54px; padding:15px; }
 .fc-direct .fc-gifts .fc-cta { font-size:17px; }
 .fc-gifts { padding:18px 16px 18px; }
 .fc-gifts .fc-offer-tag { margin-top:-40px; }
 .fc-gifts h2 { font-size:25px; }
 .fc-gift-row { grid-template-columns:48px minmax(0,1fr) auto; gap:9px; padding:10px; min-height:83px; }
 .fc-gift-row img { width:48px; height:62px; }
 .fc-gift-doctor-frame { width:48px; height:48px; }
 .fc-gift-doctor-frame img { width:84px; height:auto; transform:translateX(-23px); }
 .fc-gift-row b { font-size:14px; }
 .fc-gift-row>strong { font-size:28px; font-weight:600; line-height:1.1; }
 .fc-no-need { padding:26px 22px; }
 .fc-no-need b { font-size:18px; }
 .fc-no-need span { font-size:13px; }
 .fc-no-need li { margin-top:22px; padding-left:34px; }

 .fc-circle { width:118px; }
 .fc-case { flex-basis:100%; }
 .fc-case-track { gap:12px; }
 .fc-slider-controls>span { font-size:12px; }
 .fc-review-layout { display:block; }
 .fc-topics { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:18px; }
 .fc-topics button { font-size:13px; min-height:46px; padding:10px; text-align:center; }
 .fc-review-panel { gap:12px; }
 .fc-video figcaption { font-size:13px; }
 .fc-sound { right:7px; bottom:7px; padding:5px 7px; font-size:10px; }
 .fc-direct .proof { margin-top:42px; gap:20px; }
 .fc-direct .proof__headline { grid-template-columns:minmax(0,1fr) 112px; gap:24px 12px; padding:24px 20px; margin:0; }
 .fc-direct .proof__headline h3 { font-size:32px; white-space:nowrap; }
 .fc-direct .proof__score>strong { font-size:76px; }
 .fc-direct .proof__score .proof__stars { gap:3px; margin:12px 0; }
 .fc-direct .proof__score .proof__stars svg { width:20px; height:20px; }
 .fc-direct .proof__headline p { font-size:14px; line-height:1.4; }
 .fc-direct .proof__award img { width:112px; height:auto; }
 .fc-direct .proof__award figcaption { font-size:12px; margin-top:8px; white-space:nowrap; }
 .fc-direct .proof__sites { grid-template-columns:1fr; gap:0; padding:0 4px; }
 .fc-direct .proof__sites li { flex-direction:row; align-items:center; min-height:80px; padding:16px 0; gap:16px; border:0; border-bottom:1px solid var(--fc-line); border-radius:0; background:none; box-shadow:none; }
 .fc-direct .proof__sites li:last-child { border-bottom:0; }
 .fc-direct .proof__logo { width:auto; min-height:32px; max-width:52%; }
 .fc-direct .proof__logo img { height:26px; max-width:100%; }
 .fc-direct .proof__logo--yell img { width:28px; height:28px; }
 .fc-direct .proof__logo--yell span { font-size:19px; }
 .fc-direct .proof__rating { text-align:right; }
 .fc-direct .proof__rating strong { color:var(--ink); font-size:28px; }
 .fc-direct .proof__rating span { font-size:13px; margin-top:4px; }
 .fc-doctors { display:flex; overflow-x:auto; gap:16px; scroll-snap-type:x mandatory; scrollbar-width:thin; padding-bottom:14px; }
 .fc-doctors>.fc-video { flex:0 0 76%; scroll-snap-align:start; }
 .fc-doctors .fc-video .reel__frame { aspect-ratio:4/5; }
 .fc-doctors figcaption b { font-size:18px; }
 .fc-doctors figcaption span { font-size:13px; }
 .fc-doctors figcaption strong { font-size:14px; }
 .fc-compare-head>span,.fc-compare-head>b { padding:15px 12px; font-size:18px; }
 .fc-compare-head small { font-size:11px; }
 .fc-compare-row h3 { top:12px; left:12px; font-size:16px; }
 .fc-compare-row>span,.fc-compare-row>strong { min-height:102px; font-size:14px; padding:43px 12px 14px; }
 .fc-compare-row>strong { padding:12px 12px 14px; }
 .fc-compare-label { margin-bottom:11px; font-size:16px; }
 .fc-direct .proof__widget { max-height:680px; }
 .fc-warranty { grid-template-columns:minmax(0,1fr) 48%; gap:14px; align-items:start; }
 .fc-warranty>div { display:contents; }
 .fc-warranty h2 { grid-column:1/-1; margin-bottom:0; font-size:27px; }
 .fc-warranty-terms { grid-column:1; grid-row:2; grid-template-columns:1fr; gap:12px; }
 .fc-warranty-terms p { display:block; }
 .fc-warranty-terms b { font-size:20px; }
 .fc-warranty-terms span { font-size:15px; line-height:1.3; margin-top:3px; }
 .fc-certificate { grid-column:2; grid-row:2; width:100%; max-width:100%; align-self:center; justify-self:center; }
 .fc-warranty details { grid-column:1/-1; grid-row:3; margin-top:0; font-size:14px; }
 .fc-quiz-section .quiz { padding:18px; }
 .fc-quiz-section .quiz__question { font-size:23px; }
 .fc-quiz-section .picks { grid-template-columns:1fr 1fr; gap:10px; }
 .fc-quiz-section .pick__label { padding:9px 5px; font-size:12px; min-height:48px; }
 .fc-quiz-section .pick__art svg { width:62px; height:62px; }
 .fc-location { grid-template-columns:1fr; gap:24px; }
 .fc-location .fc-circle { width:160px; justify-self:center; }
 .fc-location .fc-circle figcaption { font-size:12px; }
 .fc-location .fc-cta { width:100%; }
 .fc-location-phone { font-size:24px; }
 .fc-direct .footer__grid { gap:24px; }
}
@media(max-width:360px) {
 .fc-price-row .fc-implants { width:72px; }
 .fc-price-number strong { font-size:26px; }
 .fc-price-row h3 { font-size:16px; }
 .fc-gift-row { grid-template-columns:40px minmax(0,1fr) auto; gap:7px; padding:8px; }
 .fc-gift-row img { width:40px; }
 .fc-gift-doctor-frame { width:40px; height:40px; }
 .fc-gift-doctor-frame img { width:70px; transform:translateX(-19px); }
 .fc-gift-row b { font-size:12px; }
 .fc-gift-row>strong { font-size:24px; }
}
/* Reading and video controls stay unobstructed on the direct-sale page. */
.fc-direct .tag-feed { display:none; }
.fc-animation .reel__frame { aspect-ratio:720/400; }
.fc-direct .reel__frame { box-shadow:none; border:0; }
.fc-direct .reel__frame:hover { transform:none; box-shadow:none; }
.fc-direct .accent { background:none; -webkit-text-fill-color:currentColor; }
.fc-direct .hero__implant-copy p:first-child strong { color:var(--brass-ink); }
.fc-price-row .fc-muted { font-size:12px; }
.fc-quiz-section .picks .pick { margin:0; box-shadow:none; text-align:center; }
.fc-quiz-section .pick__art { width:100%; border:0; border-radius:0; }
.fc-quiz-section .pick__art img { padding:0; }
/* 25.09: all topics visible, native swipe, next item remains in view. */
.fc-case-lanes { display:grid; gap:16px; }
.fc-case-track { margin-right:calc(-1 * var(--gutter)); padding-right:var(--gutter); }
.fc-case { flex-basis:44%; }
.fc-swipe-hint { font-size:13px; color:var(--ink-soft); margin-top:14px!important; }
.fc-review-groups { display:grid; grid-template-columns:1fr 1fr; gap:40px 32px; }
.fc-review-group { min-width:0; }
.fc-review-group--timing { margin-bottom:40px; }
.fc-review-group--timing .fc-review-track { justify-content:flex-start; }
.fc-review-group--timing .fc-review-track>.fc-video { flex:0 0 min(calc(25% - 12px),310px); }
.fc-review-note { margin:-8px 0 18px!important; color:var(--ink-soft); font-size:14px; }
.fc-review-group>h3 { font-size:24px; margin:0 0 18px; }
.fc-review-track { display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; scrollbar-width:none; }
.fc-review-track::-webkit-scrollbar { display:none; }
.fc-review-track>.fc-video { flex:0 0 calc(50% - 8px); scroll-snap-align:start; }
.fc-review-track .fc-video figcaption { max-width:21ch; margin-inline:auto; font-size:18px; line-height:1.4; text-align:center; text-wrap:balance; }
.fc-direct .fc-circle .reel__frame { padding:4px; border:3px solid #bd964c; background:var(--brass-face); }
.fc-direct .fc-circle video { border-radius:50%; }
.fc-location .fc-circle { width:320px; }
.fc-lab-grid { display:grid; grid-template-columns:260px minmax(0,470px); gap:42px; align-items:center; }
.fc-lab-grid .fc-circle { width:250px; }
.fc-lab-grid figcaption { text-align:center; font-size:15px; }
.fc-lab-grid figcaption b { display:block; font-weight:500; }
.fc-lab-grid figcaption span { display:block; font-size:13px; color:var(--ink-soft); margin-top:4px; }
.fc-lab-copy p { font-size:18px; line-height:1.45; }
.fc-lab-copy .fc-lab-saving { font-size:27px; line-height:1.15; margin-bottom:14px; }
.fc-lab-saving b { color:var(--brass-ink); font-weight:500; font-size:44px; }
.fc-lab-copy .fc-lab-material { margin-top:24px; }
.fc-lab-material b { font-weight:500; }
.fc-header-metro { font-size:17px; gap:2px 6px; }
.fc-header-metro span { font-size:14px; }
.fc-header-metro img { width:24px; height:20px; }
.fc-direct .masthead__inner { padding-block:10px; }
.fc-full-prices { padding-top:40px; }
.fc-full-prices__track { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; padding-top:20px; }
.fc-full-price { position:relative; min-width:0; min-height:500px; display:flex; flex-direction:column; padding:20px; border:2px solid #b9954a; border-radius:18px; background:#42413d; color:#fff; }
.fc-full-price--featured .fc-offer-tag { position:absolute; z-index:3; top:-19px; left:18px; margin:0; }
.fc-full-price__flag { position:absolute; z-index:1; top:0; right:0; width:120px; height:112px; overflow:hidden; border-top-right-radius:16px; pointer-events:none; }
.fc-full-price__flag img { position:absolute; top:-6px; right:-45px; width:150px; max-width:none; height:auto; filter:drop-shadow(2px 5px 4px #16141080); }
.fc-full-price__name { position:relative; z-index:2; min-height:72px; margin:14px 0 0; padding-top:18px; }
.fc-full-price__eyebrow { position:absolute; top:0; left:0; color:#d9d4cb; font-size:12px; font-weight:400; line-height:1.2; letter-spacing:.01em; }
.fc-full-price__name h3 { margin:0 0 1px; color:#fff; font-size:30px; line-height:1.1; }
.fc-full-price__name span { color:#d9d4cb; font-size:15px; }
.fc-full-price__image { align-self:center; display:block; width:250px; max-width:calc(100% + 18px); height:165px; margin:2px 0 10px; object-fit:contain; filter:drop-shadow(3px 6px 6px #1b17132b); }
.fc-full-price__details { display:grid; gap:4px; margin-top:auto; padding-top:12px; border-top:1px solid #746f65; }
.fc-full-price__details span { font-size:16px; line-height:1.3; }
.fc-full-price__details span:first-child,
.fc-full-price__prosthesis span:first-child { color:#bcb8b1; font-size:13px; font-weight:400; }
.fc-full-price__details strong { color:#e8d19a; font-size:32px; line-height:1.15; font-weight:600; }
.fc-full-price__prosthesis { display:grid; gap:3px; margin-top:14px; padding:12px 0; border-top:1px solid #746f65; border-bottom:1px solid #746f65; font-size:15px; line-height:1.3; }
.fc-full-price__prosthesis b { color:#e8d19a; font-size:20px; font-weight:600; }
.fc-full-price__installment { display:flex; align-items:center; gap:9px; margin:13px 0 0!important; color:#f1ede5; font-size:14px; line-height:1.3; }
.fc-full-price__installment b { flex:none; background:linear-gradient(160deg,#fff3ca 5%,#e9c46e 48%,#b48132 90%); background-clip:text; -webkit-background-clip:text; color:transparent; font-size:25px; line-height:1; font-weight:800; filter:drop-shadow(0 1px 1px #1118); }
.fc-full-price__warranty { display:flex; align-items:center; gap:8px; margin:9px 0 0!important; color:#f1ede5; font-size:14px; line-height:1.3; }
.fc-full-price__warranty img { flex:none; width:24px; height:26px; object-fit:contain; }
.fc-full-price__warranty b { color:#e8d19a; font-weight:600; }
.fc-full-price__button { display:flex; align-items:center; justify-content:center; width:100%; min-height:46px; margin-top:14px; padding:10px; border:0; border-radius:30px; background:linear-gradient(175deg,#fbf0ce,#d9af58 55%,#a8762a); color:#302e29; text-align:center; font-family:inherit; font-size:16px; font-weight:500; cursor:pointer; }
.fc-full-price__button:focus-visible { outline:3px solid #e8d19a; outline-offset:3px; }
@media(max-width:720px) {
 .fc-full-prices { padding-top:28px; }
 .fc-full-prices__track { display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain; scrollbar-width:none; margin-right:calc(-1 * var(--gutter)); padding-right:var(--gutter); }
.fc-full-prices__track::-webkit-scrollbar { display:none; }
 .fc-full-price { flex:0 0 84%; min-height:480px; scroll-snap-align:start; padding:18px; }
 .fc-full-price__flag { width:100px; }
 .fc-full-price__name h3 { font-size:27px; }
 .fc-full-price__image { width:245px; height:155px; }
 .fc-full-price__details strong { font-size:29px; }
 .fc-case-lanes { gap:12px; }
 .fc-case { flex-basis:76%; }
 .fc-review-groups { grid-template-columns:1fr; gap:32px; }
 .fc-review-group--timing { margin-bottom:32px; }
 .fc-review-group--timing .fc-review-track { justify-content:flex-start; }
 .fc-review-group--timing .fc-review-track>.fc-video { flex-basis:66%; }
 .fc-review-group>h3 { font-size:22px; margin-bottom:16px; }
 .fc-review-track { margin-right:calc(-1 * var(--gutter)); padding-right:var(--gutter); gap:14px; }
 .fc-review-track>.fc-video { flex-basis:66%; }
 .fc-review-track .reel__frame { aspect-ratio:1; border-radius:50%; padding:4px; border:3px solid #bd964c; background:var(--brass-face); }
 .fc-review-track video { border-radius:50%; }
 .fc-review-track .fc-sound { left:50%; right:auto; transform:translateX(-50%); bottom:16px; white-space:nowrap; }
 .fc-review-track .fc-video figcaption { font-size:17px; line-height:1.4; }
 .fc-location .fc-circle { width:220px; }
 .fc-lab-grid { grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); gap:18px; align-items:start; }
 .fc-lab-grid .fc-circle { width:100%; }
 .fc-lab-grid figcaption { font-size:13px; }
 .fc-lab-grid figcaption span { font-size:12px; }
 .fc-lab-copy p { font-size:13px; }
 .fc-lab-copy .fc-lab-saving { font-size:17px; }
 .fc-lab-saving b { display:block; font-size:34px; margin-top:4px; }
 .fc-lab-copy .fc-lab-material { margin-top:16px; font-size:13px; }
 .fc-header-metro { font-size:14px; gap:6px; padding-top:0; margin-top:-3px; }
 .fc-header-metro span { font-size:14px; }
 .fc-header-metro img { width:20px; height:17px; }
 .fc-direct .masthead__inner { padding-block:5px; gap:3px 8px; }
 .fc-direct .masthead__logo img { width:43px; height:43px; }
 .fc-direct .masthead__wordmark { font-size:.9rem; }
}
@media(max-width:360px) { .fc-full-price__flag { width:80px; } }

/* Общие визуальные акценты трёх сайтов: Play и смысловые иконки L2, курсив L1. */
@font-face { font-family:'PT Serif'; src:url('assets/fonts/pt-serif-italic.ttf') format('truetype'); font-weight:400; font-style:italic; font-display:swap; }
.fc-full-prices h2 em { font:italic 400 1em/1 'PT Serif',serif; color:var(--brass-ink); }
.fc-direct .fc-sound { width:56px; height:56px; padding:0; border-radius:50%; background:#d6c2a0 url('assets/media/implant-price/play.png') center/40px no-repeat; box-shadow:0 3px 12px #181d1929; color:transparent; font-size:0; }
.fc-direct .fc-sound svg { display:none; }
.fc-direct .fc-video .fc-sound { display:none; }
.fc-no-need li { padding-left:60px; }
.fc-no-need li::before { width:46px; height:46px; top:-4px; border:0; background:url('assets/media/implant-price/tooth.png') center/contain no-repeat; }
.fc-no-need li:nth-child(2)::before { background-image:url('assets/media/implant-price/calendar.png'); }
.fc-no-need li:nth-child(3)::before { background-image:url('assets/media/implant-price/shield.png'); }
.fc-no-need li::after { display:none; }
@media(max-width:650px) {
  .fc-direct .fc-sound { width:50px; height:50px; background-size:36px; }
  .fc-no-need li { padding-left:50px; }
  .fc-no-need li::before { width:40px; height:40px; }
}

#reshenie { padding:0; }
#operaciya { padding:40px 0 48px; }
@media(max-width:720px) {
  #reshenie { padding:0; }
  #operaciya { padding:48px 0 30px; }
}

#operaciya .fc-method-track { display:flex; gap:16px; overflow-x:auto; margin-top:24px; scroll-snap-type:x mandatory; scrollbar-width:none; }
#operaciya .fc-method-track::-webkit-scrollbar { display:none; }
#operaciya .fc-method-track .fc-circle { flex:0 0 min(46%,360px); width:auto; scroll-snap-align:start; }
#operaciya .fc-method-track figcaption { display:block; margin-top:14px; font-size:16px; line-height:1.4; text-align:center; }
#operaciya .fc-animation { margin-top:32px; }
@media(max-width:720px) {
  #operaciya .fc-method-track { margin-right:calc(-1 * var(--gutter)); padding-right:var(--gutter); }
  #operaciya .fc-method-track .fc-circle { flex-basis:min(78%,300px); }
  #operaciya .fc-animation { margin-top:24px; }
}

@media(max-width:360px) { .fc-direct .proof__sites li { padding:12px; } .fc-direct .proof__logo img { max-width:100%; } }

/* Intro to the method, directly after Karen Ovsepyan's hero. */
.fc-two-visits { padding:32px 0 38px; background:var(--fc-soft); border-block:1px solid var(--fc-line); }
.fc-two-visits .page { max-width:900px; }
.fc-two-visits h2 { max-width:660px; margin-bottom:28px; }
.fc-two-visits__media { width:min(calc(100% - 54px),280px); }
.fc-two-visits .fc-two-visits__video { width:100%; margin:0; }
.fc-two-visits .reel__frame { aspect-ratio:4/5; padding:4px; border:3px solid #bd964c; border-radius:16px; background:var(--brass-face); }
.fc-two-visits .fc-video video { border-radius:10px; }
.fc-direct .fc-two-visits .fc-sound { display:flex; }
.fc-two-visits + .fc-offer-section { padding-top:56px; }
@media(max-width:720px) {
 .fc-two-visits { padding:28px 0 34px; }
}

/* 28.09: larger brand, lighter phone, compact footer with accessible legal details. */
.fc-direct .masthead__phone b { font-weight:400; white-space:nowrap; }
.fc-direct .masthead .masthead__logo { transform:none; gap:4px; }
.fc-direct .masthead .masthead__logo img { width:70px; height:70px; transform:none; }
.fc-direct .masthead .masthead__wordmark { font-size:26px; }
.fc-direct .footer { padding-block:28px 32px; }
.fc-direct .footer__grid { gap:24px 48px; align-items:start; }
.fc-direct .footer .masthead__logo { gap:8px; }
.fc-direct .footer .masthead__logo img { width:70px; height:70px; transform:none; }
.fc-direct .footer .masthead__wordmark { font-size:27px; }
.fc-direct .footer .masthead__wordmark span { display:block; font-size:10px; margin-top:7px; }
.fc-direct .footer__addr { margin:12px 0 0; font-size:14px; line-height:1.5; }
.fc-direct .footer__phone { margin-top:12px; font-size:23px; font-weight:400; text-decoration:none; }
.fc-direct .footer__hours { display:block; margin-top:3px; font-size:13px; color:var(--ink-soft); }
.fc-direct .footer__legal p { font-size:13px; line-height:1.5; margin:0 0 12px; }
.fc-direct .footer__legal .footer__warning { color:var(--ink); font-size:14px; line-height:1.5; margin:0 0 16px; }
.fc-direct .footer__details { border-block:1px solid var(--fc-line); padding:0; }
.fc-direct .footer__details summary { cursor:pointer; padding:14px 0; font-size:14px; }
.fc-direct .footer__details[open] summary { margin-bottom:4px; }
.fc-direct .footer__links { display:flex; flex-wrap:wrap; gap:10px 24px; margin-top:16px; font-size:13px; line-height:1.4; }
.fc-direct .footer__links a { color:var(--ink-soft); text-underline-offset:3px; }
@media(max-width:720px) {
 .fc-direct .masthead__inner { gap:4px 6px; padding-block:6px; }
 .fc-direct .masthead .masthead__logo img { width:clamp(48px,14vw,56px); height:clamp(48px,14vw,56px); }
 .fc-direct .masthead .masthead__wordmark { font-size:clamp(18px,5.3vw,21px); }
 .fc-direct .masthead__phone b { font-size:clamp(14px,4vw,16px); letter-spacing:0; }
 .fc-direct .fc-header-metro { margin-top:0; font-size:13px; }
 .fc-direct .fc-header-metro span { font-size:13px; }
 .fc-direct .footer__grid { gap:22px; }
 .fc-direct .footer { padding-block:24px; }
}

/* 28.09: balanced mobile offer; content determines height. */
@media(max-width:720px) {
 .fc-direct .hero h1 { font-size:clamp(27px,7.6vw,30px); line-height:1.15; letter-spacing:-.025em; margin-bottom:24px; }
 .fc-direct .hero h1 .accent { margin-top:0; }
 .fc-direct .hero__implant { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); align-items:center; gap:16px; height:auto; margin:0 0 24px; }
 .fc-direct .hero__implant-copy { display:grid; gap:16px; padding:0; }
 .fc-direct .hero__implant-copy p { margin:0; padding:0 0 10px; border-bottom:1px solid var(--hairline-brass); }
 .fc-direct .hero__implant-copy p:last-child { padding-bottom:0; border-bottom:0; }
 .fc-direct .hero__implant-copy strong { font-size:21px; font-weight:500; line-height:1.1; }
 .fc-direct .hero__implant-copy span { font-size:14px; line-height:1.3; margin-top:2px; }
 .fc-direct .hero__implant>img { width:120%; max-width:none; height:auto; align-self:center; justify-self:center; transform:none; }
}

.fc-two-visits .fc-animation { margin:28px 0 0; }
.fc-two-visits .fc-animation .reel__frame { aspect-ratio:720/400; }

@media(max-width:720px) {
 .fc-direct .hero__implant { grid-template-columns:128px minmax(0,1fr); gap:8px; }
 .fc-direct .hero__implant-copy p { position:relative; border:0; }
 .fc-direct .hero__implant-copy p:not(:last-child)::after { content:""; position:absolute; left:0; bottom:0; width:88px; height:1px; background:var(--hairline-brass); }
 .fc-direct .hero__implant>img { width:145%; justify-self:start; margin-left:-22%; }
}

/* Side separation follows the cutout; the existing lower fade remains. */
.fc-direct .folio__portrait img { filter:drop-shadow(-5px 1px 5px rgba(63,53,42,.16)) drop-shadow(5px 1px 5px rgba(63,53,42,.16)); }

/* 28.09: more legible price actions and larger implant visual. */
.fc-direct .fc-price .fc-cta,.fc-direct .fc-hero-action .fc-cta { font-size:18px; }
.fc-direct .fc-full-price__button { min-height:56px; padding:14px 16px; margin-top:24px; font-size:18px; }
.fc-direct .fc-location .fc-cta { font-size:18px; }
.fc-direct .fc-price-row { gap:4px; }
.fc-direct .fc-price-row .fc-implants { width:150px; }
@media(max-width:720px) { .fc-direct .fc-price-row .fc-implants { width:clamp(90px,32vw,126px); } }

/* Shared corrections: one button silhouette and edge-to-edge media lanes. */
.fc-direct .btn--brass::after { display:none; }
.fc-direct .btn--brass { background:linear-gradient(180deg,#f5e1a4 0%,#dbb858 48%,#bc8c32 100%); box-shadow:0 2px 3px #77551d20,0 7px 16px #77551d24; }
.fc-direct .btn--brass:hover { box-shadow:0 3px 5px #77551d25,0 9px 18px #77551d28; }
.fc-direct .btn--brass:focus-visible,.fc-case__open:focus-visible { outline:3px solid var(--brass-ink); outline-offset:4px; }
.fc-direct .pick__art { background:transparent; }
.fc-direct .pick__art img { filter:brightness(1.055); mix-blend-mode:multiply; }
.fc-direct .pick--card { background:#faf8f3; }
.fc-direct .fc-case-track { display:flex; overflow-x:auto; width:var(--viewport-width,100vw); max-width:none; margin-inline:calc((100% - var(--viewport-width,100vw))/2); padding-inline:max(var(--gutter),calc((var(--viewport-width,100vw) - var(--page))/2 + var(--gutter))); scroll-padding-inline:max(var(--gutter),calc((var(--viewport-width,100vw) - var(--page))/2 + var(--gutter))); gap:28px; }
.fc-direct .fc-case-lanes { gap:28px; }
.fc-case__open { display:block; width:100%; border:0; padding:0; background:transparent; cursor:zoom-in; }
.fc-photo-dialog { width:min(1100px,calc(100% - 32px)); max-width:none; max-height:calc(100dvh - 32px); padding:16px; border:0; border-radius:16px; background:#fcfaf5; color:#2d2a25; }
.fc-photo-dialog::backdrop { background:#17140fe6; }
.fc-photo-dialog__panel { position:relative; padding-top:40px; }
.fc-photo-dialog__image { display:block; width:100%; height:auto; max-height:calc(100dvh - 180px); object-fit:contain; border-radius:8px; }
.fc-photo-dialog button { display:grid; place-items:center; width:44px; height:44px; padding:8px; border:1px solid #d9cfbe; border-radius:50%; background:#fcfaf5; color:#3d3424; cursor:pointer; }
.fc-photo-dialog button:focus-visible { outline:3px solid #9b7129; outline-offset:2px; }
.fc-photo-dialog__close { position:absolute; right:0; top:-8px; font-size:28px; line-height:1; }
.fc-photo-dialog__navigation { display:flex; align-items:center; justify-content:center; gap:24px; padding-top:12px; }
.fc-photo-dialog__navigation svg { width:24px; height:24px; }
html:has(.fc-photo-dialog[open]) { overflow:hidden; }
@media(max-width:720px) {
 .fc-direct .fc-case-track,.fc-direct .fc-review-track,.fc-direct .fc-doctors,.fc-direct #operaciya .fc-method-track,.fc-direct .fc-full-prices__track { width:var(--viewport-width,100vw); max-width:none; margin-inline:calc((100% - var(--viewport-width,100vw))/2); padding-inline:var(--gutter); scroll-padding-inline:var(--gutter); gap:20px; }
 .fc-direct .fc-case { flex-basis:82%; }
 .fc-direct .fc-case-lanes { gap:20px; }
 .fc-photo-dialog { width:calc(100% - 16px); padding:10px; }
}
@media(max-width:720px) {
 .fc-direct .masthead .masthead__logo { margin-left:-12px; }
 .fc-direct .fc-header-metro { justify-content:flex-start; font-size:16px; gap:6px; padding-block:5px 3px; }
 .fc-direct .fc-header-metro img { width:24px; height:21px; }
 .fc-direct .fc-header-metro span { color:var(--brass-ink); font-size:15px; font-weight:700; }
}
@media(max-width:360px) {
 .fc-direct .fc-header-metro { font-size:15px; gap:5px; }
 .fc-direct .fc-header-metro span { font-size:14px; }
}

/* 28.09: reserve space above the cutout for its shadow before the lower mask. */
@media(max-width:720px) {
 .fc-direct .folio__portrait { padding-top:24px; margin-top:-24px; height:calc(100% + 24px); }
}
