:root {
    --by3-green: #185c38;
    --by3-deep: #0b3421;
    --by3-dark: #082619;
    --by3-sage: #dbe8df;
    --by3-mist: #f3f6f4;
    --by3-white: #ffffff;
    --by3-ink: #15241b;
    --by3-muted: #637068;
    --by3-line: #d8dfda;
    --by3-serif: "Manrope", Arial, sans-serif;
    --by3-sans: "Manrope", Arial, sans-serif;
    --by3-mono: "IBM Plex Mono", monospace;
}
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--by3-ink); background: var(--by3-white); font-family: var(--by3-sans); -webkit-font-smoothing: antialiased; }
body.elementor-page { overflow-x: hidden; }
.by3,.by3 * { box-sizing: border-box; }
.by3 { overflow: clip; background: var(--by3-white); }
.by3 a { color: inherit; text-decoration: none; }
.by3 img { display: block; width: 100%; }
.by3-shell { width: min(calc(100% - 56px),1280px); margin-inline: auto; }
.by3-eyebrow { margin: 0 0 18px; color: var(--by3-green); font: 500 .67rem/1.4 var(--by3-mono); letter-spacing: .14em; text-transform: uppercase; }

.by3-theme-header { position: absolute; z-index: 100; top: 0; left: 0; width: 100%; color: var(--by3-white); }
.by3-theme-header,.by3-theme-topbar,.by3-theme-main { width: 100%!important; max-width: none!important; margin: 0!important; padding: 0!important; }
.admin-bar .by3-theme-header { top: 32px; }
.by3-theme-topbar { min-height: 38px; background: var(--by3-dark); color: rgba(255,255,255,.72); }
.by3-theme-shell { width: min(calc(100% - 56px),1280px)!important; margin-inline: auto; }
.by3-theme-topbar-inner { display: flex!important; flex-direction: row!important; justify-content: space-between!important; align-items: center!important; min-height: 38px; }
.by3-theme-topbar-inner .elementor-widget-text-editor { width: auto!important; color: inherit; font-size: .68rem; }
.by3-theme-topbar-inner .elementor-widget-text-editor p { margin: 0; }
.by3-theme-contact { display: flex; width: auto!important; gap: 25px; font-size: .68rem; }
.by3-theme-contact .elementor-widget-container { display: flex; gap: 25px; font-size: .68rem; }
.by3-theme-contact a { color: rgba(255,255,255,.72); }
.by3-theme-contact a:hover { color: var(--by3-white); }
.by3-theme-main { background: transparent; }
.by3-theme-main-inner { display: grid!important; grid-template-columns: 230px 1fr auto; align-items: center!important; min-height: 96px; border-bottom: 1px solid rgba(255,255,255,.3); }
.by3-theme-logo { width: auto!important; }
.by3-theme-logo img { width: 190px!important; height: auto!important; }
.by3-theme-nav { width: auto!important; justify-self: center; }
.by3-theme-nav .elementor-nav-menu--main .elementor-nav-menu { display: flex; gap: clamp(24px,3.5vw,48px); }
.by3-theme-nav .elementor-nav-menu--main .elementor-item { padding: 38px 0!important; color: var(--by3-white)!important; border-bottom: 2px solid transparent; font-family: var(--by3-sans); font-size: .78rem; font-weight: 600; }
.by3-theme-nav .elementor-nav-menu--main .elementor-item:hover,.by3-theme-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { border-color: var(--by3-white); }
.by3-theme-cta { width: auto!important; }
.by3-theme-cta .elementor-button { min-height: 44px; padding: 14px 18px; border: 1px solid rgba(255,255,255,.5); border-radius: 0; background: transparent; color: var(--by3-white); font-family: var(--by3-sans); font-size: .72rem; font-weight: 700; }
.by3-theme-cta .elementor-button:hover { background: var(--by3-white); color: var(--by3-deep); }
.by3-theme-footer { padding: 38px 0; color: var(--by3-white); background: var(--by3-dark); }
.by3-theme-footer-inner { display: grid!important; grid-template-columns: 1fr auto; align-items: end!important; gap: 40px; }
.by3-theme-footer-logo { width: auto!important; }
.by3-theme-footer-logo img { width: 180px!important; height: auto!important; }
.by3-theme-footer-copy { width: auto!important; color: rgba(255,255,255,.48); font: 500 .56rem/1.5 var(--by3-mono); letter-spacing: .08em; text-transform: uppercase; }
.by3-theme-footer-copy p { margin: 0; }

.by3-loader { position: fixed; z-index: 99999; inset: 0; display: grid; place-items: center; overflow: hidden; background: var(--by3-deep); color: var(--by3-white); animation: by3-loader-out .65s 1.35s cubic-bezier(.76,0,.24,1) forwards; }
.by3-loader::before,.by3-loader::after { position: absolute; right: 0; left: 0; height: 1px; background: rgba(255,255,255,.11); content: ""; }
.by3-loader::before { top: 24px; }.by3-loader::after { bottom: 24px; }
.by3-loader__center { width: min(calc(100% - 64px),390px); text-align: center; }
.by3-loader__logo { width: min(100%,310px); margin-inline: auto; opacity: 0; transform: translateY(14px); animation: by3-loader-logo .7s .12s ease forwards; }
.by3-loader__line { position: relative; overflow: hidden; width: 100%; height: 1px; margin-top: 42px; background: rgba(255,255,255,.2); }
.by3-loader__line::after { position: absolute; inset: 0; background: var(--by3-white); content: ""; transform: translateX(-100%); animation: by3-loader-line 1.15s .28s cubic-bezier(.65,0,.35,1) forwards; }
.by3-loader__label { display: flex; justify-content: space-between; margin-top: 13px; color: rgba(255,255,255,.55); font: 500 .56rem/1 var(--by3-mono); letter-spacing: .12em; text-transform: uppercase; }

/* V5 signature motion: the lentil-soup journey */
.by5-loader { background: radial-gradient(circle at 50% 48%,#164b31 0,#0b3421 44%,#062719 100%); animation: by5-loader-away .8s 1.85s cubic-bezier(.76,0,.24,1) forwards; }
.by5-loader::before { top: 28px; }.by5-loader::after { bottom: 28px; }
.by5-loader__grain { position:absolute; inset:0; opacity:.08; background-image:radial-gradient(circle,rgba(255,255,255,.8) 0 1px,transparent 1.5px); background-size:31px 31px; mask-image:radial-gradient(circle at center,#000,transparent 72%); }
.by5-loader__center { position:relative; width:min(calc(100% - 44px),520px); text-align:center; }
.by5-loader__eyebrow { margin:0 0 24px; color:rgba(255,255,255,.62); font:500 .6rem/1 var(--by3-mono); letter-spacing:.22em; text-transform:uppercase; opacity:0; animation:by5-copy-in .55s .12s ease forwards; }
.by5-soup { position:relative; width:330px; max-width:74vw; margin-inline:auto; filter:drop-shadow(0 36px 38px rgba(0,0,0,.34)); transform-origin:center; }
.by5-soup svg { display:block; width:100%; height:auto; overflow:visible; }
.by5-loader .by5-soup { opacity:0; transform:translateY(26px) scale(.88); animation:by5-bowl-arrive .7s .18s cubic-bezier(.2,.75,.2,1) forwards,by5-bowl-away 1s 1.38s cubic-bezier(.76,0,.24,1) forwards; }
.by5-soup__surface { transform-origin:160px 111px; animation:by5-soup-breathe 3.6s ease-in-out infinite; }
.by5-soup__garnish { transform-origin:160px 108px; animation:by5-garnish 8s linear infinite; }
.by5-steam path { fill:none; stroke:rgba(255,255,255,.76); stroke-width:4; stroke-linecap:round; opacity:0; animation:by5-steam 2.1s ease-in-out infinite; }
.by5-steam path:nth-child(2) { animation-delay:-.7s; }.by5-steam path:nth-child(3) { animation-delay:-1.35s; }
.by5-loader__title { margin:16px 0 0; color:#fff; font:500 clamp(2rem,6vw,3rem)/1 var(--by3-serif); letter-spacing:-.03em; opacity:0; animation:by5-copy-in .6s .46s ease forwards; }
.by5-loader__progress { display:flex; justify-content:space-between; width:min(100%,340px); margin:22px auto 0; padding-top:12px; border-top:1px solid rgba(255,255,255,.2); color:rgba(255,255,255,.5); font:500 .53rem/1 var(--by3-mono); letter-spacing:.13em; text-transform:uppercase; opacity:0; animation:by5-copy-in .5s .65s ease forwards; }
.by5-soup-follower { --soup-y:58vh; --soup-rot:0deg; --soup-opacity:0; position:fixed; z-index:22; top:0; right:clamp(14px,2.5vw,40px); width:94px; pointer-events:none; opacity:var(--soup-opacity); transform:translate3d(0,var(--soup-y),0) rotate(var(--soup-rot)) scale(.82); transform-origin:center; transition:opacity .35s ease,transform .16s linear; filter:drop-shadow(0 16px 18px rgba(8,38,25,.24)); }
.by3.is-soup-ready .by5-soup-follower { transform:translate3d(0,var(--soup-y),0) rotate(var(--soup-rot)) scale(1); }
.by5-soup-follower .by5-soup { width:100%; max-width:none; }
.by5-soup-follower::before { position:absolute; inset:-9px; z-index:-1; border:1px solid rgba(24,92,56,.2); border-radius:50%; content:""; }
.by5-soup-follower .by5-steam path { stroke:rgba(24,92,56,.48); stroke-width:5; }
@keyframes by5-copy-in { to { opacity:1; transform:translateY(0); } }
@keyframes by5-bowl-arrive { to { opacity:1; transform:translateY(0) scale(1); } }
@keyframes by5-bowl-away { from { opacity:1; transform:translateY(0) scale(1); } to { opacity:0; transform:translate(36vw,38vh) scale(.28) rotate(12deg); } }
@keyframes by5-loader-away { to { opacity:0; visibility:hidden; } }
@keyframes by5-soup-breathe { 0%,100% { transform:scale(1); } 50% { transform:scale(.985); } }
@keyframes by5-garnish { to { transform:rotate(360deg); } }
@keyframes by5-steam { 0% { opacity:0; transform:translateY(8px); } 32% { opacity:.8; } 100% { opacity:0; transform:translateY(-17px); } }

.by4-hero { position: relative; min-height: 850px; overflow: hidden; color: var(--by3-white); background: radial-gradient(circle at 78% 46%,rgba(219,232,223,.14),transparent 25%),radial-gradient(circle at 10% 88%,rgba(130,177,148,.14),transparent 28%),var(--by3-dark); isolation: isolate; }
.by4-hero::before { position: absolute; z-index: -1; inset: 0; opacity: .085; background-image: linear-gradient(rgba(255,255,255,.4) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.4) 1px,transparent 1px); background-size: 72px 72px; content: ""; mask-image: linear-gradient(90deg,#000,transparent 76%); }
.by4-hero::after { position: absolute; z-index: -1; top: -180px; right: -160px; width: 620px; height: 620px; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; content: ""; }
.by4-hero__inner { display: grid; grid-template-columns: minmax(0,1fr) minmax(470px,.88fr); align-items: center; gap: 72px; min-height: 850px; padding-top: 170px; padding-bottom: 52px; }
.by4-hero__copy { position: relative; z-index: 6; max-width: 690px; }
.by4-hero__copy .by3-eyebrow { color: var(--by3-sage); opacity: 0; animation: by4-up .7s 1.65s ease forwards; }
.by4-hero h1 { margin: 0; font: 700 clamp(4rem,5.8vw,6.5rem)/.9 var(--by3-sans); letter-spacing: -.065em; }
.by4-hero h1 span,.by4-hero h1 em { display: block; opacity: 0; transform: translateY(30px); animation: by4-up .82s cubic-bezier(.2,.75,.2,1) forwards; }
.by4-hero h1 span { animation-delay: 1.78s; }
.by4-hero h1 em { color: var(--by3-sage); font: 500 1.12em/.84 var(--by3-serif); letter-spacing: -.055em; animation-delay: 1.93s; }
.by4-hero__lead { max-width: 590px; margin: 28px 0 0; color: rgba(255,255,255,.7); font-size: .96rem; line-height: 1.78; opacity: 0; animation: by3-fade .7s 2.12s forwards; }
.by4-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 30px; opacity: 0; animation: by3-fade .7s 2.28s forwards; }
.by4-services { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 40px; opacity: 0; animation: by3-fade .7s 2.4s forwards; }
.by4-service-pill { display: inline-flex; align-items: center; gap: 10px; padding: 10px 13px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.06); color: rgba(255,255,255,.78); font-size: .68rem; font-weight: 600; backdrop-filter: blur(10px); }
.by4-service-pill svg { width: 19px; height: 19px; fill: none; stroke: var(--by3-sage); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.by4-stage { position: relative; width: min(100%,610px); aspect-ratio: 1; margin-left: auto; opacity: 0; transform: scale(.94); animation: by4-stage-in .9s 1.85s ease forwards; }
.by4-stage__halo { position: absolute; inset: 7%; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; }
.by4-stage__halo::before,.by4-stage__halo::after { position: absolute; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; content: ""; }
.by4-stage__halo::before { inset: -30px; }.by4-stage__halo::after { inset: 42px; }
.by4-photo { position: absolute; z-index: 2; inset: 13%; overflow: hidden; border: 10px solid rgba(255,255,255,.08); border-radius: 46% 54% 51% 49% / 56% 44% 56% 44%; box-shadow: 0 38px 90px rgba(0,0,0,.36); animation: by4-morph 9s ease-in-out infinite; }
.by4-photo::after { position: absolute; inset: 0; background: linear-gradient(180deg,transparent 58%,rgba(8,38,25,.48)); content: ""; }
.by4-photo img { width: 100%; height: 126%; object-fit: cover; object-position: center 16%; transform: translateY(-7%); }
.by4-orbit { position: absolute; z-index: 3; inset: 3%; width: 94%; height: 94%; overflow: visible; animation: by4-spin 28s linear infinite; }
.by4-orbit text { fill: rgba(255,255,255,.62); font: 500 11px var(--by3-mono); letter-spacing: 4px; }
.by4-ingredient { position: absolute; z-index: 5; filter: drop-shadow(0 18px 22px rgba(0,0,0,.28)); will-change: transform; }
.by4-ingredient svg { display: block; width: 100%; height: 100%; overflow: visible; }
.by4-tomato { top: 2%; right: 5%; width: 112px; height: 112px; animation: by4-float-a 5.4s ease-in-out infinite; }
.by4-pepper { top: 36%; left: -3%; width: 155px; height: 185px; animation: by4-float-b 6.6s -.8s ease-in-out infinite; }
.by4-lemon { bottom: 4%; left: 10%; width: 105px; height: 105px; animation: by4-float-a 5.8s -1.6s ease-in-out infinite; }
.by4-herb { right: -1%; bottom: 9%; width: 145px; height: 160px; animation: by4-float-b 7s -2.4s ease-in-out infinite; }
.by4-note { position: absolute; z-index: 7; right: 5%; bottom: 2%; display: flex; align-items: center; gap: 12px; min-width: 172px; padding: 14px 16px; border: 1px solid rgba(255,255,255,.2); background: rgba(8,38,25,.7); color: var(--by3-white); backdrop-filter: blur(15px); box-shadow: 0 18px 40px rgba(0,0,0,.2); }
.by4-note svg { width: 26px; height: 26px; fill: none; stroke: var(--by3-sage); stroke-width: 1.6; }
.by4-note strong { display: block; font-size: .69rem; }.by4-note span { display: block; margin-top: 3px; color: rgba(255,255,255,.55); font: 500 .52rem/1 var(--by3-mono); letter-spacing: .06em; }
@keyframes by4-up { to { opacity:1; transform:translateY(0); } }
@keyframes by4-stage-in { to { opacity:1; transform:scale(1); } }
@keyframes by4-spin { to { transform:rotate(360deg); } }
@keyframes by4-morph { 0%,100% { border-radius:46% 54% 51% 49% / 56% 44% 56% 44%; } 50% { border-radius:54% 46% 44% 56% / 47% 56% 44% 53%; } }
@keyframes by4-float-a { 0%,100% { transform:translate3d(0,0,0) rotate(-4deg); } 50% { transform:translate3d(0,-15px,0) rotate(5deg); } }
@keyframes by4-float-b { 0%,100% { transform:translate3d(0,0,0) rotate(4deg); } 50% { transform:translate3d(9px,13px,0) rotate(-5deg); } }

.by3-topbar { background: var(--by3-dark); color: rgba(255,255,255,.72); }
.by3-topbar__inner { display: flex; justify-content: space-between; align-items: center; min-height: 38px; font-size: .68rem; }
.by3-topbar__contact { display: flex; gap: 25px; }
.by3-topbar__contact a:hover { color: var(--by3-white); }
.by3-header { position: absolute; z-index: 30; top: 38px; left: 0; width: 100%; color: var(--by3-white); }
.by3-header__inner { display: grid; grid-template-columns: 230px 1fr auto; align-items: center; min-height: 96px; border-bottom: 1px solid rgba(255,255,255,.3); }
.by3-header__logo img { width: 190px; height: auto; }
.by3-nav { display: flex; justify-content: center; gap: clamp(24px,3.5vw,48px); font-size: .78rem; font-weight: 600; }
.by3-nav a { padding: 38px 0; border-bottom: 2px solid transparent; transition: border-color .25s ease; }
.by3-nav a:hover { border-color: var(--by3-white); }
.by3-header__button { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border: 1px solid rgba(255,255,255,.5); font-size: .72rem; font-weight: 700; transition: background .25s ease,color .25s ease; }
.by3-header__button:hover { background: var(--by3-white); color: var(--by3-deep); }

.by3-hero { position: relative; min-height: 780px; display: flex; align-items: stretch; color: var(--by3-white); background: var(--by3-dark); }
.by3-hero__media { position: absolute; inset: 0; }
.by3-hero__media::after { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(8,38,25,.96) 0%,rgba(8,38,25,.82) 42%,rgba(8,38,25,.28) 75%,rgba(8,38,25,.38) 100%),linear-gradient(0deg,rgba(8,38,25,.5),transparent 48%); content: ""; }
.by3-hero__media img { height: 100%; object-fit: cover; object-position: center 40%; animation: by3-hero-image 9s ease-out both; }
.by3-hero__inner { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,1fr) 340px; align-items: end; gap: 80px; width: min(calc(100% - 56px),1280px); padding-top: 190px; padding-bottom: 82px; }
.by3-hero__copy { max-width: 780px; }
.by3-hero__copy .by3-eyebrow { color: rgba(255,255,255,.66); }
.by3-hero h1 { margin: 0; font: 500 clamp(4.1rem,6.7vw,7.4rem)/.88 var(--by3-serif); letter-spacing: -.045em; opacity: 0; transform: translateY(24px); animation: by3-appear .8s 1.8s ease forwards; }
.by3-hero h1 em { display: block; color: var(--by3-sage); font-style: italic; }
.by3-hero__lead { max-width: 610px; margin: 28px 0 0; color: rgba(255,255,255,.76); font-size: 1rem; line-height: 1.75; opacity: 0; animation: by3-fade .8s 2.05s forwards; }
.by3-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 32px; opacity: 0; animation: by3-fade .8s 2.2s forwards; }
.by3-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 22px; border: 1px solid transparent; font-size: .76rem; font-weight: 700; transition: transform .2s ease,background .2s ease; }
.by3 .by3-btn--white { background: var(--by3-white); color: var(--by3-deep)!important; }
.by3 .by3-btn--outline { border-color: rgba(255,255,255,.45); color: var(--by3-white)!important; }
.by3-btn:hover { transform: translateY(-2px); }
.by3-hero__panel { padding: 28px; border: 1px solid rgba(255,255,255,.26); background: rgba(8,38,25,.48); backdrop-filter: blur(14px); opacity: 0; animation: by3-fade .9s 2.25s forwards; }
.by3-hero__panel strong { display: block; margin-bottom: 18px; font-size: .73rem; letter-spacing: .08em; text-transform: uppercase; }
.by3-hero__panel ul { margin: 0; padding: 0; list-style: none; }
.by3-hero__panel li { display: flex; justify-content: space-between; gap: 20px; padding: 14px 0; border-top: 1px solid rgba(255,255,255,.18); color: rgba(255,255,255,.76); font-size: .75rem; }
.by3-hero__panel li span:last-child { color: var(--by3-white); }

.by3-assurance { border-bottom: 1px solid var(--by3-line); background: var(--by3-white); }
.by3-assurance__grid { display: grid; grid-template-columns: repeat(4,1fr); }
.by3-assurance__item { padding: 28px 24px; border-left: 1px solid var(--by3-line); }
.by3-assurance__item:last-child { border-right: 1px solid var(--by3-line); }
.by3-assurance__item strong { display: block; margin-bottom: 5px; color: var(--by3-deep); font-size: .8rem; }
.by3-assurance__item span { color: var(--by3-muted); font-size: .7rem; }

.by3-about { padding: 124px 0; background: var(--by3-white); }
.by3-about__grid { display: grid; grid-template-columns: .94fr 1.06fr; gap: clamp(60px,8vw,120px); align-items: center; }
.by3-about__visual { position: relative; padding: 0 54px 54px 0; }
.by3-about__visual::after { position: absolute; z-index: 0; right: 0; bottom: 0; width: 68%; height: 66%; background: var(--by3-sage); content: ""; }
.by3-about__visual img { position: relative; z-index: 1; height: 620px; object-fit: cover; }
.by3-about__seal { position: absolute; z-index: 2; right: 4px; bottom: 16px; display: grid; place-items: center; width: 110px; height: 110px; border-radius: 50%; background: var(--by3-green); color: var(--by3-white); font: 500 .59rem/1.5 var(--by3-mono); letter-spacing: .1em; text-align: center; text-transform: uppercase; }
.by3-about h2,.by3-services h2,.by3-quality h2 { margin: 0; font: 500 clamp(3.2rem,5vw,5.4rem)/.96 var(--by3-serif); letter-spacing: -.04em; }
.by3-about h2 em { color: var(--by3-green); font-style: italic; }
.by3-about__text { max-width: 610px; margin: 28px 0 0; color: var(--by3-muted); font-size: .96rem; line-height: 1.85; }
.by3-about__facts { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 38px; padding-top: 30px; border-top: 1px solid var(--by3-line); }
.by3-about__facts strong { display: block; margin-bottom: 7px; color: var(--by3-deep); font-size: .8rem; }
.by3-about__facts p { margin: 0; color: var(--by3-muted); font-size: .75rem; line-height: 1.6; }

.by3-services { padding: 116px 0 126px; background: var(--by3-mist); }
.by3-services__head { display: grid; grid-template-columns: 1fr .8fr; align-items: end; gap: 60px; margin-bottom: 48px; }
.by3-services__head>p { max-width: 480px; margin: 0 0 6px auto; color: var(--by3-muted); font-size: .88rem; line-height: 1.75; }
.by3-services__grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--by3-line); border-left: 1px solid var(--by3-line); }
.by3-service { display: grid; grid-template-columns: 70px 1fr; gap: 24px; min-height: 248px; padding: 38px; border-right: 1px solid var(--by3-line); border-bottom: 1px solid var(--by3-line); background: rgba(255,255,255,.7); transition: background .3s ease,transform .3s ease; }
.by3-service:hover { background: var(--by3-white); transform: translateY(-3px); }
.by3-service__icon { display: grid; place-items: center; width: 54px; height: 54px; border: 1px solid var(--by3-green); border-radius: 50%; color: var(--by3-green); font-size: 1.2rem; }
.by3-service h3 { margin: 4px 0 12px; font: 600 1.7rem/1.1 var(--by3-serif); }
.by3-service p { max-width: 470px; margin: 0; color: var(--by3-muted); font-size: .8rem; line-height: 1.7; }
.by3-service a { display: inline-block; margin-top: 22px; color: var(--by3-green); font-size: .68rem; font-weight: 700; letter-spacing: .04em; }

.by3-quality { padding: 120px 0; color: var(--by3-white); background: var(--by3-deep); }
.by3-quality__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 100px; }
.by3-quality .by3-eyebrow { color: rgba(255,255,255,.56); }
.by3-quality h2 em { color: var(--by3-sage); font-style: italic; }
.by3-quality__list { border-top: 1px solid rgba(255,255,255,.2); }
.by3-quality__item { display: grid; grid-template-columns: 150px 1fr; gap: 30px; padding: 30px 0; border-bottom: 1px solid rgba(255,255,255,.2); }
.by3-quality__item strong { font-size: .76rem; letter-spacing: .05em; }
.by3-quality__item p { margin: 0; color: rgba(255,255,255,.64); font-size: .8rem; line-height: 1.7; }

.by3-gallery { padding: 120px 0; background: var(--by3-white); }
.by3-gallery__head { display: flex; justify-content: space-between; align-items: end; gap: 50px; margin-bottom: 42px; }
.by3-gallery h2 { margin: 0; font: 500 clamp(3.2rem,4.8vw,5.1rem)/.95 var(--by3-serif); letter-spacing: -.04em; }
.by3-gallery__head p { max-width: 380px; margin: 0 0 5px; color: var(--by3-muted); font-size: .82rem; line-height: 1.7; }
.by3-gallery__grid { display: grid; grid-template-columns: 1fr 1.35fr 1fr; gap: 16px; }
.by3-gallery figure { position: relative; overflow: hidden; height: 510px; margin: 0; background: var(--by3-mist); }
.by3-gallery figure:nth-child(2) { height: 600px; }
.by3-gallery img { height: 100%; object-fit: cover; transition: transform .75s ease; }
.by3-gallery figure:hover img { transform: scale(1.035); }

.by3-contact { position: relative; padding: 110px 0; color: var(--by3-white); background: var(--by3-green); }
.by3-contact__grid { display: grid; grid-template-columns: 1fr 360px; gap: 90px; align-items: end; }
.by3-contact h2 { max-width: 820px; margin: 0; font: 500 clamp(3.6rem,5.8vw,6.5rem)/.9 var(--by3-serif); letter-spacing: -.05em; }
.by3-contact__details { border-top: 1px solid rgba(255,255,255,.34); }
.by3-contact__details a,.by3-contact__details p { display: block; margin: 0; padding: 17px 0; border-bottom: 1px solid rgba(255,255,255,.24); color: rgba(255,255,255,.76); font-size: .75rem; line-height: 1.6; }
.by3-footer { padding: 38px 0; color: var(--by3-white); background: var(--by3-dark); }
.by3-footer__inner { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 40px; }
.by3-footer img { width: 180px; }
.by3-footer p { margin: 0; color: rgba(255,255,255,.48); font: 500 .56rem/1.5 var(--by3-mono); letter-spacing: .08em; text-transform: uppercase; }

.by3-reveal { opacity: 0; transform: translateY(28px); transition: opacity .75s ease,transform .75s ease; }
.by3-reveal.is-visible { opacity: 1; transform: translateY(0); }
.by3-reveal[data-delay="1"] { transition-delay: .12s; }.by3-reveal[data-delay="2"] { transition-delay: .24s; }
.by3 a:focus-visible { outline: 3px solid var(--by3-sage); outline-offset: 4px; }
@keyframes by3-loader-logo { to { opacity:1; transform:translateY(0); } }
@keyframes by3-loader-line { to { transform:translateX(0); } }
@keyframes by3-loader-out { to { opacity:0; visibility:hidden; transform:translateY(-100%); } }
@keyframes by3-hero-image { from { transform:scale(1.06); } to { transform:scale(1); } }
@keyframes by3-appear { to { opacity:1; transform:translateY(0); } }
@keyframes by3-fade { to { opacity:1; } }

@media (max-width:1000px) {
    .by4-hero__inner { grid-template-columns:1fr; gap:28px; padding-top:180px; padding-bottom:70px; }.by4-hero__copy { max-width:760px; }.by4-stage { width:min(100%,560px); margin-inline:auto; }
    .by3-theme-main-inner { display:flex!important; flex-direction:row!important; justify-content:space-between!important; align-items:center!important; }.by3-theme-nav { display:block!important; width:auto!important; margin-left:auto; }.by3-theme-cta { display:none; }
    .by3-theme-nav .elementor-nav-menu--main { display:none!important; }.by3-theme-nav .elementor-menu-toggle { display:flex!important; padding:10px; background:transparent; color:var(--by3-white); }.by3-theme-nav .elementor-menu-toggle svg { fill:currentColor; width:24px; height:24px; }
    .by3-header__inner { grid-template-columns:1fr auto; }.by3-nav { display:none; }.by3-hero__inner { grid-template-columns:1fr; }.by3-hero__panel { display:none; }
    .by3-about__grid,.by3-quality__grid { grid-template-columns:1fr; gap:60px; }.by3-about__visual { max-width:680px; }.by3-contact__grid { grid-template-columns:1fr; }
}
@media (max-width:767px) {
    .by5-soup { width:270px; }.by5-loader__title { font-size:2.2rem; }.by5-soup-follower { right:10px; width:68px; }
    .by4-hero { min-height:1180px; }.by4-hero__inner { display:block; min-height:1180px; padding-top:160px; }.by4-hero h1 { font-size:clamp(3.25rem,15vw,4.5rem); }.by4-hero__lead { font-size:.88rem; }.by4-services { gap:7px; margin-top:28px; }.by4-service-pill { padding:9px 10px; font-size:.6rem; }
    .by4-stage { width:430px; max-width:none; margin:45px 0 0 50%; transform:translateX(-50%) scale(.94); animation-name:by4-stage-mobile; }.by4-tomato { width:82px; height:82px; }.by4-pepper { left:1%; width:108px; height:138px; }.by4-lemon { width:80px; height:80px; }.by4-herb { right:1%; width:105px; height:120px; }.by4-note { right:8%; bottom:3%; min-width:150px; padding:11px 13px; }
    .admin-bar .by3-theme-header { top: 46px; }.by3-theme-shell { width:min(calc(100% - 30px),1280px)!important; }.by3-theme-topbar-inner { justify-content:center!important; }.by3-theme-topbar-inner>.elementor-widget-text-editor,.by3-theme-contact a:first-child { display:none; }
    .by3-theme-main-inner { min-height:78px; }.by3-theme-logo img { width:146px!important; }.by3-theme-cta .elementor-button { min-height:39px; padding:12px; font-size:.63rem; }.by3-theme-footer-inner { grid-template-columns:1fr; }
    .by3-shell { width:min(calc(100% - 30px),1280px); }.by3-topbar__inner { justify-content:center; }.by3-topbar__inner>span,.by3-topbar__contact a:first-child { display:none; }
    .by3-header__inner { min-height:78px; }.by3-header__logo img { width:146px; }.by3-header__button { min-height:39px; padding:0 12px; font-size:.63rem; }
    .by3-hero { min-height:760px; }.by3-hero__inner { width:min(calc(100% - 30px),1280px); padding-top:170px; padding-bottom:62px; }.by3-hero h1 { font-size:clamp(3.35rem,16vw,5rem); }.by3-hero__lead { font-size:.9rem; }
    .by3-actions { flex-direction:column; align-items:flex-start; }.by3-btn { width:min(100%,250px); }.by3-hero__media::after { background:linear-gradient(90deg,rgba(8,38,25,.94),rgba(8,38,25,.62)),linear-gradient(0deg,rgba(8,38,25,.58),transparent); }
    .by3-assurance__grid { grid-template-columns:1fr 1fr; }.by3-assurance__item:nth-child(3),.by3-assurance__item:nth-child(4) { border-top:1px solid var(--by3-line); }
    .by3-about,.by3-services,.by3-quality,.by3-gallery,.by3-contact { padding:82px 0; }.by3-about__visual { padding:0 28px 28px 0; }.by3-about__visual img { height:470px; }.by3-about__seal { width:86px; height:86px; font-size:.5rem; }
    .by3-about h2,.by3-services h2,.by3-quality h2 { font-size:clamp(2.8rem,13vw,4.1rem); }.by3-about__facts { grid-template-columns:1fr; }
    .by3-services__head { grid-template-columns:1fr; gap:24px; }.by3-services__head>p { margin:0; }.by3-services__grid { grid-template-columns:1fr; }.by3-service { grid-template-columns:54px 1fr; gap:16px; min-height:0; padding:28px 24px; }
    .by3-quality__item { grid-template-columns:1fr; gap:12px; }.by3-gallery__head { display:block; }.by3-gallery__head p { margin-top:18px; }.by3-gallery__grid { grid-template-columns:1fr 1fr; gap:8px; }
    .by3-gallery figure,.by3-gallery figure:nth-child(2) { height:390px; }.by3-gallery figure:nth-child(3) { grid-column:1/3; height:470px; }
    .by3-contact h2 { font-size:clamp(3.1rem,14vw,4.8rem); }.by3-footer__inner { grid-template-columns:1fr; }
    .by3-loader__logo { width:250px; }
}
@media (prefers-reduced-motion:reduce) {
    html { scroll-behavior:auto; }.by3 *,.by3 *::before,.by3 *::after { animation-duration:.01ms!important; animation-delay:0s!important; transition-duration:.01ms!important; }.by3-loader { display:none; }.by3-reveal { opacity:1; transform:none; }.by5-soup-follower { display:none; }
}
@keyframes by4-stage-mobile { to { opacity:1; transform:translateX(-50%) scale(1); } }

