/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
html{overflow-x:hidden;}
/* Position fraction */
.custom-fraction {
    position: absolute;
    bottom: 12px;
    right: 20px;
    z-index: 9;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
}

/* Adjust dots if overlapping */
.swiper-pagination-bullets {
  bottom: 32px !important;
  width: 90px !important;
}
:root{
  --w:#FFFFFF; --off:#F8F8F6; --off2:#F2F1EE; --off3:#E8E6E1;
  --g:#2C2820; --g2:#2C2820; --g3:#2C2820; --gl:#2C2820;
  --sage:#8A8070; --sagel:#C4B49A;
  --gold:#C4973A; --goldl:#D9B060; --goldp:#F5EDD8;
  --ch:#1A1A18; --ch2:#2D2D2A; --mid:#6B6960; --lt:#A8A69E;
  --serif:"DM Serif Display",serif; --sans:"DM Sans",sans-serif;
  --s1:0 1px 3px rgba(26,26,24,.06),0 4px 14px rgba(26,26,24,.08);
  --s2:0 8px 32px rgba(26,26,24,.12);
  --s3:0 20px 60px rgba(26,26,24,.18);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);background:var(--w);color:var(--ch);overflow-x:hidden;}
a{text-decoration:none;color:inherit;}
button{font-family:var(--sans);cursor:pointer;border:none;}
img{display:block;width:100%;height:100%;object-fit:cover;}

/* PATTERNS */
.pat-grid{background-color:var(--w);background-image:linear-gradient(rgba(44,40,32,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(44,40,32,.05) 1px,transparent 1px);background-size:48px 48px;}
.pat-dots{background-color:var(--off);background-image:radial-gradient(rgba(44,40,32,.12) 1px,transparent 1px);background-size:24px 24px;}
.pat-rules{background-color:var(--w);background-image:repeating-linear-gradient(0deg,transparent,transparent 71px,rgba(44,40,32,.06) 72px);}
.pat-green{background-color:var(--g);background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:28px 28px;}

/* NAV */
#nav{z-index:9000;height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:rgba(255,255,255,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--off3);}
.logo{display:flex;align-items:center;gap:13px;cursor:pointer;}
.logo-mark{width:40px;height:40px;background:var(--g);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:17px;color:var(--w);position:relative;}
.logo-mark a{color:var(--w);}
.logo-mark::after{content:"";position:absolute;inset:3px;border:1px solid rgba(196,151,58,.5);}
.logo-name{font-family:var(--serif);font-size:19px; line-height:21px; letter-spacing:.5px;color:var(--ch);}
.logo-sub a{font-size:7px; line-height:9px; font-weight:500;letter-spacing:5px;text-transform:uppercase;color:var(--sage);display:block;}
.nav-ul{display:flex;align-items:center;gap:28px;list-style:none;}
.nav-ul a{font-size:10px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--mid);transition:color .2s;cursor:pointer;}
.nav-ul a:hover,.nav-ul a.active{color:var(--g);}
.elementor-nav-menu{align-items:center;}
.ncta a{background: var(--g) !important;color: var(--w) !important;padding: 10px 22px !important;letter-spacing: 1.5px !important;height: 32px;font-size: 10px;line-height: 12px;text-transform: uppercase;font-weight: 500 !important;transition: color .2s !important;}
.ncta a:hover{background:var(--gold)!important;}
.ham{display:none;flex-direction:column;gap:5px;cursor:pointer;}
.ham span{width:22px;height:1.5px;background:var(--ch);}

/* PAGES */
.pg{display:none;min-height:100vh;padding-top:70px;}
.pg.on{display:block;}

/* TYPE */
.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:9px !important; line-height:11px !important; text-align:left !important; font-weight:600;letter-spacing:5px;text-transform:uppercase;color:var(--g3);}
.eyebrow .elementor-heading-title{line-height:12px !important;}
.eyebrow::before{content:"";width:22px;height:1.5px;background:var(--gold);flex-shrink:0;}
.d1 .elementor-heading-title{font-family:var(--serif);font-size:clamp(50px,8vw,98px);font-weight:400;line-height:.96;color:var(--ch);}
.d2 .elementor-heading-title{font-family:var(--serif);font-size:clamp(34px,4.5vw,60px);font-weight:400;line-height:1.06;color:var(--ch);}
.d3 .elementor-heading-title{font-family:var(--serif);font-size:clamp(22px,2.6vw,32px);font-weight:400;color:var(--ch);}
.it{font-style:italic;color:var(--g3);}
.git{font-style:italic;color:var(--gold);}
.body{font-size:14px;font-weight:300;line-height:1.95;color:var(--mid);}

