/*
Theme Name: KefasPress Starter Landscaping v1
Description: KefasPress Starter v1 Landscaping theme converted from Lovable. Luxury outdoor living design with KefasPress architecture.
Version: 1.0.0
*/


:root{
  --bg:#FFF8F5;
  --cream:#FAEFE8;
  --blush:#E8B7AD;
  --rose:#C98B7C;
  --cocoa:#2B1E1B;
  --taupe:#8A6F66;
  --dark:#3A2520;
  --white:#FFFFFF;
  --border:#E8D7CF;
  --shadow:0 30px 60px -30px rgba(43,30,27,.18);
  --shadow-soft:0 10px 40px -20px rgba(43,30,27,.12);
  --serif:"Cormorant Garamond","Playfair Display",Georgia,serif;
  --sans:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;background:var(--bg);color:var(--cocoa);font-family:var(--sans);font-size:16px;line-height:1.7;letter-spacing:.005em;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.lb-container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.lb-site{background:var(--bg)}
.lb-eyebrow{font-size:.68rem;letter-spacing:.32em;text-transform:uppercase;color:var(--rose);font-weight:600;line-height:1;display:inline-block}
.lb-muted{color:var(--taupe)}
.lb-lede{font-size:1.08rem;line-height:1.75;color:var(--taupe);max-width:42rem}
.lb-serif-note{font-family:var(--serif);font-size:1.35rem;font-style:italic;color:var(--rose)}
.lb-center{text-align:center;margin-top:34px}
.lb-header{position:sticky;top:0;z-index:1000;background:rgba(255,248,245,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(232,215,207,.75)}
.lb-header-inner{width:min(1180px,calc(100% - 40px));margin:0 auto;min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.lb-logo{display:flex;align-items:baseline;gap:10px}
.lb-logo-main{font-family:var(--serif);font-size:1.85rem;font-weight:300;letter-spacing:-.03em;color:var(--cocoa)}
.lb-logo-sub{font-size:.58rem;letter-spacing:.32em;text-transform:uppercase;color:var(--rose);font-weight:600}
.lb-desktop-nav{display:flex;align-items:center;gap:32px}
.lb-desktop-nav a{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:rgba(43,30,27,.76);transition:.25s}
.lb-desktop-nav a:hover{color:var(--rose)}
.lb-header-cta{border:1px solid var(--cocoa);padding:10px 24px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.28em;color:var(--cocoa);transition:.25s}
.lb-header-cta:hover{background:var(--cocoa);color:var(--bg)}
.lb-menu-toggle{display:none;border:1px solid var(--border);background:rgba(255,255,255,.5);border-radius:999px;padding:12px 18px;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--cocoa)}
.lb-mobile-nav{display:none}
.lb-hero{background:linear-gradient(135deg,var(--bg),var(--cream));padding:90px 0 70px;position:relative;overflow:hidden}
.lb-hero:before{content:"";position:absolute;right:-15vw;top:12%;width:55vw;height:55vw;border-radius:50%;background:radial-gradient(circle,rgba(232,183,173,.45),transparent 65%);pointer-events:none}
.lb-hero-grid{display:grid;grid-template-columns:1fr .92fr;gap:76px;align-items:center;position:relative}
.lb-hero h1{font-family:var(--serif);font-size:clamp(3.25rem,7.6vw,7.5rem);line-height:.95;font-weight:300;letter-spacing:-.025em;margin:22px 0;color:var(--cocoa)}
.lb-hero-art{position:relative}
.lb-hero-art img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}
.lb-hero-note{position:absolute;left:-34px;bottom:34px;background:rgba(255,248,245,.92);backdrop-filter:blur(14px);border:1px solid rgba(232,215,207,.9);border-radius:22px;padding:18px 22px;box-shadow:var(--shadow-soft);max-width:250px}
.lb-hero-note strong{display:block;font-family:var(--serif);font-size:1.35rem;font-weight:400}
.lb-hero-note span{font-size:.88rem;color:var(--taupe)}
.lb-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.lb-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 26px;font-size:.76rem;text-transform:uppercase;letter-spacing:.2em;font-weight:700;transition:.25s;border:1px solid transparent}
.lb-btn-dark{background:var(--cocoa);color:var(--bg)}
.lb-btn-dark:hover{background:var(--rose);color:#fff}
.lb-btn-light{background:var(--bg);color:var(--cocoa)}
.lb-btn-light:hover{background:#fff}
.lb-btn-outline{border-color:rgba(43,30,27,.26);color:var(--cocoa)}
.lb-btn-outline:hover,.lb-btn-outline-dark:hover{border-color:var(--rose);color:var(--rose)}
.lb-btn-outline-dark{border-color:rgba(43,30,27,.35);color:var(--cocoa);background:transparent}
.lb-link-btn{display:inline-flex;border:1px solid rgba(43,30,27,.3);border-radius:999px;padding:12px 22px;font-size:.72rem;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:var(--cocoa);transition:.25s}
.lb-link-btn:hover{border-color:var(--rose);color:var(--rose)}
.lb-section{padding:clamp(4rem,9vw,7rem) 0}
.lb-soft{background:rgba(250,239,232,.58)}
.lb-section-head{margin-bottom:52px}
.lb-section-head.center{text-align:center;max-width:760px;margin-left:auto;margin-right:auto}
.lb-section-head.split{display:flex;align-items:end;justify-content:space-between;gap:28px}
.lb-section h2,.lb-section-head h2,.lb-about h2,.lb-page-hero h1,.lb-cta h2{font-family:var(--serif);font-weight:300;letter-spacing:-.018em;line-height:1.04;color:var(--cocoa)}
.lb-section h2,.lb-section-head h2,.lb-about h2{font-size:clamp(2.35rem,4vw,4.5rem);margin:16px 0}
.lb-benefits{padding:42px 0;background:var(--bg)}
.lb-benefit-row{display:flex;gap:14px;overflow-x:auto;padding-bottom:2px}
.lb-benefit-pill{flex:1 0 250px;display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--border);background:#fff;border-radius:999px;padding:16px 24px;box-shadow:var(--shadow-soft)}
.lb-benefit-pill span{color:var(--rose)}
.lb-benefit-pill strong{font-size:.9rem;font-weight:600;color:var(--cocoa);white-space:nowrap}
.lb-trust{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:rgba(250,239,232,.55)}
.lb-trust-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 28px;padding:18px 0;font-size:.68rem;text-transform:uppercase;letter-spacing:.24em;color:var(--taupe)}
.lb-trust-row span:not(:last-child):after{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--rose);margin-left:26px;vertical-align:middle}
.lb-about-grid{display:grid;grid-template-columns:.92fr 1fr;gap:76px;align-items:center}
.lb-about-img-wrap img{aspect-ratio:5/6;width:100%;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}
.lb-bullets{list-style:none;padding:0;margin:28px 0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.lb-bullets li{font-size:.92rem;color:var(--cocoa);display:flex;gap:10px;align-items:start}
.lb-bullets li:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--rose);margin-top:10px;flex:0 0 auto}
.lb-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.lb-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.lb-soft-card,.lb-service-card,.lb-service-detail,.lb-review-card{background:#fff;border:1px solid var(--border);border-radius:24px;padding:30px;box-shadow:var(--shadow-soft)}
.lb-soft-card span{font-family:var(--serif);font-size:2.4rem;color:var(--rose)}
.lb-soft-card h3,.lb-service-card h3,.lb-service-detail h3{font-family:var(--serif);font-size:1.6rem;font-weight:400;margin:12px 0 8px;color:var(--cocoa)}
.lb-service-icon{font-size:1.8rem;color:var(--rose)}
.lb-service-card p,.lb-service-detail p,.lb-review-card p{color:var(--taupe)}
.lb-service-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.lb-service-detail a{display:inline-block;margin-top:16px;color:var(--rose);font-weight:700;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.lb-ba-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.lb-ba-card{background:#fff;border:1px solid var(--border);border-radius:24px;padding:14px;box-shadow:var(--shadow-soft)}
.lb-ba-frame{position:relative;overflow:hidden;border-radius:18px;aspect-ratio:4/5;background:var(--cream);user-select:none}
.lb-ba-img,.lb-ba-before img{width:100%;height:100%;object-fit:cover}
.lb-ba-before{position:absolute;inset:0 auto 0 0;overflow:hidden}
.lb-ba-before img{width:calc(100% / var(--w, .5));max-width:none}
.lb-ba-handle{position:absolute;top:0;bottom:0;width:2px;background:#fff;box-shadow:0 0 0 1px rgba(43,30,27,.15);transform:translateX(-1px);cursor:ew-resize}
.lb-ba-handle span{position:absolute;top:50%;left:50%;width:34px;height:34px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);box-shadow:var(--shadow-soft)}
.lb-ba-label{position:absolute;top:12px;background:rgba(255,248,245,.82);border:1px solid rgba(255,255,255,.55);border-radius:999px;padding:5px 10px;font-size:.62rem;text-transform:uppercase;letter-spacing:.16em}
.lb-ba-label.left{left:12px}.lb-ba-label.right{right:12px}
.lb-ba-card h3{font-family:var(--serif);font-size:1.35rem;margin:16px 8px 4px}.lb-ba-card p{margin:0 8px 10px;color:var(--taupe);font-size:.92rem}
.lb-gallery-preview{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.lb-gallery-preview img,.lb-gallery-full img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:18px;box-shadow:var(--shadow-soft)}
.lb-gallery-full{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.lb-review-card{min-height:220px}.lb-stars{color:var(--rose);letter-spacing:.08em}.lb-review-card strong{display:block;margin-top:18px}.lb-review-card span{color:var(--taupe);font-size:.9rem}
.lb-faq-wrap{max-width:900px}.lb-faq-list{display:grid;gap:12px}.lb-faq-list details{background:#fff;border:1px solid var(--border);border-radius:18px;padding:18px 22px}.lb-faq-list summary{font-family:var(--serif);font-size:1.25rem;cursor:pointer}.lb-faq-list p{color:var(--taupe)}
.lb-cta{background:var(--cocoa);color:var(--bg);padding:70px 0;text-align:center}
.lb-cta.small{padding:60px 0}.lb-cta h2{color:var(--bg);font-size:clamp(2rem,4vw,4rem);margin:16px auto;max-width:780px}.lb-cta p{max-width:720px;margin:0 auto 28px;color:rgba(255,248,245,.78)}
.lb-page-hero{background:linear-gradient(135deg,var(--bg),var(--cream));padding:82px 0;text-align:center;border-bottom:1px solid var(--border)}
.lb-page-hero h1{font-size:clamp(3rem,6vw,6rem);margin:16px 0}.lb-page-hero p{max-width:720px;margin:0 auto;color:var(--taupe)}
.lb-contact-card{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;background:#fff;border:1px solid var(--border);border-radius:30px;padding:42px;box-shadow:var(--shadow)}
.lb-contact-card h2{font-family:var(--serif);font-size:clamp(2.35rem,4vw,4rem);line-height:1.05;margin:16px 0;color:var(--cocoa)}
.lb-contact-info{display:grid;gap:14px}.lb-contact-info article{background:var(--cream);border:1px solid var(--border);border-radius:18px;padding:18px}.lb-contact-info span{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.2em;color:var(--rose);margin-bottom:6px}.lb-contact-info strong{font-weight:600}
.lb-socials{display:flex;flex-wrap:wrap;gap:10px}.lb-socials a{border:1px solid rgba(255,248,245,.22);border-radius:999px;padding:7px 10px;font-size:.78rem}.lb-contact-info .lb-socials a{border-color:var(--border);color:var(--cocoa)}
.lb-form{display:grid;gap:14px;background:#fff;border:1px solid var(--border);border-radius:24px;padding:28px;max-width:720px;margin:0 auto}.lb-form label{display:grid;gap:8px;color:var(--taupe);font-size:.9rem}.lb-form input,.lb-form textarea,.lb-form select{width:100%;border:1px solid var(--border);border-radius:12px;padding:13px 14px;background:var(--bg);font:inherit;color:var(--cocoa)}.lb-form textarea{min-height:130px}
.lb-notice,.lb-empty{background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px;color:var(--taupe)}
.lb-footer{background:var(--cocoa);color:var(--bg);padding:70px 0 22px}.lb-footer-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:48px}.lb-footer p,.lb-footer a{color:rgba(255,248,245,.75)}.lb-footer h4{color:var(--blush);text-transform:uppercase;letter-spacing:.2em;font-size:.75rem}.lb-footer-grid a:not(.lb-logo){display:block;margin:8px 0}.lb-footer-logo .lb-logo-main{color:var(--bg)}.lb-bottom{border-top:1px solid rgba(255,248,245,.14);margin-top:44px;padding-top:18px;color:rgba(255,248,245,.55);font-size:.85rem}


.kp-panel-page,.kp-wp-wrap{font-family:var(--sans);color:var(--cocoa)}
.kp-panel-login{min-height:calc(100vh - 86px);display:grid;place-items:center;background:linear-gradient(135deg,var(--bg),var(--cream))}
.kp-login-card,.kp-admin-card{background:#fff;border:1px solid var(--border);border-radius:24px;padding:28px;box-shadow:var(--shadow-soft)}
.kp-login-card{width:min(440px,calc(100% - 30px))}
.kp-login-card input,.kp-admin-card input,.kp-admin-card textarea,.kp-admin-card select,.kp-editor-section input,.kp-editor-section textarea,.kp-editor-section select{width:100%;border:1px solid var(--border);border-radius:12px;padding:11px 12px;background:var(--bg);color:var(--cocoa);font:inherit}
.kp-login-card label,.kp-admin-card label,.kp-editor-section label{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--taupe);font-weight:700}
.kp-h2,.kp-login-card h1,.kp-client-bar h1{font-family:var(--serif);font-size:2.4rem;font-weight:300;color:var(--cocoa);margin:8px 0}
.kp-eyebrow{font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--rose);font-weight:700}.kp-muted,.kp-help{color:var(--taupe)}.kp-error{color:#9f1239}
.kp-client-shell{width:min(1180px,calc(100% - 30px));margin:30px auto 70px}.kp-client-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}
.kp-admin-actions{display:flex;gap:10px;flex-wrap:wrap}.kp-admin-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border);padding:10px 16px;background:#fff;color:var(--cocoa);font-weight:700;cursor:pointer}.kp-admin-btn.save{background:var(--cocoa);color:var(--bg)}.kp-admin-btn.secondary{background:var(--cream)}.kp-admin-btn.danger{background:#fff1f2;color:#9f1239;border-color:#fecdd3}
.kp-admin-notice{border-radius:14px;padding:12px 16px;margin:12px 0;background:#ecfdf5;color:#065f46}
.kp-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px}.kp-editor-section{display:grid;gap:14px;margin:12px 0}.kp-two{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.kp-edit-block{border:1px solid var(--border);border-radius:16px;padding:16px;background:var(--bg);margin:12px 0}.kp-sticky-save{position:sticky;bottom:14px;background:rgba(255,248,245,.8);backdrop-filter:blur(12px);padding:10px;border-radius:16px}.kp-live iframe{width:100%;height:500px;border:1px solid var(--border);border-radius:16px}.kp-review-row{border:1px solid var(--border);border-radius:16px;padding:16px;margin:12px 0;background:var(--bg)}.kp-review-actions{display:flex;gap:10px;flex-wrap:wrap}.kp-review-meta{display:flex;justify-content:space-between;gap:10px}.kp-image-picker-preview{margin-top:8px;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--cream)}.kp-image-picker-preview img{width:100%;height:150px;object-fit:cover}.kp-gallery-slot.is-extra{display:none}.kp-gallery-editor.show-extra .kp-gallery-slot.is-extra{display:block}
@media(max-width:980px){
  .lb-desktop-nav,.lb-header-cta{display:none}.lb-menu-toggle{display:inline-flex}.lb-header-inner{min-height:74px}
  .lb-mobile-nav{position:fixed;inset:74px 0 0;background:rgba(255,248,245,.98);backdrop-filter:blur(18px);padding:24px;transform:translateX(100%);transition:.28s ease;display:block;z-index:999;overflow:auto}
  body.kp-menu-open .lb-mobile-nav{transform:translateX(0)}
  body.kp-menu-open{overflow:hidden}
  .lb-mobile-nav nav{display:flex;flex-direction:column;gap:0}.lb-mobile-nav a{border-bottom:1px solid var(--border);padding:18px 0;font-family:var(--serif);font-size:2rem;color:var(--cocoa)}.lb-mobile-cta{margin-top:24px!important;background:var(--cocoa);color:var(--bg)!important;text-align:center;border-radius:999px;font-family:var(--sans)!important;font-size:.85rem!important;text-transform:uppercase;letter-spacing:.16em}
  .lb-hero-grid,.lb-about-grid,.lb-contact-card{grid-template-columns:1fr;gap:34px}.lb-hero{padding:50px 0}.lb-hero h1{font-size:clamp(3rem,14vw,4.5rem)}.lb-hero-note{position:relative;left:auto;bottom:auto;margin-top:16px;max-width:none}
  .lb-section-head.split{display:block}.lb-grid-3,.lb-grid-4,.lb-service-detail-grid{grid-template-columns:1fr}.lb-ba-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.lb-ba-card{min-width:82%;scroll-snap-align:start}.lb-gallery-preview{grid-template-columns:repeat(2,1fr)}.lb-gallery-full{grid-template-columns:repeat(2,1fr)}
  .lb-footer-grid{grid-template-columns:1fr}.kp-client-bar,.kp-editor-grid{display:block}.kp-two{grid-template-columns:1fr}
}
@media(max-width:520px){
  .lb-container,.lb-header-inner{width:min(100% - 28px,1180px)}.lb-hero h1{font-size:3.15rem}.lb-actions .lb-btn{width:100%}.lb-benefit-pill{flex-basis:82%}.lb-trust-row{display:grid;justify-items:center}.lb-trust-row span:after{display:none!important}.lb-gallery-full{grid-template-columns:1fr}.lb-ba-card{min-width:92%}.lb-contact-card{padding:24px}
}

.kp-panel-page{
  background:linear-gradient(135deg,var(--bg),var(--cream));
  min-height:calc(100vh - 86px);
}
.kp-panel-login{
  min-height:calc(100vh - 86px);
  display:grid;
  place-items:center;
  padding:42px 18px;
  background:
    radial-gradient(circle at 20% 20%,rgba(232,183,173,.35),transparent 35%),
    linear-gradient(135deg,var(--bg),var(--cream));
}
.kp-login-card{
  width:min(460px,100%);
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(18px);
  border:1px solid rgba(232,215,207,.85);
  border-radius:30px;
  padding:34px;
  box-shadow:0 32px 80px -48px rgba(43,30,27,.32);
}
.kp-login-card h1{
  font-family:var(--serif);
  font-size:clamp(2.4rem,7vw,3.8rem);
  line-height:.98;
  font-weight:300;
  margin:10px 0 12px;
  color:var(--cocoa);
}
.kp-login-card input{
  min-height:50px;
  border-radius:16px;
  background:#fff;
  border:1px solid var(--border);
}
.kp-client-shell{
  width:min(1220px,calc(100% - 32px));
  margin:0 auto;
  padding:42px 0 90px;
}
.kp-client-bar{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:22px;
  margin-bottom:24px;
}
.kp-client-bar h1{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.7rem,6vw,5.4rem);
  line-height:.98;
  margin:8px 0 4px;
  color:var(--cocoa);
}
.kp-client-bar .kp-muted{margin:0;color:var(--taupe)}
.kp-admin-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.kp-admin-btn{
  min-height:42px;
  border-radius:999px!important;
  padding:11px 18px!important;
  border:1px solid var(--border)!important;
  background:#fff!important;
  color:var(--cocoa)!important;
  box-shadow:0 10px 30px -24px rgba(43,30,27,.35);
  font-weight:800!important;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.72rem!important;
}
.kp-admin-btn.save{
  background:var(--cocoa)!important;
  color:var(--bg)!important;
  border-color:var(--cocoa)!important;
}
.kp-admin-btn.secondary{
  background:var(--cream)!important;
}
.kp-admin-btn.danger{
  color:#9f1239!important;
  border-color:#fecdd3!important;
  background:#fff1f2!important;
}
.kp-client-quicknav{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin:20px 0 22px;
}
.kp-client-quicknav a{
  background:rgba(255,255,255,.86);
  border:1px solid var(--border);
  border-radius:24px;
  padding:18px;
  box-shadow:0 20px 55px -42px rgba(43,30,27,.3);
  transition:.22s ease;
}
.kp-client-quicknav a:hover{
  transform:translateY(-2px);
  border-color:var(--rose);
}
.kp-client-quicknav span{
  display:block;
  font-size:1.45rem;
  margin-bottom:8px;
}
.kp-client-quicknav strong{
  display:block;
  color:var(--cocoa);
  font-size:.98rem;
}
.kp-client-quicknav small{
  display:block;
  color:var(--taupe);
  margin-top:3px;
  line-height:1.35;
}
.kp-client-layout{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:22px;
  align-items:start;
}
.kp-client-side-card{
  position:sticky;
  top:110px;
  background:rgba(255,255,255,.86);
  border:1px solid var(--border);
  border-radius:28px;
  padding:22px;
  box-shadow:0 20px 55px -42px rgba(43,30,27,.32);
}
.kp-client-side-card h3{
  font-family:var(--serif);
  font-size:1.75rem;
  font-weight:400;
  margin:0 0 8px;
}
.kp-client-toggle-list{
  display:grid;
  gap:8px;
  margin:18px 0;
}
.kp-client-toggle-list label{
  display:flex!important;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid rgba(232,215,207,.72);
  color:var(--cocoa);
  font-weight:700;
  text-transform:none!important;
  letter-spacing:0!important;
  font-size:.92rem!important;
}
.kp-client-toggle-list input[type="checkbox"]{
  appearance:none;
  width:46px!important;
  height:26px!important;
  padding:0!important;
  border-radius:999px!important;
  background:#E8D7CF!important;
  border:0!important;
  position:relative;
  cursor:pointer;
}
.kp-client-toggle-list input[type="checkbox"]:before{
  content:"";
  position:absolute;
  width:20px;
  height:20px;
  left:3px;
  top:3px;
  background:#fff;
  border-radius:50%;
  transition:.2s;
  box-shadow:0 2px 8px rgba(43,30,27,.18);
}
.kp-client-toggle-list input[type="checkbox"]:checked{
  background:var(--rose)!important;
}
.kp-client-toggle-list input[type="checkbox"]:checked:before{
  transform:translateX(20px);
}
.kp-client-lock-note{
  border:1px solid rgba(201,139,124,.22);
  background:rgba(250,239,232,.65);
  border-radius:20px;
  padding:14px;
  display:grid;
  gap:4px;
}
.kp-client-lock-note strong{color:var(--cocoa)}
.kp-client-lock-note span{color:var(--taupe);font-size:.88rem;line-height:1.45}
.kp-client-main{
  display:grid;
  gap:24px;
}
.kp-client-section{
  background:rgba(255,255,255,.78);
  border:1px solid var(--border);
  border-radius:30px;
  padding:24px;
  box-shadow:0 20px 60px -46px rgba(43,30,27,.3);
}
.kp-client-section-head{
  display:flex;
  gap:16px;
  align-items:flex-start;
  border-bottom:1px solid var(--border);
  padding-bottom:18px;
  margin-bottom:22px;
}
.kp-client-section-head > span{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--cream);
  color:var(--rose);
  font-weight:900;
}
.kp-client-section-head h2{
  font-family:var(--serif);
  font-size:clamp(1.9rem,3vw,3rem);
  font-weight:300;
  line-height:1.05;
  margin:0 0 5px;
  color:var(--cocoa);
}
.kp-client-section-head p{
  margin:0;
  color:var(--taupe);
}
.kp-client-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:24px;
  padding:22px;
  margin:16px 0;
}
.kp-client-card h3{
  font-family:var(--serif);
  font-size:1.75rem;
  font-weight:400;
  margin:0 0 16px;
  color:var(--cocoa);
}
.kp-client-card label,
.kp-login-card label{
  display:block;
  margin:13px 0 7px;
  font-size:.72rem!important;
  text-transform:uppercase;
  letter-spacing:.16em!important;
  color:var(--rose)!important;
  font-weight:800!important;
}
.kp-client-card input,
.kp-client-card textarea,
.kp-client-card select,
.kp-login-card input{
  width:100%;
  border:1px solid var(--border)!important;
  border-radius:14px!important;
  padding:12px 14px!important;
  background:var(--bg)!important;
  color:var(--cocoa)!important;
  font:inherit!important;
}
.kp-client-card textarea{min-height:112px}
.kp-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.kp-asset-picker{
  border:1px solid var(--border);
  border-radius:20px;
  padding:14px;
  background:var(--bg);
}
.kp-asset-preview{
  border:1px solid var(--border);
  border-radius:16px;
  overflow:hidden;
  background:var(--cream);
  min-height:150px;
  display:grid;
  place-items:center;
  margin-bottom:12px;
}
.kp-asset-preview img{
  width:100%;
  height:180px;
  object-fit:cover;
}
.kp-upload-btn{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:42px;
  border-radius:999px;
  padding:10px 16px;
  background:var(--cocoa);
  color:var(--bg)!important;
  cursor:pointer;
  margin-top:10px!important;
}
.kp-upload-btn input{display:none!important}
.kp-mini-btn{
  border:1px solid var(--border);
  background:#fff;
  border-radius:999px;
  padding:9px 13px;
  margin-top:9px;
  color:#9f1239;
  cursor:pointer;
}
.kp-asset-picker small{
  display:block;
  color:var(--taupe);
  line-height:1.4;
  margin-top:8px;
}
.kp-client-save-bar{
  position:sticky;
  bottom:14px;
  z-index:20;
  display:flex;
  justify-content:flex-end;
  gap:10px;
  background:rgba(255,248,245,.86);
  border:1px solid var(--border);
  backdrop-filter:blur(16px);
  border-radius:999px;
  padding:10px;
  box-shadow:0 20px 50px -36px rgba(43,30,27,.3);
}
.kp-admin-notice{
  border-radius:18px;
  padding:14px 18px;
  margin:14px 0;
  background:#ecfdf5;
  color:#065f46;
  border:1px solid #bbf7d0;
}
.kp-pending-reviews{
  margin-top:24px;
  background:rgba(255,255,255,.86);
  border:1px solid var(--border);
  border-radius:30px;
  padding:24px;
  box-shadow:0 20px 60px -46px rgba(43,30,27,.3);
}
.kp-pending-reviews h2{
  font-family:var(--serif);
  font-size:2.4rem;
  font-weight:300;
  margin:0 0 8px;
}
.kp-review-row{
  background:#fff;
  border:1px solid var(--border);
  border-radius:22px;
  padding:18px;
  margin-top:14px;
}
.kp-review-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:var(--cocoa);
}
.kp-review-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
@media(max-width:980px){
  .kp-client-bar{
    display:grid;
    gap:16px;
  }
  .kp-client-quicknav{
    grid-template-columns:repeat(2,1fr);
  }
  .kp-client-layout{
    grid-template-columns:1fr;
  }
  .kp-client-side-card{
    position:relative;
    top:auto;
  }
}
@media(max-width:620px){
  .kp-client-shell{width:min(100% - 24px,1220px);padding-top:24px}
  .kp-client-quicknav{grid-template-columns:1fr}
  .kp-client-section,.kp-client-side-card,.kp-pending-reviews{border-radius:22px;padding:18px}
  .kp-two{grid-template-columns:1fr}
  .kp-admin-actions{display:grid;grid-template-columns:1fr}
  .kp-admin-btn{width:100%;text-align:center}
  .kp-client-save-bar{
    border-radius:22px;
    display:grid;
    grid-template-columns:1fr;
  }
}

