/*
Theme Name: Hello Elementor Child - UPSB
Theme URI: https://upsb.asia
Description: Child theme for Hello Elementor. Adds the UPSB blog post template.
Author: UPSB
Template: hello-elementor
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,500&family=Manrope:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@400;500;600&family=Noto+Sans+SC:wght@400;500;700&display=swap');






















































































































































































































































































































































































































































  html{scroll-behavior:smooth;}
  body{margin:0;background:#FBF7F0;color:#241F1C;font-family:'Manrope','Noto Sans SC',sans-serif;-webkit-font-smoothing:antialiased;}
  a{color:#B85E14;text-decoration:none;}
  a:hover{color:#8F4A0F;}
  ::selection{background:#FBE0B0;color:#1C1917;}
  image-slot{--is-radius:18px;}
  [data-desktop-nav]{display:flex;}
  [data-mobile-toggle]{display:none;}
  @media (max-width:900px){ [data-desktop-nav]{display:none;} [data-mobile-toggle]{display:inline-flex;} }
  @media (prefers-reduced-motion: reduce){html{scroll-behavior:auto;}}
  .goog-te-banner-frame,.skiptranslate iframe{display:none!important;}
  body{top:0!important;position:static!important;}
  #google_translate_element{display:none;}
  .goog-tooltip,#goog-gt-tt,.goog-te-balloon-frame{display:none!important;}
  font[style]{background:none!important;box-shadow:none!important;}
  [data-lang]{display:inline-flex;align-items:center;background:#F1E8D8;border:1px solid #E4D8C6;border-radius:999px;padding:3px;gap:2px;}
  [data-lang] button{font-family:'Manrope','Noto Sans SC',sans-serif;font-size:13px;font-weight:700;color:#6E6459;background:none;border:none;border-radius:999px;padding:6px 12px;cursor:pointer;line-height:1;transition:background .18s,color .18s;}
  [data-lang] button:hover{color:#B85E14;}
  [data-lang] button[aria-pressed="true"]{background:#ED7D22;color:#fff;box-shadow:0 4px 12px -5px rgba(237,125,34,.8);}
  /* --- ARTICLE BODY: this is the format WordPress content maps into --- */
  .upsb-article{font-size:18px;line-height:1.75;color:#33302C;}
  .upsb-article > *{max-width:720px;margin-left:auto;margin-right:auto;}
  .upsb-article p{margin:0 0 24px;}
  .upsb-article h2{font-family:'Fraunces','Noto Sans SC',serif;font-weight:600;color:#1C1917;font-size:1.72rem;line-height:1.2;margin:48px auto 18px;}
  .upsb-article h3{font-family:'Fraunces','Noto Sans SC',serif;font-weight:600;color:#1C1917;font-size:1.32rem;line-height:1.25;margin:36px auto 14px;}
  .upsb-article ul,.upsb-article ol{margin:0 0 24px;padding-left:26px;}
  .upsb-article li{margin:0 0 10px;}
  .upsb-article a{color:#B85E14;text-decoration:underline;text-underline-offset:3px;}
  .upsb-article strong{color:#1C1917;font-weight:700;}
  .upsb-article blockquote{margin:34px auto;padding:20px 28px;border-left:4px solid #ED7D22;background:#F5EEE1;border-radius:0 16px 16px 0;font-family:'Fraunces','Noto Sans SC',serif;font-size:1.28rem;line-height:1.45;color:#1C1917;font-style:italic;}
  .upsb-article blockquote p{margin:0;}
  .upsb-article img,.upsb-article figure{max-width:100%;border-radius:18px;display:block;margin:32px auto;}
  .upsb-article figure img{margin:0;}
  .upsb-article figcaption{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:#8A7F72;text-align:center;margin-top:10px;}
  .upsb-article hr{border:none;border-top:1px solid #E4D8C6;margin:44px auto;max-width:720px;}


.upsb-logo{max-width:none;object-fit:contain;object-position:left center;}
@media (max-width:900px){ .upsb-logo{height:28px !important;} }
@media (max-width:420px){ .upsb-logo{height:24px !important;} }
.upsb-langfab{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:9999;
  display:flex;align-items:center;font-family:'Manrope','Noto Sans SC',sans-serif;}
.upsb-langfab-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;width:44px;height:52px;border:1px solid #E4D8C6;border-right:none;
  border-radius:14px 0 0 14px;background:#FBF7F0;color:#4A4038;cursor:pointer;
  box-shadow:0 10px 26px -14px rgba(28,25,23,.55);padding:0;}
.upsb-langfab-btn:hover{background:#F1E8D8;color:#B85E14;}
.upsb-langfab-globe{font-size:15px;line-height:1;}
.upsb-langfab-cur{font-size:10px;font-weight:800;line-height:1;}
.upsb-langfab-menu{display:flex;flex-direction:column;gap:2px;overflow:hidden;max-width:0;
  opacity:0;padding:0;border:1px solid transparent;background:#FBF7F0;
  border-radius:14px 0 0 14px;
  transition:max-width .26s cubic-bezier(.16,1,.3,1),opacity .2s,padding .26s;}
.upsb-langfab.is-open .upsb-langfab-menu{max-width:120px;opacity:1;padding:6px;
  border-color:#E4D8C6;border-right:none;}
.upsb-langfab.is-open .upsb-langfab-btn{border-radius:0;}
.upsb-langfab-menu button{font-family:inherit;font-size:12.5px;font-weight:700;color:#6E6459;
  background:none;border:none;border-radius:999px;padding:7px 14px;cursor:pointer;
  line-height:1;white-space:nowrap;}
.upsb-langfab-menu button:hover{color:#B85E14;background:#F1E8D8;}
.upsb-langfab-menu button[aria-pressed="true"]{background:#ED7D22;color:#fff;}
header nav a,[data-mobile-nav] a,[data-dd-panel] a,footer a,[data-dd-btn]{
  transition:color .18s ease,background-color .18s ease;}
header nav a:hover,[data-dd-btn]:hover{color:#B85E14 !important;}
[data-dd-panel] a:hover,[data-mobile-nav] a:hover{color:#B85E14 !important;background:#F7EFE2 !important;}
footer a:hover{color:#B85E14 !important;text-decoration:underline;text-underline-offset:3px;}
header nav a:focus-visible,[data-dd-btn]:focus-visible,footer a:focus-visible{
  outline:2px solid #ED7D22;outline-offset:3px;border-radius:6px;}
a[style*="border-radius:999px"]{transition:filter .18s ease,transform .18s ease;}
a[style*="border-radius:999px"]:hover{filter:brightness(1.06);transform:translateY(-1px);}
@media (prefers-reduced-motion:reduce){ a,button{transition:none !important;transform:none !important;} }



/* Post body inherits the UPSB article format */
.single-post .upsb-article p{margin:0 0 24px;}
.single-post .upsb-article h2{font-family:'Fraunces','Noto Sans SC',Georgia,serif;
  font-weight:600;color:#1C1917;font-size:1.72rem;line-height:1.2;margin:48px 0 18px;}
.single-post .upsb-article h3{font-family:'Fraunces','Noto Sans SC',Georgia,serif;
  font-weight:600;color:#1C1917;font-size:1.32rem;margin:36px 0 14px;}
.single-post .upsb-article strong{color:#1C1917;font-weight:700;}
.single-post .upsb-article a{color:#B85E14;text-decoration:underline;text-underline-offset:3px;}
.single-post .upsb-article a:hover{color:#8F4A0F;}
.single-post .upsb-article blockquote{margin:34px 0;padding:20px 28px;
  border-left:4px solid #ED7D22;background:#F5EEE1;border-radius:0 16px 16px 0;
  font-family:'Fraunces',serif;font-style:italic;font-size:1.28rem;line-height:1.45;}
.single-post .upsb-article blockquote p{margin:0;}
.single-post .upsb-article ul,.single-post .upsb-article ol{margin:0 0 24px;padding-left:26px;}
.single-post .upsb-article li{margin:0 0 10px;}
.single-post .upsb-article hr{border:none;border-top:1px solid #E4D8C6;margin:44px 0;}
.single-post .upsb-article img,.single-post .upsb-article figure{border-radius:18px;
  display:block;margin:32px auto;max-width:100%;height:auto;}
.single-post .upsb-article figcaption{font-family:'IBM Plex Mono',monospace;
  font-size:12.5px;color:#8A7F72;text-align:center;margin-top:10px;}
@media (max-width:640px){ .single-post .upsb-article{font-size:17px;} }
