@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap");

:root{--ink:#24392f;--forest:#2d624e;--muted:#58665c;--cream:#fbfaf7;--line:#e5e7e0;--sand:#f0eee8;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:#29332b;font-family:Manrope,Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #87bfa1;outline-offset:3px}.wrap{max-width:1160px;margin:auto;padding:0 28px}.topline{background:var(--ink);color:white;font-size:12px;letter-spacing:.13em;text-transform:uppercase;padding:10px 0;text-align:center}.header{background:white;border-bottom:1px solid var(--line)}.nav{min-height:112px;display:flex;justify-content:space-between;align-items:center;gap:25px}.logo{width:310px;max-width:44vw;height:auto;object-fit:contain}.navlinks{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}.navlinks a:hover,.footer a:hover{color:var(--forest)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;background:var(--forest);color:#fff;border-radius:3px;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.13em;transition:background .2s}.btn:hover{background:#194630;color:white}.btn-outline{border:1px solid var(--forest);background:transparent;color:var(--forest)}.btn-outline:hover{background:var(--forest);color:#fff}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:700;color:var(--forest)}h1,h2,h3{font-family:Manrope,Arial,Helvetica,sans-serif;color:var(--ink);font-weight:800}h1{font-size:clamp(45px,5.6vw,78px);line-height:1.08;letter-spacing:-.052em;margin:18px 0 24px}h2{font-size:clamp(34px,4vw,50px);line-height:1.14;letter-spacing:-.038em;margin:15px 0 18px}h3{font-size:25px;line-height:1.2;margin:13px 0}p{line-height:1.8;font-size:16px;color:#59635c}.hero{display:grid;grid-template-columns:47% 53%;min-height:590px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:60px clamp(28px,6vw,110px) 60px max(28px,calc((100vw - 1160px)/2 + 28px));background:var(--sand)}.hero-copy p{max-width:510px;font-size:18px}.hero-copy .actions{margin-top:21px;display:flex;gap:12px;flex-wrap:wrap}.hero-photo{position:relative;background:#d9d9d2;overflow:hidden}.hero-photo img,.feature-photo img{width:100%;height:100%;object-fit:cover;display:block}.photo-credit{position:absolute;right:14px;bottom:12px;background:#ffffffcf;padding:5px 8px;color:#445047;font-size:10px}.photo-credit a{text-decoration:underline}.section{padding:95px 0}.intro{text-align:center;max-width:720px;margin:0 auto 52px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.item{border-top:1px solid #aebeb2;padding-top:25px}.number{color:#688d78;font-size:12px;letter-spacing:.14em}.item p{font-size:15px}.feature{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:white}.feature-photo{min-height:430px;position:relative}.feature-copy{padding:70px clamp(30px,6vw,100px);display:flex;justify-content:center;flex-direction:column}.feature-copy .eyebrow{color:#b9d5c5}.feature-copy h2{color:white}.feature-copy p{color:#d2dcd4;max-width:500px}.feature-copy .btn{align-self:flex-start;background:white;color:var(--ink);margin-top:20px}.contact{background:#f0eee8}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.contact-data{display:grid;grid-template-columns:1fr 1fr;gap:20px 30px}.contact-data span{display:block;font-size:11px;letter-spacing:.12em;color:#738077;text-transform:uppercase;margin-bottom:8px}.contact-data a:hover{text-decoration:underline}.contact-data p{margin:0;font-size:15px;color:var(--ink);line-height:1.55}.footer{background:white;padding:35px 0;border-top:1px solid var(--line)}.footer-wrap{display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:12px;color:#6c776e}.footer img{width:200px;display:block}.page-top{padding:70px 0 42px;background:var(--sand)}.page-top h1{font-size:clamp(42px,5vw,62px);margin-bottom:15px}.page-top p{max-width:780px}.gallery-section{padding-top:55px}.gallery-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;border-bottom:1px solid var(--line);padding-bottom:19px;margin-bottom:30px}.gallery-heading h2{font-size:34px;margin:0}.gallery-heading p{margin:0;font-size:14px}.gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:23px}.door{background:white;border:1px solid #e8e8e3;padding:13px 13px 15px;text-align:center}.door img{width:100%;aspect-ratio:3/4;object-fit:contain}.door figcaption{font-size:12px;color:#657169;margin-top:10px;letter-spacing:.06em}.note{font-size:13px;color:#63736a;background:#f1f1ec;padding:17px 21px;border-left:3px solid var(--forest);margin-top:34px}.bottom-cta{text-align:center;background:var(--ink);color:white;padding:70px 20px}.bottom-cta h2{color:white}.bottom-cta p{color:#c9d5cc}.bottom-cta .btn{background:white;color:var(--ink);margin-top:14px}@media(max-width:950px){.gallery{grid-template-columns:repeat(4,1fr)}.navlinks{gap:14px}.hero-copy{padding-left:28px}.hero{min-height:470px}}@media(max-width:700px){.wrap{padding:0 21px}.topline{font-size:10px}.nav{min-height:98px;gap:12px}.logo{width:225px;max-width:52vw}.navlinks{gap:14px;font-size:12px}.navlinks .nav-cta{display:none}.hero{display:flex;flex-direction:column-reverse}.hero-photo{height:290px}.hero-copy{padding:45px 23px 58px}.hero-copy p{font-size:16px}.section{padding:60px 0}.three{grid-template-columns:1fr;gap:18px}.item{padding-top:15px}.feature{grid-template-columns:1fr}.feature-photo{min-height:310px}.feature-copy{padding:46px 25px}.contact-grid{grid-template-columns:1fr;gap:24px}.contact-data{gap:18px}.footer-wrap{flex-direction:column;text-align:center}.gallery{grid-template-columns:repeat(2,1fr);gap:13px}.door{padding:9px}.gallery-heading{display:block}.gallery-heading p{margin-top:9px}.page-top{padding:48px 0 25px}}
/* Stronger headings for clear modern hierarchy */
h1{font-weight:800}h2{font-weight:800}h3{font-weight:750}.intro h2,.feature-copy h2,.contact h2{font-weight:800}.page-top h1{font-weight:800}.gallery-heading h2{font-weight:800}.eyebrow{font-weight:800}.navlinks{font-weight:700}

/* Refined full-width, low-profile website footer rather than business-card block */
.footer { background:#24392f; color:#edf2ec; padding:33px 0; border-top:0; }
.footer-wrap { display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; font-size:13px; color:#d4ddd5; text-align:left; }
.footer-brand { display:flex; flex-direction:column; gap:5px; }
.footer-brand strong { color:white; font-size:16px; font-weight:800; letter-spacing:-.025em; }
.footer-brand span { color:#bfcfc4; font-size:12px; }
.footer-right { display:flex; align-items:center; gap:25px; flex-wrap:wrap; }
.footer-right a { color:#f6f8f4; text-decoration:none; font-weight:700; }
.footer-right a:hover { color:#a7d6b8; }
.footer-right span { border-left:1px solid #6b7d72; padding-left:25px; color:#bfcfc4; font-size:12px; }
@media(max-width:700px){.footer {padding:29px 0}.footer-wrap{flex-direction:column; align-items:flex-start; text-align:left; gap:18px}.footer-right{gap:16px}.footer-right span{border:0;padding:0;flex-basis:100%}}

/* Balanced signature footer with the original palm-tree logo */
.footer { background:#eef1eb; color:#24392f; padding:58px 0 25px; border-top:1px solid #dce4da; }
.footer-center { display:flex; flex-direction:column; align-items:center; text-align:center; }
.footer-logo-link { display:block; width:min(430px,82vw); background:white; padding:13px 22px; border-radius:5px; }
.footer-logo { display:block; width:100%; height:auto; mix-blend-mode:multiply; }
.footer-tagline { margin:17px 0 24px; color:#52695a; font-weight:700; font-size:13px; letter-spacing:.035em; }
.footer-dot { padding:0 9px; color:#829d8a; }
.footer-links { display:flex; justify-content:center; flex-wrap:wrap; gap:14px 36px; margin-bottom:34px; }
.footer-links a { font-weight:800; font-size:14px; color:#24392f; text-decoration:none; }
.footer-links a:hover { color:#4e7d61; text-decoration:underline; }
.footer-copyright { border-top:1px solid #cfdacf; width:100%; padding-top:19px; color:#617667; font-size:12px; }
@media(max-width:700px){.footer{padding:44px 0 22px}.footer-logo-link{width:min(360px,95%);padding:8px}.footer-tagline{font-size:12px;line-height:1.65}.footer-links{column-gap:24px;row-gap:16px;margin-bottom:28px}}

/* Footer refinement: remove white logo box and let palm-tree logo sit directly on footer */
.footer-logo-link {background:transparent; padding:0; border-radius:0; box-shadow:none;}
.footer-logo {mix-blend-mode:normal;}
@media(max-width:700px){.footer-logo-link{padding:0;}}
