/* Shared typography and restrained layouts across all pages. */
.container{width:min(1140px,calc(100% - 44px))}
.brand{font-size:22px;letter-spacing:-.045em;gap:12px;line-height:1.2}
.brand img{width:48px;height:48px;border-radius:11px}
.nav-wrap{gap:18px;min-height:90px}
nav{gap:20px}
nav>a:not(.btn){font-size:15px}
.nav-download{font-size:14px;padding:14px 17px}
.hero-grid{grid-template-columns:1.1fr 1fr;gap:30px;min-height:540px}
.hero h1{font-size:clamp(2.3rem,4.2vw,3.25rem);margin-top:0}
.hero p{font-size:16px;line-height:1.9}
.hero-art{padding:0;background:none}
.hero-art img{filter:none;border-radius:22px}
.section-head{max-width:950px;margin-bottom:32px}
.section-head h2{margin:0}
.about-copy{font-size:16px;line-height:1.85;color:#656373}
.about-copy p{margin-bottom:20px}
.about-copy p:last-child{margin-bottom:0}
.download-panel{padding:0;border:0;border-radius:0;background:none;box-shadow:none;grid-template-columns:1.5fr .6fr;gap:45px}
.download-copy p{font-size:16px;line-height:1.85}
.download-mark img{width:280px;border-radius:0;box-shadow:none}
.download-copy h3{margin-top:0}
.table-scroll{border-radius:0;border:0;background:transparent}
table{font-size:14px}
th,td{padding:17px 15px}
.file-download{display:inline-flex;align-items:center;gap:7px;font-weight:600;white-space:nowrap}
.file-download svg{width:18px;height:18px}
.steps{gap:30px}
.step{border:0;border-radius:0;background:none;padding:0}
.step-count{font-size:27px;right:0;top:3px;color:#c96a3f}
.step .icon-tile,.install-grid .icon-tile{background:none;border:0;border-radius:0;width:32px;height:32px;justify-content:flex-start;margin-bottom:18px}
.step p{font-size:15px}
.install-grid{grid-template-columns:repeat(3,1fr);gap:32px 35px}
.install-grid .info-card{padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.install-grid .info-card:hover{transform:none;box-shadow:none}
.install-grid .info-card h3{font-size:17px;line-height:1.45}
.install-grid .info-card p{font-size:15px}
.source-list{gap:0 35px}
.source-list>div{padding:25px 0;gap:17px}
.source-icon{flex-shrink:0;display:flex;align-items:flex-start;padding-top:2px;color:#ce6738}
.source-icon svg{width:30px;height:30px}
.source-list p{font-size:15px}
.proscons>div{padding:0;background:none;border:0;border-radius:0}
.proscons{gap:50px}
.proscons ul{list-style:none;padding:0;margin:20px 0 0}
.proscons li{position:relative;padding-left:28px;margin:0 0 14px;font-size:15px;line-height:1.7}
.proscons li:before{content:'\2713';position:absolute;left:0;color:#477f60;font-weight:700}
.proscons>div:last-child li:before{content:'\2212';color:#b66b40}
.footer-grid{grid-template-columns:1.65fr .75fr 1fr;gap:65px;padding-bottom:35px}
.footer-brand p{max-width:470px;font-size:16px;line-height:1.85}
.footer-grid h3{font-size:19px;margin-top:10px}
.footer-grid a:not(.brand){font-size:16px;margin:12px 0}
.footer-disclaimer{padding:20px 0;border-top:1px solid #e2d5c9;font-size:15px;color:#655c62}
.footer-bottom{font-size:14px;padding-block:20px;gap:8px}
.footer-bottom span:last-child{margin-left:0}
@media(max-width:1100px){nav{gap:14px}nav>a:not(.btn){font-size:14px}.brand{font-size:20px}.nav-download{font-size:13px;padding:13px}.desktop-break{display:none}}
@media(max-width:920px){nav{gap:0}nav>a:not(.btn){font-size:17px}.nav-download{font-size:15px}.hero-grid{gap:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid .footer-brand{grid-column:1/-1}.footer-brand p{max-width:650px}.install-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.container{width:min(1140px,calc(100% - 32px))}.brand{font-size:20px}.brand img{width:42px;height:42px}.nav-wrap{min-height:74px}.hero-grid{padding-top:38px}.hero h1{font-size:clamp(2.2rem,9vw,3.3rem)}.hero p{font-size:15px}.hero-art{max-width:480px;margin-top:18px}.hero-art img{max-height:none}.about-copy{font-size:15px}.desktop-break{display:none}.download-panel,.steps,.install-grid,.source-list,.proscons{grid-template-columns:1fr}.download-panel{gap:20px}.download-mark{display:none}.step{padding-bottom:12px}.proscons{gap:28px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 20px}.footer-grid>div:last-child{grid-column:auto}.footer-disclaimer{font-size:14px}.footer-bottom{font-size:12px}.footer-bottom span:last-child{flex-basis:auto}.footer-brand p{font-size:15px}}
@media(max-width:370px){.brand{font-size:17px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}}

.legal-content{max-width:1140px}

/* Consistent, compact spacing throughout the site. */
.section{padding-block:52px}
.section-head{margin-bottom:26px}
.hero-grid{min-height:470px;padding-block:38px}
.page-hero{padding-top:48px;padding-bottom:26px}
.listing-grid{padding-bottom:52px}
.article-page{padding-bottom:56px}
.legal-content{padding-bottom:56px}
#site-footer{padding-top:38px}
.footer-grid{padding-bottom:30px}

/* Only the homepage section headings are centered. */
.homepage h2{text-align:center}
.homepage .section-head{max-width:none}
.about-copy{font-size:16px;line-height:1.95}
#about{padding-block:52px}
#about .section-head{margin-bottom:24px}
.about-copy p+p{margin-top:22px}
.info-card,.info-card:hover{padding:18px 10px;background:none;border:0;border-radius:0;box-shadow:none;transform:none}
.feature-grid,.compare-cards{gap:30px 28px}
.steps{gap:38px}
.step{padding:0}
.step h3{line-height:1.45;margin-bottom:12px}
.step p{margin-bottom:0}
.source-list>div{display:block;border:0;padding:18px 12px}
.source-list h3{margin-bottom:10px}
.proscons h3 svg{display:none}
.proscons li{padding-left:0}
.proscons li:before{content:none}
.issue-list details,.faq-item{background:none;border:0;border-radius:0;border-bottom:1px solid #e8dbcf}
.issue-list summary,.faq-item summary{font-size:16px}
.issue-list summary svg:first-child:not(:last-child){display:none}
.faq-item summary span,.issue-list summary span{flex:1}
.faq-cats{position:static}
.faq-cat{font-size:15px}
.blog-card{border-radius:14px;box-shadow:none}
.blog-card img{aspect-ratio:16/9;object-fit:contain;background:#191b20}
.article-cover{object-fit:contain;background:#191b20;max-height:560px;border-radius:14px}
.brand,.brand:hover,.brand:focus,.brand:active,.brand:visited{color:#27283b}
.brand-accent,.brand:hover .brand-accent,.brand:focus .brand-accent,.brand:active .brand-accent,.brand:visited .brand-accent{color:#e77640}
#site-header .brand,#site-footer .brand,#site-header .brand:is(:hover,:focus,:active,:visited),#site-footer .brand:is(:hover,:focus,:active,:visited){color:#27283b}
.footer-brand p{max-width:470px}
.footer-grid h3,.footer-grid p,.footer-grid a:not(.brand),.footer-bottom,.footer-disclaimer{font-size:16px;line-height:1.85}
.footer-grid h3{margin-bottom:18px;letter-spacing:0}
.footer-disclaimer{padding-block:18px}
@media(max-width:650px){.about-copy{max-width:100%}.desktop-break{display:none}.info-card,.info-card:hover{padding:12px 0}.steps{gap:28px}.source-list>div{padding:14px 0}.footer-grid h3,.footer-grid p,.footer-grid a:not(.brand),.footer-bottom,.footer-disclaimer{font-size:16px}.footer-bottom{gap:5px}.footer-bottom span:last-child{flex-basis:auto}}

/* Changes limited to the homepage sections marked in the screenshots. */
.homepage #about .about-copy{text-align:left;width:100%;max-width:none}
.homepage #about h2{text-align:center}
.homepage #about .about-line{display:block;text-align:justify;text-align-last:justify}
.homepage #download h2{text-align:center}
.homepage .section-symbol{display:inline-flex;color:#d66b3c;margin-bottom:17px;line-height:1}
.homepage #features .feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:none}
.homepage #features .info-card{display:block;padding:28px;background:#fff;border:1px solid #eaded3;border-radius:15px;box-shadow:0 5px 18px #70431e08;transition:transform .2s,box-shadow .2s,border-color .2s}
.homepage #features .info-card:hover{transform:translateY(-5px);border-color:#dfa577;box-shadow:0 14px 30px #70431e18}
.homepage #features .section-symbol{margin:0 0 18px}
.homepage #how-it-works .steps{display:grid;grid-template-columns:1fr;gap:26px;max-width:none;margin-inline:auto;position:relative}
.homepage #how-it-works .steps:before{content:'';position:absolute;left:calc(50% - 1px);top:12px;bottom:12px;width:2px;background:#dfaa86}
.homepage #how-it-works .step{display:grid;grid-template-columns:38px minmax(0,1fr);gap:16px;padding:0;width:calc(50% - 36px);margin:0;position:relative;justify-self:start;text-align:left}
.homepage #how-it-works .step:before{content:'';position:absolute;left:calc(100% + 30px);top:10px;width:12px;height:12px;border:3px solid #fdfbf8;border-radius:50%;background:#d66b3c;box-shadow:0 0 0 1px #d66b3c}
.homepage #how-it-works .step>div{min-width:0}
.homepage #how-it-works .section-symbol{margin:3px 0 0}
.homepage #how-it-works .step:nth-child(even){grid-template-columns:38px minmax(0,1fr);margin:0;justify-self:end;text-align:left}
.homepage #how-it-works .step:nth-child(even):before{left:-42px}
.homepage #how-it-works .step:nth-child(even) .section-symbol{grid-column:1;grid-row:1;justify-self:start}
.homepage #how-it-works .step:nth-child(even)>div{grid-column:2;grid-row:1}
.homepage #installation .install-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:35px 26px}
.homepage #installation .info-card{grid-column:span 2;min-width:0}
.homepage #installation .info-card,.homepage #installation .info-card:hover{padding:0;transform:none;transition:none;box-shadow:none;border:0;background:none}
.homepage #installation .info-card *{transition:none;animation:none}
.homepage #installation .info-card:nth-child(4){grid-column:2/span 2}
.homepage #installation .info-card:nth-child(5){grid-column:4/span 2}
.homepage .install-image{width:100%;aspect-ratio:16/9;object-fit:contain;background:#191b20;margin-bottom:20px;border-radius:8px}
.homepage #compatibility .compare-cards,.homepage #settings .compare-cards{align-items:start}
.homepage #compatibility .compare-cards{align-items:stretch}
.homepage #compatibility .info-card,.homepage #compatibility .info-card:hover{padding:28px;background:#fff;border:1px solid #eaded3;border-radius:15px;box-shadow:0 5px 18px #70431e08;transform:none;transition:none}
.homepage #download .download-panel{grid-template-columns:minmax(0,1fr) 180px;gap:28px;padding:24px 0;border-top:1px solid #eaded3;border-bottom:1px solid #eaded3;align-items:center}
.homepage #download .download-copy h3{font-size:25px;margin-bottom:12px}
.homepage #download .download-copy p{max-width:760px;margin-bottom:18px}
.homepage #download .download-mark img{width:180px}
.homepage #download .table-title{margin-top:26px;margin-bottom:14px}
.homepage #download .table-scroll{background:#fff;border:1px solid #eaded3;border-radius:12px}
.homepage #download th,.homepage #download td{padding:14px 16px}
.homepage #download .file-download{padding:7px 12px;border:1px solid #efd7c7;border-radius:7px;background:#fff7ef;line-height:1.4}
.homepage #download .file-download:hover{background:#ffeddd}
@media(max-width:650px){.section{padding-block:38px}#about{padding-block:38px}.homepage #download .download-panel{grid-template-columns:1fr;gap:0;padding-block:20px}.homepage #download .download-copy h3{font-size:22px}.homepage #download th,.homepage #download td{padding:12px}.page-hero{padding-top:34px}.article-page,.listing-grid,.legal-content{padding-bottom:40px}}
.homepage #light-sources .source-list>div{padding:22px 0}
.homepage #light-sources .source-list>div>div{display:grid;grid-template-columns:40px 1fr;gap:0 15px}
.homepage #light-sources .section-symbol{grid-column:1;grid-row:1/3;margin:3px 0 0}
.homepage #light-sources h3,.homepage #light-sources p{grid-column:2}
.homepage #advantages .proscons h3 svg{display:inline-flex}
.homepage #advantages .proscons{gap:26px}
.homepage #advantages .proscons>div{padding:30px;background:#fff;border:1px solid #e6e0d8;border-radius:15px;box-shadow:0 4px 16px #70431e08}
.homepage #advantages .proscons li{padding-left:30px}
.homepage #advantages .proscons li:before{content:'\2713';top:0}
.homepage #advantages .proscons>div:last-child li:before{content:'\2212'}
.homepage #troubleshooting .issue-list{margin-inline:auto;max-width:980px}
.homepage #troubleshooting .issue-list summary svg:first-child:not(:last-child){display:block;color:#d66b3c}
.homepage #troubleshooting .issue-list summary{gap:16px;padding-inline:0}
.homepage #troubleshooting .issue-list p{padding-left:40px}
.homepage .faq-cats{position:sticky;top:112px;align-self:start}
.homepage .faq-cat{text-align:center}
.footer-bottom{justify-content:center;text-align:center}
.footer-disclaimer{text-align:center}
@media(max-width:1100px){.homepage #about .about-line{display:inline;text-align:left;text-align-last:auto}}
@media(max-width:920px){.homepage #features .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homepage #installation .install-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.homepage #installation .info-card:nth-child(4){grid-column:span 2}.homepage #installation .info-card:nth-child(5){grid-column:2/span 2}}
@media(max-width:650px){.homepage #features .feature-grid{grid-template-columns:1fr}.homepage #features .info-card{padding:24px}.homepage #how-it-works .steps{padding-left:40px}.homepage #how-it-works .steps:before{left:14px}.homepage #how-it-works .step,.homepage #how-it-works .step:nth-child(even){width:100%;margin:0;justify-self:stretch;grid-template-columns:34px minmax(0,1fr);text-align:left;column-gap:12px}.homepage #how-it-works .step:before,.homepage #how-it-works .step:nth-child(even):before{left:-31px}.homepage #how-it-works .step:nth-child(even) .section-symbol{grid-column:1;justify-self:start}.homepage #how-it-works .step:nth-child(even)>div{grid-column:2}.homepage #installation .install-grid{grid-template-columns:1fr}.homepage #installation .info-card,.homepage #installation .info-card:nth-child(4),.homepage #installation .info-card:nth-child(5){grid-column:auto}.homepage .faq-cats{top:74px;z-index:5;padding-block:10px;background:#fdfbf8}.homepage #troubleshooting .issue-list p{padding-left:0}.homepage #advantages .proscons>div{padding:24px}}