.lb-hero{
  position:relative!important;
  min-height:calc(100vh - 86px)!important;
  padding:0!important;
  overflow:hidden!important;
  background:var(--cocoa)!important;
  display:grid!important;
  align-items:center!important;
}
.lb-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background:linear-gradient(
    180deg,
    rgba(43,30,27,.30),
    rgba(43,30,27,.42) 42%,
    rgba(43,30,27,.66)
  )!important;
  z-index:1!important;
  pointer-events:none!important;
}
.lb-hero:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:rgba(201,139,124,.14)!important;
  z-index:2!important;
  pointer-events:none!important;
}
.lb-hero-grid{
  width:100%!important;
  max-width:none!important;
  min-height:calc(100vh - 86px)!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  padding:70px 24px 64px!important;
  z-index:3!important;
}
.lb-hero-art{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
}
.lb-hero-art img{
  width:100%!important;
  height:100%!important;
  min-height:calc(100vh - 86px)!important;
  object-fit:cover!important;
  border-radius:0!important;
  box-shadow:none!important;
  opacity:1!important;
  filter:none!important;
}
.lb-hero-note{
  display:none!important;
}
.lb-hero-copy{
  position:relative!important;
  z-index:4!important;
  width:min(980px,100%)!important;
  max-width:980px!important;
  text-align:center!important;
  color:#fff!important;
  margin:0 auto!important;
}
.lb-hero .lb-eyebrow{
  color:rgba(255,248,245,.90)!important;
  letter-spacing:.42em!important;
  font-size:.72rem!important;
  margin-bottom:24px!important;
  text-shadow:0 2px 16px rgba(43,30,27,.35)!important;
}
.lb-hero h1{
  color:#fff!important;
  font-family:var(--serif)!important;
  font-size:clamp(4.2rem,9.2vw,8.6rem)!important;
  line-height:.95!important;
  font-weight:300!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
  margin:0 auto 24px!important;
  text-shadow:0 12px 36px rgba(43,30,27,.28)!important;
}
.lb-hero .lb-lede{
  color:rgba(255,248,245,.92)!important;
  max-width:760px!important;
  margin:0 auto!important;
  font-size:1.05rem!important;
  line-height:1.8!important;
  text-shadow:0 2px 14px rgba(43,30,27,.30)!important;
}
.lb-hero .lb-actions{
  justify-content:center!important;
  margin-top:36px!important;
}
.lb-hero .lb-btn{
  border-radius:0!important;
  min-width:170px!important;
}
.lb-hero .lb-btn-dark{
  background:transparent!important;
  color:#fff!important;
  border:1px solid rgba(255,248,245,.78)!important;
}
.lb-hero .lb-btn-dark:hover{
  background:rgba(255,248,245,.16)!important;
}
.lb-hero .lb-btn-outline{
  border-color:transparent!important;
  color:#fff!important;
  text-decoration:underline!important;
  text-underline-offset:10px!important;
}
.lb-hero .lb-btn-outline:hover{
  color:var(--cream)!important;
}
@media(max-width:980px){
  .lb-hero,
  .lb-hero-grid,
  .lb-hero-art img{
    min-height:calc(100vh - 74px)!important;
  }
  .lb-hero-grid{
    padding:54px 20px 54px!important;
  }
  .lb-hero h1{
    font-size:clamp(3.15rem,15vw,5.8rem)!important;
    line-height:.98!important;
  }
}
@media(max-width:520px){
  .lb-hero .lb-eyebrow{
    letter-spacing:.24em!important;
    font-size:.62rem!important;
  }
  .lb-hero h1{
    font-size:clamp(2.75rem,17vw,4.4rem)!important;
  }
  .lb-hero .lb-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    width:min(300px,100%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .lb-hero .lb-btn{
    width:100%!important;
  }
}

html,body{max-width:100%;overflow-x:hidden}
.lb-hero{
  position:relative!important;
  min-height:calc(100svh - 86px)!important;
  height:auto!important;
  padding:0!important;
  overflow:hidden!important;
  background:#3A2520!important;
  display:block!important;
}
.lb-hero-grid{
  width:100%!important;
  max-width:none!important;
  min-height:calc(100svh - 86px)!important;
  height:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:86px 24px 76px!important;
  margin:0!important;
  position:relative!important;
  z-index:4!important;
}
.lb-hero-art{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:0!important;
  margin:0!important;
}
.lb-hero-art img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:0!important;
  box-shadow:none!important;
  opacity:1!important;
  filter:none!important;
}
.lb-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  width:auto!important;
  height:auto!important;
  border-radius:0!important;
  background:linear-gradient(
    180deg,
    rgba(43,30,27,.26) 0%,
    rgba(43,30,27,.38) 43%,
    rgba(43,30,27,.58) 100%
  )!important;
  pointer-events:none!important;
}
.lb-hero:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  background:rgba(201,139,124,.16)!important;
  pointer-events:none!important;
}
.lb-hero-copy{
  position:relative!important;
  z-index:5!important;
  width:min(100%,1120px)!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
  text-align:center!important;
  color:#fff!important;
  display:block!important;
}
.lb-hero .lb-eyebrow{
  display:block!important;
  color:rgba(255,248,245,.92)!important;
  text-align:center!important;
  font-size:clamp(.56rem, .72vw, .72rem)!important;
  line-height:1.35!important;
  letter-spacing:clamp(.20em,.5vw,.42em)!important;
  margin:0 auto 24px!important;
  max-width:100%!important;
  text-shadow:0 2px 16px rgba(43,30,27,.36)!important;
  white-space:normal!important;
}
.lb-hero h1{
  display:block!important;
  color:#fff!important;
  font-family:var(--serif)!important;
  font-weight:300!important;
  text-align:center!important;
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
  line-height:.98!important;
  font-size:clamp(3.7rem,7.05vw,7.15rem)!important;
  max-width:1120px!important;
  margin:0 auto 24px!important;
  padding:0!important;
  text-shadow:0 12px 36px rgba(43,30,27,.30)!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
.lb-hero .lb-lede{
  color:rgba(255,248,245,.92)!important;
  max-width:760px!important;
  margin:0 auto!important;
  text-align:center!important;
  font-size:clamp(.95rem,1.15vw,1.1rem)!important;
  line-height:1.75!important;
  text-shadow:0 2px 14px rgba(43,30,27,.32)!important;
}
.lb-hero .lb-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:22px!important;
  flex-wrap:wrap!important;
  margin:36px auto 0!important;
}
.lb-hero .lb-btn{
  border-radius:0!important;
  min-width:170px!important;
  min-height:54px!important;
  padding:15px 28px!important;
  letter-spacing:.24em!important;
}
.lb-hero .lb-btn-dark{
  background:transparent!important;
  color:#fff!important;
  border:1px solid rgba(255,248,245,.78)!important;
}
.lb-hero .lb-btn-dark:hover{
  background:rgba(255,248,245,.16)!important;
}
.lb-hero .lb-btn-outline{
  border-color:transparent!important;
  color:#fff!important;
  text-decoration:underline!important;
  text-underline-offset:10px!important;
}
.lb-hero .lb-btn-outline:hover{color:var(--cream)!important}
.lb-hero-note{display:none!important}

