/* Project Constellation: local mapping of /design/tokens.json. */
:root{--constellation-space:24px;--constellation-radius:16px;--constellation-focus:3px;--constellation-target:44px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:var(--constellation-focus) solid var(--accent);outline-offset:3px}
.menu-toggle{min-width:var(--constellation-target);min-height:var(--constellation-target)}
.family-strip .wrap{height:auto;min-height:var(--constellation-target)}
.family-strip a{min-height:var(--constellation-target)}
.header-nav>a,.footer-top a,.footer-legal a,.family-links a,.text-link{min-height:var(--constellation-target);display:inline-flex;align-items:center}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);column-gap:32px;align-items:center;padding-top:64px}
.hero-copy{position:relative;z-index:1;min-width:0}.hero .kicker{font-size:11px;letter-spacing:.12em}
.hero .hero-photo{opacity:.13}.hero .hero-shade{background:linear-gradient(90deg,#143b30 20%,#143b30F2 65%,#143b30CF)}
.hero .lead{max-width:560px}.hero .hero-facts{grid-column:1/-1;margin-top:56px}
.constellation-map{color:#e2c990;position:relative;margin:0;width:100%;max-width:480px;justify-self:center;pointer-events:none}
.constellation-map svg{display:block;width:100%;height:auto;overflow:visible}
.constellation-wordmark{font:500 18px Northstar,Arial,sans-serif;letter-spacing:4px;fill:currentColor}
.constellation-label{font:500 10px Northstar,Arial,sans-serif;letter-spacing:1px;fill:currentColor}
.constellation-map figcaption{font-size:10px;letter-spacing:.2em;text-align:center;margin-top:-20px;color:#e2c990}
.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}.purpose-grid article{border-top:1px solid var(--line);padding-top:24px;min-width:0}
.purpose-grid h2{font-size:clamp(27px,2.6vw,38px);line-height:1.25;letter-spacing:-.8px;max-width:470px}
.purpose-grid p:last-child{color:var(--muted);margin-top:20px;max-width:520px}.purpose-grid .kicker{margin-bottom:16px}
@media(max-width:1100px){.hero .wrap{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);column-gap:24px}.hero h1{font-size:clamp(44px,5.4vw,68px)!important}.constellation-label{font-size:11px}}
@media(max-width:900px){.hero .wrap{grid-template-columns:1fr;padding-top:48px}.hero-copy{max-width:700px!important}.constellation-map{max-width:360px;margin-top:32px}.hero .hero-facts{margin-top:32px}.purpose-grid{gap:32px}}
@media(max-width:600px){.hero h1{font-size:clamp(38px,10vw,54px)!important}.hero .kicker{line-height:1.7;max-width:320px}.hero-actions{gap:16px}.hero-actions a{min-height:44px}.constellation-map{max-width:320px;margin-top:24px}.purpose-grid{grid-template-columns:1fr;gap:40px}.constellation-map figcaption{font-size:9px;letter-spacing:.15em}.hero .hero-facts{gap:16px}.hero-facts>span{max-width:100%}.family-strip .wrap{height:auto;min-height:44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Editorial refinement: warm paper, forest depth and generous room for care. */
.pawlux .hero .wrap{padding-top:72px;column-gap:48px;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr)}
.pawlux .hero h1{line-height:1.04;letter-spacing:-.04em}
.pawlux .hero .lead{max-width:48ch;font-size:18px;line-height:1.85}
.pawlux .hero .hero-photo{opacity:.07}
.pawlux .constellation-map{max-width:420px}
.pawlux .constellation-purpose{padding-block:88px;background:#f2f2e7}
.pawlux .purpose-grid{gap:72px}
.pawlux .purpose-grid article{padding-top:30px;border-color:#315d4b40}
.pawlux .purpose-grid h2{font-size:clamp(29px,3vw,39px);max-width:22ch;line-height:1.25;letter-spacing:-.03em}
.pawlux .purpose-grid p:last-child{max-width:46ch;line-height:1.85}
.pawlux :is(.feature,.portal-card){border-radius:16px}
.pawlux .plan{border-radius:12px}
@media(max-width:900px){.pawlux .hero .wrap{grid-template-columns:1fr;padding-top:48px;column-gap:0}.pawlux .purpose-grid{gap:40px}.pawlux .constellation-purpose{padding-block:64px}}
@media(max-width:600px){.pawlux .hero .lead{font-size:16px;line-height:1.8}.pawlux .hero h1{line-height:1.08}.pawlux .constellation-purpose{padding-block:56px}.pawlux .purpose-grid article{padding-top:24px}}

/* Transparent family mark: the wordmark provides the accessible name. */
.site-header .brand-symbol,.site-footer .brand-symbol{width:40px;height:40px;object-fit:contain;flex-shrink:0}
.site-header .brand{gap:14px}.site-footer .brand{gap:12px}
@media(max-width:600px){.site-header .brand-symbol{width:36px;height:36px}}

/* Approved direction: an organic care study, held in a quiet forest field. */
.pawlux .hero{background:#153c31}
.pawlux .hero .hero-shade{background:linear-gradient(115deg,#102e28 0%,#163d32 62%,#244c3a 100%)}
.pawlux .hero .wrap{grid-template-columns:minmax(0,1.35fr) minmax(0,.8fr);column-gap:48px;padding-top:88px}
.pawlux .hero h1{font-size:clamp(52px,5.1vw,76px);line-height:1.04;letter-spacing:-.045em}
.pawlux .hero .lead{font-size:18px;line-height:1.75;max-width:48ch;margin-top:30px}
.pawlux .hero-actions{margin-top:30px;gap:28px}
.pawlux .hero-actions .button{border-radius:8px;box-shadow:0 6px 24px #071e191c}
.pawlux .care-study{max-width:440px;align-self:center;margin-top:0}
.pawlux .care-study figcaption{margin-top:-46px;font-size:9px;letter-spacing:.17em;color:#c3d5be}
.pawlux .hero .hero-facts{margin-top:64px;padding-block:25px;gap:28px}
.pawlux .feature-grid{border:0;border-radius:0;background:transparent;gap:0 48px}
.pawlux .feature{padding:30px 0 34px;background:transparent;border-top:1px solid #315d4b42;border-radius:0}
.pawlux .feature-top{margin-bottom:24px}.pawlux .feature h3{font-size:27px;letter-spacing:-.025em}
.pawlux .feature p{line-height:1.8;max-width:36ch}
@media(max-width:1100px){.pawlux .hero h1{font-size:clamp(44px,5.6vw,64px)!important}.pawlux .hero .wrap{column-gap:24px}.pawlux .care-study{max-width:360px}}
@media(max-width:900px){.pawlux .hero .wrap{grid-template-columns:1fr;padding-top:52px}.pawlux .hero-copy{max-width:690px!important}.pawlux .care-study{width:min(360px,100%);margin-top:32px}.pawlux .hero .hero-facts{margin-top:32px}.pawlux .feature-grid{gap:0 32px}}
@media(max-width:600px){.pawlux .hero .wrap{padding-top:42px}.pawlux .hero h1{font-size:clamp(38px,10.2vw,56px)!important;line-height:1.06}.pawlux .hero .kicker{margin-bottom:24px}.pawlux .hero .lead{font-size:16px;line-height:1.7;margin-top:27px}.pawlux .hero-actions{margin-top:26px;gap:12px}.pawlux .hero-actions .button{width:100%;justify-content:space-between}.pawlux .hero-note{margin-top:14px}.pawlux .care-study{width:min(300px,100%);margin-top:22px}.pawlux .care-study figcaption{margin-top:-22px}.pawlux .hero .hero-facts{margin-top:25px;gap:14px;font-size:12px}.pawlux .feature{padding-block:26px}.pawlux .feature h3{font-size:26px}}
@media(forced-colors:active){.pawlux .hero .hero-shade{background:Canvas}.care-study{display:none}}

/* The complete catalog projection stays proportional; brand curves are a quiet frame. */
.pawlux .care-study{pointer-events:auto}
.pawlux .care-study>svg{pointer-events:none}
.pawlux .care-study figcaption{margin-top:-16px;line-height:1.8;letter-spacing:.12em;font-size:10px}
.pawlux .care-study figcaption>span{display:block}
.pawlux .care-study figcaption>a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 0;font-size:12px;letter-spacing:0;text-transform:none;color:#d0dfce;pointer-events:auto}
.pawlux .care-study figcaption>a:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:600px){.pawlux .care-study figcaption{margin-top:-8px;font-size:9px;letter-spacing:.1em}}

.pawlux .workflow-study{--workflow-ink:#c3d6ba;--workflow-text:#f1f0df;--workflow-muted:#c8d5c7;--workflow-line:#c3d6ba42;--workflow-shadow:#0b241e;--workflow-glass:linear-gradient(145deg,rgba(18,42,32,.16),rgba(10,30,24,.04))}

/* Shared transparent workflow treatment: sourced stars, decorative rings, native semantic copy. */
.pawlux .workflow-study{width:100%;max-width:500px;pointer-events:auto;margin:0;align-self:center;background:none;border-radius:0;color:var(--workflow-ink)}
.pawlux .workflow-composition{position:relative;isolation:isolate}
.pawlux .workflow-study :is(.workflow-sky,.sky-survey-plate),.pawlux .workflow-study .workflow-orbits{position:absolute;z-index:0;left:-52px;top:-52px;width:calc(100% + 104px);height:auto;max-width:none;pointer-events:none;overflow:visible;object-fit:contain;filter:none;opacity:1}
.pawlux .workflow-frame{position:relative;z-index:1;padding:32px;background:var(--workflow-glass);border:1px solid var(--workflow-line);border-radius:2px;box-shadow:none;backdrop-filter:none}
.pawlux .workflow-heading{display:flex;align-items:center;gap:11px;margin:0 0 34px;font:400 11px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.13em;color:var(--workflow-ink);max-width:29ch;text-shadow:0 1px 4px var(--workflow-shadow)}
.pawlux .workflow-heading>span{width:5px;height:5px;flex-shrink:0;border-radius:50%;background:currentColor}
.pawlux .workflow-steps{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px 26px;padding:0;margin:0;list-style:none}
.pawlux .workflow-steps>li{min-width:0;min-height:98px;position:relative}
.pawlux .workflow-index{display:none;font:400 9px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.06em;margin-bottom:10px;color:var(--workflow-ink);text-shadow:0 1px 4px var(--workflow-shadow)}
.pawlux .workflow-steps h3{margin:0 0 10px;font:400 34px/1.12 Georgia,'Times New Roman',serif;letter-spacing:-.035em;color:var(--workflow-text);text-shadow:0 1px 5px var(--workflow-shadow)}
.pawlux .workflow-detail{margin:0;font:400 12px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.015em;color:var(--workflow-muted);text-shadow:0 1px 5px var(--workflow-shadow)}
.pawlux .workflow-detail>span{display:inline-block;max-width:18ch}
.pawlux .workflow-reflection{margin:26px 0 0;padding-top:23px;border-top:1px solid var(--workflow-line);font:italic 400 22px/1.45 Georgia,'Times New Roman',serif;letter-spacing:-.02em;color:var(--workflow-text);text-shadow:0 1px 6px var(--workflow-shadow)}
.pawlux .workflow-reflection em{font:inherit;color:inherit;letter-spacing:inherit}
.pawlux .workflow-trust{margin:17px 0 0;font:400 12px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.09em;color:var(--workflow-muted);text-shadow:0 1px 5px var(--workflow-shadow)}
.pawlux .workflow-corner{position:absolute;width:9px;height:9px;border-color:var(--workflow-ink);border-style:solid;opacity:.7;pointer-events:none}
.pawlux .workflow-corner.top-left{top:-1px;left:-1px;border-width:1px 0 0 1px}.pawlux .workflow-corner.top-right{top:-1px;right:-1px;border-width:1px 1px 0 0}.pawlux .workflow-corner.bottom-left{bottom:-1px;left:-1px;border-width:0 0 1px 1px}.pawlux .workflow-corner.bottom-right{bottom:-1px;right:-1px;border-width:0 1px 1px 0}
.pawlux .workflow-study figcaption{position:relative;margin:19px 0 0;font-size:11px;line-height:1.8;letter-spacing:.11em;text-align:left;color:var(--workflow-ink)}
.pawlux .workflow-study figcaption>span{display:block}.pawlux .workflow-study figcaption>a{justify-content:flex-start;color:var(--workflow-muted);min-height:44px;font-size:12px}
@media(max-width:900px){.pawlux .workflow-study{width:min(100%,500px);margin:38px 0 0;justify-self:start;align-self:flex-start}}
@media(max-width:600px){.pawlux .workflow-study{width:100%;max-width:420px;margin-top:38px}.pawlux .workflow-frame{padding:25px 20px}.pawlux .workflow-study :is(.workflow-sky,.sky-survey-plate),.pawlux .workflow-study .workflow-orbits{left:0;top:26px;width:100%}.pawlux .workflow-heading{font-size:11px;letter-spacing:.11em;margin-bottom:30px}.pawlux .workflow-steps{gap:28px 18px}.pawlux .workflow-steps>li{min-height:92px}.pawlux .workflow-index{margin-bottom:10px}.pawlux .workflow-steps h3{font-size:28px;letter-spacing:-.04em}.pawlux .workflow-detail{font-size:12px;line-height:1.7;letter-spacing:.015em}.pawlux .workflow-reflection{font-size:20px;margin-top:24px;padding-top:22px}.pawlux .workflow-trust{font-size:12px;line-height:1.8;letter-spacing:.015em}.pawlux .workflow-study figcaption{margin-top:18px;font-size:11px}}
@media(max-width:360px){.pawlux .workflow-steps h3{font-size:26px}.pawlux .workflow-heading{font-size:11px}.pawlux .workflow-steps{column-gap:14px}.pawlux .workflow-detail{font-size:12px}}
@media(forced-colors:active){.pawlux .workflow-study{display:block;color:CanvasText}.pawlux .workflow-sky,.pawlux .workflow-orbits{display:none!important}.pawlux .workflow-frame{background:Canvas;border-color:CanvasText}.pawlux .workflow-heading,.pawlux .workflow-steps h3,.pawlux .workflow-detail,.pawlux .workflow-reflection,.pawlux .workflow-trust,.pawlux .workflow-index,.pawlux .workflow-study figcaption{color:CanvasText;text-shadow:none}}

/* Fit the complete catalog graph around the typography; only the entire image is scaled/translated. */
.pawlux .workflow-study :is(.workflow-sky,.sky-survey-plate),.pawlux .workflow-study .workflow-orbits{width:122.877475%;left:-6.989361%;top:-52.0000px}
@media(max-width:600px){.pawlux .workflow-study :is(.workflow-sky,.sky-survey-plate),.pawlux .workflow-study .workflow-orbits{width:99.428571%;left:-6.571429%;top:20.4269px}}
@media(max-width:360px){.pawlux .workflow-study :is(.workflow-sky,.sky-survey-plate),.pawlux .workflow-study .workflow-orbits{width:129.285714%;left:-13.214286%;top:7.9509px}}


/* Live constellation light controls stay outside the scientific diagram. */
.pawlux .workflow-study .sky-controls{display:flex;align-items:center;flex-wrap:wrap;gap:2px 24px;margin-top:2px;letter-spacing:0}
.pawlux .workflow-study .sky-controls>a,.pawlux .workflow-study .sky-light-toggle{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-height:44px;max-width:100%;padding:8px 0;color:var(--workflow-muted);font:400 12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:0;text-transform:none;pointer-events:auto}
.pawlux .workflow-study .sky-controls>a:hover{text-decoration:underline;text-underline-offset:5px}
.pawlux .workflow-study .sky-light-toggle{appearance:none;background:transparent;border:0;border-radius:2px;cursor:pointer;text-align:left}
.pawlux .workflow-study .sky-light-toggle:not(:disabled):hover{color:var(--workflow-text)}
.pawlux .workflow-study .sky-light-toggle:disabled{cursor:default;opacity:.8}
.pawlux .workflow-study .sky-controls :is(a,button):focus-visible{outline:3px solid var(--workflow-ink);outline-offset:3px}
.pawlux .workflow-study .sky-light-toggle>svg{display:block;flex:0 0 16px;width:16px;height:16px;overflow:visible}
.pawlux .workflow-study .sky-icon-play{display:none}
.pawlux .workflow-study[data-sky-state="paused"] .sky-icon-pause{display:none}
.pawlux .workflow-study[data-sky-state="paused"] .sky-icon-play{display:block}
.pawlux .workflow-study .sky-motion-status{margin:4px 0 0;max-width:42ch;font:400 12px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:0;color:var(--workflow-muted)}
.pawlux .workflow-study .sky-motion-status[hidden]{display:none}
@media(max-width:360px){.pawlux .workflow-study .sky-controls{column-gap:18px}}

/* Approved B2B2C SaaS positioning preserves each studio’s scope and setup boundaries. */
.saas-positioning .saas-boundary{margin-top:24px;font-size:14px;line-height:1.8;color:var(--muted)}

/* Until actual rendered word masks are ready, omit guides and keep real stars visible. */

[data-constellation-clearance] svg:is([data-live-sky],[data-clearance-art]):not([data-clearance-ready="true"]) :is(line,path,polyline,polygon,ellipse,rect),
[data-constellation-clearance] svg[data-clearance-art]:not([data-clearance-ready="true"]) circle,
[data-constellation-clearance] [data-clearance-layer]:not([data-clearance-ready="true"]){visibility:hidden}


/* A small plot tag belongs to the star figure, separately from the company identity. */
.pawlux .workflow-study figcaption .sky-cluster-tag{position:relative;display:inline-flex;align-items:center;flex-wrap:wrap;gap:0 .55em;max-width:100%;padding-left:10px;color:inherit;font:400 11px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.055em;text-transform:uppercase}
.pawlux .workflow-study .sky-cluster-tag:before{content:"";position:absolute;left:0;top:-19px;height:32px;border-left:1px solid currentColor;opacity:.4}
.pawlux .workflow-study .sky-cluster-kind{opacity:.78;letter-spacing:.07em}

/* Registered 2MASS survey: identical fixed projection fit beneath the catalog figure. */
.pawlux .workflow-study .sky-survey-plate{display:block;aspect-ratio:1;z-index:-1;opacity:.84;mix-blend-mode:screen;filter:brightness(1.35) contrast(1.04) saturate(1.10);animation:none;transition:none}
.pawlux .workflow-study .sky-survey-plate img{display:block;width:100%;height:100%;object-fit:contain;animation:none;transition:none}
.pawlux .workflow-study .sky-survey-links{display:flex;align-items:center;flex-wrap:wrap;gap:0 20px;margin-top:4px;letter-spacing:0}
.pawlux .workflow-study .sky-survey-links a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font:400 11px/1.6 ui-monospace,monospace;color:var(--workflow-muted);letter-spacing:.02em}
.pawlux .workflow-study .sky-survey-links a:focus-visible{outline:3px solid var(--workflow-ink);outline-offset:3px}
@media(forced-colors:active){.pawlux .workflow-study .sky-survey-plate{display:none}}

.pawlux .workflow-study .sky-survey-plate img{mask-image:radial-gradient(ellipse closest-side at center,#000 35%,#000d 65%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse closest-side at center,#000 35%,#000d 65%,transparent 100%)}

.pawlux .workflow-study .sky-survey-links a:not(:first-child){font-size:12px}

/* A one-pixel halo follows individual letters over the observed sky; the photograph stays continuous. */
@media(forced-colors:none){.pawlux .workflow-study [data-clearance-text],.pawlux .workflow-study [data-clearance-text] :is(h2,h3,p,li,div,span,em,a,button){text-shadow:-1px -1px 0 #0b241e,0px -1px 0 #0b241e,1px -1px 0 #0b241e,-1px 0px 0 #0b241e,1px 0px 0 #0b241e,-1px 1px 0 #0b241e,0px 1px 0 #0b241e,1px 1px 0 #0b241e,0 1px 4px #0b241e}}

/* Approved constellation story: a separate editorial band, clear of the sky artwork. */
.pawlux .constellation-story{padding-block:64px;background:var(--bg);border-bottom:1px solid var(--line)}
.pawlux .constellation-story-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:start}
.pawlux .constellation-story-grid>div{min-width:0}
.pawlux .constellation-story .kicker{margin-bottom:18px;font-size:11px;letter-spacing:.13em}
.pawlux .constellation-story h2{max-width:24ch;font-size:clamp(28px,3vw,38px);line-height:1.25;letter-spacing:-.03em}
.pawlux .constellation-story-route{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:24px;color:var(--muted);font-size:11px;line-height:1.8;letter-spacing:.025em}
.pawlux .constellation-story-copy>p{max-width:64ch;font-size:16px;line-height:1.85;color:var(--muted)}
.pawlux .constellation-story-links{display:flex;align-items:center;flex-wrap:wrap;gap:0 24px;margin-top:18px}
.pawlux .constellation-story-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px;max-width:100%;font-size:12px;line-height:1.7;color:var(--accent);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px}
.pawlux .constellation-story-links a:hover{text-decoration-color:currentColor}
@media(max-width:900px){.pawlux .constellation-story-grid{gap:36px}}
@media(max-width:760px){.pawlux .constellation-story{padding-block:48px}.pawlux .constellation-story-grid{grid-template-columns:1fr;gap:26px}.pawlux .constellation-story-route{margin-top:18px}.pawlux .constellation-story-copy>p{font-size:16px;line-height:1.8}}
@media(forced-colors:active){.pawlux .constellation-story{background:Canvas;color:CanvasText;border-color:CanvasText}.pawlux .constellation-story :is(p,h2,em){color:CanvasText}.pawlux .constellation-story-links a{color:LinkText;text-decoration-color:LinkText}}