/* BUTTONS */
.btn{display:inline-block;padding:14px 34px;font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;transition:all .25s;}
.bg{background:var(--g);color:var(--w);}
.bg:hover{background:var(--g2);transform:translateY(-2px);box-shadow:var(--s2);}
.bog{background:transparent;color:var(--g);border:1.5px solid var(--g);}
.bog:hover{background:var(--g);color:var(--w);}
.bod{background:transparent;color:var(--ch);border:1.5px solid rgba(26,26,24,.25);}
.bod:hover{border-color:var(--g);color:var(--g);}
.bw{background:var(--w);color:var(--g);}
.bw:hover{background:var(--off);}
.bgold{background:var(--gold);color:var(--w);}
.bgold:hover{background:var(--goldl);}

/* CTA BANNER */

.cta-in .eyebrow{justify-content:center;margin-bottom:14px;color:var(--sagel);}
.cta-in .eyebrow::before{background:var(--gold);}
.cta-h h2{font-family:var(--serif);font-size:clamp(32px,5vw,58px);color:var(--w);line-height:1.06;margin-bottom:14px;}
.cta-p{font-size:15px;font-weight:300;color:rgba(255,255,255,.65);max-width:460px;margin:0 auto 36px;line-height:1.9;}

/* WA FLOAT */
.wa{position:fixed;bottom:28px;right:28px;z-index:8000;width:54px;height:54px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,.45);transition:.3s;}
.wa:hover{transform:scale(1.1);}
.wa svg{width:25px;height:25px;fill:#fff;}

/* HERO */
.hero-l {position: relative;z-index: 2;display: flex;flex-direction: column;justify-content: center;padding: 0 6% 0 8%;background: var(--w);}
.hero-l::after{content:"";position:absolute;right:0;top:15%;bottom:15%;width:1px;background:linear-gradient(to bottom,transparent,var(--gold) 30%,var(--gold) 70%,transparent);opacity:.4;}
.h-ey{animation:fu .7s .2s forwards;}
.h-ti{animation:fu .8s .4s forwards;margin:20px 0 22px;}
.h-su{animation:fu .7s .6s forwards;font-size:15px;font-weight:300;color:var(--mid);line-height:1.9;max-width:420px;margin-bottom:38px;}
.h-bt{animation:fu .7s .8s forwards;display:flex;gap:12px;flex-wrap:wrap;}
.h-st{animation:fu .7s 1s forwards;display:flex;gap:26px;margin-top:44px;padding-top:32px;border-top:1px solid var(--off3);}
.hs{flex:0 0 100%;position:relative;}
.hs img{width:100%;height:100%;object-fit:cover;transition:transform 7s;}
.hs.cur img{transform:scale(1.04);}
.hs::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(44,40,32,.3),transparent 55%);}
.custom-fraction{position:absolute;bottom:28px;right:24px;z-index:3;font-family:var(--serif);font-size:13px;color:var(--w);background:rgba(44,40,32,.6);backdrop-filter:blur(8px);padding:7px 13px;}

.swiper-paginatio{position:absolute;bottom:32px;left:24px;z-index:3;display:flex; gap:8px; width:95px;}
.swiper-pagination-bullet{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.8);cursor:pointer;transition:.3s; opacity:1;}
.swiper-pagination-bullet.swiper-pagination-bullet-active{background:var(--gold);width:20px;border-radius:3px;}
.sn{font-family:var(--serif);font-size:30px;color:var(--g);line-height:1;}
.sl{font-size:8.5px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--lt);margin-top:4px;}

/* MARQUEE */
.marquee{overflow:hidden;border-top:1px solid var(--off3);border-bottom:1px solid var(--off3);background:var(--off);padding:13px 0;}
.mq{display:flex;white-space:nowrap;animation:mqs 28s linear infinite;}
.mq-i{display:inline-flex;align-items:center;gap:16px;padding:0 32px;font-size:9px;font-weight:600;letter-spacing:4px;text-transform:uppercase;color:var(--mid);}
.mq-d{color:var(--gold);}

/* ABOUT PREVIEW */

