@layer theme-custom {
body.b_contact_detail #pjax-container{background:#fffdfb;padding:36px 0 64px;}body.b_contact_detail #pjax-container .container{max-width:860px;}body.b_contact_detail #pjax-container h1:first-of-type{font-size:0!important;line-height:1.15;margin:0 auto 16px;text-align:center;color:#514742;}body.b_contact_detail #pjax-container h1:first-of-type::before{content:'CONTACT PATRICIA';display:block;font-size:14px;letter-spacing:2.5px;font-weight:500;color:#9a8179;margin-bottom:12px;}body.b_contact_detail #pjax-container h1:first-of-type::after{content:"Let us Plan Your Taiwan Experience.";display:block;font-size:clamp(34px,7vw,46px);line-height:1.15;font-weight:700;letter-spacing:-.02em;color:#514742;}body.b_contact_detail #pjax-container .container>p:first-of-type{font-size:0!important;text-align:center;max-width:720px;margin:0 auto 30px;color:#6b5d57;}body.b_contact_detail #pjax-container .container>p:first-of-type::after{content:"Interested in learning practical Mandarin, discovering Taiwanese food, or exploring Taipei like a local? Tell me what you are looking for and I can help you plan the right experience.";display:block;font-size:18px;line-height:1.8;color:#6b5d57;}body.b_contact_detail #pjax-container form::before{content:'Send Your Inquiry';display:block;font-size:26px;line-height:1.25;font-weight:700;color:#514742;text-align:center;margin:0 0 8px;}body.b_contact_detail #pjax-container form::after{content:"I will reply with the next steps and help you plan from there. — Patricia";display:block;font-size:14px;line-height:1.6;color:#8a7770;text-align:center;margin-top:18px;}body.b_contact_detail #pjax-container form{background:#fffaf7;border:1px solid #eadfd8;border-radius:18px;padding:30px;box-shadow:0 10px 30px rgba(81,71,66,.06);}body.b_contact_detail #pjax-container label{color:#514742;font-weight:600;margin-bottom:7px;}body.b_contact_detail #pjax-container .form-group{margin-bottom:20px;}body.b_contact_detail #pjax-container .form-control{border:1px solid #ddcfc7;border-radius:10px;min-height:48px;padding:11px 14px;background:#fff;color:#514742;box-shadow:none;}body.b_contact_detail #pjax-container textarea.form-control{min-height:150px;resize:vertical;}body.b_contact_detail #pjax-container .form-control:focus{border-color:#9c7f78;box-shadow:0 0 0 3px rgba(156,127,120,.12);}body.b_contact_detail #pjax-container .btn,body.b_contact_detail #pjax-container button[type='submit'],body.b_contact_detail #pjax-container input[type='submit']{background:#6f5b55;border-color:#6f5b55;color:#fff;border-radius:8px;padding:12px 26px;font-weight:600;min-height:46px;}body.b_contact_detail #pjax-container .btn:hover,body.b_contact_detail #pjax-container button[type='submit']:hover,body.b_contact_detail #pjax-container input[type='submit']:hover{background:#5d4b46;border-color:#5d4b46;}

/* Contact punctuation spacing repair */
body.b_contact_detail #pjax-container h1,body.b_contact_detail #pjax-container h2,body.b_contact_detail #pjax-container h3,body.b_contact_detail #pjax-container p,body.b_contact_detail #pjax-container form{font-kerning:normal!important;font-variant-ligatures:normal;}

/* Site-wide typography cleanup */
section.index-editor h1,section.index-editor h2,section.index-editor h3,section.index-editor h4,body.blank-page #pjax-container h1,body.blank-page #pjax-container h2,body.blank-page #pjax-container h3,body.blank-page #pjax-container h4,body.b_blog_detail #pjax-container h1,body.b_blog_detail #pjax-container h2,body.b_blog_detail #pjax-container h3,body.b_blog_list #pjax-container h1,body.b_blog_list #pjax-container h2,body.b_blog_list #pjax-container h3,body.b_contact_detail #pjax-container h1,body.b_contact_detail #pjax-container h2,body.b_contact_detail #pjax-container h3{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;text-wrap:balance;}
section.index-editor p,body.blank-page #pjax-container p,body.b_blog_detail #pjax-container p,body.b_blog_list #pjax-container p,body.b_contact_detail #pjax-container p{word-break:normal!important;overflow-wrap:break-word;hyphens:none!important;}
nav.navbar a,footer a,section.index-editor a,body.blank-page #pjax-container a,body.b_blog_detail #pjax-container a,body.b_blog_list #pjax-container a,body.b_contact_detail #pjax-container a,body.b_contact_detail #pjax-container button{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;}

/* Blog */
body.b_blog_detail #pjax-container p,body.b_blog_detail #pjax-container li,body.b_blog_detail #pjax-container span,body.b_blog_detail #pjax-container strong,body.b_blog_detail #pjax-container em,body.b_blog_detail #pjax-container blockquote,body.b_blog_detail #pjax-container figcaption,body.b_blog_detail #pjax-container h1,body.b_blog_detail #pjax-container h2,body.b_blog_detail #pjax-container h3,body.b_blog_detail #pjax-container h4,body.b_blog_detail #pjax-container h5,body.b_blog_detail #pjax-container h6{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;}
body.b_blog_detail #pjax-container h1,body.b_blog_detail #pjax-container h2,body.b_blog_detail #pjax-container h3,body.b_blog_detail #pjax-container h4,body.b_blog_detail #pjax-container h5,body.b_blog_detail #pjax-container h6{text-wrap:balance;}
body.b_blog_detail #pjax-container p,body.b_blog_detail #pjax-container li{line-height:1.8;}
body.b_blog_detail #pjax-container a[href^='http']{overflow-wrap:anywhere!important;word-break:normal!important;}

/* Footer */
footer,footer p,footer div,footer span,footer a,footer h1,footer h2,footer h3,footer h4,footer h5,footer h6{word-break:keep-all!important;overflow-wrap:normal!important;hyphens:none!important;}
footer h1,footer h2,footer h3,footer h4,footer h5,footer h6{text-wrap:balance;}
@media (min-width:992px){footer .container{max-width:1400px!important;}footer p{line-height:1.75!important;}}

/* Course pages */
body.b_course_intro #pjax-container,body.b_course_intro #pjax-container *,body.b_course_detail #pjax-container,body.b_course_detail #pjax-container *{word-break:keep-all!important;overflow-wrap:normal!important;word-wrap:normal!important;hyphens:none!important;}
body.b_course_intro #pjax-container h1,body.b_course_intro #pjax-container h2,body.b_course_intro #pjax-container h3,body.b_course_detail #pjax-container h1,body.b_course_detail #pjax-container h2,body.b_course_detail #pjax-container h3{text-wrap:balance;}

@media (max-width:767px){
body.b_contact_detail #pjax-container{padding:22px 0 46px;}body.b_contact_detail #pjax-container .container{padding-left:18px;padding-right:18px;}body.b_contact_detail #pjax-container h1:first-of-type::after{font-size:32px;line-height:1.15;}body.b_contact_detail #pjax-container .container>p:first-of-type::after{font-size:16px;}body.b_contact_detail #pjax-container form{padding:22px 18px;border-radius:14px;}body.b_contact_detail #pjax-container form::before{font-size:23px;}body.b_contact_detail #pjax-container .btn,body.b_contact_detail #pjax-container button[type='submit'],body.b_contact_detail #pjax-container input[type='submit']{width:100%;}
section.index-editor h1,body.blank-page #pjax-container h1,body.b_blog_detail #pjax-container h1,body.b_blog_list #pjax-container h1{font-size:clamp(30px,8.2vw,36px)!important;line-height:1.16!important;letter-spacing:-.02em!important;}
section.index-editor h2,body.blank-page #pjax-container h2,body.b_blog_detail #pjax-container h2,body.b_blog_list #pjax-container h2,body.b_contact_detail #pjax-container h2{font-size:clamp(25px,6.8vw,30px)!important;line-height:1.22!important;}
section.index-editor h3,body.blank-page #pjax-container h3,body.b_blog_detail #pjax-container h3,body.b_blog_list #pjax-container h3,body.b_contact_detail #pjax-container h3{font-size:clamp(20px,5.5vw,24px)!important;line-height:1.28!important;}
section.index-editor h4,body.blank-page #pjax-container h4{font-size:clamp(17px,4.8vw,20px)!important;line-height:1.35!important;}
section.index-editor [style*='letter-spacing:2px'],body.blank-page #pjax-container [style*='letter-spacing:2px']{letter-spacing:1.2px!important;font-size:13px!important;line-height:1.45!important;}
body.blank-page #pjax-container [style*='padding:55px 20px'],body.blank-page #pjax-container [style*='padding:60px 20px']{padding:34px 10px!important;}
body.blank-page #pjax-container [style*='margin-bottom:55px']{margin-bottom:36px!important;}
body.blank-page #pjax-container [style*='padding:35px'],body.blank-page #pjax-container [style*='padding:30px'],body.blank-page #pjax-container [style*='padding:28px'],body.blank-page #pjax-container [style*='padding:25px']{padding:22px 18px!important;}
body.blank-page #pjax-container a[style*='display:inline-block'],section.index-editor a[style*='display:inline-block']{max-width:100%;white-space:normal!important;line-height:1.35!important;text-align:center;}
nav.navbar .navbar-brand,nav.navbar a{white-space:normal!important;}
footer,footer p,footer div,footer span,footer a{word-break:normal!important;overflow-wrap:break-word!important;}

/* Course mobile layout repair: portrait was keeping a desktop side column and squeezing text */
body.b_course_intro #pjax-container .container,body.b_course_detail #pjax-container .container{width:100%!important;max-width:100%!important;padding-left:20px!important;padding-right:20px!important;}
body.b_course_intro #pjax-container .row,body.b_course_detail #pjax-container .row{display:block!important;margin-left:0!important;margin-right:0!important;width:100%!important;}
body.b_course_intro #pjax-container [class*='col-'],body.b_course_detail #pjax-container [class*='col-']{float:none!important;display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;}
body.b_course_intro #pjax-container h1,body.b_course_intro #pjax-container h2,body.b_course_detail #pjax-container h1,body.b_course_detail #pjax-container h2{width:100%!important;max-width:100%!important;font-size:clamp(25px,6.6vw,30px)!important;line-height:1.25!important;letter-spacing:-.01em!important;}
body.b_course_intro #pjax-container p,body.b_course_intro #pjax-container li,body.b_course_detail #pjax-container p,body.b_course_detail #pjax-container li{width:auto!important;max-width:100%!important;font-size:16px!important;line-height:1.7!important;}
}

@media (max-width:380px){section.index-editor h1,body.blank-page #pjax-container h1,body.b_blog_detail #pjax-container h1,body.b_blog_list #pjax-container h1{font-size:29px!important;}section.index-editor h2,body.blank-page #pjax-container h2,body.b_blog_detail #pjax-container h2,body.b_blog_list #pjax-container h2{font-size:25px!important;}body.blank-page #pjax-container .container,body.b_blog_detail #pjax-container .container,body.b_blog_list #pjax-container .container{padding-left:15px!important;padding-right:15px!important;}}

/* Contact apostrophe rendering test - desktop and mobile */
body.b_contact_detail #pjax-container h1,
body.b_contact_detail #pjax-container h2,
body.b_contact_detail #pjax-container h3,
body.b_contact_detail #pjax-container p,
body.b_contact_detail #pjax-container form,
body.b_contact_detail #pjax-container label,
body.b_contact_detail #pjax-container input,
body.b_contact_detail #pjax-container textarea,
body.b_contact_detail #pjax-container button{
  letter-spacing:normal!important;
  word-spacing:normal!important;
  font-kerning:normal!important;
  font-variant-ligatures:normal!important;
  font-feature-settings:'kern' 1,'liga' 1!important;
}
body.b_contact_detail #pjax-container h1:first-of-type::after,
body.b_contact_detail #pjax-container .container>p:first-of-type::after,
body.b_contact_detail #pjax-container form::after{
  letter-spacing:normal!important;
  word-spacing:normal!important;
  font-family:Arial,'Helvetica Neue',Helvetica,sans-serif!important;
  font-kerning:normal!important;
  font-variant-ligatures:normal!important;
}

