.obs-wrap{--obs-ink:#152b2c;--obs-accent:#a6c8bd;--obs-paper:#f8f7f2;--obs-muted:#66716e;color:var(--obs-ink);font-family:inherit;width:100%;max-width:100%;overflow:hidden;box-sizing:border-box}.obs-wrap *{box-sizing:border-box}.obs-hero{position:relative;min-height:clamp(380px,65vh,720px);display:flex;align-items:end;background-color:#1c3336;background-image:var(--obs-hero-image,linear-gradient(130deg,#213f40,#456c69));background-size:cover;background-position:center;color:#fff}.obs-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12) 5%,rgba(7,22,23,.76) 100%)}.obs-hero-inner{position:relative;width:min(1200px,calc(100% - 56px));margin:0 auto;padding:100px 0 75px}.obs-kicker{font-size:12px;font-weight:700;letter-spacing:.23em;text-transform:uppercase;color:#d0e2d8}.obs-hero h1{color:#fff!important;font-size:clamp(44px,7vw,100px)!important;line-height:1.03!important;letter-spacing:-.045em;margin:20px 0!important;max-width:1000px;font-weight:750}.obs-hero p{font-size:clamp(16px,1.5vw,20px);max-width:690px;line-height:1.6;color:#f0f4f0;margin:0}.obs-index-body{max-width:1200px;margin:0 auto;padding:82px 28px 110px}.obs-index-heading{margin-bottom:36px}.obs-index-heading>span{font-size:11px;letter-spacing:.2em;font-weight:700;color:#647e74}.obs-index-heading h2{font-size:clamp(28px,4vw,48px);letter-spacing:-.04em;margin:10px 0}.obs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.obs-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 5px 30px rgba(17,37,37,.08);transition:transform .2s,box-shadow .2s}.obs-card:hover{transform:translateY(-5px);box-shadow:0 15px 36px rgba(17,37,37,.14)}.obs-card-link{display:block;color:inherit!important;text-decoration:none!important;height:100%}.obs-card-photo{height:245px;overflow:hidden;background:#25413f}.obs-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.obs-card:hover .obs-card-photo img{transform:scale(1.05)}.obs-photo-fallback{display:grid;place-items:center;height:100%;color:#fff;letter-spacing:.25em}.obs-card-content{padding:25px 25px 28px}.obs-card-date{font-size:11px;color:#66716e;text-transform:uppercase;letter-spacing:.1em}.obs-card h3{font-size:24px;line-height:1.18;letter-spacing:-.025em;margin:12px 0;color:#152b2c}.obs-card p{font-size:15px;line-height:1.7;color:#596663;min-height:50px}.obs-read{display:inline-flex;gap:8px;margin-top:12px;font-size:11px;letter-spacing:.15em;font-weight:750}.obs-pages{display:flex;justify-content:center;gap:10px;margin-top:50px}.obs-pages a{padding:10px 15px;border:1px solid #d5ded9;border-radius:6px;text-decoration:none}.obs-pages a.active{background:#203f3d;color:#fff}.obs-story-hero{min-height:clamp(460px,70vh,780px)}.obs-story-hero h1{font-size:clamp(40px,6.3vw,88px)!important;max-width:1100px}.obs-story-date{font-size:13px!important;letter-spacing:.06em}.obs-article-body{width:min(820px,calc(100% - 44px));margin:0 auto;padding:76px 0 100px}.obs-lead{font-size:clamp(20px,2.1vw,26px);line-height:1.65;color:#3b514c;margin:0 0 65px}.obs-content-section{margin:0 0 60px}.obs-content-section h2{font-size:clamp(28px,3.3vw,42px);letter-spacing:-.035em;line-height:1.16;margin:0 0 22px;color:#163532}.obs-prose p{font-size:18px;line-height:1.9;margin:0 0 22px;color:#374744}.obs-content-section figure{margin:36px 0 0}.obs-inline-photo{width:100%;height:auto;max-height:700px;object-fit:cover;border-radius:10px}.obs-content-section figcaption{font-size:13px;color:#6e7c76;margin-top:11px}.obs-article-footer{border-top:1px solid #e3e9e5;padding-top:30px;margin-top:80px}.obs-article-footer a{color:#204e47;text-decoration:none;font-weight:700}@media(max-width:960px){.obs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.obs-grid{grid-template-columns:1fr}.obs-hero-inner{width:calc(100% - 36px);padding:80px 0 50px}.obs-hero{min-height:430px}.obs-index-body{padding:56px 18px}.obs-card-photo{height:235px}.obs-article-body{padding:50px 0 70px}.obs-prose p{font-size:16px}.obs-content-section{margin-bottom:44px}}

/* v1.1: Full-width layout inside constrained WordPress block themes. */
body:has(.obs-archive) .wp-block-post-content:has(.obs-archive),
body:has(.obs-archive) .entry-content:has(.obs-archive),
body:has(.obs-archive) .is-layout-constrained:has(> .obs-archive){max-width:none!important;width:100%!important;padding-left:0!important;padding-right:0!important}
.obs-wrap.obs-archive{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;overflow:hidden}
.obs-archive .obs-hero{min-height:clamp(410px,68vh,750px)}
.obs-archive .obs-hero-inner{width:min(1280px,calc(100% - 72px))}
.obs-archive .obs-index-body{max-width:1320px;width:100%;padding:72px 44px 110px}
.obs-archive .obs-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.obs-archive .obs-card-photo{height:clamp(210px,19vw,290px)}
.obs-archive .obs-card h3{font-size:clamp(21px,1.6vw,27px)}
/* Remove legacy theme sidebar widgets from traditional blog posts, not other pages. */
body.single-post #secondary,body.single-post aside.widget-area,body.single-post .sidebar-primary,body.single-post .site-sidebar,body.single-post .primary-sidebar{display:none!important}
body.single-post #primary,body.single-post .content-area,body.single-post .site-main{max-width:100%!important;width:100%!important;flex:1 1 100%!important}
@media(max-width:960px){.obs-archive .obs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.obs-archive .obs-index-body{padding:60px 28px 90px}}
@media(max-width:640px){.obs-archive .obs-grid{grid-template-columns:1fr}.obs-archive .obs-index-body{padding:48px 18px 72px}.obs-archive .obs-hero-inner{width:calc(100% - 36px)}}

/* v1.2: accurate full-bleed positioning, independent of theme column alignment. */
.obs-wrap.obs-archive,.obs-wrap.obs-article{position:relative;box-sizing:border-box;max-width:none!important;}
.obs-wrap.obs-archive.obs-bleed-ready,.obs-wrap.obs-article.obs-bleed-ready{margin-right:0!important;transform:none!important;}
html,body{overflow-x:clip}
@media(min-width:961px){.obs-archive .obs-index-body{max-width:1400px!important;width:100%!important;padding-left:48px!important;padding-right:48px!important}}