.ap-img{height:100%;}
.ap-img .elementor-widget-image{position:relative;overflow:hidden; height:100%;}
.ap-img .elementor-widget-image img{width:100%;height:100%;object-fit:cover;transition:transform 9s;}
.ap-img .elementor-widget-image:hover img{transform:scale(1.04);}
.ap-img .elementor-widget-image::before{content:"";position:absolute;top:20px;left:20px;right:20px;bottom:20px;border:1px solid rgba(196,151,58,.35);z-index:1;pointer-events:none;}
.ap-badge{position:absolute;top:30px;left:30px;z-index:2;background:var(--g);padding:10px 16px;font-size:8.5px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--w);}
.ap-body{padding:80px 64px;display:flex;flex-direction:column;justify-content:center;}
.ap-body .eyebrow{margin-bottom:20px;}
.ap-pills{margin:20px 0 32px;display:flex;flex-direction:column;gap:12px;}
.ap-pill{display:flex;align-items:center;gap:12px;font-size:11.5px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--ch2);}
.ap-tick{width:16px;height:16px;border:1.5px solid var(--g);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.ap-tick::after{content:"";width:6px;height:6px;background:var(--g);border-radius:50%;}

/* SERVICE CARDS */
.svc-t{background:var(--w);}
.svc-t .eyebrow{margin-bottom:16px;}
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px;}
.svc-c{position:relative;overflow:hidden;cursor:pointer;box-shadow:var(--s1);transition:box-shadow .3s,transform .3s;}
.svc-c:hover{box-shadow:var(--s3);transform:translateY(-5px);}
.svc-c::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--g);transform:scaleX(0);transition:transform .3s;transform-origin:left;z-index:2;}
.svc-c:hover::before{transform:scaleX(1);}
.svc-img{height:290px;overflow:hidden;}
.svc-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s;}
.svc-c:hover .svc-img img{transform:scale(1.07);}
.svc-body{padding:20px 18px 24px;background:var(--w);}
.svc-num{font-family:var(--serif);font-size:13px; line-height:15px; font-style:italic;color:var(--gold);margin-bottom:6px;}
.svc-title{font-family:var(--serif);font-size:21px; line-height:23px; color:var(--ch);margin-bottom:7px;}
.svc-desc{font-size:12.5px;font-weight:300;color:var(--mid);line-height:1.75;}
.svc-arr{display:inline-flex;align-items:center;gap:6px;margin-top:11px;font-size:9px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--g);opacity:0;transform:translateX(-6px);transition:.3s;}
.svc-c:hover .svc-arr{opacity:1;transform:none;}

/* PORT MASONRY HOME */
.pm-grid{margin-top:18px;}
.pm{position:relative;overflow:hidden;cursor:pointer;}
.pm img{width:100%;height:100%;object-fit:cover;transition:transform .7s;}
.pm:hover img{transform:scale(1.06);}
.pm-cap{position:absolute;inset:0;background:rgba(44,40,32,0);display:flex;align-items:flex-end;padding:20px;transition:.4s;}
.pm:hover .pm-cap{background:rgba(44,40,32,.78);}
.pm-info{opacity:0;transform:translateY(8px);transition:.35s; position:absolute; left:20px; bottom:15px;}
.pm:hover .pm-info{opacity:1;transform:none;}
.pm-cat a{font-size:8px;font-weight:600;letter-spacing:4px;text-transform:uppercase;color:var(--sagel);margin-bottom:4px;}
.pm-name{font-family:var(--serif);font-size:20px;color:var(--w);}

.pm-grid .elementor-posts-masonry{grid-template-columns: repeat(12,1fr);}
.pm-grid .e-loop-item{margin-top:0 !important;}
.pm-grid .e-loop-item:nth-child(2){grid-column:1/6;grid-row:1/3;height:685px;}
.pm-grid .e-loop-item:nth-child(2) img{height:685px;}
.pm-grid .e-loop-item:nth-child(3){grid-column:6/10; height:340px;}
.pm-grid .e-loop-item:nth-child(3) img, .pm-grid .e-loop-item:nth-child(4) img, .pm-grid .e-loop-item:nth-child(5) img, .pm-grid .e-loop-item:nth-child(6) img{height:340px;}
.pm-grid .e-loop-item:nth-child(4){grid-column:10/13;height:340px;}
.pm-grid .e-loop-item:nth-child(5){grid-column:6/9;height:340px}
.pm-grid .e-loop-item:nth-child(6){grid-column:9/13;height:340px}


