/* Shared brand system. Product facts and corporate content stay in their own pages. */
:root{--accent:#94263b;--ink:#252625;--text:#3d403e;--muted:#6a706c;--line:#e2e5e1;--sage:#f4f5f1;--link:var(--accent)}
body{line-height:1.75}
.wrap{max-width:1200px;width:calc(100% - 112px)}
.site-header{height:84px}
.header-inner{gap:40px}
.desktop-nav{gap:30px}
.desktop-nav a{font-size:14px}
.desktop-nav a[aria-current]{color:var(--accent)}
.desktop-nav a[aria-current]::after{background:var(--accent);bottom:20px;height:2px}
.header-shop{display:inline-flex;align-items:center;gap:12px;border-left:1px solid var(--line);padding-left:28px;min-height:44px;font-size:13px;white-space:nowrap}
.header-shop .icon{width:15px;height:15px}
.header-shop:hover{color:var(--accent)}
.button.dark,.button.lime{background:var(--accent)}
.button.dark:hover,.button.lime:hover{background:#762033}
.text-link,.link-text{color:var(--accent)}
h1,h2,h3{color:var(--ink)}
.page-heading{padding-block:56px 32px}
.page-heading h1{font-size:36px;font-weight:500;line-height:1.35;margin:0;letter-spacing:-.8px}
.page-heading>p{max-width:700px;font-size:16px;color:var(--muted);line-height:1.9;margin:20px 0 0}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;line-height:1.7;color:var(--muted);padding-block:26px}
.breadcrumbs a:hover{text-decoration:underline}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}
.section-heading h2{margin:0;font-size:28px;font-weight:500;line-height:1.4}
.brand-hero{background:#f1eee7}
.hero-inner{display:grid;grid-template-columns:40% 60%;align-items:stretch;min-height:460px}
.hero-copy{align-self:center;position:relative;z-index:1;padding-block:56px;padding-right:20px}
.hero-copy h1{font-size:56px;line-height:1.2;letter-spacing:-2px;font-weight:500;margin:0 0 28px}
.hero-copy>p{font-size:19px;line-height:1.95;margin:0;max-width:420px}
.hero-links{display:flex;align-items:center;flex-wrap:wrap;gap:28px;margin-top:36px}
.hero-visual{position:relative;margin:0;min-width:0}
.hero-visual>img{width:100%;height:100%;min-height:460px;max-height:520px;object-fit:cover;display:block}
.hero-visual figcaption{position:absolute;bottom:12px;right:16px;font-size:10px;color:#5a564d}
.home-intro{display:grid;grid-template-columns:1fr 1.8fr;gap:64px;padding-block:64px}
.home-intro h2{font-size:28px;line-height:1.5;margin:0;font-weight:500}
.home-intro p{font-size:16px;line-height:1.95;margin:0;color:var(--muted)}
.home-intro .text-link{margin-top:12px}
.featured-section{padding-block:0 64px}
.story-preview{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:64px;padding-bottom:72px}
.story-preview>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.story-preview-copy h2{font-size:30px;font-weight:500;line-height:1.5;margin:0 0 24px}
.story-preview-copy p{margin:0;color:var(--muted);font-size:16px;line-height:1.95;max-width:470px}
.story-preview-copy .text-link{margin-top:20px}
.section-nav{display:flex;gap:32px;border-bottom:1px solid var(--line);margin-bottom:0}
.section-nav a{position:relative;display:flex;align-items:center;min-height:52px;font-size:14px;color:var(--muted)}
.section-nav a[aria-current]{color:var(--accent)}
.section-nav a[aria-current]::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}
.editorial{padding-block:48px 72px}
.editorial-row{display:grid;grid-template-columns:1fr 2fr;gap:64px;padding-block:36px;border-top:1px solid var(--line)}
.editorial-row:first-child{border-top:0;padding-top:0}
.editorial-row h2{font-size:24px;font-weight:500;line-height:1.5;margin:0}
.prose{font-size:15px;line-height:2;color:var(--muted)}
.prose p{margin:0 0 22px}
.prose p:last-child{margin-bottom:0}
.prose h3{font-size:18px;font-weight:500;margin:0 0 12px}
.prose h3:not(:first-child){margin-top:30px}
.information-list{font-size:14px;line-height:1.8;margin:0}
.information-list>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:20px;padding-block:14px;border-bottom:1px solid var(--line)}
.information-list>div:first-child{padding-top:0}
.information-list dt{color:var(--muted)}
.information-list dd{margin:0;overflow-wrap:anywhere;color:var(--ink)}
.information-list a:hover{text-decoration:underline}
.story-photo{margin-block:0 48px}
.story-photo img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover;object-position:center 48%}
.story-photo figcaption{font-size:11px;color:var(--muted);margin-top:8px}
.story-narrative{max-width:760px;padding-block:0 72px}
.story-narrative section+section{margin-top:40px}
.story-narrative h2{font-size:24px;font-weight:500;margin-bottom:20px}
.story-narrative p{font-size:16px;line-height:2;color:var(--muted);margin:0 0 22px}
.story-narrative>.text-link{margin-top:12px}
.contact-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:96px;padding-block:20px 72px}
.contact-main h2{font-size:24px;font-weight:500;margin:0 0 20px}
.contact-email{display:inline-block;color:var(--accent);font-size:clamp(20px,2.6vw,30px);line-height:1.5;overflow-wrap:anywhere}
.contact-main>p{color:var(--muted);line-height:1.9;font-size:15px;max-width:580px;margin:28px 0}
.contact-store{border-left:1px solid var(--line);padding-left:48px}
.contact-store h2{font-size:22px;font-weight:500;margin:0 0 12px}
.contact-store>p{font-size:14px;color:var(--muted);margin:0 0 16px}
.contact-qr{display:block;width:192px;height:192px;margin-block:4px 16px}
.contact-store .contact-qr-note{font-size:12px}
.contact-store .text-link{font-size:13px}
.service-content{padding-block:28px 72px}
.service-row{display:grid;grid-template-columns:1fr 2fr;gap:64px;border-top:1px solid var(--line);padding-block:36px}
.service-row h2{font-size:24px;line-height:1.5;margin:0}
.service-row p{font-size:15px;line-height:1.9;color:var(--muted);margin:0 0 12px}
.service-categories{display:flex;flex-wrap:wrap;gap:24px;margin-block:12px}
.service-categories button{min-height:44px;padding:8px 0;font-size:14px;border-bottom:2px solid transparent}
.service-categories button.selected{border-color:var(--accent);color:var(--accent)}
.privacy-page{max-width:800px;padding-block:0 64px}
.privacy-page h2{font-size:22px;font-weight:500;margin-top:36px}
.privacy-page h2:first-child{margin-top:0}
.site-footer{background:#f1f3ee}
.footer-main{display:flex;justify-content:space-between;gap:80px;padding-block:40px 32px}
.footer-identity .brand-logo{width:126px}
.footer-identity p{font-size:13px;margin:14px 0 4px}
.footer-identity>a:not(.brand){font-size:12px}
.footer-main nav{display:grid;grid-template-columns:repeat(3,auto);align-content:start;column-gap:40px;row-gap:14px}
.footer-main nav a{min-height:32px;display:flex;align-items:center;font-size:13px}
.footer-bottom{font-size:11px;border-color:#dfe3dc}
.purchase-close{position:absolute;top:12px;right:12px;background:none}
#purchase-dialog{max-width:480px}
#purchase-title{font-size:25px;font-weight:500;line-height:1.5;margin:0 24px 24px 0}
.purchase-body{text-align:center}
.purchase-body>p{font-size:14px;color:var(--muted);margin:12px 0}
.purchase-qr{display:block;margin:20px auto;width:224px;height:224px;max-width:100%}
.purchase-body .purchase-note{font-size:12px;line-height:1.8}
.purchase-direct{font-size:13px}
@media(max-width:1050px){.wrap{width:calc(100% - 80px)}.header-inner{gap:28px}.desktop-nav{gap:22px}.header-shop{padding-left:24px}.hero-copy h1{font-size:48px}.hero-copy>p{font-size:17px}.hero-links{gap:16px}.hero-inner{grid-template-columns:42% 58%;min-height:400px}.hero-visual>img{min-height:400px}.home-intro,.story-preview{gap:40px}.contact-layout{gap:48px}.editorial-row,.service-row{gap:40px}.footer-main{gap:48px}}
@media(max-width:900px){.desktop-nav{display:none}.mobile-menu{display:block;margin-left:0}.mobile-menu summary{display:flex}.header-shop{margin-left:auto;border-left:0;padding-left:0}.mobile-menu nav{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;background:white;padding:12px 40px 20px;border-bottom:1px solid var(--line)}.mobile-menu nav a{font-size:14px;padding:12px 0}.mobile-menu nav a[aria-current]{font-weight:600;color:var(--accent)}.contact-store{padding-left:32px}.footer-main nav{column-gap:24px;grid-template-columns:repeat(2,auto)}}
@media(max-width:700px){
 .wrap{width:calc(100% - 40px)}
 .site-header{height:68px}.header-inner{gap:16px}.header-shop{font-size:12px;gap:8px}.header-shop .icon{width:13px;height:13px}.mobile-menu nav{padding-inline:20px}.brand-logo{width:120px}
 .page-heading{padding-block:36px 28px}.page-heading h1{font-size:29px;letter-spacing:-.5px}.page-heading>p{font-size:14px;margin-top:16px}
 .hero-inner{width:100%;grid-template-columns:1fr;min-height:0}.hero-copy{padding:36px 20px 32px}.hero-copy h1{font-size:40px;letter-spacing:-1px;margin-bottom:18px}.hero-copy>p{font-size:17px;line-height:1.85}.hero-links{margin-top:24px;gap:24px}.hero-visual>img{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:3/2}.hero-visual figcaption{right:12px;bottom:8px;font-size:9px}
 .home-intro{grid-template-columns:1fr;gap:20px;padding-block:36px}.home-intro h2{font-size:24px}.home-intro p{font-size:14px;line-height:1.9}
 .section-heading{gap:16px;margin-bottom:20px}.section-heading h2{font-size:24px}.section-heading .text-link{font-size:12px;gap:8px}
 .featured-section{padding-bottom:36px}
 .story-preview{grid-template-columns:1fr;gap:28px;padding-bottom:40px}.story-preview-copy h2{font-size:25px;margin-bottom:16px}.story-preview-copy p{font-size:14px;line-height:1.9}.story-preview-copy .text-link{margin-top:12px}
 .section-nav{gap:24px}.section-nav a{font-size:13px;min-height:48px}
 .editorial{padding-block:28px 40px}.editorial-row{grid-template-columns:1fr;gap:20px;padding-block:28px}.editorial-row h2{font-size:22px}.prose{font-size:14px;line-height:1.95}.prose p{margin-bottom:20px}.prose h3{font-size:17px}
 .information-list{font-size:13px}.information-list>div{grid-template-columns:80px minmax(0,1fr);gap:12px;padding-block:12px}
 .breadcrumbs{padding-block:20px;gap:8px;font-size:11px}
 .story-photo{margin-bottom:28px}.story-photo img{height:auto;aspect-ratio:3/2}.story-photo figcaption{font-size:10px}.story-narrative{padding-bottom:40px}.story-narrative h2{font-size:22px;margin-bottom:16px}.story-narrative p{font-size:14px;line-height:1.95}.story-narrative section+section{margin-top:28px}
 .contact-layout{grid-template-columns:1fr;gap:36px;padding-block:4px 40px}.contact-main h2{font-size:22px}.contact-email{font-size:23px}.contact-main>p{font-size:14px;margin-block:20px}.contact-store{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.contact-store h2{font-size:21px}.contact-qr,.contact-qr-note{display:none}
 .service-content{padding-block:24px 40px}.service-row{grid-template-columns:1fr;gap:20px;padding-block:28px}.service-row h2{font-size:22px}.service-row p{font-size:14px}.service-categories{gap:24px}
 .privacy-page{padding-bottom:40px}.privacy-page h2{font-size:21px}
 .footer-main{display:block;padding-block:28px 20px}.footer-identity .brand-logo{width:116px}.footer-identity p{margin-top:12px}.footer-main nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;margin-top:28px}.footer-main nav a{font-size:12px}.footer-bottom{font-size:10px;padding-block:16px 24px}
 #purchase-title{font-size:22px}.purchase-body>p{font-size:13px}
}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.brand-logo{width:110px}.header-inner{gap:8px}.header-shop{gap:6px;font-size:11px}.hero-copy{padding-inline:16px}.section-heading .text-link{font-size:11px}.section-heading h2{font-size:22px}.contact-email{font-size:21px}.footer-main nav{gap:12px}}
/* The About label itself toggles the submenu; each entry is a separate page. */
.nav-group{height:100%;display:flex;align-items:center;position:relative}
.nav-dropdown-toggle{position:relative;display:flex;align-items:center;height:100%;min-height:44px;padding:0;width:auto;color:var(--muted);font-size:14px;white-space:nowrap}
.nav-dropdown-toggle:hover,.nav-dropdown-toggle[aria-expanded="true"],.nav-dropdown-toggle[aria-current="page"]{color:var(--accent)}
.desktop-nav .nav-dropdown-toggle[aria-current="page"]::after{content:'';position:absolute;left:0;right:0;bottom:20px;height:2px;background:var(--accent)}
.nav-dropdown-panel{position:absolute;top:100%;left:-16px;z-index:30;min-width:176px;padding:8px;background:#fff;border:1px solid var(--line)}
.desktop-nav .nav-dropdown-panel a{display:flex;align-items:center;height:auto;min-height:44px;padding:10px 12px;font-size:13px;color:var(--ink)}
.nav-dropdown-panel a:hover{background:var(--sage)}
.service-row h3{font-size:24px;line-height:1.5;margin:0;font-weight:500}
.inline-link{display:inline-block;color:var(--accent);text-decoration:underline;text-underline-offset:4px;margin-left:8px}
.device-guide{padding-block:8px 56px}
.device-introduction{max-width:800px;margin-bottom:40px}
.device-introduction h2{font-size:26px;font-weight:500;margin-bottom:20px}
.device-function-row{display:grid;grid-template-columns:1fr 2fr;gap:64px;border-top:1px solid var(--line);padding-block:32px}
.device-function-row h2{font-size:24px;line-height:1.5;margin:0;font-weight:500}
.device-function-row p{font-size:15px;line-height:1.95;color:var(--muted);margin:0 0 16px}
.device-function-row p:last-child{margin-bottom:0}
.device-connectivity{margin-block:28px 40px}
.device-connectivity h2,.device-direction h2{font-size:25px;font-weight:500;margin-bottom:24px}
.table-scroll{overflow-x:auto}
.device-connectivity table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.9;text-align:left}
.device-connectivity th,.device-connectivity td{padding:16px 20px;border-bottom:1px solid var(--line);vertical-align:top}
.device-connectivity thead th{background:var(--sage);font-weight:500}
.device-connectivity tbody th{width:200px;font-weight:400;color:var(--ink)}
.device-connectivity td{color:var(--muted)}
.device-direction{max-width:800px}
.device-references{font-size:12px;color:var(--muted);margin-top:28px}
.device-references summary{min-height:44px;display:flex;align-items:center;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.device-references ul{margin:8px 0 0;padding-left:20px}
.device-references li{margin-block:10px}
.device-references a:hover{text-decoration:underline}
.device-store{padding-bottom:72px}
.device-store>p{font-size:14px;color:var(--muted);line-height:1.9;max-width:800px;margin:0 0 28px}
.device-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){.desktop-nav{gap:20px}.header-inner{gap:24px}.device-function-row{gap:40px}}
@media(max-width:900px){
 .mobile-menu nav{max-height:calc(100dvh - 84px);overflow-y:auto}
 .mobile-menu .nav-group{height:auto;display:block;position:static}
 .mobile-menu .nav-dropdown-toggle{width:100%;height:auto;min-height:48px;justify-content:flex-start;text-align:left;padding:12px 0}
 .mobile-menu .nav-dropdown-panel{position:static;min-width:0;width:100%;padding:0 0 8px 16px;border:0;border-left:1px solid var(--line);margin-bottom:8px}
 .mobile-menu .nav-dropdown-panel a{padding:10px 0;min-height:44px;color:var(--muted);font-size:13px}
}
@media(max-width:700px){
 .mobile-menu nav{max-height:calc(100dvh - 68px)}
 .service-row h3{font-size:22px}
 .device-guide{padding-bottom:36px}.device-introduction{margin-bottom:28px}.device-introduction h2{font-size:23px}
 .device-function-row{grid-template-columns:1fr;gap:18px;padding-block:28px}.device-function-row h2{font-size:22px}.device-function-row p{font-size:14px}
 .device-connectivity{margin-block:24px 28px}.device-connectivity h2,.device-direction h2{font-size:22px;margin-bottom:20px}
 .device-connectivity table{font-size:13px}.device-connectivity th,.device-connectivity td{padding:12px 10px}.device-connectivity tbody th{width:90px}
 .device-store{padding-bottom:40px}.device-store>p{font-size:13px}.device-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){.mobile-menu .nav-dropdown-panel a{display:flex;align-items:center}}
.surprise-box{padding-block:36px;border-top:1px solid var(--line)}
.box-heading{margin-bottom:28px}
.box-heading h2{font-size:28px;font-weight:500;line-height:1.5;margin:0 0 8px}
.box-heading p{font-size:16px;color:var(--muted);margin:0}
.box-showcase{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:start}
.box-visual{margin:0}
.box-visual img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:#f2ede6}
.box-visual figcaption{font-size:11px;color:var(--muted);line-height:1.7;margin-top:8px}
.box-categories{gap:28px;margin:0 0 24px;border-bottom:1px solid var(--line)}
.box-categories button{font-size:15px;margin-bottom:-1px;padding:0 0 12px}
.box-copy h3{font-size:27px;font-weight:500;line-height:1.5;margin:0 0 14px}
.box-copy p{font-size:15px;line-height:1.9;color:var(--muted);margin:0 0 20px}
.box-copy h4{font-size:13px;line-height:1.6;font-weight:500;margin:0 0 8px}
.box-copy ul{margin:0 0 18px;padding:0;list-style:none;font-size:14px;line-height:1.9}
.box-copy li{border-bottom:1px solid var(--line);padding-block:6px}
.box-copy p.box-fit{font-size:12px;margin-bottom:22px}
.box-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.box-actions .button{font-size:14px}
.box-actions .text-link{font-size:13px}
.box-footer{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-top:24px}
.box-footer p{font-size:12px;line-height:1.8;color:var(--muted);margin:0}
.box-footer .text-link{font-size:12px;flex-shrink:0}
.product-description .product-use-note{font-size:12px;color:var(--muted);margin-top:20px}
.section-nav{display:flex;gap:32px;border-bottom:1px solid var(--line);margin-bottom:36px}
.section-nav a{display:block;padding:0 0 14px;font-size:14px;border-bottom:2px solid transparent;margin-bottom:-1px}
.section-nav a[aria-current]{color:var(--accent);border-color:var(--accent)}
.offering-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-bottom:48px}
.offering img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:var(--sage)}
.offering h2{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:23px;margin:20px 0 12px;font-weight:500}
.offering h2 .icon{width:18px;height:18px;flex-shrink:0}
.offering p{font-size:14px;line-height:1.9;color:var(--muted);margin:0}
.offering a:hover h2{color:var(--accent)}
.product-assistance{padding-bottom:48px}
.box-page-content{border-top:0;padding-top:0}
.diy-introduction{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center;padding-bottom:48px}
.diy-introduction-copy h2{font-size:27px;font-weight:500;margin-bottom:20px}
.diy-introduction-copy>p{font-size:15px;line-height:1.95;color:var(--muted);margin:0 0 24px}
.diy-introduction-copy .information-list{margin-bottom:28px}
@media(max-width:1050px){.offering-grid{gap:24px}.offering h2{font-size:21px}.diy-introduction{gap:36px}}
@media(max-width:800px){.offering-grid,.diy-introduction{grid-template-columns:1fr;gap:28px}.offering-grid{padding-bottom:32px}.offering h2{font-size:23px;margin-top:16px}.diy-introduction{padding-bottom:32px}.diy-introduction-copy h2{font-size:23px}.product-assistance{padding-bottom:24px}.section-nav{margin-bottom:28px;gap:28px}}
.scene-image{margin:0;min-width:0}
.scene-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:#f2ede6}
.device-scene{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;border-top:1px solid var(--line);padding-block:36px}
.device-scene-copy h2{font-size:24px;line-height:1.5;font-weight:500;margin:0 0 16px}
.device-scene-copy p{font-size:15px;line-height:1.95;color:var(--muted);margin:0 0 14px}
.device-scene-copy p:last-child{margin-bottom:0}
.device-topic+.device-topic{margin-top:28px}
.device-scene-reverse .scene-image,.story-scene-reverse .scene-image{grid-column:2;grid-row:1}
.device-scene-reverse .device-scene-copy,.story-scene-reverse .story-scene-copy{grid-column:1;grid-row:1}
.story-narrative{max-width:1200px}
.story-opening{max-width:760px;margin-inline:auto}
.story-narrative>.story-scene{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;margin-top:56px}
.story-scene-copy p:last-child{margin-bottom:0}
.story-scene-copy>.text-link{margin-top:4px}
@media(max-width:1050px){.device-scene,.story-narrative>.story-scene{gap:36px}.device-scene-copy h2{font-size:23px}}
@media(max-width:800px){
 .device-scene,.story-narrative>.story-scene{grid-template-columns:1fr;gap:24px}
 .device-scene{padding-block:28px}.device-scene-copy h2{font-size:22px}.device-scene-copy p{font-size:14px}
 .device-scene-reverse .scene-image,.device-scene-reverse .device-scene-copy,.story-scene-reverse .scene-image,.story-scene-reverse .story-scene-copy{grid-column:auto;grid-row:auto}
 .story-narrative>.story-scene{margin-top:36px}.story-scene-copy h2{font-size:22px}.story-scene-copy p{font-size:14px}
}
@media(max-width:1050px){.box-showcase{gap:32px}.box-copy h3{font-size:24px}}
@media(max-width:800px){.box-showcase{grid-template-columns:1fr;gap:24px}.box-copy{max-width:none}.box-categories{margin-bottom:20px}.box-footer{flex-direction:column;gap:12px}.box-heading h2{font-size:24px}.surprise-box{padding-block:28px}.box-heading{margin-bottom:20px}}
