/* SANUSLIFE / human-centred AI team. Kept separate from the established shell. */
:root{--team-ink:#123047;--team-muted:#526a79;--team-cyan:#65d7e1;--team-lime:#c9e75d}
.portrait{display:block;flex:none;background-image:url('assets/team-portraits-v2.jpg');background-size:300% 200%;background-position:var(--portrait-x,0%) var(--portrait-y,0%);background-repeat:no-repeat;background-color:#0c1c2c;overflow:hidden}
.portrait-emma{--portrait-x:0%;--portrait-y:0%}
.portrait-alex{--portrait-x:50%;--portrait-y:0%}
.portrait-luca{--portrait-x:100%;--portrait-y:0%}
.portrait-james{--portrait-x:0%;--portrait-y:100%}
.portrait-sofia{--portrait-x:50%;--portrait-y:100%}
.portrait-daniel{--portrait-x:100%;--portrait-y:100%}
.hero-copy h1{font-size:clamp(3.4rem,5.9vw,5.8rem);line-height:1.015;letter-spacing:-.06em;max-width:680px}
.hero-copy h1 em{color:#74dbe4}
.hero-copy .hero-lead{font-size:1.05rem;line-height:1.75;max-width:490px;color:#d8e8f2}
.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.16em}
.hero-stage{min-height:630px;padding-block:66px 78px}
.hero-actions{gap:12px;flex-wrap:wrap}
.hero-actions .button{min-height:54px;font-size:.94rem;padding:15px 20px;gap:10px}
.hero-actions .lime{background:var(--team-lime);color:#11283e;box-shadow:0 6px 22px #030f2226}
.hero-actions .glass{background:#142c465c;border-color:#a5c4d052;color:#fff}
.hero-actions svg{width:19px;height:19px;stroke-width:2}
.hero-signature{display:block;color:#bbd2df;font-size:.875rem;margin-top:23px}
.hero-signature a{margin-left:5px;text-decoration:underline;text-underline-offset:4px;color:#fff}
.hero-companion{position:absolute;right:1%;bottom:85px;max-width:395px;width:38%;display:flex;align-items:center;gap:15px;padding:17px 18px;color:#143149;background:#fffffff2;border:1px solid #fff;border-radius:18px;box-shadow:0 18px 58px #020d2550;text-decoration:none;backdrop-filter:blur(14px);transition:transform .2s,box-shadow .2s}
.hero-companion:hover{transform:translateY(-4px);text-decoration:none;box-shadow:0 22px 65px #020d2566}
.hero-companion>.portrait{width:62px;height:62px;border-radius:50%}
.hero-companion small{display:block;font-size:.625rem;letter-spacing:.09em;font-weight:700;color:#496b7f;margin-bottom:5px}
.hero-companion strong{display:block;font-size:1.05rem;letter-spacing:-.03em;margin-bottom:3px}
.hero-companion>span>span{display:block;font-size:.75rem;line-height:1.55;color:#526f81}
.companion-wave{display:flex;align-items:center;gap:3px;margin-left:auto;color:#2793a7}
.companion-wave i{width:3px;height:12px;border-radius:3px;background:currentColor}
.companion-wave i:nth-child(2),.companion-wave i:nth-child(3){height:23px}
.hero-bottom{font-size:.8rem;padding-bottom:26px}
.hero-bottom>span,.hero-bottom>a{font-size:.8rem}
.hero-bottom i{font-style:normal}
.team-spotlight{padding-block:76px 66px}
.team-heading{align-items:flex-end;margin-bottom:34px}
.team-heading .eyebrow{font-size:.75rem;letter-spacing:.15em;color:#287b8e}
.team-heading h2{font-size:clamp(2.1rem,3.5vw,3.4rem);letter-spacing:-.045em;color:var(--team-ink)}
.team-heading h2 span{color:#487d8d}
.team-heading>p{font-size:1rem;color:var(--team-muted);max-width:410px;line-height:1.7}
.room-grid{gap:16px;grid-template-columns:repeat(6,minmax(0,1fr))}
#room-grid .room-card{padding:0;min-height:0;border-radius:18px;border:1px solid #dce7ed;background:#fff;box-shadow:0 6px 20px #16334a08;color:var(--team-ink);display:flex;flex-direction:column;transition:transform .22s,box-shadow .22s,border-color .22s}
#room-grid .room-card::after{display:none}
#room-grid .room-card:hover{transform:translateY(-7px);border-color:#70bbc6;box-shadow:0 20px 35px #16475618}
#room-grid .room-card[aria-pressed=true]{border-color:#2488a0;box-shadow:0 0 0 2px #2488a0,0 18px 35px #16475615}
.room-visual{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;background:#0c1c2c}
.room-visual>.portrait{position:absolute;inset:0;width:100%;height:100%;transition:transform .35s}
.room-card:hover .room-visual>.portrait{transform:scale(1.035)}
.ai-badge{position:absolute;top:12px;right:12px;font-size:.6875rem;letter-spacing:.08em;font-weight:700;color:#edf8ff;border:1px solid #b4e8f45e;background:#092538b0;padding:3px 6px;border-radius:5px;backdrop-filter:blur(5px)}
.room-content{padding:20px 17px 16px;display:flex;flex-direction:column;flex:1;min-width:0}
.room-category{font-size:.625rem;letter-spacing:.11em;font-weight:750;color:#30697c;margin:0 0 8px}
#room-grid .room-card h3{font-size:1.36rem;letter-spacing:.035em;color:#15384e;line-height:1.1;margin:0 0 12px}
#room-grid .room-card p{font-size:.875rem;line-height:1.6;color:#526778;margin:0 0 20px;max-width:none}
.room-action{font-size:.8125rem;line-height:1.5;font-weight:700;margin-top:auto;padding-top:12px;border-top:1px solid #e5ecef;color:#1a687e}
.team-disclosure{color:#526a79;font-size:.75rem;line-height:1.65;margin:22px 0 0;text-align:center}
.consult-section{background:linear-gradient(145deg,#eff7fa,#e4f2f6);padding-block:68px}
.consult-heading h2{font-size:clamp(2rem,3.2vw,3rem);letter-spacing:-.04em}
.consult-heading>p{font-size:1rem;color:#526a79;line-height:1.7}
.consult-heading .eyebrow{font-size:.75rem;letter-spacing:.14em}
.advisor-workspace{grid-template-columns:172px minmax(0,1fr) 290px;gap:18px}
.advisor,.live-discovery{height:670px;box-shadow:0 14px 38px #16354b09}
body .advisor .avatar.portrait{width:54px!important;height:54px!important;background-image:url('assets/team-portraits-v2.jpg');background-size:300% 200%;background-position:var(--portrait-x) var(--portrait-y);background-color:#0c1c2c;border-radius:50%;border:2px solid #dcecef}
.advisor-header{padding:20px;gap:13px}
.advisor-identity h2{font-size:1.3rem;letter-spacing:.025em}
.advisor-identity p{font-size:.75rem;line-height:1.5;color:#4e6779}
.advisor .icon-button{width:40px;height:40px}
.advisor-routing{padding:10px 18px;gap:7px}
.advisor-routing label,.advisor-routing select{font-size:.8125rem}
.messages{padding:24px 22px 10px}
.message{font-size:1rem;line-height:1.75}
.message-label{font-size:.6875rem;letter-spacing:.1em}
.source-link{font-size:.75rem;line-height:1.45;padding:6px 9px}
.replay-answer{font-size:.8125rem;min-height:36px}
.suggestions{gap:7px;padding:0 14px 12px}
.suggestion{font-size:.8125rem;line-height:1.4;padding:9px 12px;min-height:39px;white-space:normal;text-align:left}
.composer{padding:8px;gap:9px;margin-inline:14px;border-color:#bbd5df;background:#f6fafc}
.composer textarea{font-size:1rem;line-height:1.5;min-height:43px}
.mic-button,.send-button{width:44px;height:44px;flex-shrink:0}
.composer-note{font-size:.75rem;line-height:1.5;margin:9px 17px 15px;color:#536b7b}
.voice-bar{font-size:.875rem;padding:9px 16px}
.voice-bar button{font-size:.8125rem;min-height:38px}
#workspace-rooms{gap:7px}
.workspace-room{padding:9px;border-radius:12px;gap:9px;align-items:center;min-height:58px;white-space:normal}
.workspace-room>.portrait{width:38px;height:38px;border-radius:50%;background-size:300% 200%;background-position:var(--portrait-x) var(--portrait-y);flex-shrink:0}
.workspace-room-copy{text-align:left;display:grid;gap:2px;min-width:0;line-height:1.3}
.workspace-room[aria-pressed]>.portrait{display:block;background-image:url('assets/team-portraits-v2.jpg');background-size:300% 200%;background-position:var(--portrait-x) var(--portrait-y);background-color:#0c1c2c}
.workspace-room[aria-pressed]>.workspace-room-copy{display:grid;width:auto;height:auto;flex:1;place-items:initial;background:transparent;border-radius:0}
.workspace-room-copy strong{font-size:.75rem;font-weight:750;letter-spacing:.04em;color:#183f55}
.workspace-room-copy small{font-size:.6875rem;color:#526f80}
.workspace-room[aria-pressed=true]{background:#fff;border-color:#8ec0ce;box-shadow:0 5px 15px #1944500a}
.sidebar-caption{font-size:.75rem;letter-spacing:.12em}
.sidebar-library,.role-menu a{font-size:.8125rem}
.pet-portrait>p{font-size:.8125rem;color:#486a7f}
.discovery-header{padding:22px 20px 16px}
.discovery-header .eyebrow{font-size:.6875rem;letter-spacing:.1em}
.discovery-header h2{font-size:1.4rem;letter-spacing:-.035em}
.discovery-header>p:last-child{font-size:.875rem;line-height:1.65;color:#526d7d}
.live-products .product-body{padding:16px}
.live-products .product-card h3{font-size:.9rem;line-height:1.5}
.live-products .product-price{font-size:1rem}
.live-products .product-links button{font-size:.75rem;min-height:36px}
.discovery-all{font-size:.8125rem;padding:14px}
.discovery-empty p{font-size:.9rem}
.return-advisor{font-size:.875rem;min-height:56px;padding:6px 18px 6px 6px;gap:10px;background:#fff;box-shadow:0 8px 28px #092c4726;border-color:#d6e6eb}
.return-advisor .small-avatar.portrait{width:42px;height:42px;border-radius:50%;background-image:url('assets/team-portraits-v2.jpg');background-size:300% 200%;background-position:var(--portrait-x) var(--portrait-y)}
.section-heading>p,.planet-section p:not(.eyebrow),.business-layout>div>p:not(.eyebrow),.app-section p:not(.eyebrow){font-size:1rem;line-height:1.75}
.product-card h3{font-size:1rem;line-height:1.5}
.product-title-button{max-width:100%;overflow-wrap:anywhere}
.product-brand{font-size:.75rem;letter-spacing:.07em}
.product-description{font-size:.875rem;line-height:1.65}
.product-links button{font-size:.8125rem;min-height:38px}
.catalog-heading,.catalog-heading button,.catalog-footer p{font-size:.875rem}
.document-links a{font-size:.875rem;min-height:44px}
.main-nav,.audience-nav button,.header-admin{font-size:.875rem}
.page-section p,.page-section li{font-size:1rem;line-height:1.75}
.page-links a{min-height:42px;font-size:.875rem}
.source-meta,.app-launch-note,.fineprint{font-size:.75rem!important;line-height:1.6}
@media(max-width:1150px){
  .room-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
  .room-card{flex-direction:row!important;align-items:stretch}
  .room-visual{width:38%;aspect-ratio:auto;flex:none}
  .room-visual>.portrait{width:210px;height:210px;max-width:none;left:50%;top:50%;transform:translate(-50%,-50%)}
  .room-card:hover .room-visual>.portrait{transform:translate(-50%,-50%) scale(1.03)}
  .room-content{padding:19px 15px}
  #room-grid .room-card p{font-size:.8125rem;margin-bottom:12px}
  #room-grid .room-card h3{font-size:1.2rem}
  .room-action{font-size:.75rem}
  .hero-companion{right:0;width:39%;bottom:76px}
  .companion-wave{display:none}
  .advisor-workspace{grid-template-columns:135px minmax(0,1fr) 235px;gap:12px}
  .workspace-room{padding:8px 6px;gap:6px}
  .workspace-room>.portrait{width:30px;height:30px}
  .workspace-room-copy strong{font-size:.6875rem}
  .workspace-room-copy small{font-size:.625rem}
}
@media(max-width:900px){
  .hero-stage{min-height:580px}
  .hero-copy h1{font-size:3.8rem}
  .hero-actions .button{font-size:.875rem}
  .hero-companion{padding:13px;gap:10px}
  .hero-companion>.portrait{width:48px;height:48px}
  .hero-companion small{font-size:.55rem}
  .hero-companion strong{font-size:.875rem}
  .hero-companion>span>span{font-size:.6875rem}
  .room-grid{gap:14px}
  .room-card{flex-direction:column!important}
  .room-visual{width:100%;aspect-ratio:1/1}
  .room-visual>.portrait{inset:0;width:100%;height:100%;transform:none}
  .room-card:hover .room-visual>.portrait{transform:scale(1.03)}
  .room-content{padding:20px}
  #room-grid .room-card p{font-size:.875rem}
  .advisor-workspace{grid-template-columns:1fr 270px;gap:16px}
  .advisor-sidebar{grid-column:1/-1;display:flex;flex-direction:row;align-items:center;padding:0}
  .advisor-sidebar .pet-portrait,.advisor-sidebar .sidebar-caption,.advisor-sidebar .role-menu,.advisor-sidebar .sidebar-library{display:none}
  #workspace-rooms{display:flex;flex-direction:row;overflow-x:auto;gap:8px;width:100%;padding:4px 2px 12px;scrollbar-width:thin}
  .workspace-room{min-width:132px;flex-shrink:0;min-height:58px;border:1px solid #cddfe6;padding:8px}
  .workspace-room-copy strong{font-size:.75rem}
  .workspace-room-copy small{font-size:.6875rem}
  .workspace-room>.portrait{width:35px;height:35px}
}
@media(max-width:760px){
  .site-header{height:82px}
  .site-header .brand img{width:148px}
  .header-admin{font-size:.75rem}
  .hero-stage{min-height:0;padding-top:43px;padding-bottom:0;grid-template-columns:minmax(0,1fr)}
  .hero-copy{min-width:0}
  .hero-copy h1{font-size:clamp(2.4rem,11.8vw,4.1rem);max-width:590px;line-height:1.04;margin-bottom:23px}
  .hero-copy .eyebrow{font-size:.6875rem;letter-spacing:.13em}
  .hero-copy .hero-lead{font-size:1rem;line-height:1.65;max-width:550px}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:25px;max-width:420px}
  .hero-actions .button{width:100%;min-height:51px;font-size:.9375rem;padding:13px 16px}
  .hero-signature{font-size:.8125rem;line-height:1.6;margin-top:18px}
  .hero-signature a{margin-left:0}
  .hero-glow{background:linear-gradient(180deg,#081c38 0%,#081c38 42%,#081c3860 70%,#081c3822 100%),url('assets/hero-universe-v2.jpg') 74% bottom/auto 510px no-repeat,#081c38}
  .hero-universe{height:250px;margin:0 -15px;overflow:visible}
  .hero-companion{position:absolute;bottom:20px;right:0;width:auto;left:0;max-width:370px;margin:auto;padding:15px;gap:12px;border-radius:16px}
  .hero-companion>.portrait{width:56px;height:56px}
  .hero-companion small{font-size:.5625rem;letter-spacing:.07em}
  .hero-companion strong{font-size:1rem}
  .hero-companion>span>span{font-size:.75rem}
  .hero-bottom{padding-block:16px 20px;display:flex;justify-content:center}
  .hero-bottom>span{display:none}
  .hero-bottom>a.hero-team-link{display:block;font-size:.875rem}
  .team-spotlight{padding-block:49px 42px}
  .team-heading h2{font-size:2.25rem}
  .team-heading .eyebrow{font-size:.6875rem;letter-spacing:.12em}
  .team-heading>p{font-size:1rem;line-height:1.65;margin-top:19px}
  .room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  #room-grid .room-card{border-radius:15px}
  .room-content{padding:17px 14px 14px}
  .room-category{font-size:.625rem;letter-spacing:.08em;margin-bottom:7px}
  #room-grid .room-card h3{font-size:1.35rem;margin-bottom:10px}
  #room-grid .room-card p{font-size:.875rem;line-height:1.6;margin-bottom:14px}
  .room-action{font-size:.75rem;padding-top:12px}
  .team-disclosure{font-size:.75rem;line-height:1.6;text-align:left}
  .consult-section{padding-block:43px}
  .consult-heading h2{font-size:2.3rem}
  .consult-heading>p{font-size:1rem;line-height:1.7}
  .consult-heading .eyebrow{font-size:.6875rem}
  .advisor-workspace{grid-template-columns:minmax(0,1fr);gap:14px}
  .advisor-sidebar{grid-column:auto;min-width:0}
  .advisor{height:720px;max-height:none;min-height:600px;border-radius:18px}
  .advisor-header{padding:17px 14px;gap:10px}
  body .advisor .avatar.portrait{width:48px!important;height:48px!important}
  .advisor-identity h2{font-size:1.17rem}
  .advisor-identity p{font-size:.75rem}
  .advisor .icon-button{width:36px;height:36px;flex-shrink:0}
  .advisor-routing{padding:9px 12px;gap:6px;flex-wrap:nowrap}
  .advisor-routing label{font-size:.75rem}
  .advisor-routing select{font-size:.75rem;min-width:0}
  .messages{padding:20px 16px 9px;min-height:95px}
  .message{font-size:1rem;line-height:1.7}
  .suggestions{padding:0 11px 9px;max-height:95px;overflow:auto}
  .suggestion{font-size:.8125rem;min-height:39px;padding:9px 11px}
  .composer{margin-inline:10px;gap:6px;padding:7px}
  .composer textarea{font-size:1rem;min-height:43px}
  .composer-note{font-size:.6875rem;margin:8px 13px 12px;line-height:1.5}
  .answer-products-wrap{padding:9px 11px}
  .compact-heading{font-size:.75rem;margin-bottom:9px}
  .answer-products{gap:10px}
  .mini-product{min-width:258px;width:258px;grid-template-columns:54px minmax(0,1fr);padding:9px;gap:10px;border-radius:12px}
  .mini-product h3{font-size:.8125rem;line-height:1.4;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .mini-product .product-price{font-size:.8125rem;margin-bottom:6px}
  .mini-product .product-links{gap:6px;display:flex;flex-wrap:wrap}
  .mini-product .product-links button{font-size:.6875rem;min-height:32px;padding:4px 6px}
  .mini-visual{width:54px;height:74px}
  .mini-visual img{max-width:42px;max-height:68px}
  #answer-products-wrap{flex-shrink:0}
  #answer-products .mini-product{max-height:none;min-height:164px;align-items:start;align-content:start}
  #answer-products .mini-body{min-width:0}
  #answer-products .mini-product h3{display:block;max-height:none;overflow:visible}
  #answer-products .product-title-button{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;max-height:4.2em;min-height:44px;line-height:1.4;text-align:left}
  #answer-products .product-links button{min-height:40px;font-size:.75rem}
  #answer-products .product-links button:last-child{display:none}
  .live-discovery{height:auto;max-height:none}
  .live-products .product-card{width:234px;min-width:234px}
  .live-products .product-card h3{font-size:.9375rem}
  .live-products .product-visual{height:154px}
  .live-products .product-visual img{max-height:126px}
  .product-card h3{font-size:.9375rem;line-height:1.5}
  .product-brand{font-size:.625rem}
  .product-body{padding:14px}
  .product-description{font-size:.8125rem;line-height:1.65}
  .product-price{font-size:1rem}
  .product-links button{font-size:.75rem;min-height:38px}
  .catalog-heading{font-size:.8125rem}
  .catalog-heading button{font-size:.8125rem;max-width:165px}
  .product-search input,.product-search .button{font-size:1rem}
  .section-heading>p,.planet-section p:not(.eyebrow),.business-layout>div>p:not(.eyebrow),.app-section p:not(.eyebrow){font-size:1rem}
  .return-advisor{right:12px;bottom:max(12px,env(safe-area-inset-bottom));font-size:.8125rem;min-height:52px;padding-right:15px}
  .return-advisor .small-avatar.portrait{width:38px;height:38px}
  .page-section{padding:23px}
  .page-section p,.page-section li{font-size:1rem}
  .business-layout{grid-template-columns:minmax(0,1fr)}
  .business-layout>div,.business-topics button,.business-topics button>div{min-width:0}
  .business-topics h3,.business-topics p{overflow-wrap:anywhere}
  .business-layout h2{font-size:clamp(2rem,8.5vw,3rem);overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .room-card,.room-visual>.portrait,.hero-companion{transition:none!important}
  .room-card:hover,.room-card:hover .room-visual>.portrait,.hero-companion:hover{transform:none!important}
}
.product-merchant{font-size:11px!important;line-height:1.45!important;color:#527283;overflow-wrap:anywhere;margin:6px 0 10px!important}
.preview-more{min-height:46px;width:100%;font-size:13px;grid-column:1 / -1;white-space:normal}
.checkout-payment-info{display:flex;flex-direction:column;gap:12px;border-top:1px solid #d8e5eb;margin-top:24px;padding-top:20px}
.checkout-payment-info p{font-size:13px;color:#607989;line-height:1.6}.checkout-payment-info button:disabled{opacity:.65;cursor:not-allowed;white-space:normal}
