 @media only screen and (min-width: 0rem) {body {font-family: var(--bodyFont);color: var(--bodyTextColor);background-color: var(--bone);}.container {width: 100%;max-width: 82rem;margin: 0 auto;padding: 0 1.25rem;}.seam {border-top: 1px solid var(--white);box-shadow: var(--seamLight);}.seam-dark {border-top: 1px solid rgba(255, 255, 255, 0.11);box-shadow: var(--seamDark);}.lites {display: flex;justify-content: center;gap: 0.25rem;margin-bottom: 1.35rem;}.lites span {display: block;width: 1.5rem;height: 0.9rem;border-radius: 1px;background-color: rgba(159, 180, 192, 0.42);border: 1px solid rgba(34, 32, 29, 0.14);}.lites.on-dark span {background-color: rgba(255, 255, 255, 0.13);border-color: rgba(255, 255, 255, 0.24);}.head {text-align: center;margin-bottom: 2.75rem;display: flex;flex-direction: column;align-items: center;}.eyebrow {font-family: var(--headingFont);font-weight: 700;letter-spacing: 0.22em;text-transform: uppercase;font-size: 0.75rem;color: var(--bronze);}.eyebrow.on-dark {color: var(--primary);}.section-title {font-family: var(--headingFont);font-weight: 700;font-size: clamp(2.1rem, 5.2vw, 3.5rem);line-height: 1.06;letter-spacing: -0.035em;color: var(--headerColor);margin: 0.85rem 0 0;max-width: 22ch;}.section-title.on-dark {color: var(--white);}.section-title .accent {color: var(--bronze);}.section-title.on-dark .accent {color: var(--primary);}.section-sub {margin-top: 1.15rem;max-width: 36rem;font-size: 1.02rem;line-height: 1.8;color: var(--bodyTextColor);}.section-sub.on-dark {color: rgba(244, 240, 233, 0.75);}.panel {position: relative;background-color: var(--white);border: 1px solid var(--line);border-radius: var(--radius);}.panel::before {content: "";position: absolute;inset: 0.75rem;border: 1px solid var(--line);border-radius: var(--radiusSmall);box-shadow: inset 0 1px 3px rgba(34, 32, 29, 0.06), 0 1px 0 rgba(255, 255, 255, 0.9);pointer-events: none;}.btn {display: inline-flex;align-items: center;justify-content: center;gap: 0.55rem;font-family: var(--headingFont);font-weight: 700;font-size: 0.95rem;letter-spacing: 0.05em;text-transform: uppercase;padding: 1.2rem 2.4rem;border-radius: var(--radius);border: 2px solid transparent;cursor: pointer;text-align: center;text-decoration: none;transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;}.btn-primary {background-color: var(--primary);color: var(--deep);box-shadow: inset 0 -3px 0 rgba(34, 32, 29, 0.22);}.btn-primary:hover {background-color: var(--primaryLight);transform: translateY(-2px);box-shadow: inset 0 -3px 0 rgba(34, 32, 29, 0.22), 0 0.85rem 1.75rem rgba(34, 32, 29, 0.25);}.btn-ghost {background-color: transparent;color: var(--bronze);border-color: var(--bronze);}.btn-ghost:hover {background-color: var(--bronze);color: var(--white);transform: translateY(-2px);}.reveal {opacity: 1;}html.js .reveal {opacity: 0;transform: translateY(1.75rem);transition: opacity 0.75s ease, transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);}html.js .reveal.is-in {opacity: 1;transform: none;}}@media only screen and (min-width: 48rem) {.head {margin-bottom: 3.5rem;}.container {padding: 0 2rem;}}@media only screen and (prefers-reduced-motion: reduce) {html.js .reveal {opacity: 1;transform: none;transition: none;}.btn:hover {transform: none;}}@media only screen and (min-width: 0rem) {#hero {position: relative;width: 100%;min-height: 84vh;display: flex;align-items: center;justify-content: center;overflow: hidden;background-color: var(--deep);text-align: center;padding: 10.5rem 0 5rem;isolation: isolate;}#hero .hero-photo {position: absolute;top: 0;left: 0;width: 100%;height: 135%;object-fit: cover;object-position: 50% 0%;z-index: -2;}#hero .hero-veil {position: absolute;inset: 0;z-index: -1;background: linear-gradient(180deg, rgba(34, 32, 29, 0.86) 0%, rgba(74, 50, 34, 0.6) 42%, rgba(34, 32, 29, 0.92) 100%);}#hero .hero-inner {max-width: 46rem;margin: 0 auto;display: flex;flex-direction: column;align-items: center;position: relative;z-index: 1;}#hero .eyebrow {color: var(--primary);}#hero h1 {font-family: var(--headingFont);font-weight: 700;font-size: clamp(2.6rem, 8.2vw, 4.9rem);line-height: 1;letter-spacing: -0.04em;color: var(--white);margin-top: 1.1rem;}#hero .hero-second {display: block;color: var(--primary);}#hero .hero-sub {font-size: 1.08rem;line-height: 1.8;color: rgba(244, 240, 233, 0.88);max-width: 33rem;margin: 1.35rem auto 2.4rem;}}@media only screen and (min-width: 48rem) {#hero {padding: 13rem 0 7rem;}#hero .hero-photo {height: 120%;}}@media only screen and (min-width: 64rem) {#hero {min-height: 90vh;}#hero .hero-photo {height: 100%;object-position: 50% 45%;}#hero::before, #hero::after {content: "";position: absolute;top: 0;bottom: 0;width: 1px;background-color: rgba(255, 255, 255, 0.13);z-index: 0;}#hero::before {left: 2.5rem;}#hero::after {right: 2.5rem;}}@media only screen and (min-width: 0rem) {#about {background-color: var(--white);padding: 4.5rem 0;}#about .about-wrap {display: grid;grid-template-columns: 1fr;gap: 3rem;align-items: center;}#about .about-art {order: 2;position: relative;max-width: 27rem;width: 100%;margin: 0 auto;padding: 0.75rem;background-color: var(--bone);border: 1px solid var(--line);border-radius: var(--radius);}#about .about-art img {width: 100%;aspect-ratio: 1 / 1;object-fit: cover;display: block;border-radius: var(--radiusSmall);}#about .about-copy {order: 1;display: flex;flex-direction: column;align-items: center;text-align: center;}#about .about-copy p {font-size: 1.04rem;line-height: 1.85;color: var(--bodyTextColor);max-width: 34rem;margin-top: 1.35rem;}#about .about-quote {margin: 2.25rem 0;padding: 1.6rem 1.5rem;width: 100%;max-width: 32rem;background-color: var(--bone);border-left: 4px solid var(--primary);border-radius: 0 var(--radiusSmall) var(--radiusSmall) 0;font-family: var(--headingFont);font-size: 1.25rem;font-weight: 700;line-height: 1.4;letter-spacing: -0.025em;color: var(--headerColor);}#about .about-sign {font-family: var(--headingFont);font-size: 0.78rem;font-weight: 700;letter-spacing: 0.16em;text-transform: uppercase;color: var(--bronze);margin-bottom: 2rem;}}@media only screen and (min-width: 48rem) {#about {padding: 6rem 0;}}@media only screen and (min-width: 64rem) {#about .about-wrap {grid-template-columns: 0.9fr 1.1fr;gap: 5rem;}#about .about-art {order: 1;max-width: none;}#about .about-copy {order: 2;}}@media only screen and (min-width: 0rem) {#services {background-color: var(--bone);padding: 4.5rem 0;}#services .svc-grid {list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: 1fr;gap: 1rem;}#services .svc {padding: 2.5rem 2rem 2.75rem;text-align: center;display: flex;flex-direction: column;align-items: center;transition: transform 0.3s ease, box-shadow 0.3s ease;}#services .svc:hover {transform: translateY(-5px);box-shadow: var(--shadowLift);}#services .svc-num {position: relative;z-index: 1;width: 3rem;height: 3rem;border-radius: var(--radiusSmall);background-color: var(--bronze);color: var(--white);font-family: var(--headingFont);font-weight: 700;font-size: 1.1rem;line-height: 3rem;margin-bottom: 1.4rem;transition: background-color 0.3s ease, color 0.3s ease;}#services .svc:hover .svc-num {background-color: var(--primary);color: var(--deep);}#services .svc h3 {position: relative;z-index: 1;font-family: var(--headingFont);font-weight: 700;font-size: 1.4rem;line-height: 1.2;letter-spacing: -0.03em;color: var(--headerColor);margin-bottom: 0.8rem;max-width: 16ch;}#services .svc p {position: relative;z-index: 1;font-size: 0.98rem;line-height: 1.8;color: var(--bodyTextColor);max-width: 26rem;margin: 0 auto;}}@media only screen and (min-width: 48rem) {#services {padding: 6rem 0;}#services .svc-grid {grid-template-columns: repeat(2, 1fr);gap: 1.25rem;}}@media only screen and (min-width: 64rem) {#services .svc-grid {grid-template-columns: repeat(4, 1fr);gap: 1.25rem;}}@media only screen and (min-width: 0rem) {#brands {background-color: var(--white);padding: 4.5rem 0;}#brands .door-grid {list-style: none;margin: 0 auto;padding: 0;max-width: 68rem;display: grid;grid-template-columns: repeat(2, 1fr);gap: 0.85rem;}#brands .door-card {background-color: var(--bone);border: 1px solid var(--line);border-radius: var(--radius);padding: 1.5rem 1rem 1.65rem;display: flex;flex-direction: column;align-items: center;text-align: center;transition: border-color 0.3s ease, transform 0.3s ease, background-color 0.3s ease;}#brands .door-card:hover {border-color: var(--bronze);background-color: var(--white);transform: translateY(-5px);}#brands .door-art {width: 100%;max-width: 9rem;height: auto;display: block;color: var(--bronze);transition: color 0.3s ease;}#brands .door-card:hover .door-art {color: var(--bronzeDeep);}#brands .door-art .door-glass {fill: rgba(159, 180, 192, 0.45);stroke: currentColor;}#brands .door-art .door-track {stroke: currentColor;opacity: 0.4;}#brands .door-name {margin-top: 1.15rem;font-family: var(--headingFont);font-size: 1.15rem;font-weight: 700;letter-spacing: -0.02em;line-height: 1.2;color: var(--headerColor);}#brands .door-note {margin-top: 0.4rem;font-size: 0.88rem;line-height: 1.5;color: var(--bodyTextColor);}#brands .opener-band {margin: 2.5rem auto 0;max-width: 68rem;background-color: var(--deep);border-radius: var(--radius);padding: 2.25rem 1.5rem;display: flex;flex-direction: column;align-items: center;text-align: center;gap: 1.5rem;}#brands .opener-art {width: 100%;max-width: 13rem;height: auto;display: block;color: var(--primary);}#brands .opener-copy {display: flex;flex-direction: column;align-items: center;}#brands .opener-label {font-family: var(--headingFont);font-size: 0.75rem;font-weight: 700;letter-spacing: 0.22em;text-transform: uppercase;color: var(--primary);}#brands .opener-title {margin-top: 0.6rem;font-family: var(--headingFont);font-size: clamp(1.5rem, 4.4vw, 2rem);font-weight: 700;letter-spacing: -0.03em;line-height: 1.15;color: var(--white);}#brands .opener-run {list-style: none;margin: 1.35rem 0 0;padding: 0;display: flex;flex-wrap: wrap;justify-content: center;gap: 0.5rem;}#brands .opener-run li {background-color: rgba(255, 255, 255, 0.08);border: 1px solid rgba(255, 255, 255, 0.16);border-radius: var(--radiusSmall);padding: 0.65rem 1.15rem;font-family: var(--headingFont);font-size: 0.95rem;font-weight: 600;line-height: 1.2;color: var(--white);}#brands .brand-note {text-align: center;margin: 2.5rem auto 0;max-width: 36rem;font-size: 1rem;line-height: 1.8;color: var(--bodyTextColor);}}@media only screen and (min-width: 48rem) {#brands {padding: 6rem 0;}#brands .door-grid {grid-template-columns: repeat(4, 1fr);gap: 1.25rem;}#brands .door-card {padding: 2rem 1.25rem 2.15rem;}#brands .opener-band {flex-direction: row;justify-content: center;text-align: left;gap: 3rem;padding: 2.75rem 3rem;}#brands .opener-copy {align-items: flex-start;text-align: left;}#brands .opener-run {justify-content: flex-start;}}@media only screen and (min-width: 0rem) {#ba {background-color: var(--deep);padding: 4.5rem 0;}#ba .ba-stack {display: grid;grid-template-columns: 1fr;gap: 2rem;max-width: 58rem;margin: 0 auto;}#ba .ba-item {display: flex;flex-direction: column;}#ba .ba-frame {--pos: 50%;position: relative;width: 100%;aspect-ratio: 1 / 1;overflow: hidden;line-height: 0;border-radius: var(--radius);border: 1px solid rgba(255, 255, 255, 0.14);touch-action: pan-y;}#ba .ba-frame img {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;display: block;user-select: none;pointer-events: none;}#ba .ba-top {clip-path: inset(0 0 0 var(--pos));}#ba .ba-line {position: absolute;top: 0;bottom: 0;left: var(--pos);width: 3px;margin-left: -1.5px;background-color: var(--primary);z-index: 3;}#ba .ba-knob {position: absolute;top: 50%;left: var(--pos);transform: translate(-50%, -50%);width: 3.4rem;height: 2rem;border-radius: 0.3rem;background-color: var(--primary);border: 3px solid var(--white);box-shadow: 0 0.6rem 1.4rem rgba(0, 0, 0, 0.5), inset 0 -3px 0 rgba(34, 32, 29, 0.25);z-index: 4;pointer-events: none;}#ba .ba-tag {position: absolute;top: 1rem;z-index: 4;font-family: var(--headingFont);font-size: 0.7rem;font-weight: 700;letter-spacing: 0.14em;text-transform: uppercase;padding: 0.45rem 0.9rem;border-radius: var(--radiusSmall);line-height: 1;}#ba .ba-tag-left {left: 1rem;color: var(--white);background-color: rgba(34, 32, 29, 0.8);}#ba .ba-tag-right {right: 1rem;color: var(--deep);background-color: var(--primary);}#ba .ba-range {position: absolute;inset: 0;z-index: 5;width: 100%;height: 100%;margin: 0;padding: 0;background: transparent;border: none;appearance: none;-webkit-appearance: none;cursor: ew-resize;}#ba .ba-range::-webkit-slider-runnable-track {background: transparent;height: 100%;}#ba .ba-range::-moz-range-track {background: transparent;height: 100%;}#ba .ba-range::-webkit-slider-thumb {appearance: none;-webkit-appearance: none;width: 3.4rem;height: 100%;background: transparent;border: none;cursor: ew-resize;}#ba .ba-range::-moz-range-thumb {width: 3.4rem;height: 100%;background: transparent;border: none;cursor: ew-resize;}#ba .ba-range:focus-visible {outline: 3px solid var(--primary);outline-offset: -3px;}#ba .ba-meta {padding: 1.5rem 0.5rem 0;text-align: center;}#ba .ba-meta h3 {font-family: var(--headingFont);font-weight: 700;font-size: 1.35rem;letter-spacing: -0.03em;color: var(--white);margin-bottom: 0.6rem;}#ba .ba-meta p {font-size: 0.98rem;line-height: 1.8;color: rgba(244, 240, 233, 0.7);max-width: 30rem;margin: 0 auto;}}@media only screen and (min-width: 48rem) {#ba {padding: 6rem 0;}#ba .ba-stack {grid-template-columns: repeat(2, 1fr);gap: 2.5rem;}}@media only screen and (min-width: 0rem) {#videos {background-color: var(--white);padding: 4.5rem 0;}#videos .vid-switch {display: flex;justify-content: center;flex-wrap: wrap;gap: 0.5rem;margin-bottom: 1.75rem;}#videos .vid-tab {font-family: var(--headingFont);font-size: 0.8rem;font-weight: 700;letter-spacing: 0.1em;text-transform: uppercase;color: var(--bronze);background-color: transparent;border: 2px solid var(--line);border-radius: var(--radius);padding: 0.8rem 1.5rem;cursor: pointer;transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;}#videos .vid-tab:hover {border-color: var(--bronze);}#videos .vid-tab.is-active {background-color: var(--bronze);border-color: var(--bronze);color: var(--white);}#videos .vid-stage {display: flex;justify-content: center;}#videos .vid {margin: 0;width: 100%;max-width: 13rem;display: flex;flex-direction: column;align-items: center;text-align: center;}#videos .vid[hidden] {display: none;}#videos .vid-shell {width: 100%;padding: 0.5rem;background-color: var(--bone);border: 1px solid var(--line);border-radius: var(--radius);line-height: 0;}#videos .vid video {width: 100%;height: auto;display: block;border-radius: var(--radiusSmall);background-color: var(--deep);}#videos .vid figcaption {margin-top: 0.9rem;font-family: var(--headingFont);font-size: 0.78rem;font-weight: 700;letter-spacing: 0.14em;text-transform: uppercase;color: var(--bronze);}}@media only screen and (min-width: 48rem) {#videos {padding: 6rem 0;}#videos .vid {max-width: 15rem;}}@media only screen and (min-width: 0rem) {#projects {background-color: var(--bone);padding: 4.5rem 0;overflow: hidden;}#projects .p-track {list-style: none;margin: 0;padding: 0 0 0.5rem;display: flex;gap: 1rem;overflow-x: auto;scroll-snap-type: x mandatory;scroll-behavior: smooth;scrollbar-width: none;-ms-overflow-style: none;}#projects .p-track::-webkit-scrollbar {display: none;}#projects .p-track:focus-visible {outline: 3px solid var(--bronze);outline-offset: 5px;}#projects .p-slide {flex: 0 0 78%;scroll-snap-align: center;}#projects .p-slide img {width: 100%;aspect-ratio: 1 / 1;object-fit: cover;display: block;border-radius: var(--radius);border: 1px solid var(--line);}#projects .p-controls {display: flex;align-items: center;justify-content: center;gap: 1rem;margin-top: 2rem;}#projects .p-arrow {width: 3.25rem;height: 3.25rem;border-radius: var(--radiusSmall);display: flex;align-items: center;justify-content: center;background-color: var(--bronze);color: var(--white);border: none;font-size: 1.5rem;line-height: 1;cursor: pointer;transition: background-color 0.25s ease, color 0.25s ease, transform 0.25s ease;}#projects .p-arrow:hover {background-color: var(--primary);color: var(--deep);transform: translateY(-2px);}#projects .p-progress {width: 8rem;height: 4px;background-color: var(--line);position: relative;overflow: hidden;}#projects .p-bar {position: absolute;left: 0;top: 0;bottom: 0;width: 25%;background-color: var(--primary);transition: left 0.25s ease, width 0.25s ease;}}@media only screen and (min-width: 48rem) {#projects {padding: 6rem 0;}#projects .p-slide {flex: 0 0 44%;}#projects .p-progress {width: 12rem;}}@media only screen and (min-width: 64rem) {#projects .p-slide {flex: 0 0 30%;}#projects .p-progress {width: 16rem;}}@media only screen and (min-width: 0rem) {#areas {background-color: var(--white);padding: 4.5rem 0;}#areas .area-wrap {display: grid;grid-template-columns: 1fr;gap: 1.25rem;max-width: 68rem;margin: 0 auto;align-items: stretch;}#areas .area-hub {background-color: var(--deep);border-radius: var(--radius);padding: 2.5rem 1.75rem 2.75rem;display: flex;flex-direction: column;align-items: center;text-align: center;}#areas .area-art {width: 100%;max-width: 11rem;height: auto;display: block;color: var(--primary);margin-bottom: 1.75rem;}#areas .hub-label {font-family: var(--headingFont);font-size: 0.72rem;font-weight: 700;letter-spacing: 0.22em;text-transform: uppercase;color: var(--primary);}#areas .hub-title {margin-top: 0.6rem;font-family: var(--headingFont);font-size: clamp(1.5rem, 4.4vw, 1.95rem);font-weight: 700;letter-spacing: -0.03em;line-height: 1.15;color: var(--white);}#areas .hub-note {margin-top: 0.9rem;font-size: 0.98rem;line-height: 1.75;color: rgba(244, 240, 233, 0.72);max-width: 20rem;}#areas .hub-phone {margin-top: 1.6rem;font-family: var(--headingFont);font-size: 1.05rem;font-weight: 700;letter-spacing: 0.02em;color: var(--deep);background-color: var(--primary);border-radius: var(--radiusSmall);padding: 0.85rem 1.6rem;text-decoration: none;box-shadow: inset 0 -3px 0 rgba(34, 32, 29, 0.22);transition: background-color 0.25s ease, transform 0.25s ease;}#areas .hub-phone:hover {background-color: var(--primaryLight);transform: translateY(-2px);}#areas .area-grid {list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(2, 1fr);gap: 0.6rem;align-content: start;}#areas .area-grid li {position: relative;background-color: var(--bone);border: 1px solid var(--line);border-radius: var(--radiusSmall);padding: 1.15rem 0.75rem;text-align: center;font-family: var(--headingFont);font-size: clamp(0.95rem, 3vw, 1.1rem);font-weight: 600;letter-spacing: -0.01em;line-height: 1.3;color: var(--headerColor);transition: background-color 0.25s ease, border-color 0.25s ease, transform 0.25s ease;}#areas .area-grid li::before {content: "";position: absolute;inset: 0.4rem;border: 1px solid rgba(34, 32, 29, 0.07);border-radius: 2px;pointer-events: none;}#areas .area-grid li:hover {background-color: var(--primary);border-color: var(--primaryDark);transform: translateY(-3px);}#areas .areas-note {text-align: center;margin: 2.5rem auto 0;max-width: 34rem;font-size: 1rem;line-height: 1.8;color: var(--bodyTextColor);}}@media only screen and (min-width: 48rem) {#areas {padding: 6rem 0;}#areas .area-grid {grid-template-columns: repeat(3, 1fr);gap: 0.75rem;}}@media only screen and (min-width: 64rem) {#areas .area-wrap {grid-template-columns: 0.85fr 1.15fr;gap: 1.5rem;align-items: stretch;}#areas .area-hub {justify-content: center;padding: 3rem 2rem;height: 100%;}#areas .area-grid {height: 100%;align-content: stretch;grid-auto-rows: 1fr;}#areas .area-grid li {display: flex;align-items: center;justify-content: center;}}@media only screen and (min-width: 0rem) {#cta {position: relative;width: 100%;overflow: hidden;background-color: var(--bronzeDeep);padding: 5rem 0;text-align: center;isolation: isolate;}#cta .cta-photo {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;z-index: -2;}#cta .cta-veil {position: absolute;inset: 0;z-index: -1;background: linear-gradient(180deg, rgba(34, 32, 29, 0.92) 0%, rgba(74, 50, 34, 0.8) 50%, rgba(34, 32, 29, 0.94) 100%);}#cta .cta-inner {display: flex;flex-direction: column;align-items: center;max-width: 42rem;margin: 0 auto;}#cta h2 {font-family: var(--headingFont);font-weight: 700;font-size: clamp(2.1rem, 5.6vw, 3.4rem);line-height: 1.06;letter-spacing: -0.035em;color: var(--white);margin: 0.85rem 0 2.5rem;max-width: 18ch;}#cta .cta-accent {display: block;color: var(--primary);}#cta p {max-width: 34rem;margin: 1.3rem auto 2.25rem;font-size: 1.02rem;line-height: 1.8;color: rgba(244, 240, 233, 0.85);}#cta .cta-phone {margin-top: 1.5rem;font-family: var(--headingFont);font-size: 0.88rem;font-weight: 700;letter-spacing: 0.08em;text-transform: uppercase;color: var(--white);text-decoration: none;border-bottom: 3px solid var(--primary);padding-bottom: 0.4rem;transition: color 0.25s ease;}#cta .cta-phone:hover {color: var(--primary);}}@media only screen and (min-width: 48rem) {#cta {padding: 7rem 0;}}