/* V6 — cinematic corporate catering */
.v6 { --cream:#f1f6f2; --accent:#6e927b; --leaf:#8cab79; --deep:#061f15; --green:#103e2c; overflow:clip; background:var(--cream); color:#142219; }
.v6 img { width:100%; height:100%; object-fit:cover; }.v6-shell { width:min(calc(100% - 64px),1320px); margin-inline:auto; }
.v6-kicker { display:flex; align-items:center; gap:12px; margin:0 0 22px; color:var(--leaf); font:600 .62rem/1 var(--by3-mono); letter-spacing:.17em; text-transform:uppercase; }.v6-kicker::before { width:38px; height:1px; background:currentColor; content:""; }
.v6-display { margin:0; font:500 clamp(3.8rem,7vw,7.8rem)/.86 var(--by3-serif); letter-spacing:-.055em; }.v6-display em { color:var(--leaf); font-style:italic; }
.v6-preloader { position:fixed; z-index:99999; inset:0; display:grid; place-items:center; overflow:hidden; background:radial-gradient(circle at center,#164732,#061f15 68%); color:#fff; animation:v6-loader-out .75s 2s cubic-bezier(.76,0,.24,1) forwards; }.v6-preloader::before { position:absolute; inset:24px; border:1px solid rgba(255,255,255,.12); content:""; }
.v6-preloader__inner { width:min(calc(100% - 48px),640px); text-align:center; }.v6-preloader__logo { width:190px!important; height:auto!important; margin:0 auto 4px; opacity:.8; }.v6-preloader__tray { width:460px!important; max-width:84vw; height:auto!important; margin:auto; filter:drop-shadow(0 34px 42px rgba(0,0,0,.38)); opacity:0; transform:translateY(30px) scale(.9); animation:v6-tray-in .8s .15s cubic-bezier(.2,.8,.2,1) forwards,v6-tray-away .9s 1.55s cubic-bezier(.76,0,.24,1) forwards; }
.v6-preloader__copy { margin:-16px 0 0; font:500 clamp(2.1rem,5vw,3.5rem)/1 var(--by3-serif); }.v6-preloader__meta { display:flex; justify-content:space-between; width:min(100%,390px); margin:24px auto 0; padding-top:13px; border-top:1px solid rgba(255,255,255,.25); color:rgba(255,255,255,.55); font:500 .52rem/1 var(--by3-mono); letter-spacing:.14em; text-transform:uppercase; }
.v6-hero { position:relative; min-height:100svh; color:#fff; background:var(--deep); isolation:isolate; }.v6-hero__media { position:absolute; z-index:-2; inset:0; overflow:hidden; }.v6-hero__media img { position:absolute; inset:-8%; width:116%; height:116%; object-position:center 48%; transform:translate3d(0,var(--parallax-y,0),0) scale(1.03); }.v6-hero__media::after { position:absolute; inset:0; background:linear-gradient(90deg,rgba(6,31,21,.96) 0%,rgba(6,31,21,.82) 42%,rgba(6,31,21,.28) 76%),linear-gradient(0deg,rgba(6,31,21,.72),transparent 58%); content:""; }
.v6-hero__grid { display:grid; grid-template-columns:minmax(0,820px) 1fr; align-items:end; gap:70px; min-height:100svh; padding-top:190px; padding-bottom:76px; }.v6-hero__content { position:relative; z-index:3; }.v6-hero .v6-display { max-width:900px; font-size:clamp(4.8rem,8.2vw,9.2rem); }.v6-hero__lead { max-width:620px; margin:28px 0 0; color:rgba(255,255,255,.72); font-size:1rem; line-height:1.75; }
.v6-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; }.v6-btn { display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:0 24px; border:1px solid rgba(255,255,255,.5); color:#fff!important; font-size:.72rem; font-weight:700; transition:background .25s,color .25s,transform .25s; }.v6-btn--solid { border-color:#fff; background:#fff; color:var(--deep)!important; }.v6-btn:hover { transform:translateY(-2px); }.v6-btn--solid:hover { background:var(--accent); border-color:var(--accent); }
.v6-hero__side { align-self:end; padding:25px 0 8px 26px; border-left:1px solid rgba(255,255,255,.28); }.v6-hero__side strong { display:block; font:500 3.8rem/1 var(--by3-serif); }.v6-hero__side span { display:block; margin-top:9px; color:rgba(255,255,255,.58); font:.58rem/1.5 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }
.v6-trust { color:#fff; background:var(--green); }.v6-trust__grid { display:grid; grid-template-columns:repeat(4,1fr); }.v6-trust__item { display:flex; align-items:center; gap:16px; min-height:116px; padding:24px; border-left:1px solid rgba(255,255,255,.14); }.v6-trust__item:last-child { border-right:1px solid rgba(255,255,255,.14); }.v6-trust__item svg { width:28px; height:28px; fill:none; stroke:var(--leaf); stroke-width:1.6; }.v6-trust__item strong { display:block; font-size:.78rem; }.v6-trust__item span { display:block; margin-top:5px; color:rgba(255,255,255,.55); font-size:.64rem; }
.v6-intro { padding:150px 0 170px; }.v6-intro__head { display:grid; grid-template-columns:1.35fr .65fr; align-items:end; gap:90px; }.v6-intro__head>p { margin:0 0 10px; color:#5f6d64; font-size:.94rem; line-height:1.85; }.v6-intro__visual { position:relative; display:grid; grid-template-columns:1.3fr .7fr; gap:24px; margin-top:100px; }.v6-photo { overflow:hidden; }.v6-photo img { height:120%; transform:translate3d(0,var(--parallax-y,0),0); }.v6-intro__main { height:650px; }.v6-intro__small { height:340px; }.v6-intro__aside { display:flex; flex-direction:column; justify-content:flex-end; gap:24px; }.v6-quote { padding:28px 0 8px; border-top:1px solid #bdc8c0; color:var(--green); font:500 2.2rem/1.05 var(--by3-serif); }
.v6-services { padding:150px 0; color:#fff; background:var(--deep); }.v6-services__head { display:grid; grid-template-columns:1fr 420px; align-items:end; gap:80px; margin-bottom:76px; }.v6-services__head>p { margin:0 0 10px; color:rgba(255,255,255,.55); font-size:.9rem; line-height:1.8; }.v6-service { display:grid; grid-template-columns:70px 340px 1fr; align-items:center; gap:42px; min-height:245px; padding:30px 0; border-top:1px solid rgba(255,255,255,.18); }.v6-service__no { color:var(--leaf); font:.65rem var(--by3-mono); }.v6-service__photo { height:185px; overflow:hidden; }.v6-service__photo img { height:130%; transform:translate3d(0,var(--parallax-y,0),0); }.v6-service__copy { display:grid; grid-template-columns:1fr 220px; align-items:center; gap:30px; }.v6-service h3 { margin:0; font:500 clamp(2.2rem,4vw,4.3rem)/.95 var(--by3-serif); }.v6-service p { margin:0; color:rgba(255,255,255,.55); font-size:.78rem; line-height:1.75; }
.v6-impact { position:relative; min-height:720px; display:flex; align-items:end; overflow:hidden; color:#fff; background:var(--deep); }.v6-impact__media { position:absolute; inset:-12%; }.v6-impact__media img { transform:translate3d(0,var(--parallax-y,0),0); }.v6-impact__media::after { position:absolute; inset:0; background:linear-gradient(0deg,rgba(6,31,21,.94),rgba(6,31,21,.12) 70%); content:""; }.v6-impact__content { position:relative; z-index:2; padding-bottom:70px; }.v6-stats { display:grid; grid-template-columns:repeat(3,1fr); margin-top:54px; border-top:1px solid rgba(255,255,255,.28); }.v6-stat { padding:32px 30px 0 0; }.v6-stat strong { display:block; font:500 clamp(3rem,6vw,6.5rem)/1 var(--by3-serif); }.v6-stat span { color:rgba(255,255,255,.6); font:.58rem var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }
.v6-process { padding:150px 0; background:#fff; }.v6-process__grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:120px; }.v6-process__sticky { position:sticky; top:130px; align-self:start; }.v6-process__sticky>p:last-child { max-width:440px; color:#69756d; line-height:1.8; }.v6-step { display:grid; grid-template-columns:70px 1fr; gap:28px; padding:38px 0; border-top:1px solid #d5ddd7; }.v6-step__no { color:var(--green); font:.64rem var(--by3-mono); }.v6-step h3 { margin:0 0 12px; font:500 2.4rem/1 var(--by3-serif); }.v6-step p { margin:0; color:#6c776f; font-size:.84rem; line-height:1.75; }
.v6-gallery { padding:140px 0; }.v6-gallery__grid { display:grid; grid-template-columns:1.1fr .9fr; grid-template-rows:420px 520px; gap:22px; margin-top:70px; }.v6-gallery__item { position:relative; overflow:hidden; }.v6-gallery__item:first-child { grid-row:1/3; }.v6-gallery__item img { height:120%; transform:translate3d(0,var(--parallax-y,0),0); }.v6-gallery__caption { position:absolute; right:16px; bottom:16px; left:16px; padding:15px 17px; background:rgba(6,31,21,.74); color:#fff; font:.58rem var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; backdrop-filter:blur(12px); }
.v6-cta { padding:140px 0; color:#fff; background:var(--green); }.v6-cta__grid { display:grid; grid-template-columns:1fr auto; align-items:end; gap:80px; }.v6-cta__contact { display:flex; flex-direction:column; align-items:flex-start; gap:14px; }.v6-cta__contact>a:not(.v6-btn) { color:#fff; font:500 1.8rem var(--by3-serif); }
.v6-tray-journey { --jx:calc(100vw - 185px); --jy:66vh; --jr:0deg; --jo:0; position:fixed; z-index:23; top:0; left:0; width:165px; pointer-events:none; opacity:var(--jo); transform:translate3d(var(--jx),var(--jy),0) rotate(var(--jr)); filter:drop-shadow(0 24px 20px rgba(6,31,21,.27)); will-change:transform; }.v6-tray-journey img { height:auto; }.v6-reveal { opacity:0; transform:translateY(38px); transition:opacity .8s ease,transform .8s cubic-bezier(.2,.75,.2,1); }.v6-reveal.is-visible { opacity:1; transform:none; }
@keyframes v6-tray-in { to { opacity:1; transform:none; } } @keyframes v6-tray-away { to { opacity:0; transform:translate(34vw,40vh) scale(.32) rotate(8deg); } } @keyframes v6-loader-out { to { opacity:0; visibility:hidden; } }
@media (max-width:1024px) { .v6-hero__grid { grid-template-columns:1fr; }.v6-hero__side { display:none; }.v6-intro__head,.v6-services__head { grid-template-columns:1fr; gap:28px; }.v6-service { grid-template-columns:55px 280px 1fr; gap:28px; }.v6-service__copy { grid-template-columns:1fr; }.v6-process__grid { gap:60px; }.v6-tray-journey { width:120px; } }
@media (max-width:767px) { .v6-shell { width:min(calc(100% - 30px),1320px); }.v6-preloader__tray { width:330px!important; }.v6-preloader__logo { width:145px!important; }.v6-hero { min-height:850px; }.v6-hero__grid { min-height:850px; padding-top:170px; padding-bottom:55px; }.v6-hero .v6-display { font-size:clamp(4rem,19vw,5.7rem); }.v6-hero__lead { font-size:.88rem; }.v6-actions { flex-direction:column; }.v6-trust__grid { grid-template-columns:1fr 1fr; }.v6-trust__item { min-height:102px; padding:17px 12px; }.v6-intro,.v6-services,.v6-process,.v6-gallery,.v6-cta { padding:95px 0; }.v6-display { font-size:clamp(3.3rem,15vw,5rem); }.v6-intro__head { display:block; }.v6-intro__head>p { margin-top:28px; }.v6-intro__visual { display:block; margin-top:58px; }.v6-intro__main { height:500px; }.v6-intro__aside { margin-top:16px; }.v6-intro__small { height:300px; }.v6-service { grid-template-columns:40px 1fr; gap:14px; }.v6-service__photo,.v6-service__copy { grid-column:1/3; }.v6-service__photo { height:240px; }.v6-impact { min-height:700px; }.v6-stats { grid-template-columns:1fr; }.v6-stat { padding:20px 0; border-bottom:1px solid rgba(255,255,255,.18); }.v6-process__grid { grid-template-columns:1fr; gap:40px; }.v6-process__sticky { position:relative; top:auto; }.v6-gallery__grid { display:block; }.v6-gallery__item { height:410px; margin-top:16px; }.v6-cta__grid { grid-template-columns:1fr; gap:48px; }.v6-tray-journey { width:88px; } }
@media (prefers-reduced-motion:reduce) { .v6-preloader,.v6-tray-journey { display:none; }.v6-reveal { opacity:1; transform:none; } }
.v6-preloader,.v6-preloader__tray { animation:none; }
.v6.v6-run .v6-preloader { animation:v6-loader-out .65s 2.25s cubic-bezier(.76,0,.24,1) forwards; }
.v6.v6-run .v6-preloader__tray { animation:v6-tray-sequence 2.35s cubic-bezier(.2,.75,.2,1) forwards; }
@keyframes v6-tray-sequence { 0% { opacity:0; transform:translateY(30px) scale(.9); } 18%,62% { opacity:1; transform:translateY(0) scale(1); } 100% { opacity:0; transform:translate(34vw,40vh) scale(.32) rotate(8deg); } }

/* V7 — white corporate editorial */
body:has(.v7) { background:#fff; }
body:has(.v7) .by3-theme-main { background:#fff; box-shadow:0 1px 0 rgba(9,54,36,.1); }
body:has(.v7) .by3-theme-main-inner { border-bottom:0; }
body:has(.v7) .by3-theme-nav .elementor-nav-menu--main .elementor-item { color:#0b3a27!important; }
body:has(.v7) .by3-theme-cta .elementor-button { border-color:#0b3a27; color:#0b3a27; }
body:has(.v7) .by3-theme-cta .elementor-button:hover { background:#0b3a27; color:#fff; }
body:has(.v7) .by3-theme-nav .elementor-menu-toggle { color:#0b3a27!important; background:transparent!important; }
body:has(.v7) .by3-theme-nav .elementor-menu-toggle svg { fill:#0b3a27!important; }
.v7 { --forest:#0b3a27; --leaf:#668a72; --mint:#e5ede7; --paper:#f7f8f5; --accent:#6e927b; --ink:#17241d; overflow:clip; background:#fff; color:var(--ink); }
.v7 * { box-sizing:border-box; }.v7 img { display:block; width:100%; height:100%; object-fit:cover; }.v7-shell { width:min(calc(100% - 64px),1320px); margin-inline:auto; }
.v7-label { display:flex; align-items:center; gap:12px; margin:0 0 22px; color:var(--leaf); font:600 .61rem/1 var(--by3-mono); letter-spacing:.16em; text-transform:uppercase; }.v7-label::before { width:32px; height:2px; background:var(--accent); content:""; }
.v7-title { margin:0; color:var(--forest); font:500 clamp(4rem,7vw,7.7rem)/.88 var(--by3-serif); letter-spacing:-.055em; }.v7-title em { color:var(--leaf); font-style:italic; }
.v7-preloader { position:fixed; z-index:99999; inset:0; display:grid; place-items:center; overflow:hidden; background:#fff; color:var(--forest); animation:v7-loader-out .7s 2.1s cubic-bezier(.76,0,.24,1) forwards; }.v7-preloader::before { position:absolute; top:0; left:0; width:100%; height:5px; background:linear-gradient(90deg,var(--forest) 0,var(--forest) var(--load,0%),var(--mint) var(--load,0%)); content:""; }
.v7-preloader__inner { width:min(calc(100% - 50px),620px); text-align:center; }.v7-preloader__logo { width:190px!important; height:auto!important; margin:0 auto 8px; }.v7-preloader__tray { width:430px!important; max-width:82vw; height:auto!important; margin:auto; filter:drop-shadow(0 28px 32px rgba(11,58,39,.16)); animation:v7-tray-load 2.2s cubic-bezier(.2,.75,.2,1) forwards; }.v7-preloader__meta { display:flex; justify-content:space-between; width:min(100%,420px); margin:0 auto; padding-top:12px; border-top:1px solid #d8e1db; color:var(--leaf); font:600 .52rem/1 var(--by3-mono); letter-spacing:.13em; text-transform:uppercase; }
.v7-hero { padding:190px 0 90px; background:#fff; }.v7-hero__grid { display:grid; grid-template-columns:minmax(0,.96fr) minmax(480px,.82fr); align-items:center; gap:74px; min-height:720px; }.v7-hero__copy { position:relative; z-index:4; }.v7-hero .v7-title { max-width:760px; font-size:clamp(5.1rem,7.6vw,8.8rem); }.v7-hero__lead { max-width:600px; margin:30px 0 0; color:#647169; font-size:.98rem; line-height:1.8; }
.v7-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }.v7-btn { display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:0 24px; border:1px solid var(--forest); color:var(--forest)!important; font-size:.72rem; font-weight:700; transition:.25s ease; }.v7-btn--solid { background:var(--forest); color:#fff!important; }.v7-btn:hover { transform:translateY(-2px); background:var(--mint); }.v7-btn--solid:hover { color:#fff!important; background:#052b1c; border-color:#052b1c; }
.v7-hero__visual { position:relative; height:690px; }.v7-hero__frame { position:absolute; inset:0 0 36px 38px; overflow:hidden; border-radius:2px 88px 2px 2px; }.v7-hero__frame img { height:116%; transform:translate3d(0,var(--v7-py,0),0); object-position:center 42%; }.v7-hero__frame::after { position:absolute; inset:0; background:linear-gradient(0deg,rgba(11,58,39,.34),transparent 48%); content:""; }.v7-hero__tray { position:absolute; z-index:3; right:-70px; bottom:-40px; width:310px!important; height:auto!important; filter:drop-shadow(0 25px 28px rgba(11,58,39,.2)); transform:rotate(-4deg); }.v7-hero__note { position:absolute; z-index:4; bottom:62px; left:-26px; width:210px; padding:20px; background:#fff; box-shadow:0 20px 55px rgba(13,50,35,.14); }.v7-hero__note strong { display:block; color:var(--forest); font:500 2.7rem/1 var(--by3-serif); }.v7-hero__note span { color:#738078; font:.54rem/1.5 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }
.v7-proof { border-top:1px solid #dae1dc; border-bottom:1px solid #dae1dc; }.v7-proof__grid { display:grid; grid-template-columns:1.2fr repeat(3,1fr); }.v7-proof__intro,.v7-proof__item { min-height:132px; padding:30px; border-left:1px solid #dae1dc; }.v7-proof__intro { display:flex; align-items:center; color:#536159; font-size:.78rem; line-height:1.6; }.v7-proof__item:last-child { border-right:1px solid #dae1dc; }.v7-proof__item strong { display:block; color:var(--forest); font:500 2rem/1 var(--by3-serif); }.v7-proof__item span { display:block; margin-top:9px; color:#718078; font-size:.65rem; }
.v7-manifesto { padding:155px 0; background:var(--paper); }.v7-manifesto__head { display:grid; grid-template-columns:1.25fr .75fr; align-items:end; gap:100px; }.v7-manifesto__head>p { margin:0 0 10px; color:#647269; font-size:.92rem; line-height:1.85; }.v7-manifesto__media { position:relative; height:720px; margin-top:90px; overflow:hidden; }.v7-manifesto__media img { height:122%; transform:translate3d(0,var(--v7-py,0),0); object-position:center 38%; }.v7-manifesto__caption { position:absolute; right:0; bottom:0; width:min(420px,42%); padding:30px 34px; background:#fff; color:var(--forest); font:500 2rem/1.08 var(--by3-serif); }
.v7-services { padding:150px 0; }.v7-services__head { display:flex; justify-content:space-between; align-items:end; gap:60px; margin-bottom:70px; }.v7-services__head>p { max-width:400px; margin:0 0 10px; color:#66736b; line-height:1.75; }.v7-services__grid { display:grid; grid-template-columns:1.1fr .9fr; grid-template-rows:420px 420px; gap:20px; }.v7-service { position:relative; overflow:hidden; min-height:0; background:var(--paper); }.v7-service:first-child { grid-row:1/3; }.v7-service img { height:116%; transform:translate3d(0,var(--v7-py,0),0); transition:scale .55s; }.v7-service:hover img { scale:1.035; }.v7-service::after { position:absolute; inset:0; background:linear-gradient(0deg,rgba(9,47,32,.88),transparent 64%); content:""; }.v7-service__copy { position:absolute; z-index:2; right:0; bottom:0; left:0; padding:34px; color:#fff; }.v7-service__copy span { font:.56rem var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }.v7-service__copy h3 { margin:10px 0 0; font:500 clamp(2rem,3.7vw,4.2rem)/.95 var(--by3-serif); }.v7-service__copy p { max-width:480px; margin:12px 0 0; color:rgba(255,255,255,.68); font-size:.76rem; line-height:1.65; }
.v7-model { padding:150px 0; background:var(--forest); color:#fff; }.v7-model .v7-title { color:#fff; }.v7-model__grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:120px; }.v7-model__sticky { position:sticky; top:140px; align-self:start; }.v7-model__sticky>p:last-child { color:rgba(255,255,255,.58); line-height:1.8; }.v7-step { display:grid; grid-template-columns:76px 1fr; gap:28px; padding:38px 0; border-top:1px solid rgba(255,255,255,.19); }.v7-step__no { color:#b8d1c2; font:.62rem var(--by3-mono); }.v7-step h3 { margin:0 0 12px; font:500 2.45rem/1 var(--by3-serif); }.v7-step p { margin:0; color:rgba(255,255,255,.58); font-size:.82rem; line-height:1.75; }
.v7-gallery { padding:150px 0; background:#fff; }.v7-gallery__track { display:grid; grid-template-columns:.75fr 1.15fr .8fr; align-items:end; gap:20px; margin-top:70px; }.v7-gallery__item { overflow:hidden; }.v7-gallery__item:nth-child(1) { height:500px; }.v7-gallery__item:nth-child(2) { height:690px; }.v7-gallery__item:nth-child(3) { height:430px; }.v7-gallery__item img { height:120%; transform:translate3d(0,var(--v7-py,0),0); }
.v7-cta { padding:125px 0; background:var(--mint); }.v7-cta__grid { display:grid; grid-template-columns:1fr auto; align-items:end; gap:80px; }.v7-cta__contact { display:flex; flex-direction:column; align-items:flex-start; gap:14px; }.v7-cta__contact>a:not(.v7-btn) { color:var(--forest); font:500 1.75rem var(--by3-serif); }
.v7-reveal { opacity:0; transform:translateY(34px); transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.2,1); }.v7-reveal.is-visible { opacity:1; transform:none; }
@keyframes v7-tray-load { 0% { opacity:0; transform:translateY(22px) scale(.92); } 18%,68% { opacity:1; transform:none; } 100% { opacity:0; transform:translate(36vw,36vh) scale(.35) rotate(7deg); } } @keyframes v7-loader-out { to { opacity:0; visibility:hidden; transform:translateY(-3%); } }
@media (max-width:1024px) { .v7-hero__grid { grid-template-columns:1fr; }.v7-hero__visual { height:620px; }.v7-manifesto__head { grid-template-columns:1fr; gap:28px; }.v7-model__grid { gap:55px; }.v7-hero__tray { right:-20px; } }
@media (max-width:767px) { body:has(.v7) .by3-theme-main { background:#fff; }.v7-shell { width:min(calc(100% - 30px),1320px); }.v7-preloader__tray { width:320px!important; }.v7-preloader__logo { width:150px!important; }.v7-hero { padding:165px 0 70px; }.v7-hero__grid { display:block; min-height:auto; }.v7-hero .v7-title { font-size:clamp(4.4rem,20vw,6rem); }.v7-hero__lead { font-size:.88rem; }.v7-actions { flex-direction:column; }.v7-hero__visual { height:560px; margin-top:58px; }.v7-hero__frame { inset:0 0 35px; border-radius:2px 54px 2px 2px; }.v7-hero__tray { right:-40px; bottom:-5px; width:190px!important; }.v7-hero__note { bottom:18px; left:-5px; width:165px; padding:15px; }.v7-proof__grid { grid-template-columns:1fr 1fr; }.v7-proof__intro,.v7-proof__item { min-height:108px; padding:18px 14px; }.v7-manifesto,.v7-services,.v7-model,.v7-gallery,.v7-cta { padding:95px 0; }.v7-title { font-size:clamp(3.6rem,16vw,5.2rem); }.v7-manifesto__media { height:540px; margin-top:55px; }.v7-manifesto__caption { width:86%; padding:22px; }.v7-services__head { display:block; }.v7-services__head>p { margin-top:24px; }.v7-services__grid { display:block; }.v7-service { height:430px; margin-top:16px; }.v7-model__grid { grid-template-columns:1fr; }.v7-model__sticky { position:relative; top:auto; }.v7-gallery__track { display:block; }.v7-gallery__item,.v7-gallery__item:nth-child(n) { height:440px; margin-top:15px; }.v7-cta__grid { grid-template-columns:1fr; gap:44px; } }
@media (prefers-reduced-motion:reduce) { .v7-preloader { display:none; }.v7-reveal { opacity:1; transform:none; } }

/* V8 — next-generation hero / catering operation line */
.v8-hero { position:relative; min-height:930px; overflow:hidden; padding:190px 0 70px; background:#fff; isolation:isolate; }
.v8-hero::before { position:absolute; z-index:-2; top:0; right:0; width:42%; height:100%; background:linear-gradient(155deg,#edf3ef,#dfeae3); content:""; }
.v8-hero::after { position:absolute; z-index:-1; top:148px; right:-160px; width:620px; height:620px; border:1px solid rgba(11,58,39,.13); border-radius:50%; content:""; }
.v8-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(460px,.75fr); align-items:center; gap:72px; min-height:660px; }
.v8-copy { position:relative; z-index:6; padding-bottom:80px; }
.v8-eyebrow { display:flex; align-items:center; gap:13px; margin:0 0 28px; color:#668a72; font:600 .62rem/1 var(--by3-mono); letter-spacing:.16em; text-transform:uppercase; opacity:0; animation:v8-rise .65s 2.25s ease forwards; }.v8-eyebrow::before { width:38px; height:2px; background:#6e927b; content:""; }
.v8-hero h1 { max-width:780px; margin:0; color:#0b3a27; font:750 clamp(4.6rem,7.2vw,8rem)/.85 var(--by3-sans); letter-spacing:-.075em; }
.v8-hero h1 span,.v8-hero h1 em { display:block; opacity:0; transform:translateY(32px); animation:v8-rise .78s cubic-bezier(.2,.78,.2,1) forwards; }.v8-hero h1 span { animation-delay:2.35s; }.v8-hero h1 em { margin-top:8px; color:#73947e; font:500 1.08em/.82 var(--by3-serif); letter-spacing:-.06em; animation-delay:2.48s; }
.v8-lead { max-width:590px; margin:30px 0 0; color:#65726a; font-size:.96rem; line-height:1.78; opacity:0; animation:v8-fade .7s 2.62s forwards; }
.v8-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; opacity:0; animation:v8-fade .7s 2.74s forwards; }
.v8-proofline { display:flex; align-items:center; gap:18px; margin-top:42px; color:#65726a; font:.58rem var(--by3-mono); letter-spacing:.09em; text-transform:uppercase; opacity:0; animation:v8-fade .7s 2.86s forwards; }.v8-proofline i { position:relative; width:72px; height:1px; background:#ccd8d0; }.v8-proofline i::after { position:absolute; top:-3px; left:0; width:7px; height:7px; border-radius:50%; background:#0b3a27; content:""; animation:v8-line-dot 2.8s 3s ease-in-out infinite; }
.v8-visual { position:relative; height:665px; opacity:0; transform:translateX(34px); animation:v8-visual-in .95s 2.35s cubic-bezier(.2,.76,.2,1) forwards; }
.v8-main-photo { position:absolute; inset:0 -18px 36px 18px; overflow:hidden; clip-path:polygon(0 12%,100% 0,100% 88%,0 100%); filter:drop-shadow(0 30px 55px rgba(11,58,39,.16)); }.v8-main-photo img { height:122%; object-position:center 45%; transform:translate3d(0,var(--v7-py,0),0); }
.v8-main-photo::after { position:absolute; inset:0; background:linear-gradient(0deg,rgba(6,39,25,.32),transparent 48%); content:""; }
.v8-orbit { position:absolute; z-index:2; top:28px; right:-38px; width:185px; height:185px; border:1px solid rgba(11,58,39,.3); border-radius:50%; animation:v8-spin 22s linear infinite; }.v8-orbit::before,.v8-orbit::after { position:absolute; border-radius:50%; content:""; }.v8-orbit::before { inset:13px; border:1px dashed rgba(11,58,39,.24); }.v8-orbit::after { top:19px; left:27px; width:9px; height:9px; background:#6e927b; }
.v8-mini-photo { position:absolute; z-index:4; bottom:18px; left:-82px; width:190px; height:190px; overflow:hidden; border:12px solid #fff; border-radius:50%; box-shadow:0 20px 48px rgba(11,58,39,.17); }.v8-mini-photo img { height:115%; object-position:center; transform:translate3d(0,var(--v7-py,0),0); }
.v8-stamp { position:absolute; z-index:5; right:-14px; bottom:58px; padding:16px 18px; color:#fff; background:#0b3a27; box-shadow:0 18px 42px rgba(11,58,39,.2); }.v8-stamp strong { display:block; font:500 1.7rem/1 var(--by3-serif); }.v8-stamp span { display:block; margin-top:5px; color:rgba(255,255,255,.58); font:.5rem var(--by3-mono); letter-spacing:.11em; text-transform:uppercase; }
.v8-flow { position:absolute; z-index:8; right:32px; bottom:42px; left:32px; display:grid; grid-template-columns:repeat(4,1fr); min-height:112px; background:rgba(255,255,255,.93); box-shadow:0 22px 60px rgba(11,58,39,.12); backdrop-filter:blur(14px); opacity:0; transform:translateY(22px); animation:v8-rise .75s 2.82s ease forwards; }
.v8-flow__item { position:relative; display:flex; flex-direction:column; justify-content:center; padding:19px 22px; border-right:1px solid #dbe3dd; }.v8-flow__item:last-child { border-right:0; }.v8-flow__item::before { position:absolute; top:0; left:0; width:0; height:3px; background:#6e927b; content:""; animation:v8-flow-line .55s ease forwards; }.v8-flow__item:nth-child(1)::before { animation-delay:3s; }.v8-flow__item:nth-child(2)::before { animation-delay:3.22s; }.v8-flow__item:nth-child(3)::before { animation-delay:3.44s; }.v8-flow__item:nth-child(4)::before { animation-delay:3.66s; }
.v8-flow__item b { color:#0b3a27; font:600 .68rem var(--by3-sans); }.v8-flow__item span { margin-top:6px; color:#748079; font:.49rem var(--by3-mono); letter-spacing:.09em; text-transform:uppercase; }
@keyframes v8-rise { to { opacity:1; transform:translateY(0); } } @keyframes v8-fade { to { opacity:1; } } @keyframes v8-visual-in { to { opacity:1; transform:translateX(0); } } @keyframes v8-spin { to { transform:rotate(360deg); } } @keyframes v8-flow-line { to { width:100%; } } @keyframes v8-line-dot { 0%,100% { left:0; } 50% { left:65px; } }
@media (max-width:1024px) { .v8-grid { grid-template-columns:1fr; }.v8-copy { padding-bottom:0; }.v8-visual { width:min(100%,650px); margin:0 auto; }.v8-flow { position:relative; right:auto; bottom:auto; left:auto; width:min(calc(100% - 64px),1320px); margin:-10px auto 0; }.v8-hero { padding-bottom:0; }.v8-hero::before { width:100%; height:47%; top:auto; bottom:0; } }
@media (max-width:767px) { .v8-hero { min-height:1320px; padding-top:164px; }.v8-grid { display:block; }.v8-hero h1 { font-size:clamp(4rem,18.5vw,5.4rem); }.v8-lead { font-size:.88rem; }.v8-actions { flex-direction:column; }.v8-proofline { margin-top:30px; }.v8-visual { width:100%; height:520px; margin-top:54px; }.v8-main-photo { inset:0 -4px 28px 0; }.v8-mini-photo { bottom:4px; left:-4px; width:132px; height:132px; border-width:8px; }.v8-orbit { top:12px; right:-54px; width:135px; height:135px; }.v8-stamp { right:-2px; bottom:34px; padding:13px 14px; }.v8-flow { grid-template-columns:1fr 1fr; width:calc(100% - 30px); margin:10px auto 0; }.v8-flow__item { min-height:88px; padding:14px; border-bottom:1px solid #dbe3dd; }.v8-hero::before { height:46%; } }
@media (prefers-reduced-motion:reduce) { .v8-hero * { animation-duration:.01ms!important; animation-delay:0s!important; }.v8-orbit { display:none; } }

/* V9 — independent corporate Theme Builder header */
.by3-theme-header { position:sticky!important; z-index:1000; top:0!important; left:auto; width:100%; color:#0b3a27; background:#fff; box-shadow:0 8px 30px rgba(11,58,39,.07); }
.elementor-location-header:has(.by3-theme-header) { position:sticky; z-index:1000; top:0; }
.elementor-location-header:has(.by3-theme-header) .by3-theme-header { position:relative!important; }
.admin-bar .by3-theme-header { top:32px!important; }
.admin-bar .elementor-location-header:has(.by3-theme-header) { top:32px; }
.by3-theme-topbar { min-height:32px; background:#0b3a27; color:rgba(255,255,255,.72); }
.by3-theme-topbar-inner { min-height:32px; }
.by3-theme-topbar-inner .elementor-widget-text-editor,.by3-theme-contact,.by3-theme-contact .elementor-widget-container { font-size:.61rem; }
.by3-theme-main { background:#fff!important; }
.by3-theme-main-inner { grid-template-columns:215px 1fr auto; min-height:84px; border-bottom:0; }
.by3-theme-logo img { width:178px!important; }
.by3-theme-nav .elementor-nav-menu--main .elementor-nav-menu { gap:8px; }
.by3-theme-nav .elementor-nav-menu--main .elementor-item { min-height:42px; padding:0 14px!important; border:0!important; border-radius:40px; color:#0b3a27!important; font-size:.7rem; transition:color .22s ease,background .22s ease; }
.by3-theme-nav .elementor-nav-menu--main .elementor-item:hover,.by3-theme-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { border:0; color:#0b3a27!important; background:#e5ede7; }
.by3-theme-cta .elementor-button { min-height:46px; padding:14px 18px!important; border:1px solid #0b3a27!important; border-radius:0; background:#0b3a27!important; color:#fff!important; }
.by3-theme-cta .elementor-button::after { margin-left:12px; content:"↗"; font-size:.85rem; }
.by3-theme-cta .elementor-button:hover { border-color:#052b1c!important; background:#052b1c!important; color:#fff!important; }
.v8-hero { padding-top:78px; }
@media (max-width:1024px) { .by3-theme-main-inner { position:relative; grid-template-columns:1fr auto!important; }.by3-theme-cta { display:none!important; }.by3-theme-nav { position:static!important; width:auto!important; justify-self:end; }.by3-theme-nav .elementor-widget-container,.by3-theme-nav nav { position:static!important; }.by3-theme-nav .elementor-menu-toggle { display:flex!important; align-items:center; justify-content:center; width:48px!important; height:48px!important; padding:0!important; border:1px solid #d7e1da!important; border-radius:50%!important; color:#0b3a27!important; background:#fff!important; }.by3-theme-nav .elementor-menu-toggle svg { fill:#0b3a27!important; }.by3-theme-nav .elementor-nav-menu--dropdown { position:absolute!important; z-index:20; top:100%!important; right:0!important; left:0!important; width:100%!important; min-width:100%!important; margin:0!important; padding:18px!important; border-top:1px solid #e0e7e2; background:#fff!important; box-shadow:0 18px 35px rgba(11,58,39,.1); }.by3-theme-nav .elementor-nav-menu--dropdown .elementor-nav-menu { display:grid!important; grid-template-columns:repeat(2,1fr); gap:4px; }.by3-theme-nav .elementor-nav-menu--dropdown .elementor-item { justify-content:flex-start; min-height:46px; padding:0 14px!important; color:#0b3a27!important; background:#f7f9f7; font-size:.72rem; } }
@media (max-width:767px) { .admin-bar .by3-theme-header { top:46px!important; }.by3-theme-topbar { min-height:30px; }.by3-theme-topbar-inner { min-height:30px; }.by3-theme-topbar-inner>.elementor-element:first-child { display:none; }.by3-theme-contact .elementor-widget-container a:first-child { display:none; }.by3-theme-main-inner { grid-template-columns:1fr auto; min-height:72px; }.by3-theme-logo img { width:150px!important; }.by3-theme-nav { justify-self:end; }.by3-theme-nav .elementor-menu-toggle { width:48px!important; height:48px!important; padding:0!important; border:1px solid #d7e1da!important; border-radius:50%!important; color:#0b3a27!important; background:#fff!important; }.by3-theme-nav .elementor-menu-toggle svg { fill:#0b3a27!important; }.v8-hero { padding-top:58px; } }
@media (max-width:520px) { .by3-theme-nav .elementor-nav-menu--dropdown .elementor-nav-menu { grid-template-columns:1fr; } }

/* V10 — icon-led animated Theme Builder header */
.elementor-location-header:has(.v10-header) { position:sticky; z-index:1200; top:0; }
.elementor-location-header:has(.v10-header)>.elementor { width:100%; }
.v10-elementor-root,.v10-elementor-root>.e-con-inner,.v10-elementor-root .elementor-widget-html,.v10-elementor-root .elementor-widget-container { width:100%!important; max-width:none!important; margin:0!important; padding:0!important; }
.v10-header { --h-green:#0a3d29; --h-leaf:#6e927b; --h-mint:#e9f0eb; position:relative; width:100%; font-family:var(--by3-sans); }
.v10-shell { width:min(calc(100% - 56px),1320px); margin-inline:auto; }
.v10-top { overflow:hidden; max-height:42px; color:#fff; background:linear-gradient(100deg,#073522 0%,#0b4931 58%,#0a3d29 100%); transition:max-height .35s ease,opacity .3s ease; }
.v10-top__inner { display:flex; justify-content:space-between; align-items:center; gap:24px; min-height:42px; }
.v10-brandline { display:flex; align-items:center; min-width:0; color:rgba(255,255,255,.9); font-size:.68rem; font-weight:500; line-height:1.35; letter-spacing:.01em; white-space:nowrap; }
.v10-top__links { display:flex; align-items:center; gap:17px; flex:0 0 auto; }.v10-top__links a { display:inline-flex; align-items:center; gap:7px; margin:-6px -8px; padding:6px 8px; border-radius:8px; color:rgba(255,255,255,.72); font-size:.59rem; white-space:nowrap; transition:color .2s ease,background .2s ease,transform .2s ease; }.v10-top__links a:hover,.v10-top__links a:focus-visible { color:#fff; background:#052b1c; transform:translateY(-1px); }.v10-top__links a:hover svg,.v10-top__links a:focus-visible svg { color:#fff; }.v10-top__links svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:color .2s ease; }
.v10-main { padding:10px 0; border-bottom:1px solid rgba(10,61,41,.08); background:rgba(255,255,255,.9); backdrop-filter:blur(18px); transition:padding .3s ease,box-shadow .3s ease; }
.v10-main__inner { position:relative; display:grid; grid-template-columns:205px 1fr auto; align-items:center; gap:30px; min-height:72px; padding:0 14px 0 20px; border:1px solid rgba(10,61,41,.09); border-radius:20px; background:#fff; box-shadow:0 12px 38px rgba(10,61,41,.07); transition:min-height .3s ease,border-radius .3s ease,box-shadow .3s ease; }
.v10-logo { display:block; width:174px; }.v10-logo img { display:block; width:100%; height:auto; }
.v10-nav { display:flex; justify-content:center; gap:5px; }
.v10-nav__link { display:flex; align-items:center; gap:8px; min-height:46px; padding:0 11px; border-radius:13px; color:#244a39; font-size:.68rem; font-weight:700; white-space:nowrap; transition:background .22s ease,color .22s ease,transform .22s ease; }
.v10-nav__icon { display:grid; place-items:center; width:28px; height:28px; border-radius:9px; color:var(--h-leaf); background:#f2f6f3; transition:color .22s,background .22s,transform .22s; }.v10-nav__icon svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.v10-nav__link:hover,.v10-nav__link:focus-visible { color:#052b1c; background:var(--h-mint); transform:translateY(-1px); }.v10-nav__link:focus-visible { outline:2px solid #052b1c; outline-offset:2px; }.v10-nav__link:hover .v10-nav__icon,.v10-nav__link:focus-visible .v10-nav__icon { color:#fff; background:#052b1c; transform:rotate(-5deg) scale(1.04); }
.v10-nav__group { position:relative; }.v10-nav__group>.v10-nav__link { height:100%; }.v10-chevron { width:12px!important; height:12px!important; margin-left:-3px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .22s; }.v10-nav__group:hover .v10-chevron,.v10-nav__group:focus-within .v10-chevron { transform:rotate(180deg); }
.v10-submenu { position:absolute; top:calc(100% + 14px); left:50%; z-index:20; width:330px; padding:12px; border:1px solid #dce6df; border-radius:18px; background:rgba(255,255,255,.98); box-shadow:0 24px 60px rgba(5,43,28,.18); opacity:0; visibility:hidden; transform:translate(-50%,-9px) scale(.98); transform-origin:top center; transition:opacity .2s,visibility .2s,transform .2s; }.v10-submenu::before { position:absolute; top:-15px; right:0; left:0; height:16px; content:""; }.v10-nav__group:hover .v10-submenu,.v10-nav__group:focus-within .v10-submenu { opacity:1; visibility:visible; transform:translate(-50%,0) scale(1); }.v10-submenu__label { display:block; padding:7px 10px 11px; color:#87998f; font-size:.52rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }.v10-submenu>a { display:grid; gap:3px; padding:10px; border-radius:10px; transition:background .18s,padding .18s; }.v10-submenu>a:hover,.v10-submenu>a:focus-visible { padding-left:14px; background:#edf3ef; }.v10-submenu>a b { color:#123f2c; font-size:.67rem; }.v10-submenu>a small { color:#84958b; font-size:.52rem; }.v10-submenu__legal { display:grid; grid-template-columns:repeat(3,1fr); gap:5px; margin-top:8px; padding-top:9px; border-top:1px solid #e4eae6; }.v10-submenu__legal a { padding:9px 6px; border-radius:8px; color:#4f6a5c; background:#f6f8f6; font-size:.5rem; font-weight:750; text-align:center; transition:color .18s,background .18s; }.v10-submenu__legal a:hover,.v10-submenu__legal a:focus-visible { color:#fff; background:#052b1c; }
.v10-cta { display:inline-flex; align-items:center; gap:11px; min-height:50px; padding:0 18px; border-radius:14px; color:#fff!important; background:var(--h-green); font-size:.68rem; font-weight:800; box-shadow:0 10px 24px rgba(10,61,41,.18); transition:background .22s,transform .22s,box-shadow .22s; }.v10-cta svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:color .22s ease,transform .22s ease; }.v10-cta:hover,.v10-cta:focus-visible { color:#fff!important; background:#052b1c; transform:translateY(-2px); box-shadow:0 14px 30px rgba(5,43,28,.28); }.v10-cta:focus-visible { outline:2px solid #052b1c; outline-offset:3px; }.v10-cta:hover svg,.v10-cta:focus-visible svg { color:#fff; transform:rotate(-6deg) scale(1.06); }
.v10-header button.v10-toggle,.v10-header button.v10-toggle:hover,.v10-header button.v10-toggle:focus,.v10-header button.v10-toggle:active { display:none; position:relative; width:48px; height:48px; padding:0; border:1px solid #dce5df!important; border-radius:15px; color:var(--h-green)!important; background:#fff!important; box-shadow:none!important; outline:none; cursor:pointer; -webkit-tap-highlight-color:transparent; }.v10-toggle span { position:absolute; left:14px; width:20px; height:2px; border-radius:4px; background:var(--h-green)!important; transition:transform .28s ease,top .28s ease,opacity .2s ease; }.v10-toggle span:nth-child(1) { top:16px; }.v10-toggle span:nth-child(2) { top:23px; }.v10-toggle span:nth-child(3) { top:30px; }.v10-toggle[aria-expanded="true"] span:nth-child(1) { top:23px; transform:rotate(45deg); }.v10-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }.v10-toggle[aria-expanded="true"] span:nth-child(3) { top:23px; transform:rotate(-45deg); }
.v10-header button.v10-toggle[aria-expanded="true"],.v10-header button.v10-toggle[aria-expanded="true"]:hover,.v10-header button.v10-toggle[aria-expanded="true"]:focus,.v10-header button.v10-toggle[aria-expanded="true"]:active { border-color:var(--h-green)!important; background:var(--h-green)!important; }.v10-header button.v10-toggle[aria-expanded="true"] span { background:#fff!important; }
.v10-mobile { position:absolute; top:calc(100% + 10px); right:0; left:0; display:grid; grid-template-columns:repeat(2,1fr); gap:8px; padding:14px; border:1px solid #dfe7e1; border-radius:18px; background:rgba(255,255,255,.98); box-shadow:0 22px 55px rgba(10,61,41,.16); opacity:0; visibility:hidden; transform:translateY(-12px) scale(.985); transform-origin:top; transition:opacity .25s ease,transform .25s ease,visibility .25s; }
.v10-header.is-menu-open .v10-mobile { opacity:1; visibility:visible; transform:none; }.v10-mobile a { display:flex; align-items:center; gap:11px; min-height:54px; padding:0 14px; border-radius:12px; color:var(--h-green); background:#f5f8f6; font-size:.72rem; font-weight:700; opacity:0; transform:translateY(-8px); }.v10-header.is-menu-open .v10-mobile a { opacity:1; transform:none; transition:opacity .28s ease,transform .28s ease,background .2s; }.v10-header.is-menu-open .v10-mobile a:nth-child(2) { transition-delay:.04s; }.v10-header.is-menu-open .v10-mobile a:nth-child(3) { transition-delay:.08s; }.v10-header.is-menu-open .v10-mobile a:nth-child(4) { transition-delay:.12s; }.v10-header.is-menu-open .v10-mobile a:nth-child(5) { transition-delay:.16s; }.v10-mobile a:hover,.v10-mobile a:focus-visible { color:#052b1c; background:var(--h-mint); }.v10-mobile a:focus-visible { outline:2px solid #052b1c; outline-offset:1px; }.v10-mobile svg { width:18px; height:18px; fill:none; stroke:var(--h-leaf); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }.v10-mobile__cta { grid-column:1/-1; justify-content:center!important; color:#fff!important; background:var(--h-green)!important; }.v10-mobile__cta:hover,.v10-mobile__cta:focus-visible { background:#052b1c!important; }
.v10-mobile__group { min-width:0; }.v10-mobile__parent { display:grid; grid-template-columns:1fr 48px; gap:4px; }.v10-mobile__parent>a { min-width:0; }.v10-header .v10-mobile__parent>button,.v10-header .v10-mobile__parent>button:hover,.v10-header .v10-mobile__parent>button:focus,.v10-header .v10-mobile__parent>button:active { display:grid; place-items:center; min-width:0; min-height:54px; padding:0!important; border:0!important; border-radius:12px!important; color:var(--h-green)!important; background:#eef4f0!important; box-shadow:none!important; outline:none; }.v10-mobile__parent>button .v10-chevron { width:14px!important; height:14px!important; margin:0; stroke:currentColor; transition:transform .22s; }.v10-mobile__parent>button[aria-expanded="true"] .v10-chevron { transform:rotate(180deg); }.v10-mobile__parent>button:focus-visible { outline:2px solid #052b1c!important; outline-offset:1px; }
.v10-mobile__submenu { display:grid; gap:4px; max-height:0; margin-top:0; padding:0 5px; opacity:0; overflow:hidden; transition:max-height .3s,opacity .2s,margin .25s,padding .25s; }.v10-mobile__group.is-submenu-open .v10-mobile__submenu { max-height:300px; margin-top:5px; padding:5px; border:1px solid #e0e8e2; border-radius:12px; opacity:1; }.v10-mobile__submenu a { min-height:39px; padding:0 11px; border-radius:8px; color:#5b7466; background:#fff; font-size:.61rem; }
.v10-header.is-compact .v10-top { max-height:0; opacity:0; }.v10-header.is-compact .v10-main { padding:6px 0; box-shadow:0 12px 30px rgba(10,61,41,.08); }.v10-header.is-compact .v10-main__inner { min-height:64px; }
@media (max-width:1240px) { .v10-top__links a:nth-child(2) { display:none; } }
@media (max-width:1080px) { .v10-top__links a:first-child { display:none; }.v10-main__inner { grid-template-columns:1fr auto auto; }.v10-nav { display:none; }.v10-header button.v10-toggle,.v10-header button.v10-toggle:hover,.v10-header button.v10-toggle:focus,.v10-header button.v10-toggle:active { display:block; }.v10-cta { min-height:48px; } }
@media (max-width:767px) { .v10-shell { width:min(calc(100% - 24px),1320px); }.v10-top { max-height:52px; }.v10-top__inner { justify-content:center; min-height:52px; text-align:center; }.v10-brandline { justify-content:center; font-size:.64rem; font-weight:600; line-height:1.4; white-space:normal; }.v10-brandline i,.v10-top__links { display:none; }.v10-main { padding:7px 0; }.v10-main__inner { grid-template-columns:1fr auto; min-height:68px; padding:0 9px 0 15px; border-radius:17px; }.v10-logo { width:148px; }.v10-cta { display:none; }.v10-toggle { width:46px; height:46px; border-radius:14px; }.v10-mobile { grid-template-columns:1fr; top:calc(100% + 8px); }.v10-mobile__cta { grid-column:auto; }.v10-header.is-compact .v10-main__inner { min-height:60px; } }
@media (max-width:767px) { .v10-mobile { gap:9px; max-height:calc(100dvh - 142px); padding:15px; overflow-y:auto; overscroll-behavior:contain; }.v10-mobile>a,.v10-mobile__parent>a { min-height:60px; padding-inline:16px; font-size:.84rem; line-height:1.25; }.v10-mobile svg { width:20px; height:20px; }.v10-header .v10-mobile__parent>button,.v10-header .v10-mobile__parent>button:hover,.v10-header .v10-mobile__parent>button:focus,.v10-header .v10-mobile__parent>button:active { min-height:60px; }.v10-mobile__group.is-submenu-open .v10-mobile__submenu { max-height:360px; gap:5px; padding:7px; }.v10-mobile__submenu a { min-height:46px; padding-inline:13px; font-size:.73rem; font-weight:720; line-height:1.3; } }
@media (prefers-reduced-motion:reduce) { .v10-header * { animation:none!important; transition:none!important; } }

/* V24 — corporate and legal pages */
.v24-elementor-root,.v24-elementor-root>.e-con-inner,.v24-elementor-root .elementor-widget-html,.v24-elementor-root .elementor-widget-container { width:100%!important; max-width:none!important; margin:0!important; padding:0!important; }
.v24 { --v24-green:#073d29; --v24-deep:#052b1c; --v24-leaf:#7d9a88; --v24-accent:#6e927b; --v24-mint:#edf3ef; --v24-ink:#173427; overflow:hidden; color:var(--v24-ink); background:#fff; font-family:var(--by3-sans); }
.v24 * { box-sizing:border-box; }.v24 a { color:inherit; text-decoration:none; }.v24 img { display:block; max-width:100%; }.v24-shell { width:min(calc(100% - 56px),1220px); margin-inline:auto; }
.v24-kicker { display:flex; align-items:center; gap:10px; margin:0 0 22px; color:#557463; font-size:.66rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.v24-kicker i { width:28px; height:2px; border-radius:2px; background:var(--v24-accent); }
.v24-hero { position:relative; padding:76px 0 82px; background:linear-gradient(90deg,#fff 0 59%,#eff5f1 59%); isolation:isolate; }.v24-hero::before { position:absolute; z-index:-1; inset:0; background-image:radial-gradient(rgba(7,61,41,.1) .75px,transparent .75px); background-size:17px 17px; mask-image:linear-gradient(90deg,transparent 15%,#000 80%); content:""; opacity:.28; }
.v24-orbit { position:absolute; z-index:-1; border:1px solid rgba(7,61,41,.1); border-radius:50%; pointer-events:none; }.v24-orbit--one { top:-240px; right:-180px; width:700px; height:700px; }.v24-orbit--two { top:-145px; right:-85px; width:510px; height:510px; border-color:rgba(110,146,123,.24); }
.v24-hero__grid { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr); align-items:center; gap:76px; }.v24-hero__copy h1 { max-width:760px; margin:0; color:var(--v24-deep); font-size:clamp(3rem,5.2vw,5.4rem); font-weight:720; line-height:.96; letter-spacing:-.065em; }.v24-hero__copy h1 em { display:block; color:var(--v24-leaf); font-style:normal; font-weight:580; }.v24-hero__lead { max-width:640px; margin:30px 0 0; color:#52685c; font-size:1.02rem; line-height:1.8; }
.v24-hero__actions { display:flex; align-items:center; gap:26px; margin-top:34px; }.v24-button { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:56px; padding:0 22px; border-radius:15px; color:#fff!important; background:var(--v24-green); font-size:.72rem; font-weight:800; box-shadow:0 14px 30px rgba(7,61,41,.16); transition:transform .22s,background .22s,box-shadow .22s; }.v24-button svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .22s; }.v24-button:hover,.v24-button:focus-visible { background:var(--v24-deep); transform:translateY(-2px); box-shadow:0 18px 38px rgba(5,43,28,.24); }.v24-button:hover svg { transform:translateX(3px); }.v24-button:focus-visible,.v24-textlink:focus-visible { outline:2px solid var(--v24-deep); outline-offset:3px; }.v24-textlink { padding:7px 0; border-bottom:1px solid rgba(7,61,41,.32); color:var(--v24-green); font-size:.72rem; font-weight:800; }
.v24-hero__visual { position:relative; }.v24-hero__image { position:relative; overflow:visible; padding:13px; border:1px solid rgba(7,61,41,.12); border-radius:160px 160px 28px 28px; background:rgba(255,255,255,.75); box-shadow:0 30px 70px rgba(7,61,41,.12); }.v24-hero__image::before { position:absolute; z-index:1; inset:28px; border:1px solid rgba(255,255,255,.48); border-radius:145px 145px 20px 20px; content:""; pointer-events:none; }.v24-hero__image img { width:100%; height:520px; border-radius:146px 146px 19px 19px; object-fit:cover; }.v24-hero__stamp { position:absolute; right:-36px; bottom:54px; z-index:2; display:flex; align-items:center; gap:12px; min-width:170px; padding:17px 20px; border-radius:18px; color:#fff; background:var(--v24-green); box-shadow:0 18px 42px rgba(5,43,28,.24); }.v24-hero__stamp b { color:#fff; font-size:1.9rem; line-height:1; letter-spacing:-.05em; }.v24-hero__stamp small { color:rgba(255,255,255,.72); font-size:.58rem; font-weight:700; line-height:1.4; text-transform:uppercase; }
.v24-hero__note { position:absolute; bottom:-30px; left:-42px; display:flex; align-items:center; gap:14px; max-width:290px; padding:15px 18px; border:1px solid rgba(7,61,41,.1); border-radius:17px; background:#fff; box-shadow:0 20px 45px rgba(7,61,41,.14); }.v24-hero__note>span { display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; border-radius:13px; color:var(--v24-green); background:var(--v24-mint); }.v24-hero__note svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }.v24-hero__note p { margin:0; }.v24-hero__note small,.v24-hero__note b { display:block; }.v24-hero__note small { margin-bottom:3px; color:#789083; font-size:.54rem; font-weight:700; text-transform:uppercase; }.v24-hero__note b { color:var(--v24-deep); font-size:.72rem; }
.v24-anchorbar { position:sticky; z-index:12; top:88px; border-block:1px solid #e0e8e2; background:rgba(255,255,255,.94); backdrop-filter:blur(15px); }.v24-anchorbar .v24-shell { display:flex; align-items:center; justify-content:center; gap:4px; padding:9px 0; }.v24-anchorbar a { padding:11px 18px; border-radius:10px; color:#61786b; font-size:.66rem; font-weight:750; transition:color .2s,background .2s; }.v24-anchorbar a:hover,.v24-anchorbar a:focus-visible { color:var(--v24-deep); background:var(--v24-mint); }
.v24-about { padding:112px 0 98px; scroll-margin-top:165px; }.v24-about__grid { display:grid; grid-template-columns:.84fr 1.16fr; gap:90px; }.v24-sectionhead h2,.v24-sustain__head h2 { margin:0; color:var(--v24-deep); font-size:clamp(2.4rem,4.2vw,4.2rem); font-weight:700; line-height:1.02; letter-spacing:-.055em; }.v24-sectionhead h2 em,.v24-sustain__head h2 em { display:block; color:var(--v24-leaf); font-style:normal; font-weight:580; }.v24-about__body { padding-top:42px; }.v24-about__body p { margin:0 0 19px; color:#617369; font-size:.96rem; line-height:1.85; }.v24-about__body .v24-about__lead { color:var(--v24-deep); font-size:1.25rem; font-weight:650; line-height:1.55; }
.v24-timeline { display:grid; grid-template-columns:repeat(4,1fr); margin-top:70px; border:1px solid #dfe7e1; border-radius:22px; background:#fafcfb; }.v24-timeline article { position:relative; min-height:224px; padding:30px 28px; border-right:1px solid #dfe7e1; }.v24-timeline article:last-child { border:0; }.v24-timeline article::after { position:absolute; top:39px; right:-5px; z-index:1; width:9px; height:9px; border:2px solid #fff; border-radius:50%; background:var(--v24-accent); box-shadow:0 0 0 4px #dce9e0; content:""; }.v24-timeline article:last-child::after { display:none; }.v24-timeline span { display:block; margin-bottom:42px; color:#557463; font-size:.72rem; font-weight:850; letter-spacing:.08em; }.v24-timeline b { display:block; margin-bottom:10px; color:var(--v24-deep); font-size:.91rem; }.v24-timeline p { margin:0; color:#718279; font-size:.7rem; line-height:1.7; }
.v24-purpose { padding:100px 0; background:#f1f5f2; }.v24-purpose__grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }.v24-purpose__card { position:relative; overflow:hidden; min-height:500px; padding:54px; border-radius:28px; scroll-margin-top:165px; }.v24-purpose__card::after { position:absolute; right:-130px; bottom:-160px; width:430px; height:430px; border:1px solid currentColor; border-radius:50%; content:""; opacity:.1; }.v24-purpose__card--mission { color:#fff; background:var(--v24-green); }.v24-purpose__card--vision { border:1px solid #d9e3dc; color:var(--v24-deep); background:#fff; }.v24-purpose__icon { display:grid; place-items:center; width:58px; height:58px; margin-bottom:58px; border-radius:17px; color:var(--v24-green); background:#dfeae3; }.v24-purpose__card--vision .v24-purpose__icon { background:var(--v24-mint); }.v24-purpose__icon svg { width:27px; height:27px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }.v24-purpose__card .v24-kicker { margin-bottom:20px; color:currentColor; opacity:.62; }.v24-purpose__card h2 { max-width:510px; margin:0 0 24px; color:inherit; font-size:clamp(2rem,3.4vw,3.35rem); font-weight:680; line-height:1.05; letter-spacing:-.05em; }.v24-purpose__card>p:not(.v24-kicker) { max-width:500px; margin:0; color:inherit; font-size:.9rem; line-height:1.8; opacity:.7; }.v24-purpose__card small { position:absolute; bottom:45px; left:54px; color:inherit; font-size:.59rem; font-weight:750; letter-spacing:.06em; text-transform:uppercase; opacity:.65; }
.v24-sustain { padding:116px 0; color:#fff; background:var(--v24-deep); scroll-margin-top:150px; }.v24-sustain__head { display:grid; grid-template-columns:1.25fr .75fr; align-items:end; gap:80px; margin-bottom:62px; }.v24-sustain__head .v24-kicker { color:#9bb1a4; }.v24-sustain__head h2 { color:#fff; }.v24-sustain__head h2 em { color:#a8bcb0; }.v24-sustain__head>p { margin:0 0 7px; color:rgba(255,255,255,.58); font-size:.89rem; line-height:1.8; }
.v24-sustain__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }.v24-sustain__grid article { min-height:270px; padding:28px; border:1px solid rgba(255,255,255,.12); border-radius:19px; background:rgba(255,255,255,.035); transition:transform .24s,background .24s,border-color .24s; }.v24-sustain__grid article:hover { transform:translateY(-5px); border-color:rgba(184,209,194,.42); background:rgba(255,255,255,.065); }.v24-sustain__grid span { display:grid; place-items:center; width:48px; height:48px; margin-bottom:52px; border-radius:14px; color:#b8d1c2; background:rgba(184,209,194,.1); }.v24-sustain__grid svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }.v24-sustain__grid b { display:block; margin-bottom:12px; color:#fff; font-size:.86rem; }.v24-sustain__grid p { margin:0; color:rgba(255,255,255,.55); font-size:.68rem; line-height:1.72; }
.v24-sustain__note { display:flex; align-items:center; justify-content:space-between; gap:35px; margin-top:24px; padding:28px 30px; border-radius:19px; color:var(--v24-deep); background:#dfe9e2; }.v24-sustain__note p { max-width:720px; margin:0; color:#486255; font-size:.76rem; line-height:1.7; }.v24-sustain__note b { color:var(--v24-deep); }.v24-button--light { flex:0 0 auto; color:var(--v24-deep)!important; background:#fff; box-shadow:none; }.v24-button--light:hover { color:#fff!important; background:var(--v24-deep); }
.v24-legal { background:#f5f7f5; }.v24-legalhero { position:relative; overflow:hidden; padding:84px 0 78px; color:#fff; background:linear-gradient(115deg,#052b1c,#0a4a31); }.v24-legalhero::after { position:absolute; top:-310px; right:-160px; width:680px; height:680px; border:1px solid rgba(255,255,255,.12); border-radius:50%; box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018); content:""; }.v24-legalhero .v24-shell { position:relative; z-index:1; }.v24-legalhero .v24-kicker { color:#adc0b4; }.v24-legalhero h1 { max-width:900px; margin:0 0 20px; color:#fff; font-size:clamp(3rem,5.6vw,5.7rem); font-weight:690; line-height:.98; letter-spacing:-.06em; }.v24-legalhero>.v24-shell>p:not(.v24-kicker) { max-width:720px; margin:0; color:rgba(255,255,255,.66); font-size:.96rem; line-height:1.75; }.v24-legalhero__meta { display:flex; flex-wrap:wrap; gap:11px; margin-top:35px; }.v24-legalhero__meta span { padding:10px 13px; border:1px solid rgba(255,255,255,.13); border-radius:10px; color:rgba(255,255,255,.64); background:rgba(255,255,255,.05); font-size:.62rem; }.v24-legalhero__meta b,.v24-legalhero__meta a { color:#fff; }
.v24-legalgrid { display:grid; grid-template-columns:260px minmax(0,1fr); align-items:start; gap:80px; padding-top:72px; padding-bottom:110px; }.v24-legaltoc { position:sticky; top:120px; padding:22px; border:1px solid #dce5df; border-radius:18px; background:#fff; }.v24-legaltoc>p { margin:0 0 14px; padding:0 7px 13px; border-bottom:1px solid #e5ebe7; color:#84968c; font-size:.56rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }.v24-legaltoc>a { display:block; padding:11px 7px; border-radius:8px; color:#50685b; font-size:.68rem; font-weight:700; transition:color .2s,background .2s,padding .2s; }.v24-legaltoc>a:hover,.v24-legaltoc>a:focus-visible { padding-left:11px; color:var(--v24-deep); background:var(--v24-mint); }.v24-legalnote { margin-top:16px; padding:15px; border-radius:12px; color:#274d3a; background:#e7efe9; }.v24-legalnote b,.v24-legalnote span { display:block; }.v24-legalnote b { margin-bottom:6px; font-size:.61rem; }.v24-legalnote span { font-size:.58rem; line-height:1.55; opacity:.82; }
.v24-legalcontent { min-width:0; padding:16px 56px 60px; border:1px solid #dce5df; border-radius:24px; background:#fff; }.v24-legalcontent>section { position:relative; padding:48px 0; border-bottom:1px solid #e1e8e3; scroll-margin-top:130px; }.v24-legalcontent>section:last-child { border-bottom:0; }.v24-legalcontent>section>span { position:absolute; top:54px; left:-36px; color:#bdc9c1; font-size:.58rem; font-weight:850; }.v24-legalcontent h2 { margin:0 0 22px; color:var(--v24-deep); font-size:clamp(1.55rem,2.7vw,2.3rem); font-weight:690; line-height:1.1; letter-spacing:-.035em; }.v24-legalcontent p,.v24-legalcontent li { color:#61756a; font-size:.8rem; line-height:1.85; }.v24-legalcontent p { margin:0 0 16px; }.v24-legalcontent ul { margin:17px 0 20px; padding-left:20px; }.v24-legalcontent li { margin:9px 0; }.v24-legalcontent b { color:#274d3a; }.v24-legalcontent a { color:var(--v24-green); font-weight:750; text-decoration:underline; text-decoration-color:#abc0b3; text-underline-offset:3px; }
.v24-contactcards { display:grid; grid-template-columns:1.15fr 1fr 1fr; gap:10px; margin-top:25px; }.v24-contactcards a { min-width:0; padding:18px; border:1px solid #dfe7e2; border-radius:13px; background:#f8faf8; text-decoration:none; transition:border-color .2s,transform .2s; }.v24-contactcards a:hover { transform:translateY(-2px); border-color:#8fac9a; }.v24-contactcards small,.v24-contactcards b { display:block; overflow-wrap:anywhere; }.v24-contactcards small { margin-bottom:7px; color:#86998e; font-size:.54rem; font-weight:800; text-transform:uppercase; }.v24-contactcards b { color:var(--v24-deep); font-size:.66rem; line-height:1.55; }
.v24-cookiecards { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:25px; }.v24-cookiecards article { padding:21px; border:1px solid #dfe7e2; border-radius:14px; background:#fafcfb; }.v24-cookiecards b { display:block; margin-bottom:8px; font-size:.75rem; }.v24-cookiecards p { margin:0 0 17px; font-size:.68rem; line-height:1.7; }.v24-cookiecards em { display:inline-block; padding:6px 8px; border-radius:7px; color:#557060; background:#eaf2ed; font-size:.52rem; font-style:normal; font-weight:750; }
.v24-browserlinks { display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; }.v24-browserlinks a { padding:10px 12px; border:1px solid #dce5df; border-radius:9px; background:#f9fbfa; font-size:.62rem; text-decoration:none; }.v24-tablewrap { overflow:auto; margin-top:22px; border:1px solid #dfe7e2; border-radius:13px; }.v24-tablewrap table { width:100%; border-collapse:collapse; min-width:610px; }.v24-tablewrap th,.v24-tablewrap td { padding:14px 16px; border-bottom:1px solid #e4eae6; color:#60736a; font-size:.65rem; text-align:left; }.v24-tablewrap th { color:var(--v24-deep); background:#edf3ef; font-size:.57rem; text-transform:uppercase; }.v24-tablewrap tr:last-child td { border:0; }.v24-callout { margin-top:20px!important; padding:18px; border-left:3px solid var(--v24-accent); border-radius:0 10px 10px 0; background:#f1f6f2; }
@media (max-width:1080px) { .v24-hero__grid { grid-template-columns:1fr .8fr; gap:48px; }.v24-hero__image img { height:450px; }.v24-hero__stamp { right:-12px; }.v24-about__grid { gap:55px; }.v24-sustain__grid { grid-template-columns:1fr 1fr; }.v24-legalgrid { gap:35px; }.v24-contactcards { grid-template-columns:1fr; } }
@media (max-width:820px) { .v24-shell { width:min(calc(100% - 32px),1220px); }.v24-hero { padding:58px 0 72px; background:linear-gradient(180deg,#fff 0 56%,#eff5f1 56%); }.v24-hero__grid { grid-template-columns:1fr; gap:60px; }.v24-hero__copy h1 { max-width:680px; }.v24-hero__visual { width:min(92%,590px); margin-inline:auto; }.v24-hero__image img { height:520px; }.v24-anchorbar { top:76px; overflow:auto; }.v24-anchorbar .v24-shell { justify-content:flex-start; width:max-content; min-width:100%; padding-inline:16px; }.v24-about { padding:90px 0 75px; }.v24-about__grid,.v24-sustain__head { grid-template-columns:1fr; gap:18px; }.v24-about__body { padding-top:10px; }.v24-timeline { grid-template-columns:1fr 1fr; }.v24-timeline article:nth-child(2) { border-right:0; }.v24-timeline article:nth-child(-n+2) { border-bottom:1px solid #dfe7e1; }.v24-purpose__grid { grid-template-columns:1fr; }.v24-purpose__card { min-height:460px; }.v24-sustain__head { align-items:start; margin-bottom:42px; }.v24-sustain__head>p { max-width:620px; }.v24-legalgrid { grid-template-columns:1fr; padding-top:36px; }.v24-legaltoc { position:static; display:grid; grid-template-columns:repeat(3,1fr); gap:4px; }.v24-legaltoc>p,.v24-legalnote { grid-column:1/-1; }.v24-legalcontent { padding-inline:48px; } }
@media (max-width:600px) { .v24-shell { width:min(calc(100% - 24px),1220px); }.v24-kicker { margin-bottom:17px; }.v24-hero { padding:45px 0 56px; }.v24-hero__copy h1 { font-size:clamp(2.65rem,13vw,4rem); line-height:.98; }.v24-hero__lead { margin-top:23px; font-size:.89rem; line-height:1.72; }.v24-hero__actions { align-items:stretch; flex-direction:column; gap:13px; margin-top:27px; }.v24-textlink { align-self:flex-start; }.v24-hero__visual { width:100%; }.v24-hero__image { padding:9px; border-radius:110px 110px 23px 23px; }.v24-hero__image::before { inset:20px; border-radius:100px 100px 17px 17px; }.v24-hero__image img { height:390px; border-radius:102px 102px 16px 16px; }.v24-hero__stamp { right:8px; bottom:23px; min-width:145px; padding:14px; }.v24-hero__note { position:relative; bottom:auto; left:auto; margin:-14px 15px 0; }.v24-anchorbar { top:72px; }.v24-anchorbar a { padding:10px 13px; font-size:.62rem; }.v24-about { padding:74px 0 58px; }.v24-sectionhead h2,.v24-sustain__head h2 { font-size:2.6rem; }.v24-about__body .v24-about__lead { font-size:1.08rem; }.v24-about__body p { font-size:.84rem; }.v24-timeline { grid-template-columns:1fr; margin-top:45px; }.v24-timeline article { min-height:0; padding:24px; border-right:0; border-bottom:1px solid #dfe7e1!important; }.v24-timeline article:last-child { border-bottom:0!important; }.v24-timeline article::after { display:none; }.v24-timeline span { margin-bottom:22px; }.v24-purpose { padding:60px 0; }.v24-purpose__card { min-height:470px; padding:35px 28px; border-radius:22px; }.v24-purpose__icon { margin-bottom:43px; }.v24-purpose__card h2 { font-size:2.35rem; }.v24-purpose__card small { right:28px; bottom:30px; left:28px; line-height:1.5; }.v24-sustain { padding:75px 0; }.v24-sustain__grid { grid-template-columns:1fr; }.v24-sustain__grid article { min-height:225px; }.v24-sustain__grid span { margin-bottom:35px; }.v24-sustain__note { align-items:stretch; flex-direction:column; }.v24-legalhero { padding:58px 0 55px; }.v24-legalhero h1 { font-size:2.75rem; }.v24-legalhero__meta { flex-direction:column; align-items:flex-start; }.v24-legalgrid { gap:20px; padding-bottom:70px; }.v24-legaltoc { grid-template-columns:1fr 1fr; padding:15px; }.v24-legalcontent { padding:5px 22px 35px; border-radius:18px; }.v24-legalcontent>section { padding:39px 0; }.v24-legalcontent>section>span { position:static; display:block; margin-bottom:12px; }.v24-legalcontent p,.v24-legalcontent li { font-size:.75rem; }.v24-cookiecards { grid-template-columns:1fr; }.v24-contactcards a { padding:15px; } }
@media (prefers-reduced-motion:reduce) { .v24 * { scroll-behavior:auto!important; transition:none!important; } }

/* V25 — editorial gallery page */
.v25-elementor-root,.v25-elementor-root>.e-con-inner,.v25-elementor-root .elementor-widget-html,.v25-elementor-root .elementor-widget-container { width:100%!important; max-width:none!important; margin:0!important; padding:0!important; }
.v25 { --v25-green:#073d29; --v25-deep:#052b1c; --v25-leaf:#789684; --v25-mint:#edf3ef; overflow:hidden; color:#173427; background:#fff; font-family:var(--by3-sans); }.v25 * { box-sizing:border-box; }.v25 img { display:block; max-width:100%; }.v25 a { color:inherit; text-decoration:none; }.v25-shell { width:min(calc(100% - 56px),1220px); margin-inline:auto; }.v25-kicker { display:flex; align-items:center; gap:10px; margin:0 0 22px; color:#9eb7a8; font-size:.64rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }.v25-kicker i { width:29px; height:2px; border-radius:2px; background:#789684; }
.v25-hero { position:relative; min-height:720px; overflow:hidden; padding:82px 0 88px; color:#fff; background:var(--v25-deep); isolation:isolate; }.v25-hero::before { position:absolute; z-index:-1; inset:0; background:radial-gradient(circle at 15% 75%,rgba(120,150,132,.18),transparent 32%),linear-gradient(115deg,#052b1c 0%,#073d29 68%,#0a4a31 100%); content:""; }.v25-hero__rings { position:absolute; top:-330px; right:-250px; width:840px; height:840px; border:1px solid rgba(255,255,255,.08); border-radius:50%; }.v25-hero__rings::before,.v25-hero__rings::after { position:absolute; border:1px solid rgba(255,255,255,.06); border-radius:50%; content:""; }.v25-hero__rings::before { inset:78px; }.v25-hero__rings::after { inset:155px; border-style:dashed; }
.v25-hero__grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,.92fr) minmax(470px,1.08fr); align-items:center; gap:82px; }.v25-hero__copy h1 { max-width:650px; margin:0; color:#fff; font-size:clamp(3.8rem,6vw,6.5rem); font-weight:690; line-height:.92; letter-spacing:-.066em; }.v25-hero__copy h1 em { display:block; color:#a8beb0; font-style:normal; font-weight:560; }.v25-hero__copy>p:not(.v25-kicker) { max-width:560px; margin:30px 0 0; color:rgba(255,255,255,.62); font-size:.96rem; line-height:1.8; }.v25-hero__copy>a { display:inline-flex; align-items:center; gap:14px; margin-top:33px; padding:13px 0; border-bottom:1px solid rgba(255,255,255,.42); color:#fff; font-size:.7rem; font-weight:800; }.v25-hero__copy>a svg,.v25-cta__inner>a svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .2s; }.v25-hero__copy>a:hover svg { transform:translateX(4px); }
.v25-hero__collage { position:relative; min-height:570px; }.v25-hero__shot { position:absolute; overflow:hidden; margin:0; border:9px solid rgba(255,255,255,.9); background:#fff; box-shadow:0 28px 70px rgba(0,0,0,.24); }.v25-hero__shot img { width:100%; height:100%; object-fit:cover; }.v25-hero__shot--a { top:0; right:0; width:69%; height:520px; border-radius:150px 150px 24px 24px; transform:rotate(2deg); }.v25-hero__shot--b { bottom:0; left:0; z-index:2; width:43%; height:335px; border-radius:20px 110px 20px 20px; transform:rotate(-4deg); }.v25-hero__collage>span { position:absolute; right:3%; bottom:1%; z-index:3; display:flex; align-items:center; gap:11px; padding:14px 17px; border:1px solid rgba(255,255,255,.12); border-radius:15px; color:#fff; background:#073d29; box-shadow:0 18px 45px rgba(0,0,0,.22); }.v25-hero__collage>span b { font-size:1.7rem; line-height:1; }.v25-hero__collage>span small { color:rgba(255,255,255,.62); font-size:.52rem; font-weight:750; line-height:1.4; text-transform:uppercase; }
.v25-flow { padding:112px 0 120px; scroll-margin-top:110px; background:#f7f9f7; }.v25-flow__head { display:grid; grid-template-columns:1.15fr .85fr; align-items:end; gap:80px; }.v25-flow__head .v25-kicker { color:#668273; }.v25-flow__head h2 { margin:0; color:var(--v25-deep); font-size:clamp(3rem,5.3vw,5.8rem); font-weight:700; line-height:.95; letter-spacing:-.065em; }.v25-flow__head>p { max-width:440px; margin:0 0 8px; color:#6d7b73; font-size:.88rem; line-height:1.8; }
.v25-filters { display:flex; flex-wrap:wrap; gap:7px; margin:50px 0 24px; }.v25 .v25-filters button,.v25 .v25-filters button:hover,.v25 .v25-filters button:focus,.v25 .v25-filters button:active { min-height:43px; padding:0 16px!important; border:1px solid #d7e2da!important; border-radius:11px!important; color:#587a66!important; background:#fff!important; box-shadow:none!important; font-size:.65rem; font-weight:760; outline:none; transition:color .2s,border-color .2s,background .2s,transform .2s; }.v25 .v25-filters button:hover,.v25 .v25-filters button:focus-visible { color:#052b1c!important; border-color:#8ead9a!important; transform:translateY(-1px); }.v25 .v25-filters button[aria-pressed="true"] { color:#fff!important; border-color:#073d29!important; background:#073d29!important; }
.v25-grid { display:grid; grid-template-columns:repeat(12,1fr); grid-auto-flow:dense; grid-auto-rows:110px; gap:15px; }.v25 .v25-card,.v25 .v25-card:hover,.v25 .v25-card:focus,.v25 .v25-card:active { position:relative; display:block; overflow:hidden; min-width:0; min-height:0; padding:0!important; border:0!important; border-radius:20px!important; color:#fff!important; background:#0a3d29!important; box-shadow:none!important; text-align:left; cursor:pointer; isolation:isolate; transition:transform .3s,opacity .25s,box-shadow .3s; }.v25-card:nth-child(1) { grid-column:span 7; grid-row:span 5; }.v25-card:nth-child(2) { grid-column:span 5; grid-row:span 5; }.v25-card:nth-child(3),.v25-card:nth-child(4),.v25-card:nth-child(5) { grid-column:span 4; grid-row:span 4; }.v25-card:nth-child(6) { grid-column:span 12; grid-row:span 5; }.v25-card[hidden] { display:none!important; }.v25-card img { position:absolute; z-index:-2; inset:0; width:100%!important; height:100%!important; object-fit:cover; filter:saturate(.92) contrast(1.02); transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .4s; }.v25-card:nth-child(6) img { object-position:center 57%; }.v25-card__shade { position:absolute; z-index:-1; inset:0; background:linear-gradient(180deg,rgba(3,28,18,.02) 42%,rgba(3,28,18,.78) 100%); }.v25-card__meta { position:absolute; right:25px; bottom:24px; left:25px; display:grid; gap:7px; }.v25-card__meta small { color:rgba(255,255,255,.68); font-size:.51rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.v25-card__meta b { color:#fff; font-size:.88rem; line-height:1.25; }.v25-card>i { position:absolute; top:18px; right:18px; display:grid; place-items:center; width:41px; height:41px; border-radius:12px; color:#073d29; background:rgba(255,255,255,.92); opacity:0; transform:translateY(-6px); transition:opacity .24s,transform .24s; }.v25-card>i svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }.v25 .v25-card:hover,.v25 .v25-card:focus-visible { z-index:2; transform:translateY(-4px); box-shadow:0 24px 45px rgba(5,43,28,.18)!important; }.v25-card:hover img,.v25-card:focus-visible img { transform:scale(1.045); filter:saturate(1.04) contrast(1.02); }.v25-card:hover>i,.v25-card:focus-visible>i { opacity:1; transform:none; }.v25 .v25-card:focus-visible { outline:3px solid #9eb7a8!important; outline-offset:3px; }
.v25-cta { padding:82px 0; color:#fff; background:#073d29; }.v25-cta__inner { display:flex; align-items:center; justify-content:space-between; gap:50px; }.v25-cta .v25-kicker { margin-bottom:16px; }.v25-cta h2 { max-width:720px; margin:0; color:#fff; font-size:clamp(2.4rem,4.4vw,4.4rem); font-weight:660; line-height:1; letter-spacing:-.055em; }.v25-cta__inner>a { display:inline-flex; align-items:center; justify-content:center; gap:14px; flex:0 0 auto; min-height:58px; padding:0 22px; border-radius:15px; color:#073d29; background:#fff; font-size:.7rem; font-weight:820; transition:transform .2s,background .2s,color .2s; }.v25-cta__inner>a:hover,.v25-cta__inner>a:focus-visible { color:#fff; background:#052b1c; transform:translateY(-2px); }.v25-cta__inner>a:hover svg { transform:translateX(3px); }
@media (max-width:1000px) { .v25-hero__grid { grid-template-columns:1fr .78fr; gap:45px; }.v25-hero__collage { min-height:510px; }.v25-hero__shot--a { width:80%; height:460px; }.v25-flow__head { gap:40px; } }
@media (max-width:820px) { .v25-shell { width:min(calc(100% - 32px),1220px); }.v25-hero { padding:62px 0 75px; }.v25-hero__grid { grid-template-columns:1fr; gap:58px; }.v25-hero__copy h1 { max-width:690px; }.v25-hero__collage { width:min(94%,600px); margin-inline:auto; }.v25-flow { padding:88px 0 94px; }.v25-flow__head { grid-template-columns:1fr; gap:20px; }.v25-flow__head>p { max-width:640px; }.v25-grid { grid-auto-rows:90px; }.v25-card:nth-child(1),.v25-card:nth-child(2),.v25-card:nth-child(6) { grid-column:span 12; grid-row:span 5; }.v25-card:nth-child(3),.v25-card:nth-child(4),.v25-card:nth-child(5) { grid-column:span 6; grid-row:span 4; }.v25-card:nth-child(5) { grid-column:span 12; }.v25-cta__inner { align-items:flex-start; flex-direction:column; }.v25-cta__inner>a { width:100%; }
}
@media (max-width:600px) { .v25-shell { width:min(calc(100% - 24px),1220px); }.v25-hero { min-height:0; padding:48px 0 58px; }.v25-hero__copy h1 { font-size:clamp(3rem,15vw,4.45rem); line-height:.94; }.v25-hero__copy>p:not(.v25-kicker) { font-size:.88rem; line-height:1.72; }.v25-hero__collage { min-height:450px; width:100%; }.v25-hero__shot--a { width:75%; height:420px; border-width:7px; border-radius:100px 100px 20px 20px; }.v25-hero__shot--b { width:46%; height:270px; border-width:7px; }.v25-hero__collage>span { right:0; bottom:-8px; }.v25-flow { padding:72px 0 76px; }.v25-flow__head h2 { font-size:3.15rem; }.v25-filters { flex-wrap:nowrap; width:calc(100vw - 12px); margin-top:36px; padding-right:20px; overflow-x:auto; scrollbar-width:none; }.v25-filters::-webkit-scrollbar { display:none; }.v25 .v25-filters button { flex:0 0 auto; }.v25-grid { grid-template-columns:1fr; grid-auto-rows:auto; gap:12px; }.v25-card:nth-child(n) { grid-column:auto; grid-row:auto; height:510px; border-radius:17px!important; }.v25-card:nth-child(3) { height:430px; }.v25-card:nth-child(6) { height:560px; }.v25-card>i { opacity:1; transform:none; }.v25-card__meta { right:20px; bottom:20px; left:20px; }.v25-cta { padding:64px 0; }.v25-cta h2 { font-size:2.7rem; } }
@media (prefers-reduced-motion:reduce) { .v25 * { transition:none!important; } }

/* V11 — corporate service-route hero */
.v11-hero { --v11-green:#0a3d29; --v11-leaf:#6e927b; --v11-mint:#edf3ef; --v11-accent:#6e927b; --v11-ink:#173427; position:relative; min-height:0; overflow:hidden; padding:44px 0 0; color:var(--v11-ink); background:#fff; isolation:isolate; }
.v11-backdrop { position:absolute; z-index:-2; inset:0; background:linear-gradient(90deg,#fff 0 53%,#f0f5f2 53% 100%); }.v11-backdrop::before { position:absolute; top:9%; right:-7%; width:560px; height:560px; border:1px solid rgba(10,61,41,.1); border-radius:50%; content:""; }.v11-backdrop::after { position:absolute; top:calc(9% + 62px); right:calc(-7% + 62px); width:436px; height:436px; border:1px solid rgba(110,146,123,.24); border-radius:50%; content:""; }
.v11-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(460px,.86fr); align-items:center; gap:72px; min-height:620px; }
.v11-copy { position:relative; z-index:8; padding:18px 0 88px; }
.v11-eyebrow { display:flex; align-items:center; gap:11px; margin:0 0 24px; color:#587a66; font:650 .62rem/1.2 var(--by3-mono); letter-spacing:.11em; text-transform:uppercase; opacity:0; transform:translateY(16px); animation:v11-rise .65s 2.16s ease forwards; }.v11-eyebrow svg { width:22px; height:22px; padding:4px; border-radius:7px; color:var(--v11-green); background:var(--v11-mint); fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.v11-hero h1 { max-width:760px; margin:0; color:var(--v11-green); font:760 clamp(4.2rem,6.3vw,7.15rem)/.88 var(--by3-sans); letter-spacing:-.072em; }
.v11-hero h1>span,.v11-hero h1>em { display:block; opacity:0; transform:translateY(30px); animation:v11-rise .8s cubic-bezier(.2,.78,.2,1) forwards; }.v11-hero h1>span { animation-delay:2.24s; }.v11-hero h1>em { max-width:680px; margin-top:11px; color:#7a9885; font:500 .79em/1.02 var(--by3-serif); letter-spacing:-.048em; animation-delay:2.36s; }.v11-hero h1>em b { display:block; font:inherit; white-space:nowrap; }.v11-hero h1>em b+b { margin-top:2px; }
.v11-lead { max-width:610px; margin:29px 0 0; color:#68776e; font-size:.96rem; line-height:1.75; opacity:0; animation:v11-fade .65s 2.5s ease forwards; }
.v11-actions { display:flex; flex-wrap:wrap; gap:11px; margin-top:30px; opacity:0; animation:v11-fade .65s 2.62s ease forwards; }.v11-btn { display:inline-flex; align-items:center; justify-content:space-between; gap:20px; min-width:188px; min-height:54px; padding:0 13px 0 20px; border:1px solid var(--v11-green); border-radius:14px; font-size:.72rem; font-weight:800; transition:color .22s ease,background .22s ease,transform .22s ease,box-shadow .22s ease; }.v11-btn svg { box-sizing:content-box; flex:0 0 auto; width:15px; height:15px; padding:6px; border-radius:9px; background:rgba(10,61,41,.07); fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:color .22s ease,background .22s ease,transform .22s ease; }.v11-btn--primary { min-width:220px; color:#fff!important; background:var(--v11-green); box-shadow:0 13px 28px rgba(10,61,41,.16); }.v11-btn--primary svg { background:rgba(255,255,255,.12); }.v11-btn--secondary { color:var(--v11-green); background:#fff; }.v11-btn:hover,.v11-btn:focus-visible { transform:translateY(-2px); }.v11-btn--primary:hover,.v11-btn--primary:focus-visible { color:#fff!important; background:#14583d; box-shadow:0 16px 34px rgba(10,61,41,.22); }.v11-btn--secondary:hover,.v11-btn--secondary:focus-visible { color:#fff; background:var(--v11-green); }.v11-btn--secondary:hover svg,.v11-btn--secondary:focus-visible svg { background:rgba(255,255,255,.13); }.v11-btn:hover svg,.v11-btn:focus-visible svg { transform:translateX(3px); }.v11-btn:focus-visible { outline:2px solid #8ead9a; outline-offset:3px; }
.v11-assurance { display:flex; flex-wrap:wrap; gap:18px; margin:28px 0 0; padding:0; list-style:none; opacity:0; animation:v11-fade .65s 2.74s ease forwards; }.v11-assurance li { display:flex; align-items:center; gap:7px; color:#607167; font-size:.64rem; font-weight:700; }.v11-assurance svg { width:17px; height:17px; padding:3px; border-radius:50%; color:var(--v11-green); background:var(--v11-mint); fill:none; stroke:currentColor; stroke-width:2.1; stroke-linecap:round; stroke-linejoin:round; }
.v11-visual { position:relative; height:620px; opacity:0; transform:translateX(34px); animation:v11-visual-in .92s 2.2s cubic-bezier(.2,.76,.2,1) forwards; }
.v11-photo-wrap { position:absolute; inset:0 0 0 56px; overflow:hidden; border:10px solid #fff; border-radius:28px; background:#dce8e0; box-shadow:0 28px 65px rgba(10,61,41,.17); clip-path:inset(0 100% 0 0 round 28px); animation:v11-photo-wipe 1.05s 2.32s cubic-bezier(.2,.76,.2,1) forwards; }.v11-photo-wrap::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 54%,rgba(4,35,22,.32) 100%); content:""; }.v11-photo-wrap img { width:100%; height:114%; object-fit:cover; object-position:center 36%; transform:translate3d(0,var(--v7-py,0),0) scale(1.025); transition:transform .7s cubic-bezier(.2,.7,.2,1); animation:v11-photo-drift 11s 3.4s ease-in-out infinite alternate; }.v11-visual:hover .v11-photo-wrap img { transform:translate3d(0,var(--v7-py,0),0) scale(1.055); }
.v11-route { position:absolute; z-index:5; top:36px; left:0; width:205px; padding:20px 19px; border:1px solid rgba(10,61,41,.1); border-radius:18px; background:rgba(255,255,255,.96); box-shadow:0 18px 45px rgba(10,61,41,.13); backdrop-filter:blur(14px); opacity:0; transform:translateY(18px); animation:v11-rise .68s 2.7s ease forwards; }.v11-route>p { margin:0 0 16px; color:#769080; font:650 .52rem/1 var(--by3-mono); letter-spacing:.13em; text-transform:uppercase; }.v11-route ol { position:relative; display:grid; gap:13px; margin:0; padding:0; list-style:none; }.v11-route ol::before { position:absolute; top:16px; bottom:16px; left:14px; width:1px; background:#d8e3dc; content:""; transform:scaleY(0); transform-origin:top; animation:v11-route-line .6s 2.92s ease forwards; }.v11-route li { position:relative; display:grid; grid-template-columns:29px 1fr; align-items:center; gap:10px; opacity:0; transform:translateX(-8px); animation:v11-route-step .45s ease forwards; }.v11-route li:nth-child(1) { animation-delay:2.88s; }.v11-route li:nth-child(2) { animation-delay:3.04s; }.v11-route li:nth-child(3) { animation-delay:3.2s; }.v11-route i { z-index:1; display:grid; place-items:center; width:29px; height:29px; border:1px solid #d7e2da; border-radius:50%; color:var(--v11-green); background:#fff; font:600 .48rem var(--by3-mono); }.v11-route li:first-child i { color:#fff; border-color:var(--v11-green); background:var(--v11-green); box-shadow:0 0 0 5px rgba(10,61,41,.07); animation:v11-route-pulse 2.4s 3.35s ease-out infinite; }.v11-route span { display:flex; flex-direction:column; gap:3px; }.v11-route b { color:var(--v11-green); font-size:.64rem; }.v11-route small { color:#7a867f; font-size:.52rem; }
.v11-ring { position:absolute; z-index:3; top:-19px; right:-44px; width:128px; height:128px; border:1px solid rgba(10,61,41,.26); border-radius:50%; animation:v11-spin 20s linear infinite; }.v11-ring::before { position:absolute; inset:11px; border:1px dashed rgba(10,61,41,.25); border-radius:50%; content:""; }.v11-ring i { position:absolute; top:12px; left:30px; width:9px; height:9px; border-radius:50%; background:var(--v11-accent); box-shadow:0 0 0 6px rgba(110,146,123,.14); }
@keyframes v11-rise { to { opacity:1; transform:translateY(0); } } @keyframes v11-fade { to { opacity:1; } } @keyframes v11-visual-in { to { opacity:1; transform:translateX(0); } } @keyframes v11-spin { to { transform:rotate(360deg); } } @keyframes v11-photo-wipe { to { clip-path:inset(0 0 0 0 round 28px); } } @keyframes v11-photo-drift { to { object-position:center 43%; } } @keyframes v11-route-line { to { transform:scaleY(1); } } @keyframes v11-route-step { to { opacity:1; transform:translateX(0); } } @keyframes v11-route-pulse { 0%,100% { box-shadow:0 0 0 5px rgba(10,61,41,.07); } 45% { box-shadow:0 0 0 10px rgba(10,61,41,0); } }
@media (max-width:1120px) { .v11-grid { grid-template-columns:minmax(0,1fr) minmax(400px,.82fr); gap:46px; }.v11-hero h1 { font-size:clamp(4rem,6.8vw,5.8rem); }.v11-route { left:-6px; width:190px; } }
@media (max-width:900px) { .v11-hero { padding-top:58px; }.v11-backdrop { background:linear-gradient(180deg,#fff 0 47%,#f0f5f2 47% 100%); }.v11-grid { grid-template-columns:1fr; gap:48px; }.v11-copy { padding-bottom:0; }.v11-visual { width:min(100%,650px); height:660px; margin:0 auto; } }
@media (max-width:767px) { .v11-hero { min-height:0; padding-top:42px; }.v11-grid { gap:42px; }.v11-copy { padding:0; }.v11-eyebrow { margin-bottom:20px; font-size:.56rem; letter-spacing:.08em; }.v11-hero h1 { font-size:clamp(3.55rem,16.4vw,5rem); line-height:.9; letter-spacing:-.066em; }.v11-hero h1 em { margin-top:8px; }.v11-lead { margin-top:24px; font-size:.87rem; line-height:1.7; }.v11-actions { flex-direction:column; margin-top:25px; }.v11-btn { width:100%; min-height:56px; }.v11-assurance { display:grid; grid-template-columns:1fr 1fr; gap:12px 14px; margin-top:24px; }.v11-assurance li:last-child { grid-column:1/-1; }.v11-visual { width:100%; height:620px; margin:0; }.v11-photo-wrap { inset:72px 0 0 0; border-width:7px; border-radius:22px; }.v11-route { top:0; left:13px; width:190px; padding:16px; }.v11-route>p { margin-bottom:12px; }.v11-route ol { gap:9px; }.v11-route small { display:none; }.v11-ring { top:45px; right:-54px; width:112px; height:112px; } }
@media (max-width:390px) { .v11-route { left:8px; }.v11-assurance { grid-template-columns:1fr; }.v11-assurance li:last-child { grid-column:auto; } }
@media (prefers-reduced-motion:reduce) { .v11-hero * { animation-duration:.01ms!important; animation-delay:0s!important; }.v11-ring { display:none; }.v11-photo-wrap img { transition:none; } }

/* V12 — dark catering service-model band */
.v11-hero .v11-assurance { display:none; }
.v12-models { position:relative; overflow:hidden; padding:34px 0; color:#fff; background:#052b1c; }.v12-models::before { position:absolute; top:-150px; left:-90px; width:360px; height:360px; border:1px solid rgba(255,255,255,.07); border-radius:50%; content:""; }.v12-models::after { position:absolute; right:7%; bottom:-105px; width:240px; height:240px; border:1px dashed rgba(184,209,194,.13); border-radius:50%; content:""; animation:v11-spin 30s linear infinite; }
.v12-models__grid { position:relative; z-index:2; display:grid; grid-template-columns:1.08fr repeat(3,1fr); gap:10px; }
.v12-models__intro { display:flex; flex-direction:column; justify-content:center; min-height:250px; padding:24px 32px 24px 0; }.v12-models__intro>p { margin:0 0 16px; color:#9eb7a7; font:650 .55rem/1 var(--by3-mono); letter-spacing:.13em; text-transform:uppercase; }.v12-models__intro h2 { margin:0; color:#fff; font:650 clamp(2.15rem,3vw,3.45rem)/.98 var(--by3-sans); letter-spacing:-.048em; }.v12-models__intro h2 em { display:block; margin-top:6px; color:#b5c9bc; font:500 1.02em/.96 var(--by3-serif); letter-spacing:-.04em; }.v12-models__intro>a { display:inline-flex; align-items:center; gap:10px; width:max-content; margin-top:24px; color:#fff; font-size:.65rem; font-weight:750; }.v12-models__intro>a svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; transition:transform .2s ease; }.v12-models__intro>a:hover svg { transform:translateX(4px); }
.v12-model { position:relative; display:flex; flex-direction:column; min-height:250px; padding:24px; border:1px solid rgba(255,255,255,.11); border-radius:18px; color:#fff!important; background:rgba(255,255,255,.045); transition:background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease; }.v12-model::after { position:absolute; right:16px; bottom:16px; width:42px; height:42px; border:1px solid rgba(255,255,255,.08); border-radius:50%; content:""; transition:transform .28s ease,border-color .28s ease; }.v12-model:hover,.v12-model:focus-visible { color:#fff!important; border-color:rgba(184,209,194,.35); background:#0a3d29; box-shadow:0 18px 40px rgba(0,0,0,.14); transform:translateY(-5px); }.v12-model:focus-visible { outline:2px solid #b8d1c2; outline-offset:3px; }.v12-model:hover::after,.v12-model:focus-visible::after { border-color:rgba(255,255,255,.22); transform:scale(1.13); }
.v12-model__icon { display:grid; place-items:center; width:46px; height:46px; border-radius:14px; color:#052b1c; background:#dce9e0; transition:background .25s ease,transform .25s ease; }.v12-model:hover .v12-model__icon,.v12-model:focus-visible .v12-model__icon { background:#fff; transform:rotate(-5deg) scale(1.04); }.v12-model__icon svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.v12-model h3 { margin:28px 0 0; color:#fff; font:500 1.72rem/1 var(--by3-serif); }.v12-model p { margin:12px 0 0; color:rgba(255,255,255,.6); font-size:.68rem; line-height:1.65; }.v12-model__link { display:flex; align-items:center; gap:7px; margin-top:auto; padding-top:18px; color:#b8d1c2; font-size:.58rem; font-weight:750; text-transform:uppercase; letter-spacing:.07em; }.v12-model__link svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.8; transition:transform .2s ease; }.v12-model:hover .v12-model__link svg,.v12-model:focus-visible .v12-model__link svg { transform:translateX(4px); }
@media (max-width:1024px) { .v12-models__grid { grid-template-columns:1fr 1fr; }.v12-models__intro { padding-right:28px; }.v12-model { min-height:235px; } }
@media (max-width:767px) { .v12-models { padding:28px 0; }.v12-models__grid { grid-template-columns:1fr; gap:10px; }.v12-models__intro { min-height:auto; padding:26px 8px 32px; }.v12-models__intro h2 { font-size:clamp(2.5rem,12vw,3.5rem); }.v12-model { min-height:230px; padding:23px; }.v12-model h3 { font-size:1.9rem; } }
@media (prefers-reduced-motion:reduce) { .v12-models::after { animation:none; }.v12-model { transition:none; } }

/* V13 — unified corporate typography */
.v11-hero h1 em { font-family:var(--by3-sans); font-weight:650; font-style:normal; letter-spacing:-.048em; }
.v12-models__intro h2 em { font-family:var(--by3-sans); font-weight:600; font-style:normal; letter-spacing:-.045em; }
.v12-model h3 { font-family:var(--by3-sans); font-weight:650; letter-spacing:-.035em; }
.v7-title { font-family:var(--by3-sans); font-weight:750; line-height:.91; letter-spacing:-.058em; }
.v7-title em { font-family:var(--by3-sans); font-weight:600; font-style:normal; letter-spacing:-.048em; }
.v7-manifesto__caption { font-family:var(--by3-sans); font-weight:650; letter-spacing:-.035em; }
.v7-service__copy h3 { font-family:var(--by3-sans); font-weight:700; letter-spacing:-.045em; }
.v7-step h3 { font-family:var(--by3-sans); font-weight:650; letter-spacing:-.035em; }
.v7-cta__contact>a:not(.v7-btn) { font-family:var(--by3-sans); font-weight:650; letter-spacing:-.025em; }
@media (max-width:767px) { .v11-hero h1 { font-size:clamp(3.05rem,13.8vw,4.2rem); line-height:.93; letter-spacing:-.058em; }.v7-title { font-size:clamp(3rem,13.8vw,4.4rem); line-height:.95; }.v12-models__intro h2 { font-size:clamp(2.35rem,10.8vw,3.2rem); line-height:1; } }

/* V14 — Bahcivan logo signature preloader */
.v14-preloader { --v14-forest:#0a3d29; --v14-leaf:#789684; --v14-paper:#fbfdfb; display:grid; place-items:center; overflow:hidden; background:var(--v14-paper); color:var(--v14-forest); transform:translateZ(0) scale(1); transform-origin:center; will-change:opacity,transform; animation:v14-loader-out .72s 1.9s cubic-bezier(.4,0,.2,1) forwards; }
.v14-preloader::before,.v14-preloader::after { position:absolute; top:50%; left:50%; width:440px; height:440px; border:1px solid rgba(10,61,41,.075); border-radius:50%; background:none; content:""; transform:translate(-50%,-50%) scale(.72); animation:v14-ring-open 1.2s .12s cubic-bezier(.2,.75,.2,1) forwards; }
.v14-preloader::after { width:590px; height:590px; border-style:dashed; border-color:rgba(10,61,41,.055); animation-delay:.24s; }
.v14-preloader__ambient { position:absolute; inset:0; pointer-events:none; }.v14-preloader__ambient i { position:absolute; width:7px; height:7px; border-radius:50%; background:var(--v14-forest); box-shadow:0 0 0 7px rgba(10,61,41,.055); opacity:0; transform:translate(-50%,-50%) scale(.35); animation:v14-dot-in .5s ease forwards; }.v14-preloader__ambient i:nth-child(1) { top:calc(50% - 220px); left:50%; animation-delay:.52s; }.v14-preloader__ambient i:nth-child(2) { top:50%; left:calc(50% + 295px); animation-delay:.64s; }.v14-preloader__ambient i:nth-child(3) { top:calc(50% + 220px); left:50%; animation-delay:.76s; }
.v14-preloader__inner { position:relative; z-index:3; width:min(calc(100% - 54px),420px); text-align:center; opacity:0; transform:translateY(12px) scale(.97); animation:v14-inner-in .7s .1s cubic-bezier(.2,.78,.2,1) forwards,v14-inner-away .55s 1.9s cubic-bezier(.4,0,.2,1) forwards; }
.v14-preloader__logo-wrap { position:relative; width:min(100%,280px); margin-inline:auto; overflow:hidden; }.v14-preloader__logo-wrap::after { position:absolute; top:-35%; bottom:-35%; left:-38%; width:22%; background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent); content:""; transform:skewX(-16deg); animation:v14-shine .72s .92s ease forwards; }
.v14-preloader__logo { display:block; width:100%!important; height:auto!important; opacity:0; clip-path:inset(0 100% 0 0); filter:drop-shadow(0 9px 18px rgba(10,61,41,.08)); animation:v14-logo-write .86s .22s cubic-bezier(.65,0,.35,1) forwards; }
.v14-preloader__signature { display:flex; align-items:center; justify-content:center; gap:9px; width:150px; margin:26px auto 0; }.v14-preloader__signature i { display:block; width:0; height:1px; background:rgba(10,61,41,.25); animation:v14-line-open .48s .74s ease forwards; }.v14-preloader__signature span { display:block; width:6px; height:6px; border-radius:50%; background:var(--v14-forest); opacity:0; transform:scale(0); animation:v14-center-dot .42s .68s cubic-bezier(.2,.78,.2,1) forwards; }
@keyframes v14-ring-open { to { opacity:1; transform:translate(-50%,-50%) scale(1); } } @keyframes v14-dot-in { to { opacity:.45; transform:translate(-50%,-50%) scale(1); } } @keyframes v14-inner-in { to { opacity:1; transform:translateY(0) scale(1); } } @keyframes v14-logo-write { to { opacity:1; clip-path:inset(0); } } @keyframes v14-shine { to { left:118%; } } @keyframes v14-line-open { to { width:58px; } } @keyframes v14-center-dot { to { opacity:1; transform:scale(1); } } @keyframes v14-inner-away { to { opacity:0; transform:translateY(-3px) scale(.975); filter:blur(1.2px); } } @keyframes v14-loader-out { to { opacity:0; visibility:hidden; transform:translateZ(0) scale(1.018); } }
@media (max-width:767px) { .v14-preloader::before { width:320px; height:320px; }.v14-preloader::after { width:350px; height:350px; }.v14-preloader__ambient i:nth-child(1) { top:calc(50% - 160px); left:50%; }.v14-preloader__ambient i:nth-child(2) { top:50%; left:calc(50% + 175px); }.v14-preloader__ambient i:nth-child(3) { top:calc(50% + 160px); left:50%; }.v14-preloader__logo-wrap { width:225px; }.v14-preloader__signature { margin-top:22px; } }

/* V15 — corporate about section */
.v15-about { --v15-forest:#0a3d29; --v15-leaf:#789684; --v15-mint:#e9f1ec; position:relative; overflow:hidden; padding:118px 0 126px; color:#173427; border-top:1px solid #e4ebe6; background:#f8faf8; }
.v15-about__arc { position:absolute; top:-330px; right:-180px; width:660px; height:660px; border:1px solid rgba(10,61,41,.075); border-radius:50%; }.v15-about__arc::after { position:absolute; inset:58px; border:1px dashed rgba(10,61,41,.065); border-radius:50%; content:""; }
.v15-about__grid { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1fr); align-items:center; gap:clamp(66px,7vw,108px); }
.v15-about__media { position:relative; display:grid; grid-template-columns:minmax(0,1fr) 126px; align-items:end; gap:12px; min-height:600px; }.v15-about__media::before { position:absolute; z-index:-1; top:26px; right:66px; bottom:-22px; left:-22px; border:1px solid #cfddd4; border-radius:28px 28px 8px 28px; content:""; }
.v15-about__main,.v15-about__detail { position:relative; overflow:hidden; margin:0; background:#dbe7df; }.v15-about__main { height:600px; border-radius:26px 26px 7px 26px; }.v15-about__detail { height:330px; border-radius:7px 24px 24px 7px; }
.v15-about__main img,.v15-about__detail img { width:100%; object-fit:cover; transition:transform .75s cubic-bezier(.2,.7,.2,1); }.v15-about__main img { height:125%; object-position:center top; transform:translate3d(0,calc(var(--v7-py,0px) - 2%),0) scale(1.01); }.v15-about__detail img { height:128%; object-position:center top; transform:translate3d(0,calc(var(--v7-py,0px) - 3%),0) scale(1.02); }.v15-about__media:hover img { transform:translate3d(0,var(--v7-py,0px),0) scale(1.045); }
.v15-about__caption { position:absolute; right:0; bottom:358px; display:flex; align-items:center; gap:10px; margin:0; color:var(--v15-leaf); font-size:.53rem; letter-spacing:.08em; text-transform:uppercase; transform:rotate(-90deg) translateX(100%); transform-origin:right bottom; }.v15-about__caption span { color:var(--v15-forest); font-family:var(--by3-mono); font-weight:700; }.v15-about__caption b { padding-left:10px; border-left:1px solid #cbd9d0; font-weight:650; line-height:1.45; }
.v15-about__copy { max-width:620px; }.v15-about__eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 24px; color:#648171; font:700 .58rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }.v15-about__eyebrow i { display:block; width:28px; height:1px; background:var(--v15-forest); }
.v15-about h2 { margin:0; color:var(--v15-forest); font:750 clamp(3rem,4.25vw,5rem)/.96 var(--by3-sans); letter-spacing:-.06em; }.v15-about h2 em { display:block; margin-top:9px; color:#7b9a87; font:600 .82em/1 var(--by3-sans); font-style:normal; letter-spacing:-.05em; }
.v15-about__lead { max-width:590px; margin:28px 0 0; color:#68786f; font-size:.91rem; line-height:1.78; }
.v15-about__principles { margin-top:30px; border-bottom:1px solid #dbe5de; }.v15-principle { display:grid; grid-template-columns:46px 1fr; align-items:center; gap:15px; min-height:79px; padding:13px 0; border-top:1px solid #dbe5de; }.v15-principle__icon { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; color:var(--v15-forest); background:var(--v15-mint); transition:color .22s ease,background .22s ease,transform .22s ease; }.v15-principle__icon svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }.v15-principle:hover .v15-principle__icon { color:#fff; background:var(--v15-forest); transform:rotate(-4deg); }.v15-principle p { margin:0; }.v15-principle b { display:block; color:var(--v15-forest); font-size:.73rem; font-weight:750; }.v15-principle p span { display:block; margin-top:4px; color:#728078; font-size:.63rem; line-height:1.55; }
.v15-about__link { display:inline-flex; align-items:center; gap:15px; margin-top:28px; color:var(--v15-forest)!important; font-size:.67rem; font-weight:780; }.v15-about__link svg { box-sizing:content-box; width:15px; height:15px; padding:7px; border-radius:9px; color:#fff; background:var(--v15-forest); fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .22s ease,background .22s ease; }.v15-about__link:hover svg,.v15-about__link:focus-visible svg { background:#14583d; transform:translateX(4px); }.v15-about__link:focus-visible { outline:2px solid #8ead9a; outline-offset:5px; }
@media (max-width:1024px) { .v15-about { padding:96px 0 104px; }.v15-about__grid { grid-template-columns:minmax(0,.85fr) minmax(0,1fr); gap:48px; }.v15-about__media { grid-template-columns:minmax(0,1fr) 94px; min-height:530px; }.v15-about__main { height:530px; }.v15-about__detail { height:280px; }.v15-about h2 { font-size:clamp(2.7rem,5vw,4rem); } }
@media (max-width:767px) { .v15-about { padding:82px 0 90px; }.v15-about__grid { grid-template-columns:1fr; gap:52px; }.v15-about__copy { order:-1; }.v15-about h2 { font-size:clamp(2.65rem,12.5vw,3.65rem); line-height:.98; }.v15-about h2 em { font-size:.78em; line-height:1.04; }.v15-about__lead { font-size:.86rem; line-height:1.72; }.v15-about__media { grid-template-columns:minmax(0,1fr) 82px; min-height:440px; }.v15-about__media::before { top:18px; right:42px; bottom:-14px; left:-12px; border-radius:20px 20px 6px 20px; }.v15-about__main { height:440px; border-radius:20px 20px 6px 20px; }.v15-about__detail { height:230px; border-radius:6px 18px 18px 6px; }.v15-about__caption { display:none; }.v15-principle { min-height:86px; }.v15-about__arc { top:-230px; right:-270px; width:520px; height:520px; } }
@media (prefers-reduced-motion:reduce) { .v15-about__main img,.v15-about__detail img,.v15-principle__icon,.v15-about__link svg { transition:none; } }

/* V17 — quality standards and service route */
.v17-label { display:flex; align-items:center; gap:10px; margin:0 0 24px; font:700 .58rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }.v17-label i { display:block; width:28px; height:1px; background:currentColor; }
.v17-quality { position:relative; overflow:hidden; padding:112px 0 120px; color:#fff; background:#052b1c; }.v17-quality::before { position:absolute; top:0; right:0; left:0; height:1px; background:rgba(255,255,255,.12); content:""; }
.v17-quality__orbit { position:absolute; top:-230px; left:-190px; width:570px; height:570px; border:1px solid rgba(255,255,255,.065); border-radius:50%; }.v17-quality__orbit::before { position:absolute; inset:54px; border:1px dashed rgba(255,255,255,.055); border-radius:50%; content:""; }.v17-quality__orbit i { position:absolute; right:72px; bottom:76px; width:8px; height:8px; border-radius:50%; background:#b8d1c2; box-shadow:0 0 0 8px rgba(184,209,194,.08); }
.v17-quality__grid { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); align-items:start; gap:clamp(70px,8vw,122px); }
.v17-quality__intro { position:sticky; top:140px; }.v17-quality .v17-label { color:#9eb7a8; }.v17-quality__intro h2 { max-width:530px; margin:0; color:#fff; font:750 clamp(3.4rem,5vw,5.9rem)/.92 var(--by3-sans); letter-spacing:-.065em; }.v17-quality__intro h2 em { display:block; margin-top:10px; color:#aac0b2; font:600 .8em/1 var(--by3-sans); font-style:normal; letter-spacing:-.052em; }.v17-quality__intro>p { max-width:520px; margin:30px 0 0; color:rgba(255,255,255,.62); font-size:.9rem; line-height:1.8; }.v17-quality__note { display:inline-flex; margin-top:32px; padding:11px 14px; border:1px solid rgba(255,255,255,.12); border-radius:999px; color:#c4d5cb; background:rgba(255,255,255,.045); font-size:.56rem; font-weight:700; letter-spacing:.04em; }
.v17-quality__standards { border-bottom:1px solid rgba(255,255,255,.12); }.v17-standard { position:relative; display:grid; grid-template-columns:58px 1fr 22px; align-items:center; gap:18px; min-height:137px; padding:24px 0; border-top:1px solid rgba(255,255,255,.12); transition:padding .25s ease,background .25s ease; }.v17-standard:hover { padding-right:18px; padding-left:18px; background:rgba(255,255,255,.045); }.v17-standard__icon { display:grid; place-items:center; width:52px; height:52px; border-radius:15px; color:#052b1c; background:#dce9e0; transition:transform .25s ease,background .25s ease; }.v17-standard:hover .v17-standard__icon { background:#fff; transform:rotate(-5deg); }.v17-standard__icon svg { width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:1.55; stroke-linecap:round; stroke-linejoin:round; }.v17-standard h3 { margin:0; color:#fff; font:700 1.22rem/1.15 var(--by3-sans); letter-spacing:-.025em; }.v17-standard p { max-width:560px; margin:8px 0 0; color:rgba(255,255,255,.57); font-size:.69rem; line-height:1.65; }.v17-standard>i { position:relative; display:block; width:20px; height:20px; border:1px solid rgba(255,255,255,.18); border-radius:50%; }.v17-standard>i::before { position:absolute; top:5px; left:5px; width:7px; height:4px; border-bottom:1.5px solid #b8d1c2; border-left:1.5px solid #b8d1c2; content:""; transform:rotate(-45deg); }
.v17-process { position:relative; overflow:hidden; padding:112px 0 128px; color:#173427; background:#fff; }.v17-process::after { position:absolute; right:-200px; bottom:-320px; width:620px; height:620px; border:1px solid rgba(10,61,41,.07); border-radius:50%; content:""; }
.v17-process__head { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr); align-items:end; gap:80px; }.v17-process .v17-label { color:#678273; }.v17-process__head h2 { max-width:760px; margin:0; color:#0a3d29; font:750 clamp(3.25rem,4.8vw,5.6rem)/.93 var(--by3-sans); letter-spacing:-.064em; }.v17-process__head h2 em { display:block; margin-top:9px; color:#7c9987; font:600 .79em/1 var(--by3-sans); font-style:normal; letter-spacing:-.052em; }.v17-process__head>p { max-width:470px; margin:0 0 4px; color:#6b7971; font-size:.88rem; line-height:1.78; }
.v17-process__track { position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin-top:74px; }.v17-process__track::before,.v17-process__track::after { position:absolute; z-index:-1; top:31px; right:8%; left:8%; height:1px; content:""; }.v17-process__track::before { background:#d8e3dc; }.v17-process__track::after { background:#0a3d29; transform:scaleX(0); transform-origin:left; transition:transform 1.25s .22s cubic-bezier(.2,.75,.2,1); }.v17-process__track.is-visible::after { transform:scaleX(1); }
.v17-step { opacity:0; transform:translateY(18px); transition:opacity .55s ease,transform .55s ease; }.v17-process__track.is-visible .v17-step { opacity:1; transform:none; }.v17-process__track.is-visible .v17-step:nth-child(2) { transition-delay:.12s; }.v17-process__track.is-visible .v17-step:nth-child(3) { transition-delay:.24s; }.v17-process__track.is-visible .v17-step:nth-child(4) { transition-delay:.36s; }
.v17-step__mark { position:relative; display:grid; place-items:center; width:63px; height:63px; border:1px solid #cddbd2; border-radius:18px; color:#0a3d29; background:#f3f7f4; box-shadow:0 0 0 8px #fff; transition:color .25s ease,background .25s ease,transform .25s ease; }.v17-step:hover .v17-step__mark { color:#fff; background:#0a3d29; transform:translateY(-4px); }.v17-step__mark span { position:absolute; top:-9px; right:-9px; display:grid; place-items:center; width:24px; height:24px; border-radius:50%; color:#fff; background:#0a3d29; font:700 .46rem/1 var(--by3-mono); }.v17-step__mark svg { width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:1.55; stroke-linecap:round; stroke-linejoin:round; }.v17-step h3 { margin:27px 0 0; color:#0a3d29; font:700 1.28rem/1.15 var(--by3-sans); letter-spacing:-.035em; }.v17-step p { max-width:265px; margin:11px 0 0; color:#718078; font-size:.68rem; line-height:1.68; }
@media (max-width:1024px) { .v17-quality { padding:96px 0 104px; }.v17-quality__grid { grid-template-columns:1fr; gap:58px; }.v17-quality__intro { position:relative; top:auto; }.v17-quality__intro h2 { max-width:760px; }.v17-quality__intro>p { max-width:680px; }.v17-process { padding:98px 0 108px; }.v17-process__head { grid-template-columns:1fr; gap:30px; }.v17-process__head>p { max-width:650px; }.v17-process__track { grid-template-columns:1fr 1fr; gap:48px 28px; }.v17-process__track::before,.v17-process__track::after { display:none; } }
@media (max-width:767px) { .v17-quality { padding:82px 0 88px; }.v17-quality__intro h2 { font-size:clamp(3rem,14vw,4.2rem); }.v17-quality__intro h2 em { font-size:.76em; line-height:1.04; }.v17-quality__intro>p { font-size:.85rem; line-height:1.72; }.v17-quality__note { line-height:1.45; }.v17-standard { grid-template-columns:50px 1fr 18px; gap:13px; min-height:132px; }.v17-standard__icon { width:46px; height:46px; border-radius:13px; }.v17-standard h3 { font-size:1.04rem; }.v17-standard p { font-size:.63rem; }.v17-standard:hover { padding-right:0; padding-left:0; background:transparent; }.v17-process { padding:84px 0 92px; }.v17-process__head h2 { font-size:clamp(2.85rem,13.4vw,4rem); line-height:.96; }.v17-process__head h2 em { font-size:.77em; line-height:1.04; }.v17-process__head>p { font-size:.85rem; line-height:1.72; }.v17-process__track { grid-template-columns:1fr; gap:0; margin-top:54px; }.v17-process__track::before,.v17-process__track::after { display:block; top:32px; right:auto; bottom:42px; left:31px; width:1px; height:auto; }.v17-process__track::after { transform:scaleY(0); transform-origin:top; }.v17-process__track.is-visible::after { transform:scaleY(1); }.v17-step { display:grid; grid-template-columns:64px 1fr; gap:20px; padding-bottom:38px; }.v17-step__mark { width:62px; height:62px; }.v17-step h3 { margin:3px 0 0; font-size:1.2rem; }.v17-step p { max-width:none; margin-top:8px; font-size:.67rem; }.v17-process::after { right:-330px; bottom:-240px; } }
@media (prefers-reduced-motion:reduce) { .v17-standard,.v17-standard__icon,.v17-process__track::after,.v17-step,.v17-step__mark { transition:none; }.v17-step { opacity:1; transform:none; }.v17-process__track::after { transform:none; } }

/* V18 — verified reference logo wall */
.v18-references { position:relative; overflow:hidden; padding:108px 0 94px; color:#173427; border-top:1px solid #dde7e0; background:#f1f6f2; }.v18-references__ring { position:absolute; top:-350px; right:-220px; width:720px; height:720px; border:1px solid rgba(10,61,41,.065); border-radius:50%; }.v18-references__ring::after { position:absolute; inset:64px; border:1px dashed rgba(10,61,41,.055); border-radius:50%; content:""; }
.v18-references__head { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.16fr) minmax(320px,.84fr); align-items:end; gap:86px; }.v18-references__label { display:flex; align-items:center; gap:10px; margin:0 0 23px; color:#668273; font:700 .58rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }.v18-references__label i { display:block; width:28px; height:1px; background:#0a3d29; }.v18-references h2 { max-width:760px; margin:0; color:#0a3d29; font:750 clamp(3.35rem,4.8vw,5.7rem)/.93 var(--by3-sans); letter-spacing:-.064em; }.v18-references h2 em { display:block; margin-top:9px; color:#789684; font:600 .79em/1 var(--by3-sans); font-style:normal; letter-spacing:-.052em; }.v18-references__head>p { max-width:470px; margin:0 0 4px; color:#6d7b73; font-size:.88rem; line-height:1.78; }
.v18-references__wall { position:relative; z-index:2; display:grid; gap:12px; margin-top:66px; overflow:hidden; }.v18-references__wall::before,.v18-references__wall::after { position:absolute; z-index:5; top:0; bottom:0; width:11vw; pointer-events:none; content:""; }.v18-references__wall::before { left:0; background:linear-gradient(90deg,#f1f6f2,transparent); }.v18-references__wall::after { right:0; background:linear-gradient(-90deg,#f1f6f2,transparent); }
.v18-logo-row { display:flex; overflow:hidden; }.v18-logo-row__track { display:flex; flex:none; gap:12px; width:max-content; padding-left:12px; animation:v18-marquee 42s linear infinite; }.v18-logo-row--reverse .v18-logo-row__track { animation-name:v18-marquee-reverse; animation-duration:46s; }.v18-logo-set { display:flex; gap:12px; }.v18-references__wall:hover .v18-logo-row__track { animation-play-state:paused; }
.v18-logo { display:grid; flex:0 0 190px; place-items:center; width:190px; height:104px; margin:0; padding:18px; border:1px solid #dce6df; border-radius:16px; background:rgba(255,255,255,.82); box-shadow:0 9px 26px rgba(10,61,41,.035); transition:border-color .24s ease,background .24s ease,transform .24s ease,box-shadow .24s ease; }.v18-logo:hover { border-color:#b8cbbf; background:#fff; box-shadow:0 15px 34px rgba(10,61,41,.08); transform:translateY(-3px); }.v18-logo img { display:block; max-width:145px; max-height:62px; width:auto; height:auto; object-fit:contain; filter:grayscale(1) saturate(.25); opacity:.64; transition:filter .24s ease,opacity .24s ease,transform .24s ease; }.v18-logo:hover img { filter:none; opacity:1; transform:scale(1.035); }
.v18-references__source { display:flex; align-items:center; justify-content:center; gap:12px; margin-top:30px; color:#799083; font:650 .51rem/1 var(--by3-mono); letter-spacing:.09em; text-transform:uppercase; }.v18-references__source i { display:block; width:4px; height:4px; border-radius:50%; background:#0a3d29; }
@keyframes v18-marquee { to { transform:translateX(calc(-50% - 6px)); } } @keyframes v18-marquee-reverse { from { transform:translateX(calc(-50% - 6px)); } to { transform:translateX(0); } }
@media (max-width:1024px) { .v18-references { padding:96px 0 86px; }.v18-references__head { grid-template-columns:1fr; gap:28px; }.v18-references__head>p { max-width:650px; }.v18-logo { flex-basis:174px; width:174px; height:98px; } }
@media (max-width:767px) { .v18-references { padding:82px 0 76px; }.v18-references h2 { font-size:clamp(2.9rem,13.5vw,4rem); line-height:.96; }.v18-references h2 em { font-size:.77em; line-height:1.04; }.v18-references__head>p { font-size:.85rem; line-height:1.72; }.v18-references__wall { gap:10px; margin-top:48px; }.v18-logo-row__track,.v18-logo-set { gap:10px; }.v18-logo { flex-basis:154px; width:154px; height:88px; padding:14px; border-radius:14px; }.v18-logo img { max-width:122px; max-height:52px; }.v18-references__source { margin-top:24px; font-size:.46rem; }.v18-references__ring { top:-260px; right:-330px; width:580px; height:580px; } }
@media (prefers-reduced-motion:reduce) { .v18-logo-row { overflow-x:auto; scrollbar-width:none; }.v18-logo-row::-webkit-scrollbar { display:none; }.v18-logo-row__track { animation:none; }.v18-logo { transition:none; }.v18-logo img { transition:none; } }

/* V19 — remove detached orbit markers; keep the centered logo signature dot */
.v14-preloader__ambient { display:none!important; }
.v14-preloader__signature { width:96px; gap:0; }.v14-preloader__signature i { background:linear-gradient(90deg,transparent,rgba(10,61,41,.55),transparent); }

/* V20 — WhatsApp quote form */
.v20-contact { position:relative; overflow:hidden; padding:112px 0 120px; color:#fff; background:linear-gradient(135deg,#0a3d29 0%,#052b1c 72%); }.v20-contact::before { position:absolute; top:0; right:0; left:0; height:1px; background:rgba(255,255,255,.12); content:""; }.v20-contact__orbit { position:absolute; top:-260px; left:-250px; width:670px; height:670px; border:1px solid rgba(255,255,255,.07); border-radius:50%; }.v20-contact__orbit::after { position:absolute; inset:62px; border:1px dashed rgba(255,255,255,.06); border-radius:50%; content:""; }
.v20-contact__grid { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr); align-items:center; gap:clamp(70px,8vw,122px); }.v20-contact__copy { max-width:610px; }.v20-contact__label { display:flex; align-items:center; gap:10px; margin:0 0 24px; color:#a8beb0; font:700 .58rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }.v20-contact__label i { display:block; width:28px; height:1px; background:#b8d1c2; }.v20-contact h2 { margin:0; color:#fff; font:750 clamp(3.45rem,5vw,5.85rem)/.92 var(--by3-sans); letter-spacing:-.066em; }.v20-contact h2 em { display:block; margin-top:10px; color:#aec3b6; font:600 .78em/1 var(--by3-sans); font-style:normal; letter-spacing:-.052em; }.v20-contact__lead { max-width:550px; margin:30px 0 0; color:rgba(255,255,255,.64); font-size:.9rem; line-height:1.78; }
.v20-contact__details { display:grid; gap:0; margin-top:38px; border-bottom:1px solid rgba(255,255,255,.12); }.v20-contact__details>a,.v20-contact__details>div { display:grid; grid-template-columns:42px 1fr; align-items:center; gap:14px; min-height:76px; padding:12px 0; color:#fff!important; border-top:1px solid rgba(255,255,255,.12); }.v20-contact__details>a>span,.v20-contact__details>div>span { display:grid; place-items:center; width:38px; height:38px; border-radius:11px; color:#052b1c; background:#dce9e0; }.v20-contact__details svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.55; stroke-linecap:round; stroke-linejoin:round; }.v20-contact__details p { margin:0; }.v20-contact__details small { display:block; color:rgba(255,255,255,.48); font-size:.51rem; letter-spacing:.06em; text-transform:uppercase; }.v20-contact__details b { display:block; margin-top:4px; color:#fff; font-size:.69rem; font-weight:680; }
.v20-form { padding:30px; border:1px solid rgba(255,255,255,.14); border-radius:25px; color:#173427; background:#fff; box-shadow:0 30px 70px rgba(0,0,0,.2); }.v20-form__head { display:flex; align-items:center; justify-content:space-between; margin-bottom:25px; padding-bottom:20px; border-bottom:1px solid #e0e8e2; }.v20-form__head p { margin:0; color:#0a3d29; font-size:.72rem; font-weight:800; }.v20-form__head>span { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; color:#fff; background:#0a3d29; }.v20-form__head svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.55; stroke-linecap:round; stroke-linejoin:round; }
.v20-form__grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.v20-field { display:grid; gap:8px; }.v20-field--full { grid-column:1/-1; }.v20-field>span { color:#4f6659; font-size:.56rem; font-weight:750; letter-spacing:.035em; }.v20-field input,.v20-field select,.v20-field textarea { width:100%; margin:0; border:1px solid #d7e2da; border-radius:12px; color:#173427; outline:none; background:#f8faf8; font-family:var(--by3-sans); font-size:.72rem; transition:border-color .2s ease,background .2s ease,box-shadow .2s ease; }.v20-field input,.v20-field select { min-height:53px; padding:0 14px; }.v20-field textarea { min-height:92px; padding:14px; resize:vertical; }.v20-field input::placeholder,.v20-field textarea::placeholder { color:#9aa8a0; }.v20-field input:focus,.v20-field select:focus,.v20-field textarea:focus { border-color:#789684; background:#fff; box-shadow:0 0 0 3px rgba(10,61,41,.08); }
.v20-consent { display:grid; grid-template-columns:18px 1fr; align-items:start; gap:9px; margin-top:18px; color:#6b7a72; font-size:.55rem; line-height:1.5; }.v20-consent input { width:16px; height:16px; margin:1px 0 0; accent-color:#0a3d29; }.v20-submit { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:57px; margin-top:20px; padding:0 13px 0 19px; border:0; border-radius:13px; color:#fff; background:#0a3d29; font-family:var(--by3-sans); font-size:.68rem; font-weight:800; cursor:pointer; box-shadow:0 14px 28px rgba(10,61,41,.18); transition:background .22s ease,transform .22s ease,box-shadow .22s ease; }.v20-submit svg { box-sizing:content-box; width:15px; height:15px; padding:6px; border-radius:9px; background:rgba(255,255,255,.13); fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .22s ease; }.v20-submit:hover,.v20-submit:focus-visible { background:#14583d; box-shadow:0 17px 34px rgba(10,61,41,.24); transform:translateY(-2px); }.v20-submit:hover svg,.v20-submit:focus-visible svg { transform:translateX(3px); }.v20-submit:focus-visible { outline:2px solid #8ead9a; outline-offset:3px; }.v20-form__note { margin:12px 0 0; color:#829088; font-size:.51rem; line-height:1.5; text-align:center; }
@media (max-width:1024px) { .v20-contact { padding:96px 0 104px; }.v20-contact__grid { grid-template-columns:1fr; gap:58px; }.v20-contact__copy { max-width:760px; }.v20-contact__lead { max-width:680px; }.v20-form { width:min(100%,720px); } }
@media (max-width:767px) { .v20-contact { padding:82px 0 88px; }.v20-contact h2 { font-size:clamp(3rem,14vw,4.25rem); }.v20-contact h2 em { font-size:.76em; line-height:1.04; }.v20-contact__lead { font-size:.85rem; line-height:1.72; }.v20-contact__details { margin-top:30px; }.v20-form { padding:21px 17px; border-radius:20px; }.v20-form__grid { grid-template-columns:1fr; gap:14px; }.v20-field--full { grid-column:auto; }.v20-field input,.v20-field select { min-height:54px; }.v20-contact__orbit { top:-220px; left:-330px; width:590px; height:590px; } }
@media (prefers-reduced-motion:reduce) { .v20-field input,.v20-field select,.v20-field textarea,.v20-submit,.v20-submit svg { transition:none; } }

/* V20 consent control — keep the native checkbox from shifting when checked. */
.v20-consent {
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
}
.v20-consent input[type="checkbox"] {
  -webkit-appearance:none;
  appearance:none;
  box-sizing:border-box;
  flex:0 0 18px;
  width:18px;
  height:18px;
  margin:0;
  border:1px solid #809087;
  border-radius:4px;
  outline:none;
  background-color:#fff;
  background-position:center;
  background-repeat:no-repeat;
  background-size:11px 9px;
  cursor:pointer;
  transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease;
}
.v20-consent input[type="checkbox"]:checked {
  border-color:#0a3d29;
  background-color:#0a3d29;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5.2 4.2 8.5 11 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.v20-consent input[type="checkbox"]:focus-visible {
  box-shadow:0 0 0 3px rgba(10,61,41,.14);
}
.v20-consent span {
  display:block;
  min-width:0;
  padding:0;
}

/* V20 service model selector */
.v20-select__control { position:relative; }
.v20-select .v20-select__native {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  min-height:1px!important;
  margin:0!important;
  padding:0!important;
  opacity:0;
  pointer-events:none;
}
.v20-select__trigger {
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  min-height:53px;
  padding:0 10px 0 14px;
  border:1px solid #d7e2da;
  border-radius:12px;
  color:#718078;
  outline:none;
  background:#f8faf8;
  font:500 .72rem/1.2 var(--by3-sans);
  text-align:left;
  cursor:pointer;
  transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease;
}
.v20-select__trigger [data-v20-select-value] { color:inherit!important; }
.v20-select .v20-select__trigger,
.v20-select .v20-select__trigger:hover,
.v20-select .v20-select__trigger:focus,
.v20-select .v20-select__trigger:focus-visible,
.v20-select .v20-select__trigger:active {
  border-color:#d7e2da!important;
  color:#718078!important;
  background:#f8faf8!important;
  box-shadow:none!important;
}
.v20-select.is-open .v20-select__trigger,
.v20-select.is-open .v20-select__trigger:hover,
.v20-select.is-open .v20-select__trigger:focus {
  border-color:#789684!important;
  color:#718078!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(10,61,41,.08)!important;
}
.v20-select.has-value .v20-select__trigger,
.v20-select.has-value .v20-select__trigger:hover,
.v20-select.has-value .v20-select__trigger:focus { color:#173427!important; }
.v20-select__trigger svg {
  box-sizing:content-box;
  flex:0 0 auto;
  width:14px;
  height:14px;
  padding:9px;
  border-radius:10px;
  color:#0a3d29;
  background:#e7efe9;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  transition:transform .2s ease,background-color .2s ease;
}
.v20-select__trigger:hover { border-color:#a9bdae; background:#fff; }
.v20-select__trigger:focus-visible,
.v20-select.is-open .v20-select__trigger {
  border-color:#789684;
  background:#fff;
  box-shadow:0 0 0 3px rgba(10,61,41,.08);
}
.v20-select.is-open .v20-select__trigger svg { background:#dce9e0; transform:rotate(180deg); }
.v20-select.has-value .v20-select__trigger { color:#173427; font-weight:650; }
.v20-select.has-error .v20-select__trigger { border-color:#ad5d50; box-shadow:0 0 0 3px rgba(173,93,80,.1); }
.v20-select__menu {
  position:absolute;
  z-index:20;
  top:calc(100% + 8px);
  right:0;
  left:0;
  padding:7px;
  border:1px solid #d7e2da;
  border-radius:15px;
  background:#fff;
  box-shadow:0 22px 46px rgba(5,43,28,.18);
}
.v20-select__menu[hidden] { display:none!important; }
.v20-select__menu>button {
  display:grid;
  grid-template-columns:9px 1fr;
  align-items:center;
  gap:11px;
  width:100%;
  padding:11px 12px;
  border:0;
  border-radius:10px;
  color:#173427;
  background:transparent;
  font-family:var(--by3-sans);
  text-align:left;
  cursor:pointer;
  transition:color .18s ease,background-color .18s ease;
}
.v20-select__menu>button+button { margin-top:2px; }
.v20-select__menu>button i {
  width:7px;
  height:7px;
  border:1px solid #90a89a;
  border-radius:50%;
  background:#fff;
  transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease;
}
.v20-select__menu>button span { display:grid; gap:3px; }
.v20-select__menu>button b { font-size:.68rem; font-weight:760; }
.v20-select__menu>button small { color:#839188; font-size:.53rem; line-height:1.3; }
.v20-select__menu>button:hover,
.v20-select__menu>button:focus-visible,
.v20-select__menu>button:focus,
.v20-select__menu>button[aria-selected="true"] { border:0!important; color:#0a3d29!important; outline:none!important; background:#edf3ef!important; box-shadow:none!important; }
.v20-select__menu>button:hover i,
.v20-select__menu>button:focus-visible i,
.v20-select__menu>button[aria-selected="true"] i {
  border-color:#0a3d29;
  background:#0a3d29;
  box-shadow:0 0 0 3px #dce9e0;
}
@media (max-width:767px) {
  .v20-select__trigger { min-height:54px; }
  .v20-select__menu>button { padding:12px; }
}

/* V21 — corporate quote modal */
body.v21-modal-open { overflow:hidden; }
.v21-modal[hidden] { display:none!important; }
.v21-modal {
  position:fixed;
  z-index:100000;
  inset:0;
  display:grid;
  place-items:center;
  padding:20px;
  font-family:var(--by3-sans);
}
.v21-modal__backdrop {
  position:absolute;
  inset:0;
  background:rgba(3,28,18,.78);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  opacity:0;
  transition:opacity .28s ease;
}
.v21-modal__dialog {
  position:relative;
  z-index:2;
  width:min(1100px,calc(100vw - 40px));
  max-height:calc(100dvh - 40px);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
  border-radius:28px;
  outline:none;
  background:#fff;
  box-shadow:0 40px 110px rgba(1,20,12,.38);
  opacity:0;
  transform:translateY(24px) scale(.975);
  transition:opacity .28s ease,transform .38s cubic-bezier(.2,.78,.2,1);
}
.v21-modal.is-open .v21-modal__backdrop { opacity:1; }
.v21-modal.is-open .v21-modal__dialog { opacity:1; transform:none; }
.v21-modal__grid { display:grid; grid-template-columns:minmax(360px,.82fr) minmax(540px,1.18fr); min-height:680px; }
.v21-modal__close {
  position:absolute;
  z-index:5;
  top:17px;
  right:17px;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  padding:0;
  border:1px solid #d9e3dc;
  border-radius:13px;
  color:#0a3d29;
  background:rgba(255,255,255,.92);
  cursor:pointer;
  box-shadow:0 8px 22px rgba(10,61,41,.08);
  transition:color .2s ease,background-color .2s ease,transform .2s ease;
}
.v21-modal__close svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; }
.v21-modal__close:hover,.v21-modal__close:focus-visible { color:#fff; outline:none; background:#0a3d29; transform:rotate(4deg); }
.v21-modal__intro {
  position:relative;
  overflow:hidden;
  padding:45px 42px 38px;
  color:#fff;
  background:linear-gradient(145deg,#0b432d 0%,#042c1d 76%);
}
.v21-modal__intro::before { position:absolute; top:-225px; left:-245px; width:560px; height:560px; border:1px solid rgba(255,255,255,.08); border-radius:50%; content:""; }
.v21-modal__intro::after { position:absolute; right:-120px; bottom:-170px; width:390px; height:390px; border:1px dashed rgba(255,255,255,.09); border-radius:50%; content:""; }
.v21-modal__logo { position:relative; z-index:2; display:block; width:170px!important; height:auto!important; margin:0 0 50px; filter:brightness(0) invert(1); opacity:.94; }
.v21-modal__eyebrow { position:relative; z-index:2; display:flex; align-items:center; gap:10px; margin:0 0 20px; color:#a8beb0; font:700 .55rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }
.v21-modal__eyebrow i { width:25px; height:1px; background:#b8d1c2; }
.v21-modal__intro h2 { position:relative; z-index:2; margin:0; color:#fff; font:750 clamp(2.7rem,3.7vw,4.25rem)/.93 var(--by3-sans); letter-spacing:-.06em; }
.v21-modal__intro h2 em { display:block; margin-top:8px; color:#aec3b6; font:.62em/1.02 var(--by3-sans); font-style:normal; font-weight:620; letter-spacing:-.045em; }
.v21-modal__lead { position:relative; z-index:2; margin:24px 0 0; color:rgba(255,255,255,.64); font-size:.75rem; line-height:1.68; }
.v21-modal__assurances { position:relative; z-index:2; display:grid; gap:0; margin-top:29px; border-bottom:1px solid rgba(255,255,255,.12); }
.v21-modal__assurances>div { display:grid; grid-template-columns:30px 1fr; gap:12px; padding:12px 0; border-top:1px solid rgba(255,255,255,.12); }
.v21-modal__assurances>div>span { padding-top:3px; color:#88a594; font:700 .51rem/1 var(--by3-mono); }
.v21-modal__assurances p { margin:0; }
.v21-modal__assurances b { display:block; color:#fff; font-size:.66rem; font-weight:720; }
.v21-modal__assurances small { display:block; margin-top:3px; color:rgba(255,255,255,.48); font-size:.53rem; line-height:1.4; }
.v21-modal__phone { position:relative; z-index:2; display:flex; align-items:center; gap:12px; margin-top:25px; color:#fff!important; }
.v21-modal__phone>svg { box-sizing:content-box; width:18px; height:18px; padding:10px; border-radius:12px; color:#0a3d29; background:#dce9e0; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.v21-modal__phone span { display:grid; gap:3px; }
.v21-modal__phone small { color:rgba(255,255,255,.46); font-size:.48rem; letter-spacing:.06em; text-transform:uppercase; }
.v21-modal__phone b { color:#fff; font-size:.68rem; font-weight:760; }
.v21-form {
  max-height:calc(100dvh - 40px);
  overflow-y:auto;
  padding:43px 46px 34px;
  border:0;
  border-radius:0;
  box-shadow:none;
  scrollbar-width:thin;
  scrollbar-color:#b8c8be transparent;
}
.v21-form .v20-form__head { padding-right:48px; }
.v21-form .v20-form__head>div>small { display:block; margin-bottom:5px; color:#829289; font:.49rem/1 var(--by3-mono); letter-spacing:.08em; text-transform:uppercase; }
.v21-form .v20-form__head p { font-size:.86rem; }
.v21-form .v20-form__head>span { width:42px; height:42px; }
.v21-form .v20-field input,.v21-form .v20-field select { min-height:51px; }
.v21-form .v20-field textarea { min-height:82px; }
.v21-form .v20-submit { min-height:55px; }
.v21-modal-trigger { cursor:pointer; }
@media (max-width:900px) {
  .v21-modal { padding:0; }
  .v21-modal__dialog { width:100%; max-height:100dvh; height:100dvh; border:0; border-radius:0; overflow-y:auto; }
  .v21-modal__grid { grid-template-columns:1fr; min-height:0; }
  .v21-modal__intro { padding:74px 24px 30px; }
  .v21-modal__logo { width:150px!important; margin-bottom:34px; }
  .v21-modal__intro h2 { max-width:590px; font-size:clamp(2.8rem,10vw,4.2rem); }
  .v21-modal__lead { max-width:610px; }
  .v21-modal__assurances { display:none; }
  .v21-modal__phone { margin-top:22px; }
  .v21-modal__grid { width:100%!important; margin:0!important; }
  .v21-form { box-sizing:border-box; align-self:stretch; width:100%!important; max-width:none!important; max-height:none; margin:0!important; overflow:visible; padding:31px 24px 42px; }
  .v21-form .v20-form__head { padding-right:0; }
  .v21-modal__close { position:fixed; top:14px; right:14px; }
}
@media (max-width:600px) {
  .v21-modal__intro { padding:72px 18px 27px; }
  .v21-modal__logo { width:136px!important; margin-bottom:29px; }
  .v21-modal__eyebrow { margin-bottom:16px; }
  .v21-modal__intro h2 { font-size:clamp(2.55rem,12vw,3.35rem); }
  .v21-modal__lead { margin-top:19px; font-size:.72rem; }
  .v21-form { padding:27px 17px 38px; }
  .v21-form .v20-form__head { padding-right:0; }
}
@media (prefers-reduced-motion:reduce) {
  .v21-modal__backdrop,.v21-modal__dialog,.v21-modal__close { transition:none; }
}

/* V22 — expandable real-photo gallery */
.v22-gallery { position:relative; overflow:hidden; padding:112px 0 104px; color:#173427; border-top:1px solid #e0e8e2; background:#fff; }
.v22-gallery__ring { position:absolute; top:-330px; left:-290px; width:720px; height:720px; border:1px solid rgba(10,61,41,.055); border-radius:50%; }
.v22-gallery__ring::after { position:absolute; inset:70px; border:1px dashed rgba(10,61,41,.045); border-radius:50%; content:""; }
.v22-gallery__head { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.16fr) minmax(320px,.84fr); align-items:end; gap:86px; }
.v22-gallery__eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 23px; color:#668273; font:700 .58rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }
.v22-gallery__eyebrow i { display:block; width:28px; height:1px; background:#0a3d29; }
.v22-gallery h2 { max-width:800px; margin:0; color:#0a3d29; font:750 clamp(3.35rem,4.8vw,5.7rem)/.93 var(--by3-sans); letter-spacing:-.064em; }
.v22-gallery h2 em { display:block; margin-top:9px; color:#789684; font:.79em/1 var(--by3-sans); font-style:normal; font-weight:600; letter-spacing:-.052em; }
.v22-gallery__head>p { max-width:470px; margin:0 0 4px; color:#6d7b73; font-size:.88rem; line-height:1.78; }
.v22-gallery__rail { position:relative; z-index:2; display:flex; gap:12px; height:590px; margin-top:66px; }
.v22-gallery__card,
.v22-gallery__card:hover,
.v22-gallery__card:focus,
.v22-gallery__card:active {
  position:relative;
  flex:1 1 0;
  min-width:0;
  height:100%;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
  border:0!important;
  border-radius:18px;
  color:#fff!important;
  outline:none!important;
  background:#0a3d29!important;
  box-shadow:none!important;
  cursor:zoom-in;
  isolation:isolate;
  transition:flex .58s cubic-bezier(.2,.75,.2,1),opacity .35s ease,transform .35s ease!important;
}
.v22-gallery__card img { position:absolute; z-index:-2; top:0; left:0; width:100%!important; height:125%!important; object-fit:cover; object-position:center top; filter:saturate(.88) contrast(1.02); transform:scale(1.01); transition:filter .5s ease,transform .72s cubic-bezier(.2,.75,.2,1); }
.v22-gallery__card--low img { top:-25%; object-position:center bottom; }
.v22-gallery__shade { position:absolute; z-index:-1; inset:0; background:linear-gradient(180deg,rgba(4,31,20,.03) 35%,rgba(4,31,20,.74) 100%); transition:background .35s ease; }
.v22-gallery__meta { position:absolute; right:22px; bottom:24px; left:22px; display:grid; gap:7px; text-align:left; transform:translateY(4px); transition:transform .35s ease; }
.v22-gallery__meta small { color:rgba(255,255,255,.67); font:700 .49rem/1 var(--by3-mono); letter-spacing:.11em; text-transform:uppercase; }
.v22-gallery__meta b { color:#fff; font-size:.82rem; font-weight:740; line-height:1.22; letter-spacing:-.02em; }
.v22-gallery__expand { position:absolute; top:17px; right:17px; display:grid; place-items:center; width:38px; height:38px; border-radius:12px; color:#0a3d29; background:rgba(255,255,255,.9); opacity:0; transform:translateY(-6px); transition:opacity .25s ease,transform .25s ease; }
.v22-gallery__expand svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.v22-gallery__rail:hover .v22-gallery__card:not(:hover) { flex:.78 1 0; opacity:.72; }
.v22-gallery__rail .v22-gallery__card:hover,.v22-gallery__rail .v22-gallery__card:focus-visible { flex:1.58 1 0; opacity:1; transform:translateY(-4px); }
.v22-gallery__card:hover img,.v22-gallery__card:focus-visible img { filter:saturate(1.03) contrast(1.02); transform:scale(1.055); }
.v22-gallery__card:hover .v22-gallery__meta,.v22-gallery__card:focus-visible .v22-gallery__meta { transform:none; }
.v22-gallery__card:hover .v22-gallery__expand,.v22-gallery__card:focus-visible .v22-gallery__expand { opacity:1; transform:none; }
.v22-gallery__card:focus-visible { box-shadow:0 0 0 3px #9ab2a3!important; }
.v22-gallery__foot { display:flex; align-items:center; justify-content:flex-end; gap:24px; margin-top:25px; }
.v22-gallery__foot>p { margin:0; color:#7c8b82; font:.52rem/1.5 var(--by3-mono); letter-spacing:.08em; text-transform:uppercase; }
.v22-gallery__foot>a { display:flex; align-items:center; gap:12px; min-height:46px; padding:0 9px 0 17px; border:1px solid #cbd8cf; border-radius:12px; color:#0a3d29!important; font-size:.62rem; font-weight:760; transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease; }
.v22-gallery__foot>a svg { box-sizing:content-box; width:14px; height:14px; padding:6px; border-radius:8px; background:#edf3ef; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.v22-gallery__foot>a:hover,.v22-gallery__foot>a:focus-visible { border-color:#0a3d29; color:#fff!important; outline:none; background:#0a3d29; transform:translateY(-2px); }
.v22-gallery__foot>a:hover svg,.v22-gallery__foot>a:focus-visible svg { background:rgba(255,255,255,.14); }
body.v22-lightbox-open { overflow:hidden; }
.v22-lightbox[hidden] { display:none!important; }
.v22-lightbox { position:fixed; z-index:100001; inset:0; display:grid; place-items:center; padding:24px; }
.v22-lightbox__backdrop { position:absolute; inset:0; background:rgba(2,23,14,.9); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); opacity:0; transition:opacity .25s ease; }
.v22-lightbox__dialog { position:relative; z-index:2; display:grid; grid-template-columns:54px minmax(0,1fr) 54px; align-items:center; gap:18px; width:min(1180px,calc(100vw - 48px)); height:auto; max-height:calc(100dvh - 48px); outline:none; opacity:0; transform:translateY(18px) scale(.98); transition:opacity .28s ease,transform .36s cubic-bezier(.2,.78,.2,1); }
.v22-lightbox.is-open .v22-lightbox__backdrop { opacity:1; }
.v22-lightbox.is-open .v22-lightbox__dialog { opacity:1; transform:none; }
.v22-lightbox figure { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:12px; min-width:0; width:100%; height:auto; max-height:calc(100dvh - 48px); margin:0; }
.v22-lightbox figure img { display:block; width:auto!important; height:auto!important; max-width:100%!important; max-height:calc(100dvh - 108px)!important; min-height:0; border-radius:4px; object-fit:contain; }
.v22-lightbox figcaption { flex:0 0 auto; min-height:18px; color:rgba(255,255,255,.78); font-size:.67rem; font-weight:650; line-height:1.4; text-align:center; }
.v22-lightbox__close,
.v22-lightbox__close:hover,
.v22-lightbox__close:focus,
.v22-lightbox__nav,
.v22-lightbox__nav:hover,
.v22-lightbox__nav:focus {
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.2)!important;
  border-radius:14px;
  color:#fff!important;
  outline:none!important;
  background:rgba(255,255,255,.08)!important;
  box-shadow:none!important;
  cursor:pointer;
  transition:background-color .2s ease,transform .2s ease!important;
}
.v22-lightbox__close:hover,.v22-lightbox__close:focus-visible,.v22-lightbox__nav:hover,.v22-lightbox__nav:focus-visible { background:#fff!important; color:#0a3d29!important; transform:scale(1.05); }
.v22-lightbox__close { position:absolute; z-index:4; top:0; right:0; }
.v22-lightbox__nav--prev { grid-column:1; }
.v22-lightbox figure { grid-column:2; grid-row:1; }
.v22-lightbox__nav--next { grid-column:3; }
.v22-lightbox__close svg,.v22-lightbox__nav svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
@media (max-width:1024px) {
  .v22-gallery { padding:96px 0 88px; }
  .v22-gallery__head { grid-template-columns:1fr; gap:28px; }
  .v22-gallery__head>p { max-width:650px; }
  .v22-gallery__rail { height:540px; }
}
@media (max-width:767px) {
  .v22-gallery { padding:82px 0 76px; }
  .v22-gallery h2 { font-size:clamp(2.9rem,13.5vw,4rem); line-height:.96; }
  .v22-gallery h2 em { font-size:.77em; line-height:1.04; }
  .v22-gallery__head>p { font-size:.85rem; line-height:1.72; }
  .v22-gallery__rail { width:calc(100vw - 15px); height:510px; margin-top:48px; padding-right:30px; gap:10px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
  .v22-gallery__rail::-webkit-scrollbar { display:none; }
  .v22-gallery__card,.v22-gallery__rail:hover .v22-gallery__card:not(:hover),.v22-gallery__rail .v22-gallery__card:hover { flex:0 0 80vw; min-width:275px; max-width:345px; opacity:1; transform:none; scroll-snap-align:start; }
  .v22-gallery__expand { opacity:1; transform:none; }
  .v22-gallery__foot { align-items:flex-start; flex-direction:column; margin-top:20px; }
  .v22-gallery__foot>a { width:100%; justify-content:space-between; }
  .v22-gallery__ring { top:-250px; left:-390px; width:620px; height:620px; }
  .v22-lightbox { padding:12px; }
  .v22-lightbox__dialog { display:block; width:100%; height:calc(100dvh - 24px); }
  .v22-lightbox figure { height:100%; max-height:100%; padding:54px 0 72px; }
  .v22-lightbox figure img { max-height:calc(100dvh - 170px)!important; }
  .v22-lightbox__close { top:0; right:0; }
  .v22-lightbox__nav { position:absolute; z-index:4; bottom:12px; }
  .v22-lightbox__nav--prev { left:calc(50% - 54px); }
  .v22-lightbox__nav--next { right:calc(50% - 54px); }
}
@media (prefers-reduced-motion:reduce) {
  .v22-gallery__card,.v22-gallery__card img,.v22-gallery__meta,.v22-gallery__expand,.v22-lightbox__backdrop,.v22-lightbox__dialog { transition:none!important; }
}

/* V23 — corporate FAQ */
.v23-faq { position:relative; overflow:hidden; padding:118px 0 126px; color:#173427; border-top:1px solid #dce6df; background:#fbfcfb; }
.v23-faq__ring { position:absolute; right:-310px; bottom:-380px; width:760px; height:760px; border:1px solid rgba(10,61,41,.055); border-radius:50%; }
.v23-faq__ring::after { position:absolute; inset:72px; border:1px dashed rgba(10,61,41,.045); border-radius:50%; content:""; }
.v23-faq__grid { position:relative; z-index:2; display:grid; grid-template-columns:minmax(340px,.78fr) minmax(540px,1.22fr); align-items:start; gap:clamp(76px,9vw,138px); }
.v23-faq__intro { position:sticky; top:132px; }
.v23-faq__eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 24px; color:#668273; font:700 .58rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }
.v23-faq__eyebrow i { display:block; width:28px; height:1px; background:#0a3d29; }
.v23-faq__intro h2 { max-width:580px; margin:0; color:#0a3d29; font:750 clamp(3.4rem,4.7vw,5.45rem)/.93 var(--by3-sans); letter-spacing:-.064em; }
.v23-faq__intro h2 em { display:block; margin-top:9px; color:#789684; font:.75em/1.03 var(--by3-sans); font-style:normal; font-weight:600; letter-spacing:-.052em; }
.v23-faq__lead { max-width:500px; margin:28px 0 0; color:#6d7b73; font-size:.86rem; line-height:1.76; }
.v23-faq__actions { display:grid; gap:14px; max-width:390px; margin-top:34px; }
.v23-faq__quote { display:flex; align-items:center; justify-content:space-between; min-height:56px; padding:0 12px 0 20px; border:1px solid #0a3d29; border-radius:14px; color:#fff!important; background:#0a3d29; font-size:.68rem; font-weight:790; box-shadow:0 13px 27px rgba(10,61,41,.13); transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease; }
.v23-faq__quote svg { box-sizing:content-box; width:15px; height:15px; padding:7px; border-radius:9px; background:rgba(255,255,255,.13); fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .2s ease; }
.v23-faq__quote:hover,.v23-faq__quote:focus-visible { color:#fff!important; outline:none; background:#14583d; box-shadow:0 16px 31px rgba(10,61,41,.2); transform:translateY(-2px); }
.v23-faq__quote:hover svg,.v23-faq__quote:focus-visible svg { transform:translateX(3px); }
.v23-faq__phone { display:flex; align-items:center; gap:12px; width:max-content; padding:4px 6px 4px 4px; color:#244a39!important; border-radius:12px; transition:background-color .2s ease; }
.v23-faq__phone:hover,.v23-faq__phone:focus-visible { outline:none; background:#edf3ef; }
.v23-faq__phone>svg { box-sizing:content-box; width:18px; height:18px; padding:10px; border-radius:12px; color:#0a3d29; background:#e2ece5; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.v23-faq__phone>span { display:grid; gap:3px; }
.v23-faq__phone small { color:#829188; font-size:.48rem; letter-spacing:.06em; text-transform:uppercase; }
.v23-faq__phone b { color:#0a3d29; font-size:.68rem; font-weight:760; }
.v23-faq__list { border-top:1px solid #cfdcd3; }
.v23-faq__item { border-bottom:1px solid #cfdcd3; transition:background-color .25s ease,border-color .25s ease; }
.v23-faq__item.is-open { border-color:#b9cbbf; background:#f0f5f1; }
.v23-faq__item>button,
.v23-faq__item>button:hover,
.v23-faq__item>button:focus,
.v23-faq__item>button:active {
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
  align-items:center;
  gap:28px;
  width:100%;
  min-height:94px;
  margin:0!important;
  padding:22px 22px 22px 25px!important;
  border:0!important;
  border-radius:0!important;
  color:#173427!important;
  outline:none!important;
  background:transparent!important;
  box-shadow:none!important;
  font-family:var(--by3-sans);
  text-align:left;
  cursor:pointer;
}
.v23-faq__item>button>span { color:inherit!important; font-size:1rem; font-weight:730; line-height:1.28; letter-spacing:-.025em; }
.v23-faq__item>button>i { position:relative; display:block; width:40px; height:40px; border:1px solid #c7d6cc; border-radius:12px; background:#fff; transition:border-color .2s ease,background-color .2s ease,transform .25s ease; }
.v23-faq__item>button>i::before,.v23-faq__item>button>i::after { position:absolute; top:50%; left:50%; width:13px; height:1px; background:#0a3d29; content:""; transform:translate(-50%,-50%); transition:opacity .2s ease,transform .25s ease; }
.v23-faq__item>button>i::after { transform:translate(-50%,-50%) rotate(90deg); }
.v23-faq__item.is-open>button>i { border-color:#0a3d29; background:#0a3d29; transform:rotate(2deg); }
.v23-faq__item.is-open>button>i::before,.v23-faq__item.is-open>button>i::after { background:#fff; }
.v23-faq__item.is-open>button>i::after { opacity:0; transform:translate(-50%,-50%) rotate(0); }
.v23-faq__item>button:focus-visible>i { box-shadow:0 0 0 3px rgba(10,61,41,.12); }
.v23-faq__answer { display:grid; grid-template-rows:0fr; opacity:0; transition:grid-template-rows .34s cubic-bezier(.2,.75,.2,1),opacity .24s ease; }
.v23-faq__answer>div { min-height:0; overflow:hidden; }
.v23-faq__answer p { max-width:650px; margin:0; padding:0 82px 0 25px; color:#66766d; font-size:.76rem; line-height:1.74; }
.v23-faq__item.is-open .v23-faq__answer { grid-template-rows:1fr; opacity:1; }
.v23-faq__item.is-open .v23-faq__answer p { padding-bottom:28px; }
@media (max-width:1024px) {
  .v23-faq { padding:96px 0 104px; }
  .v23-faq__grid { grid-template-columns:1fr; gap:62px; }
  .v23-faq__intro { position:relative; top:auto; }
  .v23-faq__lead { max-width:680px; }
  .v23-faq__actions { grid-template-columns:minmax(240px,390px) auto; align-items:center; max-width:760px; }
}
@media (max-width:767px) {
  .v23-faq { padding:82px 0 88px; }
  .v23-faq__grid { gap:48px; }
  .v23-faq__intro h2 { font-size:clamp(2.9rem,13.5vw,4rem); line-height:.96; }
  .v23-faq__intro h2 em { font-size:.77em; line-height:1.04; }
  .v23-faq__lead { font-size:.85rem; line-height:1.72; }
  .v23-faq__actions { grid-template-columns:1fr; }
  .v23-faq__quote { width:100%; }
  .v23-faq__item>button,.v23-faq__item>button:hover,.v23-faq__item>button:focus,.v23-faq__item>button:active { grid-template-columns:minmax(0,1fr) 40px; gap:16px; min-height:82px; padding:18px 10px 18px 14px!important; }
  .v23-faq__item>button>span { font-size:.88rem; line-height:1.32; }
  .v23-faq__item>button>i { width:38px; height:38px; }
  .v23-faq__answer p { padding-right:54px; padding-left:14px; font-size:.7rem; }
  .v23-faq__item.is-open .v23-faq__answer p { padding-bottom:23px; }
  .v23-faq__ring { right:-420px; bottom:-280px; width:650px; height:650px; }
}
@media (prefers-reduced-motion:reduce) {
  .v23-faq__item,.v23-faq__item>button>i,.v23-faq__item>button>i::after,.v23-faq__answer,.v23-faq__quote,.v23-faq__quote svg { transition:none!important; }
}

/* Approach page v26 */
.v26-elementor-root,.v26-elementor-root>.e-con-inner,.v26-elementor-root .elementor-widget-html,.v26-elementor-root .elementor-widget-container { width:100%; max-width:none!important; margin:0!important; padding:0!important; }
.v26 { --v26-ink:#0a3d29; --v26-deep:#062f20; --v26-sage:#7f9d8b; --v26-line:#d4e0d8; --v26-mist:#f1f6f2; overflow:hidden; color:#183a2b; background:#fff; font-family:var(--by3-sans); }
.v26 * { box-sizing:border-box; }
.v26 a { text-decoration:none; }
.v26-shell { width:min(1240px,calc(100% - 64px)); margin-inline:auto; }
.v26-kicker { display:flex; align-items:center; gap:11px; margin:0; color:#698474; font:750 .61rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }
.v26-kicker i { display:block; width:28px; height:1px; background:currentColor; }
.v26-hero { position:relative; padding:76px 0 72px; background:linear-gradient(125deg,#fff 0%,#fff 56%,#eef5f0 56%,#f5f8f6 100%); }
.v26-hero__gridline { position:absolute; inset:0; opacity:.5; pointer-events:none; background-image:linear-gradient(90deg,transparent calc(50% - 1px),#dce7df 50%,transparent calc(50% + 1px)); }
.v26-hero__grid { position:relative; display:grid; grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr); align-items:center; gap:7.2vw; }
.v26-hero__copy h1 { max-width:650px; margin:25px 0 0; color:var(--v26-ink); font:760 clamp(3.45rem,5.4vw,6rem)/.91 var(--by3-sans); letter-spacing:-.068em; }
.v26-hero__copy h1 em { display:block; color:var(--v26-sage); font-style:normal; font-weight:590; }
.v26-hero__copy>p:not(.v26-kicker) { max-width:565px; margin:31px 0 0; color:#63766c; font-size:.92rem; line-height:1.78; }
.v26-hero__actions { display:flex; align-items:center; gap:25px; margin-top:36px; }
.v26-button { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:57px; padding:0 14px 0 22px; border:1px solid var(--v26-ink); border-radius:14px; color:#fff!important; background:var(--v26-ink); font-size:.72rem; font-weight:790; box-shadow:0 15px 30px rgba(10,61,41,.14); transition:transform .22s ease,background-color .22s ease,box-shadow .22s ease; }
.v26-button svg { box-sizing:content-box; width:16px; height:16px; padding:8px; border-radius:9px; background:rgba(255,255,255,.13); fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; transition:transform .22s ease; }
.v26-button:hover,.v26-button:focus-visible { color:#fff!important; outline:none; background:#14583d; box-shadow:0 18px 34px rgba(10,61,41,.2); transform:translateY(-2px); }
.v26-button:hover svg,.v26-button:focus-visible svg { transform:translateX(3px); }
.v26-textlink { position:relative; color:#244d3a!important; font-size:.7rem; font-weight:760; }
.v26-textlink::after { position:absolute; right:0; bottom:-6px; left:0; height:1px; background:#93aa9c; content:""; transition:background-color .2s ease,transform .2s ease; transform-origin:left; }
.v26-textlink:hover::after,.v26-textlink:focus-visible::after { background:var(--v26-ink); transform:scaleX(.55); }
.v26-control { position:relative; min-height:590px; overflow:hidden; border:10px solid #fff; border-radius:34px; background:var(--v26-deep); box-shadow:0 30px 75px rgba(10,61,41,.2); }
.v26-control>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform 1.1s cubic-bezier(.2,.75,.2,1); }
.v26-control:hover>img { transform:scale(1.035); }
.v26-control__shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(4,33,23,.03) 12%,rgba(4,33,23,.18) 44%,rgba(4,33,23,.95) 100%); }
.v26-control>p { position:absolute; right:38px; bottom:120px; left:38px; margin:0; color:#fff; }
.v26-control>p small { display:block; margin-bottom:12px; color:#c7d9ce; font:700 .55rem/1 var(--by3-mono); letter-spacing:.11em; text-transform:uppercase; }
.v26-control>p b { font:680 clamp(1.65rem,2.25vw,2.5rem)/1.08 var(--by3-sans); letter-spacing:-.045em; }
.v26-control ol { position:absolute; right:0; bottom:0; left:0; display:grid; grid-template-columns:repeat(4,1fr); margin:0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.22); backdrop-filter:blur(8px); }
.v26-control li { display:grid; gap:7px; min-height:91px; padding:19px 18px; border-right:1px solid rgba(255,255,255,.16); color:#fff; }
.v26-control li:last-child { border-right:0; }
.v26-control li span { color:#a8c1b2; font:650 .52rem/1 var(--by3-mono); letter-spacing:.08em; }
.v26-control li b { font-size:.65rem; font-weight:740; }
.v26-anchor { position:relative; z-index:5; border-top:1px solid var(--v26-line); border-bottom:1px solid var(--v26-line); background:rgba(255,255,255,.94); }
.v26-anchor>div { display:flex; justify-content:center; min-height:66px; }
.v26-anchor a { position:relative; display:flex; align-items:center; justify-content:center; min-width:230px; padding:0 26px; border-left:1px solid var(--v26-line); color:#567062!important; font-size:.64rem; font-weight:730; }
.v26-anchor a:last-child { border-right:1px solid var(--v26-line); }
.v26-anchor a::before { position:absolute; top:-1px; right:0; left:0; height:2px; background:var(--v26-ink); content:""; transform:scaleX(0); transition:transform .25s ease; }
.v26-anchor a:hover,.v26-anchor a:focus-visible { color:var(--v26-ink)!important; outline:none; background:#f7faf8; }
.v26-anchor a:hover::before,.v26-anchor a:focus-visible::before { transform:scaleX(1); }
#kalite,#surec,#iyilestirme { scroll-margin-top:116px; }
.v26-quality { position:relative; padding:126px 0 134px; overflow:hidden; color:#fff; background:var(--v26-deep); }
.v26-orbit { position:absolute; top:-320px; right:-220px; width:760px; height:760px; border:1px solid rgba(181,211,193,.1); border-radius:50%; }
.v26-orbit::before,.v26-orbit::after { position:absolute; border:1px solid rgba(181,211,193,.08); border-radius:50%; content:""; }
.v26-orbit::before { inset:90px; }.v26-orbit::after { inset:190px; }
.v26-quality__head,.v26-process__head { position:relative; display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); align-items:end; gap:80px; margin-bottom:70px; }
.v26-quality .v26-kicker { color:#9fb8aa; }
.v26-quality__head h2,.v26-process__head h2 { max-width:780px; margin:24px 0 0; color:#fff; font:710 clamp(3rem,4.35vw,5rem)/.95 var(--by3-sans); letter-spacing:-.06em; }
.v26-quality__head h2 em,.v26-process__head h2 em { display:block; color:#93ac9d; font-style:normal; font-weight:560; }
.v26-quality__head>p,.v26-process__head>p { margin:0 0 4px; color:#aabdb2; font-size:.82rem; line-height:1.75; }
.v26-standards { position:relative; display:grid; grid-template-columns:repeat(6,1fr); border-top:1px solid rgba(213,232,220,.19); border-left:1px solid rgba(213,232,220,.19); }
.v26-standards article { grid-column:span 2; min-height:302px; padding:32px 31px; border-right:1px solid rgba(213,232,220,.19); border-bottom:1px solid rgba(213,232,220,.19); transition:background-color .25s ease,transform .25s ease; }
.v26-standards article:nth-child(4),.v26-standards article:nth-child(5) { grid-column:span 3; min-height:270px; }
.v26-standards article:hover { background:#0c432d; transform:translateY(-4px); }
.v26-standards article>span { display:flex; align-items:center; justify-content:center; width:50px; height:50px; margin-bottom:50px; border:1px solid rgba(207,230,216,.24); border-radius:14px; color:#d9e8de; background:rgba(255,255,255,.055); }
.v26-standards article>span svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.v26-standards article>small { display:block; margin-bottom:11px; color:#799988; font:650 .54rem/1 var(--by3-mono); letter-spacing:.08em; }
.v26-standards h3 { margin:0; color:#fff; font-size:1.3rem; font-weight:680; letter-spacing:-.035em; }
.v26-standards p { max-width:330px; margin:14px 0 0; color:#9eb2a6; font-size:.71rem; line-height:1.72; }
.v26-process { padding:126px 0 138px; background:#fff; }
.v26-process__head h2 { color:var(--v26-ink); }
.v26-process__head h2 em { color:var(--v26-sage); }
.v26-process__head>p { color:#6d7d74; }
.v26-process__rail { position:relative; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--v26-line); border-bottom:1px solid var(--v26-line); }
.v26-process__rail::before { position:absolute; top:73px; right:10%; left:10%; height:1px; background:#b9cbbf; content:""; }
.v26-process__rail article { position:relative; min-height:370px; padding:35px 30px 34px; border-left:1px solid var(--v26-line); background:#fff; }
.v26-process__rail article:last-child { border-right:1px solid var(--v26-line); }
.v26-process__mark { position:relative; z-index:1; display:flex; align-items:center; justify-content:space-between; width:100%; margin-bottom:70px; }
.v26-process__mark span { display:flex; align-items:center; justify-content:center; width:47px; height:47px; border:1px solid #b9cbbf; border-radius:50%; color:var(--v26-ink); background:#fff; font:700 .56rem/1 var(--by3-mono); transition:color .2s ease,background-color .2s ease,transform .2s ease; }
.v26-process__rail article:hover .v26-process__mark span { color:#fff; background:var(--v26-ink); transform:scale(1.08); }
.v26-process__mark svg { width:22px; height:22px; color:#7e9989; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.v26-process__rail small { color:#82958a; font:670 .53rem/1 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }
.v26-process__rail h3 { margin:14px 0 0; color:var(--v26-ink); font-size:1.55rem; font-weight:700; letter-spacing:-.04em; }
.v26-process__rail p { margin:18px 0 0; color:#718078; font-size:.72rem; line-height:1.74; }
.v26-improve { position:relative; padding:126px 0 0; background:var(--v26-mist); }
.v26-improve__grid { display:grid; grid-template-columns:minmax(0,.88fr) minmax(480px,1.12fr); gap:9vw; align-items:start; }
.v26-improve__copy { position:sticky; top:132px; padding-bottom:110px; }
.v26-improve__copy h2 { margin:24px 0 0; color:var(--v26-ink); font:710 clamp(3.1rem,4.55vw,5.1rem)/.94 var(--by3-sans); letter-spacing:-.064em; }
.v26-improve__copy h2 em { display:block; color:var(--v26-sage); font-style:normal; font-weight:560; }
.v26-improve__copy>p:last-child { max-width:530px; margin:28px 0 0; color:#687a70; font-size:.82rem; line-height:1.76; }
.v26-improve__cards { display:grid; border-top:1px solid #c8d8ce; }
.v26-improve__cards article { display:grid; grid-template-columns:64px minmax(0,1fr); gap:28px; min-height:175px; padding:30px 4px; border-bottom:1px solid #c8d8ce; }
.v26-improve__cards article>span { display:flex; align-items:center; justify-content:center; width:58px; height:58px; border-radius:17px; color:var(--v26-ink); background:#fff; box-shadow:0 10px 25px rgba(10,61,41,.08); }
.v26-improve__cards svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.v26-improve__cards b { color:var(--v26-ink); font-size:1rem; font-weight:720; letter-spacing:-.025em; }
.v26-improve__cards p { margin:12px 0 0; color:#697b71; font-size:.72rem; line-height:1.7; }
.v26-final { display:grid; grid-template-columns:74px minmax(0,1fr) auto; align-items:center; gap:28px; min-height:185px; margin-top:44px; padding:34px 38px; border-radius:28px 28px 0 0; color:#fff; background:var(--v26-deep); box-shadow:0 -18px 45px rgba(7,45,31,.12); }
.v26-final>span { display:flex; align-items:center; justify-content:center; width:66px; height:66px; border:1px solid rgba(255,255,255,.18); border-radius:18px; background:rgba(255,255,255,.07); }
.v26-final>span svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.v26-final p { margin:0; }
.v26-final small { display:block; margin-bottom:9px; color:#9fb8aa; font:700 .53rem/1 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }
.v26-final b { font-size:1.35rem; font-weight:660; line-height:1.25; letter-spacing:-.03em; }
.v26-final>a { display:inline-flex; align-items:center; gap:14px; min-height:54px; padding:0 17px 0 21px; border:1px solid rgba(255,255,255,.42); border-radius:14px; color:#fff!important; font-size:.68rem; font-weight:780; transition:color .2s ease,background-color .2s ease,transform .2s ease; }
.v26-final>a svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.v26-final>a:hover,.v26-final>a:focus-visible { color:var(--v26-deep)!important; outline:none; background:#fff; transform:translateY(-2px); }
@media (max-width:1024px) {
  .v26-hero__grid { grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr); gap:42px; }
  .v26-control { min-height:520px; }
  .v26-quality__head,.v26-process__head { grid-template-columns:1fr; gap:28px; }
  .v26-quality__head>p,.v26-process__head>p { max-width:670px; }
  .v26-standards { grid-template-columns:repeat(2,1fr); }
  .v26-standards article,.v26-standards article:nth-child(4),.v26-standards article:nth-child(5) { grid-column:span 1; }
  .v26-standards article:last-child { grid-column:span 2; }
  .v26-process__rail { grid-template-columns:repeat(2,1fr); }
  .v26-process__rail::before { display:none; }
  .v26-process__rail article:nth-child(2) { border-right:1px solid var(--v26-line); }
  .v26-process__mark { margin-bottom:46px; }
  .v26-improve__grid { grid-template-columns:1fr; gap:35px; }
  .v26-improve__copy { position:relative; top:auto; padding-bottom:20px; }
}
@media (max-width:767px) {
  .v26-shell { width:min(100% - 32px,1240px); }
  .v26-kicker { font-size:.59rem; }
  .v26-hero { padding:60px 0 42px; background:linear-gradient(180deg,#fff 0%,#fff 55%,#eef5f0 55%,#f5f8f6 100%); }
  .v26-hero__gridline { display:none; }
  .v26-hero__grid { grid-template-columns:1fr; gap:46px; }
  .v26-hero__copy h1 { font-size:clamp(3rem,14.5vw,4.2rem); line-height:.94; }
  .v26-hero__copy>p:not(.v26-kicker) { margin-top:25px; font-size:.88rem; line-height:1.7; }
  .v26-hero__actions { align-items:stretch; flex-direction:column; gap:19px; }
  .v26-button { width:100%; font-size:.76rem; }
  .v26-textlink { align-self:flex-start; margin-left:3px; font-size:.72rem; }
  .v26-control { min-height:510px; border-width:7px; border-radius:25px; }
  .v26-control>p { right:24px; bottom:165px; left:24px; }
  .v26-control>p b { font-size:1.72rem; }
  .v26-control ol { grid-template-columns:repeat(2,1fr); }
  .v26-control li { min-height:67px; padding:13px 15px; border-bottom:1px solid rgba(255,255,255,.16); }
  .v26-control li:nth-child(2) { border-right:0; }
  .v26-control li:nth-last-child(-n+2) { border-bottom:0; }
  .v26-anchor { overflow:auto; scrollbar-width:none; }
  .v26-anchor::-webkit-scrollbar { display:none; }
  .v26-anchor>div { width:max-content; min-width:100%; justify-content:flex-start; }
  .v26-anchor a { min-width:auto; min-height:61px; padding:0 22px; font-size:.69rem; white-space:nowrap; }
  .v26-quality,.v26-process { padding:88px 0 94px; }
  .v26-quality__head,.v26-process__head { gap:24px; margin-bottom:47px; }
  .v26-quality__head h2,.v26-process__head h2,.v26-improve__copy h2 { font-size:clamp(2.75rem,12.6vw,3.8rem); line-height:.97; }
  .v26-quality__head>p,.v26-process__head>p,.v26-improve__copy>p:last-child { font-size:.85rem; line-height:1.72; }
  .v26-standards { grid-template-columns:1fr; }
  .v26-standards article,.v26-standards article:nth-child(4),.v26-standards article:nth-child(5),.v26-standards article:last-child { grid-column:span 1; min-height:260px; padding:28px 25px; }
  .v26-standards article>span { margin-bottom:38px; }
  .v26-standards h3 { font-size:1.4rem; }
  .v26-standards p { font-size:.78rem; }
  .v26-process__rail { grid-template-columns:1fr; }
  .v26-process__rail article,.v26-process__rail article:nth-child(2),.v26-process__rail article:last-child { min-height:300px; padding:28px 24px; border-right:1px solid var(--v26-line); }
  .v26-process__mark { margin-bottom:42px; }
  .v26-process__rail p { font-size:.78rem; }
  .v26-improve { padding-top:88px; }
  .v26-improve__grid { gap:25px; }
  .v26-improve__cards article { grid-template-columns:55px minmax(0,1fr); gap:19px; min-height:158px; padding:26px 0; }
  .v26-improve__cards article>span { width:52px; height:52px; border-radius:15px; }
  .v26-improve__cards b { font-size:1.03rem; }
  .v26-improve__cards p { font-size:.76rem; }
  .v26-final { grid-template-columns:58px minmax(0,1fr); gap:20px; min-height:0; margin-top:34px; padding:29px 23px 35px; border-radius:24px 24px 0 0; }
  .v26-final>span { width:56px; height:56px; }
  .v26-final b { font-size:1.12rem; }
  .v26-final>a { grid-column:1/-1; justify-content:space-between; width:100%; margin-top:3px; font-size:.74rem; }
}
@media (prefers-reduced-motion:reduce) {
  .v26-control>img,.v26-button,.v26-button svg,.v26-standards article,.v26-process__mark span,.v26-final>a { transition:none!important; }
}

/* Service system v27 */
.v27-elementor-root,.v27-elementor-root>.e-con-inner,.v27-elementor-root .elementor-widget-html,.v27-elementor-root .elementor-widget-container { width:100%; max-width:none!important; margin:0!important; padding:0!important; }
.v27 { --v27-ink:#0a3d29; --v27-deep:#062f20; --v27-sage:#829e8d; --v27-mint:#eaf2ed; --v27-mist:#f6f9f7; --v27-line:#d4e0d8; overflow:hidden; color:#183a2b; background:#fff; font-family:var(--by3-sans); }
.v27 * { box-sizing:border-box; }.v27 a { text-decoration:none; }.v27 svg { fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; }
.v27-shell { width:min(1240px,calc(100% - 64px)); margin-inline:auto; }
.v27-kicker { display:flex; align-items:center; gap:11px; margin:0; color:#6f8879; font:750 .59rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }
.v27-kicker i { display:block; width:28px; height:1px; background:currentColor; }
.v27-actions { display:flex; align-items:center; gap:25px; margin-top:35px; }
.v27-btn { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:57px; padding:0 14px 0 22px; border:1px solid var(--v27-ink); border-radius:14px; color:#fff!important; background:var(--v27-ink); font-size:.71rem; font-weight:790; box-shadow:0 15px 30px rgba(10,61,41,.14); transition:transform .22s ease,background-color .22s ease,box-shadow .22s ease; }
.v27-btn svg { box-sizing:content-box; width:16px; height:16px; padding:8px; border-radius:9px; background:rgba(255,255,255,.13); stroke-width:1.8; transition:transform .22s ease; }
.v27-btn:hover,.v27-btn:focus-visible { color:#fff!important; outline:none; background:#14583d; box-shadow:0 18px 34px rgba(10,61,41,.2); transform:translateY(-2px); }.v27-btn:hover svg { transform:translateX(3px); }
.v27-link { position:relative; color:#244d3a!important; font-size:.7rem; font-weight:760; }
.v27-link::after { position:absolute; right:0; bottom:-6px; left:0; height:1px; background:#93aa9c; content:""; transition:transform .2s ease; transform-origin:left; }.v27-link:hover::after,.v27-link:focus-visible::after { transform:scaleX(.55); }
.v27-sectionhead { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); align-items:end; gap:80px; margin-bottom:65px; }
.v27-sectionhead h2 { max-width:790px; margin:23px 0 0; color:var(--v27-ink); font:720 clamp(3rem,4.4vw,5rem)/.95 var(--by3-sans); letter-spacing:-.062em; }
.v27-sectionhead h2 em { display:block; color:var(--v27-sage); font-style:normal; font-weight:560; }
.v27-sectionhead>p { margin:0 0 4px; color:#687970; font-size:.82rem; line-height:1.76; }
#modeller,#karsilastir,#detay { scroll-margin-top:118px; }

.v27-hubhero { position:relative; padding:74px 0 84px; background:linear-gradient(117deg,#fff 0%,#fff 57%,#edf4ef 57%,#f6f9f7 100%); }
.v27-hubhero::before { position:absolute; inset:0; opacity:.48; pointer-events:none; content:""; background:linear-gradient(90deg,transparent calc(50% - 1px),#dbe6df 50%,transparent calc(50% + 1px)); }
.v27-hubhero__grid { position:relative; display:grid; grid-template-columns:minmax(0,.85fr) minmax(510px,1.15fr); align-items:center; gap:7vw; }
.v27-hubhero__copy h1 { max-width:660px; margin:25px 0 0; color:var(--v27-ink); font:760 clamp(3.5rem,5.35vw,6rem)/.91 var(--by3-sans); letter-spacing:-.069em; }
.v27-hubhero__copy h1 em { display:block; color:var(--v27-sage); font-style:normal; font-weight:570; }
.v27-hubhero__copy>p:not(.v27-kicker) { max-width:580px; margin:30px 0 0; color:#63766c; font-size:.91rem; line-height:1.78; }
.v27-hubhero__visual { position:relative; display:grid; grid-template-columns:1.38fr .62fr; grid-template-rows:245px 285px; gap:12px; min-height:542px; }
.v27-hubhero__visual figure { position:relative; overflow:hidden; margin:0; border:8px solid #fff; border-radius:24px; background:var(--v27-mint); box-shadow:0 24px 55px rgba(10,61,41,.13); }
.v27-hubhero__visual figure:first-child { grid-row:1/3; border-radius:31px; }
.v27-hubhero__visual img { width:100%; height:100%; object-fit:cover; transition:transform .9s cubic-bezier(.2,.75,.2,1); }.v27-hubhero__visual figure:hover img { transform:scale(1.045); }
.v27-hubhero__seal { position:absolute; right:19%; bottom:32px; display:grid; grid-template-columns:50px 1fr; align-items:center; gap:13px; min-width:245px; padding:17px 20px; border:1px solid rgba(255,255,255,.2); border-radius:18px; color:#fff; background:rgba(6,47,32,.9); box-shadow:0 18px 35px rgba(3,34,22,.25); backdrop-filter:blur(10px); }
.v27-hubhero__seal span { display:flex; align-items:center; justify-content:center; width:48px; height:48px; border:1px solid rgba(255,255,255,.22); border-radius:13px; font-size:1.4rem; font-weight:730; }.v27-hubhero__seal b { font-size:.64rem; line-height:1.45; }

.v27-models { padding:126px 0 138px; background:#fff; }
.v27-modelgrid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.v27-model { position:relative; display:flex; flex-direction:column; min-height:0; overflow:hidden; padding:0 28px 24px; border:1px solid var(--v27-line); border-radius:24px; color:#183a2b!important; background:#fff; transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.v27-model:hover,.v27-model:focus-visible { outline:none; border-color:#aec3b5; box-shadow:0 28px 60px rgba(10,61,41,.12); transform:translateY(-8px); }
.v27-model figure { height:225px; margin:0 -28px; overflow:hidden; }.v27-model figure img { width:100%; height:100%; object-fit:cover; transition:transform .75s ease; }.v27-model:nth-child(2) figure img { object-position:center 66%; }.v27-model:hover figure img { transform:scale(1.05); }
.v27-model__top { display:flex; align-items:center; justify-content:space-between; min-height:68px; border-bottom:1px solid #e0e8e2; }
.v27-model__top>span { display:flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:12px; color:var(--v27-ink); background:var(--v27-mint); }.v27-model__top svg { width:21px; height:21px; stroke-width:1.5; }
.v27-model__top small { color:#789083; font:680 .53rem/1 var(--by3-mono); letter-spacing:.08em; text-transform:uppercase; }
.v27-model h3 { margin:22px 0 0; color:var(--v27-ink); font-size:1.58rem; font-weight:720; letter-spacing:-.046em; }.v27-model>p { min-height:50px; margin:13px 0 0; color:#697a71; font-size:.72rem; line-height:1.68; }
.v27-model ul { display:flex; flex-wrap:wrap; gap:7px; margin:17px 0 0; padding:0; list-style:none; }.v27-model li { display:flex; align-items:center; gap:6px; padding:6px 9px; border-radius:8px; color:#547061; background:#f0f5f1; font-size:.57rem; font-weight:690; }.v27-model li svg { width:12px; height:12px; stroke-width:2; }
.v27-model>b { display:flex; align-items:center; justify-content:space-between; min-height:42px; margin-top:22px; padding-top:17px; border-top:1px solid #e0e8e2; color:var(--v27-ink); font-size:.66rem; font-weight:790; }.v27-model>b svg { width:17px; height:17px; stroke-width:1.8; transition:transform .2s ease; }.v27-model:hover>b svg { transform:translateX(4px); }

.v27-compare { padding:126px 0 132px; background:var(--v27-mist); }
.v27-compare__table { border-top:1px solid #c7d7cd; }
.v27-compare__labels,.v27-compare__table>a { display:grid; grid-template-columns:1.1fr 1fr 1.25fr 1.7fr 30px; align-items:center; gap:22px; min-height:94px; padding:0 22px; border-bottom:1px solid #c7d7cd; }
.v27-compare__labels { min-height:48px; color:#819287; font:680 .5rem/1 var(--by3-mono); letter-spacing:.08em; text-transform:uppercase; }.v27-compare__labels span:first-child { grid-column:1; }
.v27-compare__table>a { color:#61736a!important; transition:color .2s ease,background-color .2s ease,padding .2s ease; }.v27-compare__table>a:hover,.v27-compare__table>a:focus-visible { padding-right:16px; padding-left:28px; color:var(--v27-ink)!important; outline:none; background:#fff; }
.v27-compare__table>a b { color:var(--v27-ink); font-size:.93rem; font-weight:740; }.v27-compare__table>a span { font-size:.69rem; line-height:1.5; }.v27-compare__table>a svg { width:18px; height:18px; stroke-width:1.8; }

.v27-spine { position:relative; padding:122px 0 132px; overflow:hidden; color:#fff; background:var(--v27-deep); }
.v27-spine::after { position:absolute; top:-360px; right:-230px; width:720px; height:720px; border:1px solid rgba(200,225,210,.09); border-radius:50%; content:""; box-shadow:inset 0 0 0 90px rgba(200,225,210,.025),inset 0 0 0 190px rgba(200,225,210,.018); }
.v27-spine__head { position:relative; z-index:1; display:grid; grid-template-columns:.65fr 1.35fr; align-items:end; gap:80px; margin-bottom:64px; }.v27-spine .v27-kicker { color:#a2b9ac; }.v27-spine__head h2 { max-width:780px; margin:0; color:#fff; font:710 clamp(3rem,4.5vw,5rem)/.95 var(--by3-sans); letter-spacing:-.062em; }.v27-spine__head h2 em { display:block; color:#8eaa9a; font-style:normal; font-weight:560; }
.v27-spine__steps { position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,1fr); margin:0; padding:0; list-style:none; border-top:1px solid rgba(213,232,220,.2); border-left:1px solid rgba(213,232,220,.2); }
.v27-spine__steps li { min-height:270px; padding:30px 27px; border-right:1px solid rgba(213,232,220,.2); border-bottom:1px solid rgba(213,232,220,.2); transition:background-color .25s ease; }.v27-spine__steps li:hover { background:#0c432d; }
.v27-spine__steps span { color:#769685; font:680 .54rem/1 var(--by3-mono); letter-spacing:.08em; }.v27-spine__steps b { display:block; margin-top:75px; color:#fff; font-size:1.05rem; font-weight:700; }.v27-spine__steps p { margin:14px 0 0; color:#9fb3a8; font-size:.7rem; line-height:1.72; }

.v27-cta { background:var(--v27-mint); }.v27-cta__inner { display:grid; grid-template-columns:72px minmax(0,1fr) auto; align-items:center; gap:28px; min-height:205px; padding:38px 0; }
.v27-cta__inner>span { display:flex; align-items:center; justify-content:center; width:66px; height:66px; border-radius:18px; color:#fff; background:var(--v27-ink); }.v27-cta__inner>span svg { width:28px; height:28px; stroke-width:1.5; }
.v27-cta__inner small { display:block; margin-bottom:9px; color:#728a7c; font:700 .52rem/1 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }.v27-cta__inner h2 { max-width:690px; margin:0; color:var(--v27-ink); font-size:1.65rem; font-weight:690; line-height:1.2; letter-spacing:-.04em; }
.v27-cta__inner>a { display:inline-flex; align-items:center; gap:15px; min-height:55px; padding:0 15px 0 21px; border:1px solid var(--v27-ink); border-radius:14px; color:#fff!important; background:var(--v27-ink); font-size:.68rem; font-weight:780; transition:transform .2s ease,background-color .2s ease; }.v27-cta__inner>a svg { width:17px; height:17px; stroke-width:1.8; }.v27-cta__inner>a:hover,.v27-cta__inner>a:focus-visible { outline:none; background:#14583d; transform:translateY(-2px); }

.v27-detailhero { position:relative; padding:72px 0 78px; background:#fff; }.v27-detailhero__wash { position:absolute; top:0; right:0; bottom:0; width:43%; background:var(--v27-mint); }
.v27-detail--transport .v27-detailhero { background:var(--v27-deep); }.v27-detail--transport .v27-detailhero__wash { background:#0b432d; }.v27-detail--transport .v27-detailhero__copy h1,.v27-detail--transport .v27-detailhero__copy>p,.v27-detail--transport .v27-detailhero__copy nav,.v27-detail--transport .v27-detailhero__copy nav a,.v27-detail--transport .v27-detailhero .v27-link { color:#fff!important; }.v27-detail--transport .v27-detailhero__copy>p { color:#b2c4b9!important; }.v27-detail--transport .v27-detailhero .v27-kicker { color:#9cb4a6; }
.v27-detail--event .v27-detailhero { background:#f5f8f6; }.v27-detail--event .v27-detailhero__wash { background:#dfeae3; }
.v27-detailhero__grid { position:relative; display:grid; grid-template-columns:minmax(0,.88fr) minmax(500px,1.12fr); align-items:center; gap:7vw; }
.v27-detailhero__copy nav { display:flex; align-items:center; gap:9px; margin-bottom:33px; color:#819287; font-size:.58rem; }.v27-detailhero__copy nav a { color:#5c7668!important; }.v27-detailhero__copy nav b { font-weight:730; }
.v27-detailhero__copy h1 { max-width:690px; margin:24px 0 0; color:var(--v27-ink); font:760 clamp(3.35rem,5vw,5.65rem)/.92 var(--by3-sans); letter-spacing:-.067em; }.v27-detailhero__copy h1 em { display:block; color:var(--v27-sage); font-style:normal; font-weight:560; }
.v27-detailhero__copy>p:not(.v27-kicker) { max-width:580px; margin:29px 0 0; color:#63766c; font-size:.9rem; line-height:1.76; }
.v27-detailhero__media { position:relative; min-height:610px; overflow:hidden; border:9px solid #fff; border-radius:32px; background:var(--v27-deep); box-shadow:0 28px 70px rgba(10,61,41,.19); }.v27-detail--transport .v27-detailhero__media { border-color:#174f38; }.v27-detailhero__media>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .9s ease; }.v27-detailhero__media:hover>img { transform:scale(1.035); }
.v27-detailhero__media::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(3,30,20,.88) 100%); content:""; }
.v27-detailhero__badge { position:absolute; z-index:2; right:28px; bottom:129px; left:28px; display:grid; grid-template-columns:55px 1fr; gap:4px 15px; color:#fff; }.v27-detailhero__badge>span { grid-row:1/3; display:flex; align-items:center; justify-content:center; width:54px; height:54px; border:1px solid rgba(255,255,255,.25); border-radius:15px; background:rgba(255,255,255,.1); backdrop-filter:blur(8px); }.v27-detailhero__badge svg { width:25px; height:25px; stroke-width:1.5; }.v27-detailhero__badge small { align-self:end; color:#bdd0c4; font:680 .5rem/1 var(--by3-mono); letter-spacing:.09em; text-transform:uppercase; }.v27-detailhero__badge b { max-width:370px; font-size:1.1rem; font-weight:680; line-height:1.28; letter-spacing:-.025em; }
.v27-detailhero__media>ul { position:absolute; z-index:2; right:0; bottom:0; left:0; display:grid; grid-template-columns:repeat(3,1fr); margin:0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.2); background:rgba(3,29,19,.66); backdrop-filter:blur(9px); }.v27-detailhero__media>ul li { display:grid; gap:8px; min-height:91px; padding:18px; border-right:1px solid rgba(255,255,255,.16); color:#fff; }.v27-detailhero__media>ul li:last-child { border-right:0; }.v27-detailhero__media>ul small { color:#a8c0b2; font:650 .49rem/1 var(--by3-mono); letter-spacing:.06em; text-transform:uppercase; }.v27-detailhero__media>ul b { font-size:.62rem; font-weight:720; }

.v27-overview { padding:126px 0 136px; background:#fff; }.v27-benefits { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--v27-line); border-left:1px solid var(--v27-line); }
.v27-benefits article { min-height:310px; padding:31px; border-right:1px solid var(--v27-line); border-bottom:1px solid var(--v27-line); transition:background-color .25s ease,transform .25s ease; }.v27-benefits article:hover { background:var(--v27-mist); transform:translateY(-4px); }
.v27-benefits article>span { display:flex; align-items:center; justify-content:center; width:54px; height:54px; margin-bottom:62px; border-radius:15px; color:var(--v27-ink); background:var(--v27-mint); }.v27-benefits article svg { width:24px; height:24px; stroke-width:1.5; }.v27-benefits h3 { margin:0; color:var(--v27-ink); font-size:1.25rem; font-weight:710; letter-spacing:-.035em; }.v27-benefits p { margin:15px 0 0; color:#6a7b72; font-size:.72rem; line-height:1.74; }

.v27-detailflow { position:relative; padding:122px 0 132px; color:#fff; background:var(--v27-deep); }.v27-detail--transport .v27-detailflow { background:#0b452f; }.v27-detail--event .v27-detailflow { background:#123b2d; }
.v27-detailflow__head { display:grid; grid-template-columns:.55fr 1.15fr .7fr; align-items:end; gap:55px; margin-bottom:62px; }.v27-detailflow .v27-kicker { color:#9fb6a9; }.v27-detailflow__head h2 { margin:0; color:#fff; font:710 clamp(2.8rem,4vw,4.6rem)/.96 var(--by3-sans); letter-spacing:-.058em; }.v27-detailflow__head h2 em { display:block; color:#92aa9c; font-style:normal; font-weight:560; }.v27-detailflow__head>p { margin:0; color:#a5b9ad; font-size:.76rem; line-height:1.72; }
.v27-detailflow ol { display:grid; grid-template-columns:repeat(4,1fr); margin:0; padding:0; list-style:none; border-top:1px solid rgba(213,232,220,.2); border-left:1px solid rgba(213,232,220,.2); }.v27-detailflow li { min-height:340px; padding:29px 27px; border-right:1px solid rgba(213,232,220,.2); border-bottom:1px solid rgba(213,232,220,.2); }.v27-detailflow li>span { display:flex; align-items:center; justify-content:center; width:45px; height:45px; margin-bottom:70px; border:1px solid rgba(213,232,220,.28); border-radius:50%; color:#dce9e1; font:650 .53rem/1 var(--by3-mono); }.v27-detailflow li small { color:#7f9e8d; font:660 .51rem/1 var(--by3-mono); letter-spacing:.09em; text-transform:uppercase; }.v27-detailflow li h3 { margin:13px 0 0; color:#fff; font-size:1.25rem; font-weight:700; letter-spacing:-.035em; }.v27-detailflow li p { margin:16px 0 0; color:#9fb4a8; font-size:.69rem; line-height:1.75; }

.v27-fit { padding:132px 0; background:var(--v27-mist); }.v27-fit__grid { display:grid; grid-template-columns:minmax(450px,1fr) minmax(0,1fr); align-items:center; gap:8vw; }
.v27-fit figure { position:relative; min-height:650px; overflow:hidden; margin:0; border-radius:29px; background:var(--v27-mint); }.v27-fit figure>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }.v27-fit figure::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 52%,rgba(3,29,19,.86) 100%); content:""; }.v27-fit figcaption { position:absolute; z-index:1; right:30px; bottom:29px; left:30px; color:#fff; }.v27-fit figcaption small { display:block; margin-bottom:10px; color:#bfd1c6; font:680 .5rem/1 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }.v27-fit figcaption b { display:block; max-width:500px; font-size:1.3rem; font-weight:670; line-height:1.25; letter-spacing:-.035em; }
.v27-fit__copy h2 { margin:23px 0 0; color:var(--v27-ink); font:720 clamp(3rem,4.2vw,4.8rem)/.95 var(--by3-sans); letter-spacing:-.062em; }.v27-fit__copy>p:not(.v27-kicker) { margin:27px 0 0; color:#687a70; font-size:.81rem; line-height:1.75; }.v27-fit__copy ul { display:grid; gap:0; margin:31px 0 0; padding:0; list-style:none; border-top:1px solid #cbd9d0; }.v27-fit__copy li { display:grid; grid-template-columns:30px 1fr; align-items:center; gap:13px; min-height:58px; border-bottom:1px solid #cbd9d0; color:#315241; font-size:.72rem; font-weight:650; }.v27-fit__copy li svg { width:18px; height:18px; color:var(--v27-ink); stroke-width:2; }.v27-fit__copy>a { display:inline-flex; align-items:center; gap:16px; margin-top:31px; color:var(--v27-ink)!important; font-size:.69rem; font-weight:780; }.v27-fit__copy>a svg { width:18px; height:18px; stroke-width:1.8; transition:transform .2s ease; }.v27-fit__copy>a:hover svg { transform:translateX(4px); }

.v27-next { border-top:1px solid var(--v27-line); background:#fff; }.v27-next>div { display:grid; grid-template-columns:minmax(310px,1fr) repeat(2,minmax(280px,.8fr)); min-height:155px; border-left:1px solid var(--v27-line); }.v27-next p { display:flex; justify-content:center; flex-direction:column; margin:0; padding:25px 30px; border-right:1px solid var(--v27-line); }.v27-next p small { margin-bottom:8px; color:#829488; font:680 .5rem/1 var(--by3-mono); letter-spacing:.09em; text-transform:uppercase; }.v27-next p b { color:var(--v27-ink); font-size:.95rem; font-weight:680; }.v27-next a { display:grid; grid-template-columns:48px 1fr 19px; align-items:center; gap:15px; padding:25px; border-right:1px solid var(--v27-line); color:var(--v27-ink)!important; transition:background-color .2s ease; }.v27-next a:hover,.v27-next a:focus-visible { outline:none; background:var(--v27-mist); }.v27-next a>span { display:flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:13px; background:var(--v27-mint); }.v27-next a>span svg { width:21px; height:21px; stroke-width:1.5; }.v27-next a>b { font-size:.78rem; font-weight:710; }.v27-next a>svg { width:18px; height:18px; stroke-width:1.8; }

@media (max-width:1024px) {
  .v27-hubhero__grid,.v27-detailhero__grid { grid-template-columns:minmax(0,.9fr) minmax(410px,1.1fr); gap:45px; }.v27-hubhero__visual { grid-template-rows:210px 250px; min-height:472px; }.v27-detailhero__media { min-height:545px; }
  .v27-sectionhead { grid-template-columns:1fr; gap:26px; }.v27-sectionhead>p { max-width:670px; }.v27-model { min-height:0; padding-right:23px; padding-left:23px; }.v27-model figure { margin-right:-23px; margin-left:-23px; }
  .v27-compare__labels,.v27-compare__table>a { grid-template-columns:1.1fr 1fr 1.2fr 1.5fr 26px; gap:14px; padding-right:13px; padding-left:13px; }
  .v27-spine__head,.v27-detailflow__head { grid-template-columns:1fr; gap:26px; }.v27-spine__steps,.v27-detailflow ol { grid-template-columns:repeat(2,1fr); }
  .v27-detailflow__head>p { max-width:670px; }.v27-fit__grid { grid-template-columns:minmax(390px,.9fr) 1.1fr; gap:55px; }.v27-next>div { grid-template-columns:1fr 1fr; }.v27-next p { grid-column:1/-1; border-bottom:1px solid var(--v27-line); }
}
@media (max-width:767px) {
  .v27-shell { width:min(100% - 32px,1240px); }.v27-kicker { font-size:.58rem; }.v27-actions { align-items:stretch; flex-direction:column; gap:18px; }.v27-btn { width:100%; font-size:.75rem; }.v27-link { align-self:flex-start; margin-left:3px; font-size:.72rem; }
  .v27-hubhero { padding:59px 0 46px; background:linear-gradient(180deg,#fff 0%,#fff 56%,#edf4ef 56%,#f6f9f7 100%); }.v27-hubhero::before { display:none; }.v27-hubhero__grid,.v27-detailhero__grid { grid-template-columns:1fr; gap:46px; }.v27-hubhero__copy h1,.v27-detailhero__copy h1 { font-size:clamp(3rem,14.1vw,4.1rem); line-height:.94; }.v27-hubhero__copy>p:not(.v27-kicker),.v27-detailhero__copy>p:not(.v27-kicker) { font-size:.87rem; line-height:1.72; }
  .v27-hubhero__visual { grid-template-columns:1.22fr .78fr; grid-template-rows:190px 220px; min-height:422px; gap:8px; }.v27-hubhero__visual figure { border-width:5px; border-radius:17px; }.v27-hubhero__visual figure:first-child { border-radius:21px; }.v27-hubhero__seal { right:12px; bottom:18px; grid-template-columns:42px 1fr; min-width:215px; padding:13px 15px; }.v27-hubhero__seal span { width:40px; height:40px; font-size:1.15rem; }
  .v27-models,.v27-compare,.v27-overview { padding:88px 0 94px; }.v27-sectionhead { gap:22px; margin-bottom:45px; }.v27-sectionhead h2,.v27-fit__copy h2 { font-size:clamp(2.75rem,12.4vw,3.8rem); line-height:.97; }.v27-sectionhead>p,.v27-fit__copy>p:not(.v27-kicker) { font-size:.84rem; line-height:1.72; }
  .v27-modelgrid { grid-template-columns:1fr; gap:15px; }.v27-model { min-height:0; padding:0 23px 22px; }.v27-model figure { height:245px; margin-right:-23px; margin-left:-23px; }.v27-model__top { min-height:66px; }.v27-model h3 { margin-top:20px; font-size:1.5rem; }.v27-model>p { min-height:0; font-size:.78rem; }.v27-model ul { margin-top:17px; }.v27-model>b { margin-top:21px; }
  .v27-compare__labels { display:none; }.v27-compare__table>a { grid-template-columns:1fr 23px; gap:8px; min-height:0; padding:24px 18px; }.v27-compare__table>a:hover { padding:24px 18px; }.v27-compare__table>a b { font-size:1rem; }.v27-compare__table>a span { grid-column:1; display:block; font-size:.75rem; }.v27-compare__table>a svg { grid-column:2; grid-row:1/5; }
  .v27-spine,.v27-detailflow { padding:87px 0 94px; }.v27-spine__head { margin-bottom:43px; }.v27-spine__head h2,.v27-detailflow__head h2 { font-size:clamp(2.65rem,12vw,3.7rem); line-height:.97; }.v27-spine__steps,.v27-detailflow ol { grid-template-columns:1fr; }.v27-spine__steps li { min-height:235px; }.v27-spine__steps b { margin-top:54px; }.v27-spine__steps p,.v27-detailflow li p { font-size:.77rem; }
  .v27-cta__inner { grid-template-columns:58px 1fr; gap:19px; padding:34px 0 39px; }.v27-cta__inner>span { width:56px; height:56px; }.v27-cta__inner h2 { font-size:1.3rem; }.v27-cta__inner>a { grid-column:1/-1; justify-content:space-between; width:100%; margin-top:5px; font-size:.74rem; }
  .v27-detailhero { padding:56px 0 43px; }.v27-detailhero__wash { top:auto; width:100%; height:45%; }.v27-detail--transport .v27-detailhero__wash { opacity:.6; }.v27-detailhero__copy nav { margin-bottom:29px; font-size:.62rem; }.v27-detailhero__media { min-height:540px; border-width:6px; border-radius:24px; }.v27-detailhero__badge { right:20px; bottom:161px; left:20px; grid-template-columns:50px 1fr; }.v27-detailhero__badge>span { width:49px; height:49px; }.v27-detailhero__badge b { font-size:.99rem; }.v27-detailhero__media>ul { grid-template-columns:1fr; }.v27-detailhero__media>ul li { min-height:52px; padding:10px 15px; border-right:0; border-bottom:1px solid rgba(255,255,255,.15); }.v27-detailhero__media>ul li:last-child { border-bottom:0; }.v27-detailhero__media>ul small,.v27-detailhero__media>ul b { font-size:.55rem; }
  .v27-benefits { grid-template-columns:1fr; }.v27-benefits article { min-height:260px; padding:27px 25px; }.v27-benefits article>span { margin-bottom:45px; }.v27-benefits p { font-size:.78rem; }
  .v27-detailflow__head { gap:21px; margin-bottom:43px; }.v27-detailflow__head>p { font-size:.82rem; }.v27-detailflow li { min-height:285px; padding:27px 24px; }.v27-detailflow li>span { margin-bottom:48px; }
  .v27-fit { padding:92px 0; }.v27-fit__grid { grid-template-columns:1fr; gap:53px; }.v27-fit figure { min-height:520px; border-radius:23px; }.v27-fit figcaption { right:22px; bottom:23px; left:22px; }.v27-fit figcaption b { font-size:1.15rem; }.v27-fit__copy li { min-height:62px; font-size:.77rem; }.v27-fit__copy>a { font-size:.74rem; line-height:1.4; }
  .v27-next>div { grid-template-columns:1fr; }.v27-next p { padding:25px 20px; }.v27-next a { min-height:95px; padding:20px; border-bottom:1px solid var(--v27-line); }.v27-next a>b { font-size:.81rem; }
}
@media (prefers-reduced-motion:reduce) {
  .v27-btn,.v27-btn svg,.v27-hubhero__visual img,.v27-model,.v27-model img,.v27-model>b svg,.v27-benefits article,.v27-detailhero__media>img,.v27-fit__copy>a svg,.v27-cta__inner>a { transition:none!important; }
}

/* Contact page v29 */
.v29-elementor-root,.v29-elementor-root>.e-con-inner,.v29-elementor-root .elementor-widget-html,.v29-elementor-root .elementor-widget-container { width:100%; max-width:none!important; margin:0!important; padding:0!important; }
.v29 { --v29-ink:#0a3d29; --v29-deep:#062f20; --v29-sage:#829e8d; --v29-mint:#e9f2ec; --v29-mist:#f6f9f7; --v29-line:#d3dfd7; overflow:hidden; color:#183a2b; background:#fff; font-family:var(--by3-sans); }
.v29 * { box-sizing:border-box; }.v29 a { text-decoration:none; }.v29 svg { fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; }
.v29-shell { width:min(1240px,calc(100% - 64px)); margin-inline:auto; }
.v29-kicker { display:flex; align-items:center; gap:11px; margin:0; color:#6f8879; font:750 .59rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }.v29-kicker i { display:block; width:28px; height:1px; background:currentColor; }
.v29-hero { position:relative; padding:76px 0 82px; background:linear-gradient(118deg,#fff 0%,#fff 56%,#eaf2ed 56%,#f5f8f6 100%); }
.v29-hero__gridline { position:absolute; inset:0; opacity:.48; pointer-events:none; background:linear-gradient(90deg,transparent calc(50% - 1px),#dbe6df 50%,transparent calc(50% + 1px)); }
.v29-hero__grid { position:relative; display:grid; grid-template-columns:minmax(0,.86fr) minmax(500px,1.14fr); align-items:center; gap:7vw; }
.v29-hero__copy h1 { max-width:660px; margin:25px 0 0; color:var(--v29-ink); font:760 clamp(3.5rem,5.35vw,6rem)/.91 var(--by3-sans); letter-spacing:-.069em; }.v29-hero__copy h1 em { display:block; color:var(--v29-sage); font-style:normal; font-weight:560; }
.v29-hero__copy>p:not(.v29-kicker) { max-width:570px; margin:30px 0 0; color:#62756b; font-size:.91rem; line-height:1.78; }
.v29-hero__actions { display:flex; align-items:center; gap:24px; margin-top:36px; }.v29-hero__actions>a:first-child { display:inline-flex; align-items:center; gap:18px; min-height:57px; padding:0 14px 0 22px; border-radius:14px; color:#fff!important; background:var(--v29-ink); font-size:.71rem; font-weight:790; box-shadow:0 15px 30px rgba(10,61,41,.14); transition:transform .22s ease,background-color .22s ease; }.v29-hero__actions>a:first-child svg { box-sizing:content-box; width:16px; height:16px; padding:8px; border-radius:9px; background:rgba(255,255,255,.13); stroke-width:1.8; }.v29-hero__actions>a:first-child:hover,.v29-hero__actions>a:first-child:focus-visible { outline:none; background:#14583d; transform:translateY(-2px); }.v29-hero__actions>a:last-child { position:relative; color:#244d3a!important; font-size:.7rem; font-weight:760; }.v29-hero__actions>a:last-child::after { position:absolute; right:0; bottom:-6px; left:0; height:1px; background:#93aa9c; content:""; }
.v29-route { position:relative; min-height:620px; overflow:hidden; padding:35px; border:9px solid #fff; border-radius:33px; color:#fff; background:var(--v29-deep); box-shadow:0 28px 70px rgba(10,61,41,.2); }.v29-route::before,.v29-route::after { position:absolute; border:1px solid rgba(199,225,209,.1); border-radius:50%; content:""; }.v29-route::before { top:-260px; right:-190px; width:570px; height:570px; }.v29-route::after { top:-165px; right:-95px; width:380px; height:380px; }
.v29-route__head { position:relative; z-index:1; display:flex; align-items:flex-start; justify-content:space-between; min-height:147px; }.v29-route__head p { margin:0; }.v29-route__head small { display:block; margin-bottom:14px; color:#9fb8aa; font:690 .52rem/1 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }.v29-route__head b { font-size:1.65rem; font-weight:670; line-height:1.12; letter-spacing:-.04em; }.v29-route__head>span { display:flex; align-items:center; justify-content:center; width:56px; height:56px; border:1px solid rgba(255,255,255,.18); border-radius:16px; background:rgba(255,255,255,.08); }.v29-route__head svg { width:24px; height:24px; stroke-width:1.5; }
.v29-route__line { position:absolute; top:167px; bottom:56px; left:61px; width:1px; background:linear-gradient(#85a493 0 62%,rgba(133,164,147,.18) 62%); }.v29-route__line::before,.v29-route__line::after { position:absolute; left:50%; width:7px; height:7px; border:2px solid var(--v29-deep); border-radius:50%; background:#d8e8de; content:""; transform:translateX(-50%); }.v29-route__line::before { top:0; }.v29-route__line::after { bottom:0; }
.v29-route__items { position:relative; z-index:1; display:grid; }.v29-route__items>a { display:grid; grid-template-columns:54px minmax(0,1fr) 22px; align-items:center; gap:17px; min-height:93px; border-top:1px solid rgba(255,255,255,.13); color:#fff!important; transition:padding .2s ease,background-color .2s ease; }.v29-route__items>a:hover,.v29-route__items>a:focus-visible { margin-inline:-11px; padding-inline:11px; border-radius:12px; outline:none; background:rgba(255,255,255,.055); }.v29-route__items>a>span { display:flex; align-items:center; justify-content:center; width:53px; height:53px; border:1px solid rgba(255,255,255,.17); border-radius:15px; background:#0d432e; }.v29-route__items>a>span svg { width:22px; height:22px; }.v29-route__items p { margin:0; }.v29-route__items small { display:block; color:#8da99a; font:670 .48rem/1 var(--by3-mono); letter-spacing:.08em; text-transform:uppercase; }.v29-route__items b { display:block; margin-top:7px; font-size:.69rem; font-weight:700; }.v29-route__items>a>svg { width:18px; height:18px; color:#91ad9e; stroke-width:1.7; }
.v29-channelbar { border-top:1px solid var(--v29-line); border-bottom:1px solid var(--v29-line); background:#fff; }.v29-channelbar>div { display:grid; grid-template-columns:repeat(3,1fr); min-height:68px; }.v29-channelbar span { display:flex; align-items:center; justify-content:center; gap:11px; border-left:1px solid var(--v29-line); color:#60766a; font-size:.62rem; font-weight:690; }.v29-channelbar span:last-child { border-right:1px solid var(--v29-line); }.v29-channelbar i { width:6px; height:6px; border-radius:50%; background:var(--v29-ink); box-shadow:0 0 0 5px #e5eee8; }
#teklif { scroll-margin-top:118px; }
.v29-workspace { padding:126px 0 136px; background:var(--v29-mist); }.v29-sectionhead { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); align-items:end; gap:80px; margin-bottom:67px; }.v29-sectionhead h2 { max-width:800px; margin:23px 0 0; color:var(--v29-ink); font:720 clamp(3rem,4.45vw,5.05rem)/.95 var(--by3-sans); letter-spacing:-.063em; }.v29-sectionhead h2 em { display:block; color:var(--v29-sage); font-style:normal; font-weight:560; }.v29-sectionhead>p { margin:0 0 4px; color:#687970; font-size:.82rem; line-height:1.76; }
.v29-workspace__grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(500px,.95fr); align-items:stretch; gap:22px; }.v29-map { position:relative; min-height:690px; overflow:hidden; border:8px solid #fff; border-radius:29px; background:#dfe9e2; box-shadow:0 24px 58px rgba(10,61,41,.12); }.v29-map iframe { position:absolute; inset:0; width:100%; height:100%; border:0; filter:saturate(.72) contrast(.96); }.v29-map__card { position:absolute; right:23px; bottom:23px; left:23px; display:grid; grid-template-columns:58px minmax(0,1fr) auto; align-items:center; gap:17px; min-height:123px; padding:20px; border:1px solid rgba(255,255,255,.18); border-radius:19px; color:#fff; background:rgba(6,47,32,.94); box-shadow:0 18px 42px rgba(4,38,25,.24); backdrop-filter:blur(12px); }.v29-map__card>span { display:flex; align-items:center; justify-content:center; width:56px; height:56px; border:1px solid rgba(255,255,255,.18); border-radius:15px; background:rgba(255,255,255,.07); }.v29-map__card>span svg { width:24px; height:24px; stroke-width:1.5; }.v29-map__card p { margin:0; }.v29-map__card small { display:block; color:#9eb7a9; font:680 .48rem/1 var(--by3-mono); letter-spacing:.09em; text-transform:uppercase; }.v29-map__card b { display:block; margin-top:7px; font-size:.8rem; font-weight:720; }.v29-map__card em { display:block; margin-top:5px; color:#b4c7bc; font-size:.59rem; font-style:normal; line-height:1.45; }.v29-map__card>a { display:inline-flex; align-items:center; gap:10px; min-height:45px; padding:0 13px; border:1px solid rgba(255,255,255,.25); border-radius:11px; color:#fff!important; font-size:.59rem; font-weight:740; }.v29-map__card>a svg { width:15px; height:15px; stroke-width:1.8; }
.v29-form { align-self:stretch; padding:30px; border-color:#dbe5de; box-shadow:0 24px 58px rgba(10,61,41,.1); }.v29-form .v20-form__head { min-height:63px; }.v29-form .v20-form__head>div>small { display:block; margin-bottom:6px; color:#829289; font:.49rem/1 var(--by3-mono); letter-spacing:.08em; text-transform:uppercase; }.v29-form .v20-form__head p { font-size:.86rem; }.v29-form .v20-field input { min-height:56px; }.v29-form .v20-field textarea { min-height:104px; }
.v29-follow { position:relative; padding:122px 0 132px; color:#fff; background:var(--v29-deep); }.v29-follow::after { position:absolute; top:-330px; right:-220px; width:690px; height:690px; border:1px solid rgba(200,225,210,.08); border-radius:50%; content:""; box-shadow:inset 0 0 0 90px rgba(200,225,210,.022),inset 0 0 0 190px rgba(200,225,210,.016); }.v29-follow header { position:relative; z-index:1; display:grid; grid-template-columns:.62fr 1.38fr; align-items:end; gap:70px; margin-bottom:62px; }.v29-follow .v29-kicker { color:#9fb7a9; }.v29-follow h2 { max-width:760px; margin:0; color:#fff; font:710 clamp(3rem,4.45vw,5rem)/.95 var(--by3-sans); letter-spacing:-.062em; }.v29-follow h2 em { display:block; color:#91aa9c; font-style:normal; font-weight:560; }.v29-follow ol { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); margin:0; padding:0; list-style:none; border-top:1px solid rgba(213,232,220,.2); border-left:1px solid rgba(213,232,220,.2); }.v29-follow li { min-height:270px; padding:30px 28px; border-right:1px solid rgba(213,232,220,.2); border-bottom:1px solid rgba(213,232,220,.2); }.v29-follow li span { color:#759484; font:680 .53rem/1 var(--by3-mono); letter-spacing:.08em; }.v29-follow li b { display:block; margin-top:75px; color:#fff; font-size:1.05rem; font-weight:700; }.v29-follow li p { margin:14px 0 0; color:#9fb3a8; font-size:.71rem; line-height:1.72; }
@media (max-width:1024px) {
  .v29-hero__grid { grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr); gap:45px; }.v29-route { min-height:590px; padding:29px; }.v29-route__line { left:55px; }
  .v29-sectionhead { grid-template-columns:1fr; gap:27px; }.v29-sectionhead>p { max-width:680px; }.v29-workspace__grid { grid-template-columns:1fr; }.v29-map { min-height:600px; }.v29-form { width:100%; }
  .v29-follow header { grid-template-columns:1fr; gap:25px; }
}
@media (max-width:767px) {
  .v29-shell { width:min(100% - 32px,1240px); }.v29-kicker { font-size:.58rem; }.v29-hero { padding:59px 0 44px; background:linear-gradient(180deg,#fff 0%,#fff 54%,#eaf2ed 54%,#f5f8f6 100%); }.v29-hero__gridline { display:none; }.v29-hero__grid { grid-template-columns:1fr; gap:46px; }.v29-hero__copy h1 { font-size:clamp(3rem,14vw,4.15rem); line-height:.94; }.v29-hero__copy>p:not(.v29-kicker) { font-size:.87rem; line-height:1.72; }.v29-hero__actions { align-items:stretch; flex-direction:column; gap:18px; }.v29-hero__actions>a:first-child { justify-content:space-between; width:100%; font-size:.75rem; }.v29-hero__actions>a:last-child { align-self:flex-start; margin-left:3px; font-size:.72rem; }
  .v29-route { min-height:574px; padding:24px 20px; border-width:6px; border-radius:24px; }.v29-route__head { min-height:132px; }.v29-route__head b { font-size:1.43rem; }.v29-route__head>span { width:50px; height:50px; }.v29-route__line { top:148px; bottom:48px; left:44px; }.v29-route__items>a { grid-template-columns:48px minmax(0,1fr) 18px; gap:13px; min-height:96px; }.v29-route__items>a>span { width:47px; height:47px; }.v29-route__items b { overflow-wrap:anywhere; font-size:.68rem; }
  .v29-channelbar { overflow:auto; scrollbar-width:none; }.v29-channelbar::-webkit-scrollbar { display:none; }.v29-channelbar>div { width:max-content; min-width:100%; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:max-content; }.v29-channelbar span { min-height:62px; padding:0 22px; font-size:.67rem; white-space:nowrap; }
  .v29-workspace { padding:88px 0 94px; }.v29-sectionhead { gap:22px; margin-bottom:45px; }.v29-sectionhead h2,.v29-follow h2 { font-size:clamp(2.7rem,12.3vw,3.75rem); line-height:.97; }.v29-sectionhead>p { font-size:.84rem; line-height:1.72; }.v29-workspace__grid { gap:17px; }.v29-map { min-height:520px; border-width:5px; border-radius:23px; }.v29-map__card { right:13px; bottom:13px; left:13px; grid-template-columns:50px 1fr; gap:13px; padding:17px; }.v29-map__card>span { width:49px; height:49px; }.v29-map__card>a { grid-column:1/-1; justify-content:space-between; width:100%; }.v29-form { padding:22px 17px; border-radius:21px; }.v29-form .v20-form__grid { grid-template-columns:1fr; }.v29-form .v20-field--full { grid-column:auto; }
  .v29-follow { padding:87px 0 94px; }.v29-follow header { gap:23px; margin-bottom:43px; }.v29-follow ol { grid-template-columns:1fr; }.v29-follow li { min-height:235px; padding:27px 24px; }.v29-follow li b { margin-top:54px; }.v29-follow li p { font-size:.77rem; }
}
@media (prefers-reduced-motion:reduce) {
  .v29-hero__actions>a:first-child,.v29-route__items>a,.v29-map__card>a { transition:none!important; }
}

/* Global Elementor footer v30 */
.v30-elementor-root,.v30-elementor-root>.e-con-inner,.v30-elementor-root .elementor-widget-html,.v30-elementor-root .elementor-widget-container { width:100%; max-width:none!important; margin:0!important; padding:0!important; }
.v30-footer { --v30-deep:#052f20; --v30-ink:#0a3d29; --v30-sage:#91aa9c; --v30-line:rgba(213,232,220,.17); position:relative; overflow:hidden; color:#fff; background:var(--v30-deep); font-family:var(--by3-sans); }
.v30-footer * { box-sizing:border-box; }.v30-footer a { color:inherit!important; text-decoration:none; }.v30-footer svg { fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; }
.v30-shell { position:relative; z-index:1; width:min(1240px,calc(100% - 64px)); margin-inline:auto; }
.v30-footer__orbit { position:absolute; right:-275px; bottom:-415px; width:760px; height:760px; border:1px solid rgba(202,225,211,.075); border-radius:50%; pointer-events:none; box-shadow:inset 0 0 0 112px rgba(202,225,211,.018),inset 0 0 0 236px rgba(202,225,211,.014); }
.v30-footer__lead { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(370px,.75fr); align-items:end; gap:80px; min-height:286px; padding:65px 0 61px; border-bottom:1px solid var(--v30-line); }
.v30-footer__lead p,.v30-footer__lead div { margin:0; }.v30-footer__lead small { display:block; margin-bottom:20px; color:#9ab2a4; font:700 .55rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }
.v30-footer__lead strong { display:block; color:#fff; font:710 clamp(2.7rem,4.15vw,4.7rem)/.94 var(--by3-sans); letter-spacing:-.06em; }.v30-footer__lead strong em { color:var(--v30-sage); font-style:normal; font-weight:560; }
.v30-footer__lead>div { display:grid; justify-items:start; gap:25px; padding-bottom:4px; }.v30-footer__lead>div>span { max-width:470px; color:#a9beb2; font-size:.77rem; line-height:1.72; }
.v30-footer__lead>div>a { display:inline-flex; align-items:center; gap:20px; min-height:53px; padding:0 13px 0 20px; border:1px solid rgba(255,255,255,.28); border-radius:13px; font-size:.67rem; font-weight:780; transition:color .2s ease,background-color .2s ease,transform .2s ease; }.v30-footer__lead>div>a svg { box-sizing:content-box; width:15px; height:15px; padding:7px; border-radius:8px; background:rgba(255,255,255,.09); stroke-width:1.8; transition:transform .2s ease; }.v30-footer__lead>div>a:hover,.v30-footer__lead>div>a:focus-visible { color:var(--v30-deep)!important; outline:none; background:#dce9e1; transform:translateY(-2px); }.v30-footer__lead>div>a:hover svg { transform:translateX(2px); }
.v30-footer__main { display:grid; grid-template-columns:1.25fr .68fr .68fr 1.22fr; gap:58px; padding:68px 0 64px; border-bottom:1px solid var(--v30-line); }
.v30-footer__brand>a:first-child { display:inline-flex; }.v30-footer__brand>a:first-child img { display:block; width:190px; max-width:100%; height:auto; }.v30-footer__brand>p { max-width:290px; margin:25px 0 0; color:#9fb5a8; font-size:.69rem; line-height:1.72; }
.v30-footer__wa { display:grid; grid-template-columns:33px 1fr 16px; align-items:center; gap:10px; width:min(100%,270px); min-height:52px; margin-top:26px; padding:7px 12px 7px 8px; border:1px solid rgba(255,255,255,.15); border-radius:13px; color:#dce9e1!important; background:rgba(255,255,255,.035); font-size:.62rem; font-weight:730; transition:background-color .2s ease,border-color .2s ease; }.v30-footer__wa>svg:first-child { box-sizing:content-box; width:17px; height:17px; padding:8px; border-radius:9px; background:#15563d; stroke-width:1.6; }.v30-footer__wa>svg:last-child { width:15px; height:15px; color:#86a595; stroke-width:1.8; transition:transform .2s ease; }.v30-footer__wa:hover,.v30-footer__wa:focus-visible { border-color:rgba(255,255,255,.28); outline:none; background:rgba(255,255,255,.07); }.v30-footer__wa:hover>svg:last-child { transform:translateX(3px); }
.v30-footer__nav,.v30-footer__contact { display:flex; align-items:flex-start; flex-direction:column; margin:0; font-style:normal; }.v30-footer__nav>small,.v30-footer__contact>small { margin-bottom:27px; color:#779787; font:700 .52rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }
.v30-footer__nav>a { position:relative; margin-bottom:16px; color:#d9e5dd!important; font-size:.68rem; font-weight:620; line-height:1.35; transition:color .2s ease,transform .2s ease; }.v30-footer__nav>a::before { position:absolute; top:.62em; left:-13px; width:4px; height:4px; border-radius:50%; background:#8aa797; content:""; opacity:0; transform:translateX(-4px); transition:opacity .2s ease,transform .2s ease; }.v30-footer__nav>a:hover,.v30-footer__nav>a:focus-visible { color:#fff!important; outline:none; transform:translateX(5px); }.v30-footer__nav>a:hover::before { opacity:1; transform:none; }
.v30-footer__contact>a { display:grid; grid-template-columns:40px minmax(0,1fr); align-items:center; gap:12px; width:100%; min-height:58px; padding:8px 0; border-top:1px solid rgba(255,255,255,.11); }.v30-footer__contact>a:last-child { border-bottom:1px solid rgba(255,255,255,.11); }.v30-footer__contact i { display:flex; align-items:center; justify-content:center; width:37px; height:37px; border-radius:10px; color:#c7dbcf; background:rgba(255,255,255,.065); font-style:normal; transition:background-color .2s ease; }.v30-footer__contact i svg { width:17px; height:17px; stroke-width:1.5; }.v30-footer__contact span { min-width:0; }.v30-footer__contact b,.v30-footer__contact em { display:block; overflow-wrap:anywhere; }.v30-footer__contact b { color:#e2ebe5; font-size:.62rem; font-weight:690; }.v30-footer__contact em { margin-top:4px; color:#819e8f; font-size:.53rem; font-style:normal; line-height:1.35; }.v30-footer__contact>a:hover i,.v30-footer__contact>a:focus-visible i { background:#15563d; }.v30-footer__contact>a:focus-visible { outline:1px solid #89a897; outline-offset:4px; }
.v30-footer__bottom { display:grid; grid-template-columns:1fr auto 135px; align-items:center; gap:32px; min-height:98px; }.v30-footer__bottom>p { margin:0; color:#789687; font:620 .5rem/1.5 var(--by3-mono); letter-spacing:.06em; text-transform:uppercase; }.v30-footer__bottom>nav { display:flex; align-items:center; gap:19px; }.v30-footer__bottom>nav a,.v30-footer__bottom>nav button { padding:0; border:0; color:#a9bdb2!important; background:none; font:650 .57rem/1 var(--by3-sans); cursor:pointer; transition:color .2s ease; }.v30-footer__bottom>nav a:hover,.v30-footer__bottom>nav a:focus-visible,.v30-footer__bottom>nav button:hover,.v30-footer__bottom>nav button:focus-visible { color:#fff!important; outline:none; }
.footer-logo { display:flex; align-items:center; justify-content:flex-end; min-height:44px; text-align:right; }.footer-logo>a { display:inline-flex; align-items:center; justify-content:center; }.footer-logo img { display:block; width:96px; max-width:96px!important; height:auto; opacity:.58; transition:opacity .22s ease; }.footer-logo>a:hover img,.footer-logo>a:focus-visible img { opacity:.88; }.footer-logo>a:focus-visible { border-radius:4px; outline:1px solid rgba(220,233,225,.65); outline-offset:6px; }
@media (max-width:1024px) {
  .v30-footer__lead { grid-template-columns:1fr .8fr; gap:45px; }.v30-footer__main { grid-template-columns:1.1fr .75fr .75fr; gap:48px 34px; }.v30-footer__contact { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.v30-footer__contact>small { grid-column:1/-1; margin-bottom:3px; }.v30-footer__contact>a,.v30-footer__contact>a:last-child { padding:9px; border:1px solid rgba(255,255,255,.11); border-radius:12px; }
}
@media (max-width:767px) {
  .v30-shell { width:min(100% - 32px,1240px); }.v30-footer__orbit { right:-390px; bottom:-285px; width:650px; height:650px; }.v30-footer__lead { grid-template-columns:1fr; gap:29px; min-height:0; padding:58px 0 49px; }.v30-footer__lead small { margin-bottom:17px; font-size:.58rem; }.v30-footer__lead strong { font-size:clamp(2.65rem,12vw,3.65rem); line-height:.96; }.v30-footer__lead>div { gap:22px; }.v30-footer__lead>div>span { font-size:.78rem; }.v30-footer__lead>div>a { justify-content:space-between; width:100%; font-size:.72rem; }
  .v30-footer__main { grid-template-columns:1fr 1fr; gap:49px 25px; padding:52px 0 49px; }.v30-footer__brand { grid-column:1/-1; }.v30-footer__brand>a:first-child img { width:176px; }.v30-footer__brand>p { font-size:.75rem; }.v30-footer__wa { width:100%; max-width:320px; font-size:.69rem; }.v30-footer__nav>small,.v30-footer__contact>small { margin-bottom:22px; font-size:.55rem; }.v30-footer__nav>a { margin-bottom:17px; font-size:.72rem; }.v30-footer__contact { grid-column:1/-1; grid-template-columns:1fr; gap:9px; }.v30-footer__contact>small { grid-column:auto; margin-bottom:4px; }.v30-footer__contact>a,.v30-footer__contact>a:last-child { min-height:64px; padding:10px; }.v30-footer__contact b { font-size:.69rem; }.v30-footer__contact em { font-size:.59rem; }
  .v30-footer__bottom { grid-template-columns:1fr; justify-items:center; gap:17px; min-height:0; padding:31px 0 35px; text-align:center; }.v30-footer__bottom>p { font-size:.53rem; }.v30-footer__bottom>nav { gap:19px; }.v30-footer__bottom>nav a { font-size:.62rem; }.footer-logo { justify-content:center; width:100%; margin-top:2px; text-align:center; }
}
@media (prefers-reduced-motion:reduce) {
  .v30-footer__lead>div>a,.v30-footer__lead>div>a svg,.v30-footer__wa,.v30-footer__wa>svg:last-child,.v30-footer__nav>a,.v30-footer__nav>a::before,.v30-footer__contact i,.footer-logo img { transition:none!important; }
}

/* Elementor 404 template v31 */
.v31-elementor-root,.v31-elementor-root>.e-con-inner,.v31-elementor-root .elementor-widget-html,.v31-elementor-root .elementor-widget-container { width:100%; max-width:none!important; margin:0!important; padding:0!important; }
.v31-error { --v31-ink:#0a3d29; --v31-deep:#062f20; --v31-sage:#829e8d; --v31-mint:#e9f2ec; --v31-mist:#f6f9f7; --v31-line:#d3dfd7; position:relative; overflow:hidden; color:#183a2b; background:linear-gradient(118deg,#fff 0%,#fff 57%,#eaf2ed 57%,#f5f8f6 100%); font-family:var(--by3-sans); }
.v31-error * { box-sizing:border-box; }.v31-error a { text-decoration:none; }.v31-error svg { fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; }
.v31-error__grid { position:absolute; inset:0; opacity:.46; pointer-events:none; background:linear-gradient(90deg,transparent calc(50% - 1px),#dbe6df 50%,transparent calc(50% + 1px)); }
.v31-shell { width:min(1240px,calc(100% - 64px)); margin-inline:auto; }.v31-error__layout { position:relative; display:grid; grid-template-columns:minmax(0,.88fr) minmax(510px,1.12fr); align-items:center; gap:7vw; min-height:730px; padding:74px 0 80px; }
.v31-kicker { display:flex; align-items:center; gap:11px; margin:0; color:#6f8879; font:750 .59rem/1 var(--by3-mono); letter-spacing:.12em; text-transform:uppercase; }.v31-kicker i { display:block; width:28px; height:1px; background:currentColor; }
.v31-error__copy h1 { max-width:690px; margin:25px 0 0; color:var(--v31-ink); font:760 clamp(3.4rem,5.2vw,5.75rem)/.91 var(--by3-sans); letter-spacing:-.069em; }.v31-error__copy h1 em { display:block; color:var(--v31-sage); font-style:normal; font-weight:560; }
.v31-error__copy>p:not(.v31-kicker) { max-width:570px; margin:30px 0 0; color:#62756b; font-size:.9rem; line-height:1.78; }
.v31-error__actions { display:flex; align-items:center; gap:24px; margin-top:37px; }.v31-btn { display:grid; grid-template-columns:19px 1fr 31px; align-items:center; gap:13px; min-width:230px; min-height:58px; padding:0 12px 0 19px; border-radius:14px; color:#fff!important; background:var(--v31-ink); font-size:.7rem; font-weight:790; box-shadow:0 15px 30px rgba(10,61,41,.14); transition:transform .22s ease,background-color .22s ease; }.v31-btn>svg:first-child { width:18px; height:18px; stroke-width:1.6; }.v31-btn>svg:last-child { box-sizing:content-box; width:15px; height:15px; padding:8px; border-radius:9px; background:rgba(255,255,255,.13); stroke-width:1.8; }.v31-btn:hover,.v31-btn:focus-visible { outline:none; background:#14583d; transform:translateY(-2px); }
.v31-link { display:inline-flex; align-items:center; gap:10px; color:#244d3a!important; font-size:.69rem; font-weight:760; }.v31-link>svg:first-child { width:19px; height:19px; stroke-width:1.5; }.v31-link>svg:last-child { width:15px; height:15px; margin-left:3px; stroke-width:1.8; transition:transform .2s ease; }.v31-link:hover>svg:last-child,.v31-link:focus-visible>svg:last-child { transform:translateX(4px); }.v31-link:focus-visible { outline:1px solid var(--v31-ink); outline-offset:7px; }
.v31-error__support { display:grid; grid-template-columns:1fr auto; align-items:center; gap:9px 22px; max-width:570px; margin-top:45px; padding-top:24px; border-top:1px solid var(--v31-line); }.v31-error__support>span { grid-column:1/-1; color:#829289; font:680 .51rem/1 var(--by3-mono); letter-spacing:.08em; text-transform:uppercase; }.v31-error__support>a { display:inline-flex; align-items:center; gap:9px; color:var(--v31-ink)!important; font-size:.66rem; }.v31-error__support>a svg { width:16px; height:16px; stroke-width:1.6; }.v31-error__support>a:last-child { justify-self:end; color:#496858!important; font-weight:700; }.v31-error__support>a:last-child svg { width:14px; }
.v31-route { position:relative; min-height:610px; overflow:hidden; padding:34px; border:9px solid #fff; border-radius:33px; color:#fff; background:var(--v31-deep); box-shadow:0 28px 70px rgba(10,61,41,.2); }.v31-route::before,.v31-route::after { position:absolute; border:1px solid rgba(199,225,209,.1); border-radius:50%; content:""; }.v31-route::before { top:-280px; right:-190px; width:590px; height:590px; }.v31-route::after { top:-170px; right:-80px; width:370px; height:370px; }
.v31-route__code { position:absolute; top:105px; right:22px; left:22px; display:flex; align-items:center; justify-content:center; gap:18px; color:rgba(225,238,230,.055); font:790 clamp(8rem,15vw,13.5rem)/1 var(--by3-sans); letter-spacing:-.09em; pointer-events:none; }.v31-route__code i { width:.32em; height:.32em; border:1px solid currentColor; border-radius:50%; }
.v31-route__head { position:relative; z-index:2; display:flex; align-items:flex-start; justify-content:space-between; }.v31-route__head p { margin:0; }.v31-route__head small { display:block; margin-bottom:12px; color:#8ba899; font:690 .51rem/1 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }.v31-route__head strong { display:block; font-size:1.55rem; font-weight:680; letter-spacing:-.04em; }.v31-route__head>span { display:flex; align-items:center; justify-content:center; width:54px; height:54px; border:1px solid rgba(255,255,255,.18); border-radius:15px; background:rgba(255,255,255,.07); }.v31-route__head>span svg { width:24px; height:24px; stroke-width:1.5; }
.v31-route__map { position:absolute; z-index:1; top:135px; right:22px; left:22px; width:calc(100% - 44px); height:320px; }.v31-route__base { stroke:rgba(210,229,217,.16); stroke-width:2; stroke-dasharray:5 8; }.v31-route__active { stroke:#84a796; stroke-width:2.4; stroke-dasharray:8 9; animation:v31-route-flow 2.8s linear infinite; }.v31-route__node { fill:#dceae1; stroke:var(--v31-deep); stroke-width:4; }.v31-route__missing { fill:#174f38; stroke:#a8c0b2; stroke-width:2; }.v31-route__pulse { fill:none; stroke:#9bb7a8; stroke-width:1.5; transform-origin:479px 105px; animation:v31-pulse 2.3s ease-out infinite; }.v31-route__cross { stroke:#dce9e1; stroke-width:2; }
.v31-route__steps { position:absolute; z-index:2; right:27px; bottom:27px; left:27px; display:grid; grid-template-columns:repeat(3,1fr); border:1px solid rgba(255,255,255,.14); border-radius:18px; background:rgba(8,55,37,.88); backdrop-filter:blur(10px); }.v31-route__steps p { display:grid; grid-template-columns:38px 1fr; align-items:center; gap:10px; min-height:92px; margin:0; padding:14px; border-right:1px solid rgba(255,255,255,.13); }.v31-route__steps p:last-child { border-right:0; }.v31-route__steps i { display:flex; align-items:center; justify-content:center; width:37px; height:37px; border-radius:10px; color:#c9dcd0; background:rgba(255,255,255,.07); font-style:normal; }.v31-route__steps i svg { width:17px; height:17px; stroke-width:1.7; }.v31-route__steps small,.v31-route__steps b { display:block; }.v31-route__steps small { color:#739483; font:660 .44rem/1 var(--by3-mono); letter-spacing:.06em; text-transform:uppercase; }.v31-route__steps b { margin-top:7px; color:#dfeae3; font-size:.58rem; font-weight:690; }.v31-route__steps .is-missing { background:rgba(255,255,255,.045); }.v31-route__steps .is-missing i { color:#fff; background:#15563d; }.v31-route__steps .is-missing b { color:#fff; }
@keyframes v31-route-flow { to { stroke-dashoffset:-34; } }@keyframes v31-pulse { 0% { opacity:.75; transform:scale(1); }70%,100% { opacity:0; transform:scale(3.8); } }
@media (max-width:1024px) {
  .v31-error__layout { grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr); gap:45px; }.v31-route { min-height:580px; padding:29px; }.v31-route__steps p { grid-template-columns:34px 1fr; padding:11px; }.v31-route__steps i { width:33px; height:33px; }
}
@media (max-width:767px) {
  .v31-error { background:linear-gradient(180deg,#fff 0%,#fff 53%,#eaf2ed 53%,#f5f8f6 100%); }.v31-error__grid { display:none; }.v31-shell { width:min(100% - 32px,1240px); }.v31-error__layout { grid-template-columns:1fr; gap:47px; min-height:0; padding:58px 0 48px; }.v31-kicker { font-size:.58rem; }.v31-error__copy h1 { font-size:clamp(3rem,14vw,4.1rem); line-height:.94; }.v31-error__copy>p:not(.v31-kicker) { font-size:.87rem; line-height:1.72; }.v31-error__actions { align-items:stretch; flex-direction:column; gap:19px; }.v31-btn { width:100%; font-size:.75rem; }.v31-link { align-self:flex-start; margin-left:3px; font-size:.72rem; }.v31-error__support { grid-template-columns:1fr; gap:14px; margin-top:38px; }.v31-error__support>a:last-child { justify-self:start; }.v31-route { min-height:535px; padding:24px 20px; border-width:6px; border-radius:24px; }.v31-route__head strong { font-size:1.4rem; }.v31-route__head>span { width:49px; height:49px; }.v31-route__code { top:112px; font-size:38vw; }.v31-route__map { top:150px; height:255px; transform:scale(1.07); }.v31-route__steps { right:14px; bottom:14px; left:14px; grid-template-columns:1fr; border-radius:15px; }.v31-route__steps p { grid-template-columns:38px 1fr; min-height:59px; padding:9px 12px; border-right:0; border-bottom:1px solid rgba(255,255,255,.13); }.v31-route__steps p:last-child { border-bottom:0; }.v31-route__steps i { width:37px; height:37px; }.v31-route__steps small { font-size:.47rem; }.v31-route__steps b { margin-top:5px; font-size:.62rem; }
}
@media (prefers-reduced-motion:reduce) {
  .v31-btn,.v31-link>svg:last-child { transition:none!important; }.v31-route__active,.v31-route__pulse { animation:none!important; }
}

/* Cookie preferences v33 */
.v33-cookie { --v33-deep:#062f20; --v33-ink:#0a3d29; --v33-sage:#829e8d; --v33-mint:#e9f2ec; --v33-line:#d3dfd7; position:relative; z-index:99999; font-family:var(--by3-sans); }.v33-cookie * { box-sizing:border-box; }
.v33-cookie__banner { position:fixed; right:24px; bottom:24px; z-index:3; display:grid; grid-template-columns:48px minmax(0,1fr); gap:0 17px; width:min(430px,calc(100vw - 48px)); padding:22px; border:1px solid rgba(255,255,255,.18); border-radius:21px; color:#fff; background:rgba(6,47,32,.97); box-shadow:0 25px 70px rgba(3,30,20,.3); backdrop-filter:blur(14px); animation:v33-cookie-in .45s cubic-bezier(.2,.8,.2,1) both; }.v33-cookie__banner[hidden] { display:none!important; }
.v33-cookie__mark { grid-row:1/3; display:flex; align-items:center; justify-content:center; gap:3px; width:48px; height:48px; border:1px solid rgba(255,255,255,.16); border-radius:14px; background:rgba(255,255,255,.07); }.v33-cookie__mark span { width:6px; height:6px; border-radius:50%; background:#b7ccbf; }.v33-cookie__mark span:nth-child(2) { align-self:flex-start; margin-top:13px; }
.v33-cookie__copy small { display:block; margin:2px 0 9px; color:#8eaa9a; font:690 .49rem/1 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }.v33-cookie__copy h2 { margin:0; color:#fff; font-size:1.35rem; font-weight:710; letter-spacing:-.04em; }.v33-cookie__copy p { margin:12px 0 0; color:#b2c5b9; font-size:.66rem; line-height:1.65; }.v33-cookie__copy>a { display:inline-block; margin-top:10px; color:#d7e4dc!important; font-size:.58rem; font-weight:710; text-decoration:underline; text-decoration-color:#749484; text-underline-offset:4px; }
.v33-cookie__actions { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:19px; }.v33-cookie button { min-height:42px; padding:0 12px; border:1px solid rgba(255,255,255,.18); border-radius:10px; color:#dce8e0; background:rgba(255,255,255,.045); font-family:var(--by3-sans); font-size:.59rem; font-weight:760; cursor:pointer; transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease; }.v33-cookie button:hover,.v33-cookie button:focus-visible { border-color:rgba(255,255,255,.34); outline:none; background:rgba(255,255,255,.09); }.v33-cookie .v33-cookie__primary { border-color:#dce9e1; color:var(--v33-deep); background:#dce9e1; }.v33-cookie .v33-cookie__primary:hover,.v33-cookie .v33-cookie__primary:focus-visible { color:var(--v33-deep); background:#fff; transform:translateY(-1px); }.v33-cookie__actions [data-v33-cookie-settings] { grid-column:1/-1; min-height:32px; border:0; color:#91aa9c; background:transparent; }
.v33-cookie__backdrop { position:fixed; z-index:4; inset:0; background:rgba(3,25,17,.58); backdrop-filter:blur(5px); }.v33-cookie__backdrop[hidden],.v33-cookie__dialog[hidden] { display:none!important; }.v33-cookie__dialog { position:fixed; z-index:5; top:50%; left:50%; width:min(620px,calc(100vw - 40px)); max-height:calc(100vh - 40px); overflow:auto; padding:28px; border:1px solid #d7e2da; border-radius:24px; color:#173a2a; background:#fff; box-shadow:0 30px 90px rgba(3,30,20,.28); transform:translate(-50%,-50%); }
.v33-cookie__dialog>header { display:flex; align-items:flex-start; justify-content:space-between; gap:25px; padding-bottom:22px; border-bottom:1px solid #e1e8e3; }.v33-cookie__dialog>header small { display:block; margin-bottom:8px; color:#7d9286; font:690 .5rem/1 var(--by3-mono); letter-spacing:.1em; text-transform:uppercase; }.v33-cookie__dialog>header h2 { margin:0; color:var(--v33-ink); font-size:1.55rem; font-weight:720; letter-spacing:-.04em; }.v33-cookie__dialog>header button { position:relative; flex:0 0 42px; width:42px; padding:0; border-color:#dce5df; background:#f1f5f2; }.v33-cookie__dialog>header button span { position:absolute; top:50%; left:50%; width:15px; height:1px; background:var(--v33-ink); transform:translate(-50%,-50%) rotate(45deg); }.v33-cookie__dialog>header button span:last-child { transform:translate(-50%,-50%) rotate(-45deg); }
.v33-cookie__intro { margin:22px 0; color:#667a6f; font-size:.75rem; line-height:1.7; }.v33-cookie__options { display:grid; gap:10px; }.v33-cookie__options article { display:grid; grid-template-columns:1fr auto; align-items:center; gap:24px; min-height:94px; padding:18px; border:1px solid #dce5df; border-radius:15px; background:#f9fbfa; }.v33-cookie__options b { display:block; color:var(--v33-ink); font-size:.76rem; }.v33-cookie__options p { margin:7px 0 0; color:#718278; font-size:.64rem; line-height:1.55; }.v33-cookie__options article>span { color:#60786a; font-size:.56rem; font-weight:750; }.v33-cookie__options label { position:relative; display:block; width:49px; height:28px; }.v33-cookie__options input { position:absolute; width:1px; height:1px; opacity:0; }.v33-cookie__options label>span { position:absolute; inset:0; border-radius:20px; background:#cbd7cf; cursor:pointer; transition:background-color .2s ease; }.v33-cookie__options label>span::after { position:absolute; top:4px; left:4px; width:20px; height:20px; border-radius:50%; background:#fff; box-shadow:0 2px 5px rgba(6,47,32,.18); content:""; transition:transform .2s ease; }.v33-cookie__options input:checked+span { background:var(--v33-ink); }.v33-cookie__options input:checked+span::after { transform:translateX(21px); }.v33-cookie__options input:focus-visible+span { outline:2px solid var(--v33-ink); outline-offset:3px; }
.v33-cookie__dialog>footer { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:23px; padding-top:22px; border-top:1px solid #e1e8e3; }.v33-cookie__dialog>footer>a { color:#587263!important; font-size:.61rem; font-weight:710; }.v33-cookie__dialog>footer>div { display:flex; gap:8px; }.v33-cookie__dialog>footer button { min-height:43px; border-color:#d5e0d8; color:#365a48; background:#f2f6f3; }.v33-cookie__dialog>footer .v33-cookie__primary { color:#fff; background:var(--v33-ink); }.v33-cookie__dialog>footer .v33-cookie__primary:hover { color:#fff; background:#14583d; }
.v33-cookie-open { overflow:hidden; }.v33-map-consent { position:absolute; z-index:2; inset:0; display:flex; align-items:center; justify-content:center; padding:35px; text-align:center; background:linear-gradient(145deg,#e7efe9,#d8e5dd); }.v33-map-consent[hidden] { display:none!important; }.v33-map-consent>div { max-width:360px; padding:27px; border:1px solid #c6d6cb; border-radius:18px; background:rgba(255,255,255,.82); box-shadow:0 20px 50px rgba(10,61,41,.12); }.v33-map-consent b { display:block; color:var(--v33-ink); font-size:1rem; }.v33-map-consent p { margin:10px 0 18px; color:#687b71; font-size:.7rem; line-height:1.65; }.v33-map-consent button { min-height:44px; padding:0 17px; border:0; border-radius:11px; color:#fff; background:var(--v33-ink); font-size:.63rem; font-weight:750; cursor:pointer; }
@keyframes v33-cookie-in { from { opacity:0; transform:translateY(18px) scale(.98); }to { opacity:1; transform:none; } }
@media (max-width:767px) {
  .v33-cookie__banner { right:12px; bottom:12px; width:calc(100vw - 24px); padding:18px; border-radius:18px; }.v33-cookie__copy p { font-size:.7rem; }.v33-cookie__actions { grid-template-columns:1fr; }.v33-cookie__actions [data-v33-cookie-settings] { grid-column:auto; }.v33-cookie button { font-size:.65rem; }.v33-cookie__dialog { width:calc(100vw - 24px); max-height:calc(100vh - 24px); padding:20px 16px; border-radius:20px; }.v33-cookie__dialog>header h2 { font-size:1.3rem; }.v33-cookie__intro { font-size:.73rem; }.v33-cookie__options article { gap:12px; padding:15px; }.v33-cookie__dialog>footer { align-items:stretch; flex-direction:column; }.v33-cookie__dialog>footer>div { display:grid; grid-template-columns:1fr 1fr; }.v33-cookie__dialog>footer button { font-size:.61rem; }
}
@media (prefers-reduced-motion:reduce) { .v33-cookie__banner { animation:none!important; }.v33-cookie button,.v33-cookie__options label>span,.v33-cookie__options label>span::after { transition:none!important; } }

/* Cookie controls v34: isolate every interaction state from Hello Elementor's pink button defaults. */
.v33-cookie button,
.v33-cookie button:hover,
.v33-cookie button:focus,
.v33-cookie button:focus-visible,
.v33-cookie button:active,
.v30-footer__bottom>nav>button[data-v33-cookie-open],
.v30-footer__bottom>nav>button[data-v33-cookie-open]:hover,
.v30-footer__bottom>nav>button[data-v33-cookie-open]:focus,
.v30-footer__bottom>nav>button[data-v33-cookie-open]:focus-visible,
.v30-footer__bottom>nav>button[data-v33-cookie-open]:active {
  -webkit-appearance:none!important;
  appearance:none!important;
  box-sizing:border-box!important;
  margin:0!important;
  background-image:none!important;
  box-shadow:none!important;
  text-decoration:none!important;
  text-shadow:none!important;
  text-transform:none!important;
  white-space:nowrap!important;
}
.v33-cookie button {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}
.v33-cookie button:focus-visible {
  outline:2px solid #829e8d!important;
  outline-offset:2px!important;
}
.v33-cookie button:focus:not(:focus-visible) { outline:0!important; }
.v33-cookie__banner button,
.v33-cookie__banner button:focus,
.v33-cookie__banner button:active {
  border-color:rgba(255,255,255,.18)!important;
  color:#dce8e0!important;
  background-color:rgba(255,255,255,.045)!important;
}
.v33-cookie__banner button:hover,
.v33-cookie__banner button:focus-visible {
  border-color:rgba(255,255,255,.34)!important;
  color:#fff!important;
  background-color:rgba(255,255,255,.09)!important;
}
.v33-cookie__banner .v33-cookie__primary,
.v33-cookie__banner .v33-cookie__primary:focus,
.v33-cookie__banner .v33-cookie__primary:active {
  border-color:#dce9e1!important;
  color:#062f20!important;
  background-color:#dce9e1!important;
}
.v33-cookie__banner .v33-cookie__primary:hover,
.v33-cookie__banner .v33-cookie__primary:focus-visible {
  border-color:#fff!important;
  color:#062f20!important;
  background-color:#fff!important;
}
.v33-cookie__banner [data-v33-cookie-settings],
.v33-cookie__banner [data-v33-cookie-settings]:focus,
.v33-cookie__banner [data-v33-cookie-settings]:active {
  border-color:transparent!important;
  color:#91aa9c!important;
  background-color:transparent!important;
}
.v33-cookie__banner [data-v33-cookie-settings]:hover,
.v33-cookie__banner [data-v33-cookie-settings]:focus-visible { color:#fff!important; background-color:transparent!important; }
.v33-cookie__dialog>header>button[data-v33-cookie-close],
.v33-cookie__dialog>header>button[data-v33-cookie-close]:hover,
.v33-cookie__dialog>header>button[data-v33-cookie-close]:focus,
.v33-cookie__dialog>header>button[data-v33-cookie-close]:active {
  flex:0 0 42px!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  padding:0!important;
  border:1px solid #dce5df!important;
  border-radius:12px!important;
  color:#0a3d29!important;
  background-color:#f1f5f2!important;
  transform:none!important;
}
.v33-cookie__dialog>header>button[data-v33-cookie-close]:hover,
.v33-cookie__dialog>header>button[data-v33-cookie-close]:focus-visible {
  border-color:#bfd0c5!important;
  background-color:#e7efe9!important;
}
.v33-cookie__dialog>footer button,
.v33-cookie__dialog>footer button:focus,
.v33-cookie__dialog>footer button:active {
  min-height:43px!important;
  padding:0 14px!important;
  border:1px solid #d5e0d8!important;
  border-radius:10px!important;
  color:#365a48!important;
  background-color:#f2f6f3!important;
  transform:none!important;
}
.v33-cookie__dialog>footer button:hover,
.v33-cookie__dialog>footer button:focus-visible {
  border-color:#bfd0c5!important;
  color:#0a3d29!important;
  background-color:#e7efe9!important;
}
.v33-cookie__dialog>footer .v33-cookie__primary,
.v33-cookie__dialog>footer .v33-cookie__primary:focus,
.v33-cookie__dialog>footer .v33-cookie__primary:active {
  border-color:#0a3d29!important;
  color:#fff!important;
  background-color:#0a3d29!important;
}
.v33-cookie__dialog>footer .v33-cookie__primary:hover,
.v33-cookie__dialog>footer .v33-cookie__primary:focus-visible {
  border-color:#14583d!important;
  color:#fff!important;
  background-color:#14583d!important;
}
.v30-footer__bottom>nav>button[data-v33-cookie-open],
.v30-footer__bottom>nav>button[data-v33-cookie-open]:focus,
.v30-footer__bottom>nav>button[data-v33-cookie-open]:active {
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  color:#a9bdb2!important;
  background-color:transparent!important;
  font:650 .57rem/1 var(--by3-sans)!important;
  outline:0!important;
}
.v30-footer__bottom>nav>button[data-v33-cookie-open]:hover,
.v30-footer__bottom>nav>button[data-v33-cookie-open]:focus-visible {
  color:#fff!important;
  background-color:transparent!important;
  outline:1px solid #829e8d!important;
  outline-offset:5px!important;
}
.v33-cookie *::selection,
.v30-footer__bottom>nav>button[data-v33-cookie-open]::selection { color:#fff!important; background:#6f8f7c!important; }
@media (max-width:767px) {
  .v30-footer__bottom>nav>button[data-v33-cookie-open],
  .v30-footer__bottom>nav>button[data-v33-cookie-open]:focus,
  .v30-footer__bottom>nav>button[data-v33-cookie-open]:active { font-size:.62rem!important; }
}

/* External-content consent action v35 */
.v33-map-consent button[data-v33-map-open],
.v33-map-consent button[data-v33-map-open]:focus,
.v33-map-consent button[data-v33-map-open]:active {
  -webkit-appearance:none!important;
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:148px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0 18px!important;
  border:1px solid #0a3d29!important;
  border-radius:11px!important;
  color:#fff!important;
  background:#0a3d29!important;
  box-shadow:none!important;
  font:760 .63rem/1 var(--by3-sans)!important;
  text-decoration:none!important;
  text-shadow:none!important;
  text-transform:none!important;
  white-space:nowrap!important;
  transform:none!important;
}
.v33-map-consent button[data-v33-map-open]:hover,
.v33-map-consent button[data-v33-map-open]:focus-visible {
  border-color:#14583d!important;
  color:#fff!important;
  background:#14583d!important;
}
.v33-map-consent button[data-v33-map-open]:focus-visible {
  outline:2px solid #829e8d!important;
  outline-offset:3px!important;
}
.v33-map-consent button[data-v33-map-open]:focus:not(:focus-visible) { outline:0!important; }
