/* Handy Helpers 2026 website concept | Accessible, responsive static site */
:root {--navy:#102d55;--navy-deep:#071f3e;--blue:#235fbb;--blue-bright:#277cc9;--teal:#138f89;--yellow:#ffc34e;--gold:#f4a93c;--off:#f7f9f7;--ink:#142b47;--muted:#51627a;--white:#fff;--line:#dce6e9;--r:1.375rem;--shadow:0 20px 54px rgba(11,42,77,.12)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px;scroll-padding-top:100px}
html.large-text{font-size:18px}
body{margin:0;background:#fff;color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%}img{display:block}svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}a{color:inherit}button{font:inherit;cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.16;letter-spacing:-.045em}h2{font-size:clamp(2.2rem,3.5vw,3.3rem)}h3{letter-spacing:-.025em}p{line-height:1.68}em{font-style:normal;color:var(--blue)}:focus-visible{outline:3px solid #f3a832;outline-offset:4px;border-radius:4px}a:hover{text-decoration-thickness:2px}button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.container{width:min(1220px,calc(100% - 2.5rem));margin-inline:auto}.section-pad{padding-block:clamp(4.5rem,7vw,7rem)}.skip-link{position:fixed;top:-120px;left:1rem;padding:.8rem 1rem;background:var(--yellow);color:#051e3d;z-index:1000;font-weight:800}.skip-link:focus{top:10px}.utility-bar{background:var(--navy-deep);color:#f7fafc;font-size:.795rem}.utility-inner{min-height:38px;display:flex;justify-content:space-between;align-items:center;gap:1rem}.utility-actions{display:flex;align-items:center;gap:1.2rem}.utility-actions button{color:#fff;background:transparent;border:0;font-weight:800;padding:.3rem .2rem}.utility-actions button span{font-weight:500}.utility-phone{display:flex;gap:.45rem;align-items:center;text-decoration:none;font-weight:700}.utility-phone svg{width:15px;height:15px}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.975);border-bottom:1px solid #ecf0f4;box-shadow:0 5px 22px rgba(3,35,69,.03);backdrop-filter:blur(10px)}.header-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{display:flex;align-items:center;gap:.7rem;min-width:245px;text-decoration:none;color:var(--navy)}.brand img{width:64px;height:64px;object-fit:contain}.brand-wordmark{display:flex;flex-direction:column;line-height:1.16}.brand strong{font-size:1.43rem;font-weight:900;letter-spacing:-.055em}.brand small{font-size:.68rem;font-weight:700;letter-spacing:.015em;margin-top:.28rem}.main-nav{display:flex;align-items:center;gap:clamp(.68rem,1.45vw,1.55rem)}.main-nav a{font-size:.87rem;line-height:1.15;font-weight:760;text-decoration:none;color:var(--ink);padding:.75rem 0}.main-nav a:hover{color:var(--blue)}.main-nav a.nav-contact{color:#fff;padding:.95rem 1.12rem;border-radius:100px;background:var(--navy)}.main-nav a.nav-contact:hover{background:var(--blue);color:#fff}.nav-contact span{margin-left:.3rem}.menu-toggle{display:none}
.hero{background:radial-gradient(circle at 90% 27%,#f7fcfa 0,#fff 48%),#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;min-height:640px;align-items:center;gap:2.1rem;padding-top:2.75rem;padding-bottom:4.3rem}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.15em;font-size:.74rem;font-weight:900;color:var(--teal);display:inline-flex;gap:.65rem;align-items:center}.eyebrow-line{width:28px;height:3px;background:var(--yellow)}.hero h1{font-size:clamp(2.6rem,4.8vw,4.7rem);letter-spacing:-.068em;line-height:1.13;color:var(--navy);margin:1.4rem 0 1.6rem;font-weight:900}.hero-blue{color:var(--blue)}.hero-underlined{display:inline;box-shadow:inset 0 -.13em 0 #ffe4a8}.hero-lead{font-size:clamp(1.12rem,1.6vw,1.34rem);line-height:1.58;color:#3c4f66;max-width:560px;margin-bottom:1.8rem}.button-group{display:flex;flex-wrap:wrap;gap:.85rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:52px;padding:1rem 1.28rem;border-radius:999px;text-decoration:none;font-size:.95rem;line-height:1.2;font-weight:850;transition:background .18s ease,color .18s ease,transform .18s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#fff;background:var(--blue)}.btn-primary:hover{background:var(--navy)}.btn-outline{color:var(--navy);background:#fff;border:1.7px solid #b9cbda}.btn-outline:hover{border-color:var(--blue);background:#f0f7fc}.btn-yellow{background:var(--yellow);color:#0a294b}.btn-yellow:hover{background:#ffdc8d}.hero-callout{display:flex;gap:.9rem;margin-top:2rem;align-items:center}.hero-callout svg{width:42px;height:42px;padding:9px;color:var(--teal);border-radius:50%;background:#e6f6f4}.hero-callout div{display:flex;flex-direction:column}.hero-callout span{font-size:.83rem;color:var(--muted);line-height:1.2}.hero-callout a{font-size:1.28rem;font-weight:900;color:var(--navy);text-decoration:none}.hero-visual{position:relative;padding:1.6rem 0 2rem 2.2rem}.hero-visual:before{content:"";position:absolute;border-radius:50%;width:100%;aspect-ratio:1;right:-18%;top:-9%;background:#e7f5ee;z-index:0}.hero-visual:after{content:"";position:absolute;width:150px;height:150px;right:-60px;bottom:-4px;border:20px solid #ffe4a5;border-radius:50%;z-index:0}.photo-arch{position:relative;z-index:1;overflow:hidden;border-radius:48% 48% 20px 20px / 31% 31% 20px 20px;background:#edf3f3;box-shadow:0 27px 55px rgba(10,32,68,.13);height:clamp(440px,45vw,540px)}.photo-arch img{width:100%;height:100%;object-fit:cover;object-position:52% 50%}.hero-stamp{position:absolute;z-index:2;top:12%;left:-7%;width:120px;height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:var(--yellow);transform:rotate(-10deg);box-shadow:0 8px 15px rgba(15,58,91,.1);color:var(--navy);text-align:center}.stamp-head{font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.hero-stamp strong{font-size:1.9rem;line-height:.98;letter-spacing:-.04em}.stamp-dot{position:absolute;right:12px;bottom:10px;font-size:1.35rem}.hero-location{position:absolute;z-index:2;left:-4%;bottom:1%;display:flex;align-items:center;gap:.85rem;padding:.85rem 1.1rem;background:#fff;border-radius:15px;box-shadow:var(--shadow);max-width:315px}.hero-location .loc-icon{background:#d5f1ed;color:#087f77;width:44px;height:44px;border-radius:11px;display:grid;place-items:center;flex:none}.loc-icon svg{width:24px;height:24px}.hero-location div{display:flex;flex-direction:column;line-height:1.2}.hero-location strong{font-size:.9rem}.hero-location div span{font-size:.78rem;color:var(--muted);margin-top:.3rem}
.trust-ribbon{background:var(--navy);color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding-block:1.3rem}.trust-grid>div{display:flex;gap:.85rem;align-items:center;padding-inline:1.3rem;border-right:1px solid rgba(255,255,255,.2)}.trust-grid>div:first-child{padding-left:0}.trust-grid>div:last-child{border:0}.trust-symbol{display:grid;place-items:center;flex:none;width:39px;height:39px;border-radius:50%;background:rgba(255,255,255,.12);color:var(--yellow);font-size:1.45rem;font-weight:800}.trust-grid p{display:flex;flex-direction:column;margin:0;line-height:1.28}.trust-grid strong{font-size:.86rem}.trust-grid p span{font-size:.75rem;color:#bed0e4;margin-top:.3rem}
.intro-grid{display:grid;grid-template-columns:.93fr 1.07fr;gap:clamp(2rem,6vw,6rem);align-items:center}.intro h2{max-width:520px;margin:.8rem 0 0;color:var(--navy)}.intro p{font-size:1.1rem;color:#51647b;margin-bottom:1.15rem}.intro p:last-child{margin-bottom:0}
.services{background:var(--off)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:2.35rem}.section-heading h2{margin:.7rem 0 0;color:var(--navy)}.section-heading h2 span{color:var(--blue)}.section-heading>p{max-width:340px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.service-card{background:#fff;border:1px solid #e5ecee;border-radius:19px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 9px 32px rgba(15,55,82,.04);transition:box-shadow .2s ease, transform .2s ease}.service-card:hover{transform:translateY(-3px);box-shadow:0 16px 35px rgba(15,55,82,.1)}.service-img{height:186px;position:relative;overflow:hidden}.service-img img{width:100%;height:100%;object-fit:cover}.service-img.pendant-img{background:#f7f9f7}.service-img.pendant-img img{object-fit:contain;padding:7px}.service-num{position:absolute;right:11px;top:11px;background:var(--navy);color:#fff;border-radius:30px;font-size:.78rem;font-weight:900;padding:.26rem .62rem}.service-body{padding:1.15rem 1.1rem 1.35rem;display:flex;flex:1;flex-direction:column}.service-icon{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;margin-bottom:.75rem}.service-icon svg{width:25px;height:25px;stroke-width:1.8}.service-icon.sky{background:#e5f3fd;color:#1874bb}.service-icon.mint{background:#e0f5f1;color:#087e78}.service-icon.gold{background:#fff2d8;color:#bd7c12}.service-icon.violet{background:#f0ecfc;color:#6760a6}.service-body h3{font-size:1.24rem;color:var(--navy);line-height:1.3;letter-spacing:-.035em;margin:0 0 .65rem}.service-body p{color:#526177;font-size:.92rem;line-height:1.57;margin-bottom:1.35rem}.service-body a{color:var(--blue);font-size:.88rem;font-weight:850;text-decoration:none;margin-top:auto}.service-body a:hover{text-decoration:underline}.service-note{margin-top:1.5rem;display:flex;align-items:center;gap:.7rem;background:#e6f1f6;padding:1.2rem 1.4rem;border-radius:14px}.service-note>span{font-size:1.8rem;color:var(--blue)}.service-note p{margin:0;flex:1;font-size:.9rem;color:#3a5266}.service-note a{color:var(--blue);font-size:.9rem;font-weight:850;white-space:nowrap}
.steps-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(2rem,9vw,9rem)}.steps-intro{align-self:center}.steps-intro h2{color:var(--navy);margin:.8rem 0 1rem}.steps-intro p{color:var(--muted);font-size:1.08rem;max-width:450px;margin-bottom:1.6rem}.steps-list{list-style:none;padding:0;margin:0}.steps-list li{display:flex;gap:1.5rem;padding:1.45rem 0;border-bottom:1px solid #dfe9ed}.steps-list li:first-child{padding-top:0}.steps-list li:last-child{border:0}.step-number{font-size:1.58rem;font-weight:900;color:var(--teal);letter-spacing:-.06em;flex:none;min-width:46px}.steps-list h3{font-size:1.27rem;color:var(--navy);margin:0 0 .25rem}.steps-list p{color:#52677d;margin:0;font-size:.97rem;line-height:1.6}
.family-section{background:var(--navy);color:#fff;overflow:hidden}.family-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:5rem;padding-block:6rem}.section-kicker.light{color:#80d9d4}.family-copy h2{margin:1rem 0 1.6rem;color:#fff}.family-copy h2 span{color:var(--yellow)}.family-copy p{color:#d4e0ee;font-size:1.04rem;max-width:585px}.family-copy .btn{margin-top:.6rem}.family-panel{position:relative;background:#fff;border-radius:27px;transform:rotate(2deg);box-shadow:0 25px 58px rgba(0,0,0,.13);padding:1.2rem}.handline{font-family:Georgia,serif;font-style:italic;font-size:1.55rem;letter-spacing:-.025em;color:var(--navy);padding:.3rem .5rem 1rem;text-align:center}.family-panel-image{height:265px;overflow:hidden;border-radius:14px;background:#ebf4fa;display:grid;place-items:center}.family-panel-image img{width:100%;height:100%;object-fit:cover}.family-panel-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem .3rem .1rem;color:var(--navy);font-size:.83rem}.family-panel-footer span{color:var(--muted)}
.referral-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,7rem);align-items:start}.referrals h2{color:var(--navy);margin:.8rem 0 1.2rem}.referrals p{color:var(--muted)}.referrals .big-p{font-size:1.19rem;line-height:1.55;color:#28405b;font-weight:650}.referral-cta{padding-top:1.2rem}.referral-cta p{font-size:.81rem;margin-top:.75rem;max-width:450px}.referral-aside{background:#eff8f7;border-radius:24px;overflow:hidden;border:1px solid #d8efec}.referral-top{padding:1.8rem 2rem 0}.referral-glyph{display:grid;place-items:center;border-radius:50%;background:var(--teal);color:#fff;font-weight:900;font-size:1.9rem;width:57px;height:57px;margin-bottom:1rem}.referral-top h3{font-size:1.5rem;color:var(--navy);margin:0 0 .6rem}.referral-top p{font-size:.96rem;margin:0}.referral-list{padding:1.3rem 2rem 1.6rem 3.65rem;margin:0;color:#28475d;font-weight:650;font-size:.93rem}.referral-list li{margin-bottom:.5rem;padding-left:.2rem}.referral-list li::marker{color:var(--teal)}.referral-bottom{background:var(--teal);color:#fff;padding:1rem 1.7rem;font-size:.91rem;font-weight:650}.referral-bottom a{display:inline-block;font-weight:850;margin-left:.1rem}
.impact-section{background:var(--navy-deep);color:#fff}.impact-heading{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end}.impact-heading h2{color:#fff;margin:.7rem 0 0}.impact-heading h2 span{color:var(--yellow)}.impact-heading p{color:#cad9e9;margin:0;font-size:1.03rem}.impact-numbers{display:grid;grid-template-columns:repeat(3,1fr);margin-top:3rem;border-block:1px solid rgba(255,255,255,.2)}.impact-numbers>div{padding:2.45rem 2rem;border-right:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column}.impact-numbers>div:first-child{padding-left:0}.impact-numbers>div:last-child{border:0}.impact-numbers strong{font-size:clamp(4rem,7vw,6.1rem);font-weight:850;color:var(--yellow);line-height:1;letter-spacing:-.075em}.impact-numbers span{margin-top:1rem;color:#e5edf5;max-width:230px;font-size:1rem;line-height:1.4}.impact-foot{display:flex;gap:2rem;align-items:center;padding-top:2rem;max-width:900px}.impact-drawing{flex:none;width:112px;height:95px;display:grid;place-items:center;border-radius:22px;background:#1b3b60}.impact-drawing svg{color:var(--yellow);width:100px;height:60px;stroke-width:3}.impact-foot h3{font-size:1.2rem;margin:0 0 .4rem}.impact-foot p{margin:0;color:#c9d9e9;font-size:.93rem}
.partners{background:#fff}.partners-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,9vw,9rem)}.partners-left h2{margin:.7rem 0 1.4rem;color:var(--navy)}.partners-left p{color:var(--muted);font-size:1.03rem}.text-link{display:inline-block;color:var(--blue);text-decoration:none;font-weight:850;border-bottom:2px solid var(--blue);padding:.35rem 0;margin-top:.7rem}.partners-right{border-top:1px solid var(--line)}.partner-feature{display:grid;grid-template-columns:53px 1fr;gap:.2rem 1.1rem;padding:1.3rem .2rem;border-bottom:1px solid var(--line)}.partner-feature span{grid-row:span 2;color:var(--teal);font-size:1.25rem;font-weight:900}.partner-feature h3{margin:0;font-size:1.15rem;color:var(--navy)}.partner-feature p{margin:.1rem 0 0;color:var(--muted);font-size:.94rem}
.faq{background:#f7f9f8}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,8vw,8rem)}.faq h2{color:var(--navy);margin:.7rem 0 1rem}.faq-grid>div:first-child p{color:var(--muted)}.faq-list{border-top:1px solid #cddade}.faq-list details{border-bottom:1px solid #cddade;padding:0}.faq-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem .2rem;font-weight:800;line-height:1.4;color:var(--navy)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{width:29px;height:29px;border:1px solid #9fb2bf;border-radius:50%;display:grid;place-items:center;flex:none;line-height:1;font-size:1.3rem;color:var(--teal)}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{padding:0 2.7rem 1.1rem .2rem;color:var(--muted);margin:0;font-size:.96rem}
.contact-section{background:var(--teal);color:#fff;position:relative;overflow:hidden}.contact-section:after{position:absolute;content:"";border:50px solid rgba(255,255,255,.06);width:490px;height:490px;right:-200px;bottom:-250px;border-radius:50%}.contact-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,7vw,7rem);padding-block:5.2rem;align-items:center}.contact-section h2{color:#fff;margin:.8rem 0 1.3rem}.contact-section h2 span{color:var(--yellow)}.contact-grid>div>p{max-width:540px;color:#e5f7f3;font-size:1.05rem}.contact-actions{max-width:540px;margin-top:1.85rem;display:grid;gap:.75rem}.contact-method{display:flex;align-items:center;gap:1rem;text-decoration:none;border:1px solid rgba(255,255,255,.45);border-radius:13px;padding:1rem 1.1rem;color:#fff;min-height:81px;transition:background .2s ease}.contact-method:hover{background:rgba(255,255,255,.12)}.method-icon{width:47px;height:47px;display:grid;place-items:center;border-radius:12px;background:#fff;color:var(--teal);flex:none}.method-icon svg{width:25px;height:25px}.contact-method>span:nth-child(2){display:flex;flex-direction:column;flex:1;min-width:0}.contact-method small{font-size:.83rem;color:#e5f6f2}.contact-method strong{font-size:1.32rem;line-height:1.5;overflow-wrap:anywhere}.contact-method>span:last-child{font-weight:900;font-size:1.2rem}.contact-card{background:#fff;color:var(--navy);padding:2.25rem;border-radius:24px;box-shadow:0 20px 43px rgba(0,53,69,.18)}.contact-card-badge{display:inline-block;font-size:.75rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:var(--teal)}.contact-card h3{font-size:2.3rem;letter-spacing:-.05em;margin:1.2rem 0}.location-names{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;font-size:1.15rem;color:#596c7e}.location-names strong{width:46px;height:46px;display:grid;place-items:center;background:#e9f5f2;border-radius:50%;color:var(--navy)}.contact-separator{height:1px;background:#d5e2e6;margin:1.65rem 0}.contact-card p{font-size:.97rem;color:#52667e}.contact-card-bottom{display:flex;align-items:center;gap:.6rem;border-top:1px solid #d5e2e6;padding-top:1rem;font-size:.86rem;font-weight:760}.contact-card-bottom span{color:#efb83c;font-size:1.7rem}
.site-footer{background:#061d37;color:#fff;padding-block:3rem 1.5rem}.footer-top{display:flex;align-items:start;justify-content:space-between;gap:3rem;padding-bottom:3rem}.footer-brand{display:flex;gap:1rem;align-items:center;max-width:410px}.footer-brand img{width:90px;height:90px;object-fit:contain}.footer-brand div{display:flex;flex-direction:column;gap:.5rem}.footer-brand strong{font-size:1.5rem;line-height:1.1}.footer-brand span{font-size:.89rem;line-height:1.5;color:#a7c0d5}.footer-links{display:flex;gap:5rem}.footer-links>div{display:flex;flex-direction:column;gap:.45rem}.footer-links h3{font-size:.86rem;margin:0 0 .5rem;letter-spacing:.03em}.footer-links a{text-decoration:none;color:#bdd0e2;font-size:.88rem}.footer-links a:hover{color:#fff;text-decoration:underline}.footer-lower{display:flex;justify-content:space-between;align-items:end;gap:2rem;border-top:1px solid #29415b;padding-top:1.3rem}.managed-by{display:flex;gap:1.1rem;align-items:center}.managed-by>span{font-size:.76rem;color:#b4c8d9;max-width:185px;line-height:1.55}.managed-by img{width:175px;height:auto;max-height:58px;object-fit:contain}.footer-meta{text-align:right}.footer-meta p{margin:0;color:#9bb4ca;font-size:.72rem;line-height:1.8}.mobile-call{display:none}
@media(max-width:1160px){.main-nav{gap:.7rem}.main-nav a{font-size:.82rem}.brand{min-width:214px}.brand img{width:56px;height:56px}.brand strong{font-size:1.25rem}.hero-grid{gap:1rem}.hero-location{left:0}.service-grid{gap:.7rem}.service-body{padding:.95rem}.service-body h3{font-size:1.12rem}}
@media(max-width:940px){.header-inner{min-height:74px}.menu-toggle{width:48px;height:48px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;border:1px solid #d7e2ec;border-radius:10px;background:#fff}.menu-toggle span{width:22px;height:2px;background:var(--navy);display:block}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #dbe6eb;box-shadow:0 25px 45px rgba(10,40,72,.12);padding:1rem max(1.25rem,calc((100vw - 1220px)/2));flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{font-size:1.04rem;padding:1rem .6rem;border-bottom:1px solid #edf2f5}.main-nav a.nav-contact{margin-top:.85rem;text-align:center;border-bottom:0}.hero-grid{grid-template-columns:1fr 1fr;min-height:0;gap:1rem}.hero h1{font-size:clamp(2.7rem,5vw,3.8rem)}.hero-visual{padding-left:0}.hero-stamp{width:95px;height:95px;left:-5%}.hero-stamp strong{font-size:1.5rem}.hero-location{left:-3%;bottom:1%;padding:.7rem}.hero-location strong{font-size:.83rem}.photo-arch{height:445px}.trust-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.trust-grid>div:nth-child(2){border:0}.trust-grid>div:nth-child(3){padding-left:0}.service-grid{grid-template-columns:repeat(2,1fr);gap:1.1rem}.service-img{height:230px}.family-grid{gap:2rem}.family-panel-image{height:210px}.referral-grid,.partners-layout{gap:3rem}.footer-links{gap:2rem}}
@media(max-width:700px){html{scroll-padding-top:83px}.container{width:min(100% - 2rem,520px)}.utility-inner{min-height:36px}.utility-inner>span{font-size:.68rem;max-width:190px;line-height:1.3}.utility-actions{gap:.5rem}.utility-phone{display:none}.utility-actions button{font-size:.78rem}.header-inner{min-height:70px}.brand img{width:52px;height:52px}.brand strong{font-size:1.25rem}.brand small{font-size:.64rem}.hero-grid{display:flex;flex-direction:column;gap:1rem;padding-top:2.6rem;padding-bottom:3rem}.hero-copy{width:100%}.hero h1{font-size:clamp(2.6rem,9vw,3.45rem);margin:1rem 0 1.1rem}.hero-lead{font-size:1.08rem}.button-group{display:grid;grid-template-columns:1fr;gap:.7rem}.button-group .btn{width:100%}.hero-callout{margin-top:1.4rem}.hero-visual{width:100%;padding:1.2rem 1rem 1.6rem;margin-top:1rem}.hero-visual:before{right:-5%;width:96%}.photo-arch{height:350px}.photo-arch img{object-position:54% 50%}.hero-stamp{left:-2%;top:5%;width:90px;height:90px}.hero-location{left:1rem;bottom:0;max-width:calc(100% - 3rem)}.trust-grid{grid-template-columns:1fr 1fr;gap:.6rem 0;padding-block:1.2rem}.trust-grid>div{gap:.5rem;padding:.75rem .5rem!important;border:0}.trust-symbol{width:34px;height:34px;font-size:1.15rem}.trust-grid strong{font-size:.76rem}.trust-grid p span{font-size:.69rem}.section-pad{padding-block:4rem}.intro-grid,.steps-layout,.referral-grid,.impact-heading,.partners-layout,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:2.2rem}.intro h2,.section-heading h2,.steps-intro h2,.referrals h2,.impact-heading h2,.partners-left h2,.faq h2,.contact-section h2{font-size:clamp(2.2rem,8vw,3rem)}.section-heading{flex-direction:column;align-items:start;gap:.7rem}.section-heading>p{max-width:100%}.service-grid{grid-template-columns:1fr;gap:1rem}.service-img{height:235px}.service-body{padding:1.25rem}.service-body h3{font-size:1.35rem}.service-body p{font-size:1rem}.service-note{align-items:start;flex-wrap:wrap}.service-note p{flex:1 1 calc(100% - 4rem)}.service-note a{margin-left:2.6rem}.steps-intro p{margin-bottom:1.4rem}.steps-list li{gap:1rem}.family-grid{grid-template-columns:1fr;gap:2rem;padding-block:4.2rem}.family-copy h2{font-size:2.7rem}.family-panel{transform:rotate(1.2deg)}.family-panel-image{height:200px}.referral-top{padding:1.6rem 1.5rem 0}.referral-list{padding:1.1rem 1.4rem 1.3rem 3.2rem}.referral-bottom{padding:1.15rem 1.4rem}.impact-numbers{grid-template-columns:1fr;margin-top:2rem}.impact-numbers>div{padding:1.5rem .1rem;border:0;border-bottom:1px solid rgba(255,255,255,.2)}.impact-numbers>div:last-child{border:0}.impact-numbers strong{font-size:4.6rem}.impact-numbers span{margin-top:.45rem;max-width:320px}.impact-foot{gap:1rem;align-items:start}.impact-drawing{width:74px;height:74px}.impact-drawing svg{width:65px}.partners-right{margin-top:.7rem}.faq-grid{gap:1rem}.contact-grid{padding-block:4rem}.contact-method strong{font-size:1.13rem}.contact-card{padding:1.65rem}.contact-card h3{font-size:2.1rem}.location-names strong{width:38px;height:38px}.footer-top,.footer-lower{flex-direction:column;align-items:stretch;gap:1.6rem}.footer-top{padding-bottom:2rem}.footer-links{justify-content:space-between;gap:1rem}.footer-lower{align-items:start}.footer-meta{text-align:left}.managed-by{gap:1rem}.managed-by>span{max-width:165px}.managed-by img{width:145px}.site-footer{padding-bottom:5.5rem}.mobile-call{display:flex;position:fixed;bottom:14px;right:14px;z-index:55;gap:.45rem;align-items:center;color:#0e294b;background:var(--yellow);padding:.75rem 1.1rem;border-radius:999px;font-weight:900;text-decoration:none;box-shadow:0 8px 28px rgba(12,38,58,.25)}.mobile-call svg{width:20px;height:20px}}
@media(max-width:390px){.container{width:calc(100% - 1.4rem)}.brand{gap:.45rem;min-width:0}.brand img{width:45px;height:45px}.brand strong{font-size:1.12rem}.brand small{font-size:.56rem}.hero h1{font-size:2.35rem}.hero-location{padding:.65rem .7rem}.hero-location .loc-icon{width:36px;height:36px}.hero-location strong{font-size:.72rem}.trust-grid{grid-template-columns:1fr}.trust-grid>div{padding:.45rem 0!important}.family-panel-footer{flex-direction:column;align-items:start;gap:.2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@media print{.site-header,.utility-bar,.mobile-call,.menu-toggle,.btn{display:none!important}.section-pad{padding-block:1.5rem}.hero-grid,.service-grid,.intro-grid,.family-grid,.referral-grid,.impact-heading,.partners-layout,.faq-grid,.contact-grid{display:block!important}.photo-arch{height:240px;max-width:400px}.site-footer,.contact-section,.family-section,.impact-section{background:#fff!important;color:#111!important}.service-card{break-inside:avoid}.site-footer a,.contact-method{color:#111!important}}


/* VERSION 2 | Clean rectangular photo, stronger contrast, accessible contact form */
.hero{position:relative;background:#f7fafb;overflow:hidden}
.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:1.3rem;min-height:590px;padding-block:4.4rem 4.6rem;align-items:center}
.hero-copy{position:relative;z-index:4;max-width:675px}
.hero h1{font-size:clamp(2.65rem,4.45vw,4.4rem)}
.hero-lead{max-width:515px;color:#334b64}
.hero-visual{position:absolute;z-index:1;top:0;bottom:0;left:49%;right:calc((min(1220px, 100vw - 2.5rem) - 100vw)/2);width:auto;padding:0;margin:0;overflow:hidden}
.hero-visual:before{content:"";z-index:2;position:absolute;inset:0;width:auto;height:auto;aspect-ratio:auto;border:0;border-radius:0;background:linear-gradient(90deg,#f7fafb 0%,rgba(247,250,251,.96) 5%,rgba(247,250,251,.76) 17%,rgba(247,250,251,.08) 44%,transparent 65%);pointer-events:none}
.hero-visual:after{display:none}
.hero-photo{position:absolute;inset:0;z-index:1;width:100%;height:100%;border:0;border-radius:0;box-shadow:none;overflow:hidden;background:#e5e8e9}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:53% center}
.hero-location{z-index:3;left:auto;right:clamp(1rem,4vw,4rem);bottom:2rem;max-width:340px;border-radius:8px;border-left:5px solid var(--yellow);background:var(--navy-deep);color:#fff;box-shadow:0 18px 42px rgba(9,28,53,.23);padding:1rem 1.15rem;gap:.9rem}
.hero-location .loc-icon{background:var(--teal);color:#fff;border-radius:6px}
.hero-location strong{color:#fff;font-size:1rem;line-height:1.25}
.hero-location div span{color:#e6f1fb;font-size:.92rem;line-height:1.4;margin-top:.18rem}
.trust-symbol svg{width:22px;height:22px;stroke-width:2.2}
/* Contact: stronger contrast and a truly labelled enquiry form */
.contact-section{background:#087974}
.contact-section:after{display:none}
.contact-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:start;gap:clamp(2rem,4vw,5rem);padding-block:clamp(4rem,7vw,7rem)}
.contact-section .contact-left>p{color:#fff;max-width:535px;font-size:1.1rem}
.local-support-panel{margin-top:2rem;background:var(--navy-deep);color:#fff;border-left:5px solid var(--yellow);padding:1.45rem 1.5rem;border-radius:8px;box-shadow:0 14px 32px rgba(4,37,56,.15)}
.local-panel-kicker{display:block;color:#ffe0a1;font-size:.77rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.local-support-panel h3{margin:.65rem 0 .6rem;font-size:1.4rem;letter-spacing:-.025em;color:#fff;line-height:1.22}
.local-support-panel p{font-size:1rem;color:#f1f6fb;line-height:1.5;margin:0}
.enquiry-card{background:#fff;color:var(--navy);border-radius:12px;box-shadow:0 20px 45px rgba(5,43,54,.2);padding:clamp(1.3rem,3.2vw,2.3rem)}
.form-kicker{display:block;color:#0c7771;font-size:.79rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.enquiry-card h3{font-size:clamp(1.8rem,2.5vw,2.25rem);margin:.55rem 0 .75rem;letter-spacing:-.045em}
.enquiry-card>p{color:#40546e;font-size:.98rem;line-height:1.52;margin:0 0 1.5rem}
#enquiry-form{display:flex;flex-direction:column;gap:.9rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.form-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.form-field label{font-size:.95rem;font-weight:800;color:#18314e;line-height:1.4}
.form-field label span{font-size:.79rem;font-weight:600;color:#52677c}
.form-field input,.form-field select,.form-field textarea{width:100%;min-height:49px;border:1.5px solid #8ba1af;border-radius:7px;background:#fff;color:#102d4e;padding:.7rem .8rem;font:inherit;font-size:1rem;line-height:1.45}
.form-field textarea{min-height:116px;resize:vertical}
.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:3px solid #f4b23e;outline-offset:1px;border-color:#124982}
.form-field input::placeholder,.form-field textarea::placeholder{color:#5c6a78;opacity:1}
.form-helper{font-size:.84rem;line-height:1.35;color:#415973;margin:-.3rem 0 .25rem}
.form-privacy{font-size:.83rem;line-height:1.55;color:#334961;margin:.2rem 0 .15rem;background:#f2f7f9;border-left:3px solid #087974;padding:.75rem .8rem}
.form-privacy strong{font-weight:800;color:#102d55}
.form-submit{width:100%;border:0;border-radius:8px;font-size:1.05rem;min-height:56px}
.form-or{font-size:.89rem;color:#52677c;text-align:center;margin:.05rem 0 0}
.form-or a{font-weight:850;color:#184f9c}
.form-error{background:#fff2eb;border-left:4px solid #a53b20;padding:.8rem;color:#812b16;font-weight:700;font-size:.92rem}
.form-preview-note{background:#fdf4dc;border:1px solid #e8b557;border-radius:7px;padding:.75rem .85rem;font-size:.86rem;line-height:1.45;color:#5d4018;margin:0 0 1rem}
.screen-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
@media(max-width:1060px){
 .hero-grid{grid-template-columns:1fr 1fr;min-height:570px;gap:0}
 .hero-copy{max-width:540px}
 .hero h1{font-size:clamp(2.5rem,4.7vw,3.8rem)}
 .hero-visual{left:46%;right:-1.25rem;padding:0}
 .hero-location{left:auto;right:1.3rem;bottom:1.6rem}
}
@media(max-width:800px){
 .hero-grid{min-height:520px}
 .hero h1{font-size:clamp(2.4rem,5.2vw,3.15rem)}
 .hero-visual{left:44%}
 .hero-location{max-width:275px}
 .contact-grid{grid-template-columns:1fr;gap:2rem}
 .contact-left{max-width:680px}
 .local-support-panel{max-width:680px}
 .enquiry-card{max-width:700px;width:100%}
}
@media(max-width:700px){
 .hero-grid{display:flex;flex-direction:column;gap:0;min-height:0;padding-top:2.7rem;padding-bottom:0}
 .hero-copy{max-width:100%;width:100%;padding-bottom:2.2rem}
 .hero h1{font-size:clamp(2.4rem,9vw,3.4rem)}
 .hero-visual{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:calc(100% + 2rem);height:355px;flex:none;align-self:center;margin:0;overflow:hidden}
 .hero-visual:before{background:linear-gradient(180deg,#f7fafb 0%,rgba(247,250,251,.06) 21%,transparent 35%)}
 .hero-photo img{object-position:54% center}
 .hero-location{right:1rem;left:1rem;max-width:none;bottom:1rem;padding:.8rem .9rem}
 .hero-location strong{font-size:.92rem}
 .hero-location div span{font-size:.85rem}
 .contact-grid{padding-block:4rem}
 .form-row{grid-template-columns:1fr;gap:.9rem}
 .enquiry-card{padding:1.4rem 1.2rem}
 .local-support-panel{padding:1.2rem}
}
@media(max-width:390px){.hero-visual{width:calc(100% + 1.4rem);height:325px}.enquiry-card{padding:1.25rem 1rem}}
@media print{.hero-photo{position:relative;height:240px}.hero-visual{position:relative;left:auto;right:auto;width:100%;height:240px}.enquiry-card{box-shadow:none;border:1px solid #ddd}}
/* More-specific contrast override for description inside the white form panel */
.contact-section .contact-grid .enquiry-card>p{color:#40546e;font-size:1rem;line-height:1.55}

/* Version 3: authentic Handy Helpers before-and-after gallery. */
.our-work{background:#fff}
.work-header{align-items:end}
.work-header>div{max-width:740px}
.work-header>p{max-width:370px}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.work-card{background:#fff;border:1px solid #dae6ec;overflow:hidden;border-radius:16px;box-shadow:0 12px 38px rgba(5,39,65,.055)}
.work-card-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;background:#fff}
.work-card-images figure{position:relative;margin:0;min-width:0;background:#eef3f6}
.work-card-images img{display:block;width:100%;height:260px;object-fit:cover;object-position:center 45%}
.work-card-images figcaption{position:absolute;top:12px;left:12px;padding:6px 10px;font-size:.83rem;font-weight:850;line-height:1;background:#fff;color:#112b54;border-radius:5px;box-shadow:0 2px 7px rgba(10,30,50,.1)}
.work-card-images figure:last-child figcaption{background:#0c6c68;color:#fff}
.work-card-caption{padding:1.15rem 1.25rem 1.4rem}
.work-card-caption h3{font-size:1.22rem;line-height:1.3;letter-spacing:-.03em;color:#112b54;margin:0 0 .4rem}
.work-card-caption p{color:#48596e;font-size:.95rem;line-height:1.6;margin:0}
.work-cta{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:2rem;padding:1.35rem 1.5rem;border:1px solid #d3e7e8;border-radius:13px;background:#edf8f6}
.work-cta p{margin:0;max-width:660px;color:#223a4d}
.work-cta .btn{flex-shrink:0}
@media(max-width:1060px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav{gap:.5rem}.main-nav a{font-size:.78rem}.brand{min-width:190px}}
@media(max-width:700px){.work-grid{grid-template-columns:1fr}.work-header{gap:.8rem}.work-card-images img{height:clamp(205px,58vw,300px)}.work-cta{flex-direction:column;align-items:stretch}.work-cta .btn{text-align:center;justify-content:center}}
@media print{.work-grid{display:grid;grid-template-columns:repeat(2,1fr)}.work-card{break-inside:avoid}}

/* Version 4: authentic Handy Helpers film, loaded strictly on user action. */
.film-section{background:#102d4c;color:#fff;position:relative;overflow:hidden}
.film-layout{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:clamp(2rem,5.3vw,6rem);align-items:center}
.film-copy h2{font-size:clamp(2.4rem,4.3vw,4rem);line-height:1.09;letter-spacing:-.045em;color:#fff;margin:.85rem 0 1.2rem}
.film-copy h2 span{color:#f3bb52}
.film-lead{color:#fff;font-size:clamp(1.08rem,1.5vw,1.25rem);line-height:1.6;margin:0 0 1.35rem}
.film-details{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;color:#dcebf3;font-size:.91rem;font-weight:750;margin:0 0 1.45rem}
.film-support{font-size:1rem;line-height:1.7;color:#d5e6f2;max-width:480px;margin:0 0 1.35rem}
.film-contact-link{display:inline-flex;gap:.55rem;align-items:center;min-height:44px;color:#fdd782;text-decoration:underline;text-underline-offset:.3em;font-size:1rem;font-weight:850}
.film-contact-link:focus-visible{outline:3px solid #ffce6e;outline-offset:4px}
.film-media{min-width:0}
.film-player{aspect-ratio:16/9;background:#030d1c;overflow:hidden;border-radius:10px;box-shadow:0 20px 50px rgba(0,0,0,.27);isolation:isolate}
.film-poster-button{width:100%;height:100%;position:relative;display:block;cursor:pointer;border:0;background:#132944;padding:0;color:#fff;text-align:center;font-family:inherit}
.film-poster-button>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.film-poster-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(2,24,44,.65) 0%,rgba(2,24,44,0) 55%);pointer-events:none}
.film-play-content{position:absolute;bottom:1.1rem;left:1.1rem;display:flex;align-items:center;gap:.85rem;font-size:1rem;font-weight:850;letter-spacing:.005em;background:#0b2948e8;padding:.65rem 1.1rem .65rem .65rem;border-radius:8px;box-shadow:0 6px 24px #001c2a55}
.film-play-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:6px;background:#ffc95b;color:#0b2948;font-size:1.2rem;text-indent:2px}
.film-poster-button:hover .film-play-icon,.film-poster-button:focus-visible .film-play-icon{background:#fff}
.film-poster-button:focus-visible{outline:4px solid #fdd782;outline-offset:-4px}
.film-player video{width:100%;height:100%;object-fit:contain;display:block;background:#071729}
.film-media-caption{margin:1rem 0 .7rem;color:#e7f1f8;font-size:.94rem;line-height:1.45}
.film-video-description{font-size:.9rem;line-height:1.6;color:#e7f1f8}
.film-video-description summary{font-weight:750;color:#ffde95;cursor:pointer;text-underline-offset:3px}
.film-video-description summary:focus-visible{outline:2px solid #ffde95;outline-offset:4px}
.film-video-description p{max-width:660px;margin:.7rem 0 0}
@media(max-width:900px){.film-layout{grid-template-columns:1fr;gap:2rem}.film-copy{max-width:720px}.film-lead{max-width:710px}}
@media(max-width:700px){.film-section{padding-block:3.5rem}.film-play-content{left:.7rem;bottom:.7rem;gap:.6rem;padding:.5rem .8rem .5rem .5rem;font-size:.91rem}.film-play-icon{height:45px;width:45px}.film-layout{gap:1.8rem}}
@media print{.film-section{background:#fff;color:#112b54}.film-copy h2{color:#112b54}.film-lead,.film-support,.film-media-caption{color:#112b54}.film-poster-button{display:block}}


/* Version 6: consistent arrow icon system, real fleet photos and funder acknowledgement. */
.action-icon{display:inline-block;vertical-align:middle;flex:none;width:1.25rem;height:1.25rem;stroke-width:2.2;transition:transform .18s ease}
a:hover .action-icon,button:hover .action-icon{transform:translateX(3px)}
.btn .action-icon,.nav-contact .action-icon{width:1.35rem;height:1.35rem;border:1px solid currentColor;border-radius:50%;padding:3px;stroke-width:2.3}
.btn .action-icon{margin-left:.1rem}
.service-body a,.text-link,.film-contact-link,.referral-bottom a{display:inline-flex;align-items:center;gap:.35rem}
.service-body a .action-icon,.text-link .action-icon,.film-contact-link .action-icon,.referral-bottom a .action-icon{width:1.2rem;height:1.2rem}
.service-note a .action-icon{width:1.15rem;height:1.15rem;margin-left:.25rem}
.contact-method>.action-icon{width:1.35rem;height:1.35rem;flex-shrink:0}
.contact-method>span:nth-child(2){min-width:0}
.referral-glyph{border-radius:13px}
.referral-partnership-icon{width:29px;height:29px;stroke-width:1.8}
.family-panel{transform:rotate(.75deg)}
.family-panel-image img{object-position:46% 54%}
.film-poster-button>img{object-position:50% 52%}
.footer-funding-shell{padding-bottom:1.8rem}
.footer-funding{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(380px,1.15fr);gap:2rem;align-items:center;padding:1.75rem 2rem;border-radius:14px;background:#f8fbfd;border:1px solid #dce8ed;color:#143254}
.funding-kicker{display:block;color:#0b726c;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:900;margin-bottom:.5rem}
.footer-funding h3{font-size:1.4rem;letter-spacing:-.035em;line-height:1.2;color:#102d55;margin:0 0 .7rem}
.footer-funding p{font-size:.87rem;line-height:1.58;color:#3b5366;margin:0}
.funding-logos{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:1.1rem}
.funding-logo{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;text-align:center;text-decoration:none;color:#153651;min-width:0;padding:1.15rem .7rem;background:#fff;border:1px solid #e0e9ed;border-radius:10px;min-height:132px;transition:border-color .2s ease,box-shadow .2s ease}
.funding-logo:hover{border-color:#168f89;box-shadow:0 6px 18px rgba(8,58,79,.08)}
.funding-logo img{height:auto;width:100%;object-fit:contain}
.funding-pobal img{max-width:235px;max-height:92px}
.funding-department img{max-width:200px;max-height:77px}
.funding-department span{max-width:250px;font-weight:800;font-size:.76rem;line-height:1.35}
@media(max-width:960px){.footer-funding{grid-template-columns:1fr;gap:1.3rem}.funding-logos{max-width:640px}}
@media(max-width:700px){.footer-funding{padding:1.45rem 1rem;gap:1.25rem}.funding-logos{grid-template-columns:1fr 1fr;gap:.55rem}.funding-logo{min-height:135px;padding:.65rem .4rem}.funding-pobal img{width:100%;max-width:180px}.funding-department img{width:100%;max-width:160px}.funding-department span{font-size:.67rem}.footer-funding-shell{padding-bottom:1.4rem}}
@media(max-width:390px){.funding-logos{grid-template-columns:1fr}.funding-logo{min-height:105px}.funding-department span{font-size:.76rem}}
@media(prefers-reduced-motion:reduce){a:hover .action-icon,button:hover .action-icon{transform:none}}
@media print{.footer-funding{border:1px solid #9baebd}.funding-logos{display:flex}.funding-logo{max-width:190px}}

/* Mobile footer: keep the DBSE logo clear of the sticky telephone CTA. */
@media(max-width:700px){.managed-by{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem}.managed-by>span{max-width:none}.managed-by img{width:154px}.footer-lower{padding-bottom:1.2rem}}


/* Version 7 | One coherent outlined icon system and quieter funder recognition. */
.line-icon,.service-line-icon{display:block;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.trust-symbol{width:42px;height:42px;min-width:42px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.15);color:#ffde85;border-radius:11px;font-size:inherit}
.trust-symbol svg{width:23px;height:23px;stroke-width:1.9}
.service-icon,.service-icon.sky,.service-icon.mint,.service-icon.gold,.service-icon.violet{width:44px;height:44px;border-radius:11px;background:#e9f5f3;color:#087771;border:1px solid #d3eae5}
.service-icon svg{width:24px;height:24px;stroke-width:1.9}
.referral-glyph{width:52px;height:52px;border-radius:12px}
.referral-partnership-icon{width:25px;height:25px;stroke-width:1.9}
.hero-callout>svg{border-radius:11px;stroke-width:1.9}
.method-icon{width:44px;height:44px;border-radius:11px}
.method-icon svg{width:23px;height:23px;stroke-width:1.9}
.hero-location .loc-icon{border-radius:10px}
.hero-location .loc-icon svg{stroke-width:1.9}
.service-note>span{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:10px;background:#d8eaf0;color:#086b82;font-size:inherit}
.service-note>span svg{width:22px;height:22px}
.film-play-icon{border-radius:10px;font-size:inherit;text-indent:0}
.film-play-icon svg{width:22px;height:22px;stroke-width:2;fill:currentColor;stroke-linejoin:round}
/* Directional actions remain simple and readable, without circles around arrows. */
.action-icon{width:1.15rem;height:1.15rem;stroke-width:1.9}
.btn .action-icon,.nav-contact .action-icon{width:1.2rem;height:1.2rem;border:0;border-radius:0;padding:0;stroke-width:1.9}
.service-body a .action-icon,.text-link .action-icon,.film-contact-link .action-icon,.referral-bottom a .action-icon{width:1.12rem;height:1.12rem;stroke-width:1.9}
/* Funder marks are supporting identities, visually quieter than Handy Helpers. */
.funding-logos{gap:.8rem;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
.funding-logo{min-height:104px;padding:.65rem .8rem;border-color:#e5edf1;gap:.25rem}
.funding-pobal img{max-width:158px;max-height:65px}
.funding-department img{max-width:136px;max-height:52px}
.funding-department span{max-width:230px;font-size:.72rem;line-height:1.35}
.footer-funding{padding:1.6rem 2rem}
@media(max-width:700px){
 .trust-symbol{width:36px;height:36px;min-width:36px}
 .trust-symbol svg{width:21px;height:21px}
 .funding-logo{min-height:101px;padding:.65rem .4rem}
 .funding-pobal img{max-width:116px;max-height:50px}
 .funding-department img{max-width:108px;max-height:45px}
 .funding-department span{font-size:.69rem;line-height:1.3;max-width:180px}
 .service-note a{margin-left:2.4rem}
}
@media(max-width:390px){.funding-logo{min-height:90px}.funding-department span{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.action-icon{transition:none}}

/* Version 8: clear family panel caption and factual personal alarm partnership. */
.handline{font-family:"Segoe UI",Arial,sans-serif;font-style:normal;font-weight:750;font-size:clamp(1.15rem,2vw,1.45rem);letter-spacing:-.025em;line-height:1.28}
.family-panel-footer{justify-content:flex-end}
.family-panel-footer span{font-size:.85rem;font-weight:650;color:#435973}
.sas-partnership{display:grid;grid-template-columns:56px minmax(0,1fr);gap:1.1rem;align-items:start;margin-top:1.55rem;background:#fff;border:1px solid #dae8e8;border-left:5px solid var(--teal);border-radius:16px;padding:1.65rem 1.7rem;color:var(--ink);box-shadow:0 8px 26px rgba(14,50,82,.035)}
.sas-symbol{display:grid;place-items:center;width:49px;height:49px;background:#e8f6f3;border:1px solid #ccece5;border-radius:11px;color:#087771}
.sas-symbol svg{width:25px;height:25px}
.sas-label{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:850;color:#087771;margin-bottom:.36rem}
.sas-copy h3{font-size:1.35rem;margin:0 0 .65rem;color:var(--navy)}
.sas-copy p{font-size:.96rem;line-height:1.65;color:#42566b;margin:0 0 .6rem;max-width:100ch}
.sas-copy .sas-eligibility{font-size:.89rem;color:#42566b}
.sas-links{display:flex;gap:.65rem 1.8rem;flex-wrap:wrap;margin-top:1rem}
.sas-links a{display:inline-flex;align-items:center;gap:.3rem;font-size:.9rem;font-weight:750;color:#145da4;text-underline-offset:3px}
.sas-links a:hover{color:var(--navy)}
.sas-links .action-icon{width:1rem;height:1rem;flex:none}
@media(max-width:700px){.sas-partnership{grid-template-columns:1fr;gap:.7rem;padding:1.35rem 1.2rem}.sas-symbol{width:43px;height:43px}.sas-links{flex-direction:column;align-items:flex-start;gap:.75rem}.family-panel-footer{align-items:flex-end}}


/* Version 9: additional access and home-readiness enquiries, with contextual personal alarm imagery. */
@media(min-width:941px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.service-img{height:205px}}
.service-photo-note{position:absolute;bottom:10px;left:10px;background:rgba(9,39,70,.88);color:white;border-radius:5px;font-size:.68rem;font-weight:700;letter-spacing:.01em;padding:.25rem .5rem}
.sas-partnership{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(1rem,2.5vw,2.5rem);align-items:center}
.sas-photo{min-width:0;margin:0}
.sas-photo img{display:block;width:100%;height:auto;aspect-ratio:539/149;object-fit:cover;border-radius:10px}
.sas-photo figcaption{font-size:.72rem;color:#546d79;margin-top:.45rem;text-align:right}
@media(max-width:860px){.sas-partnership{grid-template-columns:1fr;align-items:start}.sas-photo{width:min(100%,650px)}.sas-photo img{aspect-ratio:3.4/1}}
@media(max-width:700px){.sas-photo img{aspect-ratio:3.1/1}}

/* Version 10: fuller, clearly framed personal alarm demonstration photograph. */
.sas-partnership{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}
.sas-photo img{aspect-ratio:16/9;object-fit:cover;object-position:center;}
@media(max-width:860px){.sas-photo img{aspect-ratio:16/9;}}
@media(max-width:700px){.sas-photo img{aspect-ratio:16/9;}}

/* V11 submission readiness: visible disabled state */
.form-submit:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(.15)}
.form-submit:disabled:hover{transform:none}


/* Version 12: real customer testimonials, leaflet and social channels */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.testimonials{background:#f5f9fb;color:var(--navy);border-block:1px solid #e0ebf0}
.testimonials-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:1.7rem}
.testimonials-heading h2{margin:.65rem 0 .7rem;max-width:690px}
.testimonials-heading>div:first-child>p{color:#465c70;margin:0;max-width:670px;font-size:1.035rem}
.testimonial-controls{display:flex;align-items:center;gap:.65rem;flex:none;padding-bottom:.15rem}
.testimonial-arrow{width:50px;height:50px;display:grid;place-items:center;border:1.5px solid #b6cbd9;background:#fff;color:var(--navy);border-radius:999px;transition:background .2s,border-color .2s}
.testimonial-arrow:hover:not(:disabled),.testimonial-arrow:focus-visible{background:var(--navy);color:#fff;border-color:var(--navy)}
.testimonial-arrow:disabled{opacity:.36;cursor:not-allowed}
.testimonial-arrow svg{width:22px;height:22px;stroke-width:2.1}
.testimonial-position{font-size:.89rem;font-weight:800;color:#35506c;min-width:78px;text-align:center;font-variant-numeric:tabular-nums}
.testimonial-viewport{overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:.3rem .1rem .7rem;outline-offset:2px}
.testimonial-viewport::-webkit-scrollbar{display:none}
.testimonial-track{display:flex;align-items:stretch;gap:1.15rem}
.testimonial-card{scroll-snap-align:start;flex:0 0 calc((100% - 1.15rem) / 2);min-width:0;border:1px solid #d6e3eb;border-radius:17px;padding:clamp(1.45rem,2.3vw,2.2rem);margin:0;min-height:306px;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(14,45,79,.055);position:relative;background:#fff;overflow:hidden}
.testimonial-card:before{content:'“';position:absolute;top:-.22em;right:.32em;font-family:Georgia,serif;font-size:7rem;line-height:1;opacity:.13;pointer-events:none;font-weight:700}
.testimonial-card--1{background:#fff4d1;border-top:5px solid #f3b63f}
.testimonial-card--2{background:#e9f4e5;border-top:5px solid #69a980}
.testimonial-card--3{background:#e4f5f3;border-top:5px solid #1d9d98}
.testimonial-card--4{background:#fff0dc;border-top:5px solid #edab57}
.testimonial-card--5{background:#eaf1fb;border-top:5px solid #739bc7}
.testimonial-card--6{background:#f8f0de;border-top:5px solid #ecc367}
.testimonial-category{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:#315b67;margin-bottom:.7rem}
.testimonial-card blockquote{margin:0;flex:1;position:relative;z-index:1}
.testimonial-card blockquote p{font-size:clamp(1.08rem,1.25vw,1.21rem);line-height:1.62;font-weight:600;letter-spacing:-.012em;color:#122e50;margin:0}
.testimonial-card figcaption{font-size:.82rem;font-weight:750;color:#466078;border-top:1px solid rgba(15,54,84,.16);padding-top:.85rem;margin-top:1.45rem}
.testimonial-footnote{font-size:.94rem;color:#52667b;margin:1.1rem 0 0}
.testimonial-footnote a{color:var(--blue);font-weight:750;text-underline-offset:3px}
.footer-social-block{margin-top:.6rem}
.footer-social-block>p{font-size:.78rem;line-height:1.3;font-weight:750;color:#e2edf6;margin:0 0 .6rem}
.footer-social-links{display:flex;gap:.65rem;align-items:center}
.footer-social-links a{display:grid;place-items:center;width:47px;height:47px;border-radius:12px;border:1px solid #506783;background:#163557;color:#fff;text-decoration:none;transition:background .2s,transform .2s,border-color .2s}
.footer-social-links a:hover,.footer-social-links a:focus-visible{background:#2369b6;color:#fff;border-color:#73a6dd;transform:translateY(-1px)}
.footer-social-links svg{height:23px;width:23px;stroke-width:1.9;fill:none}
.footer-social-links .social-fb{fill:currentColor;stroke:none}
.footer-links a.footer-flyer-link{display:flex;align-items:center;gap:.55rem;color:#fff;font-weight:750;margin-top:.4rem}
.footer-flyer-link svg{width:19px;height:19px;flex:none;stroke-width:1.75}
.footer-flyer-link small{display:block;font-size:.71rem;font-weight:450;color:#a5bfd4;line-height:1.3}
@media(max-width:860px){.testimonials-heading{align-items:flex-start}.testimonial-card{min-height:345px}}
@media(max-width:780px){.testimonial-card{flex-basis:100%;min-height:0}.testimonials-heading{align-items:flex-start;flex-direction:column;gap:1.1rem}.testimonial-controls{align-self:flex-end}.testimonial-card blockquote p{font-size:1.14rem}.testimonials{padding-block:3.6rem}}
@media(max-width:390px){.testimonial-card{padding:1.25rem}.testimonial-card blockquote p{font-size:1.06rem}.testimonial-arrow{width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){.testimonial-viewport{scroll-behavior:auto!important}.footer-social-links a{transition:none}}
@media print{.testimonial-viewport{overflow:visible}.testimonial-track{flex-wrap:wrap}.testimonial-card{flex:0 0 calc(50% - 1rem);min-height:0;break-inside:avoid}.testimonial-controls{display:none}.footer-social-block{display:none}}


/* Version 13: real interior decorating before/after and featured portrait job films. */
.work-card--painting{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr);background:#f6fafc;border-color:#cfdfe9}
.work-card--painting .work-card-images img{height:415px;object-fit:cover;object-position:center 30%;background:#e8eef2}
.work-card--painting .work-card-caption{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(1.4rem,3.3vw,3rem)}
.work-card--painting h3{font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.19}
.work-card--painting p{font-size:1.04rem;line-height:1.7}
.work-feature-label{display:inline-block;color:#057d77;text-transform:uppercase;letter-spacing:.11em;font-size:.79rem;font-weight:850;margin-bottom:.8rem}
.work-feature-link{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.25rem;font-weight:850;text-decoration:underline;text-underline-offset:4px;color:#155aa8}
.work-feature-link:focus-visible{outline:3px solid #2164ac;outline-offset:5px}
.featured-jobs{background:linear-gradient(145deg,#ebf3f8,#f8fbfd 70%);border-top:1px solid #d7e5ed;border-bottom:1px solid #d7e5ed;color:#112b54}
.featured-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:1.55rem}
.featured-heading-copy{max-width:775px}
.featured-heading h2{margin:.7rem 0 .85rem;color:#112b54;font-size:clamp(2.15rem,4vw,3.6rem);line-height:1.13;letter-spacing:-.045em}
.featured-heading h2 em{font-style:normal;color:#1f5db6}
.featured-heading p{color:#3d556e;line-height:1.75;font-size:1.04rem;margin:0}
.featured-controls{display:flex;gap:.65rem;align-items:center;padding-bottom:.3rem;flex:none}
.featured-arrow{display:grid;place-items:center;width:50px;height:50px;color:#102f51;background:#fff;border:1.5px solid #b4c8d5;border-radius:50%;cursor:pointer}
.featured-arrow:not(:disabled):hover,.featured-arrow:focus-visible{background:#102f51;color:#fff;border-color:#102f51}
.featured-arrow:disabled{opacity:.34;cursor:not-allowed}
.featured-arrow svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.featured-position{color:#38546d;min-width:63px;text-align:center;font-weight:850;font-size:.94rem;font-variant-numeric:tabular-nums}
.featured-viewport{overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;outline-offset:5px;padding:.4rem .1rem 1.3rem}
.featured-viewport::-webkit-scrollbar{display:none}
.featured-track{display:flex;align-items:stretch;gap:1.15rem}
.featured-card{display:flex;flex-direction:column;flex:0 0 clamp(270px,32vw,385px);scroll-snap-align:start;min-width:0;background:white;border-radius:19px;border:1px solid #d7e4ec;overflow:hidden;box-shadow:0 12px 32px rgba(12,45,71,.08)}
.featured-media{position:relative;aspect-ratio:9 / 16;max-height:530px;background:#062139;isolation:isolate;overflow:hidden}
.featured-media video{display:block;width:100%;height:100%;object-fit:contain;background:#07172c}
.featured-media-tag{position:absolute;top:14px;left:14px;background:#0b3150e9;color:white;border-radius:6px;font-size:.74rem;font-weight:850;letter-spacing:.065em;padding:.57rem .8rem;pointer-events:none;text-transform:uppercase}
.featured-card-copy{padding:1.3rem 1.4rem 1.55rem;flex:1}
.featured-chip{font-size:.75rem;letter-spacing:.085em;font-weight:850;text-transform:uppercase;color:#087e7b}
.featured-card h3{font-size:1.42rem;line-height:1.2;letter-spacing:-.03em;margin:.7rem 0 .65rem;color:#112b54}
.featured-card p{color:#41566b;line-height:1.66;margin:0;font-size:.97rem}
.featured-description{margin-top:.9rem;font-size:.92rem;color:#405976;line-height:1.6}
.featured-description summary{font-weight:750;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.featured-description p{margin:.55rem 0 0}
.featured-placeholder{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:1.45rem 1.45rem 2rem;background:#123657;isolation:isolate}
.featured-placeholder:before{content:'';pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(-35deg,transparent 0,transparent 27px,#fff 28px,#fff 29px);opacity:.042}
.featured-placeholder--blue{background:linear-gradient(145deg,#103a6b 0%,#092647 100%)}
.featured-placeholder--teal{background:linear-gradient(145deg,#0d716e 0%,#073d50 100%)}
.featured-placeholder--gold{background:linear-gradient(145deg,#a46a19 0%,#1b4260 100%)}
.featured-upcoming{color:#fff;font-weight:800;font-size:.77rem;text-transform:uppercase;letter-spacing:.095em;border:1px solid #ffffff66;padding:.5rem .65rem;border-radius:5px;z-index:1}
.featured-placeholder-icon{display:grid;place-items:center;align-self:center;border:1.6px solid #ffffff55;border-radius:100%;width:120px;height:120px;position:relative;z-index:1}
.featured-placeholder-icon svg{width:70px;height:70px;fill:none;stroke:#e9f6fa;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4}
.featured-placeholder strong{font-size:clamp(1.7rem,2.6vw,2.2rem);line-height:1.13;color:#fff;letter-spacing:-.035em;position:relative;z-index:1}
.featured-placeholder>span:last-child{font-size:.9rem;color:#fff;position:relative;z-index:1;opacity:.92}
.featured-foot{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:1.35rem}
.featured-foot p{margin:0;color:#354d65;line-height:1.6;font-size:.98rem;max-width:710px}
.featured-foot .btn{flex-shrink:0}
@media(max-width:900px){.work-card--painting{grid-column:1/-1;grid-template-columns:1fr}.work-card--painting .work-card-images img{height:335px}.featured-heading{align-items:flex-start}.featured-card{flex-basis:clamp(265px,43vw,365px)}}
@media(max-width:700px){.work-card--painting .work-card-images img{height:clamp(290px,73vw,385px)}.work-card--painting .work-card-caption{padding:1.4rem}.featured-heading{flex-direction:column;gap:1.1rem}.featured-controls{align-self:flex-end}.featured-card{flex-basis:min(84vw,350px)}.featured-media{max-height:none}.featured-foot{flex-direction:column;align-items:stretch}.featured-foot .btn{justify-content:center}.featured-jobs{padding-block:3.5rem}}
@media(prefers-reduced-motion:reduce){.featured-viewport{scroll-behavior:auto!important}}
@media print{.featured-viewport{overflow:visible}.featured-track{flex-wrap:wrap}.featured-card{flex:0 0 45%;break-inside:avoid}.featured-controls{display:none}.work-card--painting{break-inside:avoid}}


/* Version 14: Task alarm partnership stacks PHOTO ABOVE COPY at tablet/mobile widths.
   Placed last to override V10's later two-column grid rule. */
@media (max-width: 1060px) {
  .sas-partnership {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 1.25rem;
  }
  .sas-photo { grid-column: 1; grid-row: 1; width: 100%; max-width: none; min-width: 0; }
  .sas-copy { grid-column: 1; grid-row: 2; min-width: 0; }
  .sas-photo img { width: 100%; max-height: 360px; aspect-ratio: 16 / 9; object-fit: cover; object-position: center; }
}
@media (max-width: 700px) {
  .sas-partnership { padding: 1.2rem; gap: 1.2rem; }
  .sas-photo img { max-height: none; aspect-ratio: 16 / 9; border-radius: 9px; }
  .sas-copy h3 { font-size: clamp(1.34rem, 5vw, 1.65rem); line-height: 1.24; margin-bottom: .85rem; }
  .sas-copy p { font-size: 1rem; line-height: 1.63; margin-bottom: .85rem; }
  .sas-copy .sas-eligibility { font-size: .94rem; }
  .sas-links { margin-top: 1rem; gap: .85rem; }
  .sas-links a { line-height: 1.45; font-size: .95rem; }
}