/* PROCESS */
.proc{position:relative;overflow:hidden;}
.proc::before{content:"04";position:absolute;left:0;bottom:-10px;font-family:var(--serif);font-size:280px;color:rgba(44,40,32,.04);line-height:1;pointer-events:none;font-style:italic; display:flex; align-items:end; justify-content:end;}
.proc-wrap{display:grid;grid-template-columns:repeat(4,1fr);margin-top:64px;position:relative;}
.proc-wrap:after{position: absolute;content:""; top: 26px;left: 12.5%;right: 12.5%;height: 1px;background: linear-gradient(90deg,transparent,var(--off3) 10%,var(--off3) 90%,transparent);}
.proc-spine{position:absolute;top:26px;left:12.5%;right:12.5%;height:1px;background:linear-gradient(90deg,transparent,var(--off3) 10%,var(--off3) 90%,transparent);}
.proc-step{text-align:center;padding:0 20px;}
.proc-num{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--g);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;position:relative;z-index:1;background:var(--w);transition:.3s;}
.proc-step:hover .proc-num{background:var(--g);}
.proc-n{font-family:var(--serif);font-size:18px;font-style:italic;color:var(--g);transition:color .3s;}
.proc-step:hover .proc-n{color:var(--w);}
.proc-title{font-family:var(--serif);font-size:21px;color:var(--ch);margin-bottom:9px;}
.proc-desc{font-size:12.5px;font-weight:300;color:var(--mid);line-height:1.85;}

/* TESTIMONIALS */
.testi{position:relative;}
.testi::before{content:"\201C";position:absolute;top:-20px;left:90%;font-family:var(--serif);font-size:300px;color:rgba(44,40,32,.05);line-height:1;pointer-events:none;}
.tq{font-family:var(--serif);font-size:17px;font-style:italic;color:var(--ch2);line-height:1.8;margin-bottom:20px;}
.tn{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--g);}
.tc{font-size:11px;color:var(--lt);margin-top:4px;}


/* PAGE HERO */
.pgh{position:relative;height:50vh;overflow:hidden;}
.pgh::before{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(44,40,32,.5),rgba(44,40,32,.1));}
.pgh-body{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:0 8% 60px;}
.pgh-body::before{content:"";position:absolute;left:8%;top:calc(100% - 120px);width:36px;height:1.5px;background:var(--gold); z-index:1;}

/* SERVICES PAGE */
.svc-row{display:grid;grid-template-columns:1fr 1fr;min-height:540px;border-bottom:1px solid var(--off3);}
.svc-row:nth-child(even){direction:rtl;}
.svc-row:nth-child(even)>*{direction:ltr;}
.svc-ri{position:relative;overflow:hidden; height:100%;}
.svc-ri img{width:100%;height:100%;object-fit:cover;transition:transform .7s;}
.svc-row:hover .svc-ri img{transform:scale(1.04);}
.svc-ri::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--g);z-index:1;}
.svc-rb{padding:70px 60px;display:flex;flex-direction:column;justify-content:center;background:var(--w);}
.svc-bn .elementor-heading-title{font-family:var(--serif);font-size:96px;font-weight:400;font-style:italic;color:rgba(44,40,32,.06);line-height:1;}
.svc-bt .elementor-heading-title{font-family:var(--serif);font-size:38px;color:var(--ch);}
.svc-tags{display:flex;flex-wrap:wrap;gap:8px;}
.svc-tag{font-size:8.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--g3);border:1px solid rgba(44,40,32,.2);padding:5px 12px;background:rgba(44,40,32,.04);}
.pbox{background:var(--off);border-left:3px solid var(--g);padding:18px 20px; margin-top: 12px; margin-bottom:8px;}
.pl{font-size:8.5px; line-height:10px; font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--g3);margin-bottom:5px;}
.pr{font-family:var(--serif);font-size:24px; line-height:26px; color:var(--ch);}
.pn{font-size:11px; line-height:13px; color:var(--lt);margin-top:3px;}

/* WHY CARDS */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:0;}
.why-c{padding:44px 34px;background:var(--w);box-shadow:var(--s1);border-top:3px solid transparent;transition:.3s;}
.why-c:hover{border-color:var(--g);box-shadow:var(--s2);transform:translateY(-5px);}
.why-icon .elementor-heading-title{font-size:26px;margin-bottom:16px; color: var(--ch);}
.why-title .elementor-heading-title{font-family:var(--serif);font-size:24px;color:var(--ch);margin-bottom:9px;}

