:root{--navy:#00364e;--navy2:#001c2b;--cyan:#2df5f3;--cyan2:#008fa0;--ice:#f4f8fa;--white:#fff;--ink:#102c3a;--muted:#637985;--line:#d9e4e9;--danger:#a62d3d;--shadow:0 18px 52px rgba(0,54,78,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--ice);font:15px/1.6 'Open Sans',sans-serif}h1,h2,h3,h4,.brand,.button,.eyebrow{font-family:Montserrat,sans-serif}a{color:var(--cyan2)}button,input,select,textarea{font:inherit}.public-header{min-height:74px;display:flex;align-items:center;justify-content:space-between;padding:10px max(4vw,26px);background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand img{width:76px;height:52px;object-fit:contain}.public-header nav{display:flex;align-items:center;gap:24px}.public-header nav a,.link{color:#263a44;text-decoration:none;border:0;background:none;cursor:pointer}.button,button.primary{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:var(--navy);color:#fff;text-decoration:none;padding:13px 20px;font-weight:700;cursor:pointer;box-shadow:0 7px 22px rgba(0,54,78,.15);transition:.2s}.button:hover,button.primary:hover{background:#005472;transform:translateY(-1px)}.button.cyan{background:var(--cyan);color:var(--navy)}.button.secondary,.outline-button{display:inline-flex;border:1px solid var(--navy);border-radius:10px;color:var(--navy)!important;background:#fff;padding:11px 18px;text-decoration:none;font-weight:700}.button.small{padding:9px 16px}.full{width:100%}.demo{text-align:center;padding:7px;background:#e5fbff;color:var(--navy);font-size:11px;font-weight:800;letter-spacing:.06em}.public-main{min-height:70vh}.hero{background:radial-gradient(circle at 80% 10%,rgba(45,245,243,.2),transparent 28%),linear-gradient(115deg,#f8fcff,#eaf4fa);padding:82px max(4vw,40px);display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.hero h1{font-size:clamp(42px,5vw,70px);line-height:1.06;color:var(--navy);letter-spacing:-.045em;margin:14px 0 22px}.hero .lead{font-size:19px;max-width:650px}.eyebrow{color:var(--cyan2);font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.12em}.lead,.muted{color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-visual{min-height:440px;border-radius:32px;background:linear-gradient(180deg,rgba(0,54,78,.03),rgba(0,54,78,.72)),url('/images/mental-care.jpg') center/cover,#b7d5df;position:relative;overflow:hidden;box-shadow:0 28px 70px rgba(0,54,78,.2);transform:rotate(1deg)}.hero-visual:after{content:'Cuidado mental profissional';position:absolute;left:30px;bottom:26px;color:#fff;font:800 27px Montserrat}.search-panel{background:#fff;padding:18px;border-radius:16px;box-shadow:var(--shadow);margin-top:30px;display:grid;grid-template-columns:1fr 180px auto;gap:10px}.search-panel input,.search-panel select,.field input,.field select,.field textarea,.directory-search input,.directory-search select{width:100%;padding:13px 14px;border:1px solid #cbd9df;border-radius:9px;background:#fff;color:var(--ink)}.section{padding:82px max(4vw,40px);max-width:1380px;margin:auto}.section.tint{max-width:none;background:#eaf6fa}.section.dark{max-width:none;background:var(--navy);color:#fff}.section h2{color:var(--navy);font-size:clamp(30px,4vw,45px);line-height:1.15;margin:10px 0}.section.dark h2{color:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid.four{grid-template-columns:repeat(4,1fr)}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 8px 24px rgba(0,54,78,.06);transition:.2s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card h3{color:var(--navy)}.tag{display:inline-flex;padding:5px 10px;border-radius:999px;background:#e5f8fb;color:#006b7d;font-size:11px;font-weight:800}.price{font:800 24px Montserrat;color:var(--navy)}.feature-icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:var(--navy);color:var(--cyan);font-size:20px;font-weight:800}.stats-band{display:grid;grid-template-columns:repeat(4,1fr);background:var(--navy);color:#fff;padding:34px max(4vw,40px);text-align:center}.stats-band b{display:block;color:var(--cyan);font:800 30px Montserrat}.public-footer{background:var(--navy2);color:#bad0da;padding:58px max(4vw,40px);display:grid;grid-template-columns:2fr repeat(3,1fr);gap:35px}.public-footer img{width:90px}.public-footer strong,.public-footer a{display:block;color:#fff;margin-bottom:10px;text-decoration:none}.field{margin:16px 0}.field label{display:block;font-weight:700;margin-bottom:6px}.check{font-size:13px}.alert{padding:13px 16px;border-radius:9px;margin:16px}.success{background:#e0f7f7;color:#00566a}.error{background:#fde8eb;color:var(--danger)}
.product-showcase{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center}.check-list{padding:0;list-style:none;margin:28px 0}.check-list li{padding:8px 0 8px 30px;position:relative}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--cyan2);font-weight:900}.ui-preview{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 28px 70px rgba(0,54,78,.16);overflow:hidden;transform:perspective(1200px) rotateY(-3deg)}.preview-bar{height:42px;background:#f3f7f9;display:flex;align-items:center;gap:7px;padding:0 15px;color:var(--muted);font-size:11px}.preview-bar i{width:8px;height:8px;border-radius:50%;background:#b9c9d0}.preview-bar span{margin-left:8px}.preview-body{display:grid;grid-template-columns:130px 1fr;min-height:310px}.preview-body aside{background:var(--navy2);padding:24px 14px;display:flex;flex-direction:column;gap:17px;color:#a9c3ce;font-size:11px}.preview-body aside b{color:var(--cyan);font-size:22px}.preview-body main{padding:30px}.preview-body h3{font-size:24px;color:var(--navy);margin:4px 0 18px}.preview-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.preview-stats span{padding:15px;background:#f3f8fa;border-radius:10px;font-size:11px}.preview-stats b{display:block;font-size:18px;color:var(--navy)}.preview-body article{margin-top:20px;border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;align-items:center;gap:12px}.preview-body article>i{width:42px;height:42px;border-radius:9px;background:var(--navy);color:var(--cyan);display:grid;place-items:center;font-style:normal;font-weight:800}.preview-body article div{display:flex;flex-direction:column}.preview-body article small{color:var(--muted)}.preview-body article em{margin-left:auto;font-size:10px;color:var(--cyan2)}
.security-section{display:grid;grid-template-columns:280px 1fr;gap:60px;align-items:center;background:#edf8fa;border-radius:28px;margin-top:70px;margin-bottom:70px}.security-mark{width:240px;height:240px;border-radius:50%;display:grid;place-items:center;text-align:center;background:var(--navy);color:var(--cyan);font:800 55px/1 Montserrat;box-shadow:0 0 0 18px rgba(45,245,243,.16)}.security-mark span{font-size:14px;letter-spacing:.18em}.security-points{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:28px}.security-points span{background:#fff;border-radius:12px;padding:17px;font-size:13px}.security-points b{display:block;color:var(--navy);margin-bottom:5px}.journey-split{max-width:none;display:grid;grid-template-columns:1fr 1fr;padding:0}.journey-split article{padding:75px max(5vw,55px);background:var(--navy);color:#fff}.journey-split article h2{color:#fff}.journey-split article+article{background:#dafbfb;color:var(--ink)}.journey-split article+article h2{color:var(--navy)}.faq{max-width:980px}.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 20px;margin:10px 0}.faq summary{cursor:pointer;font:700 16px Montserrat;color:var(--navy);padding:18px 35px 18px 0}.faq details p{padding:0 0 18px;margin:0;color:var(--muted)}
.auth-layout{min-height:720px;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-story{background:linear-gradient(145deg,rgba(0,28,43,.98),rgba(0,54,78,.88)),url('/images/mental-care.jpg') center/cover;padding:90px max(6vw,65px);color:#fff;display:flex;flex-direction:column;justify-content:center}.auth-story h1{font-size:clamp(40px,5vw,64px);line-height:1.08;margin:14px 0}.auth-story p{font-size:18px;color:#c7dae3}.auth-proof{display:flex;flex-direction:column;gap:9px;margin:20px 0}.auth-story blockquote{margin:35px 0 0;border-left:3px solid var(--cyan);padding-left:18px;color:var(--cyan)}.auth{width:min(520px,90%);margin:auto;padding:42px}.auth h2{font-size:32px;color:var(--navy)}
.directory-hero{text-align:center;padding:75px 20px;background:radial-gradient(circle at 50% 0,rgba(45,245,243,.19),transparent 45%),#edf6fa}.directory-hero h1{font-size:clamp(38px,5vw,60px);color:var(--navy);margin:10px}.directory-hero p{color:var(--muted);font-size:17px}.directory-search{max-width:950px;margin:30px auto 18px;background:#fff;padding:15px;border-radius:16px;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr 220px auto;gap:9px}.quick-filters{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.quick-filters span,.specialty-list span{background:#fff;border:1px solid var(--line);padding:6px 11px;border-radius:99px;font-size:12px}.directory-results{padding-top:55px}.pagination{margin-top:25px}
.profile-hero{padding:70px max(7vw,50px);display:grid;grid-template-columns:260px 1fr;gap:45px;align-items:center;background:linear-gradient(120deg,#edf7fa,#fff)}.profile-photo{position:relative}.profile-photo img{width:240px;height:240px;border-radius:28px;object-fit:cover;background:#dcebf0;box-shadow:var(--shadow)}.profile-photo span{position:absolute;bottom:14px;left:15px;background:var(--navy);color:var(--cyan);padding:7px 12px;border-radius:99px;font-weight:800}.profile-hero h1{font-size:clamp(38px,5vw,58px);color:var(--navy);margin:10px 0}.profile-facts{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.profile-facts span{background:#fff;border:1px solid var(--line);padding:8px 12px;border-radius:9px}.profile-facts small{color:var(--muted)}.specialty-list{display:flex;gap:8px;flex-wrap:wrap}.profile-layout{display:grid;grid-template-columns:1fr 470px;gap:55px;align-items:start}.trust-grid{display:grid;gap:10px;margin-top:28px}.trust-grid div{padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff}.trust-grid b,.trust-grid small{display:block}.trust-grid small{color:var(--muted)}.booking-card,.checkout-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--shadow)}.service-option{padding:20px 0;border-top:1px solid var(--line)}.service-option h3{color:var(--navy);margin:0}.service-option strong small{color:var(--muted)}
.checkout{min-height:680px;padding:80px max(8vw,60px);display:grid;grid-template-columns:1fr 520px;gap:70px;align-items:center;background:radial-gradient(circle at 15% 10%,rgba(45,245,243,.16),transparent 34%),#eef6f9}.checkout h1{font-size:clamp(40px,5vw,62px);color:var(--navy);line-height:1.1}.checkout-trust{display:flex;flex-direction:column;gap:10px;margin-top:28px}.appointment-summary{display:flex;gap:16px;align-items:center}.appointment-summary h3{margin:3px 0;color:var(--navy)}.appointment-summary p{margin:3px 0;color:var(--muted)}.checkout-total{display:flex;align-items:center;justify-content:space-between;padding:22px 0;margin:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.fineprint{text-align:center;font-size:12px}.legal-page{max-width:850px;margin:0 auto;padding:80px 30px}.legal-page h1{font-size:clamp(40px,6vw,62px);color:var(--navy)}.legal-page h2{color:var(--navy);margin-top:35px}
.app-body{background:#edf3f6}.app-shell{min-height:100vh;display:grid;grid-template-columns:255px 1fr}.sidebar{background:var(--navy2);color:#fff;position:fixed;width:255px;height:100vh;padding:22px 16px;display:flex;flex-direction:column;z-index:30}.brand-light img{width:90px;max-height:55px;object-fit:contain}.portal-label{font:700 11px Montserrat;text-transform:uppercase;letter-spacing:.12em;color:#7fa7b8;padding:14px 12px}.side-nav{display:flex;flex-direction:column;gap:3px;overflow:auto}.side-nav a{color:#b9ced7;text-decoration:none;padding:10px 13px;border-radius:8px;display:flex;align-items:center;gap:10px}.side-nav a:hover,.side-nav a.active{background:#07465f;color:#fff}.side-nav a.active{border-left:3px solid var(--cyan)}.side-bottom{margin-top:auto;border-top:1px solid #163d4d;padding-top:12px}.side-bottom a,.side-link{display:block;width:100%;text-align:left;color:#9eb9c5;background:none;border:0;text-decoration:none;padding:8px 12px;cursor:pointer}.app-content{grid-column:2;min-width:0}.app-topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);padding:0 30px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.app-topbar>div:first-of-type{display:flex;flex-direction:column}.app-topbar span{font-size:12px;color:var(--muted)}.user-chip{display:flex;align-items:center;gap:10px}.user-chip>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--cyan);font-weight:800}.user-chip small{display:block;color:var(--muted)}.menu-toggle{display:none}.dashboard-main{padding:30px;max-width:1500px;margin:auto}.dashboard-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.dashboard-head h1{font-size:32px;color:var(--navy);margin:4px 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0 28px}.stat{background:#fff;padding:20px;border-radius:13px;border:1px solid var(--line);box-shadow:0 4px 18px rgba(0,54,78,.04)}.stat b{display:block;font:800 29px Montserrat;color:var(--navy)}.stat small{color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:13px}table{width:100%;border-collapse:collapse;min-width:700px}th,td{text-align:left;padding:13px 15px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.05em}.empty-state{text-align:center;padding:45px;color:var(--muted)}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.module-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:20px}.module-card h3{color:var(--navy);margin:8px 0}.progress{height:8px;background:#e3edf1;border-radius:99px;overflow:hidden}.progress i{height:100%;display:block;background:var(--cyan2)}.notice{padding:16px;border-left:4px solid var(--cyan2);background:#eaf8fb;border-radius:8px;margin:18px 0}.kpis{display:flex;gap:20px;flex-wrap:wrap}.kpis span{background:#eff6f8;padding:8px 12px;border-radius:8px}.section-title{display:flex;align-items:center;justify-content:space-between;margin:20px 0 12px}.section-title h2{font-size:21px;color:var(--navy);margin:0}
@media(max-width:980px){.public-header nav a:not(.button):not(.outline-button){display:none}.hero,.product-showcase,.security-section,.profile-layout,.checkout{grid-template-columns:1fr}.hero-visual{min-height:330px}.grid,.grid.four{grid-template-columns:repeat(2,1fr)}.security-mark{margin:auto}.journey-split{grid-template-columns:1fr}.auth-layout{grid-template-columns:1fr}.auth-story{padding:65px 8vw}.profile-layout{padding-top:45px}.booking-card{max-width:620px}.app-shell{grid-template-columns:1fr}.sidebar{transform:translateX(-100%);transition:.2s}.menu-open .sidebar{transform:translateX(0)}.app-content{grid-column:1}.menu-toggle{display:block;border:0;background:none;font-size:22px}.stats{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.module-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.public-header{padding:8px 14px}.public-header nav{gap:8px}.outline-button{display:none!important}.hero,.section,.checkout{padding:45px 20px}.hero h1{font-size:40px}.hero-visual{min-height:260px}.search-panel,.directory-search{grid-template-columns:1fr}.grid,.grid.four,.stats,.module-grid,.stats-band,.public-footer,.security-points{grid-template-columns:1fr}.product-showcase{gap:35px}.preview-body{grid-template-columns:75px 1fr}.preview-body aside span{font-size:0}.preview-body main{padding:20px}.preview-stats{grid-template-columns:1fr}.preview-body article em{display:none}.security-section{margin:0;border-radius:0}.security-mark{width:170px;height:170px}.profile-hero{grid-template-columns:1fr;padding:45px 20px}.profile-photo img{width:190px;height:190px}.auth-story{padding:50px 25px}.auth{padding:35px 20px}.checkout{gap:35px}.dashboard-main{padding:20px 14px}.dashboard-head{align-items:start;flex-direction:column}.app-topbar{padding:0 15px}.user-chip div{display:none}}
