/*
Theme Name: New York Lung Private Client
Description: Approved private-client design, built as a lightweight WordPress theme.
Version: 1.0.0
Requires PHP: 8.0
Text Domain: nylung-private-client
*/

@font-face{font-family:"DM Sans";src:url("assets/fonts/dm-sans.ttf") format("truetype");font-weight:100 1000;font-style:normal;font-display:swap}

:root{--sans:"DM Sans",sans-serif;--gold:#a3822e;--ink:#10110f;--cream:#f8f5ed}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--cream);font-family:Georgia,serif}
header,main,footer{max-width:1160px;margin:auto}
header{padding:28px 36px;display:flex;align-items:center;justify-content:space-between}
.header-contact{color:var(--gold);font:18px var(--sans);text-decoration:none}
.brand{display:flex;align-items:flex-start;gap:18px;width:max-content}
.brand-shield{width:83px;height:auto;margin-top:-10px}
.brand-name{width:220px;height:auto}
.draft{background:#29271e;text-align:center;padding:9px;font:12px var(--sans);letter-spacing:1px;color:#d9c995}
.hero{padding:76px 36px 48px;display:grid;grid-template-columns:1.25fr 1fr;gap:65px;align-items:center}
h1{font-weight:400;font-size:52px;line-height:1.15;margin:0 0 28px;max-width:600px}
.phone{font-size:30px;line-height:1.15;font-weight:400;margin:0;color:var(--gold)}
.button{display:inline-block;background:var(--gold);padding:17px 32px;text-decoration:none;color:white;font:15px var(--sans)}
.phone a{color:inherit;text-decoration:none}
.hero-art{text-align:center}
.illustration{position:relative;width:360px;max-width:100%;height:270px;margin:auto;transform:translate(16px,-20px)}
.hand-lungs{display:block;width:100%;height:100%;object-fit:contain}
.contact{padding:0 36px 64px;scroll-margin-top:28px;display:grid;grid-template-columns:1.25fr 1fr;gap:65px;align-items:start}
.calendar{padding:0;border:0;max-width:510px}
.services{padding:0;border:0}
.services h2{font-size:26px;font-weight:400;margin:0 0 20px;color:var(--gold)}
.services ul{margin:0;padding-left:19px;list-style-type:disc;color:var(--cream);font:18px/1.5 var(--sans)}
.services li{padding-left:5px;margin:0 0 12px}
.services li:last-child{margin-bottom:0}
.services li::marker{color:var(--gold)}

.calendar h2{font-weight:400;margin:0 0 20px;font-size:26px}
.calendar label{font:14px var(--sans);display:block;margin:18px 0 9px}
input,select{width:100%;padding:13px;background:var(--cream);color:var(--ink);border:0;font:16px var(--sans)}
.calendar button{margin-top:22px;border:0;width:100%;cursor:pointer}
.notice{font:13px/1.6 var(--sans);color:#b9b9aa;margin:20px 0 0}
.status{color:#d5bc74;font:14px/1.5 var(--sans);margin:16px 0 0}
.status:empty{display:none}
footer{padding:20px 36px;font:12px/1.6 var(--sans);color:#adada0}

@media(max-width:700px){header{padding:22px 24px}.brand{margin:0;gap:14px}.header-contact{display:none}.brand-shield{width:72px;margin-top:-8px}.brand-name{width:190px}.hero{padding:42px 24px;grid-template-columns:1fr;gap:36px}h1{font-size:38px}.phone{font-size:28px}.illustration{width:260px;height:195px;margin:0;transform:none}.contact{padding:0 24px 42px;grid-template-columns:1fr;gap:36px}.services{padding:0}.calendar{max-width:none;padding:0}footer{padding:20px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
dialog{width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:30px;background:var(--ink);color:var(--cream);border:1px solid #a3822e;font-family:Georgia,serif}
dialog::backdrop{background:rgb(0 0 0 / .72)}
.modal-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.modal-top h2{font-size:30px;font-weight:400;margin:0}
.close{background:none;color:var(--cream);border:0;font:26px var(--sans);cursor:pointer;padding:4px 8px}
dialog label{display:block;font:14px var(--sans);margin:20px 0 8px}
textarea{width:100%;padding:13px;background:var(--cream);color:var(--ink);font:16px var(--sans);border:0;resize:vertical;min-height:105px}
dialog .button{border:0;width:100%;margin-top:24px;cursor:pointer}
.visit-summary{font:14px/1.5 var(--sans);color:#c8ab59;margin:18px 0}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid #d5bc74;outline-offset:3px}

.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
