/* DesigningAxis core.min.css | scroll-margin in core | 2026-05-30 */
@font-face{

 font-family:'Playfair Display';
font-style:normal;
font-weight:400 600;
font-display:swap;
src:url('/fonts/PlayfairDisplay-normal.woff2') format('woff2');
unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,
 U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,
 U+2215,U+FEFF,U+FFFD;
}

@font-face{

 font-family:'Playfair Display';
font-style:italic;
font-weight:400 600;
font-display:swap;
src:url('/fonts/PlayfairDisplay-italic.woff2') format('woff2');
unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,
 U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,
 U+2215,U+FEFF,U+FFFD;
}

@font-face{

 font-family:'Jost';
font-style:normal;
font-weight:300 500;
font-display:swap;
src:url('/fonts/Jost-normal.woff2') format('woff2');
unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,
 U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,
 U+2215,U+FEFF,U+FFFD;
}

:root{

 --gold:#C9A96E;
--gold-lt:#E8D5B0;
--gold-dk:#A07940;
--cream:#FAF7F2;
--cream-dk:#F2EDE4;
--dark:#1A1610;
--dark-2:#2C2419;
--text:#3D3226;
--muted:#8A7A65;
--border:#E5DDD0;
--white:#FFFFFF;
--serif:'Playfair Display',Georgia,'Times New Roman',serif;
--sans:'Jost','Segoe UI',Arial,sans-serif;
--section-pad:6rem;
--container:1200px;
--ease:cubic-bezier(0.4,0,0.2,1);
--dur:0.3s;
--dur-fast:0.15s;
--dur-slow:0.5s;
}

@media (max-width:768px){

:root{

 --section-pad:4rem;
}

}

*,*::before,*::after{
margin:0;padding:0;box-sizing:border-box}

html{
scroll-behavior:smooth;font-size:16px}

body{
-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}

img{
max-width:100%;height:auto;display:block}

a{
text-decoration:none;color:inherit}

ul,ol{
list-style:none}

button{
border:none;background:none;cursor:pointer;font-family:inherit}

input,textarea,select{
font-family:inherit;font-size:inherit}

body{

 font-family:var(--sans);
color:var(--text);
background:var(--cream);
font-size:1rem;
line-height:1.7;
font-weight:400;
}

.label{

 font-size:0.7rem;
letter-spacing:0.25em;
text-transform:uppercase;
color:var(--gold);
margin-bottom:1rem;
font-weight:400;
display:block;
}

.section-title{

 font-family:var(--serif);
font-size:clamp(1.8rem,3.5vw,2.8rem);
font-weight:400;
color:var(--dark);
line-height:1.2;
margin-bottom:1.5rem;
}

.section-title em{

 color:var(--gold);
font-style:italic;
}

.section-sub{

 color:var(--muted);
line-height:1.8;
font-weight:300;
font-size:0.95rem;
max-width:520px;
}

.gold-line{

 width:48px;
height:2px;
background:var(--gold);
margin:1.5rem 0;
}

h1,h2,h3,h4{

 font-family:var(--serif);
font-weight:400;
line-height:1.2;
}

p{
line-height:1.8;}

.container{

 max-width:var(--container);
margin:0 auto;
padding:0 5%;
}

.section-pad{

 padding:var(--section-pad) 5%;
max-width:var(--container);
margin:0 auto;
}

.btn-primary{

 display:inline-block;
touch-action:manipulation;
background:var(--gold);
color:var(--dark);
font-family:var(--sans);
font-size:0.8rem;
font-weight:500;
letter-spacing:0.12em;
text-transform:uppercase;
padding:0.9rem 2rem;
transition:background var(--dur) var(--ease);
}

.btn-primary:hover{
background:var(--gold-lt);}

.btn-outline{

 display:inline-block;
touch-action:manipulation;
background:transparent;
color:var(--white);
font-family:var(--sans);
font-size:0.8rem;
font-weight:400;
letter-spacing:0.12em;
text-transform:uppercase;
padding:0.9rem 2rem;
border:1px solid rgba(255,255,255,0.3);
transition:all var(--dur) var(--ease);
}