/* PORTFOLIO PAGE */
.pf-bar{padding:24px 8% 0;background:var(--w);display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--off3);}
.flt{background:transparent;border:1.5px solid var(--off3);color:var(--mid);padding:9px 18px;font-size:9px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;transition:.25s;}
.flt:hover,.flt.on{background:var(--g);color:var(--w);border-color:var(--g);}

.pm-grid.pf-grid{margin-top:0;}
.pm-grid.pf-grid{padding: 3px 8% 80px;background: var(--w);gap: 4px;}
.pm-grid.pf-grid .e-loop-item{margin-top:0 !important;}
.pm-grid.pf-grid .e-loop-item:nth-child(2){grid-column:1/6;grid-row:1/3;height:685px;}
.pm-grid.pf-grid .e-loop-item:nth-child(2) img{height:685px;}
.pm-grid.pf-grid .e-loop-item:nth-child(3){grid-column:6/10; height:340px;}
.pm-grid.pf-grid .e-loop-item:nth-child(3) img, .pm-grid .e-loop-item:nth-child(4) img, .pm-grid .e-loop-item:nth-child(5) img, .pm-grid .e-loop-item:nth-child(6) img, .pm-grid .e-loop-item:nth-child(7) img, .pm-grid .e-loop-item:nth-child(8) img, .pm-grid .e-loop-item:nth-child(9) img{height:340px;}
.pm-grid.pf-grid .e-loop-item:nth-child(4){grid-column:10/13;height:340px;}
.pm-grid.pf-grid .e-loop-item:nth-child(5){grid-column:6/9;height:340px}
.pm-grid.pf-grid .e-loop-item:nth-child(6){grid-column:9/13;height:340px}
.pm-grid.pf-grid .e-loop-item:nth-child(7){grid-column:1/4;height:340px}
.pm-grid.pf-grid .e-loop-item:nth-child(8){grid-column:4/9;height:340px}
.pm-grid.pf-grid .e-loop-item:nth-child(9){grid-column:9/13;height:340px}

/* .pm-grid.pf-grid {padding:3px 8% 80px;background:var(--w);display:grid;grid-template-columns:repeat(3,1fr);gap:4px;} */
.pf{position:relative;overflow:hidden;cursor:pointer;}

/* ABOUT PAGE */
.nums{background:var(--g);position:relative;overflow:hidden;}
.nums::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:28px 28px;}
.num-c{text-align:center;padding:18px;border-right:1px solid rgba(255,255,255,.12);position:relative;z-index:1;}
.num-c:last-child{border:none;}
.num-n{font-family:var(--serif);font-size:56px;color:var(--w);line-height:1;}
.num-n em{font-style:italic;color:var(--gold);}
.num-l{font-size:8px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:7px;}

.creds{background:var(--off);}
.cred-c{background:var(--w);padding:30px 24px;box-shadow:var(--s1);text-align:center;}
.cred-ic{font-size:26px;margin-bottom:10px;}
.cred-t{font-family:var(--serif);font-size:19px;color:var(--ch);margin-bottom:5px;}
.cred-s{font-size:12px;color:var(--mid);}

/* BLOG PAGE */

.blog-grid{gap:20px;}
.blog-c{background:var(--w);overflow:hidden;cursor:pointer;transition:box-shadow .3s,transform .3s;box-shadow:var(--s1);}
.blog-c:hover{box-shadow:var(--s2);transform:translateY(-5px);}
.blog-img{height:200px;overflow:hidden;}
.blog-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.blog-c:hover .blog-img img{transform:scale(1.07);}
.blog-body{padding:22px;}
.blog-cat{font-size:8px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--g3);margin-bottom:7px;}
.blog-title h3{font-family:var(--serif);font-size:20px;color:var(--ch);margin-bottom:7px;line-height:1.3;}
.blog-date{font-size:11px;color:var(--lt);margin-bottom:12px;}
.blog-more a{font-size:9px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--g);border-bottom:1.5px solid rgba(44,40,32,.25);padding-bottom:2px;}