@media(max-width:1200px){
  .lb-hero h1{
    font-size:clamp(3.35rem,7.4vw,6.1rem)!important;
    max-width:940px!important;
  }
}
@media(max-width:980px){
  .lb-hero,
  .lb-hero-grid{
    min-height:calc(100svh - 74px)!important;
  }
  .lb-hero-grid{
    padding:68px 20px 58px!important;
  }
  .lb-hero h1{
    font-size:clamp(3rem,11.2vw,5.25rem)!important;
    line-height:1!important;
    max-width:720px!important;
    letter-spacing:.025em!important;
  }
}
@media(max-width:620px){
  .lb-hero-grid{
    padding:54px 16px 52px!important;
  }
  .lb-hero h1{
    font-size:clamp(2.6rem,13.5vw,4.25rem)!important;
    line-height:1.02!important;
    letter-spacing:.015em!important;
  }
  .lb-hero .lb-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:min(310px,100%)!important;
    gap:12px!important;
  }
  .lb-hero .lb-btn{
    width:100%!important;
    min-width:0!important;
  }
}
@media(max-width:390px){
  .lb-hero h1{
    font-size:clamp(2.35rem,13vw,3.3rem)!important;
  }
}

:root{
  --bg:#FFF8F5!important;
  --cream:#FAEFE8!important;
  --blush:#E8B7AD!important;
  --rose:#C98B7C!important;
  --cocoa:#2B1E1B!important;
  --taupe:#8A6F66!important;
  --dark:#3A2520!important;
  --border:#E8D7CF!important;
}
body,.lb-site{background:var(--bg)!important;color:var(--cocoa)!important}
.lb-header{
  background:rgba(255,248,245,.96)!important;
  border-bottom:1px solid rgba(232,215,207,.75)!important;
  box-shadow:none!important;
}
.lb-soft{background:rgba(250,239,232,.62)!important}
.lb-section{background:transparent!important}
.lb-trust{background:rgba(250,239,232,.46)!important}
.lb-hero{
  min-height:88vh!important;
  height:auto!important;
}
.lb-hero-grid{
  min-height:88vh!important;
  padding:70px 24px 82px!important;
}
.lb-hero-copy{max-width:1120px!important}
.lb-hero h1{
  margin:0 auto 24px!important;
  text-align:center!important;
  font-size:inherit!important;
  line-height:1!important;
  letter-spacing:0!important;
}
.lb-hero-title-main{
  display:block!important;
  font-family:var(--serif)!important;
  font-weight:300!important;
  text-transform:uppercase!important;
  color:#fff!important;
  font-size:clamp(3.7rem,8vw,7.5rem)!important;
  line-height:.95!important;
  letter-spacing:-.015em!important;
}
.lb-hero-title-sub{
  display:block!important;
  margin-top:.08em!important;
  font-family:var(--serif)!important;
  font-style:italic!important;
  font-weight:300!important;
  text-transform:none!important;
  color:rgba(255,248,245,.95)!important;
  font-size:clamp(2.25rem,4.8vw,5.6rem)!important;
  line-height:1!important;
  letter-spacing:0!important;
}
.lb-hero .lb-lede{
  margin-top:0!important;
  max-width:650px!important;
  font-weight:300!important;
}
.lb-hero-signature{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:6!important;
  border-top:1px solid rgba(255,248,245,.16)!important;
  background:rgba(43,30,27,.32)!important;
  backdrop-filter:blur(8px)!important;
}
.lb-hero-signature-inner{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  padding:15px 0!important;
  color:rgba(255,248,245,.82)!important;
  font-size:.62rem!important;
  text-transform:uppercase!important;
  letter-spacing:.30em!important;
}
.lb-why-card .lb-why-icon{
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  color:var(--rose)!important;
  font-size:1.35rem!important;
  line-height:1!important;
  margin-bottom:18px!important;
}
.lb-why-card p{
  margin:10px 0 0!important;
  color:var(--taupe)!important;
  font-size:.92rem!important;
  line-height:1.65!important;
}
.lb-services-image-grid{
  align-items:stretch!important;
}
.lb-service-image-card{
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  padding:0!important;
  border-radius:0!important;
  background:#fff!important;
  border:1px solid rgba(232,215,207,.78)!important;
  box-shadow:none!important;
  transition:transform .45s ease,border-color .45s ease,box-shadow .45s ease!important;
}
.lb-service-image-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(201,139,124,.45)!important;
  box-shadow:0 30px 60px -30px rgba(43,30,27,.18)!important;
}
.lb-service-media{
  aspect-ratio:4/5!important;
  overflow:hidden!important;
  background:var(--cream)!important;
}
.lb-service-media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  transition:transform 1.2s ease!important;
}
.lb-service-image-card:hover .lb-service-media img{
  transform:scale(1.04)!important;
}
.lb-service-body{
  display:flex!important;
  flex:1!important;
  flex-direction:column!important;
  padding:32px!important;
}
.lb-service-body h3{
  font-family:var(--serif)!important;
  font-size:1.625rem!important;
  font-weight:300!important;
  line-height:1.12!important;
  color:var(--cocoa)!important;
  margin:0!important;
}
.lb-service-rule{
  display:block!important;
  width:32px!important;
  height:1px!important;
  background:rgba(201,139,124,.65)!important;
  margin:18px 0!important;
}
.lb-service-body p{
  flex:1!important;
  margin:0!important;
  color:var(--taupe)!important;
  font-size:.92rem!important;
  line-height:1.75!important;
}
.lb-service-book{
  margin-top:28px!important;
  display:inline-flex!important;
  width:max-content!important;
  align-items:center!important;
  gap:12px!important;
  border-bottom:1px solid rgba(201,139,124,.72)!important;
  padding-bottom:4px!important;
  font-size:.68rem!important;
  text-transform:uppercase!important;
  letter-spacing:.30em!important;
  color:var(--cocoa)!important;
}
.lb-service-book span{
  transition:transform .3s ease!important;
}
.lb-service-image-card:hover .lb-service-book span{
  transform:translateX(4px)!important;
}
@media(max-width:980px){
  .lb-hero,.lb-hero-grid{min-height:calc(100svh - 74px)!important}
  .lb-hero-title-main{font-size:clamp(3rem,13vw,5.8rem)!important}
  .lb-hero-title-sub{font-size:clamp(2rem,8vw,3.8rem)!important}
  .lb-hero-signature{display:none!important}
}
@media(max-width:620px){
  .lb-hero-grid{padding:54px 16px 58px!important}
  .lb-hero-title-main{font-size:clamp(2.55rem,15vw,4.3rem)!important}
  .lb-hero-title-sub{font-size:clamp(1.75rem,9vw,3rem)!important}
}