.btn-outline:hover{
border-color:var(--gold); color:var(--gold);}

.form-group{
margin-bottom:1.25rem;}

.form-group label{

 display:block;
font-size:0.72rem;
letter-spacing:0.15em;
text-transform:uppercase;
color:var(--muted);
margin-bottom:0.5rem;
font-weight:400;
}

.form-group input,
.form-group select,
.form-group textarea{

 width:100%;
background:var(--cream);
border:1px solid var(--border);
padding:0.875rem 1rem;
font-size:0.9rem;
color:var(--dark);
outline:none;
transition:border-color var(--dur);
resize:none;
font-weight:300;
appearance:none;
-webkit-appearance:none;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
border-color:var(--gold);}

.form-row{

 display:grid;
grid-template-columns:1fr 1fr;
gap:1rem;
}

.submit-btn{

 width:100%;
touch-action:manipulation;
background:var(--dark);
color:var(--gold-lt);
font-family:var(--sans);
font-size:0.8rem;
letter-spacing:0.15em;
text-transform:uppercase;
padding:1rem;
font-weight:500;
transition:background var(--dur);
margin-top:0.5rem;
cursor:pointer;
}

.submit-btn:hover{
background:var(--gold); color:var(--dark);}

.form-note{

 font-size:0.75rem;
color:var(--muted);
margin-top:0.75rem;
font-weight:300;
text-align:center;
}

section[id],
div[id]{

 scroll-margin-top:80px;
}

.nav{

 position:fixed; top:0; left:0; right:0; z-index:1000;
display:flex; align-items:center; justify-content:space-between;
padding:1.2rem 5%;
background:rgba(250,247,242,0.96);
border-bottom:1px solid var(--border);
backdrop-filter:blur(8px);
-webkit-backdrop-filter:blur(8px);
transition:padding var(--dur),box-shadow var(--dur);
}

.nav.scrolled{

 padding:0.8rem 5%;
box-shadow:0 2px 20px rgba(0,0,0,0.06);
}

.nav-logo{

 font-family:var(--serif);
font-size:1.2rem;
font-weight:500;
color:var(--dark);
letter-spacing:0.02em;
line-height:1.2;
}

.nav-logo span{

 display:block;
font-size:0.68rem;
font-family:var(--sans);
font-weight:300;
color:var(--gold);
letter-spacing:0.2em;
text-transform:uppercase;
margin-top:2px;
}

.nav-links{

 display:flex;
gap:2rem;
}

.nav-links a{

 font-size:0.78rem;
letter-spacing:0.1em;
text-transform:uppercase;
color:var(--muted);
font-weight:400;
transition:color var(--dur);
position:relative;
}

.nav-links a::after{

 content:'';
position:absolute;
bottom:-3px; left:0;
width:0; height:1px;
background:var(--gold);
transition:width var(--dur);
}

.nav-links a:hover{
color:var(--gold);}

.nav-links a:hover::after{
width:100%;}

.nav-cta{

 background:var(--dark);
touch-action:manipulation;
color:var(--gold-lt);
font-family:var(--sans);
font-size:0.75rem;
letter-spacing:0.12em;
text-transform:uppercase;
padding:0.65rem 1.4rem;
font-weight:500;
transition:background var(--dur);
}

.nav-cta:hover{
background:var(--gold); color:var(--dark);}

.hamburger{

 display:none;
flex-direction:column;
gap:5px;
padding:6px;
cursor:pointer;
}

.hamburger span{

 display:block;
width:24px; height:1.5px;
background:var(--dark);
transition:all var(--dur);
}

.stat-card{

 background:rgba(255,255,255,0.04);
border:1px solid rgba(201,169,110,0.2);
padding:1.25rem 1.5rem;
text-align:center;
min-width:110px;
}

.stat-num{

 font-family:var(--serif);
font-size:2rem;
color:var(--gold);
font-weight:500;
line-height:1;
}

