/* LiteCore 1.5 public extension components. Loaded by every first-party theme. */
:root{--lc-ui-ink:#142b31;--lc-ui-muted:#5f7074;--lc-ui-line:#d7dedb;--lc-ui-surface:#fff;--lc-ui-soft:#f3f7f5;--lc-ui-accent:#14786f;--lc-ui-accent-dark:#0b5751;--lc-ui-focus:rgba(20,120,111,.2)}
.lc-image-fallback{display:grid;width:100%;height:100%;min-height:inherit;place-items:center;padding:20px;background:linear-gradient(145deg,#e7eeeb,#f5f7f4);color:var(--lc-ui-muted);font:800 .78rem/1.4 var(--font-body,Inter,ui-sans-serif,system-ui,sans-serif);letter-spacing:.04em;text-align:center}.has-image-error{display:grid!important;place-items:center;overflow:hidden}.has-image-error>.lc-image-fallback{grid-area:1/1}
.lc-form,.lc-popup,.lc-newsletter,.lc-inquiry-badge{box-sizing:border-box;font-family:var(--font-body,Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif)}
.lc-form *,.lc-popup *,.lc-newsletter *,.lc-inquiry-badge *{box-sizing:border-box}
.lc-form{color:var(--lc-ui-ink)}
.lc-form-contact{width:min(calc(100% - 32px),960px);margin:clamp(32px,6vw,76px) auto;padding:clamp(26px,5vw,58px);border:1px solid var(--lc-ui-line);border-radius:4px;background:linear-gradient(145deg,#fff 0%,#f5faf8 100%);box-shadow:0 24px 70px rgba(14,39,44,.09)}
.lc-form-heading{max-width:680px}.lc-form-heading h2{margin:0 0 10px;font-family:var(--font-display,Georgia,serif);font-size:clamp(2rem,4vw,3.2rem);font-weight:650;line-height:1.05;letter-spacing:-.035em}.lc-form-heading p{margin:0 0 30px;color:var(--lc-ui-muted);font-size:1rem;line-height:1.7}
.lc-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.lc-form-field{display:grid;gap:8px}.lc-form-field.is-wide{grid-column:1/-1}.lc-form-field label{font-size:.82rem;font-weight:800;letter-spacing:.02em}.lc-form input,.lc-form textarea,.lc-form select{width:100%;min-height:52px;padding:12px 14px;border:1px solid #b8c5c1;border-radius:3px;background:#fff;color:var(--lc-ui-ink);font:inherit}.lc-form textarea{min-height:144px;resize:vertical}.lc-form input:focus,.lc-form textarea:focus,.lc-form select:focus{outline:3px solid var(--lc-ui-focus);outline-offset:1px;border-color:var(--lc-ui-accent)}.lc-form-check{display:flex!important;min-height:46px;align-items:center;gap:10px}.lc-form-check input{width:20px;height:20px;min-height:0}.lc-form-submit{min-height:52px;margin-top:22px;padding:13px 25px;border:0;border-radius:3px;background:var(--lc-ui-accent);color:#fff;font:800 .95rem/1.2 inherit;cursor:pointer;box-shadow:0 10px 24px rgba(20,120,111,.2)}.lc-form-submit:hover{background:var(--lc-ui-accent-dark);transform:translateY(-1px)}
.lc-form-notice{margin-bottom:20px;padding:14px 16px;border-left:4px solid;border-radius:2px}.lc-form-notice.is-success{border-color:#20834f;background:#eaf8f0}.lc-form-notice.is-error{border-color:#b42318;background:#fff1f0}.lc-form-trap,.lc-newsletter-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.lc-form-floating{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:1100}.lc-form-toggle{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.lc-form-launcher{display:flex;min-width:200px;min-height:58px;align-items:center;gap:11px;padding:10px 18px;border:1px solid rgba(255,255,255,.22);border-radius:4px;background:linear-gradient(135deg,#142b31,#14786f);color:#fff;box-shadow:0 14px 42px rgba(10,35,40,.3);cursor:pointer;user-select:none}.lc-form-launcher>span:first-child{display:grid;width:36px;height:36px;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:3px}.lc-form-launcher>span:last-child{display:flex;flex-direction:column}.lc-form-launcher strong{font-size:.92rem}.lc-form-launcher small{color:#c6e7df;font-size:.66rem}.lc-form-toggle:focus-visible+.lc-form-launcher{outline:3px solid rgba(20,120,111,.28);outline-offset:4px}.lc-form-toggle:not(:checked)~.lc-form-panel{display:none}.lc-form-panel{position:absolute;right:0;bottom:calc(100% + 14px);width:min(450px,calc(100vw - 24px));max-height:min(78vh,720px);overflow:auto;padding:32px;border:1px solid var(--lc-ui-line);border-radius:4px;background:#fff;color:var(--lc-ui-ink);box-shadow:0 28px 90px rgba(9,34,39,.3)}.lc-form-close{position:absolute;right:12px;top:12px;z-index:2;display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--lc-ui-line);border-radius:3px;background:#fff;color:var(--lc-ui-ink);font:400 1.45rem/1 sans-serif;cursor:pointer}.lc-form-floating .lc-form-heading{padding-right:34px}.lc-form-floating .lc-form-heading h2{font-size:1.8rem}.lc-form-floating .lc-form-fields{grid-template-columns:1fr;gap:14px}.lc-form-floating .lc-form-field.is-wide{grid-column:auto}.lc-form-floating .lc-form-submit{width:100%}
.lc-popup[hidden]{display:none!important}.lc-popup{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.lc-popup-backdrop{position:absolute;inset:0;background:rgba(5,22,27,.78);backdrop-filter:blur(6px)}.lc-popup-dialog{position:relative;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);width:min(860px,100%);max-height:min(88vh,780px);overflow:auto;border:1px solid rgba(255,255,255,.14);border-radius:4px;background:#fff;color:var(--lc-ui-ink);box-shadow:0 35px 110px rgba(0,0,0,.45)}.lc-popup-dialog:focus{outline:3px solid rgba(100,211,193,.5)}.lc-popup-art{position:relative;display:flex;min-height:440px;flex-direction:column;justify-content:space-between;padding:40px 32px;overflow:hidden;background:linear-gradient(150deg,#122b31,#14786f);color:#fff}.lc-popup-art:before,.lc-popup-art:after{position:absolute;width:220px;height:220px;border:1px solid rgba(255,255,255,.18);content:"";transform:rotate(35deg)}.lc-popup-art:before{right:-100px;top:-85px}.lc-popup-art:after{left:-130px;bottom:-110px}.lc-popup-art span,.lc-popup-art strong,.lc-popup-art i{position:relative}.lc-popup-art span{font-size:.66rem;font-weight:900;letter-spacing:.2em}.lc-popup-art strong{max-width:220px;font:650 2.1rem/1.12 var(--font-display,Georgia,serif)}.lc-popup-art i{width:46px;height:3px;background:#e5be5b}.lc-popup-body{padding:clamp(34px,6vw,64px)}.lc-popup-eyebrow{margin:0 0 15px;color:var(--lc-ui-accent);font-size:.7rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.lc-popup-dialog h2{margin:0 42px 18px 0;font:650 clamp(2rem,4vw,3.15rem)/1.05 var(--font-display,Georgia,serif);letter-spacing:-.035em}.lc-popup-content{color:#42585b;font-size:1rem;line-height:1.7;overflow-wrap:anywhere}.lc-popup-content img{max-width:100%;height:auto}.lc-popup-content a{display:inline-flex;min-height:48px;align-items:center;margin:9px 8px 0 0;padding:10px 18px;border-radius:3px;background:var(--lc-ui-accent);color:#fff!important;font-weight:800;text-decoration:none!important}.lc-popup-content a+a{border:1px solid #bccbc7;background:#fff;color:var(--lc-ui-ink)!important}.lc-popup-close{position:absolute;right:14px;top:14px;z-index:2;width:42px;height:42px;border:1px solid #d4ddda;border-radius:3px;background:#fff;color:var(--lc-ui-ink);font:400 1.75rem/1 sans-serif;cursor:pointer}body.lc-popup-open{overflow:hidden}
.lc-newsletter{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:center;gap:clamp(30px,7vw,92px);padding:clamp(42px,7vw,82px) max(24px,calc((100vw - 1180px)/2));border-block:1px solid #c8d9d4;background:#dcece7;color:var(--lc-ui-ink)}.lc-newsletter-eyebrow{margin:0 0 12px;color:var(--lc-ui-accent);font-size:.72rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.lc-newsletter h2{margin:0;font:650 clamp(2.1rem,4vw,3.6rem)/1.04 var(--font-display,Georgia,serif);letter-spacing:-.04em}.lc-newsletter>div>p:last-child{max-width:650px;color:#526c6e;line-height:1.7}.lc-newsletter form>label{display:block;margin-bottom:8px;font-size:.8rem;font-weight:850}.lc-newsletter form>div{display:flex}.lc-newsletter input[type=email]{min-width:0;flex:1;min-height:56px;padding:12px 15px;border:1px solid #9fb4ae;border-radius:3px 0 0 3px;background:#fff;font:inherit}.lc-newsletter button{min-height:56px;padding:11px 22px;border:0;border-radius:0 3px 3px 0;background:#142b31;color:#fff;font:800 .92rem/1 inherit;cursor:pointer}.lc-newsletter-status{margin:10px 0 0;font-size:.85rem}.lc-newsletter-status.is-success{color:#09623c}.lc-newsletter-status.is-error{color:#9d2018}
.lc-inquiry-badge{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(88px,calc(env(safe-area-inset-bottom) + 88px));z-index:1080;display:flex;min-height:50px;align-items:center;gap:10px;padding:9px 10px 9px 16px;border:1px solid rgba(255,255,255,.2);border-radius:4px;background:#142b31;color:#fff!important;font:800 .8rem/1 system-ui,sans-serif;text-decoration:none!important;box-shadow:0 13px 38px rgba(16,47,53,.3)}.lc-inquiry-badge strong{display:grid;width:31px;height:31px;place-items:center;border-radius:3px;background:#e7bd55;color:#142b31}
@media(max-width:780px){.lc-form-fields,.lc-newsletter{grid-template-columns:1fr}.lc-form-field.is-wide{grid-column:auto}.lc-form-contact{width:calc(100% - 20px);margin:24px auto;padding:25px 19px}.lc-form-floating{right:10px;bottom:10px}.lc-form-launcher{min-width:0;padding:9px 13px}.lc-form-launcher small{display:none}.lc-form-panel{position:fixed;right:10px;bottom:80px;left:10px;width:auto;max-height:calc(100vh - 100px);padding:25px 18px}.lc-popup-dialog{grid-template-columns:1fr;max-height:calc(100vh - 28px)}.lc-popup-art{min-height:130px;padding:24px}.lc-popup-art strong{max-width:280px;font-size:1.5rem}.lc-popup-art i{display:none}.lc-popup-body{padding:29px 21px}.lc-popup-dialog h2{font-size:2rem}.lc-newsletter{padding:46px 20px}.lc-newsletter form>div{display:grid;gap:8px}.lc-newsletter input[type=email],.lc-newsletter button{width:100%;border-radius:3px}.lc-inquiry-badge{right:10px;bottom:82px}}
@media(prefers-reduced-motion:reduce){.lc-form-submit{transition:none}.lc-popup-backdrop{backdrop-filter:none}}
/* Theme-declared homepage modules retain each theme's internal layout while
   sharing one predictable enable/order contract with the admin editor. */
.lc-theme-modules{display:flex;min-width:0;flex-direction:column}.lc-theme-modules>[data-theme-module]{order:var(--lc-module-order,500)}.lc-theme-modules>[data-theme-module][hidden]{display:none!important}
[data-theme-module]{scroll-margin-top:6rem}.lc-legacy-anchor{display:block;position:relative;top:-6rem;visibility:hidden}
