/* V83 approved full-width public header */
.soh81-topbar{background:#073c2e;color:#f5fbf7;font-size:12px}
.soh81-topbar .soh81-shell{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.soh81-topbar a{color:#f5fbf7;text-decoration:none}.soh81-contact,.soh81-social-wrap,.soh81-topbar .socials{display:flex;align-items:center;gap:14px}.soh81-topbar .sep{width:1px;height:21px;background:rgba(255,255,255,.65);display:inline-block}.soh81-topbar .socials{gap:13px;font-weight:900}.soh81-topbar .socials a{font-size:14px}.soh81-social-wrap em{font-family:Georgia,'Times New Roman',serif;font-size:12px;white-space:nowrap}
.soh81-shell{width:min(1860px,calc(100% - 46px));margin:0 auto}
.soh81-header{background:linear-gradient(90deg,#064b39,#075e46);color:#fff;box-shadow:0 7px 20px rgba(7,38,29,.13);position:relative;z-index:50;border-bottom:1px solid rgba(255,255,255,.13)}
.soh81-headrow{min-height:104px;display:grid;grid-template-columns:minmax(430px,1.15fr) minmax(560px,1.35fr) minmax(610px,1.25fr);gap:24px;align-items:center}
.soh81-brand{display:flex;align-items:center;gap:17px;color:#fff;text-decoration:none;min-width:0}.soh81-brand img{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.9),0 0 0 5px #dfa816}.soh81-brand strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:25px;line-height:1.1;white-space:nowrap;font-weight:700}.soh81-brand .soh81-soh{color:#e9b723;font-weight:700}.soh81-brand small{display:block;margin-top:5px;color:#f6c638;font-style:italic;font-family:Georgia,'Times New Roman',serif;font-size:18px}
.soh81-nav{display:flex;align-items:center;justify-content:center;gap:27px;min-width:0}.soh81-nav>a,.soh81-more>button{color:#fff;background:none;border:0;text-decoration:none;font-weight:800;font-size:16px;padding:18px 0 14px;white-space:nowrap;cursor:pointer}.soh81-nav>a.active{color:#f3bd26;border-bottom:3px solid #f3bd26}.soh81-more{position:relative}.soh81-more-menu{display:none;position:absolute;top:53px;left:-20px;min-width:230px;background:#fff;border-radius:14px;padding:8px;box-shadow:0 18px 50px rgba(0,0,0,.2);border:1px solid #e6ece8}.soh81-more:hover .soh81-more-menu,.soh81-more:focus-within .soh81-more-menu{display:grid}.soh81-more-menu a{padding:10px 12px;border-radius:9px;color:#173d31;text-decoration:none;font-weight:700;font-size:13px}.soh81-more-menu a:hover{background:#eef6f1}
.soh81-actions{display:grid;grid-template-columns:minmax(285px,1.55fr) minmax(150px,.8fr) minmax(140px,.75fr);gap:18px;align-items:center}.soh81-search{height:60px;border-radius:12px;border:1px solid rgba(255,255,255,.75);background:rgba(0,54,41,.25);display:flex;align-items:center;gap:12px;padding:0 20px;color:#fff;cursor:pointer;min-width:0;font-size:16px}.soh81-search span:first-child{font-size:27px}.soh81-search span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.soh81-action{height:60px;border-radius:11px;background:linear-gradient(#f4c540,#e4a91a);border:1px solid #f8d56a;color:#153528;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:7px;font-weight:900;font-size:16px;white-space:nowrap;padding:0 18px;cursor:pointer;box-shadow:0 8px 18px rgba(0,0,0,.08)}.soh81-action:hover{filter:brightness(1.04);transform:translateY(-1px)}
.soh81-mobile-btn{display:none;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:9px;width:48px;height:48px;font-size:22px}.soh81-mobile-panel{display:none;background:#0b4b3a;padding:14px}.soh81-mobile-panel.open{display:grid;gap:8px}.soh81-mobile-panel a,.soh81-mobile-panel button{display:block;width:100%;padding:12px;border-radius:9px;border:0;text-align:left;background:#fff;color:#173d31;text-decoration:none;font-weight:800}.soh81-mobile-panel .gold{background:#e8b638}
@media(max-width:1650px){.soh81-headrow{grid-template-columns:minmax(360px,1fr) minmax(470px,1.25fr) minmax(535px,1.15fr);gap:16px}.soh81-nav{gap:20px}.soh81-brand strong{font-size:21px}.soh81-brand img{width:64px;height:64px}.soh81-actions{grid-template-columns:minmax(230px,1.45fr) minmax(135px,.8fr) minmax(125px,.72fr);gap:12px}.soh81-action{font-size:14px}.soh81-search{font-size:14px}}
@media(max-width:1280px){.soh81-headrow{grid-template-columns:1fr auto}.soh81-nav,.soh81-actions{display:none}.soh81-mobile-btn{display:block}.soh81-brand strong{font-size:20px}.soh81-topbar .soh81-social-wrap em{display:none}}
@media(max-width:680px){.soh81-shell{width:min(100% - 18px,1860px)}.soh81-topbar .soh81-shell{min-height:38px;font-size:10px}.soh81-topbar .soh81-social-wrap{display:none}.soh81-headrow{min-height:80px}.soh81-brand img{width:48px;height:48px}.soh81-brand strong{font-size:15px;white-space:normal}.soh81-brand small{font-size:12px}}

.soh81-install-modal{position:fixed;inset:0;background:rgba(5,25,19,.64);z-index:99999;display:grid;place-items:center;padding:18px}.soh81-install-card{width:min(470px,100%);background:#fff;border-radius:22px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.25);color:#183b30}.soh81-install-card h2{margin:0 0 8px}.soh81-install-card p{line-height:1.65;color:#5c7168}.soh81-install-card button{border:0;border-radius:10px;background:#0d6047;color:#fff;padding:11px 16px;font-weight:800;cursor:pointer}
.soh81-newsletter{background:#082f25;color:#eef8f3;border-top:1px solid rgba(255,255,255,.08);padding:28px 0}.soh81-newsletter-inner{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(480px,1.6fr);gap:30px;align-items:center}.soh81-newsletter h3{margin:0 0 6px;color:#fff;font-size:22px}.soh81-newsletter p{margin:0;color:#c4d7cf;line-height:1.55}.soh81-newsletter-form{display:grid;grid-template-columns:160px minmax(180px,1fr) minmax(180px,1fr) auto;gap:10px;align-items:center}.soh81-newsletter input,.soh81-newsletter select{height:44px;border:1px solid #d5e2dc;border-radius:9px;background:#fff;color:#173a2e;padding:0 12px;min-width:0}.soh81-newsletter button{height:44px;border:0;border-radius:9px;background:#e8b638;color:#173427;font-weight:900;padding:0 18px;cursor:pointer}.soh81-newsletter-msg{grid-column:1/-1;font-size:13px;min-height:18px;color:#f4d67c}.soh81-newsletter-note{grid-column:1/-1;font-size:12px;color:#aac3b8}
@media(max-width:1180px){.soh81-newsletter-inner{grid-template-columns:1fr}.soh81-newsletter-form{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.soh81-newsletter-form{grid-template-columns:1fr}.soh81-newsletter-msg,.soh81-newsletter-note{grid-column:1}.soh81-newsletter{padding:22px 0}}
/* V81.3: legacy-header fail-safe. The unified V81 header is the only public navigation header. */
body > .v63-header,body > .v67-header,body > .v67-topbar,body > .v63-topbar,body > .soh-topbar,body > .topbar{display:none!important}
body > .soh81-header,body > .soh81-topbar{display:block!important}

/* V91 mobile/PWA app experience */
@media(max-width:1280px){
  .soh81-mobile-panel{padding:12px 14px 18px;background:linear-gradient(180deg,#0a513f,#074535);border-top:1px solid rgba(255,255,255,.08);box-shadow:0 18px 36px rgba(0,0,0,.15)}
  .soh81-mobile-panel.open{display:block}
  .soh81-mobile-primary{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .soh81-mobile-panel .soh81-mobile-primary>a,.soh81-mobile-panel .soh81-mobile-primary>button{min-height:50px;padding:12px 14px;border-radius:13px;background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.16);font-size:14px;display:flex;align-items:center}
  .soh81-mobile-more-toggle{margin-top:10px!important;background:rgba(255,255,255,.12)!important;color:#fff!important;border:1px solid rgba(255,255,255,.2)!important;display:flex!important;align-items:center;justify-content:space-between!important;font-size:14px}
  .soh81-mobile-more-list{display:none;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}
  .soh81-mobile-more-list.open{display:grid}
  .soh81-mobile-more-list a{min-height:50px;display:flex!important;align-items:center}
  .soh81-mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}
  .soh81-mobile-actions .gold{min-height:52px;display:flex!important;align-items:center;justify-content:center!important;text-align:center!important}
}
@media(max-width:680px){
  .soh81-topbar{display:none!important}
  .soh81-header{position:sticky;top:0;z-index:850}
  .soh81-headrow{min-height:72px;padding:8px 0}
  .soh81-brand{gap:11px}
  .soh81-brand img{width:50px;height:50px}
  .soh81-brand strong{font-size:15px;line-height:1.15}
  .soh81-brand small{font-size:12px;margin-top:2px}
  .soh81-mobile-btn{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.07)}
  .soh81-mobile-panel{position:fixed;inset:72px 0 0;z-index:840;overflow:auto;padding:14px 16px calc(26px + env(safe-area-inset-bottom));transform:translateY(-8px);opacity:0;pointer-events:none;transition:.2s ease}
  .soh81-mobile-panel.open{display:block;transform:none;opacity:1;pointer-events:auto}
  .soh81-mobile-primary,.soh81-mobile-more-list{grid-template-columns:1fr}
  .soh81-mobile-panel .soh81-mobile-primary>a,.soh81-mobile-panel .soh81-mobile-primary>button,.soh81-mobile-more-list a{min-height:54px;border-radius:14px;padding:13px 16px;font-size:15px}
  .soh81-mobile-more-toggle{min-height:54px!important;border-radius:14px!important;padding:13px 16px!important}
  .soh81-mobile-actions{grid-template-columns:1fr}
  body.soh81-menu-open{overflow:hidden}
}

/* Installed PWA: compact app header + bottom tabs. */
@media (display-mode: standalone){
  html{background:#f7faf8}
  body.soh-app-mode{padding-bottom:calc(76px + env(safe-area-inset-bottom));overscroll-behavior-y:none}
  body.soh-app-mode .soh81-topbar{display:none!important}
  body.soh-app-mode .soh81-header{position:sticky;top:0;z-index:850;box-shadow:0 3px 16px rgba(4,38,29,.12)}
  body.soh-app-mode .soh81-headrow{min-height:68px}
  body.soh-app-mode .soh81-brand img{width:45px;height:45px;box-shadow:0 0 0 2px #fff,0 0 0 3px #dfa816}
  body.soh-app-mode .soh81-brand strong{font-size:14px}
  body.soh-app-mode .soh81-brand small{font-size:11px}
  body.soh-app-mode .soh81-mobile-btn{width:43px;height:43px}
  body.soh-app-mode .soh81-newsletter{margin-bottom:0}
  body.soh-app-mode .soh-chat-button{bottom:calc(86px + env(safe-area-inset-bottom))!important}
}
.soh-app-bottom-nav{display:none}
@media (display-mode: standalone){
  .soh-app-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:990;display:grid;grid-template-columns:repeat(4,1fr);min-height:68px;padding:6px 10px calc(6px + env(safe-area-inset-bottom));background:rgba(255,255,255,.98);border-top:1px solid #dbe7e1;box-shadow:0 -8px 28px rgba(6,48,36,.12);backdrop-filter:blur(14px)}
  .soh-app-bottom-nav a,.soh-app-bottom-nav button{border:0;background:transparent;color:#5e7169;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:11px;font-weight:800;border-radius:12px;min-width:0}
  .soh-app-bottom-nav span{font-size:22px;line-height:1}.soh-app-bottom-nav b{font-size:10px;white-space:nowrap}
  .soh-app-bottom-nav .active{color:#086247;background:#eef7f3}
}
.soh-app-sheet[hidden]{display:none!important}.soh-app-sheet{position:fixed;inset:0;z-index:1200;display:grid;align-items:end}.soh-app-sheet-backdrop{position:absolute;inset:0;border:0;background:rgba(3,25,19,.54);opacity:0;transition:.2s}.soh-app-sheet-card{position:relative;background:#fff;border-radius:26px 26px 0 0;padding:8px 18px calc(22px + env(safe-area-inset-bottom));transform:translateY(100%);transition:.24s ease;max-height:min(82vh,760px);overflow:auto;box-shadow:0 -20px 60px rgba(0,0,0,.2)}.soh-app-sheet.open .soh-app-sheet-backdrop{opacity:1}.soh-app-sheet.open .soh-app-sheet-card{transform:none}.soh-app-sheet-handle{width:44px;height:5px;border-radius:999px;background:#d5ded9;margin:4px auto 12px}.soh-app-sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.soh-app-sheet-head small{font-size:10px;color:#7a8b84;font-weight:900;letter-spacing:.08em}.soh-app-sheet-head h2{margin:2px 0 0;color:#073f31;font-size:25px}.soh-app-sheet-head button{border:0;background:#eef5f2;color:#173f32;width:40px;height:40px;border-radius:50%;font-size:24px}.soh-app-sheet-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.soh-app-sheet-grid a{border:1px solid #e0e8e4;background:#f9fbfa;border-radius:17px;padding:14px;text-decoration:none;color:#173d31;min-height:105px;display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto;align-content:center;column-gap:10px}.soh-app-sheet-grid a>span{grid-row:1/3;width:36px;height:36px;border-radius:12px;background:#eaf5f0;color:#075b43;display:grid;place-items:center;font-size:19px}.soh-app-sheet-grid b{font-size:13px;align-self:end}.soh-app-sheet-grid small{font-size:10px;color:#73827c;line-height:1.35}.soh-app-sheet-search{width:100%;min-height:50px;margin-top:12px;border:0;border-radius:15px;background:#073f31;color:#fff;font-weight:900;font-size:14px}.soh-app-sheet-open{overflow:hidden}
@media(max-width:420px){.soh-app-sheet-grid{grid-template-columns:1fr 1fr}.soh-app-sheet-grid a{padding:11px;min-height:96px;grid-template-columns:30px 1fr;column-gap:8px}.soh-app-sheet-grid a>span{width:30px;height:30px;font-size:16px}.soh-app-sheet-grid b{font-size:12px}}

/* Branded in-app launch screen: Android's native splash still comes first, this makes the app opening visually match the requested design. */
.soh-app-launch{position:fixed;inset:0;z-index:200000;background:#f7faf8;display:grid;place-items:center;opacity:1;transition:opacity .28s ease}.soh-app-launch.out{opacity:0;pointer-events:none}.soh-app-launch-mark{position:relative;width:min(52vw,250px);aspect-ratio:1;display:grid;place-items:center}.soh-app-launch-brush{position:absolute;width:145%;height:72%;left:-22%;top:14%;opacity:.16;filter:blur(.2px)}.soh-app-launch-brush:before,.soh-app-launch-brush:after{content:"";position:absolute;inset:20% 4%;border:18px solid #ffffff;border-radius:49% 41% 47% 39%;transform:rotate(7deg);box-shadow:12px 18px 0 -7px #fff,-14px -15px 0 -8px #fff}.soh-app-launch-brush:after{inset:8% 13% 26%;transform:rotate(-11deg);border-width:12px;opacity:.8}.soh-app-launch img{position:relative;width:68%;height:68%;object-fit:contain;border-radius:50%;filter:drop-shadow(0 5px 12px rgba(7,63,49,.08))}