.lb-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:9999!important;
  background:rgba(255,248,245,.68)!important;
  backdrop-filter:blur(18px) saturate(1.08)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.08)!important;
  border-bottom:1px solid rgba(232,215,207,.52)!important;
  box-shadow:0 12px 34px -30px rgba(43,30,27,.34)!important;
}
body.admin-bar .lb-header{
  top:32px!important;
}
.lb-header .lb-container,
.lb-nav,
.lb-brand{
  position:relative!important;
  z-index:2!important;
}
.lb-header a,
.lb-nav a,
.lb-brand{
  color:var(--cocoa)!important;
}
.lb-header .lb-book,
.lb-header .lb-btn,
.lb-header .lb-menu-toggle{
  border-color:rgba(43,30,27,.20)!important;
}
.lb-site{
  padding-top:0!important;
}
.lb-hero,
.lb-hero-grid{
  min-height:100svh!important;
}
.lb-hero-grid{
  padding-top:118px!important;
}


@media(max-width:782px){
  body.admin-bar .lb-header{
    top:46px!important;
  }
}


.lb-mobile-menu,
.lb-mobile-panel,
.lb-menu-panel{
  background:rgba(255,248,245,.94)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}


.lb-trust{
  background:#FAEFE8!important;
  border-top:1px solid rgba(232,215,207,.55)!important;
  border-bottom:1px solid rgba(232,215,207,.55)!important;
}
#about,
.lb-section#about{
  background:#FFF8F5!important;
}
.lb-soft,
.lb-section.lb-soft{
  background:linear-gradient(180deg,#FAEFE8 0%,#FFF8F5 100%)!important;
}
#services-preview{
  background:#FFFFFF!important;
}
#services-preview:before,
#services-preview:after{
  content:none!important;
}
.lb-before-after-section,
.lb-before-after,
section:has(.lb-before-grid),
section:has(.lb-before-after-card){
  background:linear-gradient(180deg,#FFF8F5 0%,#FAEFE8 100%)!important;
}
.lb-gallery-preview,
section:has(.lb-gallery-grid){
  background:#FFF8F5!important;
}
.lb-reviews-preview,
section:has(.lb-testimonial-card){
  background:linear-gradient(180deg,#FAEFE8 0%,#FFF8F5 100%)!important;
}
.lb-faq-section,
section:has(.lb-faq-list){
  background:#FFFFFF!important;
}
.lb-cta,
.lb-final-cta,
section:has(.lb-cta-card){
  background:var(--cocoa)!important;
  color:#FFF8F5!important;
}
.lb-cta h2,
.lb-final-cta h2,
section:has(.lb-cta-card) h2{
  color:#FFF8F5!important;
}
.lb-cta p,
.lb-final-cta p,
section:has(.lb-cta-card) p{
  color:rgba(255,248,245,.78)!important;
}
.lb-section{
  position:relative!important;
}
.lb-section:not(.lb-soft):not(#services-preview){
  background-clip:padding-box!important;
}


.lb-soft-card,
.lb-service-image-card,
.lb-testimonial-card,
.lb-faq-item,
.lb-ba-card{
  background:rgba(255,255,255,.82)!important;
}
#services-preview .lb-service-image-card{
  background:#FFF8F5!important;
}


.lb-section:nth-of-type(odd):not(.lb-hero){
  background:#FFF8F5;
}
.lb-section:nth-of-type(even):not(.lb-hero){
  background:#FAEFE8;
}


.lb-section.lb-soft{background:linear-gradient(180deg,#FAEFE8 0%,#FFF8F5 100%)!important}
#services-preview{background:#FFFFFF!important}


@media(max-width:980px){
  .lb-hero-grid{
    padding-top:104px!important;
  }
}
@media(max-width:620px){
  .lb-header{
    background:rgba(255,248,245,.76)!important;
  }
  .lb-hero-grid{
    padding-top:96px!important;
  }
}

.lb-ba-frame{touch-action:none!important}
.lb-ba-handle{z-index:3!important}
.lb-ba-handle span{
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
}
.lb-ba-handle span:before,
.lb-ba-handle span:after{
  content:""!important;
  width:2px!important;
  height:10px!important;
  background:rgba(43,30,27,.22)!important;
  border-radius:2px!important;
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}
.lb-ba-handle span:before{left:14px!important}
.lb-ba-handle span:after{right:14px!important}

@media (max-width: 980px){
  .lb-ba-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    overflow:visible!important;
    padding-bottom:0!important;
    scroll-snap-type:none!important;
  }
  .lb-ba-card{
    min-width:0!important;
    width:100%!important;
    max-width:none!important;
    scroll-snap-align:none!important;
    margin:0!important;
    padding:12px!important;
    border-radius:22px!important;
  }
  .lb-ba-frame{
    aspect-ratio:4 / 4.8!important;
    border-radius:18px!important;
  }
  .lb-ba-card h3{
    margin:14px 10px 6px!important;
    font-size:1.28rem!important;
    line-height:1.15!important;
  }
  .lb-ba-card p{
    margin:0 10px 8px!important;
    font-size:.92rem!important;
    line-height:1.6!important;
  }
}

@media (max-width: 620px){
  .lb-ba-row{
    gap:16px!important;
  }
  .lb-ba-card{
    padding:10px!important;
    border-radius:20px!important;
  }
  .lb-ba-frame{
    aspect-ratio:4 / 5.2!important;
    border-radius:16px!important;
  }
  .lb-ba-label{
    top:10px!important;
    padding:5px 10px!important;
    font-size:.58rem!important;
    letter-spacing:.14em!important;
  }
  .lb-ba-label.left{left:10px!important}
  .lb-ba-label.right{right:10px!important}
  .lb-ba-handle{
    width:2px!important;
  }
  .lb-ba-handle span{
    width:40px!important;
    height:40px!important;
  }
}

body.kp-menu-open,
body.lb-menu-open{
  overflow:hidden!important;
  touch-action:none!important;
}

@media(max-width:980px){
  .lb-header{
    min-height:74px!important;
  }

  .lb-header-inner{
    min-height:74px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
  }

  .lb-desktop-nav,
  .lb-header-cta{
    display:none!important;
  }

  .lb-brand,
  .lb-logo{
    min-width:0!important;
    flex:1 1 auto!important;
  }

  .lb-logo-main{
    font-size:1.35rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .lb-logo-sub{
    font-size:.48rem!important;
    letter-spacing:.28em!important;
    white-space:nowrap!important;
  }

  .lb-menu-toggle,
  #kpMenuToggle,
  [data-menu-toggle]{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    flex:0 0 auto!important;
    min-width:96px!important;
    min-height:44px!important;
    padding:11px 15px!important;
    border-radius:999px!important;
    border:1px solid rgba(43,30,27,.22)!important;
    background:rgba(255,248,245,.78)!important;
    backdrop-filter:blur(12px)!important;
    -webkit-backdrop-filter:blur(12px)!important;
    color:var(--cocoa)!important;
    font-size:.68rem!important;
    font-weight:800!important;
    letter-spacing:.18em!important;
    text-transform:uppercase!important;
    box-shadow:0 14px 32px -28px rgba(43,30,27,.42)!important;
    position:relative!important;
    z-index:10002!important;
  }

  .lb-menu-toggle:before,
  #kpMenuToggle:before,
  [data-menu-toggle]:before{
    content:"MENU";
  }

  .lb-menu-toggle.is-open:before,
  #kpMenuToggle.is-open:before,
  [data-menu-toggle].is-open:before{
    content:"CLOSE";
  }

  .lb-menu-toggle .kp-menu-label,
  .lb-menu-toggle .kp-menu-icon,
  #kpMenuToggle .kp-menu-label,
  #kpMenuToggle .kp-menu-icon,
  [data-menu-toggle] .kp-menu-label,
  [data-menu-toggle] .kp-menu-icon{
    display:none!important;
  }

  .lb-menu-toggle:after,
  #kpMenuToggle:after,
  [data-menu-toggle]:after{
    content:"☰";
    font-size:1rem!important;
    line-height:1!important;
    letter-spacing:0!important;
    transform:translateY(-1px);
  }

  .lb-menu-toggle.is-open:after,
  #kpMenuToggle.is-open:after,
  [data-menu-toggle].is-open:after{
    content:"×";
    font-size:1.35rem!important;
  }

  .lb-mobile-nav,
  #kpMobileNav,
  [data-mobile-nav]{
    position:fixed!important;
    top:74px!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    height:auto!important;
    z-index:10000!important;
    display:block!important;
    padding:28px 24px calc(34px + env(safe-area-inset-bottom))!important;
    background:
      radial-gradient(circle at 20% 0%, rgba(232,183,173,.32), transparent 38%),
      rgba(255,248,245,.96)!important;
    backdrop-filter:blur(22px) saturate(1.05)!important;
    -webkit-backdrop-filter:blur(22px) saturate(1.05)!important;
    border-top:1px solid rgba(232,215,207,.65)!important;
    transform:translateX(105%)!important;
    transition:transform .32s cubic-bezier(.22,.61,.36,1)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.4)!important;
  }

  body.admin-bar .lb-mobile-nav,
  body.admin-bar #kpMobileNav,
  body.admin-bar [data-mobile-nav]{
    top:calc(74px + 32px)!important;
  }

  .lb-mobile-nav.open,
  .lb-mobile-nav.is-open,
  #kpMobileNav.open,
  #kpMobileNav.is-open,
  [data-mobile-nav].open,
  [data-mobile-nav].is-open{
    transform:translateX(0)!important;
  }

  .lb-mobile-nav nav,
  #kpMobileNav nav,
  [data-mobile-nav] nav{
    display:grid!important;
    gap:0!important;
    max-width:560px!important;
    margin:0 auto!important;
  }

  .lb-mobile-nav a,
  #kpMobileNav a,
  [data-mobile-nav] a{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    padding:18px 2px!important;
    border-bottom:1px solid rgba(232,215,207,.85)!important;
    color:var(--cocoa)!important;
    font-family:var(--serif)!important;
    font-size:clamp(1.85rem,8vw,3.2rem)!important;
    line-height:1.05!important;
    font-weight:300!important;
    letter-spacing:0!important;
    text-transform:none!important;
  }

  .lb-mobile-nav a:after,
  #kpMobileNav a:after,
  [data-mobile-nav] a:after{
    content:"→";
    font-family:var(--sans)!important;
    font-size:1rem!important;
    color:var(--rose)!important;
    opacity:.72!important;
  }

  .lb-mobile-nav .lb-mobile-cta,
  #kpMobileNav .lb-mobile-cta,
  [data-mobile-nav] .lb-mobile-cta{
    margin-top:26px!important;
    min-height:54px!important;
    border-radius:999px!important;
    justify-content:center!important;
    background:var(--cocoa)!important;
    color:var(--bg)!important;
    border:1px solid var(--cocoa)!important;
    font-family:var(--sans)!important;
    font-size:.78rem!important;
    font-weight:800!important;
    letter-spacing:.22em!important;
    text-transform:uppercase!important;
  }

  .lb-mobile-nav .lb-mobile-cta:after,
  #kpMobileNav .lb-mobile-cta:after,
  [data-mobile-nav] .lb-mobile-cta:after{
    content:""!important;
  }
}

@media(max-width:782px){
  body.admin-bar .lb-mobile-nav,
  body.admin-bar #kpMobileNav,
  body.admin-bar [data-mobile-nav]{
    top:calc(74px + 46px)!important;
  }
}

@media(max-width:420px){
  .lb-header-inner{
    width:min(100% - 22px,1180px)!important;
  }
  .lb-logo-main{
    font-size:1.18rem!important;
  }
  .lb-logo-sub{
    font-size:.42rem!important;
    letter-spacing:.20em!important;
  }
  .lb-menu-toggle,
  #kpMenuToggle,
  [data-menu-toggle]{
    min-width:86px!important;
    padding:10px 12px!important;
    font-size:.62rem!important;
  }
  .lb-mobile-nav,
  #kpMobileNav,
  [data-mobile-nav]{
    padding-left:20px!important;
    padding-right:20px!important;
  }
}

@media(min-width:981px){
  .lb-mobile-nav,
  #kpMobileNav,
  [data-mobile-nav]{
    display:none!important;
  }
}

@media(max-width:980px){
  .lb-benefits{
    padding:24px 0!important;
    overflow:hidden!important;
  }

  .lb-benefit-row,
  .lb-benefits-row,
  .lb-benefits .lb-container{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    overflow:visible!important;
    padding-bottom:0!important;
  }

  .lb-benefit-pill{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:0 0 auto!important;
    justify-content:center!important;
    padding:15px 18px!important;
    border-radius:999px!important;
    white-space:normal!important;
    text-align:center!important;
    box-sizing:border-box!important;
  }

  .lb-benefit-pill span,
  .lb-benefit-pill strong{
    white-space:normal!important;
    line-height:1.35!important;
  }

  .lb-trust{
    overflow:hidden!important;
  }

  .lb-trust-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    justify-items:center!important;
    text-align:center!important;
    padding:22px 0!important;
  }

  .lb-trust-row span{
    display:block!important;
    max-width:100%!important;
    white-space:normal!important;
    line-height:1.5!important;
    letter-spacing:.24em!important;
  }

  .lb-trust-row span:after{
    display:none!important;
    content:none!important;
  }
}

@media(max-width:520px){
  .lb-benefits .lb-container{
    width:min(100% - 30px,1180px)!important;
  }

  .lb-benefit-pill{
    font-size:.86rem!important;
    letter-spacing:0!important;
  }

  .lb-trust-row span{
    font-size:.68rem!important;
    letter-spacing:.22em!important;
  }
}

.lb-lang-switch{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin-left:8px!important;
  padding:8px 12px!important;
  border:1px solid rgba(43,30,27,.16)!important;
  border-radius:999px!important;
  background:rgba(255,248,245,.46)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}
.lb-lang-switch a,
.lb-lang-switch span{
  font-size:.62rem!important;
  letter-spacing:.14em!important;
  font-weight:800!important;
  color:rgba(43,30,27,.55)!important;
  text-transform:uppercase!important;
}
.lb-lang-switch a.is-active{
  color:var(--cocoa)!important;
}


.lb-mobile-lang{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  max-width:560px!important;
  margin:0 auto 22px!important;
}
.lb-mobile-lang a{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  min-height:46px!important;
  border:1px solid rgba(232,215,207,.88)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.70)!important;
  color:var(--cocoa)!important;
  font-family:var(--sans)!important;
  font-size:.72rem!important;
  font-weight:800!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  padding:0 12px!important;
}
.lb-mobile-lang a:after{
  content:none!important;
}
.lb-mobile-lang a.is-active{
  background:var(--cocoa)!important;
  color:var(--bg)!important;
  border-color:var(--cocoa)!important;
}


