/* Sunshine Brokers · custom static site · staging draft 2026-11-05 */
:root{--pine:#12352f;--dark:#0b2622;--ink:#182b28;--cream:#f9f7f1;--paper:#ffffff;--stone:#e9eee8;--text:#43534e;--muted:#697c75;--gold:#efae56;--gold-dark:#9c5c14;--line:#d9e3db;--radius:17px;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.045em;line-height:1.07;font-weight:500}h3{line-height:1.2}p+p{margin-top:1em}.container{width:min(calc(100% - 40px),var(--max));margin:0 auto}.eyebrow{text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.17em}.eyebrow.dark{color:var(--gold-dark)}.small-note{font-size:13px;color:var(--muted)}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:4px}::selection{background:#f5cc8b;color:#0b2622}
.skip{position:absolute;z-index:999;left:12px;top:-80px;background:white;color:var(--dark);padding:8px 14px}.skip:focus{top:12px}
.site-header{height:86px;background:var(--cream);border-bottom:1px solid #e3e7df;position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:25px}.brand{display:inline-flex;align-items:center;gap:12px;min-width:0}.brand-icon{width:38px;height:38px;border:1.5px solid var(--pine);border-radius:10px;display:grid;place-items:center;color:var(--pine);font:600 16px Georgia,serif;letter-spacing:-.12em;padding-right:3px}.brand-type{display:block;line-height:1.03;white-space:nowrap}.brand-type strong{font-size:18px;font-weight:800;letter-spacing:.105em}.brand-type small{display:block;font-size:9px;font-weight:700;color:#717f78;letter-spacing:.27em;margin-top:7px}.nav-links{display:none;gap:26px;align-items:center}.nav-links>a{font-size:13px;font-weight:700;color:#44594f}.nav-links>a:hover,.nav-links>a[aria-current=page]{color:var(--gold-dark)}.top-call{display:none}.mobile-nav{margin-left:auto;position:relative}.mobile-nav summary{list-style:none;cursor:pointer;border:1px solid #c4d1c8;border-radius:9px;padding:8px 14px;font-size:13px;font-weight:750}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;right:0;top:49px;min-width:230px;background:#fff;padding:10px;border:1px solid var(--line);box-shadow:0 15px 35px #09281e20;border-radius:11px}.mobile-nav nav a{display:block;padding:12px;border-radius:7px;font-size:14px;font-weight:700}.mobile-nav nav a:hover{background:var(--cream)}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:11px;min-height:47px;padding:11px 19px;border-radius:8px;font-size:13px;line-height:1.3;letter-spacing:.02em;font-weight:800;border:1px solid transparent;transition:transform .18s ease,background .18s ease,color .18s ease}.btn:hover{transform:translateY(-2px)}.btn.gold{background:var(--gold);color:#142c25}.btn.gold:hover{background:#ffbf6d}.btn.light{border-color:#aabdb3;color:#fff}.btn.light:hover{background:#ffffff14}.btn.outline{border-color:#bfcfc4;color:var(--pine);background:transparent}.btn.outline:hover{background:#e4eee6}.btn.dark{background:var(--pine);color:#fff}.btn.dark:hover{background:#19473e}.btn .arrow{font-size:20px;line-height:1}.text-link{font-weight:800;color:var(--pine);border-bottom:1px solid #91b1a1;padding-bottom:3px;font-size:14px}.text-link:hover{color:var(--gold-dark)}
.hero{background:var(--dark);color:#fff;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:-300px auto auto 46%;height:750px;width:750px;border-radius:50%;border:1px solid #47706155;pointer-events:none}.hero:after{content:"";position:absolute;inset:-240px auto auto 52%;height:630px;width:630px;border-radius:50%;border:1px solid #47706148;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1fr;align-items:center;min-height:560px;padding:66px 0 70px;gap:48px;position:relative;z-index:1}.hero .eyebrow{color:#f7b962;margin-bottom:25px}.hero h1{font-size:clamp(54px,9vw,106px);max-width:770px}.hero-sub{font-size:clamp(18px,2.2vw,23px);line-height:1.45;color:#f1eddf;margin:24px 0 20px;max-width:600px;font-weight:500}.hero-desc{font-size:15px;line-height:1.75;color:#b8cbc4;max-width:550px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:31px}.hero-side{border:1px solid #45645c;padding:32px 28px 29px;max-width:410px;background:#ffffff07;position:relative;overflow:hidden;border-radius:var(--radius)}.side-top{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #47675e;padding-bottom:29px;margin-bottom:31px;align-items:center}.side-top .tiny{font-weight:800;font-size:10px;letter-spacing:.13em;color:#d7e8db;text-transform:uppercase}.side-top .year{font:500 38px Georgia,serif;color:var(--gold)}.hero-side h2{font-size:37px;line-height:1.12}.hero-side p{color:#c3d5cc;font-size:14px;margin-top:14px}.hero-side .side-foot{margin-top:38px;padding-top:17px;border-top:1px solid #45645c;font-size:11px;letter-spacing:.08em;color:#c9d9cf;text-transform:uppercase}.hero-side:after{content:"";position:absolute;bottom:-86px;right:-66px;width:220px;height:220px;border:1px solid #b0c1a133;border-radius:50%;pointer-events:none}
.trust{background:#f2f0e8;border-bottom:1px solid #dee3da}.trust .container{display:grid;grid-template-columns:repeat(2,1fr);padding:22px 0;gap:12px 24px}.trust span{font-size:12px;line-height:1.45;color:#475c51;font-weight:700;padding-left:12px;border-left:2px solid #e6af64}.trust span:last-child{grid-column:span 2}
.section{padding:85px 0}.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr;gap:30px}.intro h2{font-size:clamp(35px,5.6vw,61px);max-width:620px;margin-top:19px}.intro p{font-size:17px;line-height:1.8;color:#50625a;max-width:630px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;flex-wrap:wrap;margin-bottom:34px}.section-heading h2{font-size:clamp(36px,5.5vw,57px);margin-top:13px}.services{background:white}.services-grid{display:grid;grid-template-columns:1fr;gap:13px}.service-card{display:flex;flex-direction:column;justify-content:space-between;min-height:196px;border:1px solid var(--line);border-radius:13px;padding:26px 26px 23px;background:#fff;transition:border-color .2s,background .2s,transform .2s}.service-card:hover{border-color:#9cb7a5;background:#f8faf6;transform:translateY(-3px)}.service-card .number{font:600 11px Arial,sans-serif;letter-spacing:.1em;color:var(--gold-dark)}.service-card h3{font-family:Georgia,serif;font-weight:500;letter-spacing:-.025em;font-size:24px;max-width:270px}.service-card .bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}.service-card .go{font-size:22px;color:var(--pine)}.service-card p{font-size:13px;color:#6d7e71;margin-top:9px;line-height:1.5}
.why{background:#e9eee7}.why-grid{display:grid;grid-template-columns:1fr;gap:43px}.why h2{font-size:clamp(37px,5.3vw,62px);margin:17px 0 22px}.why p{color:#4c6056;line-height:1.82;font-size:15px}.why-panel{background:var(--pine);border-radius:var(--radius);padding:34px 32px;color:#f7f8f1;align-self:stretch}.why-panel h3{font:500 29px/1.25 Georgia,serif;margin-bottom:20px}.why-panel ul{padding:0;list-style:none;margin:0}.why-panel li{padding:12px 0;border-top:1px solid #466459;font-size:14px;color:#d4e0d8}.why-panel li:before{content:"✓";color:var(--gold);font-weight:700;margin-right:13px}
.local-strip{background:#f6e7d0;padding:24px 0}.local-strip .container{display:flex;flex-wrap:wrap;gap:22px;justify-content:space-between;align-items:center}.local-strip p{font-size:15px;color:#53442c;font-weight:550;max-width:780px}.local-strip strong{font-weight:800;color:#3f3b2b}
.keys-life{background:var(--cream)}.keys-grid{display:grid;grid-template-columns:1fr;gap:25px;align-items:center}.keys-life h2{font-size:clamp(38px,5.4vw,60px);margin:15px 0 20px}.keys-life p{font-size:16px;color:#526159;max-width:620px}.keys-card{background:#e4e9df;min-height:255px;display:flex;flex-direction:column;justify-content:space-between;padding:28px;border-radius:var(--radius);border:1px solid #d4ddcf}.keys-card .large{font:500 41px/1.04 Georgia,serif;letter-spacing:-.04em;max-width:320px}.keys-card .bottom{border-top:1px solid #bbcdbf;padding-top:18px;font-size:13px;color:#5c7164}
.cta{background:var(--pine);color:#fff;padding:85px 0}.cta-grid{display:grid;grid-template-columns:1fr;gap:25px;align-items:end}.cta h2{font-size:clamp(40px,6vw,68px);margin:16px 0 22px;max-width:760px}.cta p{color:#c2d5ca;font-size:16px;max-width:710px}.cta-actions{display:flex;flex-wrap:wrap;gap:11px;align-items:center}.site-footer{background:#0b241f;color:#d2ded5;padding:35px 0 30px}.footer-top{display:grid;grid-template-columns:1fr;gap:25px;align-items:start}.footer-brand{font-size:17px;font-weight:800;letter-spacing:.12em}.footer-brand span{display:block;margin-top:8px;color:#a8bcb0;font-size:11px;letter-spacing:.06em;font-weight:500}.footer-nav{display:flex;gap:13px 24px;flex-wrap:wrap}.footer-nav a{font-size:12px;font-weight:700}.footer-nav a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid #426057;margin-top:24px;padding-top:20px;display:flex;gap:12px 30px;justify-content:space-between;flex-wrap:wrap;font-size:11px;color:#aec0b4}
.page-hero{background:var(--dark);color:white;padding:70px 0 78px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:340px;height:340px;border:1px solid #476c5d63;border-radius:50%;right:-60px;top:-150px}.page-hero .eyebrow{color:var(--gold);margin-bottom:19px}.page-hero h1{font-size:clamp(52px,8vw,87px);max-width:840px}.page-hero .lede{color:#c1d5c8;font-size:18px;max-width:700px;margin-top:23px;line-height:1.65}.content-section{background:#fff;padding:75px 0}.content-section.alt{background:var(--cream)}.service-detail{display:grid;grid-template-columns:1fr;gap:16px;border-top:1px solid var(--line);padding:37px 0}.service-detail:first-of-type{margin-top:19px}.service-detail .count{font-size:11px;letter-spacing:.14em;font-weight:800;color:#a06520}.service-detail h2{font-size:clamp(27px,3.8vw,40px);margin-top:12px}.service-detail .detail-body{color:#4c6056;font-size:15px;max-width:740px;line-height:1.82}.service-detail .detail-body p{margin-bottom:20px}.service-detail .detail-body p:last-child{margin-bottom:0}.specialized{border:1px solid #cddbd1;border-radius:13px;padding:23px 26px;margin-top:30px;background:#f0f5ed}.specialized h2{font:700 12px Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#24473a;margin-bottom:9px}.specialized p{color:#435a4b;font-size:15px}.about-grid{display:grid;grid-template-columns:1fr;gap:60px}.about-copy p{font-size:17px;color:#43574c;line-height:1.9}.about-copy h2{font-size:clamp(32px,5vw,50px);margin:0 0 25px}.about-aside{align-self:start;background:#f0f3eb;padding:32px;border-radius:var(--radius);border:1px solid #dfe7df}.about-aside .eyebrow{color:var(--gold-dark)}.about-aside h3{font:500 33px/1.15 Georgia,serif;margin:15px 0 27px}.about-aside p{font-size:13px;color:#556b5e;margin:15px 0;border-bottom:1px solid #d2dfd3;padding-bottom:12px}.quote{background:var(--pine);color:white;padding:30px;border-radius:13px;margin-top:29px;font:500 28px/1.32 Georgia,serif}.license{font-size:13px!important;font-weight:800;color:var(--pine)!important;margin-top:22px}.contact-grid{display:grid;grid-template-columns:1fr;gap:30px}.contact-options{display:grid;grid-template-columns:1fr;gap:14px}.contact-option{border:1px solid #d9e2d8;border-radius:13px;padding:27px;background:#fbfdf9}.contact-option .eyebrow{color:#8d5a20}.contact-option h2{font-size:32px;margin:13px 0}.contact-option p{font-size:14px;color:#5a6f60}.contact-option a{overflow-wrap:anywhere}.contact-option a:hover{text-decoration:underline;text-underline-offset:3px}.contact-note{background:#e7eee5;padding:27px;border-radius:13px;font-size:15px;color:#435a4c}.fineprint{font-size:12px;color:#6b7b70}

.hero-grid{grid-template-columns:1fr;}
.hero-visuals{display:grid;gap:18px;align-items:start}
.hero-photo{margin:0;border-radius:var(--radius);overflow:hidden;border:1px solid #45645c;background:#0f2f2a;box-shadow:0 14px 40px rgba(0,0,0,.18)}
.hero-photo img{width:100%;height:clamp(280px,42vw,430px);object-fit:cover;object-position:center center;display:block}
.hero-photo figcaption{padding:11px 15px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#d9e5de;border-top:1px solid #45645c;background:rgba(255,255,255,.04)}
.photo-story{background:#fff}
.photo-grid{display:grid;grid-template-columns:1fr;gap:16px}
.photo-card{margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#fbfcf9}
.photo-card img{width:100%;height:100%;min-height:240px;max-height:360px;object-fit:cover;display:block}
.photo-card figcaption{padding:12px 14px;font-size:12px;font-weight:700;color:#5f7468;text-transform:uppercase;letter-spacing:.08em;background:#fff}
.image-card{background-image:linear-gradient(rgba(228,233,223,.72),rgba(228,233,223,.88)),url('/assets/page-about.jpg');background-size:cover;background-position:center}
.has-photo{background-size:cover;background-position:center center}
.has-photo .container{position:relative;z-index:1}
.has-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,38,34,.92),rgba(11,38,34,.76));z-index:0}
.services-hero{background-image:url('/assets/page-services.jpg')}
.about-hero{background-image:url('/assets/page-about.jpg')}
.contact-hero{background-image:url('/assets/page-contact.jpg')}
.aside-photo{margin:-32px -32px 24px;border-radius:16px 16px 0 0;overflow:hidden;border-bottom:1px solid #d9e2d8}
.aside-photo img{width:100%;height:220px;object-fit:cover;display:block}

@media(min-width:650px){.services-grid{grid-template-columns:repeat(2,1fr)}.trust .container{grid-template-columns:repeat(3,1fr)}.trust span:last-child{grid-column:auto}.service-detail{grid-template-columns:190px 1fr}.footer-top{grid-template-columns:1fr auto}.contact-options{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.nav-links{display:flex}.top-call{display:inline-flex}.mobile-nav{display:none}.hero-grid{grid-template-columns:1.42fr .76fr;gap:50px}.hero-side{width:100%}.intro-grid{grid-template-columns:.9fr 1.1fr;gap:85px}.services-grid{grid-template-columns:repeat(3,1fr)}.why-grid{grid-template-columns:1.3fr .85fr;gap:80px}.keys-grid{grid-template-columns:1.1fr .9fr;gap:90px}.cta-grid{grid-template-columns:1.25fr .75fr}.about-grid{grid-template-columns:1.35fr .65fr}.contact-grid{grid-template-columns:1.35fr .7fr;gap:65px}}
@media(max-width:600px){.site-header{height:72px}.brand-type strong{font-size:15px}.brand-type small{font-size:8px}.brand-icon{width:35px;height:35px}.hero-grid{min-height:auto;padding:58px 0}.hero h1{font-size:58px}.hero-side{max-width:none}.trust .container{gap:16px 12px}.trust span{font-size:11px}.section{padding:67px 0}.services-grid{gap:12px}.service-card{min-height:160px}.why-panel{padding:27px 24px}.cta{padding:68px 0}.page-hero{padding:57px 0}.content-section{padding:55px 0}.service-detail{padding:30px 0}.contact-option{padding:23px}.contact-option h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.service-card{transition:none}}

/* Brand original artwork — vector logo from approved Sunshine Brokers design */
.brand{flex-shrink:0;line-height:0}
.brand-logo{display:block;width:260px;height:auto;max-height:52px;object-fit:contain}
.footer-logo-frame{display:inline-flex;background:var(--cream);padding:8px 13px 5px;border-radius:6px;max-width:100%}
.footer-logo{width:250px;height:auto;object-fit:contain}
@media(max-width:760px){.brand-logo{width:194px}}
@media(max-width:390px){.brand-logo{width:178px}.header-inner{gap:10px}}

@media(min-width:650px){.photo-grid{grid-template-columns:1.15fr .85fr}.photo-card.wide{grid-row:span 2}.photo-card.wide img{max-height:none;height:100%}.photo-card:not(.wide) img{min-height:180px;height:220px}}
@media(min-width:900px){.hero-grid{grid-template-columns:1.1fr .9fr}.hero-photo img{height:360px}.hero-visuals{padding-left:20px}}
@media(max-width:600px){.hero-photo img{height:260px}.hero-photo figcaption{font-size:11px}.photo-card img{min-height:220px;max-height:280px}.aside-photo{margin:-27px -27px 20px}}

/* LUXURY EDITORIAL HOMEPAGE — v3: restrained design, service-led, owner photography */
:root{--gold:#c6a576;--gold-dark:#866337;--pine:#203d35;--dark:#152f29;--cream:#f7f6f1;--ink:#21342e;--text:#51625a;--line:#dee4dd;--max:1200px}
.site-header{background:#fcfcf8;border-color:#e7e7df;box-shadow:0 6px 25px rgba(21,47,41,.025)}
.brand-logo{width:250px}.top-call{background:#203d35!important}
.lux-hero{background:#f5f4ee;color:var(--ink);overflow:hidden}
.lux-hero-inner{display:grid;grid-template-columns:1fr;gap:30px;padding:60px 0 44px;align-items:center}
.lux-kicker{font-size:11px;letter-spacing:.18em;color:#8b7050;margin-bottom:22px}
.lux-hero h1{font-size:clamp(48px,6vw,82px);line-height:1.07;letter-spacing:-.055em;max-width:700px}
.lux-hero h1 em,.lux-water h2 em,.lux-broker h2 em{font-weight:400;color:#537163}
.lux-subtitle{font-size:clamp(16px,1.4vw,19px);line-height:1.7;color:#53645b;max-width:575px;margin:26px 0 24px}
.lux-hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.lux-hero .btn.gold{background:#203d35;color:#fff;border-color:#203d35;border-radius:3px;min-height:51px;padding:12px 22px}
.lux-hero .btn.gold:hover{background:#355b4c}
.lux-link{font-size:13px;font-weight:800;color:#26473c;padding:7px 0;border-bottom:1px solid #728c7a}
.lux-hero-proof{display:flex;flex-direction:column;gap:0;border-top:1px solid #d6ddd4;padding-top:18px;margin-top:32px;font-size:12px;color:#7c8a81}
.lux-hero-proof strong{font-size:14px;color:#263e33}
.lux-hero-art{position:relative;min-width:0;margin:0;overflow:hidden;background:#c7d1d0;border-radius:3px}
.lux-hero-art img{width:100%;height:clamp(330px,36vw,520px);object-fit:cover;object-position:center 60%;filter:saturate(.87) contrast(1.04)}
.lux-hero-art figcaption{position:absolute;bottom:0;left:0;right:0;padding:16px 20px;background:linear-gradient(transparent,rgba(9,40,36,.68));color:#fff;font-size:10px;letter-spacing:.2em;font-weight:800}
.lux-services{background:#fff;padding:66px 0 83px;scroll-margin-top:84px}
.lux-section-top{display:flex;flex-direction:column;justify-content:space-between;gap:18px;margin-bottom:28px}
.lux-section-top h2{font-size:clamp(33px,4.5vw,55px);margin-top:11px;max-width:750px}
.lux-section-top>p{font-size:14px;color:#7d8c81;max-width:280px}
.lux-three-cards{display:grid;grid-template-columns:1fr;gap:12px}
.lux-service-card{padding:31px 27px 27px;min-height:335px;background:#f8f8f4;border:1px solid #e2e7e0;display:flex;flex-direction:column;transition:background .16s ease,transform .16s ease}
.lux-service-card:hover{background:#f1f5ee;transform:translateY(-2px)}
.lux-service-card:nth-child(2){background:#eef2eb}
.lux-service-card:nth-child(2):hover{background:#e6eee4}
.lux-service-number{font-weight:750;color:#a27c4b;font-size:11px;letter-spacing:.13em;display:flex;align-items:center;gap:12px}
.lux-service-number span{font-weight:800;color:#718078;font-size:10px}
.lux-service-card h3{font-family:Georgia,serif;letter-spacing:-.05em;font-weight:400;font-size:clamp(28px,2.8vw,35px);line-height:1.17;margin:28px 0 15px;color:#233f35}
.lux-service-card p{font-size:14px;line-height:1.8;color:#58695d;max-width:390px}
.lux-service-tags{font-size:11px;letter-spacing:.065em;color:#75877a;margin-top:22px;margin-bottom:21px}
.lux-card-bottom{border-top:1px solid #d4ddd4;padding-top:15px;margin-top:auto}
.lux-card-bottom a{font-size:13px;color:#1f4938;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:15px}
.lux-card-bottom a:hover{text-decoration:underline;text-underline-offset:4px}
.lux-card-bottom span{font-size:21px}
.lux-rental-note{font-size:12px;color:#7a8a80;margin-top:15px}
.lux-water{background:#edeee7;padding:92px 0}
.lux-water-grid{display:grid;grid-template-columns:1fr;gap:38px;align-items:center}
.lux-water-photo{margin:0;position:relative;overflow:hidden;min-height:300px;border-radius:3px}
.lux-water-photo img{width:100%;height:420px;object-fit:cover;object-position:center 60%;display:block;filter:saturate(.83)}
.lux-water-photo figcaption{position:absolute;bottom:15px;left:18px;background:#f7f7f1ec;padding:7px 10px;font-size:10px;font-weight:800;color:#264339;letter-spacing:.17em}
.lux-water-copy h2,.lux-broker-copy h2{font-size:clamp(39px,4.7vw,59px);margin:17px 0 23px}
.lux-water-copy p,.lux-broker-copy p{font-size:15px;color:#506358;max-width:590px;line-height:1.87}
.lux-water-copy p+p,.lux-broker-copy p+p{margin-top:13px}
.lux-small{font-size:12px!important;color:#778579!important;line-height:1.55!important}
.lux-underlined{display:inline-block;font-size:13px;font-weight:800;color:#274a39;border-bottom:1px solid #7a927f;margin-top:22px;padding-bottom:7px}
.lux-underlined:hover{color:#8d6b40}
.lux-broker{padding:98px 0;background:#fff}
.lux-broker-grid{display:grid;grid-template-columns:1fr;align-items:center;gap:48px}
.lux-broker-portrait{background:#e3e8e1;position:relative;overflow:hidden;border-radius:3px;min-height:320px;max-width:520px}
.lux-broker-portrait img{display:block;width:100%;height:410px;object-fit:cover;object-position:center 26%}
.lux-portrait-note{position:absolute;bottom:0;left:0;right:0;background:#203d35e8;padding:14px 19px;font-size:10px;letter-spacing:.16em;color:#fff;font-weight:700}
.lux-broker-copy{max-width:650px}
.lux-credential-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}
.lux-credential-list span{font-size:11px;color:#2c5140;letter-spacing:.02em;font-weight:800;padding:9px 12px;border:1px solid #cddbd2;background:#f5f8f3}
.lux-keys-note{padding:53px 0;background:#f7f6f1;border-top:1px solid #e1e7df}
.lux-keys-note-inner{display:grid;grid-template-columns:1fr;gap:20px;align-items:end}
.lux-keys-note h2{font-size:clamp(27px,3.6vw,41px);max-width:660px;margin:10px 0 11px}
.lux-keys-note p{font-size:14px;color:#63756b}
/* slight refinement of all inside pages */
.page-hero{padding:64px 0 72px}
.page-hero:before{background:linear-gradient(90deg,rgba(17,46,38,.91),rgba(21,44,36,.65))}
.page-hero h1{letter-spacing:-.047em}
.service-detail{scroll-margin-top:100px}
@media(min-width:650px){.lux-section-top{flex-direction:row;align-items:end}.lux-keys-note-inner{grid-template-columns:1.35fr .65fr}}
@media(min-width:850px){.lux-hero-inner{grid-template-columns:1.03fr .97fr;gap:48px;padding:56px 0 51px;min-height:540px}.lux-three-cards{grid-template-columns:repeat(3,1fr)}.lux-water-grid{grid-template-columns:.8fr 1.2fr;gap:92px}.lux-broker-grid{grid-template-columns:.8fr 1.2fr;gap:92px}.lux-broker-portrait img{height:520px}}
@media(max-width:600px){.lux-hero-inner{padding:42px 0 32px;gap:28px}.lux-hero h1{font-size:clamp(45px,12vw,63px)}.lux-hero-art img{height:290px}.lux-subtitle{margin:20px 0}.lux-services{padding:52px 0 65px}.lux-service-card{min-height:295px;padding:26px 24px}.lux-service-card h3{margin:22px 0 14px}.lux-water,.lux-broker{padding:65px 0}.lux-water-photo img{height:350px}.lux-broker-portrait img{height:390px}.lux-broker-grid{gap:27px}.lux-keys-note{padding:44px 0}}

/* Nov 9 staging-only polish: Keys Life link, Google rating and consultation form. */
.lux-journal-action{display:flex;align-items:center;justify-content:flex-start}
.lux-journal-action .lux-underlined{margin-top:0}
.lux-google-proof{padding:40px 0 44px;background:#fff;border-top:1px solid #e1e7df;border-bottom:1px solid #e1e7df}
.lux-google-proof .eyebrow{margin-bottom:10px}
.lux-google-rating{display:flex;align-items:baseline;justify-content:space-between;gap:10px 22px;flex-wrap:wrap;font:400 clamp(22px,2.6vw,32px)/1.3 Georgia,serif;color:#213c32;text-decoration:none}
.lux-google-rating span{font:700 12px/1.5 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#52665b;letter-spacing:.02em}
.lux-google-rating:hover{text-decoration:underline;text-underline-offset:5px}
.lux-testimonial-row[hidden]{display:none!important}
.lux-testimonial-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.lux-testimonial{margin:0;padding:25px;background:#f7f8f3;border:1px solid #dfe5dd}
.lux-testimonial blockquote{font:400 18px/1.5 Georgia,serif;margin:0 0 12px}
.lux-testimonial figcaption{color:#5a6d62;font-size:12px;font-weight:700}
.consultation-cta .cta-grid{align-items:start;gap:44px}
.consultation-cta .cta-intro{min-width:0}
.consultation-cta .cta-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:26px}
.lux-contact-text-link{font-size:13px;font-weight:750;color:#e9f1e8;border-bottom:1px solid #99b4a4;padding:6px 1px}
.lux-contact-text-link:hover{color:#fff;border-bottom-color:#fff}
.lux-form-panel{background:#f8f8f4;color:#203c32;padding:28px 30px 30px;border-radius:4px;min-width:0}
.lux-form-panel h3{font:400 clamp(26px,2.2vw,33px)/1.22 Georgia,serif;letter-spacing:-.035em;margin:0 0 22px}
.lux-consultation-form{display:flex;flex-direction:column;gap:16px}
.lux-consultation-form label{font-size:12px;line-height:1.5;font-weight:700;display:block;margin-bottom:6px;color:#365044}
.lux-consultation-form input,.lux-consultation-form textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #bfccc2;border-radius:2px;background:white;color:#203d35;font:400 15px/1.5 ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.lux-consultation-form textarea{resize:vertical;min-height:115px}
.lux-consultation-form input:focus,.lux-consultation-form textarea:focus{outline:2px solid #c6a576;outline-offset:2px}
.lux-form-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lux-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.lux-consultation-form .lux-submit{align-self:flex-start;background:#203d35;color:white;border-color:#203d35;border-radius:3px;cursor:pointer}
.lux-consultation-form .lux-submit:hover{background:#355b4c}
@media(min-width:900px){.consultation-cta .cta-grid{grid-template-columns:.92fr 1.08fr}}
@media(max-width:640px){.lux-form-two{grid-template-columns:1fr;gap:16px}.lux-form-panel{padding:25px 21px}.lux-google-proof{padding:32px 0}.lux-testimonial-row{grid-template-columns:1fr}}
/* Consultation result page uses existing colors and typography. */
.consultation-result{padding:clamp(55px,10vw,115px) 0;min-height:70vh;background:#f7f6f1;color:#203d35}
.consultation-result-brand{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:40px}
.consultation-result h1{font-size:clamp(38px,5vw,64px);max-width:760px;margin-bottom:20px}
.consultation-result p{font-size:17px;color:#52655a;max-width:650px}
.consultation-result-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}

/* V5 polish: photographs without caption overlays; contact details that fit. */
.contact-grid{grid-template-columns:minmax(0,1fr);gap:38px}
.contact-options{grid-template-columns:1fr;gap:17px}
.contact-option{min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:30px 34px}
.contact-option h2{max-width:100%;line-height:1.25;margin:12px 0 11px}
.contact-option h2 a{overflow-wrap:normal;word-break:normal}
.contact-option:nth-child(2) h2{font-size:clamp(20px,2vw,26px)!important;letter-spacing:-.03em}
.contact-option .btn{margin-top:22px!important}
.contact-note{min-width:0}
@media(min-width:900px){.contact-grid{grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:55px}}
@media(max-width:600px){.contact-option{padding:24px 22px}.contact-option:nth-child(2) h2{font-size:clamp(17px,4.3vw,24px)!important}}


/* V6: Services section heading containment, especially at iPad landscape widths. */
.service-detail{min-width:0}
.service-detail>div{min-width:0}
.service-detail h2{overflow-wrap:break-word;hyphens:none}
@media (min-width:650px) and (max-width:899px){
  .service-detail{grid-template-columns:minmax(0,1fr);row-gap:20px}
}
@media (min-width:900px){
  .service-detail{grid-template-columns:minmax(265px, .36fr) minmax(0,1fr);column-gap:38px}
  .service-detail h2{font-size:clamp(30px,3vw,38px);line-height:1.16}
}
@media (min-width:900px) and (max-width:1060px){
  .service-detail{grid-template-columns:265px minmax(0,1fr);column-gap:25px}
}
