/* LHXGO / Core Snow. Original interaction layer; no third-party runtime. */
body { isolation: isolate; }
#ambient-layer { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; }
#core-snow { display: block; width: 100%; height: 100%; }
main, .site-footer { position: relative; z-index: 1; }
.ambient-orbit { position: absolute; width: 76vw; height: 76vw; min-width: 640px; min-height: 640px; border: 1px solid rgba(219,81,74,.045); border-radius: 50%; }
.orbit-a { top: -48vw; right: -18vw; }.orbit-b { bottom: -62vw; left: -30vw; }
.hero { position: relative; overflow: clip; }
.hero-grid { column-gap: 55px; padding-top: 58px; padding-bottom: 38px; }
.hero-copy { position: relative; }
.hero-note { margin-top: 33px; }
.hero-description { max-width: 475px; }
.hero-bottom { min-height: 58px; }
.principles-strip { background: rgba(255,255,255,.78); }
.focus { background: rgba(252,249,248,.36); }
.about { background: rgba(255,255,255,.8); }
.contact-section { background: rgba(255,255,255,.8); }
.site-footer { background: rgba(252,249,248,.92); }
.header-inner { gap: 22px; }
.header-contact { margin-left: 6px; }
/* Preserve the 3-D context. Do not add overflow:hidden, filter or opacity to a tilt surface. */
.tilt-shell { perspective: 1100px; position: relative; min-width: 0; }
.tilt-surface { position: relative; transform-style: preserve-3d; transform: rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)); transition: transform .62s cubic-bezier(.2,.75,.2,1), box-shadow .45s, border-color .35s; }
.tilt-shell.is-hovered .tilt-surface { transition: transform .11s ease-out, box-shadow .4s, border-color .35s; }
.depth { transform: translateZ(0); transition: transform .6s cubic-bezier(.2,.75,.2,1); }
.tilt-shell.is-hovered .depth, .tilt-shell:focus-within .depth { transform: translateZ(var(--depth,24px)); }
.surface-light { pointer-events: none; position: absolute; inset: 0; border-radius: inherit; background: radial-gradient(ellipse at var(--light-x,50%) var(--light-y,15%),rgba(243,160,148,.15), transparent 66%); opacity: .2; transition: opacity .4s; transform: translateZ(1px); }
.tilt-shell.is-hovered .surface-light { opacity: 1; }
/* Brand scene: the existing emblem gains a floating glass plane and independent layers. */
.brand-stage { padding: 12px 0 0; }
.brand-tile { height: 478px; border: 1px solid #E9DCD5; border-radius: 18px; background: rgba(255,253,251,.78); box-shadow: 0 22px 50px -33px rgba(110,48,36,.24), inset 0 0 0 5px #FFFFFF60; }
.brand-stage.is-hovered .brand-tile { border-color: #DFB2A6; box-shadow: 0 32px 60px -30px rgba(135,61,43,.26); }
.brand-tile-head { position: absolute; left: 25px; right: 25px; top: 23px; display: flex; justify-content: space-between; gap: 8px; align-items: center; font-size: 9px; letter-spacing: 1.6px; color: #78665D; }
.tile-status { display: flex; align-items: center; gap: 7px; font-size: 10px; letter-spacing: .4px; color: #8B6458; }.tile-status i { width: 5px; height: 5px; background: var(--brand); border-radius: 50%; box-shadow: 0 0 0 4px #DB514A0A; }
.brand-art { position: absolute; top: 58px; left: 7%; width: 86%; z-index: 2; }
.brand-art img { width: 100%; height: auto; mix-blend-mode: multiply; user-select: none; -webkit-user-drag: none; }
.brand-orbit { position: absolute; border: 1px solid #EADFD9; border-radius: 50%; width: 360px; height: 360px; top: 55px; left: 50%; margin-left: -180px; pointer-events: none; }
.brand-orbit.orbit-two { width: 404px; height: 404px; top: 34px; margin-left: -202px; border-style: dashed; border-color: #EEE5DF; transform: rotate(15deg); }
.brand-orbit.orbit-one::after { content: ''; position: absolute; top: 47px; right: 45px; width: 7px; height: 7px; background: #F3A094; border: 3px solid #FFF8F5; border-radius: 50%; box-sizing: content-box; }
.core-chip { position: absolute; display: flex; align-items: center; gap: 11px; padding: 11px 14px; border: 1px solid #E8D5CA; border-radius: 9px; background: #FFFDFBF5; box-shadow: 0 9px 19px -12px rgba(110,50,35,.25); font-size: 12px; color: #55463F; z-index: 3; }
.core-chip small { display: block; font-family: var(--mono); font-size: 7px; letter-spacing: 1px; color: #92786C; margin-top: 4px; }
.core-chip .chip-symbol { color: var(--brand); font-size: 22px; }.core-chip .icon { color: var(--brand); width: 21px; height: 21px; }
.chip-inspiration { top: 104px; left: -20px; }.chip-action { right: -14px; bottom: 86px; }
.brand-axis { position: absolute; color: #BEA89A; font-family: var(--mono); font-size: 18px; }.axis-left { left: 20px; bottom: 67px; }.axis-right { right: 20px; top: 67px; }
.brand-tile-foot { position: absolute; bottom: 22px; left: 24px; right: 24px; border-top: 1px solid #EADDD5; padding-top: 15px; display: flex; justify-content: space-between; gap: 8px; align-items: center; font-size: 7px; letter-spacing: .8px; color: #887163; }
.core-index { color: var(--brand-deep); font-size: 9px; letter-spacing: 2px; }
.interaction-hint { margin-top: 21px; display: flex; align-items: center; justify-content: center; gap: 8px; color: #8D7E77; font-size: 10px; letter-spacing: 1px; }
.hint-dot { width: 4px; height: 4px; border-radius: 50%; background: var(--brand); }.hint-touch { display: none; }
/* Three independent illustration layers visually articulate depth. */
.focus-grid { gap: 26px; align-items: stretch; }
.focus-card { padding: 25px 27px 22px; border-color: #E5D9D2; border-radius: 14px; background: rgba(255,255,255,.93); height: 100%; }
.focus-card:hover { transform: rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)); }
.focus-tilt.is-hovered .focus-card, .focus-tilt:focus-within .focus-card { border-color: #DBA290; box-shadow: 0 28px 45px -29px rgba(130,57,42,.3); }
.focus-card-top { margin-bottom: 7px; }.focus-card-top span { letter-spacing: 1px; color: #7B6C62; }.focus-card-top .icon { width: 21px; height: 21px; }
.craft-visual { position: relative; height: 194px; margin: 1px -4px 20px; transform-style: preserve-3d; }
.craft-layer { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.focus-card h3 { font-size: 23px; letter-spacing: .3px; margin-bottom: 14px; }
.focus-card p { min-height: 72px; font-size: 13px; line-height: 1.95; }
.focus-tags { margin-top: 24px; padding-top: 16px; align-items: center; }
.focus-tags span { color: #7A665C; }
.card-contact { margin-left: auto; width: 30px; height: 30px; display: inline-grid; place-items: center; border-radius: 50%; border: 1px solid #EADBD3; color: var(--brand-deep); }
.card-contact .icon { width: 16px; height: 16px; }.card-contact:hover { background: #FAEDE7; border-color: var(--brand-soft); }
.contact-panel { overflow: visible; }
.contact-tilt { align-self: center; }.contact-card { border: 1px solid #FFF4E9; box-shadow: 0 18px 35px -25px #69241F; }
.contact-tilt.is-hovered .contact-card { box-shadow: 0 25px 42px -24px #69241F80; }
/* Pause is genuine: all decorative transforms and frame loops stop. */
html[data-motion="off"] .tilt-surface, html[data-motion="off"] .depth { transform: none !important; transition: none !important; }
html[data-motion="off"] .surface-light { opacity: .15; }
html[data-motion="off"] { scroll-behavior: auto; }
@media (min-width:1600px) { .hero-grid { padding-top: 72px; padding-bottom: 52px; } }
@media (max-width:1150px) {
 .hero-grid { column-gap: 35px; }.header-inner { gap: 15px; }.header-contact { margin-left: 0; }
 .brand-tile { height: 430px; }.brand-art { top: 70px; left: 5%; width: 90%; }
 .brand-orbit { width: 300px; height: 300px; margin-left: -150px; top: 67px; }.brand-orbit.orbit-two { width: 338px; height: 338px; margin-left: -169px; top: 48px; }
 .chip-inspiration { top: 102px; left: -12px; }.chip-action { right: -8px; bottom: 78px; }.core-chip { padding: 10px 11px; font-size: 11px; }
 .focus-card { padding: 24px 22px 20px; }.focus-grid { gap: 21px; }.craft-visual { height: 170px; }.focus-card p { min-height: 100px; }
}
@media (max-width:900px) {
 .hero-grid { column-gap: 24px; padding-top: 42px; padding-bottom: 28px; }
 .header-inner { gap: 13px; }.desktop-nav { gap: 19px; }
 .brand-tile { height: 372px; }.brand-tile-head { left: 16px; right: 16px; top: 19px; font-size: 7px; letter-spacing: 1px; }.tile-status { font-size: 8px; }
 .brand-art { top: 73px; }.brand-orbit { width: 245px; height: 245px; margin-left: -122.5px; top: 67px; }.brand-orbit.orbit-two { width: 275px; height: 275px; margin-left: -137.5px; top: 52px; }
 .core-chip { font-size: 10px; padding: 9px; gap: 8px; }.core-chip small { font-size: 6px; letter-spacing: .5px; }.chip-inspiration { top: 77px; left: -5px; }.chip-action { bottom: 67px; right: -4px; }
 .brand-tile-foot { left: 15px; right: 15px; bottom: 18px; font-size: 6px; letter-spacing: .5px; }.core-index { font-size: 7px; letter-spacing: 1px; }
 .interaction-hint { font-size: 9px; letter-spacing: .5px; }.focus-card { padding: 20px 17px; }.focus-grid { gap: 17px; }.focus-card-top span { font-size: 8px; letter-spacing: .3px; }.craft-visual { height: 145px; margin-bottom: 15px; }
 .focus-card h3 { font-size: 21px; }.focus-card p { font-size: 12px; min-height: 116px; }.focus-tags { gap: 6px; }.focus-tags span { font-size: 9px; }.card-contact { width: 25px; height: 25px; }.focus-tags span+span::before { margin-right: 6px; }
}
@media (max-width:700px) {
 .header-inner { gap: 10px; }.menu-toggle { margin-left: 0; }
 .hero-grid { grid-template-columns: 1fr; padding-top: 40px; padding-bottom: 24px; gap: 35px; }
 .hero-note { margin-top: 26px; }.brand-stage { max-width: 460px; width: 100%; margin: 0 auto; padding: 0 7px; }
 .brand-tile { height: 382px; border-radius: 16px; }.brand-art { width: 85%; left: 7.5%; top: 54px; max-height: 285px; }.brand-art img { height: 285px; object-fit: contain; }
 .brand-tile-head { left: 19px; right: 19px; top: 20px; font-size: 8px; }.tile-status { font-size: 9px; }.brand-orbit { width: 260px; height: 260px; margin-left: -130px; top: 58px; }.brand-orbit.orbit-two { width: 294px; height: 294px; margin-left: -147px; top: 41px; }
 .core-chip { padding: 10px 11px; font-size: 11px; }.chip-inspiration { top: 88px; left: -12px; }.chip-action { right: -9px; bottom: 77px; }.core-chip small { font-size: 6px; letter-spacing: .8px; }
 .brand-tile-foot { left: 18px; right: 18px; bottom: 18px; }.interaction-hint { margin-top: 17px; font-size: 9px; }
 .focus-grid { grid-template-columns: 1fr; gap: 22px; }.focus-card { padding: 23px 25px 20px; }.focus-card-top span { font-size: 9px; letter-spacing: 1px; }
 .craft-visual { height: 196px; width: min(100%,310px); margin: 0 auto 13px; }.focus-card h3 { font-size: 23px; margin-bottom: 10px; }.focus-card p { font-size: 13px; min-height: 0; }.focus-tags { margin-top: 18px; gap: 12px; }.focus-tags span { font-size: 10px; }.card-contact { width: 29px; height: 29px; }
 .contact-tilt { width: 100%; }.contact-panel { gap: 30px; }
}
@media (max-width:359px) {
 .header-inner { gap: 8px; }
 .brand-tile { height: 337px; }.brand-art { top: 49px; }.brand-art img { height: 245px; }.brand-orbit { width: 223px; height: 223px; margin-left: -111.5px; }.brand-orbit.orbit-two { width: 250px; height: 250px; margin-left: -125px; top: 45px; }
 .brand-tile-head { left: 13px; right: 13px; font-size: 7px; }.tile-status { font-size: 8px; }.core-chip { padding: 8px; font-size: 10px; }.chip-action { bottom: 66px; }.brand-tile-foot .mono { font-size: 5px; letter-spacing: .2px; }.interaction-hint { letter-spacing: .2px; }
 .craft-visual { height: 175px; }.focus-card { padding-inline: 20px; }
}
@media (hover:none), (pointer:coarse) {
 .hint-desktop { display: none; }.hint-touch { display: inline; }
 .tilt-surface, .depth { transform: none !important; }.surface-light { opacity: .15; }
}
@media (prefers-reduced-motion:reduce) {
 .tilt-surface, .depth { transform: none !important; transition: none !important; }
 .hint-desktop { display: none; }.hint-touch { display: inline; }
}
@media print {
 .tilt-surface,.depth { transform: none !important; box-shadow: none !important; }
 .focus-grid { grid-template-columns: repeat(3,1fr); }.craft-visual { height: 120px; }
}
/* Reserve space around the emblem so its raster bounds never obscure the frame labels. */
.brand-art { top: 59px; left: 8%; bottom: 68px; width: 84%; height: auto; max-height: none; mix-blend-mode: multiply; }
.brand-art img { width: 100%; height: 100%; object-fit: contain; }
.brand-tile-foot { z-index: 3; }
@media (max-width:700px) { .brand-art { top: 54px; bottom: 65px; } }
@media (max-width:359px) { .brand-art { top: 49px; bottom: 62px; } }
