:root{--ink:#162736;--muted:#59616a;--line:#d8dde0;--accent:#174f6b;--paper:#fff;--wash:#f2f5f7}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible{outline:3px solid #3884a5;outline-offset:5px}header,main,footer{max-width:1360px;margin:auto}header{padding:35px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font:26px/1.15 Georgia,serif;letter-spacing:-.7px;white-space:nowrap}.brand span{display:block;font:10px/2.5 -apple-system,sans-serif;letter-spacing:3px}nav{display:flex;gap:35px;font-size:14px}nav a:hover,.textlink:hover{border-bottom-color:var(--accent)}section{padding:75px 6%}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.1;letter-spacing:-1.5px;margin:0 0 25px}h1{font-size:clamp(42px,5.7vw,78px);max-width:1010px}h2{font-size:clamp(32px,3.4vw,46px)}h3{font-size:30px;letter-spacing:-.8px;line-height:1.2}p{margin:0 0 22px}em{font-weight:400;color:var(--accent)}.eyebrow{display:block;text-transform:uppercase;letter-spacing:2.1px;font-size:12px;font-weight:600;margin-bottom:28px}.hero{padding-top:75px;padding-bottom:25px}.hero h1{max-width:1030px}.lead{font-size:20px;line-height:1.65;color:var(--muted);max-width:760px}.hero .lead{max-width:810px}.actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:35px}.button{display:inline-block;background:var(--ink);color:white;border:1px solid var(--ink);padding:14px 25px;font:500 14px/1.5 -apple-system,sans-serif;cursor:pointer}.button:hover{background:var(--accent);color:white}.button.secondary{color:var(--ink);background:white}.button.secondary:hover{background:var(--wash)}.hero-bottom{border-top:1px solid var(--line);margin-top:65px;padding-top:22px;display:flex;justify-content:space-between;color:var(--muted);font-size:12px;letter-spacing:.3px}.hero-bottom span:last-child{font-size:11px;letter-spacing:1.5px}.intro{display:grid;grid-template-columns:1fr 1.3fr;gap:75px;background:var(--wash);margin-top:30px}.intro h2{font-size:38px}.intro p{font-size:19px;max-width:600px}.cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.cards article{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.meta{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;color:var(--muted);margin-bottom:35px}.meta span{font-size:20px;color:var(--ink);letter-spacing:0}.cards h3{min-height:73px}.cards p{font-size:16px;color:var(--muted)}.cards .timing{font-size:13px;line-height:1.6;margin-top:auto;padding-top:12px}.textlink{font-size:14px;font-weight:500;display:inline-block;width:fit-content;border-bottom:1px solid var(--ink);padding-bottom:3px}.packages{background:var(--ink);color:white}.packages .eyebrow{color:#b1c8d6}.bundle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:50px}.bundle-grid article{border-top:1px solid #52616c;padding-top:30px}.bundle-grid p{color:#ced7de;font-size:16px;margin-top:20px}.price{font:42px/1.3 Georgia,serif;letter-spacing:-1px}.consult{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;border-bottom:1px solid var(--line)}.consult h2{max-width:390px}.consult p{max-width:600px}.closing{text-align:center;padding-top:95px;padding-bottom:100px}.closing h2{max-width:760px;margin:0 auto 30px}footer{border-top:1px solid var(--line);padding:45px 6%;display:grid;grid-template-columns:1fr 1fr;gap:20px}footer p{text-align:right;font-size:14px;color:var(--muted)}footer div{display:flex;gap:25px;font-size:13px}footer small{text-align:right;color:var(--muted);font-size:12px}.page-heading{padding-bottom:50px}.page-heading h1{max-width:900px}.detail-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:90px}.service-heading .textlink{margin-bottom:45px}.service-heading h1{font-size:clamp(42px,5vw,68px)}aside{background:var(--wash);padding:30px;align-self:start}aside .price{margin-bottom:25px}aside p{font-size:14px}aside .button{width:100%;text-align:center}.fine{font-size:12px;color:var(--muted);margin:15px 0 0}.includes{border-top:1px solid var(--line)}ul{padding:0;margin:0;list-style:none}li{padding:13px 0;border-bottom:1px solid var(--line);font-size:17px}li:before{content:'•';color:var(--accent);margin-right:15px}.about-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:80px;padding-top:15px}.monogram{background:var(--ink);color:#fff;font:120px/1 Georgia,serif;padding:70px 35px;align-self:start;text-align:center}.monogram span{display:block;font:12px/1.8 -apple-system,sans-serif;letter-spacing:2px;margin-top:40px}.prose p{font-size:18px}.contact{min-height:65vh;padding-top:110px;padding-bottom:100px}.contact .lead{max-width:740px}.contact .button{margin:15px 0 30px}.legal{max-width:920px;padding-top:10px;padding-bottom:100px}.legal h2{font-size:29px;margin-top:35px}.skip{position:absolute;top:-100px}.skip:focus{top:10px;background:white;padding:10px}dialog{max-width:540px;width:calc(100% - 40px);border:1px solid var(--line);padding:40px;color:var(--ink)}dialog::backdrop{background:#16273688}.close{float:right;border:0;background:transparent;font-size:30px;cursor:pointer}dialog h2{font-size:32px;margin-top:25px}dialog p{font-size:16px}@media(max-width:850px){header{padding:25px 6%;align-items:flex-start;gap:25px;flex-direction:column}nav{gap:28px}section{padding:55px 6%}.hero{padding-top:55px}.hero-bottom{margin-top:45px;gap:15px;flex-direction:column}.intro,.consult,.detail-grid,.about-grid{grid-template-columns:1fr;gap:30px}.cards{grid-template-columns:repeat(2,1fr)}.bundle-grid{grid-template-columns:1fr;gap:25px}.bundle-grid article{display:grid;grid-template-columns:1fr auto;gap:10px}.bundle-grid p{grid-column:1/-1}.monogram{max-width:360px}.contact{padding-top:65px}footer p{display:none}}@media(max-width:520px){.cards{grid-template-columns:1fr}.cards h3{min-height:0}.cards article{padding:25px}.lead{font-size:18px}.hero h1{font-size:44px}.hero h1 em{display:inline}.bundle-grid h3{font-size:26px}.bundle-grid .price{font-size:32px}footer{grid-template-columns:1fr}footer small{text-align:left}nav{width:100%;justify-content:space-between;gap:15px}.intro h2{font-size:32px}}

/* Narrow-screen readability without changing desktop composition. */
main,section,article,aside,.detail-grid>*,.consult>*,.intro>*,.about-grid>*{min-width:0}
h1,h2,h3,p,li,a{overflow-wrap:break-word}
@media(max-width:850px){nav a{padding:12px 0;min-height:44px;display:inline-flex;align-items:center}nav{flex-wrap:wrap}.button{max-width:100%;white-space:normal}}
@media(max-width:520px){.hero h1{font-size:clamp(34px,8.7vw,44px);line-height:1.13;letter-spacing:-1px}.hero h1 em{overflow-wrap:anywhere}h1{font-size:clamp(34px,10vw,42px)}.service-heading h1{font-size:clamp(34px,10vw,42px)}.bundle-grid article{grid-template-columns:minmax(0,1fr) auto;gap:8px}.bundle-grid h3{overflow-wrap:anywhere}.brand{font-size:24px}.eyebrow{overflow-wrap:anywhere}.contact .textlink{font-size:13px}aside{padding:24px}}
