*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:#ffffff;color:#292126;font:17px/1.65 Arial,sans-serif}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,summary:focus-visible,.gallery:focus-visible{outline:3px solid #351d2b;outline-offset:5px}h1,h2,h3{font-family:Georgia,serif;line-height:1.13;letter-spacing:-.025em;font-weight:400;color:#351d2b}h1{font-size:clamp(40px,5vw,68px);margin:18px 0 24px}h2{font-size:clamp(27px,3vw,37px);margin:0}h3{font-size:24px;margin:24px 0 16px}p{margin:0 0 20px}img{max-width:100%;display:block}button{font:inherit;cursor:pointer;touch-action:manipulation}
.masthead{max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:20px 32px;gap:20px;border-bottom:1px solid #dfc8bc}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;font-size:15px;font-weight:bold;letter-spacing:2px;color:#351d2b}.brand img{height:60px;width:65px;object-fit:contain}.masthead>a:last-child{font-size:14px;color:#351d2b}main{max-width:1320px;margin:auto;padding:0 32px}
.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:0 40px;align-items:start;padding:42px 0 34px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:700;color:#351d2b}.hero .eyebrow{grid-column:1 / -1;grid-row:1}.hero h1{grid-column:1;grid-row:2 / span 2}.hero>p{grid-column:2;grid-row:2}.hero-bottom{grid-column:2;grid-row:3}.hero>p{font-size:19px}.hero-bottom{display:flex;align-items:center;gap:18px;padding-top:10px}.counter{background:#351d2b;color:#fff;display:grid;place-items:center;font-size:32px;font-weight:bold;min-width:67px;height:67px;border-radius:50%}.hero-bottom p{font-size:15px;margin:0}.hero-art{grid-column:1 / -1;grid-row:4;width:100%;height:auto;min-height:0;object-fit:contain;object-position:center;border-radius:35px 35px 14px 14px;background:#ffe7d6}
.overview{padding:35px 0 20px}.overview-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;margin-bottom:24px}.overview h2{max-width:390px}nav{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#dfc8bc;border:1px solid #dfc8bc}nav a{display:flex;align-items:center;gap:14px;padding:16px 19px;font-size:15px;line-height:1.4;text-decoration:none;background:#fff}nav a span{font-size:13px;color:#351d2b;font-weight:bold}nav a:last-child{grid-column:span 2}nav a:hover,nav a.active{background:#ffe7d6;color:#351d2b;text-decoration:underline}
.practice{background:#fff;border:1px solid #dfc8bc;border-radius:3px 25px 25px 25px;padding:30px;margin:25px 0 45px;scroll-margin-top:25px}.profile-head{display:flex;align-items:center;gap:18px;margin-bottom:26px;padding-bottom:20px;border-bottom:1px solid #dfc8bc}.rank{background:#ffe7d6;color:#351d2b;min-width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font-size:27px;font-weight:bold}.logo,.initials{width:92px;height:82px;object-fit:contain;margin-left:auto;flex-shrink:0}.initials{display:grid;place-items:center;border-radius:50%;background:#fff5ed;color:#351d2b;font-size:25px;font-weight:bold}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start}.copy,.gallery{min-width:0}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.button{display:inline-block;padding:11px 17px;border:1px solid #351d2b;border-radius:8px;font-size:15px;text-decoration:none;background:#fff;color:#351d2b}.button.primary{background:#351d2b;color:#fff}.button:hover{background:#ffe7d6;color:#351d2b}.practical{border-left:3px solid #d9581d;padding-left:16px}ul{padding-left:21px}
.gallery{background:#fff2e9;border-radius:24px;overflow:hidden}.slide{width:100%;height:420px;object-fit:cover;object-position:center 35%}.slide[hidden]{display:none}.portrait .slide{height:520px;object-fit:contain}.controls{display:flex;justify-content:space-between;align-items:center;padding:12px;gap:8px}.controls button{border:1px solid #b79280;background:#fff;color:#351d2b;min-width:40px;height:40px;border-radius:50%}.dots{display:flex;gap:7px}.dots button[aria-pressed=true]{background:#351d2b;color:#fff}.compact{grid-template-columns:1fr}.compact .slide{height:335px;object-fit:cover;object-position:center 35%}
.contact{display:flex;flex-wrap:wrap;gap:10px 25px;font-size:15px;background:#fff2e9;border-left:3px solid #351d2b;margin:25px 0;padding:20px}.contact span:first-child{flex-basis:100%}.reviews{margin:25px 0}.quotes{display:grid;grid-template-columns:1fr 1fr;gap:16px}blockquote{margin:0;background:#fff6ef;border-radius:16px;padding:22px;font-size:16px}blockquote p{margin:0 0 15px}cite{font-style:normal;font-size:14px}.map{display:block;border:1px solid #dfc8bc;border-radius:12px;width:100%;height:265px;background:#fff2e9}.google-photo{font-size:14px;display:block}.google-photo img{height:135px;width:135px;object-fit:cover;margin:15px 0 8px;border-radius:16px}
.faq{max-width:960px;margin:65px auto}.faq h2{margin:15px 0 30px}details{border-top:1px solid #dfc8bc;padding:20px 0}summary{font:600 21px/1.4 Arial,sans-serif;color:#351d2b;cursor:pointer}details p{margin:20px 0 0}.ending{display:flex;flex-direction:row-reverse;align-items:center;gap:40px;background:#ffe7d6;padding:38px;border-radius:25px 25px 0 0}.ending>div{flex:1;min-width:0}.ending h2{font-size:clamp(32px,4vw,47px);margin:18px 0 22px}.ending img{width:52%;max-width:52%;align-self:stretch;object-fit:cover;border-radius:20px}.ending p{max-width:440px}footer{background:#fff5ed;color:#292126;text-align:center;padding:35px;font-size:14px}
@media(max-width:700px){body{font-size:16px}.masthead{padding:15px;gap:10px}.brand{font-size:11px;gap:8px;letter-spacing:1px}.brand img{height:42px;width:44px}.masthead>a:last-child{font-size:12px}main{padding:0 12px}.hero{display:block;padding:28px 7px}.hero>p{font-size:18px}.hero-bottom{margin-bottom:25px;gap:13px}.counter{min-width:56px;height:56px;font-size:28px}.hero-bottom p{font-size:14px}.hero-art{height:180px;min-height:0;object-fit:cover;object-position:50% center;border-radius:18px}.overview{padding:25px 7px}.overview-grid{grid-template-columns:1fr;gap:18px}nav{grid-template-columns:1fr}nav a{padding:12px 13px;font-size:14px}nav a:last-child{grid-column:auto}.practice{padding:22px 16px;margin:20px 0 35px;border-radius:3px 20px 20px 20px}.profile-head{gap:10px}.rank{min-width:42px;height:42px;font-size:21px}.logo,.initials{width:60px;height:62px}h2{font-size:26px}.profile-grid,.quotes{grid-template-columns:1fr}.profile-grid{gap:22px}.button{font-size:14px;padding:10px 12px}.slide{height:320px}.portrait .slide{height:390px}.compact .slide{height:250px}.controls{padding:10px}.controls button{min-width:36px;height:36px}.contact{font-size:14px;gap:9px 18px;padding:17px}.map{height:240px}.ending{padding:28px 20px;gap:24px;flex-direction:column-reverse}.ending img{width:100%;max-width:100%;height:auto;object-fit:contain}.faq{margin:45px 8px}summary{font-size:19px}.eyebrow{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Keep lower-profile room furnishings in the proportional landscape crops. */
#practice-6 .compact .slide{object-position:center 77%}
#practice-5 .compact .slide{object-position:center 60%}

/* Hearthline: sharply ruled typographic magazine, not rounded pastel cards. */
body{background:#fff}.masthead{border-top:8px solid #e76a28}.brand img{width:100px;height:48px}h1{font-size:clamp(42px,6.4vw,84px);font-weight:700;letter-spacing:-.055em}.hero{padding-top:48px}.hero-art{border-radius:0;margin-top:24px}.counter,.rank{border-radius:0;background:#351d2b;color:white}.practice{border:0;border-top:5px solid #e76a28;border-radius:0;padding:30px 8px;margin-bottom:65px}.profile-head{border-color:#351d2b}.profile-head h2{font-weight:700}.gallery,blockquote,.button,.map,.ending,.ending img,.google-photo img{border-radius:0}.button{border-width:2px}.contact{background:#fff4eb;border-left:4px solid #e76a28}.ending{display:block;background:#351d2b;color:white;padding:34px}.ending h2,.ending .eyebrow{color:white}.ending img{width:100%;max-width:100%;height:auto;margin-top:25px}.ending p{max-width:750px}.ending img{object-fit:contain}.overview h2{font-style:italic}nav a:last-child{grid-column:auto}footer{border-bottom:8px solid #e76a28;background:white}.initials{border-radius:0}.hero-art{object-fit:contain;height:auto}
@media(max-width:700px){.masthead>a:last-child{display:none}.brand{font-size:12px}.brand img{width:70px}.hero{padding:28px 5px}.hero-art{height:auto;object-fit:contain;max-width:100%}.practice{padding:24px 5px}.rank{min-width:34px;height:42px;font-size:19px}.profile-head{gap:8px}.profile-head h2{font-size:24px;overflow-wrap:break-word}.logo,.initials{width:54px;height:58px}.ending{padding:26px 17px}.ending img{width:100%;height:auto}.controls button{min-width:36px}nav a{min-height:45px}}

.hero-art{height:430px;object-fit:contain;background:#fff7f1}.hero{grid-template-columns:1.1fr 1fr}.hero-art{grid-column:2;grid-row:2 / span 3;max-width:100%;margin-top:15px}.hero>p,.hero-bottom{grid-column:1;grid-row:auto}.hero h1{grid-row:2}.hero-bottom{margin:0}.hero>p{font-size:17px}.hero h1{font-size:clamp(42px,5.2vw,68px);margin-bottom:20px}.hero .eyebrow{margin-bottom:12px}.hero-art{align-self:stretch;height:100%;min-height:430px}.hero-bottom{padding-top:0}.hero-bottom p{max-width:400px}
@media(max-width:700px){.hero{display:block}.hero-art{height:auto;min-height:0;margin:25px auto 0;width:100%;max-height:none}.hero h1{font-size:42px}.hero-bottom{margin:25px 0 0}.hero>p{font-size:18px}}