.stat-lbl{

 font-size:0.68rem;
letter-spacing:0.12em;
text-transform:uppercase;
color:rgba(255,255,255,0.45);
margin-top:0.4rem;
font-weight:300;
}

.service-card{

 background:var(--white);
padding:2.5rem;
transition:background var(--dur);
cursor:default;
position:relative;
overflow:hidden;
}

.service-card::before{

 content:'';
position:absolute;
top:0; left:0;
width:3px; height:0;
background:var(--gold);
transition:height 0.4s;
}

.service-card:hover::before{
height:100%;}

.service-card:hover{
background:var(--cream);}

.service-num{

 font-size:0.68rem;
letter-spacing:0.2em;
color:var(--gold);
margin-bottom:0.75rem;
font-weight:400;
}

.service-name{

 font-family:var(--serif);
font-size:1.2rem;
color:var(--dark);
margin-bottom:0.75rem;
font-weight:500;
}

.service-desc{

 font-size:0.875rem;
color:var(--muted);
line-height:1.7;
font-weight:300;
}

.service-tag{

 display:inline-block;
margin-top:1rem;
font-size:0.68rem;
letter-spacing:0.1em;
text-transform:uppercase;
color:var(--gold);
border-bottom:1px solid var(--gold-lt);
padding-bottom:2px;
}

.pillar{

 padding:1.25rem;
border:1px solid var(--border);
background:var(--white);
}

.pillar-icon{
font-size:1.1rem; margin-bottom:0.5rem; color:var(--gold);}

.pillar-title{

 font-family:var(--serif);
font-size:0.95rem;
color:var(--dark);
margin-bottom:0.25rem;
}

.pillar-desc{
font-size:0.8rem; color:var(--muted); line-height:1.6; font-weight:300;}

.why-card{

 background:var(--dark);
padding:2.5rem 2rem;
border-top:2px solid transparent;
transition:border-color var(--dur);
}

.why-card:hover{
border-color:var(--gold);}

.why-num{

 font-family:var(--serif);
font-size:2.5rem;
color:rgba(201,169,110,0.12);
line-height:1;
margin-bottom:1rem;
}

.why-title{

 font-family:var(--serif);
font-size:1.05rem;
color:var(--white);
margin-bottom:0.75rem;
font-weight:400;
}

.why-desc{
font-size:0.85rem; color:rgba(255,255,255,0.45); line-height:1.7; font-weight:300;}

.testi-card{

 background:var(--dark);
padding:2.5rem;
}

.testi-stars{
color:var(--gold); font-size:0.85rem; letter-spacing:0.15em; margin-bottom:1.5rem;}

.testi-text{

 font-family:var(--serif);
font-size:1rem;
color:rgba(255,255,255,0.8);
line-height:1.8;
font-style:italic;
margin-bottom:2rem;
}

.testi-author{
display:flex; align-items:center; gap:0.75rem;}

.testi-avatar{

 width:42px; height:42px; border-radius:50%;
background:var(--gold);
display:flex; align-items:center; justify-content:center;
font-size:0.82rem; color:var(--dark); font-weight:500; flex-shrink:0;
}

.testi-name{
font-size:0.85rem; color:var(--white); font-weight:500;}

.testi-loc{
font-size:0.75rem; color:rgba(255,255,255,0.4); margin-top:0.15rem; font-weight:300;}

.faq-item{

 border-bottom:1px solid var(--border);
}

.faq-q{

 width:100%;
text-align:left;
display:flex;
justify-content:space-between;
align-items:flex-start;
padding:1.5rem 0;
font-family:var(--serif);
font-size:1rem;
color:var(--dark);
font-weight:500;
cursor:pointer;
gap:1rem;
background:none;
border:none;
}

.faq-icon{

 color:var(--gold);
font-family:var(--sans);
font-size:1.4rem;
font-weight:300;
flex-shrink:0;
transition:transform var(--dur);
line-height:1;
}

.faq-q[aria-expanded="true"] .faq-icon{
transform:rotate(45deg);}

