/* Reading sizes for the current design, loaded after the original stylesheet. */
:root{--reading-size:17px;--muted:#706458}
body{font-size:var(--reading-size)}
.hero-description{font-size:18px;line-height:1.85;max-width:490px}
.section-heading>p,
.service-card p,
.about-copy>p:not(.eyebrow):not(.large-body),
.journey-step p,
.center-heading>p:last-child,
.reviews-grid>div>p:last-child,
.review-card>p,
.rates-intro>p:not(.eyebrow),
.faq-content p,
.contact-panel>p:not(.eyebrow),
.contact-guidance p,
.contact-area p{font-size:var(--reading-size);line-height:1.8}
.about-copy .large-body{font-size:18px;line-height:1.8}
.section-heading>p{max-width:420px}
.eyebrow,.hero .eyebrow,.section-heading .eyebrow,.about-copy .eyebrow,
.center-heading .eyebrow,.reviews .eyebrow,.rates-intro>.eyebrow,
.contact-panel .eyebrow,.modal .eyebrow{font-size:12px;line-height:1.65;letter-spacing:1.2px;color:#82694f}
.topbar,.topbar-inner{font-size:12px}
.topbar-inner{min-height:36px}
.desktop-nav a{font-size:15px}
.button,.hero-actions .button,.contact-actions .button,.header-cta,.modal .button{font-size:15px;min-height:48px;line-height:1.5}
.text-button,.hero-actions .text-button,.about-copy .text-button,
.review-card>.text-button,.rates-intro>.text-button,.inline-link,
.journey-step .inline-link,.service-more,.info-modal .text-button{font-size:15px;line-height:1.6}
.hero-actions{flex-wrap:wrap;gap:12px 24px}
.hero-actions .button{gap:12px}
.hero-promises{font-size:14px;line-height:1.6;flex-wrap:wrap;gap:10px 24px}
.hero-review{max-width:490px}
.hero-review a{font-size:15px;line-height:1.6}
.review-subline{font-size:13px;line-height:1.65;color:#7c6b59;margin-top:6px}
.hero-review .icon{width:18px;height:18px}
.hero-note small{font-size:12px;color:#796753}
.hero-photo-caption,.about-caption{font-size:12px;line-height:1.6;color:#7d6d5a}
.about-quote>span{font-size:12px;line-height:1.6;color:#78634c}
.about-signoff{font-size:14px}
.signature{font-size:28px}
.services-footnote{font-size:14px;line-height:1.7;text-align:center;align-items:flex-start;color:#7c6a55}
.service-number{font-size:12px;color:#897561}
.step-kicker{font-size:12px;line-height:1.6;color:#82694f;letter-spacing:.7px}
.journey-step h3{font-size:29px}
.journey-step p{max-width:none}
.review-card-top{font-size:14px;line-height:1.6}
.review-card>p{max-width:none}
.rates-note p{font-size:14px;line-height:1.7;color:#7b6852}
.faq-list summary{font-size:17px;line-height:1.6;gap:18px;padding-block:23px;color:#63513f}
.faq-list summary>.icon{width:20px;height:20px}
.contact-details,.contact-options>a{font-size:16px;line-height:1.7}
.contact-options{flex-wrap:wrap;gap:8px 24px}
.contact-options>a{min-height:44px}
.contact-options .icon{width:18px;height:18px}
.contact-divider{font-size:13px;line-height:1.6;max-width:500px;color:#826c53}
.contact-guidance{max-width:880px}
.contact-guidance h3,.contact-area h3{font-size:16px;line-height:1.5}
.contact-area{max-width:790px}
.contact-area p+p{font-size:14px;line-height:1.7}
.contact-availability{font-size:14px}
.floating-contact>span{font-size:14px}
.language-switch>button,.footer-language>button{font-size:12px;min-width:40px;min-height:40px;padding:5px 8px}
.language-switch>button[aria-pressed=true]{color:#674a38}
.menu-toggle,.footer-back,.modal-close{min-width:44px;min-height:44px}

/* Certification symbols are vectors, never font/emoji glyphs. */
.credential-logos{opacity:.9;gap:26px;min-width:0}
.credential-logo{min-width:0}
.credential-logo small{font-size:13px;line-height:1.5;white-space:normal;max-width:180px;margin-inline:auto;color:#6c5e4e}
.credentials h2{font-size:14px;line-height:1.7;color:#74614e}
.credentials h2 span,.credentials .credentials-label{font-size:14px;color:#65513e}
.credential-symbol{display:inline-block;vertical-align:middle;width:26px;height:26px;color:#968366;flex-shrink:0}
.logo-kckz strong{font-size:36px;letter-spacing:-2px}
.logo-kckz .credential-symbol{margin-left:4px;vertical-align:3px}
.logo-kiwa strong{font-size:44px}
.logo-kiwa sup{font-size:11px}
.logo-kraammarkt strong{display:flex;align-items:center;justify-content:center;gap:4px;font-size:29px;letter-spacing:-1px}
.logo-kraammarkt .credential-symbol{transform:rotate(15deg)}
.logo-een strong{font-size:15px}
.logo-een strong span{font-size:32px}

/* Cards get room for readable body copy rather than shrinking the letters. */
.service-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-card{display:flex;flex-direction:column;align-items:flex-start}
.service-card h3{white-space:normal;min-height:2.3em;max-width:none;line-height:1.15}
.service-card p{min-height:0;max-width:none}
.service-more{margin-top:auto;padding-top:18px;text-align:left}
.service-more .icon{width:18px;height:18px}
html[lang="en"] .service-card h3{min-height:2.3em}

/* Footer navigation and legal/company information remain readable too. */
.footer-top{gap:40px}
.footer-top .brand-logo{filter:brightness(1.07);mix-blend-mode:multiply}
.footer-top>p{font-size:16px;line-height:1.75;color:#75634f;max-width:195px}
.footer-links{font-size:16px;line-height:1.6;column-gap:32px;row-gap:8px;color:#695846}
.footer-links a{display:flex;align-items:center;min-height:40px}
.footer-bottom,.footer-bottom>button{font-size:14px;line-height:1.7;color:#75634f}
.footer-bottom{gap:12px 20px;align-items:center}
.footer-bottom>button{min-height:44px;padding:4px 0}
.preview-badge{font-size:12px;line-height:1.5;color:#7c674e;padding:4px 8px}
.footer-back{width:44px;height:44px}
.footer-back .icon{width:20px;height:20px}
.info-modal #info-body{font-size:17px;line-height:1.8}
.info-modal .service-detail-list{color:var(--muted);padding-left:22px}
.info-modal .service-detail-list li{padding-bottom:9px}
.modal-close .icon{width:19px;height:19px}

@media(max-width:1199px){
  .header-cta{display:none}
  .credentials-inner{flex-direction:column;gap:24px}
  .credentials h2{min-width:0;border:0;padding:0;text-align:center}
  .credentials h2 br{display:block}
  .credential-logos{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-grid .service-card{padding:28px;border-right:1px solid var(--line)}
  .service-grid .service-card:nth-child(2n){border-right:0}
  .service-grid .service-card:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .service-card h3{font-size:29px}
}
@media(max-width:959px){
  .desktop-nav{display:none}
  .menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;border:1px solid #dcd2c5;border-radius:50%;padding:8px}
  .menu-toggle>span{width:17px;height:1px;background:var(--brown);transition:transform .2s}
  .menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:14px 28px 24px;border-top:1px solid var(--line);gap:0;background:var(--cream);box-shadow:0 15px 15px #45382b08}
  .mobile-nav>a{font-size:16px;line-height:1.6;padding:12px 0;border-bottom:1px solid #e4dbcf}
  .mobile-nav>.button{margin-top:16px;font-size:15px;padding:12px 18px}
  .credential-logos{gap:20px}
  .logo-kraammarkt strong{font-size:26px}
  .credential-logo small{font-size:12px}
}
@media(max-width:699px){
  :root{--reading-size:16px}
  .hero-description,.about-copy .large-body{font-size:16px;line-height:1.85}
  .hero .eyebrow,.section-heading .eyebrow,.about-copy .eyebrow,.center-heading .eyebrow,.reviews .eyebrow,.rates-intro>.eyebrow,.contact-panel .eyebrow{font-size:12px;letter-spacing:.8px}
  .topbar-inner{font-size:11px;min-height:32px;text-align:center}
  .topbar .icon{width:14px;height:14px}
  .hero-actions{flex-wrap:wrap;gap:8px 20px}
  .hero-actions .button{font-size:15px;min-height:50px;padding:13px 17px;white-space:normal;text-align:left}
  .hero-actions .text-button{font-size:15px;min-height:44px}
  .hero-promises{font-size:13px;gap:8px 18px}
  .hero-review a{font-size:14px}
  .review-subline{font-size:12px}
  .hero-note small{font-size:11px}
  .hero-photo-caption,.about-caption{font-size:11px}
  .hero-visual{padding-bottom:36px}
  .hero-photo-caption{max-width:260px;text-align:right}
  .credentials h2,.credentials h2 span,.credentials .credentials-label{font-size:14px}
  .credential-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
  .credential-logo small{font-size:12px;max-width:none}
  .logo-kckz strong{font-size:36px}
  .logo-kiwa strong{font-size:44px}
  .logo-kraammarkt strong{font-size:25px}
  .logo-kraammarkt .credential-symbol{width:22px;height:22px}
  .logo-een strong{font-size:15px}
  .logo-een strong span{font-size:32px}
  .section-heading>p{max-width:none}
  .about-copy h2,.reviews h2{white-space:normal}
  .about-quote>span{font-size:12px;max-width:180px}
  .center-heading>p:last-child{max-width:330px}
  .journey-step{padding-left:64px;padding-bottom:32px}
  .step-kicker{font-size:11px;line-height:1.6}
  .journey-step h3{font-size:29px}
  .journey-step .inline-link{font-size:15px;min-height:44px}
  .faq-list summary{font-size:16px;line-height:1.6}
  .faq-content{padding-right:12px}
  .contact-panel{padding-inline:22px}
  .contact-panel>p:not(.eyebrow) br{display:none}
  .contact-actions{flex-wrap:wrap;gap:12px}
  .contact-actions .button{font-size:15px;min-height:48px;padding-inline:18px}
  .contact-details,.contact-options>a{font-size:15px}
  .contact-divider{font-size:12px;gap:10px}
  .contact-guidance h3,.contact-area h3{font-size:16px}
  .contact-area p+p{font-size:14px}
  .footer-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center}
  .footer-top>.brand{grid-column:1;grid-row:1;justify-self:start}
  .footer-back{grid-column:2;grid-row:1;margin:0}
  .footer-top>p{display:block;grid-column:1/-1;max-width:none;font-size:16px}
  .footer-links{grid-column:1/-1;font-size:16px;column-gap:22px;row-gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-links a{min-height:44px}
  .footer-bottom,.footer-bottom>button{font-size:14px;line-height:1.7}
  .footer-bottom{gap:12px 16px;justify-content:flex-start}
  .footer-bottom>span:first-child{width:100%}
  .footer-bottom>button{margin-left:0}
  .footer-language{margin-left:0}
  .language-switch>button,.footer-language>button{font-size:12px;min-width:40px;min-height:40px;padding:5px 8px}
  .preview-badge{font-size:12px;max-width:100%}
  .footer.container{padding-bottom:72px}
  .floating-contact{width:48px;height:48px}
  .info-modal #info-body{font-size:16px;line-height:1.8}
}
@media(max-width:599px){
  .service-grid{grid-template-columns:minmax(0,1fr)}
  .service-grid .service-card:nth-child(n){padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}
  .service-grid .service-card:last-child{border-bottom:0}
  .service-grid .service-card h3,html[lang="en"] .service-card h3{font-size:29px;line-height:1.15;min-height:0;max-width:none}
  .service-card p{font-size:16px;line-height:1.8;min-height:0}
  .service-icon{width:40px;height:40px;margin-bottom:18px}
  .service-card .service-number{font-size:12px;right:0;top:23px}
  .service-more{font-size:15px;gap:12px;line-height:1.6;padding-top:16px}
}

/* Match the existing contact guidance corners and keep the header compact. */
:root{--panel-radius:20px;--header-height:96px;--header-logo-size:80px}
.review-card,.contact-panel,.footer.container,.contact-guidance>div{border-radius:var(--panel-radius)}
.language-switch{border-radius:var(--panel-radius)}
.language-switch>button{border-radius:calc(var(--panel-radius) - 4px)}
.header-inner{height:var(--header-height)}
.header .brand-logo{width:var(--header-logo-size);height:var(--header-logo-size)}
.header .language-switch>button{min-width:40px}
html{scroll-padding-top:calc(var(--header-height) + 12px)}
.floating-contact .whatsapp-icon{display:block;fill:currentColor;stroke:none}
@media(max-width:959px){
  :root{--header-height:88px;--header-logo-size:72px}
}
@media(max-width:699px){
  :root{--panel-radius:18px;--header-height:80px;--header-logo-size:64px}
  .floating-contact{display:flex;align-items:center;justify-content:center;gap:0;width:56px;height:56px;min-width:56px;min-height:56px;padding:0;border-radius:50%;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));line-height:0}
  .floating-contact .whatsapp-icon{width:28px;height:28px;flex:none}
}

/* A short invitation, direct contact routes and practical guidance get their own space. */
.contact{padding-bottom:56px}
.contact-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:start}
.contact-main .contact-panel{padding:44px;text-align:left}
.contact-panel h2{font-size:54px;line-height:1.08}
.contact-panel .contact-decoration{left:auto;right:18px;top:20px;font-size:140px;opacity:.35}
.contact-main .contact-actions{justify-content:flex-start;margin-top:26px}
.portal-note,.journey-step .portal-note,.contact-panel>p.contact-portal-note{font-size:13px;line-height:1.6;margin-top:8px;color:var(--muted)}
.contact-direct{padding:8px 0 0;min-width:0}
.contact-direct-heading{font-family:var(--serif);font-size:36px;font-weight:500;line-height:1.2;margin:0 0 14px}
.contact-direct-links{display:flex;flex-direction:column}
.contact-route{display:flex;align-items:center;gap:16px;min-height:80px;padding:15px 0;border-bottom:1px solid var(--line)}
.contact-route>.icon{width:24px;height:24px;flex-shrink:0;color:#9c8163}
.contact-route>span{min-width:0}
.contact-route strong{display:block;font-size:16px;line-height:1.6;font-weight:500}
.contact-route-value{display:block;font-size:15px;line-height:1.7;overflow-wrap:anywhere;color:var(--muted)}
.contact-route:hover strong{text-decoration:underline;text-underline-offset:4px}
.contact-direct .contact-area{margin:26px 0 0;max-width:none;text-align:left}
.contact-direct .contact-area p{font-size:16px;line-height:1.8}
.contact>.container>.contact-guidance{margin:32px 0 0;max-width:none;gap:20px}
.contact-guidance>div{background:var(--cream)}
.footer-surround{padding-block:24px;background:var(--paper)}
.footer-surround>.footer.container{margin-bottom:0}
@media(max-width:1199px){
  .contact-main{gap:32px}
  .contact-main .contact-panel{padding:36px}
  .contact-panel h2{font-size:48px}
}
@media(max-width:899px){
  .contact-main{grid-template-columns:minmax(0,1fr);gap:32px}
  .contact-direct{padding:0 8px}
}
@media(max-width:699px){
  .contact{padding-bottom:40px}
  .rates{padding-top:56px}
  .contact-main .contact-panel{padding:32px 24px}
  .contact-panel h2{font-size:43px}
  .contact-main .contact-actions{margin-top:24px}
  .contact-direct-heading{font-size:32px}
  .contact>.container>.contact-guidance{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:28px}
  .footer-surround{padding-block:14px}
}
@media(max-width:374px){
  .contact-panel h2{font-size:38px}
}