.faq-wrap{background:var(--off);}
.faq-cols{gap:80px;align-items:start;}
.e-n-accordion-item{border-bottom:1px solid var(--off3);padding:18px 0;cursor:pointer;}
.e-n-accordion-item-title-text{display:flex;justify-content:space-between;align-items:center;font-family:var(--serif);font-size:19px;color:var(--ch);gap:14px;}
.e-n-accordion-item-title-icon{color:var(--g);font-size:22px;flex-shrink:0;transition:.3s;}
.e-opened{transform:rotate(45deg);}
.faq-a p{font-size:13.5px;font-weight:300;color:var(--mid);line-height:1.9; overflow:hidden; margin:10px 0 0 0;}
.faq-side{background:var(--w);border:1px solid var(--off3);padding:36px 32px;box-shadow:var(--s1);margin-bottom:14px;}
.faq-nl{background:var(--goldp);border:1px solid rgba(196,151,58,.25);padding:32px 32px;}
.e-n-accordion-item-title{display:flex !important; justify-content:space-between !important;}

/* CONSULT PAGE */
.urg{background:var(--g); display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;}
.urg-t{font-family:var(--serif);font-size:20px;color:var(--w);}
.urg-s{font-size:10px;font-weight:400;color:rgba(255,255,255,.55);letter-spacing:1px;margin-top:6px;}
.con-lay{display:grid;grid-template-columns:1fr 1fr;}
.con-form{padding:70px 56px;background:var(--w);}
.con-info{padding:70px 52px;background:var(--g);position:relative;overflow:hidden;}
.con-info::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:26px 26px;}
.ci{position:relative;z-index:1;}
.fg{margin-bottom:16px;}
.fl{display:block;font-size:8.5px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--g);margin-bottom:7px;}
.fc{width:100%;background:var(--off);border:1.5px solid var(--off3);color:var(--ch);padding:11px 13px;font-family:var(--sans);font-size:13.5px;font-weight:300;outline:none;transition:border-color .25s,background .25s;-webkit-appearance:none;}
.fc:focus{border-color:var(--g);background:var(--w);}
select.fc option{background:var(--w);color:var(--ch);}
textarea.fc{min-height:100px;resize:vertical;}
.fr2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.ir{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px;}
.iic{font-size:18px;color:var(--gold);flex-shrink:0;margin-top:2px;}
.il{font-size:8px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:4px;}
.iv{font-size:13.5px;font-weight:300;color:rgba(255,255,255,.85);line-height:1.7;}
.wa-box{background:rgba(37,211,102,.08);border:1px solid rgba(37,211,102,.25);padding:20px;margin-top:8px;}
.wa-box h4{font-family:var(--serif);font-size:20px;color:#4ade80;margin-bottom:6px;}
.wa-box p{font-size:12px;color:rgba(255,255,255,.5);line-height:1.7;margin-bottom:12px;}
.btn-wa{display:inline-block;background:#25D366;color:#fff;border:none;padding:10px 20px;font-family:var(--sans);font-size:9.5px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;cursor:pointer;}
.btn-wa:hover{background:#1fb356;}
.tr{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;}
.tp{background:rgba(44,40,32,.05);border:1px solid rgba(44,40,32,.15);padding:9px 13px;display:flex;align-items:center;gap:8px;font-size:11px;color:var(--ch2);}
.nxt-box{margin-top:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:24px;}
.nxt-l{font-size:8.5px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:14px;}
.nxt .elementor-heading-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px;}
.nxt-n{width:22px;height:22px;background:var(--gold);color:var(--w);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;flex-shrink:0;}
.nxt-t{font-size:13px;color:rgba(255,255,255,.6);font-weight:300;line-height:1.6;}

/* ═══════ SINGLE BLOG PAGE ═══════ */
.blog-single{max-width:820px !important;margin:0 auto;padding:80px 5%;}
.blog-single .elementor-post-info{display:flex;align-items:center;gap:16px;margin-bottom:28px;flex-wrap:wrap;}
.blog-single .elementor-post-info li .elementor-icon-list-text a{font-size:8.5px !important;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--g3) !important;background:rgba(44,40,32,.07);border:1px solid rgba(44,40,32,.15);padding:5px 13px;}
.blog-single .elementor-post-info .elementor-icon-list-text{font-size:12px;color:var(--lt);}

.bs-hero{width:100%;height:460px;object-fit:cover;margin:32px 0;display:block;}
.bs-body h2{font-family:var(--serif);font-size:clamp(22px,2.5vw,28px);color:var(--ch);margin:36px 0 14px;line-height:1.2;}
.bs-body h3{font-family:var(--serif);font-size:clamp(18px,2vw,22px);color:var(--ch);margin:28px 0 10px;}
.bs-body p{font-size:15px;font-weight:300;line-height:2;color:var(--mid);margin-bottom:20px;}
.bs-body ul,.bs-body ol{padding-left:24px;margin-bottom:20px;}
.bs-body li{font-size:15px;font-weight:300;line-height:1.9;color:var(--mid);margin-bottom:8px;}
.bs-pull{border-left:4px solid var(--green,#2C2820);padding:20px 28px;margin:36px 0;background:var(--off);}
.bs-pull p{font-family:var(--serif);font-size:22px;font-style:italic;color:var(--ch);line-height:1.6;margin:0;}
.bs-img-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:32px 0;}
.bs-img-row img{width:100%;height:260px;object-fit:cover;display:block;}
.bs-tip{background:var(--goldp,#F5EDD8);border:1px solid rgba(196,151,58,.3);padding:24px 28px;margin:32px 0;border-radius:2px;}
.bs-tip strong{font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:8px;}
.bs-tip p{font-size:14px;font-weight:400;color:var(--ch2);margin:0;line-height:1.8;}
.bs-author{display:flex;align-items:center;gap:20px;padding:32px;background:var(--off);margin:0;border-left:3px solid var(--g);}
.bs-author-img{flex:0 0 72px;}
.bs-author-img img{width:72px;height:72px;border-radius:50%;object-fit:cover;object-position:center 20%;flex-shrink:0;}
.bs-author-name{font-family:var(--serif);font-size:20px;color:var(--ch);margin-bottom:4px; }
.bs-author-role{font-size:8.5px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--g);margin-bottom:8px;}
.bs-author-bio{font-size:13px;font-weight:300;color:var(--mid);line-height:1.8;}
.bs-related{padding:64px 8%;background:var(--off);}
.bs-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;}
.bs-back{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--g);margin-bottom:32px !important;cursor:pointer;padding:10px 0;}
.bs-back:hover{color:var(--g2);}
.bs-share{display:flex;align-items:center;gap:12px;padding:28px 0;border-top:1px solid var(--off3);border-bottom:1px solid var(--off3);margin:40px 0;}
.bs-share-lbl{font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--mid);}
.bs-share-btn{font-size:9px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--g);border:1.5px solid rgba(44,40,32,.25);padding:8px 16px;cursor:pointer;background:transparent;transition:.2s; height: 36px; border-radius: 0;}
.bs-share-btn:hover{background:var(--g);color:var(--w);}
.bs-cta-inline{background:var(--g);padding:40px;text-align:center;margin:48px 0;}
.bs-cta-inline h3{font-family:var(--serif);font-size:26px;color:var(--w);margin-bottom:10px;}
.bs-cta-inline p{font-size:13px;font-weight:300;color:rgba(255,255,255,.65);margin-bottom:22px;}

