/* LRCrea 1.3 — Adveris is the primary composition reference. */
:root { --lr-paper:#f7f7f2; --lr-ink:#242822; --lr-green:#496017; --lr-gutter:clamp(22px,3.8vw,72px); }
.site-header,.site-header.is-sticky { background:rgb(247 247 242 / .94); border:0; }
.site-header > div { max-width:1744px; height:104px; position:relative; }
.site-header > div::after { content:''; position:absolute; bottom:0; left:var(--lr-gutter); right:var(--lr-gutter); height:1px; background:#cbd0c4; }
.site-header > div > div:first-child img { width:148px; }
.site-header > div > nav { height:104px; }
.site-header > div > nav > a,.site-header > div > nav > div > a { color:var(--lr-ink); font-size:14px; font-weight:400; }
.site-header > div > a { border:1px solid #839174; border-radius:999px; padding:11px 18px; color:var(--lr-green); font-size:11px; }
.site-header > div > a:hover { background:var(--lr-accent); border-color:var(--lr-accent); }
.site-header [data-mobile-menu] { top:104px; }
.home-agency { background:var(--lr-paper); color:var(--lr-ink); }
#app .home-agency :is(a,button):focus-visible { outline-color:var(--lr-green); }
#app .home-cta :is(a,button):focus-visible { outline-color:var(--lr-ink); }
.home-agency .home-hero { padding-top:clamp(168px,12vw,208px); padding-bottom:40px; isolation:isolate; }
.home-hero::before { content:''; position:absolute; z-index:-1; inset:0; pointer-events:none; background:linear-gradient(104deg,transparent 21%,#62744b0b 24%,#62744b0b 27%,transparent 30%,transparent 54%,#62744b0e 59%,transparent 64%),linear-gradient(162deg,transparent 30%,#4758370c 34%,transparent 39%,transparent 56%,#4758370a 61%,transparent 67%); filter:blur(18px); animation:lr-daylight 22s ease-in-out infinite alternate; }
.home-hero > .relative.mx-auto { max-width:1600px; gap:64px; }
.home-hero-copy { grid-template-columns:minmax(0,2.45fr) minmax(230px,1fr); column-gap:clamp(44px,6vw,112px); align-items:end; }
.home-hero .home-kicker { grid-column:1/-1; font-size:10px; letter-spacing:.12em; margin-bottom:26px; }
.home-hero h1 { grid-column:1; grid-row:2/4; margin:0; max-width:none; font-size:clamp(54px,6.1vw,106px); font-weight:500; line-height:1.06; letter-spacing:-.055em; text-wrap:initial; }
.lr-title-lead { display:block; color:#757b70; }
.lr-title-line { display:block; color:var(--lr-green); }
.home-hero .home-outline { color:inherit; background:none; }
.home-hero-copy > p:not(.home-kicker) { grid-column:2; grid-row:2; margin:0; max-width:29ch; font-size:17px; line-height:1.5; color:var(--lr-green); }
.home-hero-copy > div { grid-column:2; grid-row:3; margin-top:24px; justify-content:flex-start; gap:14px; flex-direction:column; align-items:flex-start; }
.home-button,.home-hero .home-button-ghost { border-radius:999px; min-height:46px; font-size:12px; font-weight:400; padding:11px 19px; width:auto; }
.home-hero .home-button-primary { background:transparent; color:var(--lr-green); border:1px solid #839174; gap:18px; }
.home-hero .home-button-primary:hover { background:var(--lr-accent); color:var(--lr-ink); border-color:var(--lr-accent); }
.home-hero .home-button-primary span { width:24px; height:24px; background:var(--lr-accent); color:var(--lr-ink); display:grid; place-items:center; border-radius:50%; font-size:16px; }
.home-hero .home-button-ghost { border:0; padding:5px 0; min-height:44px; color:var(--lr-green); align-self:flex-start; }
.home-hero .home-button-ghost::after { content:'↗'; margin-left:12px; font-size:16px; }
.lr-showcase .home-hero-card { aspect-ratio:2.35; }
.lr-showcase .home-hero-card > span { border-radius:999px; background:var(--lr-paper); }
.lr-showcase-tab { color:var(--lr-green); }
.home-ticker { border-top:0; padding-block:24px; }
.home-agency > section:not(.home-hero):not(:last-child) { padding-block:clamp(80px,7.5vw,128px); }
.home-agency #vision > div { grid-template-columns:minmax(0,.43fr) minmax(0,1.57fr); gap:clamp(40px,6vw,96px); }
.home-agency #vision h2 { font-size:clamp(34px,3.7vw,58px); font-weight:400; }
.home-underline { font-family:inherit; font-style:normal; font-weight:600; color:var(--lr-green); background:none; }
.home-agency h2 { font-size:clamp(36px,4vw,62px); letter-spacing:-.045em; }
.home-agency .home-kicker { color:var(--lr-green); }
.home-agency > section:has(.home-projects) { border-top:1px solid #d5d9ce; }
.home-agency > section:has(.home-projects) > div > div:first-child { align-items:center; }
.home-agency > section:has(.home-projects) .home-button { color:var(--lr-green); border:1px solid #839174; flex-shrink:0; }
.home-projects { grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px 32px; margin-top:52px; }
.home-project,.home-project:first-child,.home-project:last-child { grid-column:auto; width:100%; }
.home-project:nth-child(3) { padding-top:0; }
.home-project a { display:flex; flex-direction:column; }
.home-project a > div:last-child { order:-1; margin:0 0 18px; padding:0; border:0; display:block; }
.home-project h3 { color:var(--lr-green); font-size:clamp(26px,2.35vw,36px); }
.home-agency .home-project p { text-align:left; text-transform:none; font-size:14px; letter-spacing:0; margin-top:7px; color:#5c6455; }
.home-project .home-project-visual,.home-project:first-child .home-project-visual,.home-project:last-child .home-project-visual { aspect-ratio:1.6; }
.home-project-open { width:48px; height:48px; }
.home-agency > section:has(.home-services) { background:#e9eddf; }
.home-agency > section:has(.home-services) h2 { color:var(--lr-green); }
.home-agency :is(.text-white\/50,.text-white\/32,.text-white\/60) { color:#59614f; }
.home-services,.home-service { border-color:#bec7b1; }
.home-service { grid-template-columns:40px minmax(0,.85fr) minmax(0,1.2fr) minmax(0,.8fr) 48px; padding-block:34px; }
.home-service h3 { color:var(--lr-green); font-size:clamp(26px,2.7vw,42px); }
.home-service > span:first-child,.home-step > span:first-child { color:var(--lr-green); }
.home-service-arrow { background:var(--lr-accent); border-radius:50%; color:var(--lr-ink); }
.home-service:hover .home-service-arrow { background:var(--lr-ink); color:var(--lr-paper); }
.home-service:hover { background:transparent; }
.home-service::after { background:var(--lr-green); }
.home-agency > section:has(.home-step) { background:var(--lr-paper); }
.home-agency > section:has(.home-step) :is(.border-t,.home-step) { border-color:#cbd0c4; }
.home-step h3 { color:var(--lr-green); }
.home-cta { background:var(--lr-accent); padding-block:88px; }
.home-cta h2 { font-size:clamp(40px,5.5vw,84px); }
@keyframes lr-daylight { from { transform:translate3d(-1%,0,0); opacity:.65; } to { transform:translate3d(1%,2%,0); opacity:1; } }
@media (max-width:1279px) {
  .admin-bar .site-header [data-mobile-menu] > nav { max-height:calc(100dvh - 166px); }
  .home-service { grid-template-columns:32px minmax(0,1fr) minmax(0,1.2fr) 44px; }
  .home-hero h1 { font-size:clamp(54px,6vw,78px); }
  .home-hero-copy { column-gap:40px; }
}
@media (max-width:900px) {
  .home-hero-copy { grid-template-columns:1fr; }
  .home-hero h1 { grid-column:1; grid-row:auto; font-size:clamp(52px,7.8vw,76px); }
  .home-hero-copy > p:not(.home-kicker) { grid-column:1; grid-row:auto; margin-top:28px; max-width:56ch; font-size:16px; }
  .home-hero-copy > div { grid-column:1; grid-row:auto; flex-direction:row; align-items:center; flex-wrap:wrap; gap:24px; }
  .home-agency #vision > div { grid-template-columns:1fr; gap:32px; }
  .home-agency > section:has(.home-projects) > div > div:first-child { align-items:flex-start; }
}
@media (max-width:639px) {
  .site-header > div { height:80px; }
  .site-header > div > div:first-child img { width:122px; }
  .site-header [data-mobile-menu] { top:80px; }
  .home-agency .home-hero { padding-top:130px; }
  .home-hero .home-kicker { margin-bottom:24px; font-size:9px; }
  .home-hero h1 { font-size:clamp(40px,10.5vw,62px); line-height:1.1; }
  .home-hero-copy > p:not(.home-kicker) { font-size:15px; line-height:1.65; }
  .home-hero-copy > div { gap:10px 24px; }
  .lr-showcase .home-hero-card { aspect-ratio:1.4; }
  .home-projects { grid-template-columns:1fr; gap:40px; margin-top:36px; }
  .home-service { grid-template-columns:24px minmax(0,1fr) 44px; }
  .home-service h3 { font-size:28px; }
  .home-project h3 { font-size:28px; }
  .home-agency h2 { font-size:clamp(32px,8.4vw,46px); }
  .home-agency #vision h2 { font-size:clamp(30px,8vw,44px); }
  .home-cta { padding:64px 22px; }
  .home-cta h2 { font-size:clamp(34px,9vw,50px); }
}
@media (prefers-reduced-motion:reduce) { .home-hero::before { animation:none; } }
