/*
Theme Name: Inspired 360 Psych Services
Author: Inspired 360 Group
Description: Accessible, responsive WordPress theme for Inspired 360 Psych Services.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: inspired360-psych
*/
:root{--navy:#06164e;--navy2:#03103c;--teal:#009eaa;--mint:#e8f9f7;--gold:#e6ad3a;--ink:#17254a;--muted:#53617b;--paper:#f6f8ff;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:17px/1.65 "Aptos",Calibri,"Segoe UI",Arial,sans-serif;background:#fff}a{color:var(--teal)}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}h1,h2,h3{color:var(--navy);line-height:1.16;letter-spacing:-.03em}h1{font-size:clamp(2.65rem,5.5vw,5.3rem);margin:.25em 0}h2{font-size:clamp(2rem,3.5vw,3.2rem);margin:.3em 0 .55em}h3{font-size:1.35rem;margin:.4em 0}p{margin:0 0 1.2em}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:absolute;top:-100px;left:12px;background:white;padding:12px;z-index:100}.skip:focus{top:12px}.site-header{background:white;position:sticky;top:0;z-index:20;box-shadow:0 2px 18px #102b4612}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:24px}.brand{text-decoration:none;display:flex;align-items:center;gap:13px;color:var(--navy);font-weight:800;line-height:1.1;font-size:1.15rem}.brand-mark{display:grid;place-items:center;border:2px solid var(--gold);border-radius:50%;width:50px;height:50px;font-size:1.1rem}.brand small{display:block;color:var(--teal);font-size:.66rem;letter-spacing:.11em;text-transform:uppercase;margin-top:5px}.nav{display:flex;align-items:center;gap:24px}.nav a{color:var(--navy);text-decoration:none;font-size:.92rem;font-weight:700}.nav a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--gold);border:2px solid var(--gold);border-radius:5px;color:var(--navy2);text-decoration:none;font-weight:800;padding:13px 23px;line-height:1.2;transition:transform .2s}.button:hover{transform:translateY(-2px)}.button.light{background:transparent;color:white;border-color:#ffffff85}.menu-toggle{display:none}.hero{background:radial-gradient(circle at 89% 18%,#164cac 0%,transparent 34%),radial-gradient(circle at 57% 95%,#026d88 0%,transparent 37%),linear-gradient(122deg,var(--navy2),#071b60 70%,#123a79);color:white;overflow:hidden}.hero .wrap{display:grid;grid-template-columns:1.3fr .7fr;align-items:center;min-height:590px;gap:48px;padding-top:86px;padding-bottom:88px}.hero h1,.hero p{color:white}.hero p{font-size:1.22rem;max-width:680px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:800;color:var(--teal);margin-bottom:12px}.hero .eyebrow{color:#d9c28e}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:31px}.hero-logo-frame{width:min(100%,430px);aspect-ratio:1;border-radius:50%;margin:auto;padding:12px;background:#ffffff;box-shadow:0 30px 80px #0005,0 0 0 8px #ffffff20}.hero-logo-frame img{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%}.section{padding:90px 0}.section.alt{background:var(--paper)}.intro{max-width:790px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}.card{background:white;border:1px solid #dde8ed;border-radius:10px;padding:30px;box-shadow:0 8px 30px #122b4908}.card .num{display:inline-block;color:var(--teal);font-weight:800;font-size:.85rem;border-bottom:2px solid var(--gold);margin-bottom:20px;padding-bottom:5px}.card p{color:var(--muted);font-size:.96rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.panel{background:var(--mint);border-radius:16px;padding:45px;box-shadow:18px 18px 0 #d7e9e6}.panel li{margin:12px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:35px}.step{border-top:3px solid var(--gold);padding:22px 4px}.step strong{color:var(--teal);font-size:1.8rem}.cta{background:var(--navy);color:white}.cta h2,.cta p{color:white}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}.footer{background:var(--navy2);color:#dce6ec;padding:55px 0 25px}.footer a{color:white}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer h3{color:white}.footer .fine{border-top:1px solid #ffffff38;margin-top:45px;padding-top:20px;font-size:.83rem}.content-page{padding:80px 0;min-height:55vh}.content-page article{max-width:820px}.content-page img{max-width:100%;height:auto}@media(max-width:850px){.hero .wrap,.split{grid-template-columns:1fr}.hero .wrap{padding-top:64px}.hero-logo-frame{width:min(72vw,290px);grid-row:1}.grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.menu-toggle{display:block;border:1px solid #b6c7cd;background:white;border-radius:5px;padding:8px 12px;color:var(--navy);font-weight:700}.nav{display:none;position:absolute;top:88px;left:0;right:0;background:white;padding:22px;box-shadow:0 12px 15px #0002;flex-direction:column;align-items:flex-start}.nav.open{display:flex}}@media(max-width:600px){.section{padding:62px 0}.grid,.steps,.footer-grid{grid-template-columns:1fr}.cta .wrap{display:block}.panel{padding:28px;box-shadow:none}.hero .wrap{min-height:0}.header-inner{min-height:76px}.nav{top:76px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Approved Psych Services brand refinements */
.brand-logo,.custom-logo{display:block;width:66px;height:66px;object-fit:contain;border-radius:50%}.brand-wordmark{white-space:nowrap}.brand small{color:#0672cd}.header-inner{min-height:92px}.nav{gap:25px}.nav a:hover{color:#065fd0}.hero .eyebrow{color:#ffd677}.hero h1{max-width:720px}.hero .wrap{grid-template-columns:1.18fr .82fr}.button{background:linear-gradient(105deg,#ffb200,#f5ca50);border-color:#e6ad3a}.button.light{background:transparent;border-color:#fff;color:#fff}.card{border-top:4px solid #0767d3}.card:nth-child(2){border-top-color:#00a998}.card:nth-child(3){border-top-color:#ee1780}.card:nth-child(4){border-top-color:#ff9e00}.card:nth-child(5){border-top-color:#6c14d2}.card:nth-child(6){border-top-color:#32a849}.card .num{color:#064aab}.panel{background:linear-gradient(145deg,#ecf7ff,#eafbf7)}.step:nth-child(1){border-color:#0878dd}.step:nth-child(2){border-color:#e81984}.step:nth-child(3){border-color:#00aa85}.footer{border-top:5px solid var(--gold)}
@media(max-width:850px){.hero .wrap{grid-template-columns:1fr}.hero-logo-frame{grid-row:1}.brand-logo,.custom-logo{width:58px;height:58px}}@media(max-width:600px){.brand-logo,.custom-logo{width:48px;height:48px}.brand{font-size:.95rem}.brand small{font-size:.58rem}.hero-logo-frame{width:min(62vw,240px)}.header-inner{min-height:76px}}

/* Light homepage hero with consultation photograph */
.hero{background:radial-gradient(circle at 93% 5%,#d9f3ef 0%,transparent 32%),linear-gradient(125deg,#f5f9ff 0%,#e8f3fb 56%,#f6fbf8 100%);color:var(--navy)}
.hero .wrap{min-height:560px;padding-top:74px;padding-bottom:76px;gap:64px}
.hero h1{color:var(--navy);font-size:clamp(2.65rem,5vw,5rem)}
.hero p{color:#354766}.hero .button.light{color:var(--navy);border-color:#143b72;background:#fff}.hero .button.light:hover{background:#e8f4ff}
.hero-photo{width:100%;border-radius:22px;overflow:hidden;box-shadow:0 24px 65px #12366930;aspect-ratio:4/3;border:7px solid #fff}.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:850px){.hero .wrap{gap:32px;padding-top:42px;padding-bottom:55px}.hero-photo{grid-row:auto;max-width:620px}}

.team-section{background:#fff}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:38px}.team-card{display:flex;gap:24px;align-items:flex-start;padding:32px;border:1px solid #dce6f3;border-radius:16px;background:linear-gradient(140deg,#fff,#f7faff);box-shadow:0 8px 30px #06164e0a}.team-card h3{margin:0 0 4px}.team-card p{font-size:.95rem;color:var(--muted);margin:0 0 10px}.team-card .team-role{font-weight:800;color:#075aaf}.team-avatar{flex:0 0 76px;height:76px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,#0b2980,#0879ba);color:#fff;font-size:1.2rem;font-weight:800;border:3px solid var(--gold)}.team-card:nth-child(2) .team-avatar{background:linear-gradient(140deg,#0b2980,#7321a2)}@media(max-width:760px){.team-grid{grid-template-columns:1fr}}@media(max-width:440px){.team-card{display:block}.team-avatar{width:76px;margin-bottom:18px}}

/* Consistent Aptos typography across theme and WordPress content */
html,body,button,input,select,textarea,.button,.nav,.brand,.content-page,.card,.team-card{font-family:"Aptos",Calibri,"Segoe UI",Arial,sans-serif}
h1,h2,h3,h4,h5,h6{font-family:"Aptos Display","Aptos",Calibri,"Segoe UI",Arial,sans-serif;font-weight:700}
button,input,select,textarea{font-size:inherit}
