/* CT page — homepage design system v2. Scoped to this page. */
.ct-page{--ct-heading:34px;--ct-body:18px;--ct-button-font:17px;--ct-button-height:56px;--ct-gap:clamp(80px,5vw,96px);color:#091d36}
#ct-main{font-family:TildaSans,Arial,sans-serif;font-size:var(--ct-body);line-height:1.45;font-weight:400}
#ct-main *,#ct-main *::before,#ct-main *::after{box-sizing:border-box}
#ct-main h1,#ct-main h2,#ct-main h3,#ct-main p{margin:0;padding:0}
#ct-main h1,#ct-main h2,#ct-main h3{font-weight:600;text-transform:uppercase}
#ct-main h1{font-size:var(--ct-h1,44px);line-height:1.2}
#ct-main h2{font-size:var(--ct-heading);line-height:1.15;letter-spacing:-.025em;color:#090909;margin-bottom:33.6px}
#ct-main h3{font-size:20px;line-height:1.25}
#ct-main p+p{margin-top:20px}
#ct-main a{color:inherit}
.ct-container{width:90%;margin-inline:auto}
.ct-section{margin-top:var(--ct-gap)}
.ct-section:last-child{margin-bottom:var(--ct-gap)}
.ct-hero{position:relative;isolation:isolate;display:grid;place-items:center;min-height:480px;height:var(--ct-hero-height,calc(100svh - 152px));color:white;background:#091d36;text-align:center}
.ct-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.ct-hero::before{content:"";position:absolute;inset:0;background:#0006;z-index:-1}
.ct-hero-content{display:flex;flex-direction:column;align-items:center;gap:clamp(20px,4vh,36px);padding-block:32px}
#ct-main .ct-hero h1{max-width:900px}
#ct-main .ct-hero p{max-width:700px;font-size:var(--ct-body);line-height:1.45}
.ct-hero-logo{width:clamp(64px,10vh,104px);height:auto;object-fit:contain}
#ct-main .ct-button,#ct-main .form-button{display:flex;align-items:center;justify-content:center;width:min(100%,var(--ct-button-width,440px));height:var(--ct-button-height);min-height:var(--ct-button-height);padding:12px 24px;background:#6889bd;border:0;border-radius:5px;color:#fff;font:600 var(--ct-button-font)/1.2 TildaSans,Arial,sans-serif;text-align:center;text-transform:uppercase;text-decoration:none;cursor:pointer}
#ct-main .ct-button:hover,#ct-main .form-button:hover{background:#5376ab}
#ct-main a:focus-visible,#ct-main button:focus-visible,#ct-main input:focus-visible{outline:3px solid #091d36;outline-offset:4px}
.ct-breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;padding-top:24px;font-size:14px}
.ct-split{display:grid;grid-template-columns:40% minmax(0,1fr);border-radius:30px;overflow:hidden;background:#f1f1ef}
.ct-split-photo{display:block;width:100%;height:100%;min-height:400px;object-fit:cover}
.ct-copy{padding:clamp(32px,3vw,60px);min-width:0;align-self:center}
#ct-main .ct-copy h2{margin-bottom:24px}
#ct-main .ct-copy h3{margin-bottom:20px}
.ct-note{background:#e0e7f2;border-radius:20px;padding:24px 32px;margin-top:24px}
.ct-prices{width:100%;border-collapse:collapse;font-size:var(--ct-body);line-height:1.4;text-align:left}
.ct-prices th,.ct-prices td{padding:20px 24px;border-bottom:1px solid #e0e7f2}
.ct-prices thead{background:#f1f1ef}
.ct-prices thead th{font-weight:600}
.ct-prices tbody th{font-weight:400}
.ct-prices td:last-child,.ct-prices th:last-child{text-align:right;white-space:nowrap}
.ct-prices td{font-weight:600;color:#5376ab}
.ct-doctors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.ct-doctor{display:grid;grid-template-columns:40% minmax(0,1fr);background:#f1f1ef;border-radius:24px;overflow:hidden}
.ct-doctor-photo{width:100%;height:100%;min-height:400px;object-fit:cover;object-position:center top}
.ct-doctor .ct-copy{padding:24px}
#ct-main .ct-doctor p{font-size:14px;line-height:1.4}
.ct-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.ct-method{padding:24px;border-radius:24px;background:#f1f1ef}
.ct-method img{width:36px;height:36px;margin-bottom:24px}
#ct-main .ct-method h3{margin-bottom:16px}
.ct-equipment .ct-split-photo{object-fit:contain;background:#fff}
.ct-reason{position:relative;padding:24px;border-radius:20px;background:#6889bd;color:white}
.ct-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:white;border-radius:50%;margin-bottom:20px}
.ct-icon img{width:36px;height:36px;object-fit:contain}
#ct-main .ct-reason h3{font-size:16px;margin-bottom:16px}
#ct-main .ct-reason p{font-size:15px;line-height:1.4}
.ct-faq-item{border-bottom:1px solid #e0e7f2}
#ct-main .ct-faq h3{text-transform:none;font-weight:400}
#ct-main .accordion-trigger{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:64px;padding:20px 0;border:0;background:transparent;text-align:left;color:#091d36;font:400 var(--ct-body)/1.35 TildaSans,Arial,sans-serif;cursor:pointer}
.ct-faq .accordion-trigger span{font-size:30px;line-height:1;transition:transform .15s}
.ct-faq .accordion-trigger[aria-expanded=true] span{transform:rotate(45deg)}
#ct-main .accordion-panel{padding:0 48px 24px 0}
.ct-links{display:flex;flex-wrap:wrap;gap:10px}
#ct-main .ct-links a{max-width:100%;padding:10px 18px;border:1px solid transparent;border-radius:5px;background:#f1f1ef;font-size:14px;font-weight:600;line-height:1.35;text-transform:uppercase;text-decoration:none}
#ct-main .ct-links a:hover{background:#e0e7f2}
#ct-main .appointment-form{display:grid;gap:16px;margin-top:28px;--form-input-height:48px;--form-input-font:16px;--form-input-radius:5px}
#ct-main .form-control{width:100%;height:48px;min-height:48px;padding:0 20px;border:1px solid #d7dce3;border-radius:5px;background:#fff;color:#091d36;font:400 16px/1.4 TildaSans,Arial,sans-serif;box-sizing:border-box}
#ct-main .form-field{margin:0}
#ct-main .form-consent{font-size:14px;line-height:1.4;gap:10px}
#ct-main .form-consent input{flex:0 0 20px;width:20px;height:20px}
@media(min-width:1200px){.ct-hero{min-height:0}.ct-hero-content{max-height:100%;gap:clamp(16px,3vh,32px);padding-block:24px}}
@media(max-width:1199px){
 .ct-page{--ct-heading:28px;--ct-h1:32px;--ct-body:16px;--ct-button-font:16px;--ct-button-height:52px;--ct-gap:64px}
 .ct-container{width:calc(100% - 40px)}
 .ct-hero{height:auto;min-height:580px}
 #ct-main h2{line-height:1.2;letter-spacing:normal;margin-bottom:28px}
 .ct-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .ct-doctors{gap:20px}
 .ct-doctor{display:block}.ct-doctor-photo{height:360px;min-height:0}
 .ct-split{grid-template-columns:42% minmax(0,1fr)}.ct-copy{padding:28px}
 #ct-main .form-control{height:52px;min-height:52px}
 #ct-main .accordion-trigger{min-height:56px}
 #ct-main .ct-links a{padding:8px 16px;line-height:1.4}
}
@media(max-width:639px){
 .ct-page{--ct-heading:24px;--ct-h1:26px;--ct-body:16px;--ct-button-font:15px;--ct-gap:56px}
 #ct-main{line-height:1.4}.ct-container{width:93.75%}
 .ct-hero{min-height:540px}.ct-hero-content{width:90%;gap:24px;padding-block:40px}
 .ct-hero-logo{width:80px}.ct-hero-photo{object-position:60% center}
 #ct-main h3{font-size:18px}#ct-main h2{margin-bottom:24px}
 .ct-breadcrumbs{font-size:14px;gap:8px;padding-top:20px}
 .ct-split{display:flex;flex-direction:column;border-radius:24px}
 .ct-split-photo{height:240px;min-height:0;aspect-ratio:15/7;object-fit:cover}
 .ct-copy{padding:24px 20px;width:100%}.ct-note{padding:24px 20px}
 .ct-prices th,.ct-prices td{padding:16px 12px}.ct-prices th:last-child{font-size:14px}
 .ct-doctors,.ct-grid{grid-template-columns:1fr;gap:20px}
 .ct-doctor{border-radius:24px}.ct-doctor-photo{height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center top}
 .ct-doctor .ct-copy{padding:24px 20px}.ct-method{padding:24px}
 .ct-reasons{width:95%}.ct-reason{padding:24px;border-radius:28px;background:#5d86c0}
 .ct-icon{float:right;margin:0 0 16px 16px}
 #ct-main .ct-reason h3{font-size:18px;min-height:56px;margin-bottom:20px}
 #ct-main .ct-reason p{clear:both;font-size:16px;line-height:1.4}
 #ct-main .ct-button,#ct-main .form-button{width:100%}
 #ct-main .accordion-panel{padding-right:0}
 .ct-page #a-2656a1de197b .a-5687de1f2e05{font-size:14px!important;line-height:1.65!important}
 .ct-page #a-2656a1de197b .a-5687de1f2e05 a{font-size:inherit!important;line-height:inherit!important;display:inline-block;padding:3px 0}
}
.ct-page [data-dialog] input:not([type=checkbox]):not([type=hidden]){box-sizing:border-box;min-height:48px;font-size:16px!important;line-height:1.4!important}
.ct-page [data-dialog] .dialog-content{left:0!important;right:auto!important;bottom:auto!important}
.ct-page [data-dialog] input[type=checkbox]{width:20px;height:20px;flex:0 0 20px}
.ct-page [data-dialog] button[type=submit]{height:var(--ct-button-height)!important;font-size:var(--ct-button-font)!important;line-height:1.2!important;font-weight:600!important;background:#6889bd!important;border-radius:5px!important}
.ct-page [data-dialog] button[type=submit] span{font:inherit!important}
.ct-page [data-dialog] label{font-size:14px!important;line-height:1.4!important}
.ct-page [data-dialog] .a-da37c23b9c0d{font-size:var(--ct-heading)!important;line-height:1.2!important;font-weight:600!important}
.ct-page [data-dialog] .a-e97286ea9ffb{font-size:16px!important;line-height:1.4!important}
@media(max-width:1199px){.ct-page [data-dialog] input:not([type=checkbox]):not([type=hidden]){min-height:52px}}
@media(max-width:359px){.ct-page{--ct-h1:24px}.ct-hero-content{width:93.75%}.ct-prices th,.ct-prices td{padding-inline:8px}}
@media(prefers-reduced-motion:reduce){.ct-faq .accordion-trigger span{transition:none}}
.ct-copy>p,.ct-note>p,.ct-faq .accordion-panel p{max-width:68ch}
.ct-copy>h2{max-width:28ch}
.ct-price-name{display:block;max-width:68ch}
.ct-intro .ct-note{max-width:calc(68ch + 64px)}
@media(min-width:1200px){
 .ct-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;align-items:start}
}

/* Hero follows the approved homepage composition, not the legacy centered cover. */
.ct-hero{display:block;text-align:left;background:#f2eef2;color:#000}
.ct-hero::before{background:linear-gradient(90deg,#f2eef2 0%,#f2eef2 36%,#f2eef2ed 44%,#f2eef200 68%)}
.ct-hero-content{display:flex;align-items:flex-start;gap:0;padding-top:var(--ct-hero-top,110px);padding-bottom:48px;max-height:none}
#ct-main .ct-hero h1{width:min(100%,var(--ct-hero-title-width,660px));max-width:none;color:#000}
#ct-main .ct-hero h1 span{color:#5d86c0}
#ct-main .ct-hero p{width:min(100%,var(--ct-hero-copy-width,520px));max-width:none;margin-top:20px;font-size:var(--ct-hero-body,20px);font-weight:300;line-height:1.3}
#ct-main .ct-hero .ct-button{width:min(100%,var(--ct-hero-button-width,534px));height:var(--ct-hero-button-height,59px);min-height:var(--ct-hero-button-height,59px);font-size:var(--ct-hero-button-font,18px);margin-top:44px;gap:12px}
.ct-cta-icon{width:var(--ct-hero-icon,30px);height:var(--ct-hero-icon,30px);flex:0 0 auto}
.ct-hero-logo{position:absolute;right:5%;bottom:32px;width:80px;height:auto}
@media(min-width:640px) and (max-width:1199px){
 .ct-hero-content{padding-top:80px;width:90%}
 #ct-main .ct-hero h1{width:60%}
 #ct-main .ct-hero p{width:55%;font-size:16px;line-height:1.4}
 #ct-main .ct-hero .ct-button{width:55%;height:52px;min-height:52px;font-size:16px}
 .ct-hero::before{background:linear-gradient(90deg,#f2eef2 0%,#f2eef2 38%,#f2eef2dd 52%,#f2eef200 85%)}
}
@media(max-width:639px){
 .ct-hero{height:auto;min-height:0;display:flex;flex-direction:column;isolation:isolate}
 .ct-hero-content{order:0;width:93.75%;padding:40px 12px 32px;position:relative}
 #ct-main .ct-hero h1,#ct-main .ct-hero p{width:100%}
 #ct-main .ct-hero p{font-size:16px;line-height:1.4;margin-top:24px}
 #ct-main .ct-hero .ct-button{width:calc(100% + 24px);max-width:none;height:52px;min-height:52px;font-size:15px;margin:28px -12px 0}
 .ct-cta-icon{width:30px;height:30px}
 .ct-hero-photo{position:relative;inset:auto;order:1;z-index:0;width:100%;height:280px;object-fit:cover;object-position:65% center}
 .ct-hero::before{inset:auto 0 200px;height:80px;background:linear-gradient(#f2eef2,#f2eef200);z-index:1;pointer-events:none}
 .ct-hero-logo{z-index:2;bottom:20px;right:20px;width:64px}
}
