/* Standalone HTML recreation of the linked Lovable homepage revision.
       Styling/content derive from the project at commit 113e67b4be5edb38bbe049fdfc2f74f739129d51.
       Image URLs below are illustrative substitutes: original binary project assets could not be exported.
       Replace them with your licensed production images before publication. */
    :root{
      --paper:oklch(0.985 .004 80);--ink:oklch(.2 .012 260);--subtle:oklch(.955 .008 80);
      --muted:oklch(.47 .012 260);--pink:oklch(.6 .21 355);--rule:oklch(.91 .006 80);
      --white:#fff;--deep:oklch(.2 .012 260);--font-display:'Bricolage Grotesque',system-ui,sans-serif;
      --font-text:'Instrument Sans',Arial,sans-serif;
      --shadow:0 24px 60px -30px rgba(25,25,32,.38);
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth;scroll-padding-top:78px}
    body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--font-text);-webkit-font-smoothing:antialiased}
    img{display:block;max-width:100%} button,input,textarea,select{font:inherit}
    button{cursor:pointer}a{text-decoration:none;color:inherit}a:hover{color:inherit}
    button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--pink);outline-offset:3px}
    h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.035em;line-height:1.03;margin-bottom:0}
    p{margin-bottom:0}.container{width:min(calc(100% - 40px),1152px);margin-inline:auto}.wide{width:min(calc(100% - 28px),1280px);margin-inline:auto}
    .eyebrow{font-size:.875rem;line-height:1.5;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--pink)}
    .body-muted{color:var(--muted)}.align-center{text-align:center}.section{padding:100px 0}.section-heading{font-size:clamp(2.5rem,5vw,3.75rem)}
    .underline-link{font-weight:700;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}.underline-link:hover{color:var(--pink)}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:12px 32px;border-radius:999px;font-weight:700;font-size:16px;line-height:1.2;border:1px solid transparent;transition:filter .2s,background .2s,transform .2s;white-space:nowrap}
    .btn:hover{transform:translateY(-2px)}.btn-pink{color:white;background:var(--pink);box-shadow:var(--shadow)}.btn-pink:hover{color:white;filter:brightness(1.08)}
    .btn-outline{border-color:oklch(.88 .006 80);background:var(--paper)}.btn-outline:hover{background:var(--subtle)}.btn-sm{min-height:32px;padding:7px 16px;font-size:.8rem}.btn-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}
    .header{position:sticky;top:0;z-index:50;background:rgba(253,251,248,.84);border-bottom:1px solid var(--rule);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
    .header-content{height:64px;display:flex;align-items:center;justify-content:space-between;gap:22px}
    .brand{display:flex;align-items:center;gap:10px;min-width:170px;line-height:1;text-decoration:none}.brand-icon{display:inline-flex;align-items:baseline;font-family:var(--font-display);font-weight:800;font-size:30px;letter-spacing:-.12em;line-height:1}.brand-icon i{color:var(--pink);font-style:normal}.brand-name{border-left:1px solid #b8b5b2;padding-left:9px;font-family:var(--font-display);font-size:13px;letter-spacing:.035em;font-weight:800;line-height:1.05}.brand-name small{display:block;font-family:var(--font-text);font-size:6px;letter-spacing:.07em;font-weight:600;margin-top:4px}
    .nav{display:flex;align-items:center;gap:26px;font-size:14px}.nav>a,.nav-dd>a{color:var(--muted);transition:color .2s}.nav a:hover,.nav a:focus-visible{color:var(--ink)}.nav-dd{position:relative}.chevron{display:inline-block;font-size:11px;transform:translateY(-1px);margin-left:4px}
    .dropdown{position:absolute;left:50%;top:100%;padding-top:15px;width:275px;transform:translateX(-50%);opacity:0;visibility:hidden;transition:.2s;pointer-events:none}.nav-dd:hover .dropdown,.nav-dd:focus-within .dropdown{opacity:1;visibility:visible;pointer-events:auto}.dropdown-inner{background:#fff;border:1px solid var(--rule);border-radius:16px;box-shadow:var(--shadow);padding:8px}.dropdown a{display:block;padding:10px 12px;border-radius:12px}.dropdown a:hover{background:var(--subtle)}.dropdown strong{display:block;font-weight:700;font-size:14px}.dropdown small{display:block;font-size:12px;color:var(--muted)}
    .header-actions{display:flex;align-items:center;gap:14px}.header-phone{font-weight:700;font-size:14px;white-space:nowrap}.accent{color:var(--pink)}.menu-toggle,.phone-icon{display:none;border:0;background:none;padding:6px;color:var(--ink)}
    .mobile-nav{display:none;position:fixed;inset:0;background:var(--paper);z-index:90;padding:20px 24px 40px;overflow-y:auto}.mobile-nav.is-open{display:flex;flex-direction:column}.mobile-nav-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.mobile-nav .menu-link{display:block;font:700 31px/1.2 var(--font-display);padding:8px 0;letter-spacing:-.03em}.mobile-nav .sub-link{display:block;color:var(--muted);padding:4px 0 4px 16px;font-size:18px}.mobile-nav .mobile-ctas{margin-top:auto;display:grid;gap:12px;padding-top:26px}
    .hero-copy{padding:68px 20px 42px;text-align:center}.hero-copy h1{font-size:clamp(3.125rem,7.5vw,6rem);margin:10px auto 0;max-width:950px}.hero-sub{font-size:clamp(1.15rem,2.5vw,1.5rem);line-height:1.42;max-width:600px;margin:24px auto 0;color:var(--muted)}
    .promise-list{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:730px;margin:32px auto 0;padding:0}.promise-list li{display:flex;align-items:center;gap:8px;border:1px solid var(--rule);border-radius:999px;background:#fff;padding:6px 14px;font-size:14px;line-height:1.5}.check{font-weight:800;font-size:18px;color:var(--pink);line-height:1}.hero-actions{margin-top:32px}.hero-visual{position:relative;overflow:hidden;border-radius:24px;min-height:640px;background:var(--subtle);box-shadow:0 10px 30px rgba(0,0,0,.05)}.hero-visual .hero-photo{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;background:var(--subtle)}.hero-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,20,27,.12) 0%,rgba(20,20,27,.04) 42%,rgba(255,255,255,.06) 55%,rgba(255,255,255,.14) 100%);pointer-events:none}.hero-overlay{position:relative;z-index:2;display:flex;align-items:center;justify-content:flex-end;width:50%;min-height:640px;margin-left:auto;padding:26px}.hero-overlay-card{width:min(100%,470px);margin-left:auto;background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.65);border-radius:28px;padding:28px 26px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:var(--shadow)}.hero-overlay-card h2{font-size:clamp(2rem,3vw,2.8rem)}.hero-overlay-card p{margin-top:10px;color:var(--muted)}.hero-form{display:grid;gap:14px;margin-top:22px}.hero-form label{display:block;font-size:14px;font-weight:700}.hero-form input,.hero-form textarea{width:100%;margin-top:7px;padding:12px 14px;border:1px solid rgba(160,160,170,.35);background:rgba(255,255,255,.92);border-radius:12px;font-size:16px;min-height:50px;color:var(--ink)}.hero-form textarea{resize:vertical;min-height:126px}.hero-form .btn{width:100%;margin-top:4px}.hero-form-note{font-size:12px;line-height:1.45;color:var(--muted)}
    .service-head{max-width:750px;margin:0 auto}.service-head h2{margin-top:12px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:48px}
    .service-card{position:relative;isolation:isolate;overflow:hidden;display:block;border-radius:24px;aspect-ratio:4/5;color:white;text-align:left;box-shadow:0 6px 20px rgba(0,0,0,.03);background:#514747;border:0;width:100%;padding:0;cursor:pointer}.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}.service-card::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,transparent 28%,rgba(23,23,28,.82))}.service-card:hover img{transform:scale(1.055)}.service-card .card-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:24px;color:white}.service-card h3{font-size:30px}.service-card p{opacity:.9;margin-top:6px;font-size:16px}.service-card .more{display:inline-block;margin-top:18px;font-size:14px;font-weight:700}.service-card:hover .more .arrow{display:inline-block;transform:translateX(4px)}
    .soft-section{background:var(--subtle)}.how-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;margin:52px 0 0;padding:0;text-align:center}.step-number{font-family:var(--font-display);font-size:76px;line-height:1;font-weight:800;letter-spacing:-.06em;color:var(--pink)}.how-steps h3{font-size:25px;margin-top:10px}.how-steps p{color:var(--muted);max-width:300px;margin:10px auto 0}.more-link{margin-top:48px;text-align:center}
    .deep-section{background:var(--deep);color:#f6f3ed}.deep-section h2{max-width:780px;margin:0 auto;font-size:clamp(2rem,4.5vw,3rem)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin:46px 0 0;text-align:center}.stats dt{font-family:var(--font-display);font-weight:800;letter-spacing:-.035em;line-height:1;font-size:clamp(2.5rem,4.5vw,3.75rem);color:var(--pink)}.stats dd{margin:9px 0 0;opacity:.85;font-size:16px}
    .testimonials-head{max-width:750px;margin:0 auto}.testimonials-head h2{margin-top:12px}.quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:45px}.quote{margin:0;min-height:300px;background:#fff;border:1px solid var(--rule);border-radius:24px;padding:28px;display:flex;flex-direction:column}.stars{font-size:21px;letter-spacing:.5px;color:var(--pink);line-height:1}.quote blockquote{font-size:18px;line-height:1.55;margin:18px 0 26px;flex:1}.quote figcaption{font-size:14px;line-height:1.5}.quote figcaption strong{display:block}.quote figcaption span{display:block;color:var(--muted)}
    .about{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:42px}.about img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:24px}.about h2{font-size:clamp(2.6rem,4.5vw,3.2rem)}.about ul{margin:24px 0;padding-left:22px;color:var(--muted);font-size:18px;line-height:1.6}.about li+li{margin-top:14px}.about .underline-link{display:inline-block;margin-top:10px}
    .badges{padding:48px 20px;background:var(--deep);color:#f6f3ed;text-align:center}.badges-label{font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;opacity:.7}.badge-grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:25px 45px;max-width:880px;margin:26px auto 0}.badge-wordmark{border:1px solid rgba(255,255,255,.38);padding:10px 14px;border-radius:3px;min-height:48px;display:flex;align-items:center;text-align:center;justify-content:center;font-size:13px;font-weight:700;letter-spacing:.035em;line-height:1.1;opacity:.84}.badge-wordmark.big{font-weight:800;font-size:22px;letter-spacing:-.04em}
    .cta-section{padding:100px 20px 110px;text-align:center}.cta-section h2{font-size:clamp(2.5rem,5vw,3.75rem);max-width:790px;margin:0 auto}.cta-section p{max-width:470px;margin:20px auto 32px;font-size:18px;color:var(--muted)}
    .footer{background:var(--subtle);border-top:1px solid var(--rule)}.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;padding:56px 0}.footer h3{font:700 14px/1.4 var(--font-text);margin:0 0 12px}.footer p,.footer li{font-size:14px;line-height:1.6;color:var(--muted)}.footer p+p{margin-top:6px}.footer p.heading{color:var(--ink);font-weight:700;margin-top:25px;margin-bottom:10px}.footer ul{margin:0;padding:0;list-style:none}.footer li+li{margin-top:5px}.footer a:hover{color:var(--pink)}.footer .brand{margin-bottom:16px}.copyright{border-top:1px solid var(--rule);padding:18px 0;text-align:center;color:var(--muted);font-size:12px}
    .floating-talk{display:none;position:fixed;bottom:16px;left:50%;transform:translateX(-50%);border:0;border-radius:999px;background:var(--ink);box-shadow:var(--shadow);color:var(--paper);z-index:30;font-size:14px;font-weight:700;padding:13px 22px;white-space:nowrap}
    dialog{border:0;padding:0;background:white;color:var(--ink);width:min(calc(100% - 32px),710px);max-height:min(86vh,940px);border-radius:24px;box-shadow:0 30px 100px rgba(0,0,0,.25)}dialog::backdrop{background:rgba(20,20,25,.65);backdrop-filter:blur(5px)}.dialog-inner{padding:32px;overflow-y:auto;max-height:86vh}.dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.dialog-top h2{font-size:clamp(2rem,5vw,3rem)}.close-dialog{border:1px solid var(--rule);background:white;flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-size:25px;line-height:1}.dialog-intro{margin:18px 0 25px;font-size:17px;color:var(--muted)}.dialog-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.dialog-points article{padding:18px;background:var(--subtle);border-radius:14px}.dialog-points h3{font-size:19px;margin-bottom:8px}.dialog-points p{font-size:14px;color:var(--muted)}.faqs-list{display:grid;gap:8px;margin:20px 0}.faqs-list details{border:1px solid var(--rule);background:white;border-radius:13px;padding:16px 18px}.faqs-list summary{font-weight:700;cursor:pointer;list-style-position:outside}.faqs-list details p{margin-top:12px;color:var(--muted)}
    .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid label{display:block;font-size:14px;font-weight:700}.form-grid label.wide-field{grid-column:span 2}.form-grid input,.form-grid textarea,.form-grid select{width:100%;margin-top:7px;padding:12px 14px;border:1px solid var(--rule);background:var(--paper);border-radius:10px;font-size:16px;min-height:48px;color:var(--ink)}.form-grid textarea{resize:vertical}.form-grid .wide-field .btn{width:100%}.privacy-note{font-size:12px;color:var(--muted);grid-column:span 2}.mobile-only{display:none}
    @media(max-width:1100px){.header-phone{display:none}}
    @media(max-width:840px){.nav{gap:15px}.brand{min-width:156px}.header-content .btn-sm{padding-inline:12px}.footer-grid{gap:25px}.card-copy{padding:18px}}
    @media(max-width:940px){.hero-overlay{width:54%;padding:20px}.hero-overlay-card{padding:24px 22px}}
    @media(max-width:767px){.nav,.header-actions .btn-sm{display:none}.header-phone{display:none}.menu-toggle,.phone-icon{display:inline-flex}.mobile-only{display:block}.hero-copy{padding-top:62px}.hero-copy h1{font-size:clamp(3.125rem,11vw,4rem)}.hero-visual{min-height:0;display:block}.hero-visual .hero-photo{position:relative;height:auto;aspect-ratio:4/5}.hero-overlay{width:100%;min-height:0;padding:0 0 14px;display:block;margin-top:-48px}.hero-overlay-card{width:auto;max-width:none;margin:0 14px 0;position:relative}.section{padding:88px 0}.cards,.how-steps{grid-template-columns:1fr;gap:18px}.cards{max-width:480px;margin-inline:auto}.service-card{max-height:520px}.how-steps{gap:40px}.stats{grid-template-columns:repeat(2,1fr);gap:34px}.quotes{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;scrollbar-width:thin;margin-right:-20px;padding:2px 20px 16px 0}.quote{flex:0 0 85%;scroll-snap-align:center}.about{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr);gap:35px}.floating-talk{display:block}.footer{padding-bottom:70px}.dialog-points{grid-template-columns:1fr}}
    @media(max-width:480px){.container{width:min(calc(100% - 36px),1152px)}.hero-sub{font-size:19px}.promise-list{max-width:350px}.btn-row{gap:10px}.btn-row .btn{padding-inline:20px}.section-heading{font-size:2.5rem}.footer-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid label.wide-field,.privacy-note{grid-column:span 1}.dialog-inner{padding:24px 20px}.quote{flex-basis:88%}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
  
/* ===== Henry Sykes v3 design refinements ===== */
.container{max-width:1250px}.wide{width:min(calc(100% - 32px),1380px)}
.header-content{height:84px;max-width:1440px;gap:24px}.brand{min-width:222px;gap:14px}.brand-icon{font-size:48px;letter-spacing:-.13em}.brand-name{font-size:17px;border-left-color:#a7a7aa;padding-left:12px;letter-spacing:.01em}.brand-name small{font-size:9px;letter-spacing:.025em;margin-top:5px;line-height:1.2}
.nav{gap:22px;font-size:16px;white-space:nowrap}.nav a:hover{color:var(--pink)}.nav-dd>.dropdown{z-index:30}.dropdown{width:285px}.dropdown-inner{padding:10px}.dropdown a{padding:12px}.dropdown strong{font-size:15px}.dropdown small{font-size:13px}
.header-actions{gap:17px}.header-phone{font-size:17px}.header-content .btn-sm{min-height:42px;font-size:15px;padding:10px 22px}.menu-toggle{font-size:24px}
.hero-copy{padding:43px 20px 34px}.hero-copy h1{font-size:clamp(3.5rem,6.3vw,5.9rem);margin-top:9px}.hero-sub{margin-top:15px;font-size:clamp(1.1rem,2vw,1.35rem);max-width:750px}.hero-actions{margin-top:20px;gap:14px}.hero-actions .btn{width:233px;min-width:0}
.ppc-message{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;max-width:860px;margin:22px auto 0;background:#fff3f8;border:1px solid #f5d5e3;border-radius:15px;padding:12px 16px;font-size:15px;line-height:1.5}
.ppc-message strong{color:#b51566}.ppc-message a{color:#b51566;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.hero-visual{height:700px;min-height:0;isolation:isolate}.hero-slides{position:absolute;inset:0;z-index:-2}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.25s ease;pointer-events:none}.hero-slide.is-active{opacity:1;z-index:1}.hero-slide img{width:100%;height:100%;object-fit:cover;object-position:center 50%;filter:saturate(.98)}.hero-visual::after{z-index:-1;background:linear-gradient(90deg,rgba(11,18,23,.26) 0%,transparent 45%,rgba(255,255,255,.03) 68%)}
.sale-board{position:absolute;left:8%;bottom:9%;z-index:4;width:clamp(130px,15vw,210px);transform:rotate(-3deg);filter:drop-shadow(0 12px 10px rgba(0,0,0,.3));pointer-events:none}.sale-board-body{background:white;border:6px solid #fff;box-shadow:0 4px 0 rgba(0,0,0,.1);text-align:center;overflow:hidden;position:relative}.sale-board-brand{display:flex;justify-content:center;align-items:center;gap:6px;padding:15px 4px 9px;color:#15191f;background:#fff}.sale-board-hs{font:bold clamp(35px,4.1vw,61px)/1 var(--font-display);letter-spacing:-.1em}.sale-board-hs i{color:var(--pink);font-style:normal}.sale-board-brand-copy{font-size:clamp(9px,1.05vw,13px);font-weight:800;line-height:1;letter-spacing:-.03em;text-align:left}.sale-board-brand-copy small{display:block;font-size:clamp(5px,.5vw,7px);line-height:1.3;letter-spacing:.015em;margin-top:3px}.sale-board-sold{background:var(--pink);color:white;font:bold clamp(25px,3vw,42px)/1 var(--font-display);letter-spacing:.04em;padding:13px 0 12px}.sale-board-post{width:14px;height:72px;background:#f1f1ee;position:relative;left:50%;transform:translateX(-50%);box-shadow:3px 0 4px #0003}
.hero-slide-controls{position:absolute;z-index:7;bottom:16px;left:28px;display:flex;align-items:center;gap:11px;max-width:40%}.hero-slide-controls button{background:rgba(18,22,27,.58);color:white;border:1px solid rgba(255,255,255,.7);border-radius:50%;width:39px;height:39px;display:grid;place-items:center;font-size:24px;line-height:1;backdrop-filter:blur(8px)}.hero-dots{display:flex;align-items:center;gap:9px}.hero-dots button{width:10px;height:10px;border-radius:50%;padding:0;background:rgba(255,255,255,.7);border:1px solid #fff;transition:width .2s,background .2s}.hero-dots button.is-active{width:27px;border-radius:8px;background:var(--pink)}.slider-status{position:absolute;top:22px;left:28px;color:white;font-size:13px;letter-spacing:.07em;text-transform:uppercase;background:rgba(30,30,35,.45);padding:8px 12px;border-radius:99px;z-index:5;backdrop-filter:blur(8px)}
.hero-overlay{height:100%;min-height:0;width:50%;padding:28px}.hero-overlay-card{max-width:495px;width:100%;background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.95);box-shadow:0 20px 65px rgba(0,0,0,.18);padding:27px 30px;backdrop-filter:blur(17px)}.hero-overlay-card .eyebrow{margin:0;color:var(--pink)}.hero-overlay-card h2{font-size:clamp(2rem,2.7vw,2.7rem);margin-top:5px}.hero-overlay-card>p:not(.eyebrow){margin-top:9px;font-size:15px}.hero-form{gap:10px;margin-top:16px}.hero-form label{font-size:13px}.hero-form input,.hero-form textarea{margin-top:5px;min-height:42px;padding:10px 13px;background:#fff}.hero-form textarea{min-height:88px}.hero-form .btn{min-height:47px;margin-top:3px}.hero-form-note{font-size:11px!important;line-height:1.35;margin-top:7px!important}
.welcome{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:100px 0}.welcome h2{font-size:clamp(2.5rem,4.5vw,4.1rem);margin-top:12px}.welcome p:not(.eyebrow){font-size:18px;color:var(--muted);line-height:1.65;margin-top:22px}.welcome-photo{min-height:365px;border-radius:26px;background:linear-gradient(140deg,#f5e6e0dd,#e5ddd1bb),url('https://images.unsplash.com/photo-1759338584492-45647a320916?auto=format&fit=crop&w=1200&q=80') center/cover;box-shadow:var(--shadow);position:relative;overflow:hidden}.welcome-plate{position:absolute;bottom:22px;left:22px;border-radius:20px;padding:18px 22px;background:rgba(255,255,255,.92);backdrop-filter:blur(9px);box-shadow:var(--shadow)}.welcome-plate strong{font:800 27px/1 var(--font-display)}.welcome-plate span{display:block;font-size:13px;color:var(--muted);margin-top:6px}.welcome .btn{margin-top:24px}
.benefit-showcase{background:#f3efec;padding:84px 0 98px}.benefit-showcase>div>h2{font-size:clamp(2.4rem,4vw,3.55rem);margin-top:10px}.benefit-intro{max-width:850px;color:var(--muted);margin:15px 0 0;font-size:17px}.example{margin-top:42px}.example-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.example-top h3{font-size:24px}.example-top .example-tag{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#b72f76;background:#fff;padding:6px 12px;border-radius:50px}
.benefit-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.benefit-tile{background:white;border:1px solid #e8e2e2;border-radius:20px;display:flex;gap:13px;align-items:flex-start;padding:20px;box-shadow:0 8px 25px rgba(20,20,25,.025)}.benefit-icon{width:43px;height:43px;border-radius:13px;flex:0 0 43px;display:grid;place-items:center;background:#fce4ef;color:var(--pink);font-size:22px;font-weight:800}.benefit-tile strong{display:block;line-height:1.25}.benefit-tile small{display:block;color:var(--muted);line-height:1.45;margin-top:6px;font-size:13px}
.ticker-shell{position:relative;overflow:hidden;border:1px solid #e6d5df;border-radius:18px;background:#fff}.ticker-shell::before,.ticker-shell::after{content:'';position:absolute;z-index:2;top:0;bottom:0;width:35px;pointer-events:none}.ticker-shell::before{left:0;background:linear-gradient(90deg,#fff,transparent)}.ticker-shell::after{right:0;background:linear-gradient(270deg,#fff,transparent)}.ticker-track{display:flex;gap:32px;width:max-content;animation:ticker 36s linear infinite;padding:16px 20px}.ticker-shell:hover .ticker-track,.ticker-shell:focus-within .ticker-track{animation-play-state:paused}.ticker-pill{white-space:nowrap;font-weight:700;display:inline-flex;gap:11px;align-items:center}.ticker-pill i{font-style:normal;color:var(--pink);font-size:20px}@keyframes ticker{to{transform:translateX(-50%)}}
.tooltip-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px}.benefit-tip{position:relative;border:1px solid #eadce2;border-radius:18px;background:white;min-height:118px;padding:17px 12px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;text-align:center;cursor:pointer;color:var(--ink)}.benefit-tip strong{line-height:1.25;font-size:14px}.benefit-tip>span{color:var(--pink);font-weight:900;font-size:26px;line-height:1}.benefit-tip .tip-popup{display:none;position:absolute;z-index:15;left:50%;bottom:calc(100% + 12px);transform:translateX(-50%);width:240px;max-width:90vw;padding:15px 17px;border-radius:13px;background:var(--ink);color:white;box-shadow:var(--shadow);font-size:13px;font-weight:500;text-align:left;line-height:1.5}.benefit-tip .tip-popup::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:7px solid transparent;border-top-color:var(--ink)}.benefit-tip:hover,.benefit-tip:focus-visible,.benefit-tip[aria-expanded="true"]{border-color:var(--pink);box-shadow:0 8px 24px rgba(200,18,110,.12)}.benefit-tip:hover .tip-popup,.benefit-tip:focus-visible .tip-popup,.benefit-tip[aria-expanded="true"] .tip-popup{display:block}.example-footnote{margin-top:14px;font-size:13px;color:var(--muted)}
.testimonials-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.testimonials-heading .testimonials-head{max-width:none;margin:0;text-align:left}.testi-controls{display:flex;gap:10px}.testi-controls button{border:1px solid var(--rule);background:white;width:47px;height:47px;border-radius:50%;font-size:23px}.quotes-viewport{margin-top:36px;overflow:hidden}.quotes{display:flex;gap:17px;margin-top:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;padding:4px 2px 20px}.quotes::-webkit-scrollbar{display:none}.quote{flex:0 0 calc((100% - 34px)/3);min-width:0;scroll-snap-align:start;min-height:365px}.testimonials-hint{color:var(--muted);font-size:13px;margin-top:12px;text-align:center}
.faq-on-page{padding:100px 0;background:var(--subtle)}.faq-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:35px}.faq-heading h2{font-size:clamp(2.5rem,4.6vw,3.7rem);margin-top:10px}.faq-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.faq-col{display:grid;gap:14px}.faq-on-page details{border:1px solid var(--rule);border-radius:16px;background:#fff;padding:22px 24px}.faq-on-page details[open]{box-shadow:var(--shadow)}.faq-on-page summary{font-size:17px;font-weight:700;line-height:1.4;cursor:pointer;list-style:none;padding-right:26px;position:relative}.faq-on-page summary::-webkit-details-marker{display:none}.faq-on-page summary::after{content:'+';position:absolute;right:0;top:0;font-size:24px;line-height:1;color:var(--pink)}.faq-on-page details[open] summary::after{content:'−'}.faq-on-page details p{margin-top:18px;line-height:1.6;color:var(--muted)}.faq-contact{font-size:14px;margin-top:25px}.faq-contact a{color:#b51566;font-weight:700}
#our-history{scroll-margin-top:120px}#who-we-are{scroll-margin-top:120px}
@media(max-width:1340px){.nav{gap:15px;font-size:15px}.header-phone{font-size:15px}.header-content .btn-sm{padding-inline:15px}.brand{min-width:190px}.brand-icon{font-size:42px}.brand-name{font-size:15px}.brand-name small{font-size:8px}}
@media(max-width:1160px){.header-phone{display:none}.nav{gap:18px}.hero-overlay{padding:22px}.hero-overlay-card{padding:23px 24px}}
@media(max-width:1000px){.nav,.header-actions .btn-sm,.header-phone{display:none}.menu-toggle,.phone-icon{display:inline-flex}.header-content{height:72px}.header-actions{gap:12px}.hero-visual{height:655px}.hero-overlay{width:54%}.sale-board{left:6%}.tooltip-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){.hero-copy{padding:35px 17px 25px}.hero-copy h1{font-size:clamp(3rem,10vw,4rem)}.ppc-message{font-size:14px}.hero-actions{gap:10px}.hero-actions .btn{width:min(46%,230px);padding:11px 9px;font-size:14px;white-space:normal;text-align:center}.hero-visual{height:auto;min-height:0;display:flex;flex-direction:column}.hero-slides{inset:0 0 auto 0;height:370px;z-index:0}.hero-slide img{height:370px}.hero-visual::after{height:370px;bottom:auto}.sale-board{left:9%;top:85px;bottom:auto;width:150px;z-index:3}.sale-board-post{height:48px}.hero-slide-controls{top:318px;bottom:auto;left:19px;max-width:none}.slider-status{top:12px;left:16px}.hero-overlay{width:100%;padding:0 0 16px;margin:340px 0 0;height:auto;min-height:0;position:relative;z-index:4}.hero-overlay-card{max-width:none;width:auto;margin:0 12px;padding:24px 22px}.hero-form-note{max-width:440px}.welcome{grid-template-columns:1fr;gap:32px;padding:77px 0}.welcome-photo{min-height:310px}.benefit-showcase{padding:75px 0}.benefit-tiles{grid-template-columns:repeat(2,1fr)}.tooltip-grid{grid-template-columns:repeat(3,1fr)}.testimonials-heading{align-items:flex-start}.quote{flex-basis:80%;min-height:345px}.faq-on-page{padding:78px 0}.faq-layout{grid-template-columns:1fr}.faq-heading{align-items:start;flex-direction:column}.hero-overlay-card h2{font-size:2.35rem}}
@media(max-width:480px){.brand{min-width:0}.brand-icon{font-size:41px}.brand-name{font-size:14px}.brand-name small{font-size:7.5px}.hero-actions .btn{width:100%;max-width:320px}.hero-actions{flex-direction:column}.hero-visual{border-radius:17px}.benefit-tiles{grid-template-columns:1fr}.tooltip-grid{grid-template-columns:repeat(2,1fr)}.tooltip-grid .benefit-tip{min-height:112px}.benefit-tip .tip-popup{width:190px}.quote{flex-basis:90%}.testimonials-heading h2{font-size:2.3rem}.hero-visual .hero-overlay-card{padding:22px 19px}.welcome-photo{min-height:235px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}.ticker-track{animation:none}.quotes{scroll-behavior:auto}}


/* ===== V4: compact option-3 reassurance beneath introduction ===== */
.hero-copy{padding:40px 20px 25px}
.hero-sub{margin-top:16px}
.hero-benefits{width:min(100%,1190px);margin:24px auto 0;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr))}
.hero-benefits .benefit-tip{min-height:83px;padding:10px 8px;gap:5px;border-radius:15px;box-shadow:0 3px 12px rgba(20,20,25,.025)}
.hero-benefits .benefit-tip>span{font-size:26px}
.hero-benefits .benefit-tip strong{font-size:14px;line-height:1.25}
.hero-actions{margin-top:22px}
/* ===== V4: image below the message; form floats across its top and bottom ===== */
.hero-composition{position:relative;margin-top:8px;margin-bottom:72px;padding-bottom:105px}
.hero-story{max-width:calc(100% - 540px);min-height:127px;padding:0 0 21px 10px;position:relative;z-index:4}
.hero-story .eyebrow{font-size:12px;letter-spacing:.11em}
.hero-story h2{font-size:clamp(2.05rem,3.15vw,3.15rem);margin-top:7px;line-height:1.08}
.hero-story h2 span{color:#ca2279}
.hero-story p:not(.eyebrow){font-size:16px;line-height:1.48;margin-top:10px;color:var(--muted)}
.hero-story a{color:#bb176b;font-weight:800;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.hero-composition .hero-visual{height:500px;min-height:0;width:100%;position:relative;overflow:hidden;border-radius:26px;isolation:isolate}
.hero-composition .hero-slides{inset:0;z-index:0}
.hero-composition .hero-visual::after{inset:0;z-index:2;height:100%;background:linear-gradient(90deg,rgba(20,23,28,.15),rgba(20,23,28,0) 62%)}
.hero-composition .hero-slide-controls{z-index:5}
.hero-composition .hero-overlay{position:absolute;top:0;right:25px;width:min(44%,490px);max-width:490px;height:auto;min-height:0;padding:0;margin:0;display:block;z-index:8}
.hero-composition .hero-overlay-card{width:100%;max-width:none;margin:0;padding:30px 29px 27px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.93);border-radius:27px;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%);box-shadow:0 20px 60px rgba(24,21,28,.19)}
.hero-composition .hero-overlay-card h2{font-size:clamp(2.25rem,3vw,2.85rem)}
.hero-composition .hero-form{gap:12px;margin-top:18px}
.hero-composition .hero-form label{font-size:13px}
.hero-composition .hero-form input,.hero-composition .hero-form textarea{border-radius:12px;padding:12px 14px;min-height:46px}
.hero-composition .hero-form textarea{min-height:110px}
.hero-composition .hero-form .btn{min-height:49px}
@media(max-width:1100px){
  .hero-story{max-width:calc(100% - 475px);min-height:143px}
  .hero-composition .hero-overlay{right:17px;width:min(47%,455px)}
  .hero-composition .hero-overlay-card{padding:25px 24px}
  .hero-composition .hero-overlay-card h2{font-size:2.3rem}
  .hero-benefits{grid-template-columns:repeat(3,minmax(0,1fr));max-width:780px}
}
@media(max-width:900px){
  /* Keep the layered hero readable on tablets; float only on wider screens. */
  .hero-composition{margin-top:10px;margin-bottom:20px;padding-bottom:14px}
  .hero-story{max-width:none;min-height:0;padding:0 5px 18px}
  .hero-story h2{font-size:clamp(1.85rem,4.8vw,2.8rem)}
  .hero-composition .hero-visual{height:385px;min-height:0;display:block;position:relative}
  .hero-composition .hero-slides{inset:0;height:100%}
  .hero-composition .hero-slide img{height:100%}
  .hero-composition .hero-visual::after{height:100%;bottom:0}
  .hero-composition .hero-slide-controls{top:auto;bottom:17px;left:16px}
  .hero-composition .hero-overlay{position:relative;top:auto;right:auto;width:calc(100% - 24px);max-width:520px;height:auto;margin:-45px auto 0;padding:0;z-index:8}
  .hero-composition .hero-overlay-card{padding:25px 23px;border-radius:23px}
}
@media(max-width:767px){
  .hero-copy{padding:33px 17px 22px}
  .hero-benefits{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:21px}
  .hero-benefits .benefit-tip{min-height:80px;padding:9px 7px}
  .hero-benefits .benefit-tip strong{font-size:13px}
  .hero-composition{margin-top:11px;margin-bottom:20px;padding-bottom:14px}
  .hero-story{max-width:none;min-height:0;padding:0 5px 17px}
  .hero-story h2{font-size:clamp(1.85rem,6vw,2.8rem)}
  .hero-story p:not(.eyebrow){font-size:15px}
  .hero-composition .hero-visual{height:365px;min-height:0;display:block;position:relative}
  .hero-composition .hero-slides{inset:0;height:100%}
  .hero-composition .hero-slide img{height:100%}
  .hero-composition .hero-visual::after{height:100%;bottom:0}
  .hero-composition .hero-slide-controls{top:auto;bottom:17px;left:16px}
  .hero-composition .hero-overlay{position:relative;top:auto;right:auto;width:calc(100% - 24px);max-width:520px;height:auto;margin:-45px auto 0;padding:0;z-index:8}
  .hero-composition .hero-overlay-card{padding:25px 23px;border-radius:23px}
  .hero-composition .hero-overlay-card h2{font-size:2.3rem}
}
@media(max-width:480px){
  .hero-benefits{grid-template-columns:repeat(2,minmax(0,1fr));max-width:385px}
  .hero-benefits .benefit-tip{min-height:76px}
  .hero-composition .hero-visual{height:315px}
  .hero-composition .hero-overlay{width:calc(100% - 20px);margin-top:-35px}
  .hero-composition .hero-overlay-card{padding:23px 19px}
  .hero-composition .hero-overlay-card h2{font-size:2.1rem}
}


/* ===== V5 focused refinements ===== */
/* Smaller benefit tooltip text, with greater visual breathing room. */
.benefit-tip .tip-popup,.hero-benefits .benefit-tip>.tip-popup{font-size:11px;font-weight:500;line-height:1.42;padding:12px 14px;width:218px;color:#fff;text-align:left}
.hero-copy{padding-bottom:39px}
.hero-benefits{margin-top:30px}
.hero-actions{margin-top:27px}
.hero-composition{margin-top:20px}
.hero-story{padding-bottom:26px}
.hero-composition .hero-visual{height:560px}
.hero-form-note.privacy-assurance{display:flex;align-items:flex-start;gap:9px;line-height:1.45;margin-top:10px!important;color:#68707b;font-size:12px!important}
.privacy-lock{flex:0 0 16px;color:#858b94;margin-top:1px}
/* No washed-out image treatment: the new About image is full-colour and naturally lit. */
.welcome-photo{background-position:center;background-size:cover;background-color:#e9e1d5}
.welcome-plate{background:rgba(255,255,255,.94)}
.benefit-tile.benefit-open{position:relative;cursor:pointer;width:100%;min-height:112px;text-align:left;color:var(--ink);font-family:var(--font-text);transition:transform .2s,box-shadow .2s,border-color .2s}
.benefit-tile.benefit-open:hover,.benefit-tile.benefit-open:focus-visible{transform:translateY(-3px);border-color:#e9afcb;box-shadow:0 15px 32px rgba(200,18,110,.11)}
.benefit-tile .benefit-tile-copy{flex:1;min-width:0}
.benefit-arrow{font-size:18px;color:var(--pink);margin-left:auto;align-self:flex-end}
.benefit-modal-dialog{width:min(94vw,530px);max-height:min(90vh,650px);padding:0;border:0;border-radius:27px;background:#fff;box-shadow:0 25px 90px rgba(10,15,25,.30);overflow:auto}
.benefit-modal-dialog::backdrop{background:rgba(15,19,27,.5);backdrop-filter:blur(5px)}
.benefit-modal-inner{padding:35px 35px 30px}
.benefit-modal-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.benefit-modal-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:18px;background:#ffe2ef;color:var(--pink);font-size:29px;font-weight:800;flex:0 0 60px}
.benefit-modal-close{width:36px;height:36px;flex:0 0 36px;border-radius:50%;background:#f7f5f4;border:1px solid #eee;color:var(--ink);font-size:22px;line-height:1}
.benefit-modal-dialog h2{font-size:clamp(1.9rem,4.3vw,2.5rem);margin-top:25px}
.benefit-modal-dialog p{font-size:16px;color:var(--muted);line-height:1.7;margin-top:15px}
.benefit-modal-dialog .modal-note{background:#fff5f9;border:1px solid #f7dbe8;border-radius:13px;padding:13px 15px;color:#772548;font-size:14px;margin:19px 0 23px}
.benefit-modal-dialog .btn{width:100%}
.cta-section .btn-row .btn{width:233px;min-width:0}
.stats dt{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:900px){.hero-composition .hero-visual{height:385px}.hero-composition .hero-slide-controls{bottom:80px}}
@media(max-width:767px){.hero-composition .hero-visual{height:365px}.hero-composition .hero-slide-controls{bottom:72px}.hero-copy{padding-bottom:28px}.hero-composition{margin-top:16px}}
@media(max-width:480px){.hero-composition .hero-visual{height:315px}.hero-composition .hero-slide-controls{bottom:64px}.benefit-modal-inner{padding:27px 22px}.cta-section .btn-row .btn{width:min(100%,320px)}}

  
/* ===== V6: mobile-only compact reassurance list =====
   The desktop tooltip buttons and full six-reasons lightboxes remain unchanged. */
.hero-benefits-mobile{display:none}
@media (max-width:767px){
  .hero-benefits{display:none!important}
  .hero-benefits-mobile{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:13px;
    row-gap:11px;
    width:min(100%,360px);
    margin:20px auto 0;
    padding:0;
    list-style:none;
    text-align:left;
  }
  .hero-benefits-mobile li{
    display:flex;
    align-items:flex-start;
    gap:7px;
    min-width:0;
    color:var(--ink);
    font-size:13px;
    font-weight:700;
    line-height:1.35;
  }
  .hero-benefits-mobile li::before{
    content:"✓";
    display:inline-block;
    flex:0 0 auto;
    color:var(--pink);
    font-size:16px;
    font-weight:800;
    line-height:1.1;
  }
  .hero-copy{padding-top:28px;padding-bottom:17px}
  .hero-actions{margin-top:19px}
  .hero-composition{margin-top:12px}
}
@media(max-width:360px){
  .hero-benefits-mobile{column-gap:8px}
  .hero-benefits-mobile li{font-size:12px;gap:5px}
}


/* ===== V7: refined tooltip readability and compact logo space below hero ===== */
.benefit-tip .tip-popup,
.hero-benefits .benefit-tip > .tip-popup {
  font-size:13px;
  line-height:1.5;
  width:235px;
}
/* The image ends around the midpoint of the main form button, with space for logos below. */
.hero-composition .hero-visual{height:530px}
.hero-composition{margin-bottom:10px;padding-bottom:25px}
.welcome{padding-top:62px}
.hero-logo-placeholders{width:calc(100% - 540px);max-width:840px;margin:18px auto 0 0}
.hero-logo-placeholders .logo-row-label{display:none}
.hero-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch}
.hero-logo-slot{display:flex;align-items:center;justify-content:center;gap:9px;min-height:58px;padding:11px 10px;background:rgba(248,247,245,.82);border:1px dashed #d8d5d6;border-radius:12px;color:#a4a0a3;min-width:0}
.hero-logo-slot svg{flex:0 0 auto;width:19px;height:19px;stroke:currentColor}
.hero-logo-slot span{font-size:11px;font-weight:700;letter-spacing:.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:900px){
  .hero-composition .hero-visual{height:385px}
  .hero-composition{padding-bottom:5px;margin-bottom:0}
  .welcome{padding-top:67px}
  .hero-logo-placeholders{width:100%;max-width:720px;margin:22px auto 0}
}
@media(max-width:767px){
  .hero-composition .hero-visual{height:365px}
  .hero-logo-placeholders{width:100%;margin-top:19px}
  .hero-logo-slot{min-height:48px;gap:5px;padding:8px 4px}
  .hero-logo-slot svg{width:15px;height:15px}
  .hero-logo-slot span{font-size:10px}
  .hero-logo-grid{gap:8px}
  .welcome{padding-top:60px}
}
@media(max-width:480px){
  .hero-composition .hero-visual{height:315px}
  .hero-logo-slot span{font-size:9px}
}


/* -------- Multi-page website enhancements -------- */
.hero-sub-title{font-family:var(--font-display);font-size:clamp(1.3rem,2.3vw,2rem);font-weight:700;color:var(--ink);margin-top:16px;line-height:1.15}
.hero-support{color:var(--muted);max-width:780px;margin:12px auto 0;line-height:1.6;font-size:clamp(.98rem,1.4vw,1.11rem)}
.hero-copy .hero-benefits{margin-top:23px}
.hero-copy .hero-benefits-mobile{margin-top:20px}
.hero-copy{padding-top:70px}
.family-copy{max-width:865px;margin:46px auto 0;text-align:center;color:#f5f1ed;font-size:clamp(1rem,1.3vw,1.14rem);line-height:1.7}
.family-copy p+p{margin-top:16px}.family-copy strong{font-size:1.08em;font-weight:700}
.inner-hero{padding-top:100px;padding-bottom:82px;text-align:center}
.inner-hero h1{font-size:clamp(3rem,6.2vw,5.6rem);max-width:920px;margin:14px auto 0}
.inner-hero>p:not(.eyebrow){max-width:800px;margin:24px auto 0;font-size:clamp(1.1rem,1.8vw,1.4rem);line-height:1.6;color:var(--muted)}
.inner-hero .btn-row{margin-top:32px}
.detail-lead{max-width:810px;font-size:1.18rem;color:var(--muted);margin-top:24px}
.service-detail .section-heading{max-width:850px;margin-top:12px}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:38px}
.detail-card{background:white;border:1px solid var(--rule);border-radius:24px;padding:30px;box-shadow:0 8px 30px rgba(0,0,0,.03)}
.detail-card h3{font-size:1.46rem;margin-top:13px}.detail-card p{margin-top:12px;color:var(--muted)}
.detail-check{font-size:22px;color:var(--pink)}.detail-foot{margin-top:28px}
.faq-landing{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px}.faq-landing details{background:white;border-radius:16px;border:1px solid var(--rule);padding:3px 22px}
.timeline-section{padding:100px 0}.timeline{list-style:none;padding:0;margin:0 auto;max-width:990px;position:relative}.timeline::before{content:"";position:absolute;top:0;bottom:0;left:48px;width:2px;background:color-mix(in oklab,var(--pink),transparent 68%)}
.timeline-item{display:grid;grid-template-columns:98px 1fr;gap:28px;position:relative;padding-bottom:58px}.timeline-item:last-child{padding-bottom:0}.timeline-number{width:96px;height:96px;border-radius:26px;background:var(--pink);color:white;display:grid;place-items:center;font:bold 30px var(--font-display);z-index:1;box-shadow:var(--shadow)}
.timeline-copy{padding:22px 0 5px}.timeline-copy h2{font-size:clamp(1.7rem,3vw,2.6rem);margin:10px 0 14px}.timeline-copy>p:last-child{color:var(--muted);font-size:1.12rem;max-width:730px}
.timeline-note{max-width:990px;margin:60px auto 0;border-left:4px solid var(--pink);border-radius:0 14px 14px 0;background:white;padding:24px 30px;color:var(--muted)}
.inner-split{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center}.inner-split h2{font-size:clamp(2.4rem,4vw,3.75rem);margin:12px 0 26px}.inner-split p:not(.eyebrow){font-size:1.11rem;color:var(--muted);line-height:1.75;margin-bottom:18px}.inner-split strong{color:var(--ink)}.inner-split .underline-link{display:inline-block;margin-top:14px}.inner-split img{border-radius:28px;aspect-ratio:1.25;object-fit:cover;width:100%}
.reverse-split{padding-block:94px}
.contact-layout{display:grid;grid-template-columns:.87fr 1.13fr;gap:60px;align-items:start}
.contact-information h2,.contact-panel h2{font-size:clamp(2rem,3.3vw,3.2rem);margin:12px 0 20px}
.contact-details-list{display:grid;gap:24px;margin-top:34px}.contact-details-list>div{padding-bottom:22px;border-bottom:1px solid var(--rule)}.contact-details-list strong,.contact-details-list a,.contact-details-list small{display:block}.contact-details-list strong{font-size:.86rem;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.07em}.contact-details-list a{font-size:1.25rem;font-weight:700;overflow-wrap:anywhere}.contact-details-list a:hover{color:var(--pink)}.contact-details-list small{color:var(--muted);margin-top:4px}.contact-details-list address{font-style:normal;line-height:1.7}
.contact-panel{background:white;border:1px solid var(--rule);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.contact-panel>p:not(.eyebrow){color:var(--muted)}
.site-contact-form{display:grid;gap:17px;margin-top:26px}.site-contact-form label{display:block;font-size:.86rem;font-weight:700}.site-contact-form input,.site-contact-form textarea,.site-contact-form select{display:block;margin-top:7px;background:var(--paper);border:1px solid var(--rule);border-radius:12px;width:100%;min-height:50px;padding:12px 14px;color:var(--ink)}.site-contact-form textarea{resize:vertical;min-height:140px}
.contact-form-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}.site-contact-form>.btn{width:100%}.form-privacy{font-size:.78rem;color:var(--muted);line-height:1.6}
.map-section{padding:90px 0}.map-section h2{font-size:clamp(2.2rem,4vw,3.6rem);margin:12px 0 14px}.map-section>div>p:not(.eyebrow){color:var(--muted)}.map-frame{border-radius:24px;overflow:hidden;margin:30px 0;background:var(--subtle);box-shadow:var(--shadow)}.map-frame iframe{display:block;width:100%;height:430px;border:0}
.faq-standalone{display:grid;grid-template-columns:1fr 1fr;gap:18px}.faq-standalone details{background:#fff;border:1px solid var(--rule);padding:4px 24px;border-radius:16px}.faq-ask{text-align:center;margin:85px auto 0;max-width:680px}.faq-ask h2{font-size:clamp(2rem,4vw,3rem)}.faq-ask p{margin:15px auto 24px;color:var(--muted)}
body[data-page="contact"] .floating-talk{display:none}
@media(max-width:900px){.inner-split,.contact-layout{gap:34px}.detail-grid{grid-template-columns:1fr 1fr}.faq-landing{grid-template-columns:1fr}}
@media(max-width:767px){.hero-copy{padding-top:54px}.hero-sub-title{font-size:1.33rem}.hero-support{font-size:.98rem;margin-top:10px}.inner-hero{padding-top:65px;padding-bottom:55px}.detail-grid,.inner-split,.contact-layout,.faq-standalone{grid-template-columns:1fr}.reverse-split img{order:2}.reverse-split>div{order:1}.inner-split img{max-height:370px;aspect-ratio:1.4}.timeline-section{padding:60px 0}.timeline::before{left:30px}.timeline-item{grid-template-columns:60px 1fr;gap:18px;padding-bottom:46px}.timeline-number{width:60px;height:60px;border-radius:17px;font-size:20px}.timeline-copy{padding-top:5px}.timeline-copy h2{font-size:1.65rem}.timeline-copy>p:last-child{font-size:1rem}.contact-panel{padding:25px 20px}.contact-form-pair{grid-template-columns:1fr}.map-frame iframe{height:340px}.family-copy{margin-top:28px}.faq-standalone{gap:10px}}
@media(max-width:450px){.hero-copy .hero-actions{margin-top:20px}.hero-sub-title{font-size:1.16rem}.hero-support{font-size:.93rem}.inner-hero h1{font-size:2.9rem}.inner-split h2{font-size:2.55rem}}
/* Prevent original About image intrinsic dimensions widening a narrow viewport. */
@media(max-width:767px){.about{grid-template-columns:minmax(0,1fr)}.about>*{min-width:0;max-width:100%}}
@media(max-width:767px){.inner-split{grid-template-columns:minmax(0,1fr)}.inner-split>*{min-width:0;max-width:100%}.inner-split img{max-width:100%}}


/* ===== V2 copy and categorised FAQs ===== */
.hero-copy h2.hero-sub-title{font-family:var(--font-display);font-size:clamp(1.3rem,2.3vw,2rem);font-weight:700;line-height:1.2;margin:16px auto 0;max-width:940px;letter-spacing:-.025em}
.hero-story h2{overflow-wrap:normal}
@media(min-width:1101px){body[data-page="tenanted-properties"] .hero-story h2{font-size:clamp(1.75rem,2.4vw,2.45rem);white-space:nowrap;letter-spacing:-.037em}}
.faq-category-nav{display:flex;gap:11px;align-items:center;flex-wrap:wrap;margin-top:-30px;margin-bottom:42px}
.faq-category-nav span{font-size:.86rem;color:var(--muted);font-weight:700;margin-right:5px}
.faq-category-nav a{padding:10px 17px;background:#fff;border:1px solid var(--rule);border-radius:999px;font-size:.89rem;font-weight:700;transition:background .2s,border-color .2s}
.faq-category-nav a:hover,.faq-category-nav a:focus-visible{border-color:var(--pink);background:#fff2f8;color:#a31663}
.faq-category-section{scroll-margin-top:90px;padding-top:55px;padding-bottom:55px}
.faq-category-section + .faq-category-section{border-top:1px solid var(--rule)}
.faq-category-heading h2{font-size:clamp(2rem,3.6vw,3rem);margin-top:10px}
.faq-category-heading>p:last-child{font-size:1.05rem;color:var(--muted);margin-top:13px;margin-bottom:28px}
.faq-standalone details{min-width:0}
@media(max-width:1100px){body[data-page="tenanted-properties"] .hero-story h2{white-space:normal}}
@media(max-width:767px){.hero-copy h2.hero-sub-title{font-size:1.33rem;margin-top:15px}.faq-category-nav{margin-top:-10px;margin-bottom:12px;gap:9px}.faq-category-nav span{width:100%}.faq-category-nav a{font-size:.82rem;padding:8px 13px}.faq-category-section{padding-top:44px;padding-bottom:48px}.faq-category-heading>p:last-child{font-size:.97rem}.faq-ask{margin-top:65px}}
/* Tablet transition: prevent the original two-column About photograph from widening the page. */
@media(min-width:768px) and (max-width:950px){
  .about{grid-template-columns:minmax(0,1fr);gap:30px}
  .about>*{min-width:0;max-width:100%}
  .about img{width:100%;max-width:100%}
}
@media(min-width:768px) and (max-width:950px){
  .inner-split{grid-template-columns:minmax(0,1fr);gap:32px}
  .inner-split>*{min-width:0;max-width:100%}
  .inner-split img{max-width:100%;width:100%;max-height:410px}
}
/* Match the homepage FAQ accordion visual language on the full FAQ page. */
.faq-category-section .faq-standalone details{padding:19px 21px;border-radius:16px;align-self:start}
.faq-category-section .faq-standalone details[open]{border-color:#e9b4cd;box-shadow:0 12px 32px rgba(44,20,37,.055)}
.faq-category-section .faq-standalone summary{list-style:none;position:relative;padding-right:32px;font-size:16px;line-height:1.4}
.faq-category-section .faq-standalone summary::-webkit-details-marker{display:none}
.faq-category-section .faq-standalone summary::after{content:'+';position:absolute;right:0;top:-4px;color:var(--pink);font-size:25px;font-weight:500;line-height:1.25}
.faq-category-section .faq-standalone details[open] summary::after{content:'−'}
.faq-category-section .faq-standalone details p{line-height:1.65;margin-top:17px}
@media(min-width:901px) and (max-width:1100px){
 body[data-page="tenanted-properties"] .hero-story h2{font-size:2.25vw;white-space:nowrap;letter-spacing:-.034em}
}


/* ===== V3: PPC intent-aware journey, unobtrusive on supporting pages ===== */
.context-journey[hidden]{display:none!important}
.context-journey{position:sticky;top:84px;z-index:45;background:#fff;border-bottom:1px solid var(--rule);box-shadow:0 7px 24px rgba(24,27,35,.065)}
.context-journey-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.context-journey-copy{display:flex;align-items:center;gap:12px;min-width:0}
.context-journey-icon{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:12px;background:#fce9f2;color:var(--pink);font-size:23px}
.context-journey-copy strong{display:block;font-size:15px;line-height:1.25}
.context-journey-copy small{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.context-journey-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.context-journey-return{display:inline-flex;align-items:center;justify-content:center;border:1px solid #eacbd9;background:#fff;border-radius:999px;color:#b41669;padding:10px 16px;font-weight:700;font-size:13px;min-height:40px;transition:background .2s}
.context-journey-return:hover{background:#fff0f6;color:#95104f}
.context-journey-contact{background:var(--pink);color:#fff;font-weight:700;font-size:13px;border-radius:999px;min-height:40px;padding:10px 17px;display:inline-flex;gap:10px;align-items:center;justify-content:center}
.context-journey-contact:hover{filter:brightness(1.05);color:#fff}
.context-cta-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:19px;color:var(--muted);font-size:14px}
.context-cta-note a{color:#b41669;font-weight:700;text-decoration:underline;text-underline-offset:3px}
html.has-service-context{scroll-padding-top:164px}
@media(max-width:1000px){.context-journey{top:72px}}
@media(max-width:767px){
  .context-journey{position:fixed;top:auto;bottom:0;left:0;right:0;z-index:48;padding:10px 12px max(10px,env(safe-area-inset-bottom));box-shadow:0 -8px 30px rgba(23,25,33,.13);border-top:1px solid var(--rule);border-bottom:0;background:rgba(255,255,255,.97);backdrop-filter:blur(14px)}
  .context-journey-inner{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%}
  .context-journey-copy{display:none}
  .context-journey-actions{display:contents}
  .context-journey-return{padding:11px 12px;font-size:12px;min-height:43px;text-align:center;white-space:normal;line-height:1.15}
  .context-journey-contact{padding:11px 14px;font-size:12px;min-height:43px;white-space:nowrap}
  .has-service-context .floating-talk{display:none!important}
  body.has-service-context{padding-bottom:80px}
  html.has-service-context{scroll-padding-top:80px}
  .context-cta-note{flex-wrap:wrap;padding:0 16px}
}
@media(max-width:360px){.context-journey-contact{padding-inline:10px}.context-journey-return{font-size:11px}}

/* V4: desktop nav already contains Get in Touch. Keep the contextual
   mobile action, where the regular nav button is not visible. */
@media (min-width:768px){
  .context-journey-contact{display:none}
}


.hero-form-call{display:none}


/* V14: quote strip removed */
.ppc-proof-strip{display:none!important}

/* V15 logo row: align with photograph's unobstructed left area on desktop. */
@media (min-width:901px){
  .hero-logo-placeholders{width:calc(100% - 540px)!important;max-width:840px!important;margin:16px 0 0!important}
  .hero-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .hero-logo-slot{min-width:0;min-height:55px}
}
@media (max-width:900px){.hero-logo-placeholders{width:100%;max-width:720px;margin:18px auto 0}}
@media (max-width:767px){
  .hero-composition .hero-logo-placeholders{width:100%!important;max-width:570px!important;margin:16px auto 0!important}
  .hero-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
  .hero-logo-slot{padding:8px 2px;min-height:49px;gap:4px}
  .hero-logo-slot svg{width:14px;height:14px}
  .hero-logo-slot span{font-size:9px}
}
