@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#07172a;--ink:#152337;--muted:#647286;--blue:#0785f7;--green:#70d515;--pale:#f5f9fc;--line:#e5ebf0;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);font-family:"DM Sans",Arial,sans-serif;line-height:1.65;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1160px,calc(100% - 48px));margin:0 auto}.site-header{height:86px;background:rgba(255,255,255,.96);border-bottom:1px solid #edf1f4;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:54px;height:54px;object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1.25}.brand strong{font-family:Manrope,sans-serif;letter-spacing:.11em;font-size:18px;color:#0c2035}.brand small{font-size:10px;color:#667589;letter-spacing:.02em;margin-top:4px}.site-nav{display:flex;align-items:center;gap:23px}.site-nav>a{font-size:12px;font-weight:700;color:#425166;white-space:nowrap;transition:color .2s}.site-nav>a:hover{color:var(--blue)}.site-nav .nav-cta{background:var(--navy);color:white;border-radius:5px;padding:12px 16px}.site-nav .nav-cta:hover{background:var(--blue);color:white}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:25px;height:2px;background:var(--navy);margin:5px}.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 85% 35%,#e9f9db 0,transparent 29%),linear-gradient(120deg,#f8fbff 0%,#fff 60%,#f8fff2 100%);padding:94px 0 80px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px;position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:800;color:#4382a8;margin:0 0 20px}.eyebrow span{display:inline-block;width:24px;height:2px;background:var(--green);vertical-align:middle;margin-right:9px}.hero h1,.section h2,.partners-section h2,.appointment-section h2,.contact-section h2{font-family:Manrope,sans-serif;font-weight:700;letter-spacing:-.055em;line-height:1.12;margin:0;color:#0b1b2e}.hero h1{font-size:clamp(42px,5vw,66px);max-width:650px}.hero h1 em,.section h2 em,.partners-section h2 em,.appointment-section h2 em,.contact-section h2 em{font-style:normal;color:var(--blue)}.hero-text{font-size:16px;line-height:1.9;color:#647286;max-width:540px;margin:25px 0 30px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:0;border-radius:5px;padding:15px 20px;font:700 12px "DM Sans",sans-serif;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff;box-shadow:0 9px 22px #0785f72c}.button-primary:hover{background:#006bd0}.button-quiet{padding-left:0;color:#1e344d}.hero-note{display:flex;align-items:center;gap:12px;margin-top:40px}.note-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#e9f8d8;color:#4caa0c}.hero-note span:last-child{display:flex;flex-direction:column}.hero-note strong{font-size:12px}.hero-note small{font-size:11px;color:#718096}.hero-art{min-height:440px;position:relative;display:grid;place-items:center}.art-ring{position:absolute;border:1px solid #b6e9a0;border-radius:50%;width:390px;height:390px}.ring-two{width:310px;height:310px;border-color:#b8dcff}.art-card{width:min(310px,80%);height:300px;border-radius:20px;background:rgba(255,255,255,.83);border:1px solid white;box-shadow:0 24px 70px #163d5420;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;position:relative;z-index:2;backdrop-filter:blur(8px)}.art-card img{width:240px;max-height:210px;object-fit:contain}.art-card-line{width:48px;height:3px;background:var(--green);border-radius:3px;margin:18px 0 6px}.art-card p{font-size:11px;color:#6d7d8e;margin:6px}.floating-chip{position:absolute;z-index:3;background:#fff;padding:12px 16px;border-radius:8px;box-shadow:0 10px 35px #18354d16;font-size:11px;font-weight:700;color:#36475a;display:flex;align-items:center;gap:9px}.chip-top{top:57px;right:0}.chip-bottom{bottom:58px;left:0}.chip-dot{width:8px;height:8px;border-radius:50%}.chip-dot.blue{background:var(--blue)}.chip-dot.green{background:var(--green)}.hero-glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.12;width:230px;height:230px}.glow-blue{background:var(--blue);top:20px;left:38%}.glow-green{background:var(--green);right:5%;bottom:0}.hero-bottom-line{position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--blue),#20b8dc,var(--green))}.trust-strip{background:#fff;border-bottom:1px solid var(--line)}.trust-inner{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:18px}.trust-inner p{font-size:9px;letter-spacing:.16em;color:#8a97a6;font-weight:800}.trust-inner span{font-family:Manrope,sans-serif;font-weight:700;font-size:13px;color:#45576a}.trust-inner i{height:4px;width:4px;background:#a4d87e;border-radius:50%}.section{padding:104px 0}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.section h2,.partners-section h2,.contact-section h2{font-size:clamp(34px,4vw,48px)}.accent-line{height:4px;width:56px;background:var(--green);margin-top:28px;border-radius:4px}.section-body p{color:#657386;font-size:14px}.section-body .lead{font-size:20px;line-height:1.6;color:#1b2c40;font-weight:600;margin-top:0}.edit-note{background:#f1f8ed;border-left:3px solid var(--green);padding:12px 15px;font-size:12px!important}.text-link{display:inline-flex;gap:20px;color:var(--blue);font-size:12px;font-weight:800;margin-top:12px}.services-section{background:#f6f9fb}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}.section-intro{max-width:380px;color:#6b7888;font-size:13px;margin:0 0 4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:white;border:1px solid #e9eef2;padding:30px 28px 26px;min-height:275px;position:relative;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px #102d4210}.service-card.featured{border-top:3px solid var(--green)}.service-icon{width:45px;height:45px;border-radius:12px;display:grid;place-items:center;font-size:24px;margin-bottom:25px}.icon-blue{background:#e8f4ff;color:var(--blue)}.icon-green{background:#eef9e4;color:#55a80d}.card-number{position:absolute;right:28px;top:33px;color:#a9b4c0;font-size:11px;font-weight:700}.service-card h3{font-family:Manrope,sans-serif;font-size:17px;margin:0 0 10px}.service-card p{font-size:12px;color:#718092;line-height:1.8;margin:0 0 22px}.service-card>a{display:flex;justify-content:space-between;color:#087ee8;font-size:11px;font-weight:800;border-top:1px solid #edf0f3;padding-top:14px}.small-disclaimer{font-size:10px;color:#8793a0;margin:17px 0 0}.partners-section{background:var(--navy);color:white;padding:78px 0}.partners-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.partners-section h2{color:white}.partners-section h2 em{color:#8be03d}.partners-section .eyebrow{color:#8ec4ec}.partners-section p:not(.eyebrow){color:#aab7c6;font-size:13px;max-width:370px}.partner-placeholder{min-height:150px;border:1px dashed #607083;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px}.partner-placeholder>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#19334a;color:#8be03d;font-size:22px}.partner-placeholder strong{font-size:13px;margin-top:10px}.partner-placeholder small{font-size:10px;color:#aab7c6;margin-top:4px}.testimonials-section{text-align:center;background:linear-gradient(180deg,#fff,#f8fbfd)}.testimonial-content{max-width:740px}.testimonial-content .eyebrow{margin-bottom:14px}.testimonial-content h2{font-size:clamp(32px,4vw,45px)}.quote-mark{font-family:Georgia,serif;color:var(--green);font-size:72px;line-height:1;margin-top:35px}.testimonial-content blockquote{font-family:Manrope,sans-serif;font-size:20px;font-weight:600;line-height:1.6;margin:0 auto 15px;max-width:620px;color:#2b3b4e}.quote-credit{font-size:11px;color:#7b8998}.quote-dots{display:flex;justify-content:center;gap:8px;margin-top:24px}.quote-dots span{width:6px;height:6px;border-radius:50%;background:#cbd4dc}.quote-dots span.active{width:20px;border-radius:5px;background:var(--blue)}.appointment-section{padding:92px 0;background:linear-gradient(120deg,#edf7ff,#f7fff1)}.appointment-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:start}.appointment-section .eyebrow{color:#3987b7}.appointment-section h2{font-size:clamp(36px,4vw,50px)}.appointment-section>div>div:first-child>p:not(.eyebrow){color:#647386;font-size:13px;line-height:1.9;max-width:360px;margin:24px 0}.appointment-mini{display:flex;gap:13px;align-items:center;margin-top:34px}.appointment-mini>span{width:38px;height:38px;border-radius:50%;background:white;color:var(--blue);display:grid;place-items:center}.appointment-mini div{display:flex;flex-direction:column}.appointment-mini strong{font-size:12px}.appointment-mini small{font-size:10px;color:#718092}.appointment-form{background:white;border:1px solid #e4ebf0;border-radius:10px;padding:34px;box-shadow:0 18px 60px #173b5010}.appointment-form h3{font-family:Manrope,sans-serif;font-size:22px;margin:0}.form-intro{font-size:12px;color:#7b8998;margin:4px 0 24px}.form-row{display:flex;flex-direction:column;margin-bottom:16px;gap:7px}.form-row label{font-size:11px;font-weight:700;color:#304258}.form-row label span{font-weight:400;color:#8a97a5}.form-row input,.form-row select,.form-row textarea{width:100%;font:12px "DM Sans",sans-serif;color:#203349;border:1px solid #dfe6ec;border-radius:5px;padding:12px 13px;background:#fff;outline:none}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0785f715}.form-row input::placeholder,.form-row textarea::placeholder{color:#a2adb8}.form-row textarea{resize:vertical}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.two-fields>div{display:flex;flex-direction:column;gap:7px;min-width:0}.submit-button{width:100%;margin-top:4px}.form-privacy{font-size:10px;color:#8a97a5;line-height:1.6;margin:12px 0 0}.form-status{font-size:12px;color:#276f12;margin:8px 0 0}.contact-section{padding:60px 0;border-bottom:1px solid #263a4d;background:#07172a;color:white}.contact-inner{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:center}.contact-section h2{color:white;font-size:38px}.contact-section h2 em{color:#8be03d}.contact-section .eyebrow{color:#8ec4ec;margin-bottom:12px}.contact-detail{display:flex;align-items:center;gap:14px}.detail-icon{width:42px;height:42px;display:grid;place-items:center;background:#132a40;border-radius:8px;color:#8be03d;font-size:20px}.contact-detail small{display:block;color:#94a6b7;font-size:9px;letter-spacing:.14em;font-weight:800}.contact-detail a,.contact-detail p{font-size:12px;color:white;margin:4px 0 0}.site-footer{background:#071321;color:#b0bdca}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1.1fr 1.2fr;gap:45px;padding:58px 0 48px}.brand-footer strong{color:white}.brand-footer small{color:#94a6b7}.brand-footer img{background:#fff;border-radius:8px;width:49px;height:49px}.footer-brand>p{font-size:11px;color:#91a0b0;max-width:240px;margin:17px 0}.social-links{display:flex;gap:8px;margin-top:19px}.social-links a{display:grid;place-items:center;width:31px;height:31px;border:1px solid #334253;border-radius:50%;font-size:12px;font-weight:700;color:white;transition:all .2s}.social-links a:hover{background:var(--blue);border-color:var(--blue)}.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-column h4{font-size:12px;color:white;margin:5px 0 10px}.footer-column>a,.footer-column>p{font-size:11px;color:#91a0b0;margin:0}.footer-column>a:hover{color:#8be03d}.footer-column>a small{font-size:9px}.footer-contact-link{color:#8be03d!important;margin-top:8px!important}.footer-contact-link span{margin-left:12px}.footer-bottom{border-top:1px solid #263544;min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-bottom p{font-size:10px;color:#7f8e9d}.footer-heart{color:#8be03d}
.skip-link{position:absolute;left:-999px;top:10px;background:white;padding:10px;z-index:50}.skip-link:focus{left:10px}
@media(max-width:1100px){.site-nav{gap:13px}.site-nav>a{font-size:11px}.site-nav .nav-cta{padding:10px 12px}.hero-grid{gap:25px}.two-col{gap:60px}.appointment-grid{gap:45px}.footer-main{gap:25px}}
@media(max-width:900px){.site-header{height:75px}.menu-toggle{display:block;cursor:pointer}.site-nav{display:none;position:absolute;left:0;right:0;top:74px;background:white;border-bottom:1px solid var(--line);padding:20px 24px 25px;box-shadow:0 20px 25px #102d4210;align-items:stretch;flex-direction:column;gap:0}.site-nav.open{display:flex}.site-nav>a{padding:12px 0;font-size:13px}.site-nav .nav-cta{text-align:center;margin-top:8px;padding:13px}.hero{padding:70px 0}.hero-grid{grid-template-columns:1fr 0.85fr;gap:10px}.hero h1{font-size:48px}.hero-art{min-height:350px}.art-ring{width:300px;height:300px}.ring-two{width:240px;height:240px}.art-card{height:240px}.art-card img{max-height:155px}.chip-top{top:20px}.chip-bottom{bottom:20px}.two-col{grid-template-columns:1fr;gap:25px}.section{padding:75px 0}.accent-line{margin-top:18px}.appointment-grid{grid-template-columns:1fr;gap:35px}.appointment-section>div>div:first-child>p:not(.eyebrow){max-width:600px}.contact-inner{grid-template-columns:1fr 1fr}.contact-inner>div:first-child{grid-column:1/-1}.footer-main{grid-template-columns:1fr 1fr}.trust-inner{flex-wrap:wrap;justify-content:center;padding:20px 0}.trust-inner p{width:100%;text-align:center;margin:0}.trust-inner span{font-size:12px}}
@media(max-width:600px){.container{width:calc(100% - 34px)}.brand img{width:46px;height:46px}.brand strong{font-size:16px}.brand small{font-size:9px}.hero{padding:55px 0 50px}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:43px}.hero-text{font-size:14px}.hero-art{min-height:330px;margin-top:15px}.art-ring{width:280px;height:280px}.ring-two{width:220px;height:220px}.art-card{height:235px;width:260px}.chip-top{right:0;top:15px}.chip-bottom{left:0;bottom:10px}.hero-actions{gap:14px}.button{padding:14px 15px}.trust-inner{gap:11px}.trust-inner i{display:none}.trust-inner span{padding:0 5px}.section{padding:65px 0}.section h2,.partners-section h2,.contact-section h2{font-size:36px}.section-top{display:block}.section-intro{margin-top:18px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0}.partners-section{padding:60px 0}.partners-inner{grid-template-columns:1fr;gap:25px}.testimonial-content blockquote{font-size:17px}.appointment-section{padding:65px 0}.appointment-form{padding:23px 18px}.two-fields{grid-template-columns:1fr;gap:16px}.contact-section{padding:50px 0}.contact-inner{grid-template-columns:1fr;gap:24px}.contact-inner>div:first-child{grid-column:auto}.footer-main{grid-template-columns:1fr 1fr;gap:32px 22px;padding:42px 0}.footer-brand{grid-column:1/-1}.footer-bottom{padding:12px 0;flex-direction:column;align-items:flex-start;gap:0}.footer-bottom p{margin:4px 0}.footer-column h4{margin-bottom:5px}}


/* Single-section navigation: show one content section at a time, with the shared header and footer. */
.page-section { display: none; }
.page-section.is-active { display: block; }
body { min-height: 100vh; }
.site-footer { margin-top: 0; }

/* Leadership cards in About Us */
.leaders-section { padding-top: 16px; padding-bottom: 88px; }
.leaders-heading { margin-bottom: 28px; }
.leaders-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.leader-card { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 28px; box-shadow: 0 12px 34px rgba(7,23,42,.055); }
.leader-card-top { display: flex; align-items: center; gap: 15px; margin-bottom: 16px; }
.leader-monogram { width: 58px; height: 58px; flex: 0 0 58px; border-radius: 50%; display: grid; place-items: center; color: #fff; font: 800 17px Manrope, sans-serif; background: linear-gradient(135deg, var(--blue), #0c3553); }
.leader-card:nth-child(2) .leader-monogram { background: linear-gradient(135deg, #61b71a, #174c36); }
.leader-card h3 { margin: 0; font: 800 20px Manrope, sans-serif; color: #0b1b2e; line-height: 1.3; }
.leader-role { margin: 5px 0 0; font-size: 13px; font-weight: 700; color: var(--blue); }
.leader-summary { margin: 0 0 16px; color: var(--muted); font-size: 14px; line-height: 1.8; }
.leader-details { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 13px 0; color: var(--muted); font-size: 14px; }
.leader-details summary { cursor: pointer; color: #0877d7; font-weight: 700; list-style-position: inside; }
.leader-details p { margin: 12px 0 3px; line-height: 1.85; }
.leader-linkedin { display: inline-flex; align-items: center; gap: 9px; margin-top: 18px; font-size: 13px; font-weight: 700; color: #0a66c2; }
.linkedin-icon { width: 24px; height: 24px; border-radius: 4px; display: inline-grid; place-items: center; background: #0a66c2; color: white; font: 800 13px Arial, sans-serif; }
.leader-linkedin:hover { text-decoration: underline; }
@media (max-width: 700px) { .leaders-grid { grid-template-columns: 1fr; } .leader-card { padding: 22px; } .leaders-section { padding-bottom: 56px; } }

/* Appointment demonstration */
[hidden]{display:none!important}
.demo-warning{background:#fff5db;border-left:4px solid #bd851b;padding:16px;border-radius:8px;color:#553f14!important;font-size:14px}
.demo-consent{display:flex!important;align-items:flex-start;gap:10px;margin:20px 0;font-size:14px}
.demo-consent input{width:18px;height:18px;flex-shrink:0}
#booking-status{color:#8a301e;margin-top:16px}
#payment-panel .button,#confirmation .button{margin:12px 6px 0 0}
#confirmation-details,#payment-summary{white-space:pre-line;overflow-wrap:anywhere}
.appointment-form h3 small{font-size:15px;color:#45795e}
.appointment-mini small{line-height:1.7}
.appointment-form select,.appointment-form input{max-width:100%}

.contact-form-wrap{padding-top:32px;padding-bottom:64px}
.contact-form-wrap .appointment-form{max-width:780px;margin:0 auto}
.contact-form-wrap a{overflow-wrap:anywhere}

/* Contact details on the left, enquiry form on the right. */
.contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:72px;align-items:start}
.contact-layout .contact-inner{display:flex;flex-direction:column;align-items:stretch;gap:28px}
.contact-information{padding-top:22px}
.contact-information h2{margin-bottom:12px}
.contact-layout .contact-detail{align-items:flex-start}
.contact-layout .detail-icon{flex-shrink:0}
.contact-layout .contact-detail a,.contact-layout .contact-detail p{font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.contact-layout .contact-form-wrap{padding:0;min-width:0}
.contact-layout .appointment-form{max-width:none;margin:0;color:#203349}
.contact-layout .appointment-form .eyebrow{color:#3987b7}
.contact-layout .appointment-form p:last-child{font-size:12px;line-height:1.8;color:#647386}
.contact-layout .appointment-form a{color:#0875cc}
.contact-layout .form-privacy{font-size:12px;color:#647386}
.contact-honey{display:none!important}
@media(max-width:800px){.contact-layout{grid-template-columns:1fr;gap:36px}.contact-information{padding-top:0}}

/* Home-page palette for Partners and Contact, with matching contact columns. */
#contact-form{scroll-margin-top:110px}
.partners-section,.contact-section{
  background:radial-gradient(ellipse at 85% 35%,#e9f9db 0,transparent 36%),linear-gradient(120deg,#f8fbff 0%,#fff 60%,#f8fff2 100%);
  color:#203349;border-bottom:1px solid #e4ebf0;
}
.partners-section h2,.contact-section h2{color:#0b1b2e}
.partners-section h2 em,.contact-section h2 em{color:var(--blue)}
.partners-section .eyebrow,.contact-section .eyebrow{color:#4382a8}
.partners-section p:not(.eyebrow){color:#647286}
.partner-placeholder{background:rgba(255,255,255,.85);border-color:#b7d8e8;box-shadow:0 18px 50px #173b5009;color:#203349}
.partner-placeholder>span{background:#eef9e4;color:#55a80d}
.partner-placeholder small{color:#647286}
.contact-layout{align-items:stretch;gap:32px}
.contact-information{
  padding:34px;background:rgba(255,255,255,.9);border:1px solid #e4ebf0;
  border-radius:10px;box-shadow:0 18px 60px #173b5010;min-width:0;
}
.contact-layout .contact-inner{height:100%;justify-content:space-between;gap:32px}
.contact-layout .contact-detail small{color:#637a90}
.contact-layout .contact-detail a,.contact-layout .contact-detail p{color:#203349}
.contact-layout .contact-detail a:hover{color:var(--blue);text-decoration:underline}
.contact-layout .detail-icon{background:#e8f4ff;color:#0875cc;font-weight:800}
.contact-layout .contact-form-wrap{display:flex}
.contact-layout .contact-form-wrap .appointment-form{width:100%;height:100%}
@media(max-width:800px){
  .contact-information{padding:28px}
  .contact-layout .contact-inner{height:auto;justify-content:flex-start;gap:28px}
  .contact-layout .contact-form-wrap .appointment-form{height:auto}
}
@media(max-width:600px){.contact-information{padding:24px 20px}}

/* Leadership portraits */
.leader-photo{width:96px;height:96px;flex:0 0 96px;border-radius:50%;object-fit:cover;object-position:center 24%;border:3px solid #e8f4ff;box-shadow:0 5px 16px #173b5010}
.leader-photo-sanchit{object-position:center 24%;border-color:#e8f5df}
@media(max-width:600px){.leader-photo{width:80px;height:80px;flex-basis:80px}.leader-card-top{gap:12px}}

.client-logo-card{background:#fff;padding:38px 28px;border-style:solid;min-height:220px}
.client-logo-card img{width:100%;max-width:490px;height:auto;object-fit:contain;margin-bottom:20px}
.client-logo-card strong{font-size:16px}
@media(max-width:600px){.client-logo-card{padding:28px 20px;min-height:180px}}

/* Compact enquiry form and balanced contact cards. */
.contact-section{padding:44px 0}
.contact-layout{gap:24px}
.contact-information,.contact-layout .appointment-form{padding:26px}
.contact-layout .contact-inner{gap:24px}
#contact-form .eyebrow{margin-bottom:8px}
#contact-form h3{font-size:21px;line-height:1.3}
#contact-form .form-intro{margin:6px 0 16px;font-size:12px;line-height:1.55}
#contact-form .form-row{margin-bottom:12px;gap:5px}
#contact-form .two-fields{gap:12px}
#contact-form input,#contact-form select{padding:10px 11px;min-height:40px}
#contact-form textarea{min-height:78px;height:78px;padding:10px 11px}
#contact-form .submit-button{padding:12px 16px;margin-top:0}
#contact-form .form-privacy{margin:10px 0 0;font-size:11px;line-height:1.5}
#contact-form .form-status:empty{display:none}
#contact-form>p:last-child{margin:10px 0 0;font-size:11px;line-height:1.55}
@media(max-width:600px){
  .contact-information,.contact-layout .appointment-form{padding:22px 18px}
  #contact-form .two-fields{grid-template-columns:1fr;gap:12px}
}

/* Privately submitted, owner-approved testimonials. */
.testimonials-section{padding:58px 0;background:linear-gradient(135deg,#f8fbff,#fff 60%,#f8fff2)}
.testimonial-content{max-width:780px}
.feedback-intro{max-width:550px;margin:20px auto 24px;color:#647286;font-size:14px}
.review-empty{padding:14px 20px;background:#edf6fd;color:#61778b;border-radius:8px;font-size:13px;margin:0 0 24px}
.approved-review{padding:28px;background:#fff;border:1px solid #e1eaf1;border-radius:12px;margin:24px 0}
#approved-rating{color:#b87900;letter-spacing:4px;font-size:24px;margin:0 0 12px}
#feedback-form{text-align:left;padding:28px}
#feedback-form .form-intro{margin:6px 0 20px;line-height:1.7}
.feedback-rating{border:0;padding:0;margin:0 0 20px}
.feedback-rating legend{font-size:12px;font-weight:700;color:#304258}
.feedback-rating legend span{font-weight:400;color:#718092}
.rating-options{display:flex;gap:10px;margin:10px 0 0}
.rating-options label{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:58px;min-height:65px;border:1px solid #dfe8ee;border-radius:8px;cursor:pointer;color:#b2bec7;background:#fcfdff}
.rating-options input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.rating-options span{font-size:28px;line-height:1.2}
.rating-options small{font-size:10px;color:#718092}
.rating-options label.is-filled{color:#b87900;background:#fff9e9;border-color:#efd698}
.rating-options label:has(input:focus-visible){outline:3px solid #8ccaff;outline-offset:2px}
#rating-description{font-size:12px;color:#718092;margin:8px 0 0}
.feedback-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.7;color:#52697a;margin:16px 0}
.feedback-consent input{width:17px;height:17px;flex:0 0 17px;margin-top:3px}
.feedback-moderation{padding:12px 14px;background:#f0f8e9;border-radius:7px;font-size:12px;color:#42612c;margin:14px 0 8px}
#feedback-form .form-privacy{font-size:11px;color:#718092}
#feedback-status:empty{display:none}
@media(max-width:600px){#feedback-form{padding:22px 18px}.rating-options{gap:8px}.rating-options label{width:48px;min-height:60px}}

/* Compact, same-page feedback popup. */
#feedback-dialog{width:min(520px,calc(100% - 28px));max-height:90vh;padding:0;border:1px solid #dfe8ef;border-radius:14px;color:#203349;background:#fff;box-shadow:0 24px 100px #07172a40;text-align:left}
#feedback-dialog::backdrop{background:#07172a88;backdrop-filter:blur(3px)}
#feedback-dialog:not([open]){display:none}
#feedback-dialog #feedback-form{padding:24px;border:0;box-shadow:none;border-radius:0}
.feedback-close{position:absolute;right:12px;top:10px;z-index:1;border:0;background:#eef4f8;color:#294a60;border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:23px;line-height:1}
#feedback-dialog h3{font-size:21px;padding-right:28px}
#feedback-dialog .form-intro{font-size:12px;margin:5px 0 14px;line-height:1.5}
#feedback-dialog .feedback-rating{margin-bottom:14px}
#feedback-dialog .rating-options{gap:8px;margin-top:7px}
#feedback-dialog .rating-options label{width:46px;min-height:50px}
#feedback-dialog .rating-options span{font-size:25px}
#feedback-dialog #rating-description{margin:5px 0 0;font-size:11px}
#feedback-dialog .form-row{margin-bottom:12px;gap:5px}
#feedback-dialog .form-row input{padding:9px 10px;min-height:38px}
#feedback-dialog textarea{min-height:65px;height:65px;padding:9px 10px}
#feedback-dialog .feedback-consent{font-size:11px;line-height:1.5;margin:10px 0}
#feedback-dialog .feedback-moderation{padding:9px 11px;margin:10px 0 6px;font-size:11px}
#feedback-dialog .form-privacy{font-size:10px;line-height:1.5;margin-top:6px}
#feedback-dialog .submit-button{padding:11px 14px}
body:has(#feedback-dialog[open]){overflow:hidden}
@media(max-width:600px){#feedback-dialog #feedback-form{padding:22px 18px}#feedback-dialog .two-fields{grid-template-columns:1fr 1fr;gap:10px}}
