/* Homepage-specific refinements kept separate from the legacy stylesheet. */
.v2-home .redesign-header .menu-toggle{display:grid!important;place-items:center!important;width:3.4rem!important;height:3.4rem!important;min-width:3.4rem!important;min-height:3.4rem!important;padding:0!important;border:1px solid currentColor!important;border-radius:50%!important;background:rgba(245,244,240,.78)!important;color:#171717!important;font-size:0!important;transform:none!important}
.v2-home .redesign-header .menu-toggle::before{content:''!important;display:block;width:1.35rem;height:.82rem;background:linear-gradient(to bottom,currentColor 0 2px,transparent 2px 5px,currentColor 5px 7px,transparent 7px 10px,currentColor 10px 12px)!important}
.v2-home .v2-photo-panel .v2-img-birds{background-image:url('assets/images/hero-flicker/482.jpg')!important;filter:none!important}
.v2-home .v2-img-team{background-image:url('assets/images/ijpj.png')!important;filter:grayscale(1)!important}
.v2-home .v2-testimonial>.v2-photo{background-image:url('assets/images/hero-flicker/436.jpg')!important}
.v2-home .v2-feeling-sequence{height:560vh!important;min-height:0!important;position:relative!important;top:auto!important;overflow:visible!important;background:#151515}
.v2-home .v2-feeling-sticky{position:sticky;top:0;height:100svh;min-height:40rem;overflow:hidden;background:#151515}
.v2-home .v2-feeling-sticky>.v2-img-birds{position:absolute;inset:0;height:100%;background-position:center;background-size:cover}
.v2-home .v2-feeling-overlays{position:absolute;inset:0;z-index:1;pointer-events:none;background:transparent}
.v2-home .v2-feeling-image{position:absolute;inset:auto;width:clamp(12rem,20vw,20rem);height:clamp(17rem,31vw,31rem);background-position:center;background-size:cover;background-repeat:no-repeat;opacity:0;transform:translate3d(0,100vh,0) scale(.96);border:1px solid rgba(255,255,255,.42);box-shadow:0 1.5rem 3rem rgba(0,0,0,.24);transition:opacity .18s ease-out;will-change:opacity,transform}
.v2-home .v2-feeling-image.is-current{opacity:1;transform:translateY(0) scale(1)}
.v2-home .v2-feeling-image:nth-child(1){top:12%;left:10%}
.v2-home .v2-feeling-image:nth-child(2){top:9%;right:12%;width:clamp(17rem,30vw,30rem);height:clamp(11rem,20vw,20rem)}
.v2-home .v2-feeling-image:nth-child(3){top:18%;left:39%}
.v2-home .v2-feeling-image:nth-child(4){right:27%;bottom:10%;width:clamp(12rem,18vw,18rem);height:clamp(17rem,28vw,28rem)}
.v2-home .v2-feeling-image:nth-child(5){left:8%;bottom:9%;width:clamp(18rem,31vw,31rem);height:clamp(12rem,20vw,20rem)}
.v2-home .v2-feeling-image:nth-child(6){right:7%;bottom:13%}
.v2-home .v2-feeling-image:nth-child(7){top:10%;left:43%}
.v2-home .v2-feeling-image:nth-child(8){right:34%;bottom:8%;width:clamp(17rem,27vw,27rem);height:clamp(12rem,19vw,19rem)}
.v2-home .v2-feeling-image:nth-child(9){left:20%;top:25%}
.v2-home .v2-feeling-image:nth-child(10){right:17%;top:23%}
.v2-home .v2-feeling-image:nth-child(11){left:9%;top:17%}
.v2-home .v2-feeling-image:nth-child(12){right:10%;bottom:9%}
.v2-home .v2-feeling-sticky:after{content:'';position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.18));pointer-events:none}
.v2-home .v2-feeling-sticky .v2-photo-caption{z-index:3}
.v2-home .v2-manifesto .v2-script{display:none}
.v2-home .reference-half .reference-image{filter:none!important}
.v2-home .v2-manifesto .v2-mini-gallery{display:none}
.v2-home .v2-manifesto h2 em{display:inline-block;text-transform:lowercase!important;font-style:italic!important}
.v2-home .v2-team-copy h2 em{text-transform:lowercase!important;font-style:italic!important}
.v2-home .v2-manifesto h2 span{text-transform:uppercase!important;font-style:normal!important}

/* Keep the manifesto's dark treatment consistent on mobile too. */
.v2-home .v2-manifesto{
  background-color:#151515!important;
  color:#fff!important;
}
.site-header .menu-toggle{display:grid!important;place-items:center!important;position:absolute!important;top:1.25rem!important;right:var(--gutter)!important;left:auto!important;width:3.4rem!important;height:3.4rem!important;min-width:3.4rem!important;min-height:3.4rem!important;padding:0!important;border:1px solid currentColor!important;border-radius:50%!important;background:rgba(245,244,240,.78)!important;color:#171717!important;font-size:0!important;transform:none!important;z-index:22!important}.site-header .menu-toggle::before{content:'';display:block;width:1.35rem;height:.82rem;background:linear-gradient(to bottom,currentColor 0 2px,transparent 2px 5px,currentColor 5px 7px,transparent 7px 10px,currentColor 10px 12px)}.site-header .menu-toggle[aria-expanded='true']::before{height:1.2rem;background:linear-gradient(45deg,transparent 44%,currentColor 45% 55%,transparent 56%),linear-gradient(-45deg,transparent 44%,currentColor 45% 55%,transparent 56%)}
.v2-home .v2-manifesto > p,
.v2-home .v2-manifesto .v2-link{
  color:#fff!important;
}
.v2-home .v2-word-row{position:relative;width:100%;overflow:hidden;display:block;white-space:nowrap;font-family:'Editors Note',Georgia,serif;font-weight:100;font-size:clamp(1.7rem,3.2vw,3.2rem);letter-spacing:.02em;text-transform:uppercase}
.v2-home .v2-word-track{display:flex;width:max-content;align-items:center;gap:clamp(3rem,8vw,9rem);animation:willowWordMarquee 28s linear infinite;will-change:transform}
.v2-home .v2-word-track span{display:block;font-weight:100;letter-spacing:.02em}
.v2-home .v2-statement h2{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;max-width:76rem;color:#fff;text-transform:none!important}
.v2-home .v2-statement h2 .statement-line{display:block;width:100%;text-align:center;font-style:normal!important;text-transform:uppercase!important;white-space:nowrap}
.v2-home .v2-statement h2 .statement-where,.v2-home .v2-statement h2 .statement-becomes{font-style:normal!important;text-transform:uppercase!important}
.v2-home .v2-statement h2 .statement-changing{display:flex;align-items:center;justify-content:center;height:1.05em;min-width:clamp(12rem,30vw,28rem);width:clamp(12rem,30vw,28rem);line-height:1}
.v2-home .v2-statement h2 .statement-love{display:inline-block;font-style:italic!important;text-transform:lowercase!important;white-space:nowrap}
@keyframes willowWordMarquee{to{transform:translateX(-50%)}}
@media(max-width:700px){.v2-home .v2-word-row{font-size:1.45rem}.v2-home .v2-word-track{gap:3rem;animation-duration:22s}.v2-home .v2-statement h2{font-size:clamp(3.1rem,14vw,5.4rem)}.v2-home .v2-statement h2 .statement-changing{width:clamp(10rem,42vw,17rem)}}
@media(max-width:700px){.v2-home .v2-feeling-sequence{height:440vh!important}.v2-home .v2-feeling-sticky{min-height:0}.v2-home .v2-feeling-image{width:58vw;height:72vw;transition-duration:.55s}.v2-home .v2-feeling-image:nth-child(1){top:12%;left:6%}.v2-home .v2-feeling-image:nth-child(2){top:10%;right:5%;width:68vw;height:45vw}.v2-home .v2-feeling-image:nth-child(3){top:28%;left:22%}.v2-home .v2-feeling-image:nth-child(4){right:5%;bottom:9%}.v2-home .v2-feeling-image:nth-child(5){left:5%;bottom:12%;width:68vw;height:45vw}.v2-home .v2-feeling-image:nth-child(6){right:7%;bottom:18%}.v2-home .v2-feeling-image:nth-child(7){top:12%;left:34%}.v2-home .v2-feeling-image:nth-child(8){right:8%;bottom:10%;width:68vw;height:45vw}.v2-home .v2-feeling-image:nth-child(9){left:7%;top:30%}.v2-home .v2-feeling-image:nth-child(10){right:6%;top:26%}.v2-home .v2-feeling-image:nth-child(11){left:4%;top:16%}.v2-home .v2-feeling-image:nth-child(12){right:6%;bottom:8%}}
@media(prefers-reduced-motion:reduce){.v2-home .v2-word-track{animation:none}}
.v2-home .v2-experience-callout{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(3rem,7vw,7rem) clamp(1.25rem,6vw,7rem);background:#e7eaeb;color:#151515}
.v2-home .v2-experience-callout .v2-eyebrow{display:block;margin-bottom:1.6rem}
.v2-home .v2-experience-callout p{max-width:50rem;margin:0;font-family:'Editors Note',Georgia,serif;font-size:clamp(2rem,4.8vw,5.3rem);line-height:.96;letter-spacing:-.03em;text-transform:uppercase}
.v2-home .v2-experience-callout p em{font-style:italic;text-transform:none}
.v2-home .v2-experience-callout .v2-link{flex:0 0 auto}
.v2-home .v2-instagram{padding:clamp(4rem,9vw,9rem) clamp(1.25rem,5vw,5rem);background:#e7eaeb;color:#151515}
.v2-home .v2-instagram-heading{text-align:center;margin:0 auto clamp(3rem,7vw,6rem);display:flex;flex-direction:column;align-items:center;gap:2rem}
.v2-home .v2-instagram-heading h2{margin:0;font-family:'Editors Note',Georgia,serif;font-size:clamp(3rem,8vw,8rem);line-height:.86;font-weight:400;letter-spacing:-.04em;text-transform:uppercase}
.v2-home .v2-instagram-heading h2 em{font-style:italic;text-transform:none}
/* Keep the Instagram lockup in the same light Editors Note hairline as the rest of the editorial system. */
.v2-home .v2-instagram-heading h2,.v2-home .v2-instagram-heading h2 em{font-family:'Editors Note',Georgia,serif!important;font-weight:100!important}
.v2-home .v2-instagram-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:clamp(.6rem,2.2vw,2.2rem);align-items:end}
.v2-home .v2-instagram-grid a:nth-child(2),.v2-home .v2-instagram-grid a:nth-child(4){padding-bottom:clamp(2rem,6vw,6rem)}
.v2-home .v2-instagram-grid .v2-photo{height:clamp(14rem,32vw,32rem);background-position:center;background-size:cover}
.v2-home .v2-img-instagram-1{background-image:url('assets/images/feeling-sequence/03.jpg')!important}
.v2-home .v2-img-instagram-2{background-image:url('assets/images/feeling-sequence/05.jpg')!important}
.v2-home .v2-img-instagram-3{background-image:url('assets/images/feeling-sequence/09.jpg')!important}
.v2-home .v2-img-instagram-4{background-image:url('assets/images/feeling-sequence/11.jpg')!important}
.v2-home .redesign-footer .booking-note{max-width:28rem}
@media(max-width:700px){.v2-home .v2-experience-callout{display:block;padding:4rem 1.2rem}.v2-home .v2-experience-callout .v2-link{display:inline-flex;margin-top:2rem}.v2-home .v2-instagram{padding:4.5rem 1.2rem}.v2-home .v2-instagram-grid{grid-template-columns:1fr 1fr;gap:.75rem}.v2-home .v2-instagram-grid a:nth-child(2),.v2-home .v2-instagram-grid a:nth-child(4){padding-bottom:2rem}.v2-home .v2-instagram-grid .v2-photo{height:48vw}}
.v2-home .v2-feeling-sequence{height:1400vh!important}
.v2-home .v2-feeling-overlays{top:50%!important;left:clamp(1.25rem,6vw,6rem)!important;right:auto!important;inset-block-end:auto!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:clamp(1.3rem,2.2vw,2rem)!important;width:max-content!important;height:max-content!important;transform:translate3d(0,100vh,0);transition:transform .12s linear;will-change:transform}
.v2-home .v2-feeling-image{position:relative!important;inset:auto!important;flex:0 0 auto!important;width:clamp(14.25rem,21.75vw,19.5rem)!important;height:clamp(21.3rem,33vw,29.4rem)!important;border:0!important;box-shadow:0 1.5rem 3rem rgba(0,0,0,.28);opacity:1!important;transform:none!important;transition:none!important}
@media(max-width:700px){.v2-home .v2-feeling-sequence{height:1500vh!important}.v2-home .v2-feeling-overlays{left:1.2rem!important;gap:2.8rem!important}.v2-home .v2-feeling-image{flex-basis:auto!important;width:66vw!important;height:93vw!important}}
.v2-home .v2-feeling-sequence{height:100svh!important;min-height:40rem!important;overflow:hidden!important}
.v2-home .v2-feeling-sticky{position:relative!important;top:auto!important;height:100%!important;min-height:0!important}
.v2-home .v2-feeling-overlays{display:none!important}
/* The opening panels stack; the page returns to ordinary flow after the statement. */
.v2-home .v2-statement~.v2-panel{position:relative!important;top:auto!important}

/* Homepage enquiry now follows the light editorial contact-page treatment. */
.v2-home .v2-inquire{background:#f7f6f2;color:#171717;text-align:left;padding:clamp(6rem,10vw,10rem) var(--v2-pad) clamp(7rem,12vw,12rem)}
.v2-home .v2-inquire>.v2-eyebrow,.v2-home .v2-inquire>h2,.v2-home .v2-inquire>p{max-width:70rem;margin-left:auto;margin-right:auto}
.v2-home .v2-inquire>.v2-eyebrow{color:#77736d}
.v2-home .v2-inquire>h2{color:#171717;text-align:left}
.v2-home .v2-inquire>h2 em{color:#171717;text-transform:lowercase!important;font-style:italic!important}
.v2-home .v2-inquire>p{color:#5f5c58;text-align:left}
.v2-home .v2-inquiry-grid{grid-template-columns:minmax(20rem,37rem) minmax(18rem,27rem);gap:clamp(3rem,8vw,7rem);max-width:70rem;margin:4rem auto 0;align-items:start}
.v2-home .v2-img-inquire{grid-column:2;grid-row:1;height:36rem;background-image:url('assets/images/gallery-653.jpg')!important;filter:none}
.v2-home .inquiry-form{grid-column:1;grid-row:1;border-top:1px solid #c9c7c1;padding-top:1.2rem;color:#171717}
.v2-home .quick-fit-progress{border-color:#c9c7c1;color:#171717}
.v2-home .quick-fit-progress>span{background:#171717}
.v2-home .quick-fit-progress small,.v2-home .quick-fit-progress b{color:#77736d}
.v2-home .quick-step legend{color:#171717}
.v2-home .quick-step legend{font-size:clamp(2.8rem,4.8vw,5.2rem);line-height:.86;max-width:38rem;padding-bottom:1.2rem}
.v2-home .quick-step input{color:#171717;border-color:#7d7971}
.v2-home .quick-step input{font-size:1.1rem;padding:.95rem 0}
.v2-home .quick-step input::placeholder{color:#aaa69e}
.v2-home .quick-step input:focus{border-color:#171717}
.v2-home .quick-actions>button:not(.v2-link){color:#77736d;font-size:10px}
.v2-home .quick-step .v2-link{color:#171717;border-color:#171717}
.v2-home .quick-step .v2-link{font-size:10px;padding-bottom:.65rem}
.v2-home .quick-fit-progress small{font-size:11px}
.v2-home .quick-success{color:#171717}
.v2-home .quick-success strong{color:#171717}
.v2-home .quick-success p{color:#5f5c58}
@media(max-width:700px){
  .v2-home .v2-inquire{padding:5rem 1.2rem 6rem}
  .v2-home .v2-inquiry-grid{display:flex;flex-direction:column;gap:2.5rem;margin-top:3rem}
  .v2-home .v2-img-inquire{order:-1;width:100%;height:25rem}
  .v2-home .inquiry-form{order:0;width:100%}
  .v2-home .quick-step legend{font-size:clamp(2.8rem,12vw,4.8rem)}
}

/* The homepage uses the same full enquiry flow as Contact. */
.v2-home .home-contact-section{background:#f7f6f2;color:#171717;padding:9rem 7vw 10rem}
.v2-home .home-quote-cta{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:38rem;text-align:center;padding:8rem var(--v2-pad)}
.v2-home .home-quote-cta h2{max-width:62rem;margin:1.2rem 0 2rem}
.v2-home .home-quote-cta>p{max-width:30rem;margin:0 auto 2rem;color:#aaa;line-height:1.8;font-size:.88rem}
.v2-home .home-contact-section>h2,.v2-home .home-contact-section>p,.v2-home .home-contact-section>.v2-eyebrow{display:block;max-width:78rem;margin-left:auto;margin-right:auto}
.v2-home .home-contact-section>h2{color:#171717}
.v2-home .home-contact-section>p{color:#5f5c58}
.v2-home .home-contact-mount{max-width:78rem;margin:4rem auto 0;background:#f7f6f2}
.v2-home .home-contact-mount .rebuild-form{max-width:none;margin:0;padding:2rem 0 0}
.v2-home .home-contact-mount .builder-step{min-height:47rem}
.v2-home .home-contact-mount .builder-photo img{filter:none}
.v2-home .home-contact-loading{font:300 1rem/1.6 'Montserrat',Arial,sans-serif;color:#5f5c58}
@media(max-width:700px){
  .v2-home .home-contact-section{padding:5rem 1.2rem 6rem}
  .v2-home .home-contact-mount{margin-top:3rem}
  .v2-home .home-contact-mount .rebuild-form{padding-top:1rem}
}

/* Homepage footer: a useful, editorial closing navigation. */
.v2-home .redesign-footer{
  grid-template-columns:minmax(15rem,1.4fr) minmax(12rem,.8fr) minmax(16rem,1.2fr);
  gap:clamp(2rem,5vw,7rem);
  padding:clamp(3rem,6vw,6rem) var(--gutter) 2.5rem;
  font-size:clamp(.8rem,1vw,1rem);
  letter-spacing:.08em;
  line-height:1.45;
}
.v2-home .redesign-footer p{margin:0;text-align:left!important}
.v2-home .redesign-footer .footer-brand{display:grid;gap:1rem}
.v2-home .redesign-footer .footer-wordmark{
  font-family:'Editors Note',Georgia,serif;
  font-size:clamp(1.5rem,2.8vw,3rem);
  font-weight:100;
  letter-spacing:-.04em;
  text-transform:none;
}
.v2-home .redesign-footer .footer-tagline{
  font-size:clamp(.9rem,1.2vw,1.2rem);
  text-transform:none;
  letter-spacing:0;
  max-width:22rem;
}
.v2-home .redesign-footer .footer-nav{display:grid;gap:.7rem;align-content:start}
.v2-home .redesign-footer .footer-nav a,
.v2-home .redesign-footer .footer-cta{
  font-family:var(--utility);
  font-size:clamp(.8rem,1vw,1rem);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.v2-home .redesign-footer .footer-contact{display:grid;gap:1.5rem;align-content:start}
.v2-home .redesign-footer .booking-note{
  text-transform:none;
  letter-spacing:0;
  max-width:22rem;
  font-size:clamp(.9rem,1.2vw,1.2rem);
}
.v2-home .redesign-footer .footer-meta{
  grid-column:1/-1;
  border-top:1px solid rgba(255,255,255,.22);
  padding-top:1.25rem;
  margin-top:2rem;
  font-size:clamp(.75rem,.9vw,.95rem);
  text-transform:none;
  letter-spacing:.03em;
}
.v2-home .v2-link{font-size:clamp(.8rem,1vw,1rem)!important}
.v2-home .v2-white-gallery>.v2-link{font-size:clamp(.9rem,1.15vw,1.15rem)!important}
@media(max-width:700px){
  .v2-home .redesign-footer{
    grid-template-columns:1fr;
    gap:2rem;
    padding:3rem 1.2rem 2rem;
  }
  .v2-home .redesign-footer .footer-meta{grid-column:auto;margin-top:1rem}
  .v2-home .redesign-footer .footer-tagline,
  .v2-home .redesign-footer .booking-note{font-size:1rem}
}

/* Experience callout: oversized editorial rhythm */
.v2-home .v2-experience-callout{
  display:block;
  padding:clamp(5rem,10vw,10rem) clamp(1.25rem,6vw,7rem);
  background:#e7eaeb;
  color:#151515;
  text-align:center;
}
.v2-home .v2-experience-callout>div{
  max-width:86rem;
  margin:0 auto;
}
.v2-home .v2-experience-callout .v2-eyebrow{
  display:block;
  margin-bottom:2.25rem;
  text-align:center;
}
.v2-home .v2-experience-callout p{
  max-width:82rem;
  margin:0 auto;
  font-family:'Editors Note',Georgia,serif;
  font-size:clamp(3rem,7vw,8rem);
  line-height:.89;
  letter-spacing:-.045em;
  text-transform:none;
}
.v2-home .v2-experience-callout p span{
  display:inline;
  text-transform:uppercase;
}
.v2-home .v2-experience-callout p em{
  font-style:italic;
  text-transform:none;
}
.v2-home .v2-experience-callout .v2-link{
  display:inline-flex;
  margin:3rem auto 0;
}
@media(max-width:700px){
  .v2-home .v2-experience-callout{
    padding:5rem 1.2rem;
  }
  .v2-home .v2-experience-callout .v2-eyebrow{
    margin-bottom:1.75rem;
  }
  .v2-home .v2-experience-callout p{
    font-size:clamp(2.5rem,12vw,4.2rem);
    line-height:.9;
  }
  .v2-home .v2-experience-callout .v2-link{
    margin-top:2.25rem;
  }
}
.v2-home .redesign-header .menu-toggle{border:0!important;background:transparent!important}
.redesign-home .redesign-header .menu-toggle[aria-expanded='true']::before{content:''!important;width:1.25rem!important;height:1.25rem!important;background:linear-gradient(45deg,transparent 44%,#fff 45% 55%,transparent 56%),linear-gradient(-45deg,transparent 44%,#fff 45% 55%,transparent 56%)!important}
.v2-home .reference-half-colour .reference-image[data-hero-asset='436']{background-image:url('assets/images/willow-road-2024-2025.png')!important;background-position:center;background-size:cover;filter:grayscale(1)!important}
