/*
Theme Name: Lakeshore Counseling Group
Theme URI: https://example.com/
Author: OpenAI
Description: Clean responsive theme reconstructed from the supplied WordPress export for Lakeshore Counseling Group, PLLC.
Version: 1.0.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: lakeshore-counseling
*/
:root{--ink:#18211f;--muted:#5d6966;--paper:#fff;--sage:#dcebe6;--mint:#b6f3e8;--deep:#244b43;--sand:#f5f1e9;--line:#dbe2df;--radius:24px;--shadow:0 18px 55px rgba(25,51,46,.12);--wrap:min(1160px,calc(100% - 40px))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--deep)}.container{width:var(--wrap);margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(219,226,223,.8)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:28px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink)}.brand-mark{width:48px;height:48px;border-radius:50%;background:var(--sage);display:grid;place-items:center;font-family:Georgia,serif;font-size:26px;overflow:hidden;flex:0 0 48px}.brand-mark--image img{width:100%;height:100%;object-fit:contain;padding:3px}.brand-text{font-size:14px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;max-width:260px}.site-nav ul{display:flex;align-items:center;gap:24px;list-style:none;padding:0;margin:0}.site-nav a{text-decoration:none;color:var(--ink);font-size:14px}.site-nav a:hover{color:var(--deep)}.menu-toggle{display:none;border:0;background:var(--sage);border-radius:999px;padding:10px 14px}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;background:var(--deep);color:#fff;text-decoration:none;font-weight:600;border:1px solid var(--deep);transition:.2s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(36,75,67,.2)}.button--light{background:var(--mint);color:var(--ink);border-color:var(--mint)}.hero{padding:92px 0 78px;background:linear-gradient(140deg,#fff 15%,#eef7f4 100%)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700;color:var(--deep)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:70px}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,7vw,86px);line-height:.98;letter-spacing:-.045em;margin:16px 0 24px;font-weight:500}.hero .lead{font-size:20px;color:var(--muted);max-width:700px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.portrait-card{position:relative;min-height:580px;border-radius:var(--radius);overflow:hidden;background:linear-gradient(155deg,#d9ebe5,#f7f4ed);box-shadow:var(--shadow)}.portrait-card img{width:100%;height:100%;object-fit:cover;position:absolute}.portrait-card:after{content:"Cathy Ranieri, LCPC";position:absolute;left:24px;bottom:24px;background:rgba(255,255,255,.92);padding:12px 16px;border-radius:999px;font-weight:600}.section{padding:92px 0}.section--sage{background:var(--sage)}.section--sand{background:var(--sand)}.section-head{max-width:760px;margin-bottom:48px}.section h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,5vw,60px);line-height:1.08;letter-spacing:-.03em;margin:10px 0 18px;font-weight:500}.section p{color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.photo-panel{border-radius:var(--radius);overflow:hidden;min-height:520px;background:linear-gradient(150deg,#cfe4dd,#f4eee3);box-shadow:var(--shadow)}.photo-panel img{width:100%;height:100%;object-fit:cover}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 30px;margin:28px 0}.check-item{padding:14px 0 14px 34px;position:relative;border-bottom:1px solid rgba(36,75,67,.18)}.check-item:before{content:"✓";position:absolute;left:0;color:var(--deep);font-weight:800}.quote{padding:96px 0;background:var(--deep);color:white;text-align:center}.quote blockquote{font-family:Georgia,serif;font-size:clamp(36px,5vw,62px);line-height:1.2;margin:0 auto 16px;max-width:950px}.quote cite{font-style:normal;opacity:.75}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px}.card h3{margin-top:0;font-family:Georgia,serif;font-size:26px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}.contact-list{display:grid;gap:12px}.contact-list a{text-decoration:none;font-size:18px}.contact-form{background:#fff;border-radius:var(--radius);padding:34px;box-shadow:var(--shadow)}.contact-form label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.contact-form input,.contact-form textarea{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:12px;font:inherit;margin-bottom:18px}.contact-form textarea{min-height:140px;resize:vertical}.site-footer{background:#16231f;color:#dce6e2;padding:55px 0 30px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:40px}.site-footer a{color:white}.legal{font-size:13px;opacity:.72;margin-top:36px;padding-top:24px;border-top:1px solid rgba(255,255,255,.15)}.content-area{width:var(--wrap);margin:70px auto;max-width:900px}.content-area h1{font-family:Georgia,serif;font-size:48px}.notice{background:#fff7db;padding:14px 18px;border-radius:12px;border:1px solid #f1dda1;margin-bottom:24px}
@media(max-width:900px){.hero-grid,.split,.contact-grid,.footer-grid{grid-template-columns:1fr}.portrait-card,.photo-panel{min-height:460px}.cards{grid-template-columns:1fr}.site-nav{display:none;position:absolute;left:20px;right:20px;top:72px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}.site-nav.is-open{display:block}.site-nav ul{flex-direction:column;align-items:flex-start}.menu-toggle{display:block}.hero{padding-top:60px}.check-grid{grid-template-columns:1fr}}
@media(max-width:560px){:root{--wrap:min(100% - 28px,1160px)}.brand-text{font-size:11px;max-width:190px}.hero h1{font-size:46px}.section{padding:68px 0}.portrait-card,.photo-panel{min-height:390px}.contact-form{padding:22px}}