@media(max-width:980px){
  .lb-desktop-nav,
  .lb-header-cta,
  .lb-lang-switch{
    display:none!important;
  }

  .lb-header{
    z-index:2147483000!important;
  }

  .lb-mobile-nav,
  #kpMobileNav,
  [data-mobile-nav]{
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:74px!important;
    bottom:0!important;
    width:100vw!important;
    height:calc(100svh - 74px)!important;
    max-height:none!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    gap:0!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-8px)!important;
    transition:opacity .22s ease, visibility .22s ease, transform .22s ease!important;
    z-index:2147482999!important;
    padding:26px 24px calc(32px + env(safe-area-inset-bottom))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    background:
      linear-gradient(180deg, rgba(255,248,245,.98) 0%, rgba(250,239,232,.98) 100%)!important;
    backdrop-filter:blur(24px) saturate(1.05)!important;
    -webkit-backdrop-filter:blur(24px) saturate(1.05)!important;
    border-top:1px solid rgba(232,215,207,.72)!important;
    box-shadow:0 40px 80px -42px rgba(43,30,27,.38)!important;
  }

  body.admin-bar .lb-mobile-nav,
  body.admin-bar #kpMobileNav,
  body.admin-bar [data-mobile-nav]{
    top:calc(74px + 32px)!important;
    height:calc(100svh - 74px - 32px)!important;
  }

  .lb-mobile-nav.open,
  .lb-mobile-nav.is-open,
  #kpMobileNav.open,
  #kpMobileNav.is-open,
  [data-mobile-nav].open,
  [data-mobile-nav].is-open,
  body.kp-menu-open .lb-mobile-nav,
  body.kp-menu-open #kpMobileNav,
  body.kp-menu-open [data-mobile-nav],
  body.lb-menu-open .lb-mobile-nav,
  body.lb-menu-open #kpMobileNav,
  body.lb-menu-open [data-mobile-nav]{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }

  .lb-mobile-nav nav,
  #kpMobileNav nav,
  [data-mobile-nav] nav{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    width:100%!important;
    max-width:560px!important;
    margin:0 auto!important;
    padding:0!important;
  }

  .lb-mobile-nav nav a,
  #kpMobileNav nav a,
  [data-mobile-nav] nav a{
    display:flex!important;
    width:100%!important;
    min-height:auto!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:15px 0!important;
    border-bottom:1px solid rgba(232,215,207,.86)!important;
    color:var(--cocoa)!important;
    font-family:var(--serif)!important;
    font-size:clamp(1.65rem,7vw,2.8rem)!important;
    line-height:1.08!important;
    font-weight:300!important;
    letter-spacing:0!important;
    text-transform:none!important;
    background:transparent!important;
    border-radius:0!important;
  }

  .lb-mobile-nav nav a:after,
  #kpMobileNav nav a:after,
  [data-mobile-nav] nav a:after{
    content:"→"!important;
    font-family:var(--sans)!important;
    font-size:1rem!important;
    color:var(--rose)!important;
    opacity:.7!important;
  }

  .lb-mobile-nav .lb-mobile-cta,
  #kpMobileNav .lb-mobile-cta,
  [data-mobile-nav] .lb-mobile-cta{
    width:100%!important;
    max-width:560px!important;
    margin:24px auto 0!important;
    min-height:54px!important;
    border-radius:999px!important;
    justify-content:center!important;
    background:var(--cocoa)!important;
    color:var(--bg)!important;
    border:1px solid var(--cocoa)!important;
    font-family:var(--sans)!important;
    font-size:.76rem!important;
    font-weight:900!important;
    letter-spacing:.20em!important;
    text-transform:uppercase!important;
    padding:0 18px!important;
  }

  .lb-mobile-nav .lb-mobile-cta:after,
  #kpMobileNav .lb-mobile-cta:after,
  [data-mobile-nav] .lb-mobile-cta:after{
    content:none!important;
  }

  .lb-menu-toggle,
  #kpMenuToggle,
  [data-menu-toggle]{
    z-index:2147483001!important;
  }
}

