@view-transition{navigation:auto}::view-transition-old(root){animation:el-out .22s ease both}::view-transition-new(root){animation:el-in .35s ease both}@keyframes el-out{to{opacity:0;transform:translateY(-8px)}}@keyframes el-in{from{opacity:0;transform:translateY(12px)}}
:root{--cream:#fff8ea;--green:#123322;--red:#e0311d;--gutter:clamp(22px,5vw,88px);--ease:cubic-bezier(.16,1,.3,1)}html{scroll-behavior:smooth;scroll-padding-top:105px}body.el-body{margin:0!important;background:var(--cream)!important;color:var(--green);font:17px/1.65 Arial,Helvetica,sans-serif}body.el-body *{box-sizing:border-box}.el-site{overflow:clip;background:var(--cream);color:var(--green);width:100%;max-width:none}.el-site :where(h1,h2,h3,p,ul,figure,blockquote,dl,dd){margin:0}.el-site :where(h1,h2,h3){font-family:Georgia,'Times New Roman',serif;color:inherit;letter-spacing:-.045em;line-height:1.06;text-wrap:balance;text-transform:none}.el-site h1{font-size:clamp(42px,6.3vw,92px);font-weight:700}.el-site h2{font-size:clamp(34px,4.4vw,64px)}.el-site h3{font-size:clamp(25px,2.4vw,35px)}.el-site p{text-wrap:pretty}.el-site img{width:100%;display:block;max-width:100%;height:auto;border-radius:0}.el-site a{color:inherit;text-decoration-thickness:1px;text-underline-offset:6px}.el-site a:hover{text-decoration-thickness:2px}.el-site :where(a,button,input,select,textarea,canvas):focus-visible{outline:3px solid currentColor;outline-offset:5px}.el-site button,.el-site input,.el-site select,.el-site textarea{font:inherit}.el-site button{cursor:pointer}.el-wrap{width:100%;max-width:1560px;padding-inline:var(--gutter);margin-inline:auto}.el-space{padding-block:clamp(70px,8vw,130px)}.el-dark{background:var(--green);color:var(--cream)}.el-lead{font-size:clamp(19px,1.7vw,24px);line-height:1.5;max-width:780px;margin-top:26px!important}.el-copy p+p{margin-top:22px}.el-actions{display:flex;gap:22px 30px;flex-wrap:wrap;align-items:center;margin-top:32px}.el-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:var(--cream)!important;padding:16px 27px;min-height:56px;font-size:19px;font-weight:700;line-height:1.3;text-align:center;text-decoration:none;transition:transform .3s var(--ease),background .25s}.el-btn:hover{transform:translateY(-3px);background:var(--green);text-decoration:underline}.el-btn:active{transform:translateY(0)}.el-dark .el-btn:hover{background:var(--cream);color:var(--green)!important}.el-link{font-weight:700}.el-skip{position:fixed;top:-150px;left:20px;z-index:1000;background:var(--green);color:var(--cream)!important;padding:14px 24px}.el-skip:focus{top:15px}
/* Common navigation, shared by every page. */
.el-header{position:sticky;top:0;z-index:90;background:var(--cream);color:var(--green);transition:box-shadow .3s}.el-header-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:13px var(--gutter);max-width:1680px;margin:auto}.el-brand{display:flex;align-items:center;gap:15px;text-decoration:none;flex-shrink:0}.el-brand img{height:64px;width:58px;object-fit:contain}.el-brand span{font-family:Georgia,serif;font-weight:700;font-size:25px;letter-spacing:-.04em}.el-nav{display:flex;align-items:center;gap:clamp(18px,2.4vw,40px)}.el-nav>a{text-decoration:none;font-size:16px;font-weight:700;position:relative}.el-nav>a:not(.el-btn)::after{content:'';position:absolute;height:3px;bottom:-7px;left:0;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.el-nav>a:hover::after,.el-nav>a[aria-current=page]::after{transform:scaleX(1)}.el-nav .el-btn{font-size:19px;min-height:50px;padding:13px 20px}.el-menu-toggle{display:none;border:0;color:var(--green);background:none;font-weight:700;padding:12px}.el-progress{height:3px;background:var(--red);transform-origin:left;transform:scaleX(var(--scroll,0));position:absolute;bottom:0;left:0;width:100%;pointer-events:none}.el-header.is-scrolled{box-shadow:0 7px 25px #12332210}.el-mobile-menu[hidden]{display:none}.el-mobile-menu{padding:25px var(--gutter) 35px;background:var(--cream)}.el-mobile-menu a{display:block;text-decoration:none;font:700 30px/1.4 Georgia,serif;padding:11px 0}.el-mobile-menu .el-btn{margin-top:15px;font:700 19px Arial,sans-serif}
/* Photo-led opening with depth, visible without JavaScript. */
.el-hero{position:relative;isolation:isolate;min-height:680px;min-height:min(830px,calc(100svh - 94px));display:flex;align-items:center;overflow:hidden;background:var(--green);color:var(--cream)}.el-hero-media{position:absolute;inset:-5%;z-index:-2;will-change:transform;transform:scale(1.03);height:110%!important;width:110%!important;object-fit:cover;object-position:65% center}.el-hero::after{content:'';position:absolute;inset:0;background:#123322;opacity:.56;z-index:-1}.el-hero-copy{padding-block:90px;position:relative}.el-hero h1{max-width:950px}.el-hero .el-lead{max-width:660px}.el-hero-home h1{max-width:830px}.el-hero-home{min-height:720px}.el-hero-home .el-hero-copy{padding-top:100px;padding-bottom:100px}.el-breadcrumb{display:flex;gap:13px;flex-wrap:wrap;font-size:14px;padding-block:20px}.el-breadcrumb span{opacity:.85}.el-split{display:grid;grid-template-columns:1fr 1fr}.el-split>*{min-width:0}.el-split-copy{padding:clamp(35px,5.6vw,85px);align-self:center}.el-split-copy p{margin-top:24px}.el-split-photo{min-height:620px;height:100%!important;object-fit:cover}.el-section-head{display:flex;gap:30px;justify-content:space-between;align-items:end;flex-wrap:wrap}.el-section-head h2{max-width:900px}.el-photo{overflow:hidden}.el-photo img{transition:transform 1s var(--ease)}.el-photo:hover img{transform:scale(1.035)}
/* Different editorial rhythms: rows, a large photograph, and a feature pair. */
.el-service-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:start}.el-service-intro p{margin-top:0!important}.el-service-browser{display:grid;grid-template-columns:1.05fr .95fr;gap:6vw;margin-top:55px;align-items:center}.el-service-browser .el-photo{position:relative;aspect-ratio:1/1.1}.el-service-browser img{height:100%;object-fit:cover}.el-service-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0;text-decoration:none!important;transition:padding .4s var(--ease)}.el-service-row:hover{padding-left:18px}.el-service-row span{font:700 clamp(26px,3.3vw,48px)/1.12 Georgia,serif;letter-spacing:-.035em}.el-service-row b{font:400 28px Arial;color:var(--red);transition:transform .3s}.el-service-row:hover b{transform:translate(6px,-5px)}.el-service-row small{display:block;font:16px/1.5 Arial,sans-serif;letter-spacing:0;margin-top:10px;max-width:430px}.el-service-row+.el-service-row{margin-top:10px}.el-feature-pair{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:45px}.el-feature-pair figure:nth-child(2){padding-top:85px}.el-feature-pair .el-photo{aspect-ratio:5/4}.el-feature-pair img{height:100%;object-fit:cover}.el-feature-pair figcaption{margin-top:24px}.el-feature-pair p{margin-top:16px}.el-feature-pair a{display:inline-block;margin-top:17px}.el-local{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.el-local p+p{margin-top:22px}.el-local-town{font:700 clamp(26px,3vw,42px)/1.3 Georgia,serif;margin-bottom:22px!important}.el-faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.el-faq-items{display:grid;gap:15px}.el-site details{padding:24px 28px;background:var(--cream);color:var(--green)}.el-site summary{font-size:18px;font-weight:700;line-height:1.5;cursor:pointer}.el-site details p{margin-top:18px}.el-contact-banner h2{max-width:950px}.el-contact-banner .el-lead{max-width:770px}.el-contact-banner{position:relative;overflow:hidden}.el-contact-banner::after{content:'ETXE LURRA';position:absolute;bottom:-.3em;right:-.02em;font:700 12vw Georgia;letter-spacing:-.07em;opacity:.055;pointer-events:none}
/* Service detail, about and contact. */
.el-detail-hero{display:grid;grid-template-columns:1fr 1fr}.el-detail-hero>*{min-width:0}.el-detail-hero .el-hero-copy{padding:clamp(35px,5vw,80px);align-self:center}.el-detail-hero h1{font-size:clamp(39px,4.6vw,68px)}.el-detail-hero img{height:100%;min-height:560px;object-fit:cover}.el-detail-hero .el-lead{font-size:20px}.el-story-row{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw}.el-story-row h2{font-size:clamp(30px,3.5vw,49px)}.el-story-row p+p{margin-top:22px}.el-bullets{padding-left:22px!important}.el-bullets li+li{margin-top:14px}.el-related{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:36px}.el-related a{text-decoration:none;font:700 26px/1.25 Georgia,serif;padding:24px 0}.el-related a:hover{text-decoration:underline}.el-project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px}.el-project-gallery img{aspect-ratio:4/3;object-fit:cover}.el-project-gallery figcaption{font-size:16px;margin-top:14px}.el-service-category{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:start}.el-service-category .el-photo{position:sticky;top:125px}.el-service-category img{aspect-ratio:4/5;object-fit:cover}.el-service-category h2{margin-bottom:30px}.el-index-item{padding:24px 0}.el-index-item h3 a{text-decoration:none}.el-index-item h3 a:hover{text-decoration:underline}.el-index-item p{margin-top:14px}.el-index-item>a{display:inline-block;margin-top:12px;font-weight:700}.el-company-intro{font-size:clamp(24px,3vw,38px);line-height:1.4;max-width:1100px}.el-meaning{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:45px}.el-meaning strong{display:block;font:700 clamp(50px,8vw,120px)/1 Georgia,serif;letter-spacing:-.05em}.el-meaning p{margin-top:20px}.el-team-photo{aspect-ratio:16/8;object-fit:cover;object-position:center 58%}.el-contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.el-contact-details p+p{margin-top:24px}.el-contact-details .el-phone{display:block;font:700 clamp(30px,3vw,44px)/1.2 Georgia,serif;margin-top:35px}.el-contact-details address{font-style:normal}.el-contact-details address p+p{margin-top:20px}.el-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.el-form label{display:block;font-weight:700;font-size:16px}.el-form :where(input,select,textarea){display:block;width:100%;margin-top:9px;padding:15px 16px;background:white;border:1px solid #12332270;border-radius:0;color:var(--green);min-height:54px}.el-form textarea{min-height:180px;resize:vertical}.el-form .el-full{grid-column:1/-1}.el-form .el-form-info{font-size:14px;margin-top:20px}.el-form .el-btn{border:0;margin-top:25px}.el-form .el-trap{position:absolute;left:-9999px;visibility:hidden}.el-status{padding:22px;background:var(--green);color:var(--cream);margin-bottom:25px!important}.el-status[hidden]{display:none}.el-form input:user-invalid,.el-form textarea:user-invalid{border-color:var(--red)}
/* WebGL garden, progressively enhanced with an image fallback. */
.el-garden-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:5vw;align-items:center;margin-top:40px}.el-garden-stage{position:relative;aspect-ratio:4/3;background:#eee9db;overflow:hidden}.el-garden-stage canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y;cursor:grab}.el-garden-stage canvas:active{cursor:grabbing}.el-garden-fallback{height:100%!important;object-fit:cover}.el-garden-stage.is-ready .el-garden-fallback{visibility:hidden}.el-garden-controls p{margin-bottom:22px}.el-toggle{display:flex;align-items:center;gap:13px;font-size:19px;font-weight:700;padding:12px 0;cursor:pointer}.el-toggle input{accent-color:var(--red);width:22px;height:22px}.el-range{display:block;font-weight:700;margin-top:22px}.el-range input{display:block;width:100%;accent-color:var(--red);margin-top:15px}.el-note{font-size:14px!important;line-height:1.5;margin-top:18px!important}.el-garden-controls[hidden]{display:none}.el-controls-tip{font-size:16px;margin-top:20px!important}
.el-footer{padding:65px var(--gutter) 25px;background:var(--green);color:var(--cream)}.el-footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px;max-width:1384px;margin:auto}.el-footer h2{font:700 27px/1.2 Georgia,serif;margin-bottom:20px}.el-footer a{display:block;margin-top:10px;width:fit-content;max-width:100%;overflow-wrap:anywhere}.el-footer-wordmark{font:700 clamp(55px,13vw,200px)/1 Georgia,serif;letter-spacing:-.07em;padding-top:65px;padding-bottom:25px;text-align:center}.el-footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:14px}.el-footer-bottom a{margin:0;display:inline}.el-visuels{font-size:13px;max-width:1384px;margin:20px auto 0;opacity:.8}
@media(min-width:900px){.el-hero-copy>h1{animation:el-title 1s var(--ease) both}.el-hero-copy>.el-lead{animation:el-title 1.1s var(--ease) .1s both}.el-hero-copy>.el-actions{animation:el-title 1.2s var(--ease) .2s both}}@keyframes el-title{from{opacity:.1;transform:translateY(24px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.el-nav{gap:18px}.el-brand span{font-size:22px}.el-brand img{height:58px;width:49px}.el-nav>a{font-size:15px}.el-nav .el-btn{font-size:18px}.el-service-browser{gap:35px}.el-faq,.el-local,.el-contact-layout{grid-template-columns:1fr;gap:35px}.el-garden-layout{grid-template-columns:1fr}.el-garden-controls{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.el-garden-controls>p,.el-garden-controls>.el-actions{grid-column:1/-1}.el-story-row{gap:40px}.el-detail-hero .el-hero-copy{padding:40px 30px}}
@media(max-width:800px){.el-nav{display:none}.el-menu-toggle{display:inline-flex}.el-header-inner{min-height:82px}.el-hero-home{min-height:680px}.el-service-intro,.el-service-browser,.el-split,.el-detail-hero,.el-service-category{grid-template-columns:1fr}.el-service-browser .el-photo{aspect-ratio:4/3;order:2}.el-service-browser{margin-top:25px}.el-split-photo{min-height:0;height:460px!important}.el-split-copy{padding:55px var(--gutter)}.el-detail-hero img{min-height:0;height:350px}.el-detail-hero .el-hero-copy{padding:55px var(--gutter)}.el-service-category .el-photo{position:static}.el-service-category .el-photo img{aspect-ratio:16/9}.el-story-row{grid-template-columns:1fr}.el-related{grid-template-columns:1fr}.el-footer-top{grid-template-columns:1fr 1fr}.el-footer-top>div:first-child{grid-column:1/-1}.el-team-photo{aspect-ratio:4/3}.el-company-intro{font-size:26px}}
@media(max-width:580px){body.el-body{font-size:16px}.el-site h1{font-size:43px}.el-site h2{font-size:36px}.el-hero{min-height:620px}.el-hero-copy{padding-block:70px}.el-hero-home .el-hero-copy{padding-block:65px}.el-hero-home{min-height:660px}.el-hero-home h1{font-size:46px}.el-hero::after{opacity:.66}.el-hero-media{object-position:60% center}.el-lead{font-size:19px}.el-actions{gap:22px}.el-feature-pair,.el-project-gallery,.el-meaning{grid-template-columns:1fr;gap:42px}.el-feature-pair figure:nth-child(2){padding-top:0}.el-service-row span{font-size:29px}.el-service-row small{font-size:16px}.el-service-browser .el-photo{margin-top:20px}.el-hero .el-actions>a:not(.el-btn){display:block}.el-space{padding-block:65px}.el-garden-layout{margin-top:28px}.el-garden-stage{aspect-ratio:1/1}.el-garden-controls{grid-template-columns:1fr}.el-garden-controls>p,.el-garden-controls>.el-actions{grid-column:auto}.el-form-grid{grid-template-columns:1fr;gap:22px}.el-form .el-full{grid-column:auto}.el-detail-hero h1{font-size:40px}.el-footer{padding-top:50px}.el-footer-top{gap:35px}.el-footer-wordmark{padding-top:45px}.el-contact-details .el-phone{font-size:33px}.el-site summary{font-size:17px}.el-site details{padding:22px}.el-meaning strong{font-size:75px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.el-site *,::view-transition-old(root),::view-transition-new(root){animation:none!important;transition:none!important}.el-hero-media{will-change:auto;transform:none!important}}
.el-garden-stage{perspective:1000px}.el-css-garden{position:absolute;left:50%;top:50%;width:400px;height:300px;transform-style:preserve-3d;transform-origin:center;cursor:grab;touch-action:pan-y;z-index:2}.el-css-garden:active{cursor:grabbing}.el-solid{position:absolute;width:var(--w);height:var(--d);transform-style:preserve-3d}.el-solid[hidden]{display:none}.el-solid i{display:block;position:absolute;background:var(--col);backface-visibility:visible}.el-solid .top{width:var(--w);height:var(--d);transform:translateZ(var(--h));filter:brightness(1.04)}.el-solid .front,.el-solid .back{width:var(--w);height:var(--h);transform-origin:top;transform:translateY(var(--d)) rotateX(90deg);filter:brightness(.87)}.el-solid .back{transform:rotateX(90deg)}.el-solid .left,.el-solid .right{width:var(--h);height:var(--d);transform-origin:left;transform:rotateY(-90deg);filter:brightness(.7)}.el-solid .right{transform:translateX(var(--w)) rotateY(-90deg)}.el-css-roof{position:absolute;top:54px;width:61px;height:92px;background:#e0311d;transform-origin:left;backface-visibility:visible}.el-css-roof.a{left:243px;transform:translateZ(78px) rotateY(-30deg)}.el-css-roof.b{left:296px;transform:translateZ(108.5px) rotateY(30deg);background:#b92516}.el-css-gable{position:absolute;left:243px;width:106px;height:31px;background:#fff8ea;clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:top;transform:translateZ(78px) rotateX(90deg)}

.el-article-content{max-width:850px;margin:auto}.el-article-content h2{font-size:clamp(29px,3.2vw,43px);margin-top:55px;margin-bottom:23px}.el-article-content h3,.el-article-content h4{font:700 27px/1.3 Georgia,serif;margin:35px 0 18px;color:#123322}.el-article-content p,.el-article-content ul,.el-article-content ol{margin:22px 0;line-height:1.75}.el-article-content li{margin-top:10px}.el-article-content a{overflow-wrap:anywhere}.el-article-content table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse}.el-article-content td,.el-article-content th{padding:12px;border:1px solid #12332280}.el-article-title{font-size:clamp(36px,4.6vw,65px)!important;max-width:1100px}.el-blog-list{display:grid;grid-template-columns:1fr 1fr;gap:40px 60px;margin-top:40px}.el-blog-item{padding-block:15px}.el-blog-item h2{font-size:32px}.el-blog-item p{margin-top:18px}.el-blog-item a{display:inline-block;margin-top:18px}.el-pub-date{font-size:15px;display:block;margin-top:23px}@media(max-width:680px){.el-blog-list{grid-template-columns:1fr}.el-article-title{font-size:37px!important}}

/* Revision 2: full photos, quieter footer and explicit service directory. */
.el-contact-banner::after{content:none}
.el-footer{padding-top:48px}.el-footer-bottom{max-width:1384px;margin:45px auto 0;padding-top:22px;border-top:1px solid #fff8ea38}
.el-team-figure{max-width:1100px;margin-inline:auto}.el-team-photo{display:block;width:100%;height:auto!important;aspect-ratio:auto;object-fit:contain;transform:none!important}
.el-founder-photo{align-self:center;width:100%;height:auto!important;min-height:0;max-height:none;aspect-ratio:auto;object-fit:contain}
.el-company-heading h1{max-width:1150px;font-size:clamp(40px,5.5vw,78px)}.el-company-heading .el-lead{max-width:800px}.el-eyebrow{text-transform:uppercase;font-size:13px;font-weight:700;letter-spacing:.13em;margin-bottom:24px!important}.el-directory-intro{max-width:850px;margin-top:25px!important}
.el-service-direct-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;margin-top:38px}.el-service-direct{display:flex!important;justify-content:space-between;gap:18px;align-items:center;padding:23px 0;border-bottom:1px solid #12332240;text-decoration:none;font-weight:700;font-size:19px}.el-service-direct:hover{color:var(--red)}.el-service-direct>span:last-child{color:var(--red);font-size:25px}.el-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;margin-top:40px;padding-left:25px}.el-steps li::marker{color:var(--red);font-weight:700}.el-steps strong{font-size:22px}.el-steps p{margin-top:18px!important}
@media(max-width:800px){.el-service-direct-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px}.el-steps{grid-template-columns:1fr;gap:30px}.el-founder-photo{max-width:580px;justify-self:center}.el-company-heading h1 br{display:none}}
@media(max-width:520px){.el-service-direct-grid{grid-template-columns:1fr}.el-service-direct{font-size:18px}.el-footer-bottom{margin-top:30px}}

.el-site details.el-services-menu{padding:0;background:transparent;color:inherit;position:relative}.el-site .el-services-menu>summary{padding:12px 0;font:700 16px/1.5 Arial,sans-serif;list-style:none;white-space:nowrap}.el-services-menu>summary::-webkit-details-marker{display:none}.el-services-menu>summary::after{content:'⌄';margin-left:8px;color:var(--red)}.el-services-menu[open]>summary::after{content:'⌃'}.el-services-dropdown{position:absolute;top:100%;right:-180px;left:auto;width:560px;max-width:90vw;background:var(--cream);color:var(--green);box-shadow:0 14px 35px #12332226;border-top:3px solid var(--red);padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:0 25px;max-height:70svh;overflow-y:auto}.el-services-dropdown a{font:700 15px/1.4 Arial,sans-serif;padding:12px 0!important;text-decoration:none;border-bottom:1px solid #12332225}.el-services-dropdown a:hover{color:var(--red)}.el-services-dropdown .el-all-services{grid-column:1/-1;color:var(--red);font-size:17px}.el-mobile-menu{max-height:calc(100svh - 82px);overflow-y:auto}.el-mobile-menu .el-services-dropdown{position:static;width:100%;max-width:none;box-shadow:none;display:grid;grid-template-columns:1fr;padding:5px 16px 15px;border-top:0}.el-mobile-menu .el-services-menu>summary{font-size:22px;padding:14px 0}.el-mobile-menu .el-services-dropdown a{font-size:16px}.el-services-menu>summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}@media(min-width:801px) and (max-width:1080px){.el-services-dropdown{left:-150px;width:510px}}
