/*
Theme Name: Ideal Therapy II — Astra Child
Theme URI: https://idealtherapyii.example/
Description: Custom responsive Astra child theme for Ideal Therapy II. Requires the free Astra parent theme.
Author: Ideal Therapy II Website Project
Template: astra
Version: 1.2.0
Text Domain: ideal-therapy-ii
*/
:root{--it-ink:#173b42;--it-teal:#166f70;--it-mint:#e8f3ee;--it-sage:#acccb9;--it-cream:#fbf8f2;--it-grey:#587079;--it-line:#d8e4df;--it-radius:20px}
body{font-family:Arial,Helvetica,sans-serif;color:var(--it-ink);background:#fff}
.ast-container{max-width:1200px}
.it-shell{color:var(--it-ink);font-size:16px;line-height:1.7}.it-shell *{box-sizing:border-box}.it-shell h1,.it-shell h2,.it-shell h3{font-family:Georgia,'Times New Roman',serif;color:var(--it-ink);line-height:1.15;letter-spacing:-.025em}.it-shell h1{font-size:clamp(2.7rem,5vw,5rem)}.it-shell h2{font-size:clamp(2rem,3.5vw,3.2rem);margin:0 0 18px}.it-shell h3{font-size:1.5rem;margin:0 0 12px}.it-shell p{margin:0 0 18px}.it-shell a{text-decoration:none}.it-wrap{width:min(1160px,calc(100% - 44px));margin:0 auto}.it-label{font-weight:800;font-size:.76rem;text-transform:uppercase;letter-spacing:.18em;color:var(--it-teal);display:block;margin-bottom:15px}.it-lead{font-size:1.15rem;color:#52696a;max-width:650px}.it-btn{display:inline-flex;justify-content:center;align-items:center;min-height:50px;background:var(--it-teal);padding:12px 24px;border-radius:8px;color:#fff!important;font-weight:700;text-decoration:none!important;border:2px solid var(--it-teal);transition:background .2s}.it-btn:hover{background:#105455;border-color:#105455}.it-btn--outline{background:transparent;color:var(--it-teal)!important}.it-btn--outline:hover{background:var(--it-mint)}.it-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.it-section{padding:82px 0}.it-section--cream{background:var(--it-cream)}.it-section--mint{background:var(--it-mint)}.it-section-heading{max-width:750px;margin-bottom:35px}.it-section-heading p{color:var(--it-grey)}.it-hero{background:linear-gradient(118deg,#f0f5ed 0%,#fbf8f2 61%,#e3eee9 100%);overflow:hidden}.it-hero-grid{min-height:620px;display:grid;grid-template-columns:1.13fr .87fr;align-items:center;gap:5%;padding-top:60px;padding-bottom:60px}.it-hero h1{margin:0 0 20px}.it-hero-copy{max-width:660px}.it-hero-art{border-radius:180px 180px 22px 22px;min-height:480px;background:radial-gradient(circle at 73% 18%,#d3e2d4 0 15%,transparent 15.2%),linear-gradient(135deg,#d9e8df,#95baa9);position:relative;box-shadow:20px 24px 0 rgba(22,111,112,.08);overflow:hidden}.it-hero-art:before{content:'';position:absolute;width:230px;height:230px;border:40px solid rgba(255,255,255,.53);border-radius:50%;top:20%;left:23%}.it-hero-art:after{content:'CARE  •  WELLNESS  •  GROWTH';position:absolute;bottom:50px;left:0;width:100%;text-align:center;color:#173b42;font-weight:800;font-size:.85rem;letter-spacing:.18em}.it-leaf{position:absolute;right:12%;bottom:15%;font-size:10rem;color:#eef8ef;transform:rotate(-25deg);opacity:.7}.it-proof{display:flex;gap:30px;flex-wrap:wrap;margin-top:35px;padding-top:24px;border-top:1px solid #bfd4ca;color:#526b65;font-size:.9rem}.it-proof span::before{content:'✓ ';color:var(--it-teal);font-weight:900}.it-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.it-card{background:#fff;border:1px solid var(--it-line);border-radius:var(--it-radius);padding:30px;box-shadow:0 12px 34px rgba(20,60,60,.035)}.it-card .it-number{color:var(--it-teal);font-weight:800;font-size:.82rem;letter-spacing:.1em;margin-bottom:40px}.it-card p{color:var(--it-grey)}.it-card a.it-text-link{font-weight:800;color:var(--it-teal)}.it-card a.it-text-link:after{content:' →'}.it-cards .it-card:nth-child(2),.it-cards .it-card:nth-child(5){background:#f4faf6}.it-split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.it-portrait{min-height:370px;border-radius:var(--it-radius);background:linear-gradient(145deg,#bddecf,#7aa9a4);display:flex;align-items:center;justify-content:center;padding:30px;color:#214a4b;text-align:center;font-family:Georgia,serif;font-size:2rem}.it-price-table{border-collapse:collapse;width:100%;max-width:850px;background:#fff;border:1px solid var(--it-line);border-radius:12px;overflow:hidden}.it-price-table th,.it-price-table td{text-align:left;padding:15px 20px;border-bottom:1px solid var(--it-line)}.it-price-table th{background:#edf5f0;color:#23474a}.it-price-table tr:last-child td{border-bottom:0}.it-price-table td:last-child,.it-price-table th:last-child{text-align:right;font-weight:700}.it-banner{border-radius:var(--it-radius);padding:55px;background:var(--it-ink);color:#fff;display:flex;justify-content:space-between;gap:30px;align-items:center}.it-banner h2,.it-banner p{color:#fff}.it-banner .it-btn{background:#fff;border-color:#fff;color:var(--it-ink)!important;white-space:nowrap}.it-banner p{opacity:.83;margin:0}.it-hours{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.it-hour{padding:20px;background:var(--it-cream);border-radius:12px}.it-hour strong{display:block;color:var(--it-ink)}.it-page-header{background:var(--it-cream);padding:78px 0 58px}.it-page-header h1{margin:0 0 14px}.it-page-body{max-width:940px}.it-page-body h2{margin-top:30px}.it-page-body ul{padding-left:24px}.it-faq details{border-bottom:1px solid var(--it-line);padding:20px 0}.it-faq summary{font-weight:700;cursor:pointer}.it-faq details p{padding-top:14px}.it-note{padding:19px 22px;border-left:4px solid var(--it-teal);background:#f4f9f5;border-radius:0 10px 10px 0}.it-tag{display:inline-block;padding:5px 10px;border-radius:20px;background:#e0f0e8;color:#19585b;font-size:.8rem;font-weight:bold}.it-footer-card{padding:50px 0;background:var(--it-ink);color:#fff}.it-footer-card h2,.it-footer-card a{color:#fff}.it-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.it-footer-card p{opacity:.88}.it-footer-card small{opacity:.7}.it-footer-card ul{list-style:none;padding:0;margin:0}.it-footer-card li{margin-bottom:8px}.it-footer-card a:hover{text-decoration:underline}.it-footer-card .it-label{color:#a9d9c8}.it-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.it-info{padding:26px;border:1px solid var(--it-line);border-radius:14px}.it-info h3{font-size:1.25rem}.it-muted{color:#688080}.it-shell :focus-visible{outline:3px solid #db9d34;outline-offset:3px}
@media(max-width:920px){.it-hero-grid{grid-template-columns:1fr;min-height:auto;padding:64px 0}.it-hero-art{min-height:300px;max-width:550px;width:100%}.it-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.it-hours{grid-template-columns:repeat(2,1fr)}.it-footer-grid{grid-template-columns:1.5fr 1fr}.it-split{gap:5%}}
@media(max-width:640px){.it-wrap{width:min(100% - 32px,1160px)}.it-section{padding:52px 0}.it-cards,.it-split,.it-contact-grid,.it-footer-grid{grid-template-columns:1fr}.it-card{padding:24px}.it-card .it-number{margin-bottom:22px}.it-banner{padding:30px;display:block}.it-banner .it-btn{margin-top:22px;white-space:normal}.it-hours{grid-template-columns:1fr 1fr}.it-hour{padding:14px;font-size:.9rem}.it-page-header{padding:50px 0 40px}.it-price-table th,.it-price-table td{padding:11px 8px;font-size:.85rem}}

/* 1.1 public-facing preview additions */
.it-hero-photo{background:#dce9e2}.it-hero-photo:before,.it-hero-photo:after{display:none}.it-hero-photo img{width:100%;height:100%;min-height:480px;object-fit:cover;object-position:center 36%;display:block}.it-hero-photo-caption{position:absolute;bottom:14px;left:16px;right:16px;background:#173b42e8;color:#fff;padding:10px 16px;border-radius:8px;text-align:center;font-weight:700}.it-person-photo{padding:0;overflow:hidden;min-height:370px}.it-person-photo img{width:100%;height:100%;max-height:510px;object-fit:cover;object-position:center 30%;display:block}.it-section--hub{background:#edf5f0}.it-hub-row{display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:8%}.it-hub-art{border-radius:24px;min-height:340px;padding:40px;background:radial-gradient(circle at 90% 0%,#317c76,#173b42 65%);color:#fff;display:flex;flex-direction:column;justify-content:center}.it-hub-art span,.it-hub-art small{font-weight:700;letter-spacing:.18em;font-size:.8rem;color:#b8dfcd}.it-hub-art strong{font:clamp(2.3rem,4vw,4.1rem)/1.1 Georgia,serif;color:#fff;margin:20px 0}.it-media-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:32px 0}.it-media-cards article{padding:24px;border:1px solid var(--it-line);border-radius:16px;background:var(--it-cream)}.it-media-cards h2{font-size:1.7rem;margin-top:12px}.it-media-cards h3{margin-top:14px}.it-media-cards a{color:var(--it-teal);font-weight:700}.it-bio-grid{display:grid;grid-template-columns: .78fr 1.22fr;gap:6%;align-items:start}.it-bio-photo img{width:100%;border-radius:16px;display:block}.it-bio-photo small{font-size:.8rem;color:var(--it-grey)}.it-topic-list>div{padding:20px 0;border-bottom:1px solid var(--it-line)}.it-topic-list span{display:inline-block;width:50px;color:var(--it-teal);font-weight:800}.it-topic-list p{padding-left:50px;margin:8px 0 0;color:var(--it-grey)}
@media(max-width:920px){.it-media-cards{grid-template-columns:1fr 1fr}.it-hub-row{gap:5%}}
@media(max-width:640px){.it-hub-row,.it-media-cards,.it-bio-grid{grid-template-columns:1fr}.it-hero-photo img{min-height:340px;max-height:500px}.it-hub-art{min-height:290px}.it-bio-photo img{max-height:480px;object-fit:cover}}

/* 1.2 office contact details */
.it-office-details p{margin:0 0 12px}.it-office-details a{color:var(--it-teal);overflow-wrap:anywhere}.it-footer-contact{margin-top:24px}.it-footer-contact p{font-size:.84rem;margin:0 0 6px}.it-footer-contact a{color:#d4f2e6}.it-footer-contact strong{font-weight:700}
