/* Refinements to the original layout: all sections and content are retained. */
:root{--paper:#fffcf7;--greige:#f3ede5;--cream:#fff8ed;--ink:#35272b;--ink-soft:#625359;--muted:#76676b;--maroon:#542237;--mauve:#8c5367;--mauve-deep:#754054;--gold:#b89a60;--gold-soft:#ead8ac;--gold-deep:#aa8748;--dusty:#ead4da;--line:#e5d9ce;--radius:10px;--wrap:1240px;--shadow-soft:0 8px 30px -22px #54223735;--shadow-lux:0 20px 55px -30px #54223750}
body{font-weight:400;line-height:1.75;font-size:15.5px}
.nav{padding-top:20px;padding-bottom:20px;background:linear-gradient(#200e1a70,transparent);gap:18px}
.nav.solid{background:rgba(255,252,247,.96);box-shadow:0 1px 0 var(--line)}
.brand .wm{font-size:20px;line-height:1.1;letter-spacing:.12px;white-space:nowrap}.brand .mark{width:62px;height:62px}
.nav-links{gap:19px;margin-left:0}.nav-links a{font-family:'Jost',sans-serif;font-size:.72rem;letter-spacing:.09em;font-weight:500}
.nav-links a:hover{color:var(--gold-soft)}.nav.solid .nav-links a:hover{color:var(--maroon)}
.nav .nav-cta{font-family:'Jost',sans-serif;font-size:.69rem;letter-spacing:.12em;padding:13px 19px;white-space:nowrap}
.btn{font-family:'Jost',sans-serif;font-weight:500;letter-spacing:.14em;border-radius:3px;min-height:50px}
.btn-solid{background:var(--gold-soft);border-color:var(--gold-soft);color:#3e2330;box-shadow:0 7px 24px -14px #1e091c80}
.btn-solid:hover{background:#f2e3c3;border-color:#f2e3c3;box-shadow:0 9px 25px -15px #1e091c60}
.hero{min-height:92svh;min-height:max(700px,92svh)}
.hero .veil{background:linear-gradient(90deg,rgba(30,12,23,.8),rgba(38,17,29,.58) 48%,rgba(38,17,29,.2))}
.hero .veil::after{height:18%;background:linear-gradient(transparent,rgba(31,12,24,.22))}
.hero .wrap{width:min(100%, 900px);margin:0 auto 0 0;padding-top:145px;padding-bottom:95px;padding-left:clamp(18px,4vw,64px);padding-right:20px}
.hero-eyebrow{font-family:'Jost',sans-serif;font-size:.73rem;letter-spacing:.25em;color:#f1dcca;display:block;margin-left:0;padding-left:0}
.hero h1{max-width:980px;font-size:clamp(2.8rem,5.9vw,5rem);line-height:1.11;letter-spacing:-1.6px;text-wrap:initial;font-weight:500}
.hero h1 .it{font-size:1.08em;color:#efd6dc;margin-top:6px}
.hero p{max-width:540px;font-size:1.04rem;color:#f7eee8;line-height:1.8;margin-top:22px}
.hero-actions{gap:14px}.hero-actions .btn{min-width:210px}.btn-outline.on-dark{background:#ffffff08;border-color:#ffffff75}
.section{padding:96px 0}.sec-head{max-width:760px;margin-bottom:42px}
.eyebrow{font-family:'Jost',sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.23em}
.h-sec{font-size:clamp(2.1rem,4.2vw,3.2rem);line-height:1.15;font-weight:500;letter-spacing:-.8px}
.h-sec em{font-size:1.08em}.sec-head p{max-width:620px;margin:18px auto 0;font-size:1rem;line-height:1.75}
.flourish{width:48px;margin-top:23px}.founder{max-width:1100px;align-items:center;gap:60px}
.founder .pic{width:min(100%, 540px); aspect-ratio:3/4; border-radius:26px; background-position:center top; overflow:hidden; border:8px solid rgba(255,255,255,.5); box-shadow:0 22px 42px -24px rgba(41,18,27,.55), inset 0 0 0 1px rgba(93,62,70,.2); margin-inline:auto;}
.founder-copy p{font-size:.98rem;line-height:1.8}.founder-copy .sig{font-size:.7rem}
.stats{max-width:1000px;border-block:1px solid var(--line);padding:35px 0;margin-top:65px}.stats:before{display:none}
.stat:not(:last-child){border-right:1px solid var(--line)}.stat b{color:var(--maroon);font-weight:500}.stat span{font-size:.65rem;color:var(--ink-soft)}
.why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:36px}.why-card{padding:28px 24px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.32);box-shadow:var(--shadow-soft)}.why-icon{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;border-radius:50%;background:rgba(84,34,55,.08);color:var(--maroon);font-family:'Jost',sans-serif;font-size:.72rem;letter-spacing:.12em;font-weight:500;margin-bottom:18px}.why-card h3{font-size:1.38rem;line-height:1.3;font-weight:500;margin:0 0 12px}.why-card p{margin:0;font-size:.96rem;line-height:1.8;color:var(--ink-soft)}
.tiers{gap:24px}.tier{padding:40px 28px;text-align:left;align-items:flex-start;border-color:var(--line);box-shadow:var(--shadow-soft)}
.tier.featured{border-color:var(--gold);box-shadow:0 12px 35px -25px #54223765}.tier-tag{border-radius:3px;font-family:'Jost',sans-serif;letter-spacing:.12em;padding:5px 17px}
.tier .badge{width:60px;height:60px;background:#f5eeeb;border:1px solid #e6d7ce;margin-bottom:25px}.tier h3{font-size:1.6rem;font-weight:500;line-height:1.3}
.tier>p{font-size:.95rem;line-height:1.8}.tier .incl summary{font-family:'Jost',sans-serif;font-size:.75rem;letter-spacing:.1em;font-weight:500}
.svc-tags li{font-family:'Jost',sans-serif;letter-spacing:.05em;border-color:var(--line);padding:10px 17px}.svc-all-lead{font-size:1.45rem}
.pf-item h3{font-weight:500}.pf-strip{gap:20px;padding-bottom:18px}.pf-strip .shot{border-radius:6px;flex-basis:clamp(260px,32vw,375px);box-shadow:none}
.gallery{gap:18px;grid-auto-rows:245px}.gallery .g-tile{border-radius:6px;box-shadow:none}
.review{padding:34px 30px;border-radius:8px}.review blockquote{font-size:1.25rem;line-height:1.55}.review .stars{color:#a67e37}
.tool,.post{border-radius:8px}.tool{padding:34px}.tool .ti{background:#f1e5e7;border-radius:50%;width:48px;height:48px}.tool h3,.post h3{font-weight:500}.post-body{padding:30px}.tool a,.post a{color:#804257;font-weight:500}
.faq-item summary{font-weight:500;padding:25px 4px}.faq-item[open]{background:#f7f1eb}.faq-item[open] summary,.faq-item[open] p{padding-left:18px;padding-right:18px}
.contact-grid{max-width:1080px;gap:65px}.field label{color:var(--ink-soft);font-size:.69rem;font-weight:500;letter-spacing:.1em}.field input,.field select,.field textarea{border-radius:4px;padding:14px 15px;border-color:#d9c9be}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #8c536735;outline-offset:2px}.cinfo{padding:35px;border-radius:8px}.cinfo .row a{overflow-wrap:anywhere}
.band{min-height:370px}.band blockquote{font-size:clamp(1.7rem,3.5vw,2.8rem)}.band-veil{background:linear-gradient(110deg,#351526dc,#381526c9)}
.foot-col h4{font-family:'Jost',sans-serif;font-size:.8rem;letter-spacing:.14em}.foot-col a{font-size:.95rem;line-height:1.9}.foot-col a:hover{color:var(--gold-soft)}.wa{width:48px;height:48px;right:22px;bottom:22px}
.menu:not(.open){visibility:hidden}.menu.open{visibility:visible}.nav.nav-open{background:var(--plum-2)}.nav.nav-open .brand .wm,.nav.nav-open .brand .wm .legal{color:var(--cream)}
@media(min-width:1041px) and (max-width:1200px){.nav{padding-inline:24px;gap:14px}.nav-links{gap:12px}.nav-links a{font-size:.65rem}.brand .wm{font-size:18px}.brand .mark{width:44px;height:44px}.nav .nav-cta{padding-inline:13px;font-size:.63rem}}
@media(max-width:900px){.section{padding:75px 0}.founder{gap:35px}.tier{padding:35px}.why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:clamp(2.8rem,6.5vw,4.3rem)}.gallery{grid-auto-rows:210px}.contact-grid{gap:35px}.brand .wm{font-size:18px}.brand .mark{width:52px;height:52px}}
@media(max-width:640px){.hero{min-height:760px;min-height:100svh}.hero .wrap{padding-top:125px;padding-bottom:390px}.hero h1{font-size:clamp(2.4rem,8.6vw,3.5rem);letter-spacing:-.7px}.hero .veil{background:linear-gradient(90deg,#210e1bcc,#210e1b70)}.hero p{font-size:1rem;line-height:1.75}.hero-eyebrow{font-size:.66rem;letter-spacing:.16em}.hero-actions .btn{min-height:52px}.section{padding:54px 0}.h-sec{font-size:clamp(2rem,7vw,2.7rem);line-height:1.2}.sec-head{margin-bottom:30px}.founder .pic{max-width:340px}.founder-copy p{font-size:.98rem}.stats{margin-top:40px;padding:28px 0;row-gap:30px}.stat:nth-child(2){border-right:0}.stat span{font-size:.61rem;letter-spacing:.1em}.why-grid{grid-template-columns:1fr}.why-card{padding:22px 20px}.gallery{gap:10px;grid-auto-rows:170px}.tier{padding:32px 25px}.cinfo{padding:28px 22px}.band{min-height:280px}.review{padding:28px 24px}.wa{right:15px;bottom:15px}.nav{padding-top:14px;padding-bottom:14px;padding-left:16px;padding-right:16px}.brand .wm{font-size:16px;letter-spacing:.25px}.brand .mark{width:46px;height:46px}.nav-right{gap:10px}}
@media(prefers-reduced-motion:reduce){.hero video,.band video{display:none}.hero{background:url('wbl-hero-poster.jpg') center/cover}.reveal{opacity:1;transform:none}}

/* Small controls retain the original page structure. */
.skip-link{position:fixed;top:12px;left:12px;z-index:100;background:var(--paper);color:var(--maroon);padding:12px 20px;transform:translateY(-150%);border:2px solid var(--maroon)}
.skip-link:focus{transform:none}.overlay-open{overflow:hidden!important}.nav-links a[aria-current="location"]{color:var(--maroon)}.nav-links a[aria-current="location"]:after{width:100%}
.nav.nav-open .brand .mark{background-image:var(--logo-full-white)}.nav.nav-open .brand{pointer-events:none}.nav.nav-open .brand:focus{outline:none}
.video-control{position:absolute;bottom:24px;left:clamp(22px,5vw,48px);z-index:3;padding:10px 14px;border:1px solid #ffffff75;border-radius:4px;background:#24102080;color:#fff;font:400 .75rem 'Jost',sans-serif;cursor:pointer;min-height:44px;backdrop-filter:blur(8px)}
.video-control:hover{background:#241020d9}.hero video.user-play{display:block}
.photo-button{position:relative;display:block;padding:0;border:0;overflow:hidden;background:#eee5dc;cursor:zoom-in;isolation:isolate}
.photo-button img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.photo-button:hover img{transform:scale(1.035)}
.photo-expand{position:absolute;bottom:12px;right:12px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fffcf7ec;color:var(--maroon);font:20px 'Jost',sans-serif;box-shadow:0 2px 8px #0002}
.photo-button:focus-visible{outline:3px solid var(--mauve);outline-offset:-4px}
.strip-controls{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:10px}.strip-controls span{font-size:.75rem;color:var(--muted);margin-right:8px}
.strip-controls button,.lightbox-bottom button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--maroon);font-size:21px;cursor:pointer}
.strip-controls button:hover:not(:disabled){background:var(--maroon);border-color:var(--maroon);color:white}.strip-controls button:disabled{opacity:.3;cursor:default}
.package-enquiry{font-size:.76rem;font-weight:500;letter-spacing:.02em;color:var(--maroon);border-bottom:1px solid var(--line);padding:18px 0 5px;margin-top:auto}.package-enquiry:hover{border-color:var(--maroon)}
.lightbox{padding:18px 24px;border:1px solid #ffffff25;border-radius:8px;background:#241b21;color:#fff7ed;width:min(1080px,94vw);max-width:94vw;max-height:94svh;box-shadow:0 30px 80px #0005}
.lightbox::backdrop{background:#160d15ed;backdrop-filter:blur(7px)}.lightbox-bar,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px}.lightbox-bar{margin-bottom:12px;font-size:.85rem}
.lightbox-bar button{background:transparent;border:0;color:inherit;font:inherit;min-height:44px;padding:8px;cursor:pointer}.lightbox>img{height:min(68svh,740px);width:100%;object-fit:contain}
.lightbox-bottom{padding-top:14px}.lightbox-bottom p{text-align:center;font-size:.88rem;line-height:1.5}.lightbox-bottom button{flex-shrink:0;color:#fff7ed;border-color:#ffffff45}.lightbox-bottom button:hover{background:#ffffff15}
.lightbox>img{max-height:calc(94svh - 170px)}
.back-top{position:fixed;bottom:82px;right:22px;width:48px;height:48px;border-radius:50%;background:var(--paper);border:1px solid var(--line);color:var(--maroon);display:grid;place-items:center;z-index:55;font-size:24px;box-shadow:0 4px 14px #32102015}
.back-top:hover{background:var(--maroon);color:white}.form-help{font-size:.85rem;color:var(--ink-soft);line-height:1.65}.form-help a{text-decoration:underline;overflow-wrap:anywhere}
.enquiry-ready{border:1px solid var(--line);border-left:3px solid var(--mauve);border-radius:4px;background:var(--paper);padding:22px;font-size:.95rem}.enquiry-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:18px 0}
.enquiry-actions .btn{padding:12px 18px;font-size:.7rem}.copy-enquiry{background:none;border:0;border-bottom:1px solid var(--maroon);padding:10px 0;color:var(--maroon);font:inherit;font-size:.85rem;cursor:pointer}
#enquiry-copy{font:inherit;font-size:.85rem;min-height:200px;width:100%;margin-top:16px;padding:12px}.cinfo .row>div{min-width:0}
@media(max-width:640px){.video-control{bottom:16px;font-size:.7rem;padding:8px 12px}.hero .wrap{padding-bottom:95px}.lightbox{padding:12px;max-width:96vw;width:96vw}.lightbox>img{height:62svh}.lightbox-bottom{gap:8px}.lightbox-bottom p{font-size:.75rem}.back-top{right:15px;bottom:74px}.photo-expand{width:28px;height:28px;bottom:8px;right:8px}.form-help{font-size:.8rem}.enquiry-ready{padding:18px}}
.lightbox>img{height:auto;max-height:min(68svh,calc(94svh - 170px))}
.required-mark{color:#9b2e40}.optional{text-transform:none;letter-spacing:0;font-weight:400}.field-help{display:block;font-size:.78rem;line-height:1.5;color:var(--ink-soft);margin-top:6px}.message-help{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.field.bad select{border-color:#a3323a}.field .err{line-height:1.5;font-weight:400}
.form-errors{border:1px solid #d7a2a7;border-left:3px solid #a3323a;border-radius:4px;padding:18px 20px;background:#fff6f4;color:#812631}.form-errors>p{font-weight:500}.form-errors ul{padding-left:19px;margin:8px 0 0;font-size:.86rem;line-height:1.6}.form-errors li+li{margin-top:7px}.form-errors a{text-decoration:underline;text-underline-offset:3px}.form-errors a:hover{color:var(--maroon)}

/* Phone layouts: aligned service tiles and one complete photo per slide. */
.pf-heading-text{min-width:0}
@media(max-width:640px){
  .svc-all{margin-top:36px}
  .svc-all-lead{font-size:1.25rem;line-height:1.65;max-width:28ch;margin-inline:auto}
  .svc-tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}
  .svc-tags li{display:flex;align-items:center;justify-content:center;min-height:48px;min-width:0;padding:11px 9px;font-size:.66rem;line-height:1.5;letter-spacing:.025em;border-radius:4px}
  .svc-tags li:last-child:nth-child(odd){grid-column:1/-1}
  .tiers-cta{margin-top:26px}.tiers-cta .btn{width:100%;max-width:360px;min-height:52px;padding-inline:18px}
  .pf{gap:40px}.pf-item{min-width:0}
  .pf-item h3{display:block;font-size:1.65rem;line-height:1.25;margin-bottom:20px}
  .pf-item h3:before{display:block;width:30px;height:1px;margin-bottom:14px}
  .pf-couple{display:block}.pf-separator{display:none}
  .pf-location{display:block;font-family:'Jost',sans-serif;font-size:.86rem;font-weight:400;line-height:1.5;color:var(--ink-soft);margin-top:7px}
  .pf-strip{gap:14px;padding-bottom:0;scrollbar-width:none;overscroll-behavior-x:contain}
  .pf-strip::-webkit-scrollbar{display:none}
  .pf-strip .shot{flex:0 0 100%;width:100%;min-width:0;aspect-ratio:3/4;scroll-snap-stop:always}
  .pf-strip .shot:hover{transform:none}
  .pf-item .strip-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:12px;margin-top:14px}
  .pf-item .strip-controls span{grid-column:2;grid-row:1;margin:0;text-align:center;font-size:.8rem}
  .pf-item .strip-controls button:first-of-type{grid-column:1;grid-row:1}
  .pf-item .strip-controls button:last-of-type{grid-column:3;grid-row:1}
}