@media(max-width:782px){
  body.admin-bar .lb-mobile-nav,
  body.admin-bar #kpMobileNav,
  body.admin-bar [data-mobile-nav]{
    top:calc(74px + 46px)!important;
    height:calc(100svh - 74px - 46px)!important;
  }
}

@media(max-width:980px){
  .lb-header .lb-desktop-nav,
  .lb-header .lb-header-cta,
  .lb-header .lb-lang-switch{
    display:none!important;
  }

  .lb-header{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    z-index:999990!important;
    overflow:visible!important;
  }

  body.admin-bar .lb-header{
    top:32px!important;
  }

  .lb-header-inner{
    min-height:74px!important;
  }

  .lb-menu-toggle,
  #kpMenuToggle,
  [data-menu-toggle]{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-width:94px!important;
    min-height:44px!important;
    border-radius:999px!important;
    position:relative!important;
    z-index:1000002!important;
  }

  .lb-menu-toggle .lb-menu-label,
  .lb-menu-toggle .kp-menu-label,
  .lb-menu-toggle .kp-menu-icon,
  #kpMenuToggle .lb-menu-label,
  #kpMenuToggle .kp-menu-label,
  #kpMenuToggle .kp-menu-icon,
  [data-menu-toggle] .lb-menu-label,
  [data-menu-toggle] .kp-menu-label,
  [data-menu-toggle] .kp-menu-icon{
    display:none!important;
  }

  .lb-menu-toggle:before,
  #kpMenuToggle:before,
  [data-menu-toggle]:before{
    content:"MENU"!important;
    font-size:.66rem!important;
    font-weight:900!important;
    letter-spacing:.18em!important;
    text-transform:uppercase!important;
  }

  .lb-menu-toggle.is-open:before,
  #kpMenuToggle.is-open:before,
  [data-menu-toggle].is-open:before{
    content:"CLOSE"!important;
  }

  .lb-menu-toggle:after,
  #kpMenuToggle:after,
  [data-menu-toggle]:after{
    content:"☰"!important;
    font-size:1rem!important;
    line-height:1!important;
    letter-spacing:0!important;
  }

  .lb-menu-toggle.is-open:after,
  #kpMenuToggle.is-open:after,
  [data-menu-toggle].is-open:after{
    content:"×"!important;
    font-size:1.35rem!important;
  }

  
  .lb-mobile-nav,
  #kpMobileNav,
  [data-mobile-nav]{
    display:none!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    top:74px!important;
    bottom:0!important;
    width:100vw!important;
    height:calc(100svh - 74px)!important;
    z-index:1000000!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    pointer-events:auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:24px 24px calc(34px + env(safe-area-inset-bottom))!important;
    background:
      radial-gradient(circle at 16% 0%, rgba(232,183,173,.30), transparent 34%),
      linear-gradient(180deg, rgba(255,248,245,.99), rgba(250,239,232,.99))!important;
    backdrop-filter:blur(22px)!important;
    -webkit-backdrop-filter:blur(22px)!important;
    border-top:1px solid rgba(232,215,207,.82)!important;
    box-shadow:0 45px 90px -48px rgba(43,30,27,.42)!important;
  }

  body.admin-bar .lb-mobile-nav,
  body.admin-bar #kpMobileNav,
  body.admin-bar [data-mobile-nav]{
    top:calc(74px + 32px)!important;
    height:calc(100svh - 74px - 32px)!important;
  }

  
  body.kp-menu-open .lb-mobile-nav,
  body.kp-menu-open #kpMobileNav,
  body.kp-menu-open [data-mobile-nav],
  body.lb-menu-open .lb-mobile-nav,
  body.lb-menu-open #kpMobileNav,
  body.lb-menu-open [data-mobile-nav],
  .lb-mobile-nav.open,
  .lb-mobile-nav.is-open,
  #kpMobileNav.open,
  #kpMobileNav.is-open,
  [data-mobile-nav].open,
  [data-mobile-nav].is-open{
    display:block!important;
  }

  .lb-mobile-lang{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    width:100%!important;
    max-width:560px!important;
    margin:0 auto 20px!important;
  }

  .lb-mobile-lang a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:46px!important;
    border-radius:999px!important;
    border:1px solid rgba(232,215,207,.9)!important;
    background:rgba(255,255,255,.72)!important;
    color:var(--cocoa)!important;
    font-family:var(--sans)!important;
    font-size:.72rem!important;
    font-weight:900!important;
    letter-spacing:.16em!important;
    text-transform:uppercase!important;
    padding:0 12px!important;
  }

  .lb-mobile-lang a.is-active{
    background:var(--cocoa)!important;
    color:var(--bg)!important;
    border-color:var(--cocoa)!important;
  }

  .lb-mobile-lang a:after{
    content:none!important;
  }

  .lb-mobile-nav nav,
  #kpMobileNav nav,
  [data-mobile-nav] nav{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    width:100%!important;
    max-width:560px!important;
    margin:0 auto!important;
    padding:0!important;
  }

  .lb-mobile-nav nav a,
  #kpMobileNav nav a,
  [data-mobile-nav] nav a{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    padding:15px 0!important;
    border-bottom:1px solid rgba(232,215,207,.86)!important;
    border-radius:0!important;
    background:transparent!important;
    color:var(--cocoa)!important;
    font-family:var(--serif)!important;
    font-size:clamp(1.72rem,7.2vw,2.85rem)!important;
    line-height:1.05!important;
    font-weight:300!important;
    letter-spacing:0!important;
    text-transform:none!important;
  }

  .lb-mobile-nav nav a:after,
  #kpMobileNav nav a:after,
  [data-mobile-nav] nav a:after{
    content:"→"!important;
    font-family:var(--sans)!important;
    font-size:1rem!important;
    color:var(--rose)!important;
    opacity:.72!important;
  }

  .lb-mobile-nav nav a.lb-mobile-cta,
  #kpMobileNav nav a.lb-mobile-cta,
  [data-mobile-nav] nav a.lb-mobile-cta{
    justify-content:center!important;
    min-height:54px!important;
    margin-top:24px!important;
    border-radius:999px!important;
    border:1px solid var(--cocoa)!important;
    background:var(--cocoa)!important;
    color:var(--bg)!important;
    font-family:var(--sans)!important;
    font-size:.76rem!important;
    font-weight:900!important;
    letter-spacing:.20em!important;
    text-transform:uppercase!important;
  }

  .lb-mobile-nav nav a.lb-mobile-cta:after,
  #kpMobileNav nav a.lb-mobile-cta:after,
  [data-mobile-nav] nav a.lb-mobile-cta:after{
    content:none!important;
  }
}

@media(max-width:782px){
  body.admin-bar .lb-mobile-nav,
  body.admin-bar #kpMobileNav,
  body.admin-bar [data-mobile-nav]{
    top:calc(74px + 46px)!important;
    height:calc(100svh - 74px - 46px)!important;
  }
}

@media(max-width:420px){
  .lb-menu-toggle,
  #kpMenuToggle,
  [data-menu-toggle]{
    min-width:86px!important;
  }
}

.lb-mobile-lang a,
.lb-lang-switch a{
  text-decoration:none!important;
}

@media(max-width:980px){
  .lb-mobile-lang{
    align-items:stretch!important;
  }

  .lb-mobile-lang a{
    min-height:52px!important;
    border-radius:999px!important;
    font-family:var(--sans)!important;
    font-size:.74rem!important;
    font-weight:900!important;
    letter-spacing:.18em!important;
    text-transform:uppercase!important;
    line-height:1!important;
    color:var(--cocoa)!important;
    background:linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(250,239,232,.96) 100%)!important;
    border:1px solid rgba(201,139,124,.26)!important;
    box-shadow:0 12px 26px -24px rgba(43,30,27,.26)!important;
  }

  .lb-mobile-lang a.is-active{
    color:#FFF8F5!important;
    background:linear-gradient(135deg, #2B1E1B 0%, #4A322C 55%, #2B1E1B 100%)!important;
    border-color:#2B1E1B!important;
    box-shadow:0 18px 36px -24px rgba(43,30,27,.45)!important;
  }

  .lb-mobile-lang a.is-active:hover,
  .lb-mobile-lang a.is-active:focus{
    color:#FFF8F5!important;
  }
}

.lb-header .lb-mobile-cta,
.lb-mobile-nav .lb-mobile-cta{
  background:linear-gradient(135deg, #2B1E1B 0%, #4A322C 55%, #2B1E1B 100%)!important;
}

:root{
  --forest:#254B34;
  --olive:#556B2F;
  --charcoal:#2D2A24;
  --sand:#EEE6D5;
  --stone:#B7B0A0;
  --bronze:#B88445;
  --gold:#D2A85D;
  --paper:#F8F5EC;
  --card:#FEFCF6;
  --muted:#716B5D;
  --border:#DDD3C0;
  --shadow:0 35px 80px -45px rgba(45,42,36,.35);
  --serif:"Cormorant Garamond",Georgia,serif;
  --sans:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
  --bg:var(--paper); --cream:var(--sand); --blush:#E6D8C0; --rose:var(--bronze); --cocoa:var(--charcoal); --taupe:var(--muted); --dark:var(--charcoal);
}
*{box-sizing:border-box} html{scroll-behavior:smooth;overflow-x:hidden} body{margin:0;background:var(--paper);color:var(--charcoal);font-family:var(--sans);overflow-x:hidden;-webkit-font-smoothing:antialiased} img{max-width:100%;display:block} a{text-decoration:none;color:inherit}.rg-site{background:var(--paper)}.rg-container{width:min(1180px,calc(100% - 40px));margin:0 auto}.rg-container.narrow{max-width:900px}.center{text-align:center}.rg-eyebrow{display:inline-block;font-size:.70rem;line-height:1.2;letter-spacing:.32em;text-transform:uppercase;font-weight:700;color:var(--bronze)}.rg-gold{color:var(--gold)!important}.rg-stone{color:var(--stone)!important}.rg-muted{color:var(--muted);line-height:1.8}.rg-section{padding:110px 0}.rg-section h2,.rg-page-hero h1,.rg-cta h2{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;line-height:1.02;font-size:clamp(2.7rem,5.5vw,5.9rem);margin:18px 0 0}.rg-section-head{margin-bottom:60px}.rg-section-head.split{display:grid;grid-template-columns:1fr .72fr;gap:40px;align-items:end}.rg-section-head.narrow{max-width:700px}.rg-dark{background:var(--charcoal);color:var(--sand)}.rg-dark .rg-muted,.rg-dark p{color:var(--stone)}.rg-sand{background:var(--sand)}
.rg-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:15px 28px;border:1px solid currentColor;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;font-weight:700;transition:.28s ease;cursor:pointer}.rg-btn-primary{background:var(--forest);border-color:var(--forest);color:var(--sand)}.rg-btn-primary:hover{background:var(--charcoal);border-color:var(--bronze);color:var(--gold)}.rg-btn-ghost{background:transparent;color:var(--sand);border-color:rgba(238,230,213,.55)}.rg-btn-ghost:hover{background:rgba(238,230,213,.12);border-color:var(--sand)}.rg-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:36px}.rg-actions.center{justify-content:center}.rg-text-link{display:inline-flex;margin-top:34px;border-bottom:1px solid var(--bronze);padding-bottom:8px;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;font-weight:700;color:var(--forest)}.rg-text-link:hover{color:var(--bronze)}

