/* FABULOMICS — responsive landing page | all styling in this file */
:root{--ink:#17212a;--ink-2:#27343c;--muted:#56606a;--paper:#fff;--surface:#f6f7f8;--line:#e5e9eb;--radius:17px;--shadow:0 14px 40px rgba(20,34,44,.065);--container:1320px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:85px}
body{margin:0;background:#fff;color:var(--ink);font-family:Inter,"Segoe UI",Arial,Helvetica,sans-serif;font-size:16px;-webkit-font-smoothing:antialiased}
body:has(dialog[open]){overflow:hidden}
button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75;flex-shrink:0}
svg.svg-sprite{width:0;height:0;position:absolute;overflow:hidden}
.container{width:min(var(--container),calc(100% - 112px));margin-inline:auto}
.sr-only{position:absolute!important;clip:rect(0,0,0,0);height:1px;width:1px;overflow:hidden;white-space:nowrap}
:focus-visible{outline:3px solid #6094b2;outline-offset:3px}
button,a,input,select{touch-action:manipulation}
/* Header */
.site-header{height:80px;background:#fff;z-index:100;position:relative;border-bottom:1px solid #edf0f1}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{font-size:32px;font-weight:800;letter-spacing:-1.75px;line-height:1;white-space:nowrap}
.brand sup{font-size:11px;vertical-align:top;position:relative;top:0;letter-spacing:0;font-weight:600;margin-left:2px}
.desktop-nav{display:flex;align-items:center;gap:31px;height:100%;margin-left:auto;margin-right:auto}
.nav-link{font-size:13px;font-weight:670;position:relative;white-space:nowrap;display:flex;align-items:center;height:100%;transition:color .15s}
.nav-link.active::after{content:"";height:2px;background:var(--ink);position:absolute;bottom:24px;left:0;right:0}
.nav-link:hover{color:#708b9b}
.header-actions{display:flex;align-items:center;gap:18px}
.icon-button,.menu-button{width:27px;height:36px;padding:0;display:grid;place-items:center;color:var(--ink);border:0;background:transparent;position:relative}
.icon-button svg{height:25px;width:25px;stroke-width:1.75}
.bag-count{position:absolute;right:-7px;top:-1px;background:var(--ink);border-radius:99px;color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;display:grid;place-items:center;padding:1px}
.menu-button,.mobile-nav{display:none}
/* Hero */
.hero{min-height:605px;position:relative;overflow:hidden;isolation:isolate;background:#e5ecf4}
.hero-backdrop{position:absolute;z-index:-3;inset:0;background:linear-gradient(90deg,rgba(243,246,249,.96) 0%,rgba(237,242,248,.83) 30%,rgba(226,236,246,.34) 67%,rgba(192,211,233,.66) 100%),url('../images/mountains.jpg') center 66%/cover no-repeat;opacity:1}
.hero::before{content:"";z-index:-1;position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(246,247,248,.55),transparent 31%,transparent 60%,rgba(219,230,243,.12))}
.hero-people{position:absolute;z-index:-2;left:29%;top:0;width:48%;height:100%;object-fit:cover;object-position:center 46%;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 15%,#000 78%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 15%,#000 78%,transparent 100%)}
.hero-inner{min-height:605px;display:flex;align-items:center;justify-content:space-between;gap:38px;position:relative;z-index:2;padding:32px 0}
.hero-content{max-width:440px;flex:0 1 440px;padding-bottom:3px}
.eyebrow{display:block;font-size:11px;letter-spacing:3.3px;font-weight:790;line-height:1.5;text-transform:uppercase}
.hero h1{font-size:clamp(45px,4.2vw,61px);line-height:1.064;letter-spacing:-2.8px;font-weight:800;margin:21px 0 15px}
.hero-content p{font-size:17px;line-height:1.53;letter-spacing:-.2px;margin:0 0 24px;max-width:380px;color:#1e2730}
.button{height:52px;border:0;border-radius:40px;padding:0 28px;display:inline-flex;align-items:center;justify-content:center;gap:18px;white-space:nowrap;font-size:13px;font-weight:750;transition:background .2s,transform .2s,box-shadow .2s}
.button svg{width:19px;height:19px;stroke-width:1.65}
.button-dark{background:#1b252e;color:white}
.button-dark:hover{background:#344856;transform:translateY(-1px);box-shadow:0 7px 20px #243c4b2a}
.lead-card{width:398px;flex:0 0 398px;border-radius:28px;background:rgba(255,255,255,.9);box-shadow:0 18px 55px rgba(35,56,77,.06);padding:28px 29px 23px;backdrop-filter:blur(10px)}
.lead-card h2{font-weight:800;letter-spacing:-1.05px;font-size:28px;line-height:1.12;margin:0 0 12px}
.lead-card>p{font-size:13.5px;line-height:1.45;margin:0 0 20px;max-width:305px;color:#202a31}
.input-wrap{height:43px;border-radius:999px;background:#fff;margin-bottom:11px;display:flex;align-items:center;position:relative;box-shadow:0 4px 13px rgba(22,34,49,.025);border:1px solid #f2f4f4}
.input-wrap>svg{position:absolute;left:16px;top:11px;width:19px;height:19px;stroke-width:1.8;pointer-events:none}
.input-wrap input,.input-wrap select{background:transparent;border:0;outline:none;width:100%;height:100%;padding:0 16px 0 45px;font-size:12.5px;color:var(--ink)}
.input-wrap select{appearance:none;padding-right:35px;cursor:pointer}
.input-wrap input::placeholder{color:#404b53;opacity:1}
.input-wrap:focus-within{border-color:#829cac;box-shadow:0 0 0 2px rgba(114,146,166,.12)}
.input-wrap .select-chevron{position:absolute;left:auto;right:14px;top:12px;width:17px;height:17px;pointer-events:none}
.lead-submit{width:100%;height:48px;margin-top:2px;padding:0 12px;gap:14px;font-size:12.5px}
.privacy-note{display:flex;align-items:flex-start;gap:11px;margin:18px 2px 0;color:#252e36;font-size:10.6px;line-height:1.35}
.privacy-note svg{width:19px;height:19px;stroke-width:1.45}
.form-feedback{font-size:12px;line-height:1.35;color:#1b654e}
.form-feedback:not(:empty){margin-top:11px;padding:10px 12px;border-radius:9px;background:#e2f2ea}
.form-feedback.error{color:#913e37;background:#fae9e7}
/* Quick benefits */
.benefit-strip{background:linear-gradient(#fff,#f9fafb);box-shadow:0 4px 23px #18232e06;border-bottom:1px solid #f0f1f2}
.benefit-grid{height:116px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center}
.benefit{height:45px;display:flex;justify-content:center;align-items:center;gap:19px;border-right:1px solid #e5e9ea;font-size:13px;font-weight:750;line-height:1.3}
.benefit:first-child{justify-content:flex-start;padding-left:24px}
.benefit:last-child{border:0}
.benefit svg{width:41px;height:41px;stroke-width:1.45}
.benefit:hover{color:#637f91}
/* Shared sections */
.section{padding:59px 0 62px}
.section-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:37px}
.section-heading h2{font-size:35px;font-weight:800;letter-spacing:-1.55px;line-height:1.2;margin:0}
.inline-link{display:inline-flex;align-items:center;gap:17px;font-size:13px;font-weight:760;white-space:nowrap}
.inline-link svg{height:19px;width:19px;transition:transform .2s}
.inline-link:hover svg{transform:translateX(4px)}
/* Categories */
.categories-section{padding-top:62px;padding-bottom:61px}
.category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.category-card{height:272px;position:relative;overflow:hidden;border-radius:16px;color:#fff;display:block;isolation:isolate;background:#a9b3b5}
.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.category-card:hover img{transform:scale(1.075)}
.category-card .image-scrim{position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,21,25,.82) 0%,rgba(16,26,31,.36) 36%,transparent 70%)}
.category-label{position:absolute;bottom:19px;left:22px;font-size:17px;line-height:1.18;font-weight:800;letter-spacing:-.3px}
.category-label svg{width:28px;height:28px;display:block;margin-bottom:13px;stroke-width:1.65}
/* Guides */
.guides-section{background:#f8f9f9;padding:65px 0 68px}
.guides-heading{margin-bottom:37px}
.filter-list{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.filter{border:0;background:#e9ebed;border-radius:999px;color:#252d35;padding:10px 18px;min-height:33px;font-size:12px;line-height:1;font-weight:750;transition:background .2s,color .2s}
.filter:hover{background:#d9e1e5}
.filter.active{background:#1c2730;color:#fff}
.guides-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:30px}
.featured-guide{min-height:476px;height:476px;text-align:left;position:relative;isolation:isolate;overflow:hidden;border:0;border-radius:17px;padding:0;color:#fff;background:#344958}
.featured-guide>img{height:100%;width:100%;object-fit:cover;object-position:center center;transition:transform .4s}
.featured-guide:hover>img{transform:scale(1.055)}
.featured-scrim{position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(11,22,30,.76) 100%)}
.featured-bottom{position:absolute;bottom:25px;left:28px;right:28px;display:block}
.guide-tag,.side-tag{display:inline-block;font-size:11px;border-radius:999px;padding:6px 10px;background:#fff;color:#2a3238;line-height:1;font-weight:650}
.featured-bottom>strong{display:block;font-size:29px;letter-spacing:-1px;line-height:1.18;margin-top:12px;font-weight:800}
.featured-meta{display:flex;align-items:center;gap:23px;margin-top:17px;font-size:12px;font-weight:650}
.featured-meta>span:first-child{display:flex;align-items:center;gap:7px}
.featured-meta svg{width:16px;height:16px}
.read-button{border:1px solid #fff;border-radius:100px;padding:6px 13px;display:flex;align-items:center;gap:6px;line-height:1}
.read-button svg{width:15px;height:15px}
.side-guides{display:flex;flex-direction:column;justify-content:space-between;gap:16px}
.side-guide{border:0;border-bottom:1px solid #e4e8eb;padding:0 0 15px;background:transparent;display:grid;grid-template-columns:42% 1fr;gap:22px;text-align:left;align-items:center;min-height:146px;width:100%}
.side-guide:last-child{border-bottom:0;padding-bottom:0}
.side-guide>img{width:100%;height:137px;object-fit:cover;border-radius:14px}
.side-guide-info{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.side-tag{background:#e8ebed;font-size:10.5px;padding:5px 10px}
.side-guide-info strong{font-size:18px;line-height:1.19;letter-spacing:-.55px;font-weight:780}
.reading-time{display:flex;align-items:center;gap:7px;font-size:12px;line-height:1;font-weight:650;color:#29353d}
.reading-time svg{width:15px;height:15px}
.side-guide:hover strong{color:#647f91}
/* Wellness banner */
.wellness-banner{position:relative;overflow:hidden;isolation:isolate;min-height:445px;background:linear-gradient(92deg,#f5f5f6 1%,#ece9eb 42%,#f2c3a7 100%)}
.wellness-ambient{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(246,245,246,.99),rgba(243,238,240,.88) 36%,rgba(241,223,219,.7) 62%,rgba(239,196,174,.4)),url('../images/sunrise.jpg') center 57%/cover}
.wellness-photo{position:absolute;z-index:-2;width:31%;height:100%;right:0;top:0;object-fit:cover;object-position:center 55%;-webkit-mask-image:linear-gradient(to right,transparent,#000 25%);mask-image:linear-gradient(to right,transparent,#000 25%)}
.wellness-layout{min-height:445px;display:grid;grid-template-columns:510px 260px 1fr;gap:38px;align-items:center}
.wellness-copy{padding:36px 0}
.wellness-copy h2{font-size:45px;letter-spacing:-1.95px;line-height:1.06;margin:13px 0 19px}
.wellness-copy p{font-size:16px;line-height:1.43;letter-spacing:-.14px;max-width:413px;margin:0 0 24px}
.wellness-pills{display:flex;flex-direction:column;gap:13px;position:relative;z-index:2}
.wellness-pills div{background:rgba(255,255,255,.76);border-radius:999px;display:flex;align-items:center;gap:19px;width:252px;min-height:55px;padding:10px 21px;font-size:14px;font-weight:760;backdrop-filter:blur(3px)}
.wellness-pills svg{width:27px;height:27px;stroke-width:1.55}
/* Product picks */
.picks-section{padding-top:63px;padding-bottom:64px}
.picks-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
.pick-card{background:#f4f5f6;border-radius:15px;overflow:hidden;min-width:0}
.pick-image{height:193px;position:relative;overflow:hidden}
.pick-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.pick-card:hover .pick-image img{transform:scale(1.05)}
.save-button{position:absolute;right:13px;top:12px;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:#fff;color:#1c2932;box-shadow:0 4px 14px #26354129;opacity:0;transform:translateY(-4px);transition:opacity .2s,transform .2s}
.pick-card:hover .save-button,.save-button:focus-visible,.save-button.saved{opacity:1;transform:none}
.save-button svg{width:18px;height:18px}
.save-button.saved{background:#1b252e;color:white}
.pick-body{padding:18px 22px 24px}
.pick-body h3{font-size:17px;line-height:1.2;margin:0 0 9px;letter-spacing:-.4px}
.pick-body p{font-size:13px;color:#364149;line-height:1.45;margin:0 0 19px;min-height:40px}
.explore-pick{display:flex;align-items:center;gap:12px;border:0;background:transparent;font-weight:800;font-size:13px;padding:0;color:#18242c}
.explore-pick svg{width:16px;height:16px;transition:transform .15s}
.explore-pick:hover svg{transform:translateX(4px)}
/* Community */
.community-banner{min-height:275px;display:flex;align-items:center;text-align:center;color:#fff;background:linear-gradient(180deg,rgba(30,47,58,.37),rgba(18,39,51,.89)),url('../images/mountains.jpg') center 52%/cover}
.community-banner>.container{padding:28px 0}
.community-banner h2{font-size:37px;letter-spacing:-1.4px;margin:0 0 23px;line-height:1.17}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.stat{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;position:relative}
.stat:not(:last-child)::after{content:"";width:1px;height:100px;background:rgba(255,255,255,.4);position:absolute;right:0;top:50%;transform:translateY(-50%)}
.stat svg{width:31px;height:31px;stroke-width:1.45}
.stat strong{font-weight:800;font-size:34px;letter-spacing:-.9px}
.stat span{font-size:14px}
/* Testimonials */
.reviews-section{padding-top:55px;padding-bottom:48px;background:#fdfdfd}
.reviews-section .section-heading{margin-bottom:33px}
.carousel-controls{display:flex;gap:12px}
.carousel-controls button{height:35px;width:35px;border-radius:50%;border:0;background:#fff;box-shadow:0 5px 17px #1c2d3b0f;display:grid;place-items:center}
.carousel-controls svg{width:17px;height:17px}
.carousel-controls .arrow-left{transform:rotate(180deg)}
.carousel-controls button:hover{background:#e9edf0}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.review-card{padding:28px 23px 25px;background:#fff;min-height:235px;border:1px solid #f0f2f3;border-radius:17px;display:flex;align-items:flex-start;gap:15px;box-shadow:0 7px 25px rgba(15,28,36,.055)}
.review-avatar{height:60px;width:60px;flex:0 0 60px;border-radius:50%;display:grid;place-items:center;font-size:16px;font-weight:800;letter-spacing:.08em;color:#163041;background:linear-gradient(135deg,#eef4fb,#dde8f3 42%,#f7ede6);box-shadow:inset 0 0 0 1px rgba(23,42,56,.08)}
.review-content{flex:1;display:flex;flex-direction:column;min-width:0}
.quote-mark{font-size:46px;color:#7db0cc;font-weight:750;font-family:Georgia,serif;height:26px;line-height:.85}
.review-card p{font-size:13.5px;line-height:1.48;letter-spacing:-.06px;margin:0 0 22px}
.review-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}
.review-bottom strong{font-size:13px;white-space:nowrap}
.stars{font-size:18px;color:#f8b72e;letter-spacing:0;white-space:nowrap}
/* Newsletter */
.newsletter-area{padding:4px 0 39px;background:#fdfdfd}
.newsletter-banner{min-height:238px;border-radius:23px;position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;background:linear-gradient(92deg,rgba(251,223,208,.98),rgba(249,217,202,.83) 43%,rgba(215,218,223,.03) 88%),url('../images/sunrise.jpg') center 60%/cover}
.newsletter-banner::after{content:"";position:absolute;z-index:-1;top:0;right:0;width:41%;height:100%;background:url('../images/hiker.jpg') center 43%/cover no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent,#000 48%);mask-image:linear-gradient(90deg,transparent,#000 48%)}
.newsletter-body{padding:32px 0 35px 72px;z-index:2}
.newsletter-body h2{font-size:42px;letter-spacing:-1.7px;margin:0 0 9px;line-height:1.1}
.newsletter-body p{font-size:14px;line-height:1.47;margin:0 0 20px}
.newsletter-form{display:flex;align-items:center;gap:13px}
.newsletter-input{background:rgba(255,255,255,.94);border-radius:99px;display:flex;align-items:center;gap:12px;width:330px;height:45px;padding:0 19px}
.newsletter-input svg{width:19px;height:19px;stroke-width:1.55}
.newsletter-input input{font-size:13px;outline:0;border:0;background:transparent;min-width:0;width:100%;height:100%}
.newsletter-form .button{height:45px;font-size:13px;padding:0 23px}
.newsletter-area .form-feedback:not(:empty){background:#fff9;max-width:460px}
/* Footer */
.site-footer{background:#1c252d;color:#fff;padding:47px 0 25px}
.footer-columns{display:grid;grid-template-columns:1.75fr .95fr .95fr .75fr;gap:55px}
.footer-brand{font-size:32px;letter-spacing:-1.7px}
.footer-about p{font-size:13px;line-height:1.55;color:#d6dde1;max-width:280px;margin:15px 0 20px}
.socials{display:flex;gap:14px}
.socials a{display:grid;place-items:center;color:#fff;width:23px;height:23px}
.socials svg{width:20px;height:20px;stroke-width:2}
.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.footer-links h3{font-size:14px;margin:3px 0 10px;font-weight:800}
.footer-links a{font-size:13px;line-height:1.1;color:#d4dadf}
.footer-links a:hover,.socials a:hover{color:#a8c6d8}
.footer-legal{display:flex;justify-content:space-between;margin-top:55px;padding-top:18px;border-top:1px solid #36414a;color:#a5b0b8;font-size:11px}
/* Dialogs and controls */
dialog.site-dialog{border:1px solid #ebeff0;border-radius:23px;max-width:min(560px,calc(100% - 30px));width:100%;padding:29px 32px 32px;color:var(--ink);box-shadow:0 30px 100px #132b3b48}
dialog.site-dialog::backdrop{background:rgba(14,27,36,.64);backdrop-filter:blur(5px)}
.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:21px}
.dialog-top h2{font-size:26px;letter-spacing:-1px;margin:0}
.dialog-close{border:0;background:#f0f2f3;border-radius:50%;width:37px;height:37px;display:grid;place-items:center}
.dialog-close svg{width:19px;height:19px}
.dialog-search{display:flex;align-items:center;gap:13px;border:1px solid #dce3e8;border-radius:13px;padding:0 15px;height:52px}
.dialog-search input{border:0;outline:0;flex:1;min-width:0;font-size:15px}
.search-results{margin-top:16px;display:grid;gap:9px}
.search-result{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:13px 15px;border:1px solid #e8edef;background:#fafbfc;border-radius:10px}
.search-result:hover{background:#ebf0f2}
.search-result strong{font-size:14px}.search-result small{margin-top:5px;font-size:12px;color:#62717b}
.quiz-dialog>p{font-size:14px;line-height:1.5}
.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:23px 0}
.quiz-options button{border-radius:12px;padding:16px;text-align:left;border:1px solid #dfe5e8;background:#f6f8f9;font-weight:700;font-size:14px}
.quiz-options button.selected{background:#e2ebf0;border-color:#3f6077;box-shadow:inset 0 0 0 1px #3f6077}
.dialog-action{width:100%}
.article-dialog-image{height:210px;width:100%;object-fit:cover;border-radius:12px;margin-bottom:18px}
.article-dialog h2{font-size:30px;line-height:1.15;letter-spacing:-1px;margin:7px 0 12px}
.article-text{font-size:15px;line-height:1.65;margin:18px 0 25px;color:#354650}
.article-text p{margin:0 0 12px}
.saved-row{display:grid;grid-template-columns:75px 1fr auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #e7ecef}
.saved-row img{height:70px;width:75px;object-fit:cover;border-radius:9px}
.saved-row button{border:0;background:#edf0f2;padding:9px;border-radius:7px}
.saved-empty{font-size:14px;line-height:1.5;color:#5a6872}
/* Responsive */
@media(max-width:1270px){.container{width:min(1170px,calc(100% - 70px))}.desktop-nav{gap:21px}.brand{font-size:29px}.hero-content{max-width:400px;flex-basis:400px}.hero h1{font-size:53px}.lead-card{width:372px;flex-basis:372px}.hero-people{left:27%;width:51%}.wellness-layout{grid-template-columns:minmax(355px,500px) 250px 1fr;gap:10px}.category-label{font-size:15px;left:16px}.guides-grid{gap:23px}.side-guide{gap:16px}.review-card{padding:23px 16px}.review-avatar{width:52px;height:52px;flex-basis:52px;font-size:14px}}
@media(max-width:1020px){.container{width:calc(100% - 52px)}.desktop-nav{gap:14px}.nav-link{font-size:11.5px}.header-actions{gap:10px}.brand{font-size:27px}.hero{min-height:560px}.hero-inner{min-height:560px}.hero h1{font-size:45px}.hero-content{max-width:345px;flex-basis:345px}.hero-content p{font-size:15px;max-width:290px}.hero-people{left:29%;width:46%}.lead-card{width:320px;flex-basis:320px;padding:23px}.lead-card h2{font-size:25px}.lead-card>p{font-size:12px}.category-grid{gap:11px}.category-card{height:245px}.category-label{font-size:14px;left:13px}.category-label svg{width:24px;height:24px}.section-heading h2{font-size:30px}.featured-guide{height:415px;min-height:415px}.side-guide>img{height:119px}.side-guide{min-height:125px}.side-guide-info strong{font-size:15px}.side-guide-info{gap:9px}.wellness-copy h2{font-size:36px}.wellness-layout{grid-template-columns:380px 205px 1fr}.wellness-pills div{width:204px}.pick-image{height:160px}.pick-body{padding:15px}.pick-body h3{font-size:15px}.pick-body p{font-size:12px}.review-card{gap:9px}.review-avatar{height:45px;width:45px;flex-basis:45px;font-size:13px}.review-card p{font-size:12px}.stars{font-size:15px}}
@media(max-width:790px){html{scroll-padding-top:72px}.site-header{height:70px;position:sticky;top:0}.container{width:calc(100% - 40px)}.brand{font-size:26px}.desktop-nav{display:none}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:4px;width:28px}.menu-button span{width:22px;height:2px;background:#1e2b36;border-radius:3px}.header-actions{gap:16px}.mobile-nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;box-shadow:0 16px 30px #162b3b18;padding:14px 23px 21px;grid-template-columns:repeat(2,1fr);gap:3px 15px}.mobile-nav.open{display:grid}.mobile-nav a{padding:11px 4px;font-size:14px;font-weight:700}.hero{min-height:unset}.hero-inner{min-height:630px;align-items:center;gap:16px}.hero-people{left:22%;top:0;width:59%;height:100%;object-position:center}.hero-backdrop{background:linear-gradient(90deg,#f1f4f8da,rgba(238,243,248,.4) 55%,#d2deed6e),url('../images/mountains.jpg') center/cover}.hero h1{font-size:clamp(38px,5.1vw,49px)}.hero-content{flex:1;max-width:320px}.hero-content p{max-width:275px;font-size:14px}.lead-card{width:300px;flex-basis:300px;padding:23px 21px}.lead-card h2{font-size:23px}.benefit-grid{height:100px}.benefit{gap:8px;font-size:10px}.benefit:first-child{padding:0}.benefit svg{width:29px;height:29px}.section{padding:45px 0}.section-heading{margin-bottom:25px}.category-grid{grid-template-columns:repeat(3,1fr);gap:13px}.category-card{height:218px}.category-label{font-size:16px;left:18px}.guides-grid{grid-template-columns:1fr;gap:20px}.featured-guide{min-height:330px;height:330px}.side-guides{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.side-guide{display:flex;flex-direction:column;align-items:stretch;min-height:unset;padding:0 0 10px;border:0}.side-guide>img{height:110px}.side-guide-info strong{font-size:14px}.wellness-layout{grid-template-columns:1fr 220px;min-height:400px}.wellness-banner{min-height:400px}.wellness-photo{width:37%}.wellness-copy h2{font-size:35px}.wellness-pills{margin-right:3px}.wellness-pills div{width:195px;min-height:47px;padding:9px 14px;font-size:12px}.wellness-pills svg{width:22px;height:22px}.picks-grid{grid-template-columns:repeat(2,1fr)}.pick-image{height:210px}.review-card{padding:16px 12px}.review-avatar{width:38px;height:38px;flex-basis:38px;font-size:12px}.review-bottom{flex-direction:column;align-items:flex-start}.footer-columns{gap:25px}.newsletter-body{padding-left:36px}.newsletter-banner{min-height:230px}}
@media(max-width:600px){.container{width:calc(100% - 36px)}.site-header{height:64px}.mobile-nav{top:64px}.brand{font-size:25px}.header-actions{gap:11px}.icon-button svg{height:22px;width:22px}.hero{min-height:unset}.hero-inner{min-height:unset;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 0 28px}.hero-people{top:0;left:26%;width:84%;height:390px;object-fit:cover;object-position:center top;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 20%,black 100%);mask-image:linear-gradient(to right,transparent 0%,black 20%,black 100%)}.hero::before{background:linear-gradient(90deg,#eef2f8 0%,rgba(238,243,249,.94) 24%,rgba(238,243,249,.44) 65%,transparent 100%)}.hero-content{max-width:100%;padding-top:62px;padding-bottom:43px;min-height:385px;z-index:1}.hero-content .eyebrow{font-size:9px;letter-spacing:2.5px}.hero h1{font-size:clamp(35px,9vw,49px);margin:17px 0 16px;letter-spacing:-1.8px}.hero-content p{font-size:13px;max-width:225px;line-height:1.47;margin-bottom:20px}.hero .button{height:44px;padding:0 21px;font-size:12px}.lead-card{width:100%;max-width:460px;flex-basis:auto;align-self:center;background:#ffffffee;padding:24px;box-shadow:0 8px 35px #28455e14}.lead-card h2{font-size:25px}.lead-card>p{max-width:100%}.input-wrap{height:45px}.benefit-grid{height:auto;grid-template-columns:repeat(2,1fr);padding:13px 0;gap:0}.benefit{justify-content:flex-start;padding:14px 7px!important;border-right:0;border-bottom:1px solid #ecf0f1;height:auto;min-height:61px;font-size:12px}.benefit:nth-last-child(-n+1){border:0}.benefit svg{height:32px;width:32px}.section{padding:43px 0}.section-heading{align-items:flex-start;gap:10px}.section-heading h2{font-size:26px;letter-spacing:-1px}.inline-link{font-size:11px;gap:5px;margin-top:6px}.inline-link svg{height:16px;width:16px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-card{height:225px}.category-label{font-size:16px}.guides-heading{flex-direction:column;align-items:stretch;gap:18px}.filter-list{justify-content:flex-start;gap:7px}.filter{font-size:11px;padding:10px 12px}.featured-guide{height:325px;min-height:325px}.featured-bottom{left:19px;bottom:19px}.featured-bottom>strong{font-size:24px}.side-guides{grid-template-columns:1fr;gap:12px}.side-guide{display:grid;grid-template-columns:38% 1fr;min-height:108px;gap:12px;padding-bottom:12px;border-bottom:1px solid #e8edef}.side-guide>img{height:110px}.side-guide-info strong{font-size:15px}.wellness-banner{min-height:560px}.wellness-layout{min-height:560px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:42px 0 30px;gap:24px}.wellness-copy{padding:0}.wellness-copy h2{font-size:34px}.wellness-copy p{max-width:305px;font-size:14px}.wellness-photo{width:65%;height:65%;top:auto;bottom:0}.wellness-pills{gap:8px}.wellness-pills div{min-height:38px;width:185px;font-size:12px;gap:12px}.picks-grid{gap:12px}.pick-image{height:145px}.pick-body{padding:12px}.pick-body h3{font-size:14px}.pick-body p{font-size:11.5px;min-height:51px}.explore-pick{font-size:12px}.save-button{opacity:1;transform:none;height:28px;width:28px;right:8px;top:8px}.community-banner{min-height:215px}.community-banner h2{font-size:25px}.stat strong{font-size:24px}.stat span{font-size:10px}.stat svg{width:22px;height:22px}.stat:not(:last-child)::after{height:80px}.reviews-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:13px;padding:4px 2px 15px;scrollbar-width:none}.reviews-grid::-webkit-scrollbar{display:none}.review-card{flex:0 0 min(87%,330px);scroll-snap-align:start;min-height:210px;padding:21px 18px}.review-avatar{width:48px;height:48px;flex-basis:48px;font-size:13px}.review-card p{font-size:13px}.review-bottom{flex-direction:row}.newsletter-area{padding-top:0;padding-bottom:22px}.newsletter-banner{min-height:270px;background-position:center}.newsletter-banner::after{width:65%;opacity:.45}.newsletter-body{padding:28px 20px;max-width:100%}.newsletter-body h2{font-size:30px}.newsletter-body p{font-size:12px;max-width:270px}.newsletter-form{flex-direction:column;align-items:stretch;gap:9px;width:min(310px,100%)}.newsletter-input{width:100%}.newsletter-form .button{width:100%}.site-footer{padding-top:40px}.footer-columns{grid-template-columns:repeat(2,1fr);gap:33px 20px}.footer-about{grid-column:1/-1}.footer-links{gap:10px}.footer-legal{gap:15px;flex-direction:column;margin-top:35px}.quiz-options{grid-template-columns:1fr}.site-dialog{max-height:90vh;overflow-y:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Refined on-device recommendation panel */
.plan-dialog .dialog-top{align-items:flex-start}
.plan-dialog #personalPlanSubtitle{font-size:14px;line-height:1.6;color:#556777;margin:7px 0 18px}
.plan-dialog .search-results{display:grid;gap:8px}

/* Brand information and contact: consistent with the home-page design. */
.footer-contact-email{display:inline-block;margin-top:4px;color:#f1f6fa;font-size:13px;letter-spacing:.01em;border-bottom:1px solid #71838f;padding-bottom:5px}
.footer-contact-email:hover{color:#a8c6d8;border-color:#a8c6d8}
.privacy-note a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.page-header-simple{height:80px;border-bottom:1px solid #e9ecef;background:#fff;position:relative;z-index:2}
.page-header-simple .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}
.back-home{font-weight:650;font-size:13px;display:inline-flex;align-items:center;gap:8px;color:#27343c;border:1px solid #dce5ea;padding:10px 17px;border-radius:100px;transition:background .2s}
.back-home:hover{background:#f1f5f8}
.subpage-hero{background:linear-gradient(110deg,rgba(244,247,250,.95),rgba(235,240,244,.83)),url('../images/mountains.jpg') center 55%/cover;border-bottom:1px solid #e9eef2;padding:86px 0 87px}
.subpage-hero .page-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:3px;font-weight:800;color:#627484}
.subpage-hero h1{font-size:clamp(42px,6.5vw,70px);letter-spacing:-.06em;line-height:1.02;margin:19px 0 15px;font-weight:760}
.subpage-hero p{font-size:17px;max-width:720px;line-height:1.7;color:#3d515f;margin:0}
.subpage-main{padding:66px 0 100px;background:linear-gradient(#fff,#fbfcfd)}
.page-content{width:min(860px,100%);margin:0 auto}
.page-content>section{margin:0 0 45px}
.page-content h2{font-size:clamp(24px,3vw,31px);letter-spacing:-.035em;line-height:1.2;margin:0 0 17px}
.page-content h3{font-size:18px;letter-spacing:-.02em;margin:25px 0 10px}
.page-content p,.page-content li{font-size:16px;line-height:1.8;color:#44535f}
.page-content p{margin:0 0 16px}
.page-content ul{padding-left:22px}
.page-content a:not(.contact-mail){text-decoration:underline;text-underline-offset:3px;color:#1f526f}
.page-content .content-card{border:1px solid #e8edf0;background:#fff;border-radius:19px;padding:32px 34px;box-shadow:0 8px 32px rgba(20,40,55,.035)}
.page-content .content-card + .content-card{margin-top:18px}
.page-content .contact-mail{font-size:clamp(23px,4vw,36px);font-weight:750;letter-spacing:-.04em;display:inline-block;margin:4px 0 15px;overflow-wrap:anywhere}
.page-content .contact-mail:hover{color:#53748d}
.page-content .subtle-text{font-size:13px;color:#687984}
.subpage-footer{background:#1c252d;padding:35px 0;color:#eef4f7}
.subpage-footer .container{display:flex;align-items:center;justify-content:space-between;gap:18px}
.subpage-footer a{color:#dde7ed;font-size:13px}
.subpage-footer .mini-links{display:flex;flex-wrap:wrap;gap:18px}
@media(max-width:600px){.page-header-simple{height:65px}.page-header-simple .brand{font-size:25px}.subpage-hero{padding:67px 0 62px}.subpage-hero p{font-size:15px}.subpage-main{padding:42px 0 64px}.page-content .content-card{padding:24px 20px}.subpage-footer .container{align-items:flex-start;flex-direction:column}}


/* Compact company information overlays — single-page site */
dialog.site-dialog.info-dialog {
  width: min(540px, calc(100% - 32px));
  max-width: min(540px, calc(100% - 32px));
  max-height: min(76dvh, 670px);
  overflow: auto;
  overscroll-behavior: contain;
  padding: 29px 31px 32px;
  scrollbar-width: thin;
  scrollbar-color: #c4ced4 transparent;
}
.info-dialog .dialog-top { align-items: flex-start; position: sticky; top: -29px; padding: 8px 0 16px; background: #fff; z-index: 1; margin-bottom: 12px; border-bottom: 1px solid #e8edf0; }
.info-dialog .dialog-top .eyebrow { display: block; margin-bottom: 10px; font-size: 9px; letter-spacing: 2px; color: #687a85; text-transform: uppercase; }
.info-dialog .dialog-top h2 { font-size: clamp(24px, 4.6vw, 29px); line-height: 1.12; letter-spacing: -.9px; }
.info-dialog .dialog-close { flex: 0 0 37px; }
.info-dialog-content { color: #3d505b; font-size: 14px; line-height: 1.68; }
.info-dialog-content section + section { margin-top: 19px; padding-top: 19px; border-top: 1px solid #edf0f2; }
.info-dialog-content section h2 { color: #15232d; margin: 0 0 7px; font-size: 17px; letter-spacing: -.3px; line-height: 1.3; }
.info-dialog-content section p { margin: 0 0 10px; }
.info-dialog-content section p:last-child { margin-bottom: 0; }
.info-dialog-content ul { margin: 8px 0 0; padding-left: 20px; }
.info-dialog-content li { margin: 7px 0; }
.info-dialog-content a { color: #245c78; text-underline-offset: 3px; text-decoration: underline; overflow-wrap: anywhere; }
.info-dialog-content a:hover { color: #0c3147; }
.info-dialog-content .subtle-text { color: #7b8992; font-size: 12px; }
.info-dialog-content .contact-mail { display: inline-block; margin: 2px 0 10px; font-size: 16px; font-weight: 750; }
@media(max-width:600px) {
  dialog.site-dialog.info-dialog { padding: 21px 20px 24px; max-height: min(80dvh, 670px); border-radius: 18px; }
  .info-dialog .dialog-top { top: -21px; padding: 5px 0 14px; }
  .info-dialog-content { font-size: 13.5px; line-height: 1.58; }
}