.faq-a{

 display:none;
padding-bottom:1.5rem;
}

.faq-a p{
font-size:0.9rem; color:var(--muted); line-height:1.7; font-weight:300;}

.faq-item.open .faq-a{
display:block;}

.contact-item{

 display:flex;
gap:1.25rem;
margin-bottom:2rem;
align-items:flex-start;
}

.contact-icon{

 width:44px; height:44px;
border:1px solid var(--border);
display:flex; align-items:center; justify-content:center;
font-size:1rem; flex-shrink:0;
}

.contact-label{

 font-size:0.68rem;
letter-spacing:0.15em;
text-transform:uppercase;
color:var(--gold);
margin-bottom:0.25rem;
}

.contact-val{
font-size:0.9rem; color:var(--dark); font-weight:400;}

.contact-sub{
font-size:0.78rem; color:var(--muted); font-weight:300; margin-top:0.15rem;}

.social-links{
display:flex; gap:1.5rem; margin-top:2rem;}

.social-link{

 font-size:0.75rem;
letter-spacing:0.12em;
text-transform:uppercase;
color:var(--muted);
font-weight:400;
transition:color var(--dur);
border-bottom:1px solid var(--border);
padding-bottom:2px;
}

.social-link:hover{
color:var(--gold); border-color:var(--gold);}

.portfolio-item{

 position:relative;
overflow:hidden;
cursor:pointer;
background:var(--cream-dk);
aspect-ratio:4/3;
display:flex; align-items:flex-end;
}

.portfolio-item img{

 position:absolute; inset:0;
width:100%; height:100%;
object-fit:cover;
transition:transform 0.6s var(--ease);
}

.portfolio-item:hover img{
transform:scale(1.05);}

.portfolio-overlay{

 position:absolute; inset:0;
background:linear-gradient(0deg,rgba(26,22,16,0.75) 0%,transparent 55%);
opacity:0;
transition:opacity var(--dur);
display:flex; align-items:flex-end;
}

.portfolio-item:hover .portfolio-overlay{
opacity:1;}

.portfolio-info{

 padding:1.5rem;
transform:translateY(8px);
transition:transform var(--dur);
}

.portfolio-item:hover .portfolio-info{
transform:translateY(0);}

.portfolio-cat{
font-size:0.68rem; letter-spacing:0.15em; text-transform:uppercase; color:var(--gold);}

.portfolio-title{
font-family:var(--serif); font-size:1rem; color:var(--white); margin-top:0.25rem;}

.portfolio-placeholder{

 position:absolute; inset:0;
display:flex; align-items:center; justify-content:center;
font-size:3rem; opacity:0.12;
pointer-events:none;
}

.compass-grid{

 display:grid;
grid-template-columns:1fr 1fr 1fr;
grid-template-rows:auto auto auto;
gap:1.5px;
background:var(--border);
}

.vastu-zone{

 background:var(--white);
padding:1.25rem 1rem;
text-align:center;
}

.vastu-zone.center{

 background:var(--dark);
display:flex; flex-direction:column;
align-items:center; justify-content:center;
}

.vastu-zone.center .zone-name{
font-family:var(--serif); font-size:0.95rem; color:var(--gold);}

.vastu-zone.center .zone-desc{
font-size:0.72rem; color:rgba(255,255,255,0.45); margin-top:0.25rem;}

.zone-dir{
font-size:0.62rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold); margin-bottom:0.35rem;}

.zone-name{
font-family:var(--serif); font-size:0.9rem; color:var(--dark); margin-bottom:0.3rem; font-weight:500;}

.zone-desc{
font-size:0.72rem; color:var(--muted); line-height:1.5; font-weight:300;}

.footer{
background:var(--dark); padding:4rem 5% 2rem;}

.footer-top{

 display:grid;
grid-template-columns:1.5fr 1fr 1fr 1fr;
gap:3rem;
padding-bottom:3rem;
border-bottom:1px solid rgba(255,255,255,0.07);
max-width:var(--container);
margin:0 auto;
}

