@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Roboto:wght@400;500;700&display=swap');
:root{--green:#15bd29;--gold:#eed27f;--ink:#4f4f4f;--blue:#0d6efd;--gradient:linear-gradient(100deg,var(--gold),var(--green))}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:white;font:16px/1.7 'Roboto',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}button:focus-visible,a:focus-visible{outline:3px solid #119127;outline-offset:5px}.container{width:min(1280px,90%);margin:auto}.contact-strip{background:var(--gradient);color:#fff;font-size:13px}.contact-strip .container{display:flex;align-items:center;gap:15px;min-height:48px}.site-header{position:sticky;top:0;background:#fff;z-index:20;box-shadow:0 2px 7px #00000012}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand img{width:260px;height:72px;object-fit:contain}nav{display:flex;gap:26px;align-items:center}nav a{font-size:15px;font-weight:700;color:#222;padding:15px 0}nav a:hover,nav a[aria-current=page]{color:#59bd32}.menu-toggle{display:none;border:0;background:transparent;width:42px;padding:8px}.menu-toggle span{display:block;height:3px;background:#222;margin:5px 0}.hero{position:relative;overflow:hidden;background:#e7edde;aspect-ratio:2.3}.hero-image{width:100%;height:100%;object-fit:cover;animation:appear .5s ease}.carousel-arrow{position:absolute;top:45%;width:50px;height:60px;background:#0002;border:0;color:#fff;font-size:44px;line-height:1;border-radius:4px}.carousel-arrow:hover{background:#0005}.prev{left:3%}.next{right:3%}.carousel-bottom{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:9px}.slide-dot{height:5px;width:28px;border:0;background:#ffffff80;padding:0}.slide-dot[aria-current=true]{background:white}.pause{background:#0005;color:#fff;border:1px solid #fff8;border-radius:4px;font-size:11px;padding:3px 8px;margin-left:10px}.section{padding:55px 0}.section-title{text-align:center;font:700 36px/1.3 'DM Sans',Arial,sans-serif;margin:0 0 45px}.section-title:after{content:'';display:block;width:90px;height:3px;background:var(--gradient);margin:12px auto 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.about-image{width:100%;max-height:530px;object-fit:cover;border-radius:3px}.about-copy h2{font-size:28px;line-height:1.3;font-weight:500;margin:0 0 22px}.about-copy p{font-size:15px;line-height:1.9;margin:0 0 18px}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:0;border-radius:4px;background:var(--blue);color:white;font-size:13px;padding:10px 22px;box-shadow:0 3px 7px #0002;font-weight:500}.button:hover{background:#095bd8}.projects{background:#fcfcfc}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.project-card{border-radius:7px;overflow:hidden;background:white;box-shadow:0 3px 15px #00000012;border:1px solid #eee;display:flex;flex-direction:column}.project-photo{padding:0;border:0;background:#edf2e9;overflow:hidden;width:100%;aspect-ratio:1.55}.project-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.project-photo:hover img{transform:scale(1.04)}.project-body{padding:22px;display:flex;flex:1;flex-direction:column}.project-body h3{font-size:18px;line-height:1.4;color:var(--blue);margin:0 0 12px}.project-body p{font-size:14px;line-height:1.8;margin:0 0 20px}.project-actions{display:flex;align-items:center;gap:10px;margin-top:auto}.project-actions .button{margin-right:auto}.contact-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#eff9ea;color:#40a327;font-size:20px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}.contact-form{border-radius:22px;padding:35px;box-shadow:0 2px 20px #00000010}.contact-form h2{font-size:32px;line-height:1.3;margin:0 0 24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:13px;font-weight:500;margin-bottom:17px}input,textarea{width:100%;display:block;border:1px solid #ddd;border-radius:6px;padding:12px 14px;margin-top:5px;color:#333;background:#fff;font-size:14px;outline:none}input:focus,textarea:focus{border-color:#50ae3c;box-shadow:0 0 0 3px #50ae3c18}textarea{resize:vertical;min-height:125px}.form-note{font-size:12px;color:#777;line-height:1.5}.form-status{font-size:14px;background:#ecf8eb;color:#27692b;padding:12px;border-radius:5px}.form-status:empty{display:none}.map-panel{background:#e8ece3;position:relative;min-height:430px;overflow:hidden}.map-panel iframe{width:100%;height:100%;min-height:430px;border:0}.address-caption{padding:15px 20px;background:#ffffffed;font-size:13px;position:absolute;bottom:15px;left:15px;right:15px;box-shadow:0 2px 9px #0001}.site-footer{background:#242424;color:#ccc;margin-top:25px;padding-top:42px;font-size:14px}.footer-grid{display:grid;grid-template-columns:1.2fr 1.2fr 1fr;gap:45px}.site-footer h2{font-size:28px;color:#72cb41;margin:0}.site-footer h3{font-size:19px;color:white;margin:0 0 14px}.site-footer a{display:block;margin:8px 0}.site-footer a:hover{color:#85cd63}.copyright{text-align:center;border-top:1px solid #ffffff17;margin-top:35px;padding:18px;font-size:12px}.floating-contact{position:fixed;left:20px;bottom:25px;z-index:25;display:grid;gap:10px}.floating-contact a{display:grid;place-items:center;background:#81bd43;color:white;border:2px solid #ffffffc9;width:50px;height:50px;border-radius:50%;box-shadow:0 3px 10px #0002;font-size:25px}.floating-contact svg{width:27px;height:27px}.page-banner{padding:42px 0;background:linear-gradient(110deg,#faf4dd,#e8f7e6);text-align:center}.page-banner h1{font-size:36px;margin:0 0 8px}.page-banner p{font-size:13px;margin:0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery-item{padding:0;border:0;background:#edf2e9;position:relative;overflow:hidden;border-radius:5px}.gallery-item img{width:100%;aspect-ratio:1.3;object-fit:cover;transition:transform .3s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item span{display:block;padding:12px;background:white;font-size:14px;color:#333}dialog{border:0;border-radius:12px;padding:0;width:min(760px,92vw);max-height:90vh;color:var(--ink);box-shadow:0 20px 80px #0005}dialog::backdrop{background:#000a}.dialog-close{position:absolute;right:12px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:white;color:#333;font-size:28px;z-index:1}.dialog-image{width:100%;max-height:55vh;object-fit:contain;background:#eef1e9}.dialog-copy{padding:25px}.dialog-copy h2{margin:0 0 12px;font-size:24px}.dialog-copy p{font-size:15px}.skip-link{position:fixed;top:-100px;left:15px;background:white;color:#222;padding:10px;z-index:100}.skip-link:focus{top:10px}@keyframes appear{from{opacity:.5}to{opacity:1}}@media(max-width:1000px){nav{gap:16px}nav a{font-size:13px}.brand img{width:220px}.project-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:28px}.contact-form{padding:25px}.footer-grid{gap:25px}}@media(max-width:760px){.contact-strip .container{min-height:40px;font-size:11px;gap:8px}.header-inner{min-height:78px}.brand img{width:205px;height:60px}.menu-toggle{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:12px 6%;box-shadow:0 6px 12px #0001;flex-direction:column;align-items:stretch;gap:0}nav.is-open{display:flex}nav a{padding:12px 0;font-size:14px;border-top:1px solid #eee}.hero{aspect-ratio:2}.section{padding:35px 0}.section-title{font-size:28px;margin-bottom:30px}.about-grid,.contact-layout{grid-template-columns:1fr}.about-copy h2{font-size:24px}.project-grid,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-body{padding:16px}.project-body h3{font-size:16px}.project-actions{gap:6px}.project-actions .button{padding:9px 12px}.contact-icon{width:28px;height:28px}.footer-grid{grid-template-columns:1fr;gap:22px}.floating-contact{left:12px;bottom:15px}.floating-contact a{width:42px;height:42px}.carousel-arrow{font-size:32px;width:32px;height:42px}.carousel-bottom{bottom:9px}.form-row{grid-template-columns:1fr;gap:0}.page-banner{padding:30px 0}.page-banner h1{font-size:30px}}@media(max-width:480px){.contact-strip a:first-child,.separator{display:none}.project-grid,.gallery-grid{grid-template-columns:1fr}.contact-form{padding:23px}.contact-form h2{font-size:27px}.carousel-bottom{gap:6px}.slide-dot{width:19px}.about-image{max-height:380px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Measurements matched to the original Prop Makers theme. */
:root{--green:#0cc02a;--gold:#eecf7e;--gradient:linear-gradient(to right,#eecf7e 0%,#0cc02a 100%)}
body{line-height:1.6}
.container{width:100%;padding-right:12px;padding-left:12px;margin-right:auto;margin-left:auto}
.contact-strip .container{min-height:51px;font-weight:500}
.site-header{box-shadow:0 4px 12px #00000012,0 2px 4px #0000000d}
.projects{background:#fff}
.section{padding:48px 0}
.section-title{font-size:36px;line-height:46px;margin-bottom:32px}
.section-title:after{margin:0 auto;width:90px;height:3px}
.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 44px;padding:0 10px;align-items:start}
.project-card{border:0;border-radius:20px;box-shadow:0 3px 6px #00000029,0 3px 6px #0000003b;overflow:visible;display:block}
.project-photo{display:block;height:250px;aspect-ratio:auto;border-radius:0;overflow:hidden}
.project-photo img{height:250px;object-fit:fill}
.project-body{padding:24px;display:block}
.project-body h3{font:700 18px/normal Roboto,Arial,sans-serif;text-align:center;margin:0 0 8px;background:var(--gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.project-body p{font-size:14px;line-height:22px;margin:0 0 16px;min-height:66px}
.project-actions{gap:8px;margin:0;align-items:center}
.button{background:var(--gradient);border-radius:50px;padding:13px;font:500 16px/20px Roboto,Arial,sans-serif;margin:10px 0;box-shadow:none}
.button:hover{background:linear-gradient(to left,#eecf7e,#0cc02a)}
.project-actions .button{flex:1;margin:10px 0}
.contact-icon{width:48px;height:46px;flex:0 0 48px;background:#1554cb;color:white;margin:10px 0;font-size:16px}
.contact-icon:last-child{background:#25d366}
.contact-icon svg{width:18px;height:18px;fill:currentColor}
nav a[aria-current=page],nav a:hover{background:var(--gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero{aspect-ratio:auto}.hero-image{height:auto;object-fit:fill}.carousel-arrow{background:transparent}.carousel-bottom{opacity:0;transition:opacity .2s}.hero:hover .carousel-bottom,.hero:focus-within .carousel-bottom{opacity:1}
.about-copy p{font-size:16px;line-height:25.6px}.about-image{object-fit:contain;height:auto;max-height:none}
.contact-form{border-radius:30px}.contact-form .button{background:#3b71ca;border-radius:4px;font-size:12px;padding:10px 20px}.site-footer{background:#252525}
.floating-contact a{background:var(--gradient);border:0;box-shadow:none}
.page-banner{background:#252525;color:white}
@media(min-width:576px){.container{max-width:540px}}
@media(min-width:768px){.container{max-width:720px}}
@media(min-width:992px){.container{max-width:960px}}
@media(min-width:1200px){.container{max-width:1140px}}
@media(min-width:1400px){.container{max-width:1320px}}
@media(max-width:991px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-actions .button{font-size:14px}.contact-icon{width:42px;flex-basis:42px}.about-grid{grid-template-columns:1fr}}
@media(max-width:767px){.project-grid{grid-template-columns:1fr}.project-body{padding:24px}.project-body h3{font-size:18px}.project-actions .button{font-size:16px;padding:13px}.contact-icon{width:48px;flex-basis:48px;height:46px}.section-title{font-size:28px;line-height:36px}.carousel-bottom{opacity:1}.project-body p{min-height:0}.header-inner{padding-inline:16px}}

/* Compact homepage banner with consistent cropping across screen sizes. */
.hero{height:clamp(230px,32vw,440px);overflow:hidden}
.hero-image{width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:767px){.hero{height:220px}}
@media(max-width:480px){.hero{height:180px}}
.mission-vision{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:40px}.mission-vision h2{font-size:28px;font-weight:500}.original-description{white-space:pre-line}.contact-original{margin-bottom:35px}.contact-original a{display:block;color:#4f4f4f;margin:8px 0}@media(max-width:767px){.mission-vision{grid-template-columns:1fr;gap:20px}}

.varaha-wordmark{display:flex;flex-direction:column;align-items:center;line-height:1.2;color:#55bc24}
.varaha-wordmark strong{font:800 25px/1.2 Roboto,Arial,sans-serif;letter-spacing:-.6px;white-space:nowrap}
.varaha-wordmark small{font:400 6.6px/1.5 Roboto,Arial,sans-serif;color:#606060;margin-top:5px;letter-spacing:0}
.varaha-about-brand{display:grid;place-items:center;min-height:260px;padding:24px 0}
.varaha-about-brand .varaha-wordmark strong{font-size:clamp(22px,3vw,40px)}
.varaha-about-brand .varaha-wordmark small{font-size:clamp(6px,.7vw,10px)}
@media(max-width:767px){.brand .varaha-wordmark strong{font-size:21px}.brand .varaha-wordmark small{font-size:5.8px}.varaha-about-brand{min-height:180px}}

/* Motion stays decorative: all content is visible without JavaScript. */
@keyframes varaha-rise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
@keyframes varaha-dialog{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
.motion-enter{animation:varaha-rise .65s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--reveal-delay,0ms)}
.project-card{transition:transform .28s ease,box-shadow .28s ease}
.project-photo img,.gallery-item img{transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.button,.contact-icon,.floating-contact a{transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
nav a{position:relative}
nav a:after{content:'';position:absolute;left:0;right:0;bottom:8px;height:2px;background:var(--gradient);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
nav a:hover:after,nav a[aria-current=page]:after{transform:scaleX(1)}
dialog[open]{animation:varaha-dialog .25s ease both}
.menu-toggle span{transition:transform .25s ease,opacity .2s ease}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(8px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-8px) rotate(-45deg)}
@media(hover:hover){.project-card:hover{transform:translateY(-6px);box-shadow:0 12px 28px #00000024}.project-photo:hover img,.gallery-item:hover img{transform:scale(1.055)}.button:hover,.contact-icon:hover,.floating-contact a:hover{transform:translateY(-2px);filter:brightness(1.04)}}
@media(max-width:760px){nav.is-open{animation:varaha-rise .25s ease both}}
@media(prefers-reduced-motion:reduce){.motion-enter,dialog[open],nav.is-open{animation:none!important}.project-card:hover,.project-photo:hover img,.gallery-item:hover img,.button:hover,.contact-icon:hover,.floating-contact a:hover{transform:none}*{scroll-behavior:auto!important}}