/* ═══════ SINGLE PORTFOLIO PAGE ═══════ */
.proj-hero{position:relative;height:70vh;overflow:hidden;}
.proj-hero img{width:100%;height:100%;object-fit:cover;}
.proj-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(44,40,32,.88) 0%,rgba(44,40,32,.1) 60%);}
.proj-hero-body{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:0 8% 60px;}
.proj-tags h2{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.proj-tags h2 a{font-size:8px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--sagel);border:1px solid rgba(168,197,174,.4);padding:5px 12px;}
.proj-layout{display:grid;grid-template-columns:1fr 340px !important;gap:60px;padding:64px 8%;align-items:start !important;}
.proj-main{padding:0 !important;}
.proj-sidebar{position:sticky;top:90px;}
.proj-section-title .elementor-heading-title{font-family:var(--serif);font-size:28px;color:var(--ch);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--off3);}
.proj-main p{font-size:14.5px;font-weight:300;line-height:2;color:var(--mid);margin-bottom:18px;}
.proj-gallery{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:36px 0;}
.proj-gallery-full{grid-column:span 2;height:440px;}
.proj-gallery-half{height:260px;}
.proj-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;}
.proj-gallery a:hover img{transform:scale(1.03);}
.ba-wrap{margin:40px 0;}
.ba-label{font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--g3);margin-bottom:10px;display:flex;gap:12px;align-items:center;}
.ba-label::after{content:"";flex:1;height:1px;background:var(--off3);}
.ba-imgs{display:grid;grid-template-columns:1fr 1fr;gap:4px;}
.ba-imgs img{width:100%;height:280px;object-fit:cover;display:block;}
.ba-badge{font-size:8px;font-weight:700;letter-spacing:3px;text-transform:uppercase;text-align:center;padding:6px;margin-top:2px;}
.ba-before{color:var(--lt);background:var(--off2);}
.ba-after{color:var(--g3);background:rgba(44,40,32,.07);}
.proj-detail-box{background:var(--off);padding:28px;margin-bottom:16px;}
.pdl{font-size:8.5px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--g);margin-bottom:4px;margin-top:16px;}
.pdl:first-child{margin-top:0;}
.pdv{font-size:14px;font-weight:400;color:var(--ch);}
.proj-mats{display:flex;flex-direction:column;gap:10px;margin-top:12px;}
.proj-mat{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--mid);}
.proj-mat-dot{width:12px;height:12px;border-radius:2px;flex-shrink:0;}
.proj-testi{background:var(--g);padding:32px;}
.proj-testi-q{font-family:var(--serif);font-size:17px;font-style:italic;color:rgba(255,255,255,.85);line-height:1.75;margin-bottom:16px;}
.proj-testi-n{font-size:9.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold);}
.proj-nav{padding:48px 8%;background:var(--off);gap:4px;}
.pnav-c{position:relative;overflow:hidden;cursor:pointer;height:200px;}
.pnav-c img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.pnav-c:hover img{transform:scale(1.05);}
.pnav-c::after{content:"";position:absolute;inset:0;background:rgba(44,40,32,.7);}
.pnav-body{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:center;padding:28px;}
.pnav-dir{font-size:8.5px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--sagel);margin-bottom:6px;}
.pnav-name{font-family:var(--serif);font-size:22px;color:var(--w);}
.pnav-wrapper{display: grid;grid-template-columns: 1fr 1fr;gap: 4px;}
.pnav-c.next .pnav-body{align-items: end;}
.single.single-post .d1 .elementor-heading-title{font-size:clamp(40px,5vw,70px);}