.footer-logo{

 font-family:var(--serif);
font-size:1.35rem;
color:var(--white);
margin-bottom:0.5rem;
}

.footer-logo span{

 display:block;
font-size:0.68rem;
font-family:var(--sans);
font-weight:300;
color:var(--gold);
letter-spacing:0.2em;
text-transform:uppercase;
margin-top:4px;
}

.footer-tagline{

 font-size:0.85rem;
color:rgba(255,255,255,0.35);
line-height:1.7;
margin-top:1rem;
font-weight:300;
}

.footer-address{

 font-size:0.8rem;
color:rgba(255,255,255,0.25);
line-height:1.8;
margin-top:1rem;
font-weight:300;
}

.footer-col-title{

 font-size:0.68rem;
letter-spacing:0.2em;
text-transform:uppercase;
color:var(--gold);
margin-bottom:1.5rem;
font-weight:400;
}

.footer-links li{
margin-bottom:0.75rem;}

.footer-links a{

 font-size:0.82rem;
color:rgba(255,255,255,0.38);
font-weight:300;
transition:color var(--dur);
}

.footer-links a:hover{
color:var(--gold);}

.footer-bottom{

 display:flex;
justify-content:space-between;
align-items:center;
padding-top:2rem;
max-width:var(--container);
margin:0 auto;
flex-wrap:wrap;
gap:0.5rem;
}

.footer-bottom p{
font-size:0.72rem; color:rgba(255,255,255,0.2); font-weight:300;}

.wa-float{

 position:fixed;
touch-action:manipulation;
bottom:2rem; right:2rem;
z-index:500;
width:58px; height:58px;
background:#25D366;
border-radius:50%;
display:flex; align-items:center; justify-content:center;
box-shadow:0 4px 20px rgba(37,211,102,0.35);
transition:transform var(--dur);
}

.wa-float:hover{
transform:scale(1.08);}

.back-to-top{

 position:fixed;
bottom:2rem; left:2rem;
z-index:500;
width:44px; height:44px;
background:var(--dark);
color:var(--gold);
font-size:1.2rem;
display:flex; align-items:center; justify-content:center;
opacity:0;
pointer-events:none;
transition:opacity var(--dur);
cursor:pointer;
}

.back-to-top.visible{
opacity:1; pointer-events:auto;}

.back-to-top:hover{
background:var(--gold); color:var(--dark);}

.portfolio-filter{

 display:flex;
gap:1rem;
flex-wrap:wrap;
margin:2rem 0 3rem;
}

.filter-btn{

 font-size:0.75rem;
letter-spacing:0.12em;
text-transform:uppercase;
color:var(--muted);
padding:0.5rem 1.25rem;
border:1px solid var(--border);
background:var(--white);
cursor:pointer;
transition:all var(--dur);
font-weight:400;
}

.filter-btn.active,
.filter-btn:hover{

 background:var(--dark);
color:var(--gold-lt);
border-color:var(--dark);
}

.form-success{

 background:#f0faf5;
border:1px solid #a3d9b8;
color:#2d6a4f;
padding:1rem 1.25rem;
font-size:0.9rem;
text-align:center;
margin-top:1rem;
display:none;
}

.form-success.show{
display:block;}

.google-badge{

 display:flex;
align-items:center;
justify-content:space-between;
flex-wrap:wrap;
gap:1.5rem;
background:rgba(255,255,255,0.05);
border:1px solid rgba(201,169,110,0.2);
padding:1.5rem 2rem;
margin:2rem 0 4rem;
}

.google-badge-inner{

 display:flex;
align-items:center;
gap:1.25rem;
}

.google-logo{

 width:44px; height:44px;
background:var(--white);
border-radius:50%;
display:flex; align-items:center; justify-content:center;
flex-shrink:0;
}

.google-rating-num{

 font-family:var(--serif);
font-size:2rem;
color:var(--gold);
font-weight:500;
line-height:1;
}

.google-stars{

 color:#FBBC05;
font-size:0.9rem;
letter-spacing:0.1em;
margin:0.2rem 0;
}

