/*
Theme Name: Laboratory Clarity
Author: Geeks of Cybernet
Description: An image-rich peptide laboratory website with accessible layouts, editable block content and the companion Laboratory Website SEO plugin.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 8.1
License: GPL-2.0-or-later
Text Domain: laboratory-clarity
*/
:root{--ink:#102d39;--ink-soft:#46616b;--navy:#0c2935;--teal:#087a70;--mint:#e8f4f0;--paper:#f7faf9;--line:#dbe6e3;--white:#fff;--max:1240px;--radius:5px;--shadow:0 20px 60px #0c293512;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--white);font-size:16px;line-height:1.65;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}img{max-width:100%;height:auto;display:block}a{color:var(--teal);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #a25d00;outline-offset:4px}button{cursor:pointer}p{margin:0 0 1.2em}h1,h2,h3,h4{line-height:1.12;letter-spacing:-.045em;margin:0 0 .6em;font-weight:600;color:var(--ink)}h1{font-size:clamp(2.55rem,4.5vw,4.5rem)}h2{font-size:clamp(2rem,3vw,3.15rem)}h3{font-size:1.5rem;letter-spacing:-.025em}ul,ol{padding-left:1.25rem}figure{margin:0}.wrap{width:min(var(--max),calc(100% - 80px));margin-inline:auto}.accent{color:var(--teal)}.eyebrow{font-size:.7rem;font-weight:750;letter-spacing:.18em;color:var(--teal);text-transform:uppercase;margin:0 0 22px}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--teal);color:var(--white);border:1px solid var(--teal);border-radius:3px;padding:15px 24px;text-decoration:none;font-size:.9rem;font-weight:650;line-height:1.4;transition:background .2s,transform .2s}.button:hover,.wp-block-button__link:hover{background:#075e57;color:white;transform:translateY(-1px)}.button-outline{background:transparent;color:var(--ink);border-color:#9badad}.button-outline:hover{background:var(--mint);color:var(--ink)}.button-small{padding:12px 18px;font-size:.8rem;gap:15px}.text-link{display:inline-flex;align-items:center;gap:22px;font-weight:650;font-size:.9rem;text-decoration:none;border-bottom:1px solid #087a7045;padding-bottom:3px}.text-link:hover{border-color:var(--teal)}.skip-link,.screen-reader-text{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:16px;top:12px;width:auto;height:auto;z-index:1000;background:white;padding:12px}.utility-bar{background:var(--navy);color:#d9e7e9;font-size:.63rem;font-weight:600;letter-spacing:.1em}.utility-bar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:33px;gap:16px}.utility-bar a{color:#f4ffff;text-decoration:none;letter-spacing:.025em;font-size:.7rem}.site-header{background:#fffffffa;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line)}.admin-bar .site-header{top:32px}.header-inner{height:89px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;line-height:1}.brand strong{display:block;letter-spacing:.04em;font-size:1.02rem;font-weight:700;max-width:260px}.brand small{display:block;font-size:.54rem;letter-spacing:.24em;margin-top:9px;color:var(--ink-soft)}.brand-symbol{display:grid;grid-template-columns:repeat(3,6px);gap:3px;align-items:center;height:33px;transform:skew(-12deg)}.brand-symbol i{display:block;background:var(--teal);height:23px;border-radius:1px}.brand-symbol i:nth-child(2){height:33px}.brand-symbol i:nth-child(3){height:17px}.custom-logo{max-height:55px;width:auto;max-width:250px}.site-nav{display:flex;align-items:center;gap:25px}.site-nav ul{display:flex;align-items:center;list-style:none;gap:24px;margin:0;padding:0}.site-nav li{position:relative}.site-nav .menu a{font-size:.81rem;font-weight:550;color:var(--ink);text-decoration:none;white-space:nowrap}.site-nav .menu a:hover,.site-nav [aria-current=page]{color:var(--teal)}.site-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:200px;padding:15px;background:white;box-shadow:var(--shadow);border:1px solid var(--line)}.site-nav li:hover>.sub-menu,.site-nav li:focus-within>.sub-menu{display:grid;gap:12px}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:9px 12px;border-radius:3px;color:var(--ink);gap:10px}.hero{background:linear-gradient(115deg,#f5faf8,#fff);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:55px;align-items:center}.hero-home .hero-grid{padding-block:55px 65px;min-height:640px}.hero-copy{padding-block:28px}.hero-intro{max-width:530px;color:var(--ink-soft);font-size:1.02rem;line-height:1.85;margin-top:25px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.hero-notes{display:flex;flex-wrap:wrap;gap:24px;border-top:1px solid var(--line);padding-top:24px;max-width:490px;font-size:.71rem;color:var(--ink-soft)}.hero-notes span:before{content:'✓';margin-right:8px;color:var(--teal);font-weight:700}.hero-visual{position:relative;align-self:stretch;min-height:440px}.hero-visual>img{height:100%;width:100%;object-fit:cover;object-position:60% center;border-radius:5px}.hero-visual:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#082a3966);pointer-events:none;border-radius:5px}.hero-visual figcaption{position:absolute;bottom:10px;right:14px;color:white;font-size:.55rem;z-index:2;letter-spacing:.02em;text-shadow:0 1px 5px #000}.image-label{position:absolute;bottom:44px;left:-28px;background:white;padding:20px 27px;display:flex;align-items:center;gap:19px;box-shadow:var(--shadow);z-index:2;font-size:.64rem;line-height:1.8;letter-spacing:.12em}.image-label strong{font-size:.84rem;letter-spacing:.04em}.status-dot{height:11px;width:11px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 8px var(--mint)}.breadcrumbs{display:flex;align-items:center;gap:12px;font-size:.72rem;padding-block:20px;color:var(--ink-soft);flex-wrap:wrap}.breadcrumbs a{color:var(--ink-soft);text-decoration:none}.hero-inner .hero-grid{padding-block:30px 60px;min-height:460px}.hero-inner h1{font-size:clamp(2.45rem,3.7vw,3.75rem)}.hero-inner .hero-visual{min-height:340px;max-height:460px}.hero-inner .hero-visual>img{object-position:center}.hero-inner .hero-copy{padding-block:10px}.lwm-section{padding:85px 0;margin:0}.lwm-section-inner{width:min(var(--max),calc(100% - 80px));margin-inline:auto}.section-heading{max-width:750px;margin-bottom:36px}.section-heading>p:not(.eyebrow){max-width:650px;color:var(--ink-soft)}.section-heading h2{margin-bottom:20px}.lwm-section:nth-of-type(even){background:var(--paper)}.lwm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.lwm-grid:has(>.lwm-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.lwm-grid:has(>.lwm-card:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.lwm-card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .2s}.lwm-card:hover{box-shadow:var(--shadow)}.lwm-card figure{margin:0}.lwm-card img{aspect-ratio:1.58;object-fit:cover;width:100%}.card-body{padding:28px}.lwm-card h2,.lwm-card h3{font-size:1.35rem;letter-spacing:-.02em;line-height:1.25}.lwm-card h2 a,.lwm-card h3 a{color:var(--ink);text-decoration:none}.lwm-card p{font-size:.9rem;color:var(--ink-soft)}.lwm-card .eyebrow{font-size:.65rem}.lwm-card .text-link{font-size:.8rem}.lwm-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:40px}.lwm-step{border-top:1px solid #abbeb6;padding-top:24px}.step-number{font-size:.83rem;font-weight:700;color:var(--teal);margin:0 0 28px}.lwm-step h3{font-size:1.25rem}.lwm-step p{font-size:.9rem;color:var(--ink-soft)}.lwm-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.lwm-split figure img{width:100%;min-height:380px;max-height:500px;object-fit:cover;border-radius:var(--radius)}.lwm-split .section-heading{margin-bottom:0}.lwm-split .eyebrow{margin-bottom:22px}.lwm-bullets{list-style:none;padding:0;margin:25px 0 30px}.lwm-bullets li{border-bottom:1px solid var(--line);padding:11px 0 11px 25px;position:relative;font-size:.9rem}.lwm-bullets li:before{content:'↗';position:absolute;left:0;color:var(--teal)}.lwm-section.is-navy{background:var(--navy);color:#d9e7e9}.is-navy h2,.is-navy h3{color:white}.is-navy .eyebrow{color:#81d1c0}.is-navy .section-heading>p:not(.eyebrow){color:#c2d4d9}.is-navy .lwm-bullets li{border-color:#ffffff24}.is-navy .lwm-bullets li:before,.is-navy .text-link{color:#98dfcf}.lwm-faq{max-width:900px;margin-inline:auto}.lwm-faq .section-heading{margin-bottom:25px}.lwm-faq details{border-bottom:1px solid var(--line);padding:20px 0}.lwm-faq summary{cursor:pointer;font-size:1.05rem;font-weight:600;list-style:none;padding-right:38px;position:relative;line-height:1.55}.lwm-faq summary::-webkit-details-marker{display:none}.lwm-faq summary:after{content:'+';position:absolute;right:5px;font-size:1.3rem;color:var(--teal);top:-3px}.lwm-faq details[open] summary:after{content:'−'}.lwm-faq details p{max-width:790px;color:var(--ink-soft);margin:16px 0 4px;font-size:.95rem}.lwm-cta{background:var(--mint);padding:65px 0}.lwm-cta .lwm-section-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.lwm-cta h2{font-size:2.5rem;margin-bottom:12px}.lwm-cta p{color:var(--ink-soft);margin:0}.lwm-lookup{background:white;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0}.lwm-lookup .lwm-section-inner{display:grid;grid-template-columns:1fr 1.7fr;gap:50px;align-items:center}.lwm-lookup h2{font-size:1.35rem;letter-spacing:-.025em;margin:0 0 7px}.lwm-lookup p{font-size:.8rem;color:var(--ink-soft);margin:0}.lookup-row{display:flex;gap:10px}.lookup-row input{flex:1;min-width:0}.lookup-form label{display:block;font-size:.7rem;font-weight:650;margin-bottom:7px}.lookup-form .help{font-size:.68rem;margin-top:8px}.lwm-lookup .connection-note{font-size:.72rem;margin-top:9px}.lwm-inquiry{padding:55px 0 75px}.lwm-inquiry-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:65px}.lwm-inquiry-form{background:var(--paper);border:1px solid var(--line);border-radius:5px;padding:35px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-field{margin-bottom:22px}.form-field label{display:block;font-weight:600;font-size:.85rem;margin-bottom:8px}.form-field input,.form-field textarea,.form-field select,.lookup-row input,.search-form input{width:100%;border:1px solid #acbfba;border-radius:3px;padding:12px 14px;background:white;color:var(--ink);font-size:.93rem}.form-field textarea{min-height:155px;resize:vertical}.consent-label{font-size:.8rem;color:var(--ink-soft);display:flex;align-items:flex-start;gap:10px}.consent-label input{margin-top:6px}.form-note{font-size:.76rem;color:var(--ink-soft)}.form-aside{padding-top:12px}.form-aside h2{font-size:1.8rem}.form-aside p{font-size:.92rem;color:var(--ink-soft)}.form-aside .aside-box{border-top:1px solid var(--line);margin-top:25px;padding-top:25px}.lwm-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.notice-box{background:#fff8e8;border-left:3px solid #9d660f;padding:15px 20px;margin-bottom:25px;font-size:.88rem}.portal-panel{padding:45px;background:var(--paper);border:1px solid var(--line);border-radius:5px;margin-block:35px}.portal-panel h2{font-size:1.8rem}.site-footer{background:var(--navy);color:#c0d3d9;padding:65px 0 24px}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:45px}.site-footer .brand{color:white}.site-footer .brand small{color:#9db8c0}.site-footer .brand-symbol i{background:#83d3c1}.footer-brand>p{margin:25px 0 15px;font-size:.83rem}.site-footer h2{font-size:.85rem;color:white;letter-spacing:0;margin-bottom:21px}.footer-top>div:not(.footer-brand)>a{display:block;text-decoration:none;color:#c0d3d9;font-size:.79rem;margin-bottom:12px}.footer-brand>a:not(.brand){color:#c0d3d9;font-size:.83rem}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff25;margin-top:45px;padding-top:24px;font-size:.71rem}.footer-bottom p{margin:0}.footer-bottom a{color:#c0d3d9;text-decoration:none;margin-left:20px}.footer-disclaimer{font-size:.64rem;color:#a3bbc3;margin-top:18px;line-height:1.7;max-width:var(--max)}.article-content .lwm-section{padding:45px 0;background:white}.article-content .lwm-section-inner{max-width:820px}.article-content .section-heading{max-width:none;margin:0}.article-content .section-heading h2{font-size:2rem}.article-content .section-heading>p:not(.eyebrow){max-width:none;font-size:1.06rem;line-height:1.9}.article-meta{font-size:.76rem;color:var(--ink-soft)}.article-pagination{display:flex;justify-content:space-between;gap:25px;margin-block:45px 65px;font-size:.85rem}.archive-main{padding-block:65px 85px;min-height:65vh}.archive-main>h1{margin-bottom:35px}.archive-main .lwm-grid{margin-top:30px}.archive-main nav.pagination{margin-top:35px}.search-form{display:flex;gap:10px;max-width:650px;margin:30px 0}.search-form label{flex:1}.error-main{padding-block:90px;min-height:70vh}.error-main>p:not(.eyebrow){color:var(--ink-soft)}.setup-message{padding-block:100px}.entry-content>p,.entry-content>h2,.entry-content>h3,.entry-content>ul{width:min(820px,calc(100% - 60px));margin-inline:auto}.entry-content>p:first-child{margin-top:40px}.entry-content>p:last-child{margin-bottom:50px}.wp-block-buttons{display:flex;gap:12px;flex-wrap:wrap}.wp-block-image img{vertical-align:bottom}.wp-block-details p{margin-top:15px}.editor-styles-wrapper .lwm-section{padding:35px 0}.editor-styles-wrapper .lwm-section-inner{width:100%;padding:15px}.editor-styles-wrapper h1{font-size:2.5rem}
@media(min-width:1450px){.hero-home h1{font-size:4.6rem}.hero-home .hero-visual{min-height:530px}}
@media(max-width:1150px){.wrap,.lwm-section-inner{width:calc(100% - 50px)}.site-nav{gap:15px}.site-nav ul{gap:16px}.hero-grid{gap:35px}.hero-home h1{font-size:3.5rem}.lwm-split{gap:40px}.header-inner{gap:15px}.brand strong{max-width:205px}}
@media(max-width:1050px){.menu-toggle{display:flex}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:25px;border-bottom:1px solid var(--line);box-shadow:var(--shadow);align-items:stretch}.site-nav.nav-open{display:flex;flex-direction:column}.site-nav ul{display:flex;align-items:stretch;flex-direction:column;gap:0}.site-nav .menu a{display:block;padding:12px;font-size:1rem}.site-nav .sub-menu{display:block;position:static;padding:0 0 0 18px;box-shadow:none;border:0}.site-nav .button{align-self:flex-start}.hero-home h1{font-size:3.1rem}.hero-grid{gap:30px}.hero-visual{min-height:450px}.lwm-steps{grid-template-columns:1fr 1fr;gap:30px}.lwm-grid{gap:18px}.card-body{padding:22px}.footer-top{gap:25px}.lwm-inquiry-grid{gap:30px}.lwm-inquiry-form{padding:25px}}
@media(max-width:760px){.wrap,.lwm-section-inner{width:calc(100% - 36px)}.utility-bar .wrap{min-height:31px}.utility-bar span:first-child{font-size:.51rem;letter-spacing:.03em}.utility-bar a{font-size:.65rem}.header-inner{height:73px}.brand strong{font-size:.93rem;max-width:250px}.hero-grid{grid-template-columns:1fr;gap:24px}.hero-home .hero-grid{padding-block:26px 36px;min-height:0}.hero-copy{padding-block:8px}.hero-home h1{font-size:clamp(2.6rem,9.7vw,3.9rem);max-width:620px}.hero-intro{font-size:.98rem;line-height:1.8;margin-top:20px}.hero-actions{margin:24px 0}.hero-notes{padding-top:20px;font-size:.68rem}.hero-visual{min-height:330px;aspect-ratio:1.35}.hero-visual>img{height:100%;object-position:center}.image-label{left:16px;bottom:28px;padding:14px 20px}.hero-visual figcaption{font-size:.48rem;bottom:7px}.hero-inner .hero-grid{padding-block:15px 35px}.hero-inner h1{font-size:2.65rem}.hero-inner .hero-visual{min-height:260px;max-height:320px;aspect-ratio:1.5}.hero-inner .hero-intro{margin-bottom:0}.eyebrow{font-size:.64rem;margin-bottom:17px}.lwm-section{padding:52px 0}.section-heading{margin-bottom:26px}.section-heading h2{font-size:2.1rem}.lwm-grid,.lwm-grid:has(>.lwm-card:nth-child(2):last-child),.lwm-grid:has(>.lwm-card:nth-child(4):last-child){grid-template-columns:1fr}.lwm-card img{aspect-ratio:1.7}.lwm-card h3{font-size:1.45rem}.card-body{padding:24px}.lwm-split{grid-template-columns:1fr;gap:30px}.lwm-split figure img{min-height:260px;max-height:360px}.lwm-steps{gap:25px}.step-number{margin-bottom:17px}.lwm-step h3{font-size:1.15rem}.lwm-step p{font-size:.85rem}.lwm-cta .lwm-section-inner{display:block}.lwm-cta h2{font-size:2.1rem}.lwm-cta .button{margin-top:24px}.lwm-cta{padding:45px 0}.lwm-faq summary{font-size:.98rem}.lwm-lookup .lwm-section-inner{grid-template-columns:1fr;gap:18px}.lwm-lookup{padding:27px 0}.lwm-inquiry-grid{grid-template-columns:1fr}.lwm-inquiry-form{padding:22px}.form-grid{grid-template-columns:1fr;gap:0}.footer-top{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-brand{grid-column:1/-1;max-width:400px}.footer-top>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:12px}.footer-bottom a{margin-left:0;margin-right:20px}.site-footer{padding-top:45px}.footer-disclaimer{margin-top:15px;font-size:.62rem}.article-content .lwm-section{padding:32px 0}.article-content .section-heading h2{font-size:1.8rem}.article-content .section-heading>p:not(.eyebrow){font-size:1rem}.article-pagination{flex-direction:column}.portal-panel{padding:25px}.breadcrumbs{font-size:.65rem;padding-block:14px}.admin-bar .site-header{top:46px}}
@media(max-width:420px){.lookup-row{flex-direction:column}.lookup-row .button{align-self:flex-start}.hero-actions .button{font-size:.8rem;padding:13px 17px;gap:15px}.hero-notes{gap:14px}.brand strong{max-width:205px}.lwm-steps{grid-template-columns:1fr}.lwm-step{padding-top:18px}.utility-bar .wrap>span{max-width:245px}.hero-home h1{font-size:2.55rem}.footer-top{column-gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.utility-bar,.site-header,.site-footer,.hero-actions,.lwm-lookup,.lwm-inquiry,.lwm-cta{display:none}.hero{background:white}.hero-grid{display:block}.hero-visual{max-height:250px;margin-block:20px}.lwm-section{padding:20px 0}.lwm-split{display:block}.wrap,.lwm-section-inner{width:100%}.lwm-card{break-inside:avoid}.is-navy{background:white!important;color:black!important}.is-navy h2,.is-navy p{color:black!important}}

@media(max-width:760px){.lwm-cta .wp-block-buttons{margin-top:24px}}