/* Link hover: original glow for main site, rose + underline only in footer */
#pjax-container a,
nav.navbar a{
  position:relative;
  transition:color .25s ease,text-shadow .25s ease,filter .25s ease;
}
#pjax-container a:hover,
#pjax-container a:focus-visible,
nav.navbar a:hover,
nav.navbar a:focus-visible{
  text-shadow:0 0 6px rgba(255,255,255,.95),0 0 12px rgba(214,181,194,.75),0 0 20px rgba(214,181,194,.45);
  filter:brightness(1.12);
}

footer a{
  position:relative;
  transition:color .25s ease,text-shadow .25s ease,filter .25s ease;
  text-decoration:none;
}
footer a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-3px;
  width:100%;
  height:1.5px;
  background:currentColor;
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .28s ease;
}
footer a:hover,
footer a:focus-visible{
  color:#b06f86!important;
  text-shadow:0 0 6px rgba(255,255,255,.95),0 0 12px rgba(214,181,194,.75),0 0 20px rgba(214,181,194,.45);
  filter:brightness(1.08);
}
footer a:hover::after,
footer a:focus-visible::after{
  transform:scaleX(1);
}


/* Footer Contact Patricia button: glow only, no rose color or underline */
footer a.btn,
footer .btn a,
footer a[class*="btn"],
footer a[class*="button"]{
  color:inherit!important;
}
footer a.btn::after,
footer .btn a::after,
footer a[class*="btn"]::after,
footer a[class*="button"]::after{
  display:none!important;
}
footer a.btn:hover,
footer a.btn:focus-visible,
footer .btn a:hover,
footer .btn a:focus-visible,
footer a[class*="btn"]:hover,
footer a[class*="btn"]:focus-visible,
footer a[class*="button"]:hover,
footer a[class*="button"]:focus-visible{
  color:inherit!important;
  text-shadow:0 0 6px rgba(255,255,255,.95),0 0 12px rgba(214,181,194,.75),0 0 20px rgba(214,181,194,.45);
  filter:brightness(1.12);
}