.google-review-count{

 font-size:0.75rem;
color:rgba(255,255,255,0.45);
letter-spacing:0.08em;
font-weight:300;
}

.google-badge-link{

 font-size:0.78rem;
letter-spacing:0.12em;
text-transform:uppercase;
color:var(--gold);
border-bottom:1px solid rgba(201,169,110,0.3);
padding-bottom:2px;
font-weight:400;
transition:border-color 0.2s;
white-space:nowrap;
}

.google-badge-link:hover{
border-color:var(--gold);}

.testi-verified{

 font-size:0.68rem;
color:rgba(255,255,255,0.25);
letter-spacing:0.1em;
margin-top:1.25rem;
font-weight:300;
}

.testi-cta{

 text-align:center;
margin-top:3rem;
}

.btn-see-all{

 display:inline-block;
background:transparent;
color:var(--gold-lt);
font-family:var(--sans);
font-size:0.8rem;
letter-spacing:0.15em;
text-transform:uppercase;
padding:0.9rem 2.5rem;
border:1px solid rgba(201,169,110,0.35);
font-weight:400;
transition:all 0.3s;
}

.btn-see-all:hover{

 background:var(--gold);
color:var(--dark);
border-color:var(--gold);
}

 .nav-dropdown{
position:relative}

 .nav-dropdown-trigger{
cursor:pointer;user-select:none}

 .nav-dropdown-menu{

 position:absolute;top:calc(100% + 1rem);left:50%;transform:translateX(-50%);
background:var(--dark);border:1px solid rgba(201,169,110,0.2);
min-width:260px;opacity:0;visibility:hidden;
transition:opacity 0.2s,transform 0.2s,visibility 0.2s;
transform:translateX(-50%) translateY(-6px);
z-index:200;box-shadow:0 20px 60px rgba(0,0,0,0.4);
}

 .nav-dropdown:hover .nav-dropdown-menu,
 .nav-dropdown.open .nav-dropdown-menu{

 opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);
}

 .nav-dd-item{

 display:flex;align-items:center;gap:1rem;padding:0.9rem 1.25rem;
text-decoration:none;border-bottom:1px solid rgba(255,255,255,0.06);
transition:background 0.2s;
}

 .nav-dd-item:last-child{
border-bottom:none}

 .nav-dd-item:hover{
background:rgba(201,169,110,0.08)}

 .nav-dd-icon{
font-size:0.9rem;color:var(--gold);width:20px;text-align:center;flex-shrink:0}

 .nav-dd-item strong{
display:block;font-size:0.8rem;color:var(--white);font-weight:500;letter-spacing:0.02em;font-family:var(--sans)}

 .nav-dd-item em{
display:block;font-size:0.68rem;color:rgba(255,255,255,0.35);font-style:normal;font-weight:300;margin-top:0.1rem;font-family:var(--sans)}

 .proof-bar{

 background:var(--cream-dk);border-bottom:1px solid var(--border);
padding:0.75rem 5%;
}

 .proof-bar-inner{

 max-width:var(--container);margin:0 auto;
display:flex;align-items:center;justify-content:center;
gap:0;flex-wrap:wrap;
}

 .proof-item{

 display:flex;align-items:center;gap:0.5rem;
padding:0 1.5rem;
border-right:1px solid var(--border);
font-size:0.75rem;color:var(--text);font-family:var(--sans);
}

 .proof-item:last-child{
border-right:none}

 .proof-item strong{
color:var(--dark);font-weight:500}

 .proof-item .proof-star{
color:#FBBC05;font-size:0.8rem}

 @media(max-width:700px){

 .proof-bar-inner{
gap:0.5rem}

 .proof-item{
border-right:none;padding:0.25rem 0.75rem;font-size:0.7rem}

}

 .guides-strip{
background:var(--dark);padding:5rem 5%}

 .guides-strip-inner{
max-width:var(--container);margin:0 auto}

 .guides-strip-hdr{
display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2.5rem;flex-wrap:wrap;gap:1rem}

 .guides-strip-hdr h2{
font-family:var(--serif);font-size:clamp(1.4rem,2.5vw,1.9rem);color:var(--white);font-weight:400;line-height:1.3}

 .guides-strip-hdr h2 em{
color:var(--gold);font-style:italic}

 .guides-strip-link{
font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(201,169,110,0.3);padding-bottom:2px;white-space:nowrap}

 .guides-strip-grid{
display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,0.06)}

 .gs-card{
background:rgba(255,255,255,0.03);text-decoration:none;display:block;border-top:2px solid transparent;transition:all 0.25s;padding:0}

 .gs-card:hover{
background:rgba(255,255,255,0.06);border-top-color:var(--gold)}

 .gs-card img{
width:100%;height:200px;object-fit:cover;display:block;filter:brightness(0.75);transition:filter 0.3s}

 .gs-card:hover img{
filter:brightness(0.9)}

 .gs-card-body{
padding:1.5rem}

 .gs-cat{
font-size:0.6rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);margin-bottom:0.5rem;display:block}

 .gs-title{
font-family:var(--serif);font-size:0.98rem;color:var(--white);font-weight:400;line-height:1.4;margin-bottom:0.4rem}

 .gs-desc{
font-size:0.78rem;color:rgba(255,255,255,0.4);font-weight:300;line-height:1.6;margin-bottom:0.75rem}

 .gs-arrow{
font-size:0.68rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--gold)}

 @media(max-width:768px){
.guides-strip-grid{
grid-template-columns:1fr}
}

 .knowledge-hub{
background:var(--cream);padding:5rem 5%}

 .knowledge-hub-inner{
max-width:var(--container);margin:0 auto}

 .kh-hdr{
margin-bottom:3rem}

 .kh-grid{
display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}

 .kh-col-title{
font-size:0.65rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);margin-bottom:1.5rem;padding-bottom:0.75rem;border-bottom:1px solid var(--border)}

 .kh-article{
padding:1rem 0;border-bottom:1px solid var(--border);text-decoration:none;display:block;transition:padding-left 0.2s}

 .kh-article:hover{
padding-left:0.5rem}

 .kh-article:last-child{
border-bottom:none}

 .kh-art-tag{
font-size:0.6rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--gold);margin-bottom:0.3rem;display:block}

 .kh-art-title{
font-family:var(--serif);font-size:0.95rem;color:var(--dark);font-weight:400;line-height:1.4;margin-bottom:0.2rem}

 .kh-art-meta{
font-size:0.72rem;color:var(--muted);font-weight:300}

 .kh-bottom{
margin-top:3rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap;padding-top:2rem;border-top:1px solid var(--border)}

 .kh-bottom p{
font-size:0.85rem;color:var(--muted);font-weight:300;flex:1;line-height:1.6}

 @media(max-width:700px){
.kh-grid{
grid-template-columns:1fr}
}

