:root{--tiffany:#62d3cf;--deep:#0d7478;--orange:#ef7d35;--ink:#173036;--cream:#fbfaf6;--silver:#aeb8bd;--white:#fff;--shadow:0 24px 70px rgba(23,48,54,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}img{display:block;width:100%}a{color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid rgba(23,48,54,.08)}.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0}.logo{text-decoration:none;display:flex;flex-direction:column;line-height:1}.logo-script{font-family:Georgia,serif;font-size:1.9rem;font-style:italic;color:#8c979c}.logo-sub{font-size:.67rem;font-weight:800;letter-spacing:.2em;margin-top:4px}.nav{display:flex;align-items:center;gap:24px}.nav a{text-decoration:none;font-weight:700;font-size:.92rem}.nav a:hover{color:var(--deep)}.menu{display:none;background:none;border:1px solid var(--ink);border-radius:999px;padding:8px 13px;font-weight:700}
.hero{position:relative;min-height:86vh;display:flex;align-items:center;background:url('assets/hero.jpg') center 20%/cover no-repeat;color:white}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,29,34,.86),rgba(9,29,34,.5) 46%,rgba(9,29,34,.06) 78%)}.hero-content{position:relative;max-width:760px;padding:90px 0}.eyebrow{font-size:.78rem;letter-spacing:.17em;font-weight:800;color:var(--orange);margin:0 0 14px}.eyebrow.light{color:var(--tiffany)}h1,h2,h3{font-family:Georgia,serif;line-height:1.08;margin-top:0}h1{font-size:clamp(3.6rem,8vw,7rem);letter-spacing:-.05em;margin-bottom:20px}h2{font-size:clamp(2.4rem,5vw,4.6rem);letter-spacing:-.04em;margin-bottom:18px}h3{font-size:1.55rem;margin-bottom:8px}.lead{font-size:1.15rem;max-width:650px}.tagline{font-weight:800;color:var(--tiffany);letter-spacing:.04em;margin-top:18px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;text-decoration:none;font-weight:800;transition:.2s}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.15)}.primary{background:var(--orange);color:white}.secondary{border:2px solid currentColor}.cream{background:white;color:var(--ink)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0}
.specialties{background:var(--ink);color:white;padding:20px 0}.specialties .wrap{display:flex;gap:18px 48px;justify-content:center;flex-wrap:wrap;font-weight:800;letter-spacing:.04em}.section{padding:100px 0}.section-head{max-width:850px;margin-bottom:46px}.section-head p:last-child{max-width:700px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:white;border-radius:24px;overflow:hidden;box-shadow:0 14px 42px rgba(23,48,54,.08)}.card img{height:280px;object-fit:cover;object-position:center top}.card-body{padding:28px}.soft{background:#e9f8f7}.dark{background:var(--ink);color:white}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.portrait{height:640px;object-fit:cover;object-position:center top;border-radius:42% 42% 20px 20px;box-shadow:var(--shadow)}.points{display:grid;gap:12px;margin-top:26px}.point{padding:15px 0;border-bottom:1px solid rgba(23,48,54,.12)}.point strong,.point span{display:block}.point strong{color:var(--deep)}
.feature{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--ink);color:white}.feature-copy{padding:90px max(24px,6vw)}.feature-gallery{display:grid;grid-template-columns:1fr 1fr}.feature-gallery img{height:50%;min-height:300px;object-fit:cover;object-position:center top}.feature ul{padding-left:20px;margin:25px 0 32px}.quote{padding:78px 0;background:var(--tiffany);text-align:center}.quote blockquote{max-width:900px;margin:0 auto 12px;font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.8rem);line-height:1.18}.tips-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tip{background:white;border-radius:18px;padding:24px;border:1px solid rgba(23,48,54,.08)}.tip a{text-decoration:none;color:var(--deep);font-weight:800}.contact{display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:center}.footer{background:white;border-top:1px solid rgba(23,48,54,.08);padding:32px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a{text-decoration:none;font-weight:700}.small{font-size:.84rem;color:#66777c}
.page-hero{padding:90px 0;background:linear-gradient(135deg,#e3f6f5,#fff)}.page-hero h1{color:var(--ink);font-size:clamp(3rem,6vw,5.6rem)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery img{height:300px;object-fit:cover;object-position:center top;border-radius:18px}.business-hero{position:relative;min-height:70vh;display:flex;align-items:center;background:url('assets/business1.jpg') center 18%/cover no-repeat;color:white}.business-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,29,34,.88),rgba(9,29,34,.42))}.business-hero .wrap{position:relative}.business-note{background:#f6f7f7;border-left:4px solid var(--orange);padding:18px}.reveal{opacity:0;transform:translateY(22px);transition:.65s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.menu{display:block}.nav{display:none;position:absolute;left:20px;right:20px;top:74px;background:white;flex-direction:column;align-items:stretch;padding:20px;border-radius:16px;box-shadow:var(--shadow)}.nav.open{display:flex}.grid3,.tips-grid{grid-template-columns:1fr}.card img{height:360px;object-position:center top}.split,.contact,.feature{grid-template-columns:1fr}.feature-gallery img{min-height:240px}.portrait{height:520px}.gallery{grid-template-columns:1fr 1fr}.hero{min-height:780px;background-position:62% 18%}.hero:before{background:linear-gradient(0deg,rgba(9,29,34,.9),rgba(9,29,34,.18) 80%)}.hero-content{align-self:flex-end}.footer-inner{flex-direction:column;text-align:center}}
@media(max-width:560px){.actions{flex-direction:column}.btn{width:100%}.section{padding:72px 0}.gallery{grid-template-columns:1fr}.gallery img{height:320px;object-position:center top}.feature-gallery img{min-height:240px;object-position:center top}.portrait{height:430px}.specialties .wrap{justify-content:flex-start}}

.self-serve-panel{background:white;border-radius:24px;padding:38px;box-shadow:var(--shadow);border-top:6px solid var(--tiffany)}
.self-serve-panel h3{font-size:2rem}
@media(max-width:560px){.self-serve-panel{padding:26px}}

/* Photo framing fix: preserve original photos and keep faces/heads in frame. */
.card img,
.gallery img,
.feature-gallery img,
.portrait {
  object-position: center top;
}

/* Final brand logo integration. Existing site design remains unchanged. */
.logo-image{
  display:flex;
  align-items:center;
  flex-shrink:0;
}
.brand-logo{
  display:block;
  width:auto;
  object-fit:contain;
}
.brand-logo-header{
  height:68px;
  max-width:210px;
}
.brand-logo-footer{
  height:105px;
  max-width:285px;
}
@media(max-width:900px){
  .brand-logo-header{height:56px;max-width:170px}
  .brand-logo-footer{height:90px;max-width:230px}
}
@media(max-width:560px){
  .brand-logo-header{height:48px;max-width:145px}
  .brand-logo-footer{height:78px;max-width:205px}
}

/* FINAL HERO + LOGO CORRECTION */
.header{overflow:visible}
.brand-logo-header{
  height:74px;
  max-width:250px;
  background:transparent !important;
}
.brand-logo-footer{
  background:transparent !important;
}

/* Keep hero copy off Alisa's face on wide screens */
.hero-content{
  max-width:560px !important;
  padding-left:clamp(24px,5vw,76px) !important;
  padding-right:20px !important;
  align-self:flex-end !important;
  padding-bottom:72px !important;
}
.hero-content h1{
  font-size:clamp(3.0rem,5.2vw,5.8rem) !important;
  line-height:.98 !important;
  max-width:540px !important;
}
.hero-overlay{
  background:linear-gradient(90deg,rgba(12,34,39,.84) 0%,rgba(12,34,39,.58) 34%,rgba(12,34,39,.16) 57%,rgba(12,34,39,.03) 78%) !important;
}
.hero{
  background-position:58% 20% !important;
}

/* Tablet/iPad: keep copy on lower-left and preserve face */
@media(max-width:1100px){
  .hero-content{
    max-width:500px !important;
    padding-bottom:54px !important;
  }
  .hero-content h1{
    font-size:clamp(2.7rem,5.5vw,4.8rem) !important;
    max-width:480px !important;
  }
  .hero{
    background-position:60% 18% !important;
  }
}

/* Phone: text sits below the face area */
@media(max-width:700px){
  .hero{
    min-height:820px !important;
    background-position:62% 12% !important;
  }
  .hero-content{
    max-width:none !important;
    padding:430px 22px 42px !important;
    align-self:stretch !important;
  }
  .hero-content h1{
    font-size:3rem !important;
    max-width:none !important;
  }
  .hero-overlay{
    background:linear-gradient(0deg,rgba(12,34,39,.90) 0%,rgba(12,34,39,.62) 45%,rgba(12,34,39,.08) 74%) !important;
  }
  .brand-logo-header{
    height:56px !important;
    max-width:190px !important;
  }
}
