/* UniLoud: responsive refinements for Greek and English content. */
/* Keep decorative effects inside the viewport without a horizontal page scrollbar. */
html { overflow-x:clip; }
/* Keep the MSP vertical captions in their intended reading order. */
.page-id-573 .vertical-header { white-space:nowrap; }
.footer-cols h2, .footer-cols a:hover { color:#167483; }
.footer-social p { font-size:12px; }
@media(max-width:768px){
 .uniloud-blog-copy{padding-inline:20px;box-sizing:border-box}
 .uniloud-blog-copy h2,.pricing-goals h2,.page-id-415 .sm-grid h2,.uniloud-package-details h2{font-size:clamp(1.5rem,5.8vw,2.25rem);line-height:1.3;overflow-wrap:break-word}
}
.uniloud-language-switcher { display:flex; flex-wrap:wrap; align-items:center; gap:0.35rem; }
.uniloud-language-switcher a { display:inline-flex; align-items:center; min-height:44px; padding:0.4rem 0.65rem; font-size:0.8rem; border:1px solid currentColor; border-radius:6px; }
.uniloud-language-switcher a[aria-current] { color:var(--main-cyan); }
.mobile-menu:focus-visible, .uniloud-language-switcher a:focus-visible { outline:2px solid var(--main-cyan); outline-offset:4px; }
.mobile-menu__content { height:100dvh; overflow-y:auto; overscroll-behavior:contain; }
.mobile-menu__content > .uniloud-language-switcher { margin:1rem 0; }
.site-footer .footer-wrapper { grid-template-columns:minmax(0,.7fr) minmax(0,1fr) minmax(0,1.15fr) minmax(0,1.35fr); column-gap:clamp(28px,2.6vw,48px); }
.footer-cols, .footer-menu { min-width:0; max-width:100%; overflow-wrap:anywhere; }
.site-footer .footer-hours, .site-footer .footer-location, .site-footer .footer-newsletter { min-width:0; overflow-wrap:normal; word-break:normal; }
.site-footer .newsletter-field .input-wrapper { width:100%; min-width:0; box-sizing:border-box; gap:8px; padding:6px 10px; }
.site-footer .newsletter-field input[type="email"] { flex:1 1 0; width:0; min-width:0; max-width:100%; min-height:44px; font-size:16px; padding:8px 0; }
.site-footer .newsletter-field .news-button { flex:0 0 auto; width:auto; min-width:84px; min-height:44px; padding:8px 10px; font-size:.875rem; line-height:1.4; white-space:nowrap; word-break:normal; overflow-wrap:normal; }
.site-footer .footer-social { flex-wrap:wrap; gap:12px 18px; }
.hero-title, .prefooter-title, .mobile-navigation a { overflow-wrap:break-word; }
@media (max-width:1024px) {
  .footer-wrapper { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .prefooter-content { padding:80px 40px 40px; }
}
@media (max-width:900px) {
  .header-row > .uniloud-language-switcher { display:none; }
  .mobile-menu { display:flex; opacity:1; transform:none; min-height:44px; min-width:44px; }
}
@media (max-width:768px) {
  .hero-title { font-size:clamp(1.55rem,5.8vw,2.75rem); letter-spacing:1px; }
  .hero-subtitle { width:100%; max-width:42rem; padding-inline:1rem; }
  .hero-actions { padding-inline:1rem; gap:0.65rem; }
  .hero-actions a, .prefooter-button { max-width:100%; }
  .liquidGlass-text { white-space:normal; text-align:center; overflow-wrap:break-word; }
  .prefooter-content { padding:50px 20px 25px; }
  .prefooter-button { width:fit-content; margin-inline:auto; }
  .mobile-menu__content { padding:28px 20px; gap:24px; }
  .mobile-menu__content .custom-logo-link { margin-bottom:0; }
  .mobile-menu__content .mobile-navigation { align-items:stretch; gap:24px; }
  .mobile-navigation__right { min-width:0; }
  .mobile-menu__footer a { overflow-wrap:anywhere; }
  .contact-form { padding:24px 16px; }
  div.wpforms-container-full input, div.wpforms-container-full select, div.wpforms-container-full textarea { font-size:16px; max-width:100%; }
  div.wpforms-container-full button[type="submit"] { min-height:44px; max-width:100%; white-space:normal; }
  .contact-form .wpforms-layout-column { min-width:0; }
  .footer-cols.col-3 { gap:28px; }
}
@media (max-width:550px) {
  .footer-wrapper { grid-template-columns:minmax(0,1fr); justify-content:stretch; gap:32px; }
  .footer-cols.col-3, .footer-cols.col-4 { grid-column:auto; }
  .footer-menu { width:100%; }
  .footer-social { flex-wrap:wrap; }
  .mobile-menu__content .mobile-navigation ul { column-count:1; }
  .site-branding { max-width:calc(100% - 90px); }
  .site-branding img { max-width:100%; height:auto; }
}
@media (prefers-reduced-motion:reduce) {
  .mobile-menu__content, .mobile-menu__content * { scroll-behavior:auto; transition:none !important; }
}

/* Give the address and newsletter their own space on laptops and tablets. */
@media(max-width:1200px){
 .site-footer .footer-wrapper{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}
 .site-footer .footer-wrapper>.footer-cols{grid-column:auto;grid-row:auto;width:100%;min-width:0;max-width:100%}
 .site-footer .footer-cols.col-3{flex-direction:column;gap:28px}
 .site-footer .footer-cols.col-4{gap:28px}
 .site-footer .footer-hours,.site-footer .footer-location,.site-footer .footer-newsletter{width:100%;min-width:0;max-width:100%;overflow-wrap:normal;word-break:normal}
 .site-footer .footer-cols h2{font-size:.9375rem;line-height:1.5;letter-spacing:.04em;margin:0 0 12px;word-break:normal;overflow-wrap:normal}
 .site-footer .footer-cols p,.site-footer .footer-cols a{font-size:.875rem;line-height:1.65;letter-spacing:.02em}
 .site-footer .footer-hours p,.site-footer .footer-location p{margin:0 0 8px;text-transform:none}
 .site-footer .footer-menu{width:100%}
 .site-footer .footer-menu ul{column-gap:24px}
 .site-footer .footer-menu li{break-inside:avoid;line-height:1.5;margin-bottom:4px}
 .site-footer .footer-menu a{display:inline-flex;align-items:center;min-height:44px}
 .site-footer .newsletter-field .input-wrapper{width:100%;min-width:0;box-sizing:border-box;gap:8px;padding:6px 10px}
 .site-footer .newsletter-field input[type="email"]{flex:1 1 0;width:0;min-width:0;max-width:100%;min-height:44px;font-size:16px;padding:8px 0}
 .site-footer .newsletter-field .news-button{flex:0 0 auto;width:auto;min-width:84px;min-height:44px;padding:8px 10px;font-size:.875rem;line-height:1.4;white-space:nowrap;word-break:normal;overflow-wrap:normal}
 .site-footer .terms-text{padding-left:0;margin-top:10px}
 .site-footer .terms-text label{align-items:flex-start;gap:10px;font-size:.75rem;line-height:1.6;overflow-wrap:normal}
 .site-footer .terms-text input[type="checkbox"]{flex:0 0 18px;width:18px;min-width:18px;height:18px;margin:1px 0 0}
 .site-footer .footer-social{flex-wrap:wrap;gap:12px 18px}
 .site-footer .footer-social p{font-size:.75rem;line-height:1.6;text-transform:none}
 .site-footer .social-items{flex:0 0 auto}
 .site-footer .social-item a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
}
@media(max-width:550px){
 .site-footer .footer-wrapper{grid-template-columns:minmax(0,1fr);gap:32px;padding:48px 0 40px}
 .site-footer .footer-wrapper>.footer-cols{grid-column:1 / -1;grid-row:auto}
 .site-footer .footer-logo{max-width:140px}
}


/* Approved copy needs space to wrap at every supported breakpoint. */
.uniloud-blog-copy{padding-block:48px;max-width:1100px}
.uniloud-package-details{max-width:1000px;margin-inline:auto;padding-block:32px 64px}
.package-card .package-details-link{display:inline-flex;margin-top:16px;position:relative;z-index:2;text-decoration:underline;min-height:44px;align-items:center}
.packages-wrapper .switch{position:relative}
.packages-wrapper .switch input{display:block;position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;z-index:4;cursor:pointer}
.packages-wrapper .switch:focus-within{outline:2px solid #54c5d0;outline-offset:5px}
.packages-wrapper .package-content li{line-height:1.55;align-items:flex-start;margin-bottom:12px}
.packages-wrapper .package-content li::before{flex:0 0 20px}
.pricing-goals .wp-block-list{max-width:900px;margin:24px auto;line-height:1.7}
.contact-form h2,.package-card li,.hero-title{overflow-wrap:break-word}
@media(max-width:767px){
 .uniloud-blog-copy,.uniloud-package-details{padding-block:24px}
 .packages-wrapper .package-card{min-width:0;max-width:100%}
 .pricing-goals{padding-inline:16px}
}
