/* Targeted additions to the original landscape and salon compositions. */
.concept-services{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;padding:80px 5% 30px}.concept-services h2,.concept-contact h2,.salon-about h2{font:56px/1.08 'Libre Caslon Display',Georgia,serif;letter-spacing:-.03em}.concept-services>div>p:not(.eyebrow){font-size:18px;max-width:34ch;line-height:1.7}.service-list article{display:flex;gap:24px;padding:24px 0;border-top:1px solid #ced0c4}.service-list article>span{font-size:13px;padding-top:4px}.service-list h3{font:30px 'Libre Caslon Display',Georgia,serif;margin-bottom:12px}.service-list p{font-size:17px;line-height:1.6;max-width:42ch;margin-bottom:0}.concept-contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:65px 5%;align-items:center;background:#e6e8d9}.concept-contact h2{margin-bottom:0}.concept-contact p{font-size:18px;line-height:1.65;max-width:42ch}.concept-contact .demo-note,.salon-services .demo-note{font:14px/1.6 'DM Sans',sans-serif;margin:18px 0 0}.landscape .concept-contact button{background:#353d29;color:#faf9f1}.salon .concept-contact{background:#e8ddcf}.salon-services{padding-top:64px;padding-bottom:64px}.salon-services .menu-heading{margin-top:0;font-size:45px}.salon-services .demo-note{margin-bottom:25px}.salon-about{padding:65px 5% 80px;text-align:center;border-top:1px solid #d6cfc2}.salon-about p:not(.eyebrow){max-width:46ch;margin:0 auto;font-size:20px;line-height:1.6}.project-facts{font-size:16px}.project-facts div{border-top:1px solid #ced0c4;padding:14px 0}.project-facts dt{font-weight:600;margin-bottom:6px}.project-facts dd{margin:0;line-height:1.5}.demo-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.demo-actions button{flex:1;white-space:nowrap}.demo-actions button:last-child{background:transparent;color:var(--concept-ink);box-shadow:inset 0 0 0 1px currentColor}.concept-page #demo-status:focus{outline-offset:5px}.land-photo img,.salon-hero>img{animation:concept-reveal .65s ease-out both}.concept-page button{transition:filter .18s}.salon-hero{height:calc(100svh - 150px);min-height:650px;max-height:880px}.salon-hero h1{font-size:clamp(76px,8.5vw,124px);margin:22px 0}.salon-hero>div{background:linear-gradient(90deg,#1b1b1940,transparent 70%)}
.salon-services p.demo-note{font:14px/1.6 'DM Sans',sans-serif}
@keyframes concept-reveal{from{opacity:.6}to{opacity:1}}
@media(max-width:720px){.concept-services,.concept-contact{grid-template-columns:1fr;gap:30px;padding:45px 6%}.concept-services h2,.concept-contact h2,.salon-about h2{font-size:43px}.concept-services>div>p:not(.eyebrow){max-width:none}.salon-services{padding-top:35px;padding-bottom:40px}.salon-services .menu-heading{font-size:38px}.salon-about{padding:45px 6%}.salon-about p:not(.eyebrow){font-size:18px}.salon-hero{height:620px;min-height:0}.salon-hero h1{font-size:clamp(64px,19vw,90px);margin:30px 0}.salon-hero>div{background:linear-gradient(90deg,#1b1b19c9,transparent 95%)}.concept-page header{padding:14px 5% 6px}.concept-page header nav{justify-content:space-between;gap:12px}.concept-page header>button{display:none}.concept-page header .brand{font-size:29px}.concept-page .land-photo{height:260px}html:has(.concept-page){scroll-padding-top:130px}}
@media(prefers-reduced-motion:reduce){.land-photo img,.salon-hero>img{animation:none}.concept-page button{transition:none}}
/* Demo summaries preserve sample text without rendering it as markup. */
.concept-page #demo-status{white-space:pre-line;overflow-wrap:anywhere;line-height:1.6;border-top:1px solid currentColor;padding-top:24px}
