.brand-caption { font:600 7px/1.65 var(--body); letter-spacing:.15em; margin-left:8px; color:#526c5d; }
.desktop-nav { gap:22px; }
.process-steps { grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; margin-top:46px; }
.process-steps .step,.process-steps .step+.step { padding:24px 0 0; border:0; border-top:1px solid #d6eddb29; }
.process-steps .step-number { position:static; font-size:12px; color:#a7c6b2; margin-bottom:28px; }
.process-steps .step h3 { margin:0 0 15px; font-size:19px; }
.process-steps .step p { font-size:13px; max-width:none; }
.service-availability { display:block; margin:-9px 0 22px; color:#9fceb3; font-size:10px; }
.service-availability.pending { color:#d3c69f; }
.contact-panel,.why-panel,.reviews-panel {
  width:min(1280px,calc(100% - 112px)); margin:32px auto; padding:62px;
  color:#e8f0ea; background:linear-gradient(130deg,#17231a88,#0d141777);
  border:1px solid #cee9d42b; border-radius:18px;
  box-shadow:0 18px 70px #0002,inset 0 1px 0 #ffffff08;
  backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px);
}
.why-grid,.review-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-top:38px; }
.why-grid article { border-top:1px solid #d6eddb29; padding-top:24px; }
.why-index { font-size:11px; color:#a7c6b2; }
.why-grid h3 { font-size:20px; margin:24px 0 14px; }
.why-grid p { color:#becdc2; font-size:13px; line-height:1.9; }
.review-card { margin:0; padding:25px; border:1px solid #d4ebd42b; border-radius:12px; background:#e3f7e805; display:flex; flex-direction:column; }
.review-card blockquote { padding:0; margin:0 0 25px; font-size:13px; line-height:1.95; color:#d4dfd7; }
.review-card blockquote::before { content:'“'; display:block; font:48px/1 var(--heading); color:#b4cdbb; margin-bottom:8px; }
.review-card figcaption { margin-top:auto; padding-top:20px; border-top:1px solid #d6eddb29; font-size:12px; color:#a9c2b0; }
.contact-panel { display:grid; grid-template-columns:1fr 1fr; gap:85px; }
.contact-intro>p:not(.eyebrow) { color:#becdc2; font-size:14px; line-height:1.9; max-width:360px; }
.contact-actions { display:flex; flex-direction:column; gap:12px; align-items:flex-start; margin-top:32px; }
.contact-row { display:flex; flex-direction:column; gap:12px; padding:23px 0; border-bottom:1px solid #d6eddb29; }
.contact-row:first-child { border-top:1px solid #d6eddb29; }
.contact-label { color:#9eb8a7; font-size:9px; font-weight:600; letter-spacing:.14em; }
.contact-row>a { font-size:18px; line-height:1.7; overflow-wrap:anywhere; }
.contact-row>a:hover,.footer-contact a:hover { color:#b9dfc6; }
.contact-row>a>span { font-size:14px; margin-left:15px; }
.hours { margin:0; font-size:14px; line-height:1.8; }
.hours>div { display:flex; justify-content:space-between; gap:20px; margin-block:4px; }
.hours dd { margin:0; color:#bed1c4; }
.footer-contact { display:flex; gap:25px; flex-wrap:wrap; font-size:11px; color:#bfd1c4; padding-top:22px; }
.footer-bottom { flex-wrap:wrap; }.footer-bottom>div { flex-wrap:wrap; gap:18px; }
.closing>div:last-child { max-width:900px; }.closing h2 { font-size:clamp(34px,4.7vw,64px); }
@media(max-width:1100px) {
 .contact-panel,.why-panel,.reviews-panel { width:calc(100% - 72px); padding:40px; }
 .process-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:35px; }
 .contact-panel { gap:45px; }.review-grid { gap:15px; }.review-card { padding:20px; }
 .brand-caption { font-size:6px; margin-left:4px; }.desktop-nav { gap:17px; }
}
@media(max-width:760px) {
 .brand-caption { font-size:5px; letter-spacing:.1em; margin-left:4px; }.brand { gap:5px; }.header-actions { gap:15px; }
 .process-steps { grid-template-columns:1fr; gap:0; margin-top:30px; }
 .process-steps .step,.process-steps .step+.step { padding:24px 0; min-height:0; display:grid; grid-template-columns:27px 1fr; gap:0 15px; }
 .process-steps .step-number { grid-row:1/3; margin:3px 0 0; font-size:10px; }
 .process-steps .step h3 { font-size:18px; line-height:1.5; margin-bottom:10px; }
 .process-steps .step p { font-size:13px; }
 .contact-panel,.why-panel,.reviews-panel { width:calc(100% - 28px); padding:30px 22px; margin:18px auto; border-radius:14px; background:linear-gradient(130deg,#17231aa6,#0d141799); backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px); }
 .contact-panel { display:block; }.contact-details { margin-top:35px; }.contact-row>a { font-size:17px; }
 .why-grid,.review-grid { grid-template-columns:1fr; gap:20px; margin-top:25px; }
 .why-grid h3 { font-size:18px; margin-top:15px; }.why-grid p { font-size:13px; }
 .review-card { padding:24px; }.review-card blockquote { font-size:13px; }
 .footer-contact { flex-direction:column; gap:10px; }.footer-bottom>div { gap:15px; }
 .closing h2 { max-width:none; font-size:38px; }.closing p:not(.eyebrow) { max-width:280px; }
 .service-availability { font-size:10px; }
}
/* Separate policy pages are directly reachable from the footer in both languages. */
.footer-bottom{display:grid;grid-template-columns:1fr;gap:20px}.footer-bottom>.policy-links{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:16px 27px}.policy-links a{font-size:12px;line-height:1.7;text-decoration:none;color:var(--muted)}.policy-links a:hover{text-decoration:underline;color:var(--mint)}.footer-meta{display:flex;justify-content:space-between;gap:20px;width:100%;padding-top:18px;border-top:1px solid rgba(189,218,203,.13)}
.footer .policy-links a{font-size:14px;color:#d3e0d8}.footer .policy-links a:hover{color:#fff}.footer .policy-links a:focus-visible{outline:2px solid #c4dfd2;outline-offset:5px}
