/* Approved life-circle homes identity; artwork keeps its intrinsic proportions. */
:root{--green:#104c40;--ink:#183d34;--cream:#f5f2e7;--sand:#d6bc7c;--muted:#63736b;--brand-header-height:92px}
.site-header{height:var(--brand-header-height);padding-inline:4.5%;gap:24px}
.team-brand{display:inline-flex;align-items:center;gap:13px;min-width:0;color:var(--green)}
.team-logo{width:64px;height:64px;flex:none;border-radius:50%;object-fit:contain}
.team-wordmark{font-size:20px;letter-spacing:1.6px;line-height:1.5;white-space:nowrap;font-weight:800}
.team-wordmark small{display:block;font-size:10px;letter-spacing:2.1px;font-weight:500;margin-top:3px}
.site-header nav{font-size:13px;gap:24px;white-space:nowrap}
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:590px;height:calc(100svh - var(--brand-header-height));max-height:800px}
.hero-copy{justify-content:center;min-width:0;padding:48px clamp(32px,5.5vw,88px)}
.hero .eyebrow{display:flex;align-items:center;gap:14px}
.hero .short-rule{margin:0;width:26px;flex:none}
.hero-brand-label{font-size:14px;letter-spacing:2px}
.hero h1{font-size:clamp(44px,4.6vw,68px);line-height:1.3;margin:24px 0;letter-spacing:-1.5px}
.hero-intro{font-size:20px;line-height:1.85}
.hero-detail{font-size:14px;line-height:1.95;margin-top:19px;font-weight:400}
.hero .button-row{margin-top:30px;gap:24px}
.hero .button{font-size:14px;padding:14px 22px;gap:26px}
.team-hero-panel{min-height:0;background:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:38px;gap:27px;border-left:1px solid #ffffff26}
.team-hero-art{width:min(100%,430px);aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:0 14px 45px #183d340c}
.team-hero-art img{position:static;width:100%;height:100%;object-fit:contain}
.team-hero-panel figcaption{position:static;flex:none;background:transparent;border:0;padding:0;text-align:center;color:var(--green)}
.team-hero-panel figcaption span{font-size:15px;letter-spacing:.5px;font-weight:500}
.team-hero-panel figcaption small{font-size:11px;letter-spacing:4px;margin-top:10px;color:#7b795e;font-weight:500}
.team-service-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 5%;background:#e8eddf;border-bottom:1px solid #d4ddcc;color:var(--green);font-size:12px}
.team-service-strip>span:first-child{font-size:14px;letter-spacing:1px}
.team-service-strip>span:nth-child(2){font-weight:500;letter-spacing:1px}
.team-service-strip i{font-style:normal;color:#96a38b;margin-inline:14px}
.team-service-strip a{border-bottom:1px solid #8a9d84;padding-bottom:3px;white-space:nowrap}
.viewing-card-header{grid-template-columns:minmax(0,1fr) 94px;gap:18px;align-items:start}
.viewing-team-logo{display:block;width:94px;height:94px;overflow:hidden;border-radius:50%;border:1px solid #ded5bf;margin-top:2px}
.viewing-team-logo img{display:block;width:100%;height:100%;object-fit:contain;transform:none}
.viewing-host strong{font-size:16px;letter-spacing:.4px}
.viewing-host>span{font-size:12px}
.viewing-card .viewing-intro{line-height:1.85}
.partner-section{background:#e8eddf}
.partner-grid{grid-template-columns:minmax(0,.84fr) minmax(0,1fr);gap:9%}
.team-promise{background:var(--cream);padding:34px 34px 16px;border-top:3px solid #b59957;color:var(--green)}
.team-promise .eyebrow{font-size:11px;letter-spacing:2px;color:#6f7c66}
.team-promise h3{font-size:34px;line-height:1.5;letter-spacing:-.5px;margin-top:19px}
.team-promise ol{list-style:none;padding:0;margin:25px 0 0}
.team-promise li{display:flex;gap:17px;padding:21px 0;border-top:1px solid #d8ddce}
.team-promise li>span{font:400 13px/1.8 Arial,sans-serif;color:#9d8247;flex:none}
.team-promise strong{font-size:16px;font-weight:700;letter-spacing:.5px}
.team-promise p{font-size:12px;font-weight:400;color:var(--muted);line-height:1.8;margin-top:6px}
.partner-copy p{font-weight:400}
.company-brand .team-logo{width:76px;height:76px}
.company-brand .team-wordmark{font-size:20px;letter-spacing:1px}
.company-brand .team-wordmark small{font-size:10px;letter-spacing:1px}
.company-franchise-logo{width:150px;height:auto;margin-top:12px}
.company-details dd{font-weight:500}
.company-grid{gap:7%;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.footer-top{gap:26px}
.footer-brand .team-logo{width:62px;height:62px}
.footer-brand .team-wordmark{font-size:17px;letter-spacing:1px}
.footer-brand .team-wordmark small{font-size:9px;letter-spacing:1px}
.footer-service strong{font-size:13px}
.footer-service p{font-weight:400}
.footer-bottom span:last-child{font-family:inherit}
.privacy-page .site-header{position:relative}
.privacy-page .policy p{font-weight:400}
@media(min-width:1500px){.hero-copy{padding-left:max(8%,calc((100vw - 1280px)/2))}.team-hero-art{width:min(100%,480px)}}
@media(max-width:1100px){.site-header{padding-inline:3%;gap:16px}.site-header nav{gap:17px;font-size:12px}.team-wordmark{font-size:18px;letter-spacing:1px}.team-logo{width:58px;height:58px}.hero-copy{padding-inline:6%}.hero h1{font-size:46px}.hero-intro{font-size:18px}.hero-detail{font-size:13px}.hero .button-row{gap:17px}.hero .button{font-size:13px;gap:20px}.hero .text-link{font-size:13px;gap:14px}.team-hero-panel{padding:29px}.team-hero-panel figcaption span{font-size:13px}.viewing-card-header{grid-template-columns:minmax(0,1fr) 80px;gap:14px}.viewing-team-logo{width:80px;height:80px}.team-promise{padding:28px 26px 10px}.team-promise h3{font-size:30px}.company-brand .team-wordmark{font-size:17px}.company-brand .team-logo{width:62px;height:62px}}
@media(max-width:900px) and (min-width:761px){.site-header nav{gap:13px;font-size:11px}.site-header .nav-contact{padding:11px 12px}.nav-contact span{padding-left:5px}.team-wordmark{font-size:16px}.team-wordmark small{font-size:9px;letter-spacing:1px}.hero h1{font-size:42px}.hero .button-row{gap:14px}.hero .button{padding:12px 14px;gap:14px}.hero .text-link{gap:8px}.footer-top{flex-wrap:wrap}.footer-service{margin-left:auto}.footer-links{flex-direction:row;width:100%;gap:20px}}
@media(max-width:760px){:root{--brand-header-height:80px}.site-header{padding-inline:6%;gap:15px}.team-brand{gap:10px}.team-logo{width:55px;height:55px}.team-wordmark{font-size:17px;letter-spacing:1px}.team-wordmark small{font-size:9px;letter-spacing:1.3px}.site-header nav{top:80px;font-size:15px}.menu-toggle{gap:9px;padding-left:8px;flex:none}.hero{grid-template-columns:1fr;height:auto;max-height:none;min-height:0}.hero-copy{padding:43px 7% 39px}.hero-brand-label{font-size:12px}.hero h1{font-size:47px;margin:24px 0 21px}.hero-intro{font-size:19px}.hero-detail{font-size:14px;margin-top:18px}.hero .button-row{margin-top:27px;gap:24px}.hero .button{padding:14px 20px;font-size:14px;gap:22px}.hero .text-link{font-size:13px;gap:18px}.team-hero-panel{min-height:0;padding:29px 7% 27px;gap:21px}.team-hero-art{width:min(76vw,330px);max-width:100%}.team-hero-panel figcaption span{font-size:13px;letter-spacing:0}.team-hero-panel figcaption small{font-size:10px;letter-spacing:3px;margin-top:7px}.team-service-strip{display:grid;grid-template-columns:1fr;gap:9px;justify-items:center;text-align:center;padding:22px 7%;font-size:11px}.team-service-strip>span:first-child{font-size:13px}.team-service-strip i{margin-inline:9px}.team-service-strip a{margin-top:3px}.viewing-card-header{grid-template-columns:minmax(0,1fr) 92px;gap:16px}.viewing-team-logo{width:92px;height:92px}.partner-grid{grid-template-columns:1fr;gap:32px}.team-promise{padding:27px 27px 9px}.team-promise h3{font-size:30px;margin-top:14px}.team-promise h3 br{display:none}.team-promise ol{margin-top:21px}.team-promise li{padding:19px 0}.company-grid{grid-template-columns:1fr;gap:28px}.company-brand .team-logo{width:67px;height:67px}.company-brand .team-wordmark{font-size:19px}.footer-top{gap:25px}.footer-brand .team-logo{width:58px;height:58px}.footer-brand .team-wordmark{font-size:18px}.privacy-page .site-header>.text-link{font-size:11px;white-space:nowrap}.privacy-page .team-wordmark{font-size:15px}.privacy-page .team-wordmark small{font-size:8px;letter-spacing:.3px}.privacy-page .team-logo{width:46px;height:46px}}
@media(max-width:400px){.team-wordmark{font-size:15px;letter-spacing:.5px}.team-wordmark small{font-size:8px;letter-spacing:.7px}.team-logo{width:48px;height:48px}.menu-toggle{font-size:12px;gap:7px}.hero h1{font-size:42px}.hero .button-row{gap:20px}.hero .button{padding:13px 16px;gap:18px}.viewing-card-header{grid-template-columns:minmax(0,1fr) 70px;gap:11px}.viewing-team-logo{width:70px;height:70px}.viewing-host strong{font-size:14px}.viewing-host>span{font-size:11px}.viewing-card h3{font-size:19px}.team-promise h3{font-size:27px}.privacy-page .site-header{padding-inline:4%;gap:10px}.privacy-page .team-brand{gap:7px}.privacy-page .team-wordmark{font-size:13px}.privacy-page .team-wordmark small{font-size:7px}.privacy-page .team-logo{width:42px;height:42px}}

/* Align the full header contents with the main content at every breakpoint. */
body:not(.privacy-page) .site-header{padding-inline:max(var(--content-gutter),calc((100% - var(--content-max-width))/2 + var(--content-gutter)))}
