/* =========================================================
   DAISY'S DOG HOUSE — HOME PAGE
   Loaded last. All selectors are homepage-specific.
========================================================= */

.ddh-home{
  overflow:hidden;
  background:#faf8f6;
}

.ddh-home-shell{
  width:min(1320px,calc(100% - 64px));
  margin-inline:auto;
}

.ddh-kicker{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 18px;
  color:#a68492;
  font:700 .78rem/1.2 "Poppins",sans-serif;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.ddh-kicker::before{
  content:"";
  width:42px;
  height:1px;
  background:linear-gradient(90deg,#d4ae70,transparent);
}

.ddh-kicker--light{color:rgba(255,255,255,.9)}
.ddh-kicker--light::before{background:linear-gradient(90deg,#f1dca6,transparent)}

/* HERO */
.ddh-home-hero{
  position:relative;
  min-height:calc(100vh - 88px);
  display:flex;
  align-items:center;
  isolation:isolate;
  background:url("/assets/images/hero/hero-home.webp") center center/cover no-repeat;
}

.ddh-home-hero__wash{
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    radial-gradient(circle at 18% 16%,rgba(199,173,182,.18),transparent 32%),
    linear-gradient(90deg,#faf8f6 0%,rgba(250,248,246,.98) 19%,rgba(250,248,246,.88) 38%,rgba(250,248,246,.46) 58%,rgba(250,248,246,.06) 78%);
}

.ddh-home-hero__inner{padding:110px 0 125px}
.ddh-home-hero__copy{width:min(640px,52vw)}
.ddh-home-hero__title{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  max-width:680px;
  margin:0;
  color:#8b7185;
  line-height:1;
  letter-spacing:-.035em;
}

.ddh-home-hero__title span{
  display:block;
  font-family:"Italiana","Cormorant Garamond",serif;
  font-size:clamp(4.3rem,6.7vw,7rem);
  font-weight:400;
  line-height:.94;
}

.ddh-home-hero__title strong{
    display:block;

    /* Move Family down slightly */
    margin-top:.28em;

    /* Align the F with the text above */
    margin-left:0;

    font-family:var(--font-script,"Cormorant Garamond"),serif;
    font-size:clamp(8rem,9vw,9.2rem);
    font-weight:400;
    letter-spacing: 0.00em;

    /* Give the script a little more breathing room */
    line-height:.92;

    color:#8b7185;
}
.ddh-home-hero__body{
  max-width:560px;
  margin:32px 0 0;
  color:#575052;
  font:400 1.08rem/1.9 "Poppins",sans-serif;
}
.ddh-home-hero__actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:40px}

/* COMMON EDITORIAL STORY */
.ddh-story{position:relative;overflow:hidden;padding:150px 0}
.ddh-story__word{
  position:absolute;
  left:50%;top:30px;
  transform:translateX(-50%);
  color:#8b7185;
  font:600 clamp(10rem,22vw,20rem)/1 "Cormorant Garamond",serif;
  letter-spacing:.06em;
  opacity:.035;
  white-space:nowrap;
  pointer-events:none;
}
.ddh-story__trail{
  position:absolute;right:-110px;top:35px;width:360px;
  opacity:.045;pointer-events:none;
  animation:ddhFloat 20s ease-in-out infinite;
}
.ddh-story__grid{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1.03fr .97fr;
  gap:100px;align-items:center;
}
.ddh-story__visual{position:relative;padding:0 24px 28px 0}
.ddh-story__matte{
  position:absolute;inset:30px 0 0 30px;
  border-radius:42px;
  background:linear-gradient(145deg,rgba(199,173,182,.48),rgba(112,71,163,.13));
}
.ddh-story__photo,.ddh-nita__photo{
  position:relative;z-index:2;display:block;width:100%;
  border-radius:42px;object-fit:cover;
  box-shadow:0 42px 92px rgba(63,42,59,.17);
  transition:transform .8s cubic-bezier(.16,1,.3,1),box-shadow .8s ease;
}
.ddh-story__photo{aspect-ratio:4/5;object-position:center}
.ddh-story__visual:hover .ddh-story__photo,.ddh-nita__visual:hover .ddh-nita__photo{
  transform:translateY(-9px) scale(1.012);
  box-shadow:0 58px 110px rgba(63,42,59,.21);
}
.ddh-story__caption{
  position:absolute;right:-18px;bottom:0;z-index:3;
  padding:16px 22px;border-radius:18px;
  background:rgba(255,255,255,.93);backdrop-filter:blur(14px);
  border:1px solid rgba(199,173,182,.3);
  color:#8b7185;font:500 .85rem/1.3 "Poppins",sans-serif;
  box-shadow:0 16px 36px rgba(63,42,59,.1);
}
.ddh-story__content{position:relative;z-index:2}
.ddh-story__title{
  margin:0 0 30px;
  line-height:1;
}

.ddh-story__title span{
  display:block;
  margin-bottom:10px;
  color:#302c2f;
  font:500 clamp(3.5rem,5vw,5.4rem)/.92 "Cormorant Garamond",serif;
}

.ddh-story__title strong{
  display:block;
  margin-left:24px;
  color:#8b7185;
  font:400 clamp(5.4rem,7.5vw,8rem)/.82 var(--font-script,"Cormorant Garamond"),serif;
}
.ddh-story__lead{
  margin:0 0 28px;color:#b08495;
  font:400 clamp(1.75rem,2.6vw,2.6rem)/1.18 "Cormorant Garamond",serif;
}
.ddh-story__panel{
  margin:0 0 30px;padding:32px 34px;border-radius:28px;
  background:rgba(255,255,255,.82);backdrop-filter:blur(18px);
  border:1px solid rgba(199,173,182,.28);
  box-shadow:0 22px 54px rgba(63,42,59,.08);
}
.ddh-story__panel p,.ddh-nita__content>p:not(.ddh-kicker):not(.ddh-story__lead){
  margin:0 0 16px;color:#575052;font:400 1rem/1.85 "Poppins",sans-serif;
}
.ddh-story__panel p:last-child,.ddh-nita__content>p:last-of-type{margin-bottom:0}
.ddh-paw-divider{

display:flex;

justify-content:center;

align-items:center;

gap:16px;

margin:34px 0;

}
.ddh-paw-divider span{flex:1;max-width:100px;height:1px;background:linear-gradient(90deg,transparent,#d4ae70,transparent)}
.ddh-paw-divider img{width:34px;height:34px;object-fit:contain}
.ddh-story--daisy{background:radial-gradient(circle at 5% 5%,rgba(199,173,182,.18),transparent 34%),#fbf9f7}

/* PROMISE */
.ddh-promise{
  position:relative;overflow:hidden;padding:110px 0;color:#fff;
  background:
    radial-gradient(circle at 10% 0%,rgba(255,255,255,.12),transparent 35%),
    linear-gradient(125deg,#795b73 0%,#92758b 43%,#b694a5 76%,#c7adb6 100%);
}
.ddh-promise::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(110deg,transparent 10%,rgba(255,255,255,.05) 48%,transparent 85%);
  animation:ddhGlow 12s ease-in-out infinite alternate;
}
.ddh-promise__trail{position:absolute;right:-70px;top:-160px;width:520px;opacity:.035;pointer-events:none}
.ddh-promise__inner{
  position:relative;
  z-index:2;
  width:min(1500px,calc(100% - 48px));
  max-width:none;
  margin-inline:auto;
  text-align:center;
}
.ddh-promise .ddh-kicker{justify-content:center}
.ddh-promise h2{
  margin:0;
  color:#fff;
  letter-spacing:-.025em;
}

.ddh-promise h2 > span{
  display:block;
  white-space:nowrap;
  font:400 clamp(3.4rem,5.4vw,6.3rem)/.94
    "Italiana","Cormorant Garamond",serif;
}

.ddh-promise h2 em{
  display:block;
  margin-top:.08em;
  color:#f4e2e9;
  font-family:var(--font-script,"Verandah"),cursive;
  font-size:clamp(5.5rem,8vw,9rem);
  font-style:normal;
  font-weight:400;
  line-height:.82;
}
.ddh-promise p:not(.ddh-kicker){max-width:760px;margin:28px auto 0;color:rgba(255,255,255,.9);font:500 1.04rem/1.9 "Poppins",sans-serif}
.ddh-paw-divider--light{justify-content:center;margin:38px auto 0}
.ddh-paw-divider--light span{background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent)}
.ddh-paw-divider--light img{filter:brightness(0) invert(1);opacity:.72}

/* SERVICES */
.ddh-services{position:relative;padding:150px 0 170px;background:#f8f3f4}
.ddh-section-heading{max-width:800px;margin:0 auto 72px;text-align:center}
.ddh-section-heading .ddh-kicker{justify-content:center}
.ddh-section-heading h2{
  margin:0;color:#312c30;
  font:400 clamp(3.3rem,5.5vw,5.7rem)/.95 "Italiana","Cormorant Garamond",serif;
  letter-spacing:-.025em;
}
.ddh-section-heading>p:last-child{max-width:680px;margin:24px auto 0;color:#6c6468;font:400 1rem/1.85 "Poppins",sans-serif}
.ddh-services__grid{
  display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:115px;gap:24px;
}
.ddh-service{position:relative;overflow:hidden;border-radius:34px;isolation:isolate;box-shadow:0 22px 54px rgba(64,42,58,.12);transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s ease}
.ddh-service--boarding{grid-column:1/5;grid-row:1/6}
.ddh-service--grooming{
  grid-column:5/9;
  grid-row:1/6;
  margin-top:0;
}
.ddh-service--spa{grid-column:9/13;grid-row:1/6}
.ddh-service--daycare{grid-column:4/10;grid-row:6/10;margin-top:18px}
.ddh-service>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s ease}
.ddh-service--grooming>img{
  object-position:center 22%;
}

.ddh-service--daycare>img{
    object-position:center;
}
.ddh-service__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(30,20,32,.02) 20%,rgba(47,31,49,.28) 55%,rgba(39,25,42,.91) 100%);transition:background .5s ease}
.ddh-service__copy{position:absolute;inset:auto 0 0;z-index:2;padding:34px;color:#fff}
.ddh-service__copy small{display:block;margin-bottom:9px;color:#f5e8d0;font:700 .72rem/1.3 "Poppins",sans-serif;letter-spacing:.14em;text-transform:uppercase}
.ddh-service__copy strong{display:block;font:400 clamp(2.6rem,3.4vw,4rem)/.9 "Cormorant Garamond",serif;letter-spacing:-.02em}
.ddh-service__copy>span{display:flex;align-items:center;gap:8px;margin-top:22px;color:#fff;font:600 .85rem/1.2 "Poppins",sans-serif;opacity:.9}
.ddh-service__copy svg{width:17px;height:17px;transition:transform .35s ease}
.ddh-service:hover{
    transform:translateY(-18px) scale(1.015);
    box-shadow:0 55px 100px rgba(64,42,58,.22);
}
.ddh-service:hover>img{transform:scale(1.055)}
.ddh-service:hover .ddh-service__veil{background:linear-gradient(180deg,rgba(30,20,32,.01) 10%,rgba(112,71,163,.18) 55%,rgba(39,25,42,.82) 100%)}
.ddh-service:hover .ddh-service__copy svg{transform:translateX(4px)}

/* NITA */
.ddh-story--nita{background:radial-gradient(circle at 92% 8%,rgba(212,174,112,.12),transparent 32%),#fff}
.ddh-story__word--nita{left:auto;right:-80px;transform:none;font-size:clamp(9rem,18vw,16rem)}
.ddh-nita__grid{position:relative;z-index:2;display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center}
.ddh-nita__content{max-width:590px}
.ddh-story__title--nita strong{
  margin-left:0;
  margin-top:8px;
  font-size:clamp(5rem,7vw,7.6rem);
  line-height:.84;
}
.ddh-nita__visual{position:relative;padding:0 0 30px 24px}
.ddh-story__matte--nita{inset:30px 30px 0 0;background:linear-gradient(145deg,rgba(212,174,112,.24),rgba(199,173,182,.28))}
.ddh-nita__photo{aspect-ratio:4/5;object-position:center}
.ddh-nita__quote{
  position:absolute;left:-42px;bottom:0;z-index:3;max-width:310px;
  padding:22px 26px;border-radius:22px;background:#8b7185;color:#fff;
  font:italic 500 1.2rem/1.35 "Cormorant Garamond",serif;
  box-shadow:0 20px 46px rgba(63,42,59,.2);
}
.ddh-suites{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:30px 0}
.ddh-suites span{padding:14px 16px;border-radius:14px;background:#fbf9f7;border:1px solid rgba(199,173,182,.38);color:#8b7185;font:500 1rem/1.3 "Cormorant Garamond",serif;box-shadow:0 8px 20px rgba(63,42,59,.05)}

/* DIFFERENCE */
.ddh-difference{position:relative;padding:150px 0 175px;background:#f4edef}
.ddh-section-heading--left{max-width:920px;margin-left:0;text-align:left}
.ddh-section-heading--left .ddh-kicker{justify-content:flex-start}
.ddh-difference__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}
.ddh-difference__card{position:relative;min-height:330px;padding:38px;border-radius:30px;background:rgba(255,255,255,.76);backdrop-filter:blur(16px);border:1px solid rgba(199,173,182,.28);box-shadow:0 20px 48px rgba(63,42,59,.08);transition:transform .45s ease,box-shadow .45s ease}
.ddh-difference__card--lifted{margin-top:55px}
.ddh-difference__card>span{color:#d4ae70;font:700 .78rem/1 "Poppins",sans-serif;letter-spacing:.18em}
.ddh-difference__card h3{margin:70px 0 18px;color:#8b7185;font:500 clamp(2rem,3vw,3rem)/1 "Cormorant Garamond",serif}
.ddh-difference__card p{margin:0;color:#655d61;font:400 .96rem/1.8 "Poppins",sans-serif}
.ddh-difference__card:hover{transform:translateY(-8px);box-shadow:0 34px 68px rgba(63,42,59,.13)}

/* CTA */
.ddh-cta{position:relative;overflow:hidden;padding:105px 0;background:linear-gradient(120deg,#faf8f6,#f4ecef)}
.ddh-cta__paw{position:absolute;left:4%;top:50%;transform:translateY(-50%);width:150px;opacity:.12;filter:drop-shadow(0 18px 28px rgba(112,71,163,.12))}
.ddh-cta__trail{position:absolute;right:7%;top:-180px;width:320px;opacity:.035;pointer-events:none}
.ddh-cta__inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:70px;align-items:center;padding-left:190px}
.ddh-cta h2{max-width:760px;margin:0;color:#8b7185;font:400 clamp(3.1rem,5.2vw,5.5rem)/.94 "Cormorant Garamond",serif;letter-spacing:-.025em}
.ddh-cta p:not(.ddh-kicker){margin:20px 0 0;color:#6c6468;font:400 1rem/1.75 "Poppins",sans-serif}
.ddh-cta .button{min-width:220px}

@keyframes ddhFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
@keyframes ddhGlow{from{transform:translateX(-3%)}to{transform:translateX(3%)}}

@media (max-width:1100px){
  .ddh-home-shell{width:min(100% - 40px,1080px)}
  .ddh-story__grid,.ddh-nita__grid{gap:58px}
  .ddh-services__grid{grid-auto-rows:105px}
  .ddh-cta__inner{padding-left:150px;gap:36px}
}

@media (max-width:900px){
  .ddh-home-hero{min-height:760px;background-position:76% center}
  .ddh-home-hero__copy{width:min(600px,72vw)}
  .ddh-story,.ddh-services,.ddh-difference{padding:110px 0}
  .ddh-promise h2 > span{
  white-space:normal;
}
  .ddh-story__grid,.ddh-nita__grid{grid-template-columns:1fr;gap:64px}
  .ddh-nita__content{max-width:none}
  .ddh-nita__visual{order:-1;max-width:680px;margin-inline:auto}
  .ddh-services__grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:auto}
  .ddh-service,.ddh-service--boarding,.ddh-service--grooming,.ddh-service--spa,.ddh-service--daycare{grid-column:auto;grid-row:auto;margin:0;min-height:520px}
  .ddh-difference__grid{grid-template-columns:1fr}
  .ddh-difference__card--lifted{margin-top:0}
  .ddh-cta__paw{left:2%;width:110px}
  .ddh-cta__inner{padding-left:120px;grid-template-columns:1fr;gap:32px}
}

@media (max-width:640px){

  .ddh-home-shell{
    width:calc(100% - 44px);
  }

  .ddh-home-hero{

    min-height:680px;

    background:
      url("/assets/images/mobile-hero/hero-home.webp")
      center center / cover
      no-repeat;

  }

  .ddh-home-hero__wash{

    background:
      linear-gradient(
        90deg,
        rgba(250,248,246,.97),
        rgba(250,248,246,.88) 58%,
        rgba(250,248,246,.22)
      );

  }

  .ddh-home-hero__inner{

    padding:88px 0 80px;

  }

  .ddh-home-hero__copy{

    width:100%;

    padding-right:8px;

  }

  .ddh-home-hero__title span{

    font-size:clamp(3.2rem,13vw,4.6rem);

  }

  .ddh-home-hero__title strong{

    margin-top:.18em;

    font-size:clamp(5.6rem,21vw,7rem);

    line-height:.84;

  }

  .ddh-home-hero__body{

    max-width:92%;

    font-size:1rem;

    line-height:1.8;

  }

  .ddh-home-hero__actions{

    flex-direction:column;

    align-items:stretch;

  }

}

/* =========================================================
   MOBILE POLISH — CLIENT REVIEW PASS
========================================================= */
@media (max-width:640px){
  .ddh-story--daisy{padding-top:72px}
  .ddh-story__grid{gap:42px}
  .ddh-story__content{min-width:0}
  .ddh-story__content{

padding-inline:6px;

}

.ddh-home-hero__copy{

padding-inline:4px;

}
  .ddh-story__title{margin-bottom:24px;line-height:1}
  .ddh-story__title span{font-size:clamp(3.1rem,14vw,4.25rem);line-height:.92}
  .ddh-story__title strong{
    margin-top:.12em;
    margin-left:0;
    font-size:clamp(4.85rem,21vw,6.15rem);
    line-height:.86;
  }
  .ddh-story__lead{font-size:clamp(1.55rem,7.2vw,1.9rem);line-height:1.24}
  .ddh-story__panel{padding:24px 22px;border-radius:24px}
  .ddh-story__panel p{font-size:.95rem;line-height:1.75}

  .ddh-promise{padding:76px 0 82px}
  .ddh-promise__inner{width:calc(100% - 30px)}
  .ddh-promise h2{letter-spacing:-.02em}
  .ddh-promise h2 > span{
    font-size:clamp(2.65rem,11.7vw,3.65rem);
    line-height:1.02;
    white-space:normal;
  }
  .ddh-promise h2 em{
    margin-top:.18em;
    font-size:clamp(4rem,17.5vw,5.35rem);
    line-height:.88;
  }
  .ddh-promise p:not(.ddh-kicker){font-size:.94rem;line-height:1.72;margin-top:26px}
  .ddh-paw-divider--light{margin-top:30px}

  .ddh-section-heading{margin-bottom:46px}
  .ddh-section-heading h2{
    font-size:clamp(3rem,13vw,4.1rem);
    line-height:.98;
    overflow-wrap:anywhere;
  }
  .ddh-section-heading>p:last-child{font-size:.95rem;line-height:1.72}
}