@media(max-width:1024px){
/* .elementor-heading-title br{display:none;} */
}

@media(max-width:900px){
	.proj-layout{grid-template-columns: 1fr !important;gap: 10px;padding: 50px 8%;}
	.num-c{border:none;}
 .pm-grid.pf-grid{padding:3px 8% 50px;}
  .hero-l {padding: 50px 6%;min-height: 55vh;}
  .proj-layout{grid-template-columns:1fr;}
  .proj-sidebar{position:static;}
  .proj-gallery-full{grid-column:span 1;height:260px;}
  .bs-img-row,.proj-gallery,.ba-imgs,.proj-nav,.bs-related-grid{grid-template-columns:1fr;}
.pm-grid .elementor-widget-loop-grid .elementor-grid, .pm-grid.pf-grid .elementor-grid{display:flex !important; flex-wrap:wrap !important;}
.pm-grid.pf-grid .e-loop-item:nth-child(2), .pm-grid.pf-grid .e-loop-item:nth-child(6), .pm-grid.pf-grid .e-loop-item:nth-child(7), .pm-grid.pf-grid .e-loop-item:nth-child(8), .pm-grid.pf-grid .e-loop-item:nth-child(9){flex:0 0 calc(50% - 4px); height:300px;}
.pm-grid .e-loop-item:nth-child(2){flex:0 0 100%; height: 300px !important;}
.pm-grid .e-loop-item:nth-child(3), .pm-grid .e-loop-item:nth-child(5), .pm-grid .e-loop-item:nth-child(4), .pm-grid .e-loop-item:nth-child(6){ flex:0 0 calc(50% - 4px); height: 300px !important;}
.pm-grid .e-loop-item:nth-child(2) img, .pm-grid.pf-grid .e-loop-item:nth-child(2) img, .pm-grid.pf-grid .e-loop-item:nth-child(3) img, .pm-grid .e-loop-item:nth-child(3) img, .pm-grid .e-loop-item:nth-child(4) img, .pm-grid .e-loop-item:nth-child(5) img, .pm-grid .e-loop-item:nth-child(6) img, .pm-grid .e-loop-item:nth-child(7) img, .pm-grid .e-loop-item:nth-child(8) img, .pm-grid .e-loop-item:nth-child(9) img, .pm-grid.pf-grid .e-loop-item:nth-child(2){height:300px;}
.pgh{height:40vh;}
.ap-body, .svc-rb, .why, .cta, .con-form, .con-info{padding:50px 8%;}
.faq-cols{gap:30px;}
}
@media(max-width:767px){
	.pnav-wrapper{grid-template-columns: 1fr;}
	.pnav-c{height:150px;}
}