/* Blank-page top spacing: bring page content closer to navigation */
body.blank-page #pjax-container > .container{
  padding-top:0!important;
  margin-top:0!important;
}
body.blank-page #pjax-container .container > section:first-child,
body.blank-page #pjax-container section:first-child{
  margin-top:0!important;
  padding-top:0!important;
}
body.blank-page #pjax-container [style*="padding:55px 20px"]{
  padding-top:12px!important;
}
@media (max-width:767px){
  body.blank-page #pjax-container [style*="padding:55px 20px"]{
    padding-top:4px!important;
  }
}


/* Blank page template outer-gap correction */
body.blank-page #pjax-container{
  margin-top:-36px!important;
}
@media (max-width:767px){
  body.blank-page #pjax-container{
    margin-top:-52px!important;
  }
}


/* 2026-09-20 Blank-page inner spacing normalization.
   Only adjusts the first free-editor content wrapper; navbar/PJAX positioning is untouched. */
@media (min-width:768px){
  body.blank-page #pjax-container section:first-child .container{
    padding-top:0!important;
  }
  body.blank-page #pjax-container section:first-child .container > div:first-child{
    padding-top:18px!important;
  }
}


/* 2026-09-20 Reduce blank-page reserved top whitespace safely.
   Collapse the empty area inside the first blank-page section; navbar remains untouched. */
@media (min-width:768px){
  body.blank-page #pjax-container section:first-child{
    min-height:0!important;
    height:auto!important;
    padding-top:0!important;
    padding-bottom:0!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  body.blank-page #pjax-container section:first-child > .container{
    min-height:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }
}

}