.rg-header{position:fixed;top:0;left:0;right:0;z-index:999990;transition:.35s ease;color:var(--sand)}body.admin-bar .rg-header{top:32px}.rg-header.is-solid,.rg-header.is-scrolled{background:rgba(248,245,236,.84);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:var(--charcoal);border-bottom:1px solid rgba(221,211,192,.72);box-shadow:0 18px 44px -38px rgba(45,42,36,.42)}.rg-header-inner{width:min(1180px,calc(100% - 40px));margin:0 auto;min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.rg-brand{display:flex;align-items:center;gap:12px;min-width:0}.rg-brand-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid currentColor;font-size:.62rem;letter-spacing:.22em;font-weight:800}.rg-brand-text{font-family:var(--serif);font-size:1.42rem;line-height:1;white-space:nowrap}.rg-brand-text em{color:var(--bronze);font-style:italic}.rg-nav{display:flex;align-items:center;gap:30px}.rg-nav a{font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;font-weight:700;opacity:.82}.rg-nav a:hover{opacity:1;color:var(--gold)}.rg-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 22px;border:1px solid currentColor;font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;font-weight:800}.rg-lang{display:inline-flex;align-items:center;gap:7px;font-size:.62rem;letter-spacing:.13em;font-weight:800}.rg-lang a{opacity:.55}.rg-lang a.is-active{opacity:1;color:var(--bronze)}.rg-menu-toggle{display:none}

.rg-hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;color:var(--sand)}.rg-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.rg-hero-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(45,42,36,.98),rgba(45,42,36,.42) 48%,rgba(45,42,36,.68))}.rg-hero-side{position:absolute;inset:0;background:linear-gradient(to right,rgba(45,42,36,.78),transparent 56%)}.rg-hero-content{position:relative;padding:170px 0 80px;width:100%}.rg-hero h1{font-family:var(--serif);font-size:clamp(3.7rem,8.6vw,8.9rem);line-height:.96;font-weight:400;letter-spacing:-.035em;max-width:850px;margin:28px 0 0}.rg-hero h1 em{color:var(--gold);font-style:normal}.rg-lede{max-width:620px;color:var(--stone);font-size:1.08rem;line-height:1.85;margin:28px 0 0}.rg-hero-stats{border-top:1px solid rgba(210,168,93,.75);margin-top:70px;padding-top:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:650px}.rg-hero-stats strong{display:block;font-family:var(--serif);font-size:2.1rem;font-weight:400;color:var(--gold)}.rg-hero-stats span{display:block;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--stone)}

.rg-benefits{background:var(--sand);padding:72px 0}.rg-benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.rg-benefit-grid article{border-top:1px solid rgba(184,132,69,.45);padding-top:24px}.rg-benefit-grid span{font-size:.72rem;letter-spacing:.25em;text-transform:uppercase;color:var(--bronze);font-weight:800}.rg-benefit-grid h3{font-family:var(--serif);font-size:1.65rem;font-weight:400;margin:14px 0 8px}.rg-benefit-grid p{color:var(--muted);line-height:1.75;font-size:.94rem}.rg-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.rg-about-media{position:relative}.rg-about-media img{width:100%;aspect-ratio:4/5;object-fit:cover}.rg-about-note{position:absolute;right:-28px;bottom:-28px;background:var(--charcoal);color:var(--sand);padding:28px;max-width:300px}.rg-about-note strong{font-family:var(--serif);font-size:1.65rem;font-weight:400;line-height:1.15}.rg-bullets{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;padding:0;margin:28px 0 0;list-style:none}.rg-bullets li{display:flex;gap:10px;color:var(--charcoal);font-size:.9rem}.rg-bullets li:before{content:"◆";color:var(--bronze);font-size:.72rem;margin-top:2px}

.rg-why-grid{margin-top:60px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(221,211,192,.22)}.rg-why-grid article{background:var(--charcoal);padding:38px}.rg-why-grid span{font-family:var(--serif);font-size:3.6rem;color:rgba(210,168,93,.82);font-style:italic}.rg-why-grid h3{font-family:var(--serif);font-size:1.55rem;font-weight:400;margin:26px 0 0}.rg-why-grid p{font-size:.9rem;line-height:1.7}.rg-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.rg-service-card .rg-service-media{position:relative;overflow:hidden;background:var(--charcoal)}.rg-service-card img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:1s ease}.rg-service-card:hover img{transform:scale(1.05)}.rg-service-media:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(45,42,36,.7),transparent);opacity:.72}.rg-service-media span{position:absolute;top:20px;left:20px;z-index:1;color:var(--gold);font-size:.68rem;letter-spacing:.28em;font-weight:800}.rg-service-card h3{font-family:var(--serif);font-size:1.75rem;font-weight:400;margin:20px 0 6px}.rg-service-card p{color:var(--muted);font-size:.95rem;line-height:1.7}

.rg-ba-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.rg-ba-frame{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--charcoal);touch-action:none;user-select:none}.rg-ba-after,.rg-ba-before img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.rg-ba-before{position:absolute;inset:0 auto 0 0;overflow:hidden}.rg-ba-before img{width:calc(100% / var(--w,.5));max-width:none}.rg-ba-handle{position:absolute;top:0;bottom:0;width:1px;background:var(--gold);z-index:3;transform:translateX(-.5px)}.rg-ba-handle span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;background:var(--gold);display:grid;place-items:center;color:var(--charcoal);font-size:.72rem;letter-spacing:.1em}.rg-ba-label{position:absolute;top:12px;z-index:4;padding:6px 10px;font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800}.rg-ba-label.before{left:12px;background:rgba(45,42,36,.72);color:var(--sand)}.rg-ba-label.after{right:12px;background:rgba(210,168,93,.92);color:var(--charcoal)}.rg-ba-meta{display:flex;justify-content:space-between;align-items:baseline;gap:18px;margin-top:18px}.rg-ba-meta h3{font-family:var(--serif);font-size:1.55rem;font-weight:400;margin:0}.rg-ba-meta p{margin:0;color:var(--bronze);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase}

