:root{--cream:#f4eadf;--cream2:#fbf5ed;--ink:#171512;--line:#b7a58f;--paper:#f8efe3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream2);color:var(--ink);font-family:Georgia,'Times New Roman',serif}.nav{height:86px;display:flex;align-items:center;gap:34px;padding:0 4vw;border-bottom:1px solid #cbb9a4;background:#faf2e8;position:sticky;top:0;z-index:20}.brand{font-size:29px;letter-spacing:.08em;text-decoration:none;color:inherit;line-height:.9}.brand span{display:block;font:8px Arial,sans-serif;letter-spacing:.24em;margin-top:8px}.nav nav{display:flex;gap:25px;margin-left:auto}.nav nav a{font:10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em;color:inherit;text-decoration:none}.btn{display:inline-block;border:1px solid #675c50;padding:14px 22px;color:inherit;text-decoration:none;font:10px Arial,sans-serif;text-transform:uppercase;letter-spacing:.16em;background:transparent}.btn.dark{background:#191816;color:#fff;border-color:#191816}.hero{display:grid;grid-template-columns:40% 60%;min-height:650px;background:var(--cream)}.hero-copy{padding:7vw 5vw}.eyebrow,.smallcaps{font:10px Arial,sans-serif;letter-spacing:.28em}.hero h1{font-size:62px;font-weight:400;line-height:.98;margin:28px 0}.lead{font-size:18px;line-height:1.5;max-width:440px}.signature{font-size:32px;font-style:italic;margin:28px 0 3px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.city{margin-top:28px}.image-placeholder{background:linear-gradient(135deg,#d8c6af,#a99075);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;color:#fff;letter-spacing:.16em;text-align:center}.image-placeholder small{font:11px Arial,sans-serif;letter-spacing:.04em;margin-top:12px}.section{padding:70px 4vw}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.section h2,.about h2,.doctors h2,.contact h2{font-size:42px;font-weight:400;margin:12px 0}.section-head>p{font-size:16px;line-height:1.6}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:40px}.cards article{background:#f5eadf;padding:38px}.cards b{font-size:32px;font-weight:400;font-style:italic}.cards h3{font-size:26px;font-weight:400;text-transform:uppercase}.cards p{line-height:1.8}.about{display:grid;grid-template-columns:38% 62%;min-height:570px;background:#efe2d3}.about>div:last-child{padding:70px 7vw}.portrait{min-height:570px}.italic{font-style:italic;font-size:20px}.about p{line-height:1.55}.credentials{border-top:1px solid var(--line);margin-top:30px;padding-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.center{text-align:center}.chips{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:35px}.chips a{min-height:120px;background:#f2e6d8;color:inherit;text-decoration:none;padding:30px;font-size:18px;display:flex;align-items:end}.doctors{padding:80px 8vw;background:#1d1a17;color:#f7ecdd}.doctors p{max-width:760px;line-height:1.6}.doctors .btn{border-color:#e8dac8;color:#f7ecdd}.doctors .dark{background:#f1e4d4;color:#171512}.journal{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.journal article{border-top:1px solid var(--line);padding-top:22px}.journal span{font-style:italic}.journal h3{font-weight:400;font-size:22px}.journal p{line-height:1.5}.contact{text-align:center;padding:100px 5vw;background:#eadbc9}.contact .actions{justify-content:center}.contact-line{font:10px Arial,sans-serif;letter-spacing:.15em;margin-top:35px}footer{padding:45px 4vw;display:flex;align-items:end;justify-content:space-between;gap:30px;background:#f7ede2;border-top:1px solid var(--line)}footer p{font-size:12px}@media(max-width:850px){.nav nav{display:none}.nav{height:76px}.nav>.btn{display:none}.hero{grid-template-columns:1fr}.hero h1{font-size:48px}.hero-image{min-height:380px}.section-head,.about{grid-template-columns:1fr}.cards,.chips,.journal,.credentials{grid-template-columns:1fr}.portrait{min-height:430px}.section h2,.about h2,.doctors h2,.contact h2{font-size:34px}footer{align-items:flex-start;flex-direction:column}}

.hero-image{min-width:0;overflow:hidden}.hero-image img{width:100%;height:100%;min-height:650px;display:block;object-fit:cover;object-position:center 42%}@media(max-width:850px){.hero-image img{min-height:520px;height:520px;object-position:center 34%}}

.cards{grid-template-columns:repeat(4,1fr)}.bio-copy p{margin:0 0 16px;line-height:1.65}.before-after{background:#fbf5ed}.ba-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:40px}.ba-grid article{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ba-grid h3,.ba-grid p{grid-column:1/-1}.ba-placeholder{min-height:250px;background:#eee1d2;display:flex;align-items:center;justify-content:center;font:10px Arial,sans-serif;letter-spacing:.2em;border:1px solid #cdbda9}.hours{margin:42px auto 0;max-width:900px;padding-top:28px;border-top:1px solid #b7a58f;line-height:1.9}@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.cards,.ba-grid{grid-template-columns:1fr}.ba-grid article{grid-template-columns:1fr 1fr}}
.bio-portrait{min-height:760px;background-image:url('bio-portrait.jpg');background-size:cover;background-position:center 38%;background-repeat:no-repeat}
.contact-line a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}
@media(max-width:850px){.bio-portrait{min-height:560px;background-position:center 32%}}

/* Larger, more prominent practice contact details */
.contact-line{
  font: 17px Arial,sans-serif;
  letter-spacing:.06em;
  line-height:2;
  margin-top:38px;
  font-weight:500;
}
.contact-line a{
  font-size:17px;
}
@media(max-width:850px){
  .contact-line,.contact-line a{
    font-size:15px;
    line-height:1.8;
  }
}

/* Contact details: Times serif */
.contact-line,
.contact-line a{
  font-family:"Times New Roman", Times, serif;
}

/* Refined additions based on the approved editorial concept; original layout preserved */
.signature-refined{
  font-family:"Snell Roundhand","Segoe Script","Brush Script MT",cursive;
  font-style:italic;
  font-weight:400;
  letter-spacing:.01em;
  transform:rotate(-1deg);
}
.treatment-intro-row{display:flex;justify-content:flex-end;margin:-10px 0 24px}
.explore-treatments{font:10px Arial,sans-serif;letter-spacing:.18em;color:inherit;text-decoration:none;border-bottom:1px solid #8e7d69;padding-bottom:6px}
.cards article{position:relative;overflow:hidden}
.cards article:after{content:"";position:absolute;right:-26px;top:-26px;width:105px;height:105px;border:1px solid rgba(88,70,52,.18);border-radius:50%;box-shadow:0 0 0 16px rgba(255,255,255,.08),0 0 0 32px rgba(88,70,52,.035);pointer-events:none}
.philosophy-refined{display:grid;grid-template-columns:1.5fr 1fr;gap:60px;align-items:center;padding:58px 8vw;background:#f5eadf;border-top:1px solid #d7c8b7;border-bottom:1px solid #d7c8b7}
.philosophy-refined p:not(.eyebrow){max-width:650px;font-size:17px;line-height:1.65;margin:12px 0 0}
.philosophy-refined blockquote{margin:0;text-align:center;font-family:"Snell Roundhand","Segoe Script","Brush Script MT",cursive;font-style:italic;font-size:42px;line-height:1.18;font-weight:400}
.concern-grid > *{position:relative;padding-top:88px}
.concern-grid > *:before{content:"";position:absolute;left:0;right:0;top:0;height:72px;background:linear-gradient(145deg,#e4d3c0,#f8efe5 52%,#cdb69e);border:1px solid rgba(80,60,42,.12)}
.concern-grid > *:nth-child(2):before,.concern-grid > *:nth-child(6):before{background:radial-gradient(circle at 55% 52%,#f4eee6 0 16%,#b8a28c 17% 23%,#e7d7c5 24% 100%)}
.concern-grid > *:nth-child(5):before{background:linear-gradient(165deg,#c8c2bb,#f1ece6 48%,#9f958c)}
.journal-style-quote{margin:36px 0 0 auto;max-width:330px;padding:38px 30px;text-align:center;background:#f6ecdf;font-size:28px;font-style:italic;line-height:1.25;border:1px solid rgba(92,72,52,.12)}
.nyc-signoff{display:flex;justify-content:flex-end;align-items:flex-end;gap:24px;margin-top:32px;padding-top:22px;border-top:1px solid rgba(92,72,52,.18)}
.nyc-signoff p{font:9px Arial,sans-serif;letter-spacing:.22em;line-height:1.7;text-align:left;margin:0}
.skyline-css{width:250px;height:70px;opacity:.28;background:linear-gradient(to top,rgba(61,51,43,.8) 0 2px,transparent 2px),linear-gradient(90deg,transparent 0 5%,#5c5148 5% 9%,transparent 9% 13%,#5c5148 13% 17%,transparent 17% 23%,#5c5148 23% 29%,transparent 29% 34%,#5c5148 34% 39%,transparent 39% 44%,#5c5148 44% 50%,transparent 50% 55%,#5c5148 55% 61%,transparent 61% 67%,#5c5148 67% 72%,transparent 72% 78%,#5c5148 78% 84%,transparent 84% 89%,#5c5148 89% 94%,transparent 94%) bottom/100% 45px no-repeat;clip-path:polygon(0 100%,0 70%,5% 70%,5% 48%,9% 48%,9% 76%,13% 76%,13% 38%,17% 38%,17% 68%,23% 68%,23% 55%,29% 55%,29% 73%,34% 73%,34% 25%,36.5% 5%,39% 25%,39% 68%,44% 68%,44% 43%,50% 43%,50% 72%,55% 72%,55% 34%,61% 34%,61% 70%,67% 70%,67% 50%,72% 50%,72% 74%,78% 74%,78% 40%,84% 40%,84% 69%,89% 69%,89% 53%,94% 53%,94% 72%,100% 72%,100% 100%)}
@media(max-width:850px){.philosophy-refined{grid-template-columns:1fr;gap:28px;padding:45px 24px}.philosophy-refined blockquote{text-align:left;font-size:36px}.nyc-signoff{justify-content:space-between}.skyline-css{width:180px}}

/* Approved beige Manhattan skyline illustration */
.approved-manhattan-skyline{
  width:min(820px,66vw);
  height:165px;
  flex:0 1 820px;
  align-self:flex-end;
  background:url('beige-manhattan-skyline.png') center bottom / contain no-repeat;
}
@media(max-width:850px){
  .approved-manhattan-skyline{
    width:100%;
    height:120px;
    flex-basis:100%;
  }
}

/* Approved Manhattan illustration as footer background behind the writing */
footer{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
footer::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-4px;
  height:92%;
  background-image:
    linear-gradient(to bottom, rgba(247,239,229,.96) 0%, rgba(247,239,229,.66) 25%, rgba(247,239,229,.18) 58%, rgba(247,239,229,.04) 100%),
    url('beige-manhattan-skyline.png');
  background-repeat:no-repeat;
  background-position:center bottom;
  background-size:100% auto;
  opacity:.58;
  z-index:-1;
  pointer-events:none;
}
footer > *{
  position:relative;
  z-index:1;
}
@media(max-width:850px){
  footer::before{
    height:78%;
    background-size:auto 78%;
    background-position:center bottom;
    opacity:.48;
  }
}

/* Footer skyline placement matching the supplied reference */
footer{
  position:relative !important;
  overflow:hidden !important;
  isolation:isolate !important;
  min-height:220px;
}
footer::before{
  content:"" !important;
  position:absolute !important;
  left:24% !important;
  right:-2% !important;
  bottom:-10px !important;
  height:150px !important;
  background-image:url('beige-manhattan-skyline.png') !important;
  background-repeat:no-repeat !important;
  background-position:center bottom !important;
  background-size:100% auto !important;
  opacity:.62 !important;
  z-index:0 !important;
  pointer-events:none !important;
  -webkit-mask-image:linear-gradient(to bottom, transparent 0%, #000 24%, #000 100%);
  mask-image:linear-gradient(to bottom, transparent 0%, #000 24%, #000 100%);
}
footer > *{
  position:relative !important;
  z-index:2 !important;
}
@media(max-width:850px){
  footer{min-height:260px;}
  footer::before{
    left:0 !important;
    right:-35% !important;
    height:125px !important;
    bottom:-4px !important;
    background-size:auto 125px !important;
    background-position:center bottom !important;
    opacity:.50 !important;
  }
}

/* Lower skyline and clearer footer typography */
footer{
  min-height:245px !important;
  padding-top:34px !important;
  padding-bottom:18px !important;
}
footer::before{
  left:25% !important;
  right:-3% !important;
  bottom:-42px !important;
  height:145px !important;
  background-position:center bottom !important;
  background-size:100% auto !important;
  opacity:.56 !important;
}
footer > *{
  position:relative !important;
  z-index:3 !important;
}
/* Keep footer writing visually above the skyline */
footer .footer-inner,
footer .footer-grid,
footer .container{
  align-items:flex-start !important;
}
@media(max-width:850px){
  footer{
    min-height:285px !important;
    padding-top:30px !important;
  }
  footer::before{
    left:8% !important;
    right:-45% !important;
    bottom:-34px !important;
    height:120px !important;
    background-size:auto 120px !important;
    opacity:.46 !important;
  }
}

/* FINAL FOOTER: writing above, full skyline below — no overlap */
footer{
  position:relative !important;
  overflow:hidden !important;
  min-height:0 !important;
  padding-bottom:0 !important;
}
footer::before{
  display:none !important;
  content:none !important;
}
footer > *:not(.footer-skyline-full){
  position:relative !important;
  z-index:2 !important;
}
.footer-skyline-full{
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  width:100% !important;
  height:245px !important;
  margin-top:28px !important;
  background-image:url('beige-manhattan-skyline.png') !important;
  background-repeat:no-repeat !important;
  background-position:center bottom !important;
  background-size:contain !important;
  opacity:.82 !important;
  pointer-events:none !important;
}
@media(max-width:850px){
  .footer-skyline-full{
    height:155px !important;
    margin-top:22px !important;
    background-size:contain !important;
  }
}

/* INTEGRATED FOOTER — skyline is part of the footer, not a separate image block */
footer{
  position:relative !important;
  overflow:hidden !important;
  isolation:isolate !important;
  padding:38px 48px 0 !important;
  min-height:360px !important;
  background:#f7efe5 !important;
}
footer::after{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:-8px !important;
  height:225px !important;
  background:
    linear-gradient(to bottom, rgba(247,239,229,1) 0%, rgba(247,239,229,.60) 13%, rgba(247,239,229,0) 36%),
    url('beige-manhattan-skyline-blended.png') center bottom / 100% auto no-repeat !important;
  opacity:.76 !important;
  z-index:0 !important;
  pointer-events:none !important;
}
footer > *:not(.footer-skyline-full){
  position:relative !important;
  z-index:2 !important;
}
.footer-skyline-full{
  display:block !important;
  height:185px !important;
  margin:18px -48px 0 !important;
  background:none !important;
  opacity:0 !important;
  pointer-events:none !important;
}
@media(max-width:850px){
  footer{
    padding:30px 24px 0 !important;
    min-height:390px !important;
  }
  footer::after{
    height:175px !important;
    background:
      linear-gradient(to bottom, rgba(247,239,229,1) 0%, rgba(247,239,229,.55) 14%, rgba(247,239,229,0) 38%),
      url('beige-manhattan-skyline-blended.png') center bottom / auto 170px no-repeat !important;
    opacity:.70 !important;
  }
  .footer-skyline-full{
    height:150px !important;
    margin:15px -24px 0 !important;
  }
}

/* CLEAN FOOTER — Manhattan illustration removed completely */
footer{
  position:relative !important;
  overflow:visible !important;
  min-height:0 !important;
  padding-bottom:38px !important;
  background:#f7efe5 !important;
}
footer::before,
footer::after{
  display:none !important;
  content:none !important;
  background:none !important;
}
.footer-skyline-full,
.approved-manhattan-skyline,
.manhattan-illustration,
.manhattan-line-skyline,
.illustrated-manhattan-skyline,
.manhattan-footer-image,
.manhattan-footer-photo,
.skyline-css{
  display:none !important;
  background:none !important;
}

/* Center the Journal statement across the page */
.journal-centered-quote{
  width:100% !important;
  max-width:none !important;
  margin:34px auto !important;
  text-align:center !important;
  justify-self:center !important;
  align-self:center !important;
  grid-column:1 / -1 !important;
}

/* True page-center placement for the Journal quote */
.journal-centered-quote{
  display:block !important;
  position:relative !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:max-content !important;
  max-width:90vw !important;
  margin:42px 0 !important;
  padding:0 !important;
  text-align:center !important;
  grid-column:1 / -1 !important;
  justify-self:auto !important;
}
@media(max-width:850px){
  .journal-centered-quote{
    width:90vw !important;
  }
}

/* FINAL: quote centered across the page on one line */
.journal-centered-quote{
  display:block !important;
  position:relative !important;
  left:auto !important;
  transform:none !important;
  width:100% !important;
  max-width:none !important;
  margin:42px auto !important;
  padding:0 !important;
  text-align:center !important;
  white-space:nowrap !important;
  grid-column:1 / -1 !important;
  justify-self:stretch !important;
}
@media(max-width:850px){
  .journal-centered-quote{
    width:100% !important;
    max-width:none !important;
    white-space:nowrap !important;
    font-size:clamp(1.15rem, 5vw, 2rem) !important;
  }
}

/* Quote removed */
.journal-centered-quote{ display:none !important; }

.journal-style-quote,
.journal-centered-quote {
  display: none !important;
}

/* Journal tagline: centered directly beneath THE PERIO CHIC JOURNAL */
.journal-tagline-final{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:22px auto 36px !important;
  padding:0 16px !important;
  box-sizing:border-box !important;
  text-align:center !important;
  white-space:nowrap !important;
  position:relative !important;
  left:auto !important;
  transform:none !important;
  font-family:Georgia, "Times New Roman", serif !important;
  font-style:italic !important;
  line-height:1.2 !important;
}
@media(max-width:700px){
  .journal-tagline-final{
    font-size:clamp(1rem,4.3vw,1.55rem) !important;
    padding:0 8px !important;
  }
}

/* Tagline between Journal and consultation */
.journal-tagline-final{display:none !important;}
.journal-closing-tagline{
  width:100% !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:44px 20px 48px !important;
  text-align:center !important;
  white-space:nowrap !important;
  font-family:Georgia, "Times New Roman", serif !important;
  font-style:italic !important;
  line-height:1.2 !important;
}
@media(max-width:700px){
  .journal-closing-tagline{
    font-size:clamp(1rem,4.2vw,1.5rem) !important;
    padding:34px 8px 38px !important;
  }
}