.nav-dropdown.open .nav-dropdown-menu{

 opacity:1;
visibility:visible;
transform:translateX(-50%) translateY(0);
}

@media (max-width:1024px){

 .footer-top{
grid-template-columns:1fr 1fr;}

 .footer-brand{
grid-column:1 / -1;}

 .contact-grid{
gap:3rem;}

 .about-grid{
gap:3.5rem;}

}

@media (max-width:768px){

 .nav-links,.nav-cta{
display:none;}

 .hamburger{
display:flex;}

 .nav-links.open{

 display:flex;
flex-direction:column;
position:fixed;
top:64px; left:0; right:0;
background:var(--cream);
border-top:1px solid var(--border);
padding:2rem 5%;
gap:1.5rem;
z-index:999;
box-shadow:0 8px 30px rgba(0,0,0,0.08);
}

 .nav-links.open + .nav-cta{

 display:block;
position:fixed;
bottom:0; left:0; right:0;
z-index:999;
text-align:center;
padding:1rem;
}

 .hero{
padding:7rem 5% 4rem;}

 .hero-stats{
display:none;}

 .about-grid,
 .vastu-inner,
 .contact-grid{
grid-template-columns:1fr; gap:3rem;}

 .portfolio-grid{
grid-template-columns:1fr 1fr;}

 .portfolio-item.tall{
grid-row:span 1;}

 .services-grid{
grid-template-columns:1fr;}

 .why-grid{
grid-template-columns:1fr 1fr;}

 .testi-grid{
grid-template-columns:1fr;}

 .about-accent{
display:none;}

 .about-badge{
bottom:-1rem; right:0;}

 .compass-grid{
font-size:0.8rem;}

 .zone-name{
font-size:0.78rem;}

 .zone-desc{
display:none;}

 .pillars{
grid-template-columns:1fr;}

 .form-row{
grid-template-columns:1fr;}

 .footer-top{
grid-template-columns:1fr; gap:2rem;}

 .footer-bottom{
flex-direction:column; text-align:center;}

 .services-header{
flex-direction:column;}

 .section-sub{
max-width:100%;}

 .social-links{
flex-wrap:wrap;}

}

