@font-face { font-family: 'Patua One'; src: url('assets/fonts/PatuaOne-Regular.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Oswald'; src: url('assets/fonts/Oswald-Variable.ttf') format('truetype'); font-weight: 200 700; font-style: normal; font-display: swap; }

/* Foundation: colors, type and spacing shared by all nine homepage regions. */
:root {
  --color-red-primary: #6b211f;
  --color-red-dark: #481615;
  --color-red-hover: #8d302c;
  --color-red-border: #b9574d;
  --color-red-subtle: #2b1110;
  --color-red-highlight: #d97165;
  --color-red-border-soft: #b9574d52;
  --color-red-highlight-soft: #d9716545;
  --color-cream: #f1e5d2;
  --color-brass: #aa8b64;
  --ink: #111210; --panel: #1b1b18; --paper: #e5dac6; --cream: var(--color-cream);
  --red: var(--color-red-primary); --red-light: var(--color-red-highlight); --muted: #b7ad9e; --line: #3e3b34; --logo: #e8dfd2;
  --coal: #161714; --charcoal: #20201c; --oxblood: var(--color-red-dark); --brass: var(--color-brass);
  --display: 'Oswald', 'Arial Narrow', sans-serif; --body: Arial, Helvetica, sans-serif;
  --brand: 'Patua One', Georgia, serif; --wrap: 1200px; --gutter: clamp(22px, 4.2vw, 64px);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 104px; }
body { margin: 0; background: radial-gradient(circle at 15% 8%, #2a211b38 0, transparent 27%), var(--ink); color: var(--cream); font-family: var(--body); font-size: 16px; line-height: 1.7; }
body, h1, h2, h3, p, figure { margin: 0; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a, button { touch-action: manipulation; }
::selection { color: var(--cream); background: var(--red); }
:focus-visible { outline: 3px solid var(--cream); outline-offset: 2px; box-shadow: 0 0 0 6px var(--ink); }
[tabindex='-1']:focus { outline: none; box-shadow: none; }
.wrap { width: min(calc(100% - var(--gutter) * 2), var(--wrap)); margin-inline: auto; }
.skip-link { position: fixed; z-index: 20; top: 8px; left: 8px; padding: 10px 20px; background: var(--cream); color: var(--ink); transform: translateY(-180%); }
.skip-link:focus { transform: translateY(0); }
.demo-bar { padding: 5px 20px; border-bottom: 1px solid #302e29; background: #0c0d0b; text-align: center; color: #bfb3a3; font-size: 11px; letter-spacing: .025em; line-height: 1.7; }
.demo-bar strong { font-weight: 500; font-family: var(--display); letter-spacing: .09em; }
.demo-bar span { margin: 0 10px; color: var(--red-light); }
.site-header { position: sticky; z-index: 10; top: 0; background: #111210f5; border-bottom: 1px solid var(--line); box-shadow: 0 14px 32px #05050438; backdrop-filter: blur(10px); }
.header-inner { min-height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; flex-direction: column; align-items: center; flex-shrink: 0; }
.brand-definitions { position: absolute; width: 0; height: 0; overflow: hidden; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
#metamorphose-wordmark text { font-family: var(--brand); font-weight: 400; stroke: var(--ink); stroke-width: 1.4px; paint-order: stroke fill; }
.brand-word { display: block; fill: var(--logo); aspect-ratio: 1100 / 210; height: auto; overflow: visible; filter: drop-shadow(1px 2px 0 var(--color-red-primary)); }
.brand--header .brand-word { width: 212px; }
.brand-caption { font-family: var(--display); font-size: 10px; letter-spacing: .18em; margin-top: 3px; }
.main-nav { display: flex; gap: 27px; align-items: center; }
.main-nav a { position: relative; font-family: var(--display); font-size: 15px; letter-spacing: .045em; text-transform: uppercase; padding: 13px 3px; min-width: 44px; min-height: 48px; transition: color .18s, border-color .18s; }
.main-nav a::after { content: ''; position: absolute; left: 3px; right: 3px; bottom: 6px; height: 2px; background: var(--red-light); transform: scaleX(0); transform-origin: left; transition: transform .18s; }
.main-nav a[aria-current='location']::after { transform: scaleX(1); }
.main-nav a[aria-current='location'] { color: var(--cream); }
.main-nav a:focus-visible { outline: 2px solid var(--cream); outline-offset: -3px; box-shadow: none; }
.main-nav .nav-contact { border: 1px solid #6c6256; padding: 11px 21px; margin-left: 12px; }
.nav-contact span { margin-left: 20px; }
.main-nav .nav-contact::after { left: 20px; right: 20px; bottom: 5px; }
.menu-toggle { display: none; }

/* A typographic gig-poster, with a single original vector ornament. */
.hero { position: relative; overflow: clip; background: radial-gradient(ellipse at 76% 67%, #6b332a32 0, #2a252028 28%, transparent 58%), radial-gradient(ellipse at 20% 16%, #3c2b2130 0, transparent 43%), linear-gradient(145deg, #151613 0%, #10110f 58%, #181713 100%); box-shadow: inset 0 -45px 80px #05050470; }
.hero::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: repeating-linear-gradient(90deg, transparent 0 119px, #d6b98a08 120px); opacity: .45; mask-image: linear-gradient(to bottom, transparent 5%, #000 35%, #000 80%, transparent); }
.hero::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: linear-gradient(90deg, transparent, #b4785666 22%, #b4785666 78%, transparent); }
.hero-inner { position: relative; z-index: 1; padding-top: 28px; }
.hero-topline { display: flex; align-items: center; justify-content: space-between; font-family: var(--display); font-size: 12px; letter-spacing: .13em; }
.hero-topline > span:last-child { color: #a99f8f; }
.hero-word { width: min(95%, 1060px); margin: 20px auto 0; line-height: 0; }
.hero-word .brand-word { width: 100%; filter: drop-shadow(2px 3px 0 var(--color-red-primary)) drop-shadow(0 12px 22px #0008); }
.hero-signature { display: flex; align-items: center; justify-content: center; gap: 24px; color: var(--color-red-highlight); font: 29px/1 var(--brand); margin: -3px 0 24px; }
.hero-signature span { width: 85px; height: 1px; background: #684339; }
.hero-bottom { display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: 42px; min-height: 318px; padding: 0 4% 34px; }
.eyebrow { font-family: var(--display); font-size: 12px; font-weight: 500; line-height: 1.6; letter-spacing: .15em; text-transform: uppercase; }
.hero-copy .eyebrow { color: var(--color-red-highlight); }
.eyebrow span { margin-right: 9px; }
h2 { font-family: var(--display); font-weight: 500; line-height: 1.16; letter-spacing: -.025em; text-transform: uppercase; font-size: clamp(34px, 3.4vw, 48px); }
.hero-copy h2 { font-size: clamp(44px, 4.2vw, 60px); font-weight: 500; line-height: 1.1; margin: 14px 0 17px; }
.hero-description { font-size: 16px; color: var(--muted); line-height: 1.75; }
.hero-actions { display: flex; align-items: center; gap: 27px; margin-top: 23px; flex-wrap: wrap; }
.button { display: inline-flex; align-items: center; justify-content: space-between; gap: 22px; min-height: 50px; padding: 13px 21px; border: 1px solid transparent; font-family: var(--display); font-size: 15px; letter-spacing: .04em; line-height: 1.5; text-transform: uppercase; transition: background .18s, color .18s, border-color .18s, transform .18s, box-shadow .18s; }
.button span { font-family: var(--body); font-size: 19px; line-height: 1; }
.button--red { color: var(--cream); background: linear-gradient(135deg, var(--color-red-primary), var(--color-red-dark)); border-color: var(--color-red-border-soft); box-shadow: 0 10px 24px #0505043d, inset 0 1px var(--color-red-highlight-soft); }
.button--red:hover { background: linear-gradient(135deg, var(--color-red-hover), var(--color-red-primary)); box-shadow: 0 13px 28px #05050455, inset 0 1px var(--color-red-highlight-soft); }
.button--dark { color: var(--cream); background: var(--ink); }
.button--dark:hover { background: var(--red); }
.button--outline { border-color: #837969; color: var(--cream); }
.button--outline:hover { background: var(--cream); color: var(--ink); }
.text-link { display: inline-flex; align-items: center; gap: 16px; min-height: 48px; font-family: var(--display); font-size: 15px; letter-spacing: .025em; border-bottom: 1px solid #8e7e69; padding: 10px 0; line-height: 1.5; }
.text-link:hover { border-color: currentColor; }
.text-link span { font: 18px var(--body); }
.hero-art { position: relative; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 10px; isolation: isolate; min-height: 292px; }
.hero-art::before { content: ''; position: absolute; width: min(33vw, 430px); aspect-ratio: 1; border: 1px solid #a37d5730; border-radius: 50%; background: radial-gradient(circle, #8b463621 0 33%, transparent 68%); box-shadow: 0 0 80px #73322822; }
.hero-art img { width: 92%; max-width: 345px; position: relative; transform: rotate(-6deg); }
.hero-art .hero-longhorn { z-index: 1; width: clamp(490px, 38vw, 560px); max-width: none; transform: none; filter: drop-shadow(0 18px 18px #05050485); }
.hero-foot { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); min-height: 57px; font-family: var(--display); letter-spacing: .1em; font-size: 11px; color: #c1b8a7; }
.hero-foot a { padding: 14px 0; }
.hero-foot a span { margin-left: 16px; }
.manifest-strip { height: 6px; background: var(--red); }

/* Reusable editorial service sections and honest replaceable image slots. */
.section { position: relative; padding-block: clamp(72px, 7vw, 102px); border-top: 1px solid #79705f24; }
.section--paper { background: radial-gradient(circle at 82% 18%, #7a3a2c20 0, transparent 32%), linear-gradient(155deg, #24231e 0%, #1b1c18 55%, #171815 100%); color: var(--cream); }
.section--paper .eyebrow { color: var(--red-light); }
.service-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px, 7vw, 100px); align-items: center; }
.section-copy h2 { margin-top: 23px; margin-bottom: 29px; }
.serif-line { display: inline-block; font-family: var(--brand); font-weight: 400; text-transform: none; letter-spacing: -.025em; font-size: .94em; margin-top: 5px; }
.section--paper .serif-line { color: var(--color-brass); }
.section-copy > p:not(.eyebrow) { max-width: 430px; margin-bottom: 16px; color: var(--muted); }
.section-copy .button { margin-top: 16px; }
.section--paper .button--dark { background: #0e0f0d; border-color: #746858; box-shadow: 0 10px 26px #05050445; }
.section--paper .button--dark:hover { background: var(--red); }
.image-slot { min-width: 0; min-height: clamp(320px, 35vw, 440px); position: relative; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; border: 0; border-top: 1px solid #7b6d59; border-bottom: 1px solid #514b41; box-shadow: inset 0 0 70px #0606055c, 0 22px 45px #06060538; }
/* Future approved photos replace the placeholder children, retaining the figure/caption. */
.image-slot > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.image-slot > img + figcaption { position: relative; z-index: 1; background: #181816e6; }
.tattoo-slot { background: radial-gradient(circle at 65% 42%, #70422d24 0, transparent 38%), linear-gradient(145deg, #2a2a24, #1a1b18); color: var(--cream); }
.slot-index { position: absolute; top: 22px; left: 25px; font: 12px var(--display); letter-spacing: .12em; color: #b8ad98; }
.slot-content { flex: 1; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; padding: 53px 22px 27px; }
.slot-mark { font: 300 clamp(72px, 7vw, 104px)/1.15 var(--display); color: #7d7564; margin-bottom: 12px; }
.slot-title { font-family: var(--display); font-weight: 400; font-size: 20px; text-transform: uppercase; letter-spacing: .03em; line-height: 1.4; }
.image-slot figcaption { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 15px; justify-content: space-between; min-height: 51px; padding: 13px 20px; border-top: 1px solid #ffffff22; font-size: 12px; color: #cec3ae; background: #14141233; }
.image-slot figcaption > span:first-child { font-family: var(--display); font-size: 11px; letter-spacing: .06em; color: #e8dbc6; }
.section--dark .eyebrow { color: var(--color-red-highlight); }
.section--dark .section-copy > p:not(.eyebrow) { color: var(--muted); }
.piercing-slot { background: radial-gradient(circle at 35% 38%, #79513b24 0, transparent 38%), linear-gradient(145deg, #29241f, #181916); }
.jewelry-symbol { width: 95px; height: 80px; position: relative; margin-bottom: 16px; flex-shrink: 0; }
.jewelry-symbol i { position: absolute; display: block; border: 2px solid #ae9678; border-radius: 50%; width: 59px; height: 59px; }
.jewelry-symbol i:first-child { left: 0; top: 0; }
.jewelry-symbol i:last-child { right: 0; bottom: 0; }
.studio-section { position: relative; z-index: 1; overflow: clip; background: radial-gradient(ellipse at 82% 38%, #a4573d2e 0, transparent 42%), linear-gradient(125deg, #54231f 0%, #3b1c1a 58%, #211817 100%); padding-block: 76px; border-top: 1px solid #bb6a5840; border-bottom: 1px solid #bb6a5840; box-shadow: inset 0 34px 70px #0908062b, inset 0 -34px 70px #09080645; }
.studio-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.12fr 1fr; gap: clamp(40px, 7vw, 105px); align-items: center; }
.studio-copy h2 { margin: 23px 0 25px; font-size: clamp(36px, 3.7vw, 52px); }
.studio-copy > p:not(.eyebrow) { max-width: 460px; color: #ebd5c3; }
.studio-copy .text-link { margin-top: 20px; }
.studio-slot { min-height: clamp(290px, 29vw, 380px); background: linear-gradient(135deg, #37231f, #241916); border-color: #926553; }
.studio-frame { position: relative; flex: 1; display: flex; align-items: center; justify-content: center; gap: 30px; padding: 30px 22px; }
.studio-strings { align-self: stretch; width: 53px; flex-shrink: 0; min-height: 160px; background: repeating-linear-gradient(90deg, #ad8d6822 0, #cbb08d66 1px, transparent 1px, transparent 10px); }
.decor-slot { display: none; pointer-events: none; user-select: none; }
.decor-slot > img { display: block; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(6px 8px 0 #21181538); }
.studio-section.has-decor-art .decor-slot--guitar { position: absolute; z-index: 2; top: clamp(38px, 3.8vw, 54px); right: clamp(-24px, -1.1vw, -10px); display: block; width: clamp(185px, 18vw, 245px); aspect-ratio: 2 / 3; opacity: .93; transform: rotate(-8deg); transform-origin: center; filter: saturate(.9) contrast(1.04); }
.studio-frame span:last-child { font: 400 clamp(20px, 2.1vw, 29px)/1.4 var(--display); letter-spacing: -.01em; color: #dab8a0; }
.studio-slot figcaption { color: #e0c3b1; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 50px; margin-bottom: 44px; }
.section-heading .eyebrow { color: var(--color-red-highlight); margin-bottom: 21px; }
.section-heading > p { font-size: 14px; color: var(--muted); }
.gallery-grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 24px; }
.gallery-section { background: radial-gradient(circle at 14% 30%, #552a2220 0, transparent 29%), #121310; }
.gallery-placeholder { position: relative; height: clamp(230px, 24vw, 330px); background: linear-gradient(145deg, #252620, #181916); display: flex; justify-content: center; align-items: center; border: 0; border-top: 1px solid #756955; border-bottom: 1px solid #464239; box-shadow: inset 0 0 58px #07070666; }
.gallery-placeholder > img { width: 100%; height: 100%; object-fit: cover; }
.gallery-placeholder--two { background: #302824; }
.gallery-placeholder--three { background: #292a28; }
.gallery-number { font: 300 86px/1 var(--display); letter-spacing: -.035em; color: #827764; margin-top: -18px; }
.gallery-type { position: absolute; bottom: 23px; font: 12px var(--display); letter-spacing: .13em; color: #c5b6a0; }
.gallery-item figcaption { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 4px 10px; margin-top: 16px; font-size: 12px; color: #c9c0b1; }
.gallery-item figcaption span:last-child { font: 11px/1.8 var(--display); letter-spacing: .045em; color: #b4a993; }
.gallery-note { margin-top: 25px; font-size: 12px; color: #b9ae9d; }
.gallery-note > span { padding-right: 8px; color: var(--color-red-highlight); }
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; }
.contact-intro h2 { margin: 22px 0 28px; }
.contact-intro > p:not(.eyebrow) { color: var(--muted); }
.contact-demo { display: flex; gap: 17px; margin-top: 29px; font-size: 13px; color: #b9ad9b; }
.contact-demo > span { font-size: 25px; color: var(--color-red-hover); line-height: 1; }
.contact-demo strong { font-weight: 600; }
.contact-details { align-self: center; border-top: 1px solid #665e51; }
.contact-row { display: flex; align-items: flex-start; gap: 22px; padding: 27px 0; border-bottom: 1px solid #665e51; }
.contact-symbol { font: 13px/1.8 var(--display); color: var(--color-red-hover); width: 23px; flex-shrink: 0; }
.contact-row h3 { font: 500 17px/1.4 var(--display); text-transform: uppercase; letter-spacing: .025em; margin-bottom: 8px; }
address { font-style: normal; font-size: 14px; line-height: 1.7; }
.placeholder-copy { font-size: 13px; color: #aaa091; }
address + .placeholder-copy { margin-top: 8px; }
.site-footer { padding-block: 52px 20px; background: linear-gradient(180deg, #10110f, #0b0c0a); box-shadow: inset 0 1px #83735d24; }
.footer-top { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding-bottom: 40px; }
.brand--footer .brand-word { width: 270px; }
.footer-top > p { font: 13px var(--display); text-transform: uppercase; letter-spacing: .07em; color: #b3a893; }
.back-top { border: 1px solid #7d715e; width: 48px; height: 48px; display: grid; place-items: center; font-size: 20px; }
.back-top:hover { background: var(--red); }
.footer-bottom { border-top: 1px solid var(--line); display: flex; justify-content: space-between; gap: 25px; padding-top: 20px; font-size: 11px; color: #bfb4a3; }
.footer-bottom > span { font-family: var(--display); letter-spacing: .06em; }
.footer-bottom > p { max-width: 480px; text-align: right; }
.is-revealed { animation: settle-in .4s ease-out both; }
@keyframes settle-in { from { transform: translateY(7px); } to { transform: translateY(0); } }
@media (hover: hover) {
  .main-nav a:hover { color: var(--red-light); }
  .main-nav a:hover::after { transform: scaleX(1); }
  .button span, .text-link span { transition: transform .18s; }
  .button:hover span, .text-link:hover span { transform: translate(2px, -2px); }
}

@media (max-width: 1050px) {
  .main-nav { gap: 19px; } .main-nav .nav-contact { margin-left: 0; }
  .brand--header .brand-word { width: 194px; }
  .hero-actions { gap: 20px; }
  .hero-bottom { padding-inline: 2%; }
  .hero-art { min-height: 240px; }
  .service-grid { gap: 44px; }
  .contact-grid { gap: 50px; }
}
@media (min-width: 761px) and (max-width: 900px) {
  .main-nav { gap: 12px; }
  .main-nav a { font-size: 14px; }
  .main-nav .nav-contact { padding: 11px 14px; }
  .nav-contact span { margin-left: 8px; }
  .brand--header .brand-word { width: 170px; }
  .hero-copy h2 { font-size: 43px; }
  .hero-description { font-size: 15px; }
  .hero-bottom { gap: 20px; }
  .hero-actions { gap: 13px; }
  .hero-actions .button, .hero-actions .text-link { font-size: 14px; }
  .hero-actions .button { padding-inline: 15px; gap: 15px; }
  .service-grid { gap: 32px; }
  .section-copy h2 { font-size: 33px; }
  .studio-grid { gap: 36px; }
  .studio-frame { gap: 18px; padding-inline: 16px; }
}
@media (max-width: 760px) {
  html { scroll-padding-top: 92px; }
  .demo-bar { font-size: 11px; letter-spacing: 0; padding-inline: 10px; }
  .demo-bar span { margin: 0 5px; }
  .header-inner { min-height: 80px; flex-wrap: wrap; gap: 0; padding-block: 12px; }
  .brand--header .brand-word { width: 187px; }
  .brand--header .brand-caption { font-size: 9px; letter-spacing: .13em; }
  .menu-toggle:not([hidden]) { display: inline-flex; align-items: center; justify-content: center; gap: 11px; width: 110px; min-height: 48px; border: 1px solid #7b705e; background: transparent; color: var(--cream); padding: 12px; font: 13px var(--display); text-transform: uppercase; letter-spacing: .025em; cursor: pointer; }
  .menu-icon { width: 17px; display: flex; flex-direction: column; gap: 5px; }
  .menu-icon i { height: 1px; background: currentColor; width: 17px; transition: transform .2s; }
  .menu-toggle[aria-expanded='true'] .menu-icon i:first-child { transform: translateY(3px) rotate(45deg); }
  .menu-toggle[aria-expanded='true'] .menu-icon i:last-child { transform: translateY(-3px) rotate(-45deg); }
  .main-nav { flex: 0 0 100%; display: flex; flex-direction: column; align-items: stretch; gap: 0; padding: 16px 0 4px; max-height: calc(100svh - 96px); overflow-y: auto; }
  .main-nav a { padding: 12px 4px; border-top: 1px solid var(--line); font-size: 16px; }
  .main-nav a::after { width: 32px; right: auto; bottom: 4px; }
  .main-nav .nav-contact { margin: 7px 0 0; padding: 12px 15px; display: flex; justify-content: space-between; }
  .nav-enhanced .main-nav:not(.is-open) { display: none; }
  .hero-inner { padding-top: 23px; }
  .hero-topline { font-size: 11px; justify-content: center; letter-spacing: .11em; }
  .hero-topline > span:last-child { display: none; }
  .hero-word { width: 100%; max-width: 530px; margin: 19px auto 0; }
  .hero-word .brand-word { filter: drop-shadow(1px 2px 0 var(--color-red-primary)); }
  .hero-signature { font-size: 21px; margin: 3px 0 28px; gap: 13px; }
  .hero-signature span { width: 45px; }
  .hero-bottom { grid-template-columns: 1fr; gap: 9px; min-height: 0; padding: 0 0 20px; }
  .hero-copy { text-align: left; }
  .hero-copy .eyebrow { font-size: 11px; letter-spacing: .08em; }
  .hero-copy h2 { font-size: clamp(44px, 10.6vw, 56px); margin: 10px 0 16px; }
  .hero-description { font-size: 15px; line-height: 1.6; }
  .hero-description br { display: none; }
  .hero-actions { justify-content: flex-start; gap: 12px 22px; margin-top: 20px; }
  .hero-actions .button { padding: 13px 18px; font-size: 15px; }
  .hero-art { min-height: 120px; width: 100%; margin: -9px 0 0; padding-top: 0; flex-direction: row; justify-content: flex-end; }
  .hero-art::before { width: min(54vw, 205px); right: 3%; }
  .hero-art img { width: 110px; max-width: none; }
  .hero-foot { min-height: 54px; font-size: 11px; flex-wrap: wrap; gap: 0 20px; }
  .hero-foot > span:first-child { display: none; }
  .hero-foot a { width: 100%; display: flex; justify-content: space-between; min-height: 48px; padding-block: 14px; }
  .service-grid, .studio-grid, .contact-grid { grid-template-columns: 1fr; gap: 32px; }
  .service-grid--reverse .image-slot { order: 2; }
  .section-copy > p:not(.eyebrow) { max-width: 100%; font-size: 16px; }
  .section-copy h2 { margin-top: 18px; margin-bottom: 24px; }
  .section-copy .button { max-width: 100%; }
  .section { padding-block: 64px; }
  .studio-section { padding-block: 64px; }
  .studio-copy h2 { font-size: 38px; }
  .studio-copy > p:not(.eyebrow) { font-size: 16px; }
  .studio-frame span:last-child { font-size: 24px; }
  .studio-strings { min-height: 115px; }
  .section-heading { display: block; margin-bottom: 30px; }
  .section-heading > p { margin-top: 25px; }
  .gallery-grid { gap: 26px 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gallery-item:first-child { grid-column: 1 / -1; }
  .gallery-placeholder { height: auto; aspect-ratio: .93; }
  .gallery-item:first-child .gallery-placeholder { aspect-ratio: 1.7; }
  .gallery-number { font-size: 64px; }
  .gallery-type { font-size: 11px; bottom: 17px; }
  .gallery-item figcaption { margin-top: 11px; font-size: 12px; }
  .gallery-item figcaption span:last-child { font-size: 11px; }
  .contact-row { gap: 14px; }
  .contact-intro > p:not(.eyebrow) { font-size: 15px; }
  .footer-top { flex-wrap: wrap; gap: 25px; }
  .footer-top > p { order: 3; flex: 0 0 100%; font-size: 11px; }
  .brand--footer .brand-word { width: 230px; }
  .footer-bottom { flex-direction: column; gap: 13px; }
  .footer-bottom > p { text-align: left; }
}
@media (max-width: 360px) {
  .brand--header .brand-word { width: 164px; }
  .brand--header .brand-caption { font-size: 9px; }
  .menu-toggle:not([hidden]) { width: 88px; padding-inline: 8px; gap: 6px; font-size: 12px; }
  .hero-signature { margin-bottom: 25px; }
  .hero-actions { gap: 8px; }
  .hero-actions .button { width: 100%; }
  .hero-copy h2 { font-size: 44px; }
  .section-copy h2, .contact-intro h2 { font-size: 32px; }
  .studio-copy h2 { font-size: 34px; }
  .slot-title { font-size: 19px; }
  .slot-content { padding-top: 45px; }
  .slot-mark { font-size: 72px; }
  .studio-frame { gap: 18px; padding-inline: 15px; }
  .studio-frame span:last-child { font-size: 21px; }
  .brand--footer .brand-word { width: 194px; }
  .footer-top { column-gap: 16px; }
}
/* Task 03: the existing editorial system carries the path to an inquiry. */
.main-nav .nav-booking { background: var(--red); border-color: var(--red); color: var(--cream); }
.main-nav .nav-booking:hover { background: var(--color-red-hover); }
.process-section { background: radial-gradient(circle at 80% 15%, #5e2a2324 0, transparent 34%), linear-gradient(150deg, #1d1d1a, #151613); border-top: 1px solid var(--line); }
.process-grid { list-style: none; padding: 0; margin: 45px 0 35px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; }
.process-grid li { border-top: 1px solid #766451; border-left: 1px solid #5e5142; padding: 22px 0 4px 22px; }
.process-number { font: 36px/1 var(--brand); color: var(--red-light); }
.process-grid h3 { font: 24px/1.3 var(--display); text-transform: uppercase; margin: 20px 0 12px; }
.process-grid p, .faq-intro { color: var(--muted); font-size: 15px; }
.process-action { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.process-action p { font-size: 12px; color: var(--muted); }
.faq-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 80px; }
.faq-grid h2 { margin-top: 22px; }
.faq-intro { margin-top: 24px; max-width: 350px; }
.faq-section { background: linear-gradient(180deg, #141512, #10110f); }
.faq-list details { border-top: 1px solid #625b4f; transition: background .18s, padding .18s; }
.faq-list details:last-child { border-bottom: 1px solid #625b4f; }
.faq-list summary { cursor: pointer; padding: 23px 36px 23px 0; min-height: 48px; position: relative; font: 20px/1.4 var(--display); list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: '+'; position: absolute; right: 4px; top: 20px; font: 26px var(--body); color: var(--red-light); }
.faq-list details[open] summary::after { content: '−'; }
.faq-list details p { color: var(--muted); padding: 0 25px 24px 0; font-size: 15px; }
.faq-list summary:hover { color: var(--red-light); }
.faq-list details:hover, .faq-list details[open] { background: #211b18; padding-inline: 17px 13px; }
.contact-intro > .button { margin-top: 24px; }
@media (min-width: 761px) and (max-width: 900px) {
  .main-nav { gap: 9px; }
  .main-nav .nav-booking { padding-inline: 12px; font-size: 13px; }
  .nav-booking span { display: none; }
  .studio-section.has-decor-art .decor-slot--guitar { display: none; }
  .hero-art .hero-longhorn { width: min(44vw, 335px); max-width: none; transform: none; }
}
@media (max-width: 760px) {
  .studio-section.has-decor-art .decor-slot--guitar { display: none; }
  .hero-art .hero-longhorn { width: min(72vw, 255px); max-width: none; transform: none; }
  .process-grid { grid-template-columns: 1fr; gap: 25px; margin-block: 32px; }
  .process-grid li { padding-top: 20px; }
  .process-grid h3 { margin-top: 14px; }
  .process-action { gap: 15px; }
  .faq-grid { grid-template-columns: 1fr; gap: 30px; }
  .faq-list summary { font-size: 19px; }
  .main-nav .nav-booking { margin-top: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* Task 12 correction: visible Dark Americana / vintage-rock art direction. */
:root {
  --ink: #090a09;
  --panel: #141310;
  --paper: #171410;
  --muted: #c0b3a1;
  --line: #504438;
  --logo: #efe5d8;
  --coal: #0c0d0b;
  --charcoal: #191714;
}

body {
  background:
    radial-gradient(circle at 12% 5%, #4b251d2e 0, transparent 24%),
    linear-gradient(180deg, #090a09, #0c0d0b 55%, #090a09);
}

body::before {
  content: '';
  position: fixed;
  z-index: 100;
  inset: 0;
  pointer-events: none;
  opacity: .035;
  background-image:
    repeating-radial-gradient(circle at 17% 29%, #fff 0 1px, transparent 1px 4px),
    repeating-linear-gradient(103deg, transparent 0 7px, #000 8px 9px);
  background-size: 9px 9px, 17px 17px;
  mix-blend-mode: soft-light;
}

.demo-bar {
  background: #070806;
  border-bottom-color: #3d3026;
  color: #c8b9a4;
  letter-spacing: .08em;
}

.site-header {
  background: linear-gradient(90deg, #080907fa 0%, #0d0e0cfa 68%, #180c0bfa 100%);
  border-bottom-color: #6b4b38;
  box-shadow: 0 18px 48px #000b, inset 0 -1px #a6774a14;
}

.header-inner { min-height: 82px; }
.brand--header .brand-word { width: 228px; filter: drop-shadow(2px 3px 0 var(--color-red-primary)) drop-shadow(0 8px 16px #000a); }
.brand-caption { color: #d8c7ae; }
.main-nav { gap: 25px; }
.main-nav a { font-weight: 600; letter-spacing: .075em; }
.main-nav a::after { height: 3px; bottom: 4px; background: linear-gradient(90deg, var(--color-red-highlight), var(--color-red-hover)); }
.main-nav .nav-team {
  margin-left: 3px;
  padding: 12px 14px;
  border: 1px solid var(--color-red-primary);
  border-left: 3px solid var(--color-red-border);
  background: linear-gradient(118deg, #0d0e0c 0%, var(--color-red-subtle) 100%);
  color: var(--color-cream);
  box-shadow: 0 9px 20px #0006, inset 0 1px var(--color-red-border-soft);
}
.main-nav .nav-team::after { left: 13px; right: 13px; bottom: 3px; }
.main-nav .nav-team:hover,
.main-nav .nav-team[aria-current='page'] {
  border-color: var(--color-red-highlight);
  background: linear-gradient(118deg, var(--color-red-subtle) 0%, var(--color-red-dark) 100%);
  color: var(--cream);
}
.main-nav .nav-team[aria-current='page']::after { transform: scaleX(1); }
.main-nav .nav-contact,
.main-nav .nav-booking {
  margin-left: 9px;
  padding: 13px 23px;
  border: 0;
  border-left: 4px solid var(--color-red-highlight);
  background: linear-gradient(118deg, var(--color-red-primary) 0%, var(--color-red-dark) 100%);
  box-shadow: 0 12px 24px #0007, inset 0 1px var(--color-red-highlight-soft);
}
.main-nav .nav-booking:hover,
.main-nav .nav-booking[aria-current='page'] {
  background: linear-gradient(118deg, var(--color-red-hover) 0%, var(--color-red-primary) 100%);
}
.main-nav .nav-booking[aria-current='page']::after { transform: scaleX(1); }

.hero {
  min-height: 720px;
  background:
    linear-gradient(90deg, #080a08 0 43%, #100d0bde 64%, #160b0ae8 100%),
    radial-gradient(ellipse at 78% 56%, #87342969 0, #3a17175c 27%, transparent 57%),
    linear-gradient(145deg, #11120f, #090a09 58%, #1a0e0c);
  box-shadow: inset 0 -80px 130px #000a;
}

.hero::before {
  background:
    linear-gradient(90deg, transparent 0 50%, #6b211f1e 50% 50.5%, transparent 50.5%),
    repeating-linear-gradient(118deg, transparent 0 92px, #d4af7d13 93px, #d4af7d13 94px, transparent 95px 184px);
  opacity: .9;
  mask-image: linear-gradient(90deg, transparent 7%, #000 48%, #000 100%);
}

.hero::after {
  height: 2px;
  background: linear-gradient(90deg, var(--color-red-primary) 0 14%, var(--color-red-border) 14% 31%, #3c2c22 31% 100%);
}

.hero-inner { padding-top: 31px; }
.hero-topline { padding-bottom: 13px; border-bottom: 1px solid #5b493a7a; color: #e0c8ae; }
.hero-word { width: min(100%, 1180px); margin-top: 17px; transform: translateX(-1.2%); }
.hero-word .brand-word {
  filter: drop-shadow(4px 5px 0 var(--color-red-primary)) drop-shadow(0 18px 30px #000d);
}
.hero-signature { margin: -1px 0 10px; color: var(--color-red-highlight); font-size: 27px; }
.hero-signature span { width: 108px; background: linear-gradient(90deg, transparent, var(--color-red-border)); }
.hero-signature span:last-child { background: linear-gradient(90deg, var(--color-red-border), transparent); }
.hero-bottom {
  grid-template-columns: .78fr 1.22fr;
  gap: 12px;
  min-height: 386px;
  padding: 0 2% 27px 5%;
}
.hero-copy {
  position: relative;
  z-index: 2;
  padding: 28px 24px 31px 28px;
  border-left: 5px solid var(--red);
  background: linear-gradient(90deg, #090a09e8 0%, #090a09a8 70%, transparent 100%);
  box-shadow: -20px 22px 45px #0004;
}
.hero-copy h2 {
  max-width: 530px;
  margin: 11px 0 16px;
  font-size: clamp(58px, 5.3vw, 76px);
  font-weight: 620;
  line-height: .97;
  letter-spacing: -.045em;
}
.hero-description { max-width: 520px; color: #d2c3af; font-size: 17px; }
.hero-actions { margin-top: 25px; }
.button {
  border-radius: 0;
  font-weight: 620;
  letter-spacing: .07em;
}
.button--red {
  border: 0;
  border-left: 4px solid var(--color-red-highlight);
  background: linear-gradient(120deg, var(--color-red-primary), var(--color-red-dark));
  box-shadow: 0 14px 30px #0008, inset 0 1px var(--color-red-highlight-soft);
}
.button--red:hover { background: linear-gradient(120deg, var(--color-red-hover), var(--color-red-primary)); transform: translateY(-2px); }
.button--outline { border-color: #8c745b; box-shadow: inset 0 0 0 1px #0009; }
.hero-art { min-height: 360px; }
.hero-art::before {
  width: min(48vw, 650px);
  border: 0;
  border-radius: 45%;
  background: radial-gradient(ellipse, #8b30283f 0 23%, #4a191937 40%, transparent 68%);
  box-shadow: 0 0 120px #852a222b, inset 0 0 95px #0005;
}
.hero-art .hero-longhorn {
  width: clamp(610px, 50vw, 720px);
  transform: translate(4%, 2%);
  filter: drop-shadow(0 25px 22px #000b) contrast(1.08) saturate(.9);
}
.hero-foot { border-top-color: #685343; color: #d2c2ac; }
.manifest-strip {
  height: 10px;
  background: linear-gradient(90deg, var(--color-red-subtle) 0 8%, var(--color-red-primary) 8% 28%, var(--color-red-highlight) 28% 29%, var(--color-red-dark) 29% 100%);
  box-shadow: 0 8px 26px #0008;
}

.section { padding-block: clamp(88px, 8vw, 126px); overflow: clip; }
.section--paper {
  background:
    linear-gradient(112deg, #211713 0 2%, transparent 2% 100%),
    radial-gradient(circle at 82% 18%, #87322638 0, transparent 35%),
    linear-gradient(145deg, #1b1915 0%, #11120f 58%, #17100e 100%);
}
.section--dark { background: linear-gradient(132deg, #080a08 0%, #11120f 52%, #190f0d 100%); }
.service-grid { grid-template-columns: .82fr 1.18fr; gap: clamp(62px, 9vw, 132px); }
.service-grid--reverse { grid-template-columns: 1.18fr .82fr; }
.section-copy { position: relative; padding-left: 29px; }
.section-copy::before { content: ''; position: absolute; left: 0; top: 2px; width: 4px; height: 78px; background: linear-gradient(var(--color-red-highlight), var(--color-red-dark)); }
.section-copy h2 { margin-top: 19px; font-size: clamp(46px, 4.5vw, 64px); line-height: 1.02; letter-spacing: -.04em; }
.section-copy > p:not(.eyebrow) { color: #c9bba8; font-size: 17px; }
.serif-line { color: var(--color-brass); }
.image-slot {
  min-height: clamp(390px, 39vw, 510px);
  border-top-color: #9a7759;
  border-bottom-color: #51382e;
  border-left: 3px solid var(--color-red-primary);
  box-shadow: inset 0 0 100px #000a, 0 32px 64px #0007;
}
.tattoo-slot { background: radial-gradient(circle at 64% 39%, #7f382d47 0, transparent 36%), linear-gradient(138deg, #28241d, #0d0f0c); }
.piercing-slot { background: radial-gradient(circle at 37% 40%, #9360443d 0, transparent 34%), linear-gradient(145deg, #251c18, #0d0f0c); }
.slot-mark { color: #9c8870; font-size: clamp(96px, 9vw, 136px); text-shadow: 4px 6px 0 #4e1a19; }
.slot-title { max-width: 290px; font-size: 22px; letter-spacing: .08em; }
.image-slot figcaption { background: #080907d9; }

.studio-section {
  padding-block: 100px;
  background:
    linear-gradient(90deg, #351110 0 35%, transparent 35%),
    radial-gradient(ellipse at 78% 46%, #b65f403f 0, transparent 39%),
    linear-gradient(118deg, #4c1716 0%, #25100f 60%, #100c0b 100%);
  border-top-color: #ca755b5c;
  border-bottom-color: #8e3d334d;
  box-shadow: inset 0 42px 95px #0007, inset 0 -50px 90px #0009;
}
.studio-grid { grid-template-columns: .85fr 1.15fr; gap: clamp(66px, 9vw, 130px); }
.studio-copy { padding-left: 28px; border-left: 4px solid var(--color-red-highlight); }
.studio-copy h2 { font-size: clamp(48px, 4.8vw, 68px); line-height: 1; letter-spacing: -.04em; }
.studio-slot { min-height: 430px; border-left: 0; background: linear-gradient(135deg, #24100fe8, #090a08e8); }
.studio-frame span:last-child { font-size: clamp(28px, 2.8vw, 40px); color: #e1c0a6; }
.studio-section.has-decor-art .decor-slot--guitar {
  top: 10px;
  right: -19px;
  width: clamp(235px, 21vw, 300px);
  opacity: 1;
  transform: rotate(-8deg);
  filter: saturate(1.08) contrast(1.08) drop-shadow(0 28px 22px #000a);
}

.gallery-section {
  background:
    linear-gradient(90deg, #090a09 0 68%, #1b0e0c 68% 100%),
    radial-gradient(circle at 16% 25%, #6f241e31, transparent 34%);
}
.section-heading { align-items: flex-start; margin-bottom: 56px; }
.section-heading > div { padding-left: 25px; border-left: 4px solid var(--red); }
.section-heading h2 { font-size: clamp(48px, 5vw, 70px); line-height: 1; }
.gallery-grid { grid-template-columns: 1.28fr .9fr 1fr; gap: 30px; align-items: start; }
.gallery-item:nth-child(2) { margin-top: 54px; }
.gallery-item:nth-child(3) { margin-top: 18px; }
.gallery-placeholder {
  height: clamp(270px, 27vw, 390px);
  border-top-color: #977557;
  border-bottom-color: #4c352c;
  border-left: 3px solid var(--color-red-primary);
  background: radial-gradient(circle at 65% 35%, #6731292f, transparent 38%), linear-gradient(145deg, #211e19, #0d0f0c);
  box-shadow: inset 0 0 95px #000b, 0 24px 45px #0006;
}
.gallery-placeholder--two { background: radial-gradient(circle at 30% 40%, #693c2b38, transparent 35%), linear-gradient(145deg, #251b17, #0d0f0c); }
.gallery-placeholder--three { background: radial-gradient(circle at 72% 27%, #4d3b2b2c, transparent 35%), linear-gradient(145deg, #1b1c18, #0b0c0a); }
.gallery-number { color: #9b8266; text-shadow: 3px 4px 0 #4d1918; }

.process-section { background: linear-gradient(120deg, #1b1511 0%, #0f100e 57%, #1d0d0c 100%); }
.process-grid { gap: 54px; }
.process-grid li { padding: 27px 12px 8px 26px; border-top-color: #9b7454; border-left: 4px solid var(--color-red-primary); }
.process-number { font-size: 48px; color: var(--color-red-highlight); text-shadow: 2px 3px 0 var(--color-red-dark); }
.process-grid h3 { font-size: 27px; letter-spacing: .025em; }
.faq-section { background: linear-gradient(112deg, #0a0b09 0 58%, #210f0e 58% 100%); }
.faq-grid { grid-template-columns: .72fr 1.28fr; gap: 110px; }
.faq-grid > div:first-child { padding-left: 25px; border-left: 4px solid var(--color-red-primary); }
.faq-list details { border-color: #705846; }
.faq-list summary { font-size: 22px; letter-spacing: .015em; }
.faq-list details:hover,
.faq-list details[open] { background: linear-gradient(90deg, var(--color-red-subtle), #111210); }
.contact-section {
  background:
    linear-gradient(90deg, #351211 0 41%, transparent 41%),
    radial-gradient(circle at 85% 26%, #8e3e2d35, transparent 34%),
    linear-gradient(120deg, #411514, #17110f 63%, #0d0e0c);
}
.contact-intro { padding-left: 27px; border-left: 4px solid var(--color-red-highlight); }
.contact-intro h2 { font-size: clamp(48px, 5vw, 68px); line-height: 1; }
.contact-details { border-top-color: #9b7458; }
.contact-row { border-bottom-color: #705141; }
.contact-symbol { color: var(--color-red-highlight); }
.site-footer { background: linear-gradient(180deg, #090a08, #050604); box-shadow: inset 0 5px var(--color-red-subtle), inset 0 6px var(--color-red-border); }

@media (min-width: 761px) and (max-width: 1050px) {
  .brand--header .brand-word { width: 180px; }
  .main-nav { gap: 9px; }
  .main-nav a { font-size: 13px; }
  .main-nav .nav-team { margin-left: 0; padding-inline: 9px; }
  .hero { min-height: 650px; }
  .hero-bottom { grid-template-columns: .9fr 1.1fr; padding-left: 2%; }
  .hero-copy h2 { font-size: clamp(48px, 5.8vw, 62px); }
  .hero-art .hero-longhorn { width: clamp(430px, 55vw, 570px); transform: translate(6%, 2%); }
  .service-grid, .service-grid--reverse { gap: 48px; }
  .section-copy h2 { font-size: 44px; }
  .studio-grid { gap: 48px; }
  .studio-section.has-decor-art .decor-slot--guitar { width: 220px; right: -45px; }
}

@media (max-width: 760px) {
  .header-inner { min-height: 76px; }
  .brand--header .brand-word { width: 190px; }
  .menu-toggle:not([hidden]) { border-color: #8e6f55; background: #0b0c0a; box-shadow: 0 8px 20px #0007; }
  .main-nav { padding-top: 12px; }
  .main-nav a { border-top-color: #5a4738; background: #0a0b09; }
  .main-nav .nav-team { margin: 9px 0 0; padding: 12px 15px; background: linear-gradient(118deg, #0d0e0c, var(--color-red-subtle)); }
  .main-nav .nav-team:hover,
  .main-nav .nav-team[aria-current='page'] { border-color: var(--color-red-highlight); background: linear-gradient(118deg, var(--color-red-subtle), var(--color-red-dark)); }
  .main-nav .nav-contact, .main-nav .nav-booking { margin-top: 9px; }
  .hero { min-height: 0; background: radial-gradient(ellipse at 76% 69%, #7b2b2452, transparent 47%), linear-gradient(145deg, #090a08, #130b0a); }
  .hero-inner { padding-top: 20px; }
  .hero-topline { padding-bottom: 10px; }
  .hero-word { width: 108%; margin: 16px 0 0 -4%; transform: none; }
  .hero-signature { margin: 2px 0 16px; }
  .hero-bottom { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 0 0 12px; }
  .hero-bottom > * { min-width: 0; }
  .hero-copy { width: 100%; max-width: 100%; padding: 22px 12px 24px 20px; border-left-width: 4px; background: linear-gradient(90deg, #090a09eb, #090a098f, transparent); }
  .hero-copy h2 { font-size: clamp(48px, 14.2vw, 61px); line-height: .96; }
  .hero-description { font-size: 15px; }
  .hero-actions { max-width: 100%; align-items: stretch; }
  .hero-actions > * { max-width: 100%; }
  .hero-art { width: 100%; min-height: 195px; margin-top: -8px; justify-content: flex-end; overflow: visible; }
  .hero-art::before { width: min(96vw, 390px); right: -11%; }
  .hero-art .hero-longhorn { width: min(125vw, 470px); transform: translate(13%, 3%); }
  .hero-foot { border-top-color: #74543f; }
  .section { padding-block: 74px; }
  .service-grid, .service-grid--reverse, .studio-grid, .contact-grid { grid-template-columns: 1fr; gap: 42px; }
  .service-grid--reverse .image-slot { order: 2; }
  .section-copy { padding-left: 19px; }
  .section-copy::before { height: 62px; }
  .section-copy h2, .contact-intro h2 { font-size: clamp(40px, 11.5vw, 50px); }
  .image-slot { min-height: 355px; }
  .slot-mark { font-size: 96px; }
  .studio-section { padding-block: 76px; background: radial-gradient(circle at 85% 8%, #94402f4d, transparent 28%), linear-gradient(145deg, #3a1211, #100c0b 68%); }
  .studio-copy { padding-left: 19px; }
  .studio-copy h2 { font-size: 44px; }
  .studio-slot { min-height: 350px; }
  .section-heading > div { padding-left: 19px; }
  .section-heading h2 { font-size: clamp(42px, 12vw, 52px); }
  .gallery-section, .faq-section { background: linear-gradient(145deg, #090a08, #170c0b); }
  .gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 16px; }
  .gallery-item:first-child { grid-column: 1 / -1; }
  .gallery-item:nth-child(2), .gallery-item:nth-child(3) { margin-top: 0; }
  .gallery-placeholder { box-shadow: inset 0 0 65px #000b, 0 18px 35px #0006; }
  .process-grid { grid-template-columns: 1fr; gap: 30px; }
  .process-grid li { padding-left: 20px; }
  .faq-grid { grid-template-columns: 1fr; gap: 38px; }
  .faq-grid > div:first-child { padding-left: 19px; }
  .faq-list summary { font-size: 20px; }
  .contact-section { background: radial-gradient(circle at 85% 12%, #8332253d, transparent 27%), linear-gradient(145deg, #27100f, #0e0f0d 65%); }
  .contact-intro { padding-left: 19px; }
}

@media (max-width: 360px) {
  .brand--header .brand-word { width: 162px; }
  .hero-word { width: 110%; margin-left: -5%; }
  .hero-copy h2 { font-size: 46px; }
  .hero-art .hero-longhorn { width: 450px; }
  .section-copy h2, .contact-intro h2 { font-size: 39px; }
}