.rg-gallery-preview{display:grid;grid-template-columns:repeat(12,1fr);gap:22px}.rg-gallery-preview figure{margin:0;overflow:hidden;background:var(--charcoal)}.rg-gallery-preview img{width:100%;height:100%;object-fit:cover}.rg-gallery-preview .g1{grid-column:span 4;aspect-ratio:4/5}.rg-gallery-preview .g2{grid-column:span 8;aspect-ratio:4/3}.rg-gallery-preview .g3{grid-column:span 5;aspect-ratio:4/5}.rg-gallery-preview .g4{grid-column:span 7;aspect-ratio:16/10}.rg-review-preview blockquote{font-family:var(--serif);font-size:clamp(2rem,4.5vw,4.8rem);font-style:italic;line-height:1.08;margin:32px auto;color:var(--sand)}.rg-faq{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:50px}.rg-faq details{border-bottom:1px solid var(--border);padding:24px 6px}.rg-faq details:last-child{border-bottom:0}.rg-faq summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;list-style:none}.rg-faq summary span{font-family:var(--serif);font-size:1.55rem}.rg-faq summary b{font-size:1.8rem;color:var(--bronze);transition:.2s}.rg-faq details[open] summary b{transform:rotate(45deg)}.rg-faq p{color:var(--muted);max-width:720px;line-height:1.8}.rg-cta{position:relative;overflow:hidden;background:var(--forest);color:var(--sand);padding:110px 0}.rg-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22}.rg-cta>div:nth-child(2){position:absolute;inset:0;background:rgba(37,75,52,.72)}.rg-cta .rg-container{position:relative}.rg-cta h2{color:var(--sand)}.rg-cta p{color:var(--stone);max-width:630px;margin:26px auto 0;line-height:1.8}.rg-page-hero{padding:160px 0 85px;text-align:center;background:linear-gradient(135deg,var(--paper),var(--sand));border-bottom:1px solid var(--border)}.rg-page-hero h1{margin:20px auto;max-width:900px}.rg-page-hero p{max-width:760px;margin:0 auto;color:var(--muted);line-height:1.8}.rg-service-list{display:grid;gap:90px}.rg-service-detail{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.rg-service-detail.reverse>img{order:2}.rg-service-detail img{width:100%;aspect-ratio:4/5;object-fit:cover}.rg-service-detail h2{font-family:var(--serif);font-size:clamp(2.4rem,4vw,4.8rem);font-weight:400;line-height:1.02;margin:18px 0}.rg-checks{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:28px 0 0;padding:0;list-style:none}.rg-checks li{font-size:.9rem;color:var(--charcoal)}.rg-checks li:before{content:"◆";color:var(--bronze);margin-right:10px}.rg-filter-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:44px}.rg-filter-row button{border:1px solid var(--border);background:transparent;color:var(--charcoal);padding:10px 18px;font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;font-weight:800}.rg-filter-row .is-active{background:var(--charcoal);color:var(--sand);border-color:var(--charcoal)}.rg-gallery-full{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;grid-auto-flow:dense}.rg-gallery-full figure{position:relative;overflow:hidden;background:var(--charcoal);margin:0}.rg-gallery-full .tall{grid-row:span 2;aspect-ratio:3/5}.rg-gallery-full .wide{grid-column:span 2;aspect-ratio:16/10}.rg-gallery-full .square{aspect-ratio:1/1}.rg-gallery-full img{width:100%;height:100%;object-fit:cover;transition:1s ease}.rg-gallery-full figure:hover img{transform:scale(1.05)}.rg-gallery-full figcaption{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;background:linear-gradient(to top,rgba(45,42,36,.82),transparent);color:var(--sand);opacity:0;transition:.35s}.rg-gallery-full figure:hover figcaption{opacity:1}.rg-gallery-full figcaption span{font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}.rg-gallery-full figcaption strong{font-family:var(--serif);font-size:1.6rem;font-weight:400;margin-top:6px}.rg-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.rg-review-grid figure{background:var(--card);border:1px solid var(--border);padding:30px;margin:0;display:flex;flex-direction:column}.rg-stars{color:var(--gold);letter-spacing:.1em}.rg-review-grid blockquote{font-family:var(--serif);font-size:1.35rem;font-style:italic;line-height:1.28;flex:1;margin:24px 0;color:var(--charcoal)}.rg-review-grid figcaption{border-top:1px solid var(--border);padding-top:18px}.rg-review-grid strong{display:block;font-family:var(--serif);font-size:1.2rem}.rg-review-grid span{display:block;color:var(--bronze);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;margin-top:4px}.rg-notice{margin:30px 0 0;background:#edf7ed;border:1px solid #b8d9b8;color:#234d23;padding:16px 18px}.rg-form{display:grid;gap:24px;margin-top:36px}.rg-form label{display:grid;gap:10px}.rg-form label span{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--bronze);font-weight:800}.rg-form input,.rg-form textarea,.rg-form select{width:100%;border:0;border-bottom:1px solid rgba(45,42,36,.42);background:transparent;padding:12px 0;color:var(--charcoal);font:inherit;border-radius:0}.rg-form input:focus,.rg-form textarea:focus,.rg-form select:focus{outline:0;border-color:var(--bronze)}.rg-two{display:grid;grid-template-columns:1fr 1fr;gap:28px}.rg-contact-grid{display:grid;grid-template-columns:.85fr 1.2fr;gap:80px}.rg-contact-grid aside{display:grid;gap:42px}.rg-contact-grid h3{font-family:var(--serif);font-size:1.7rem;font-weight:400;margin:16px 0 0}.rg-contact-form-wrap{border-left:1px solid var(--border);padding-left:70px}.rg-form-success{border:1px solid var(--bronze);padding:42px;text-align:center}.rg-form-success h2{font-family:var(--serif);font-size:3rem;font-weight:400}.rg-small{font-size:.78rem;color:var(--muted)}
.rg-footer{background:var(--charcoal);color:var(--sand);padding:80px 0 28px}.rg-footer-grid{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:60px}.rg-footer h3{font-family:var(--serif);font-size:2rem;font-weight:400;line-height:1.1}.rg-footer p,.rg-footer a{color:var(--stone);line-height:1.7}.rg-footer a{display:block;margin:9px 0}.rg-footer a:hover{color:var(--gold)}.rg-footer-bottom{border-top:1px solid rgba(238,230,213,.16);padding-top:20px;margin-top:50px;display:flex;justify-content:space-between;gap:20px;color:var(--stone);font-size:.72rem;letter-spacing:.17em;text-transform:uppercase}.rg-socials{display:flex;gap:8px;flex-wrap:wrap}.rg-socials a{border:1px solid rgba(238,230,213,.25);border-radius:999px;padding:6px 10px;font-size:.75rem}
.kp-panel-page,.kp-panel-login{background:linear-gradient(135deg,var(--paper),var(--sand))!important}.kp-login-card h1,.kp-client-bar h1,.kp-client-section-head h2,.kp-client-card h3{color:var(--charcoal)!important}.kp-admin-btn.save,.kp-upload-btn{background:var(--forest)!important;color:var(--sand)!important;border-color:var(--forest)!important}.kp-client-toggle-list input[type="checkbox"]:checked{background:var(--forest)!important}.kp-client-section-head>span{background:var(--sand)!important;color:var(--bronze)!important}.kp-client-card label,.kp-login-card label{color:var(--bronze)!important}.kp-client-lock-note{background:rgba(238,230,213,.65)!important;border-color:rgba(184,132,69,.25)!important}

@media(max-width:980px){body.admin-bar .rg-header{top:46px}.rg-header-inner{min-height:74px;width:min(100% - 28px,1180px)}.rg-nav,.rg-header-cta,.rg-lang{display:none}.rg-brand-mark{width:34px;height:34px}.rg-brand-text{font-size:1.25rem}.rg-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:90px;min-height:44px;border:1px solid currentColor;border-radius:999px;background:rgba(248,245,236,.68);color:inherit;position:relative;z-index:1000002}.rg-menu-toggle:before{content:"MENU";font-size:.66rem;font-weight:900;letter-spacing:.18em}.rg-menu-toggle:after{content:"☰";font-size:1rem}.rg-menu-toggle.is-open:before{content:"CLOSE"}.rg-menu-toggle.is-open:after{content:"×";font-size:1.35rem}.rg-mobile-nav{display:none;position:fixed;top:74px;left:0;right:0;bottom:0;width:100vw;height:calc(100svh - 74px);z-index:1000000;overflow-y:auto;padding:26px 24px calc(34px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(248,245,236,.99),rgba(238,230,213,.99));border-top:1px solid var(--border);box-shadow:0 45px 90px -48px rgba(45,42,36,.42)}body.admin-bar .rg-mobile-nav{top:120px;height:calc(100svh - 120px)}body.kp-menu-open .rg-mobile-nav,.rg-mobile-nav.open,.rg-mobile-nav.is-open{display:block}.rg-mobile-lang{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:560px;margin:0 auto 22px}.rg-mobile-lang a{display:flex;align-items:center;justify-content:center;min-height:50px;border:1px solid rgba(184,132,69,.28);border-radius:999px;background:#fff;color:var(--charcoal);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:900}.rg-mobile-lang a.is-active{background:linear-gradient(135deg,var(--forest),#3E5E3A,var(--charcoal));color:var(--sand);border-color:var(--forest)}.rg-mobile-nav nav{display:grid;gap:0;max-width:560px;margin:0 auto}.rg-mobile-nav nav a{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--border);font-family:var(--serif);font-size:clamp(1.8rem,7.5vw,3rem);line-height:1.04}.rg-mobile-nav nav a:after{content:"→";font-family:var(--sans);font-size:1rem;color:var(--bronze)}.rg-mobile-nav .rg-mobile-cta{justify-content:center;min-height:54px;margin-top:24px;border-radius:999px;background:linear-gradient(135deg,var(--forest),#3E5E3A,var(--charcoal));color:var(--sand);font-family:var(--sans);font-size:.76rem;letter-spacing:.2em;text-transform:uppercase;font-weight:900}.rg-mobile-nav .rg-mobile-cta:after{content:none}body.kp-menu-open{overflow:hidden}.rg-hero-content{padding:130px 0 62px}.rg-hero h1{font-size:clamp(3.1rem,14vw,6rem);max-width:720px}.rg-hero-stats{grid-template-columns:1fr;gap:18px;margin-top:46px}.rg-benefit-grid,.rg-about-grid,.rg-section-head.split,.rg-service-grid,.rg-ba-grid,.rg-service-detail,.rg-contact-grid,.rg-review-grid,.rg-footer-grid{grid-template-columns:1fr}.rg-section{padding:76px 0}.rg-about-note{position:relative;right:auto;bottom:auto;margin-top:-1px;max-width:none}.rg-why-grid{grid-template-columns:1fr}.rg-ba-card{width:100%}.rg-ba-frame{aspect-ratio:4/3}.rg-gallery-preview{grid-template-columns:1fr}.rg-gallery-preview .g1,.rg-gallery-preview .g2,.rg-gallery-preview .g3,.rg-gallery-preview .g4{grid-column:span 1;aspect-ratio:4/3}.rg-gallery-full{grid-template-columns:1fr 1fr}.rg-gallery-full .wide{grid-column:span 2}.rg-contact-form-wrap{border-left:0;padding-left:0}.rg-footer-bottom{display:grid}.rg-two{grid-template-columns:1fr}.rg-service-detail.reverse>img{order:0}}
@media(max-width:620px){.rg-container{width:min(100% - 28px,1180px)}.rg-hero h1{font-size:clamp(2.7rem,15.4vw,4.7rem)}.rg-lede{font-size:.98rem}.rg-actions{display:grid}.rg-btn{width:100%}.rg-section h2,.rg-page-hero h1,.rg-cta h2{font-size:clamp(2.35rem,12vw,4rem)}.rg-benefits{padding:36px 0}.rg-benefit-grid{gap:20px}.rg-benefit-grid article{padding:20px;border:1px solid var(--border);background:rgba(255,255,255,.45)}.rg-service-grid{gap:28px}.rg-ba-meta{display:grid}.rg-gallery-full{grid-template-columns:1fr}.rg-gallery-full .wide{grid-column:span 1}.rg-page-hero{padding:120px 0 64px}.rg-header.is-overlay:not(.is-scrolled){background:rgba(45,42,36,.24);backdrop-filter:blur(12px)}}


.rg-hero{min-height:100svh;align-items:flex-end}
.rg-hero-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:160px 0 78px;width:100%}
.rg-hero-copy{max-width:760px}
.rg-hero h1{font-size:clamp(3.45rem,7vw,6.7rem);line-height:.98;max-width:760px;margin:22px 0 0;text-wrap:balance}
.rg-lede{max-width:600px}
.rg-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:30px}
.rg-section-foot{margin-top:36px}
.rg-service-link{display:block;height:100%}
.rg-service-link .rg-text-link{display:inline-block;margin-top:18px}
.rg-gallery-preview figure a{display:block;width:100%;height:100%}
.rg-gallery-preview figure{border:1px solid var(--border)}
.rg-contact-grid-info{grid-template-columns:.85fr 1.1fr;align-items:start}
.rg-contact-info-card{background:var(--card);border:1px solid var(--border);padding:44px;display:grid;gap:22px}
.rg-contact-info-card h2{font-family:var(--serif);font-size:clamp(2.45rem,4vw,4.8rem);font-weight:400;line-height:1.02;margin:0}
.rg-contact-cta-list{display:grid;gap:14px;max-width:420px}
.rg-contact-note{display:grid;gap:10px;padding:18px 20px;background:rgba(210,168,93,.10);border:1px solid rgba(210,168,93,.35)}
.rg-contact-note strong{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze)}
.rg-contact-note span{color:var(--muted);line-height:1.7}

@media (min-width:981px){
  .rg-service-grid{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:980px){
  .rg-hero-content{padding:138px 0 62px}
  .rg-hero-copy{max-width:680px}
  .rg-hero h1{font-size:clamp(3rem,10.5vw,5.6rem);max-width:680px}
  .rg-contact-grid-info{grid-template-columns:1fr}
  .rg-contact-info-card{padding:30px}
}

@media(max-width:620px){
  .rg-hero-content{padding:124px 0 54px}
  .rg-hero-copy{max-width:none}
  .rg-hero h1{font-size:clamp(2.7rem,13.2vw,4.5rem);max-width:100%;text-wrap:pretty}
  .rg-hero-stats{max-width:none}
  .rg-actions{display:grid;gap:12px}
  .rg-section-foot .rg-btn{width:100%}
  .rg-contact-info-card{padding:24px}
}

.rg-hero-content{
  width:min(1180px, calc(100% - 40px))!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}

.rg-hero-copy{
  width:min(760px, 100%)!important;
  max-width:760px!important;
  margin-left:0!important;
  margin-right:auto!important;
}

.rg-hero h1{
  max-width:760px!important;
  font-size:clamp(3.35rem, 6.2vw, 6.35rem)!important;
  line-height:.98!important;
  letter-spacing:-.03em!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  text-wrap:balance!important;
}

.rg-hero-stats{
  width:min(650px,100%)!important;
}

@media(min-width:1400px){
  .rg-hero-content{
    width:min(1180px, calc(100% - 120px))!important;
  }
}

@media(max-width:980px){
  .rg-hero-content{
    width:min(100% - 32px, 1180px)!important;
  }
  .rg-hero-copy{
    width:100%!important;
    max-width:680px!important;
  }
  .rg-hero h1{
    max-width:680px!important;
    font-size:clamp(3rem, 10.5vw, 5.6rem)!important;
  }
}

@media(max-width:620px){
  .rg-hero-content{
    width:min(100% - 28px, 1180px)!important;
  }
  .rg-hero h1{
    max-width:100%!important;
    font-size:clamp(2.7rem, 13.2vw, 4.5rem)!important;
  }
}
