@import url('https://fonts.googleapis.com/css2?family=Anton&family=Barlow:wght@400;500;600;700;800&family=Dancing+Script:wght@600;700&display=swap');:root {--yellow: #f6c90e;--yellow-dark: #d8af00;--black: #141414;--ink: #1d1d1d;--white: #ffffff;--cream: #faf8f1;--gray: #6c6c6c;--line: #e6e3da;--display: 'Anton', Impact, sans-serif;--body: 'Barlow', system-ui, sans-serif;--script: 'Dancing Script', cursive;}@media only screen and (min-width: 0rem) {.container {width: 100%;max-width: 80rem;margin: 0 auto;padding: 0 1.5rem;}.eyebrow {font-family: var(--body);font-weight: 800;letter-spacing: 0.22em;text-transform: uppercase;font-size: 0.78rem;color: var(--yellow-dark);display: inline-flex;align-items: center;gap: 0.625rem;}.eyebrow::before {content: "";width: 2.125rem;height: 3px;background: var(--yellow);display: inline-block;}.eyebrow.on-dark {color: var(--yellow);}.section-title {font-family: var(--display);font-weight: 400;font-size: clamp(2.1rem, 5vw, 3.4rem);line-height: 0.98;letter-spacing: 0.5px;text-transform: uppercase;color: var(--black);margin: 0.875rem 0 1.125rem;}.section-title .accent {color: var(--yellow-dark);}.lead {font-size: 1.07rem;color: var(--gray);max-width: 39rem;}.btn {display: inline-flex;align-items: center;justify-content: center;gap: 0.625rem;font-family: var(--body);font-weight: 800;text-transform: uppercase;letter-spacing: 0.05em;font-size: 0.92rem;padding: 1rem 1.875rem;border: 3px solid transparent;cursor: pointer;transition: transform 0.18s ease, background 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;}.btn-primary {background: var(--yellow);color: var(--white);border-color: var(--yellow);}.btn-primary:hover {background: var(--yellow-dark);border-color: var(--yellow-dark);transform: translateY(-3px);box-shadow: 0 0.75rem 1.75rem rgba(246, 201, 14, 0.45);}}@media only screen and (min-width: 0rem) {#hero {position: relative;min-height: 80vh;display: flex;align-items: center;justify-content: center;background-color: #1b1b1b;overflow: hidden;padding: 11rem 0 5rem;text-align: center;}#hero .hero-bg {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;z-index: 1;}#hero .hero-overlay {position: absolute;inset: 0;z-index: 2;background: linear-gradient(180deg, rgba(12, 12, 12, 0.82) 0%, rgba(12, 12, 12, 0.62) 45%, rgba(12, 12, 12, 0.80) 100%);}#hero .hero-inner {position: relative;z-index: 3;max-width: 44rem;margin: 0 auto;display: flex;flex-direction: column;align-items: center;}#hero .hero-badge {display: inline-block;background: var(--yellow);color: var(--black);font-weight: 800;text-transform: uppercase;letter-spacing: 0.12em;font-size: 0.72rem;padding: 0.4375rem 0.875rem;margin-bottom: 1.375rem;}#hero h1 {font-family: var(--display);font-weight: 400;font-size: clamp(2.8rem, 9vw, 5.6rem);line-height: 0.92;letter-spacing: 1px;text-transform: uppercase;color: var(--white);}#hero h1 .y {color: var(--yellow);}#hero h1 .script {font-family: var(--script);font-weight: 700;font-size: clamp(1.6rem, 5vw, 2.6rem);color: var(--white);text-transform: none;letter-spacing: 0;display: block;margin-top: 0.375rem;}#hero p.sub {font-size: 1.12rem;color: rgba(255, 255, 255, 0.88);max-width: 33rem;margin: 1.375rem auto 2rem;}#hero .hero-cta {display: flex;justify-content: center;gap: 1rem;}}@media only screen and (min-width: 64rem) {#hero {min-height: 92vh;padding: 9rem 0 7rem;}}@media only screen and (min-width: 0rem) {#about {padding: 4rem 0;background: var(--cream);}#about .wrap {display: grid;grid-template-columns: 1fr;gap: 2.5rem;align-items: center;}#about .about-media {order: -1;position: relative;}#about .about-media img {width: 100%;aspect-ratio: 4 / 3;object-fit: cover;border: 0.5rem solid var(--black);}#about .est-badge {position: absolute;bottom: -0.75rem;right: -0.5rem;background: var(--yellow);color: var(--black);font-family: var(--display);font-weight: 400;font-size: 1.1rem;letter-spacing: 0.06em;text-transform: uppercase;padding: 0.5rem 1rem;border: 4px solid var(--black);}#about p {margin-bottom: 1.125rem;color: #3a3a3a;}#about .btn {display: flex;width: fit-content;margin: 0.75rem auto 0;}}@media only screen and (min-width: 48rem) {#about {padding: 6rem 0;}}@media only screen and (min-width: 64rem) {#about .wrap {grid-template-columns: 1.1fr 0.9fr;gap: 4rem;}#about .about-media {order: 0;}}@media only screen and (min-width: 0rem) {#services {padding: 4rem 0;background: var(--white);}#services .head {text-align: center;margin-bottom: 3rem;display: flex;flex-direction: column;align-items: center;}#services .svc-grid {display: grid;grid-template-columns: 1fr;gap: 1.5rem;}#services .svc {position: relative;background: var(--white);border: 1px solid var(--line);padding: 2.125rem 1.875rem 1.875rem;text-align: center;transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;}#services .svc::before {content: "";position: absolute;top: 0;left: 0;height: 5px;width: 0;background: var(--yellow);transition: width 0.25s ease;}#services .svc:hover {transform: translateY(-6px);box-shadow: 0 1.125rem 3.125rem rgba(0, 0, 0, 0.14);border-color: transparent;}#services .svc:hover::before {width: 100%;}#services .svc .ico {width: 3.375rem;height: 3.375rem;display: flex;align-items: center;justify-content: center;background: var(--black);margin: 0 auto 1.125rem;}#services .svc .ico svg {width: 1.75rem;height: 1.75rem;stroke: var(--yellow);}#services .svc h3 {font-family: var(--display);font-weight: 400;font-size: 1.4rem;letter-spacing: 0.5px;text-transform: uppercase;margin-bottom: 0.625rem;}#services .svc p {font-size: 0.95rem;color: var(--gray);}}@media only screen and (min-width: 48rem) {#services {padding: 6rem 0;}#services .svc-grid {grid-template-columns: repeat(2, 1fr);}}@media only screen and (min-width: 64rem) {#services .svc-grid {grid-template-columns: repeat(3, 1fr);}}@media only screen and (min-width: 0rem) {#gallery {padding: 4rem 0;background: var(--cream);}#gallery .head {text-align: center;margin-bottom: 2.5rem;display: flex;flex-direction: column;align-items: center;}#gallery .gallery {position: relative;display: flex;align-items: center;max-width: 60rem;margin: 0 auto;}#gallery .g-viewport {overflow: hidden;width: 100%;border: 0.5rem solid var(--black);}#gallery .g-track {display: flex;transition: transform 0.45s ease;}#gallery .g-slide {min-width: 100%;}#gallery .g-slide img {width: 100%;aspect-ratio: 16 / 10;object-fit: cover;display: block;}#gallery .g-arrow {position: absolute;top: 50%;transform: translateY(-50%);z-index: 4;width: 2.75rem;height: 2.75rem;display: flex;align-items: center;justify-content: center;background: var(--black);color: var(--yellow);border: none;font-size: 1.6rem;line-height: 1;cursor: pointer;transition: background 0.18s ease, color 0.18s ease;}#gallery .g-arrow:hover {background: var(--yellow);color: var(--black);}#gallery .g-prev {left: 0.5rem;}#gallery .g-next {right: 0.5rem;}#gallery .g-dots {display: flex;justify-content: center;gap: 0.625rem;margin-top: 1.5rem;}#gallery .g-dot {width: 0.75rem;height: 0.75rem;padding: 0;background: var(--line);border: 2px solid var(--black);cursor: pointer;transition: background 0.18s ease;}#gallery .g-dot.is-active {background: var(--yellow);}}@media only screen and (min-width: 48rem) {#gallery {padding: 6rem 0;}#gallery .g-slide {min-width: 50%;padding: 0 0.4rem;}#gallery .g-slide img {aspect-ratio: 4 / 3;}#gallery .g-arrow {width: 3rem;height: 3rem;font-size: 1.8rem;}#gallery .g-prev {left: 0.75rem;}#gallery .g-next {right: 0.75rem;}}@media only screen and (min-width: 0rem) {#process {padding: 4rem 0;background: var(--white);}#process .head {text-align: center;margin-bottom: 3rem;display: flex;flex-direction: column;align-items: center;}#process .steps {display: grid;grid-template-columns: 1fr;gap: 2.25rem;}#process .step {position: relative;padding: 0.875rem 0.5rem;text-align: center;}#process .step .num {font-family: var(--display);font-size: 3.4rem;color: var(--yellow);line-height: 0.9;-webkit-text-stroke: 2px var(--black);}#process .step h4 {font-family: var(--display);font-weight: 400;font-size: 1.25rem;text-transform: uppercase;letter-spacing: 0.5px;margin: 0.625rem 0 0.5rem;}#process .step p {font-size: 0.93rem;color: var(--gray);}}@media only screen and (min-width: 48rem) {#process {padding: 6rem 0;}#process .steps {grid-template-columns: repeat(2, 1fr);}#process .step {text-align: left;}}@media only screen and (min-width: 64rem) {#process .steps {grid-template-columns: repeat(4, 1fr);}}@media only screen and (min-width: 0rem) {#reviews {padding: 4rem 0;background: var(--black);color: var(--white);}#reviews .head {text-align: center;margin-bottom: 3.125rem;display: flex;flex-direction: column;align-items: center;}#reviews .head .section-title {color: var(--white);}#reviews .rev-grid {display: grid;grid-template-columns: 1fr;gap: 1.5rem;}#reviews .rev {border: 1px solid rgba(255, 255, 255, 0.14);padding: 1.875rem;background: rgba(255, 255, 255, 0.03);display: flex;flex-direction: column;}#reviews .rev .stars {color: var(--yellow);letter-spacing: 3px;font-size: 1.1rem;margin-bottom: 0.875rem;}#reviews .rev p {font-size: 0.96rem;color: rgba(255, 255, 255, 0.82);font-style: italic;margin-bottom: 1.25rem;}#reviews .rev .who {margin-top: auto;font-weight: 700;letter-spacing: 0.04em;color: var(--yellow);}}@media only screen and (min-width: 48rem) {#reviews {padding: 6rem 0;}}@media only screen and (min-width: 64rem) {#reviews .rev-grid {grid-template-columns: repeat(3, 1fr);}}@media only screen and (min-width: 0rem) {#cta {background: var(--yellow);color: var(--black);text-align: center;padding: 4.5rem 0;}#cta h2 {font-family: var(--display);font-weight: 400;font-size: clamp(2.2rem, 5.5vw, 4rem);text-transform: uppercase;letter-spacing: 1px;line-height: 0.95;}#cta h2 .script {font-family: var(--script);font-weight: 700;font-size: clamp(1.6rem, 4vw, 2.4rem);display: block;text-transform: none;letter-spacing: 0;margin-top: 0.25rem;}#cta p {max-width: 35rem;margin: 1.125rem auto 1.875rem;font-weight: 600;font-size: 1.08rem;}#cta .btn {background: var(--black);border-color: var(--black);color: var(--white);text-decoration: underline;text-underline-offset: 0.25em;}#cta .btn:hover {background: #000;border-color: #000;color: var(--white);}}@media only screen and (min-width: 48rem) {#cta {padding: 5.25rem 0;}}