@media (max-width:480px){

 .portfolio-grid{
grid-template-columns:1fr;}

 .why-grid{
grid-template-columns:1fr;}

 .hero-btns{
flex-direction:column;}

 .btn-primary,.btn-outline{
text-align:center;}

 .portfolio-filter{
gap:0.5rem;}

 .filter-btn{
font-size:0.7rem; padding:0.4rem 0.9rem;}

}

@media (max-width:768px){

 .label,
 .service-num,.blog-card-tag,.blog-listing-num,
 .loc-breadcrumb,.cs-breadcrumb,.blog-breadcrumb,
 .footer-col-title,.footer-bottom p,
 .sidebar-title,.loc-info-title,.cs-info-title,
 .kh-art-tag,.gs-cat,.blog-hero-tag,.cs-hero-tag{

 font-size:0.75rem;
}

 .service-desc,.blog-card-desc,.blog-listing-desc,
 .pillar-desc,.why-desc,.about-body,
 .article-body p,.cs-body p,.loc-body p,
 .faq-a p,.sidebar-cta-card p{

 font-size:0.875rem;
}

 .nav-links a{
font-size:0.875rem;}

 .filter-btn{
font-size:0.75rem;}

}

@media (max-width:768px){

 .btn-primary,
 .btn-outline,
 .submit-btn,
 .filter-btn{

 min-height:44px;
display:inline-flex;
align-items:center;
justify-content:center;
}

 .back-to-top{

 width:48px;
height:48px;
}

}

.hero{

 min-height:100vh;
display:flex;
align-items:center;
padding:8rem 5% 5rem;
position:relative;
overflow:hidden;
background:var(--dark);
}

.hero-bg{

 position:absolute; inset:0;
background:linear-gradient(135deg,#1A1610 0%,#2C2419 50%,#1A1610 100%);
}

.hero-pattern{

 position:absolute; inset:0;
background-image:
 repeating-linear-gradient(45deg,rgba(201,169,110,0.03) 0px,rgba(201,169,110,0.03) 1px,transparent 1px,transparent 40px),
 repeating-linear-gradient(-45deg,rgba(201,169,110,0.03) 0px,rgba(201,169,110,0.03) 1px,transparent 1px,transparent 40px);
}

.hero-content{

 position:relative;
max-width:620px;
z-index:1;
}

.hero h1{

 font-family:var(--serif);
font-size:clamp(2.4rem,5vw,3.8rem);
font-weight:400;
color:var(--white);
line-height:1.15;
margin-bottom:1.5rem;
}

.hero h1 em{
color:var(--gold); font-style:italic;}

.hero-tagline{

 font-size:0.97rem;
color:rgba(255,255,255,0.58);
line-height:1.8;
margin-bottom:2.5rem;
font-weight:300;
}

.hero-btns{
display:flex; gap:1rem; flex-wrap:wrap;}

.hero-stats{

 position:absolute;
right:5%; top:50%;
transform:translateY(-50%);
display:flex;
flex-direction:column;
gap:1rem;
z-index:1;
}