/* Source-faithful Figma brand layer: actual images, lockup, copy, and vector arrows. */
.brand { gap: 9px; }
.brand-name { font-size: clamp(28px, 3.15vw, 45px); letter-spacing: -.7px; white-space: nowrap; }
.figma-logo { display: block; width: 77px; flex: 0 0 77px; }
.figma-logo-top { display: flex; align-items: center; height: 45px; gap: 2px; }
.figma-dfw { font: 28px/1 var(--display); color: white; }
.figma-scales { display: block; width: 39px; height: 37px; overflow: hidden; position: relative; }
.brand .figma-scales img { position: absolute; width: 66px; height: 66px; max-width: none; left: -13px; top: -15px; }
.figma-logo-caption { display: block; font: 7.2px/1.1 var(--display); color: white; white-space: nowrap; text-align: center; letter-spacing: .1px; }
.nav { gap: 16px; min-height: 88px; }
.nav-links { gap: 16px; }
.nav-dropdown { position: relative; border: 0; padding: 0; }
.nav-dropdown:first-child { border: 0; }
.nav-dropdown summary { display: flex; align-items: center; gap: 5px; white-space: nowrap; color: white; font: 700 9px/1.4 var(--body); letter-spacing: 0; padding: 20px 0; }
.nav-dropdown summary:after { display: none; }
.nav-dropdown summary:hover, .nav-dropdown[open] summary { color: #c5d8f1; }
.nav-chevron { width: 8px; height: 6px; flex: 0 0 8px; transition: rotate .2s; }
.nav-dropdown[open] .nav-chevron { rotate: 180deg; }
.nav-dropdown-panel { position: absolute; top: 100%; left: -18px; width: 250px; padding: 14px; background: #14232f; border: 1px solid #597081; border-radius: 0 0 10px 10px; box-shadow: 0 16px 35px #0005; }
.nav-dropdown:last-child .nav-dropdown-panel { left: auto; right: -10px; }
.nav-dropdown-panel a { display: flex; justify-content: space-between; gap: 20px; align-items: center; padding: 12px 9px; color: white; text-decoration: none; font-size: 13px; }
.nav-dropdown-panel a:hover, .nav-dropdown-panel a[aria-current=page] { background: #ffffff0b; color: #b5cbed; }
.nav-dropdown-panel .arrow--circle { width: 18px; height: 18px; }
.nav .button { font-size: 23px; padding: 12px 15px; }
.arrow { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 34px; flex: 0 0 auto; font-size: 0; line-height: 0; }
.arrow svg { display: block; width: 100%; height: 100%; overflow: visible; }
.arrow--circle { width: 23px; height: 23px; }
.button { gap: 22px; }
.button .arrow--circle { --circle-arrow-ink: #050607; color: white; }
.text-link { gap: 15px; }
.text-link .arrow--circle { color: #050607; }
.story-card .text-link .arrow { width: 31px; height: 25px; }
.ticker-track span { display: inline-flex; align-items: center; padding: 0 13px; }
.ticker-track b { display: inline-flex; align-items: center; margin-left: 20px; }
.ticker-track .arrow { width: 27px; height: 22px; }
.hero-bg { background-image: url('/assets/img/figma/dallas-skyline.png'); background-position: center 48%; }
.hero:after { background: linear-gradient(90deg, #091929cf 0%, #0c1b28a1 44%, #12263726 100%); }
.hero-tagline { font-size: clamp(20px, 2vw, 30px); padding-top: 13px; padding-bottom: 10px; }
.hero-tagline span { border-bottom-width: 4px; }
.hero-layout { min-height: 610px; grid-template-columns: 1.06fr 1fr; }
.hero-copy { padding-top: 20px; padding-bottom: 25px; padding-right: 0; }
.hero-form { padding: 24px 23px 20px; background: #10202dc7; max-width: 630px; border-color: #20313e; }
.hero-form h1 { font-size: clamp(32px, 3.1vw, 46px); line-height: 1.38; margin-bottom: 23px; }
.hero-form h1 .stamp { border-width: 5px; padding: 0 5px 3px; font-size: 1.38em; margin-right: 1px; margin-bottom: 1px; }
.hero-form label { margin: 12px 0 5px; font-size: 20px; }
.hero-form input { height: 37px; }
.hero-form .button { font-size: 28px; padding: 14px 18px; margin-top: 17px; }
.hero-person { margin-right: -48px; overflow: visible; }
.hero-person>img { width: calc(100% + 74px); height: auto; max-width: none; top: auto; bottom: 0; left: 53%; }
.person-caption { left: -20px; right: -35px; bottom: 18px; font-size: 20px; line-height: 1.4; white-space: nowrap; }
.attorney-band { background: #050506 url('/assets/img/figma/spotlight-backdrop.png') center/cover no-repeat; }
.attorney-layout { min-height: 620px; grid-template-columns: 1fr 1fr; }
.attorney-copy { padding: 95px 0 70px; max-width: 660px; }
.attorney-copy h2 { font-size: clamp(34px, 3.2vw, 49px); line-height: 1.4; margin-bottom: 28px; }
.attorney-copy .button { font-size: 25px; padding: 15px 20px; }
.attorney-visual:before { display: none; }
.attorney-visual img { height: 605px; width: auto; bottom: 0; left: auto; right: 0; transform: none; }
.attorney-note { right: 0; bottom: 45px; width: 560px; max-width: 115%; }
.attorney-note .stamp { font-size: 31px; border-width: 5px; background: #0c0c0c50; transform: none; }
.attorney-note p { font-size: 26px; line-height: 1.4; max-width: 520px; margin-top: 22px; margin-bottom: 24px; }
.attorney-note .button { font-size: 31px; padding: 15px 20px; }
.intro-grid { gap: 65px; grid-template-columns: 1.2fr .95fr; }
.intro-grid h2 { font-size: clamp(35px, 3.6vw, 55px); line-height: 1.38; }
.intro-grid .stamped-photo img { width: 100%; height: auto; aspect-ratio: 1.04; object-fit: cover; }
.stamped-photo .stamp { font-size: clamp(35px, 4.1vw, 63px); border-width: 5px; background: #ffffff36; transform: rotate(-20deg); }
.figma-steps { margin-top: 70px; }
.figma-step { position: relative; padding: 22px 0 47px; }
.figma-step h3 { font-size: clamp(30px, 3.05vw, 46px); margin-bottom: 24px; line-height: 1.3; }
.figma-step p { font-weight: 650; font-size: 18px; line-height: 1.6; max-width: 1120px; }
.figma-step>.text-link { float: right; }
.figma-step:after { content: ''; display: table; clear: both; }
.figma-step-split { display: grid; grid-template-columns: 1.4fr .8fr; gap: 40px; align-items: center; }
.figma-step-split>img { width: 100%; height: auto; aspect-ratio: 1.45; object-fit: cover; border-radius: 13px; }
.figma-step-split .text-link { font-size: 24px; }
.figma-step-reverse { grid-template-columns: .7fr 1.5fr; }
.figma-step-reverse .stamped-photo img { width: 100%; height: auto; aspect-ratio: 1.15; object-fit: cover; }
.figma-step-reverse .stamp { font-size: clamp(25px, 3.4vw, 47px); left: 2%; top: 38%; }
.figma-step-final { display: flex; flex-direction: column; align-items: flex-end; gap: 19px; margin-top: 25px; }
.figma-step-final .button { font-size: 24px; border-radius: 4px; }
.page-hero-split>.figma-page-portrait { width: 40%; height: auto; top: auto; bottom: -80px; right: 0; }
.page-hero-split>.figma-page-portrait[src*='pointing'] { width: auto; height: 610px; bottom: -80px; right: 45px; }
.footer-brand .brand-name { font-size: 24px; }
.footer-brand .figma-logo { width: 62px; flex-basis: 62px; scale: .82; transform-origin: left center; margin-right: -9px; }
.cta-band h2 { font-size: clamp(42px, 4.6vw, 68px); }
.cta-band .button.green { border-radius: 4px; }
@media(min-width:1550px){
  .hero-layout { min-height: 700px; }
  .hero-form h1 { font-size: 48px; }
  .hero-person>img { width: calc(100% + 100px); }
}
@media(max-width:1150px){
  .brand-name { font-size: 32px; }
  .figma-logo { width: 68px; flex-basis: 68px; scale: .9; transform-origin: left center; margin-right: -5px; }
  .nav-links { gap: 13px; }
  .nav-dropdown summary { font-size: 8px; gap: 4px; }
  .nav .button { font-size: 21px; }
  .hero-form h1 { font-size: 33px; }
  .hero-form .button { font-size: 25px; gap: 15px; }
  .hero-person { margin-right: -28px; }
  .hero-person>img { width: calc(100% + 62px); }
  .person-caption { font-size: 17px; left: -35px; right: -30px; }
  .attorney-note { max-width: 112%; }
  .attorney-note .stamp { font-size: 25px; }
  .attorney-note p { font-size: 23px; }
  .attorney-note .button { font-size: 28px; }
  .figma-step-split { gap: 30px; }
}
@media(max-width:900px){
  .nav { min-height: 78px; }
  .brand-name { font-size: 29px; }
  .nav .button { font-size: 21px; }
  .nav-links { gap: 0; }
  .nav-dropdown { width: 100%; }
  .nav-dropdown summary { font-size: 13px; padding: 15px 0; justify-content: space-between; }
  .nav-dropdown-panel { position: static; border: 0; border-left: 2px solid var(--blue); border-radius: 0; box-shadow: none; margin: 0 0 12px 2px; padding: 0 5px; width: auto; }
  .hero-layout { min-height: 610px; }
  .hero-form { padding: 20px; }
  .hero-form h1 { font-size: 29px; }
  .hero-form .button { font-size: 23px; gap: 11px; padding: 14px; }
  .hero-form .button .arrow { width: 35px; height: 28px; }
  .hero-person { overflow: hidden; }
  .hero-person>img { width: calc(100% + 130px); left: 56%; }
  .person-caption { white-space: normal; left: 0; right: 0; font-size: 17px; bottom: 15px; }
  .attorney-copy h2 { font-size: 33px; }
  .attorney-copy { padding-top: 70px; }
  .attorney-visual img { height: 550px; right: -25px; }
  .attorney-note { max-width: 115%; bottom: 45px; right: -5px; }
  .attorney-note .stamp { font-size: 22px; border-width: 4px; }
  .attorney-note p { font-size: 21px; }
  .attorney-note .button { font-size: 25px; }
  .intro-grid { gap: 35px; }
  .figma-step p { font-size: 16px; }
  .figma-step-split { grid-template-columns: 1fr .8fr; gap: 25px; }
  .figma-step-split .text-link { font-size: 20px; }
  .figma-step-reverse { grid-template-columns: .7fr 1.2fr; }
  .footer-brand .brand-name { font-size: 27px; }
  .page-hero-split>.figma-page-portrait { width: 50%; right: -20px; opacity: .2; }
}
@media(max-width:600px){
  .nav { min-height: 72px; gap: 8px; }
  .brand { gap: 4px; }
  .brand-name { font-size: 25px; letter-spacing: -.4px; }
  .figma-logo { width: 52px; flex-basis: 52px; scale: .68; margin-right: -18px; }
  .hero-tagline { font-size: 19px; line-height: 1.4; padding: 16px 0 6px; }
  .hero-tagline span { border-bottom-width: 3px; padding-bottom: 2px; }
  .hero-layout { display: block; min-height: 0; }
  .hero-copy { padding: 21px 0 0; }
  .hero-form { padding: 22px; background: #10202dd9; }
  .hero-form h1 { font-size: 30px; line-height: 1.4; margin-bottom: 24px; }
  .hero-form h1 .stamp { border-width: 4px; font-size: 1.35em; }
  .hero-form label { font-size: 18px; margin-top: 13px; }
  .hero-form input { height: 42px; }
  .hero-form .button { font-size: clamp(20px,5.5vw,26px); gap: 12px; padding: 15px 14px; width: 100%; }
  .hero-form .button .arrow { width: 32px; height: 26px; }
  .hero-person { margin: 0 -18px; height: 350px; overflow: hidden; }
  .hero-person>img { width: calc(100% + 20px); height: auto; left: 50%; bottom: 0; top: auto; }
  .person-caption { left: 10px; right: 10px; bottom: 10px; font-size: 16px; line-height: 1.5; margin: 0; padding: 5px; background: #07152269; }
  .ticker-track .arrow { width: 24px; height: 19px; }
  .ticker-track span { padding-inline: 11px; }
  .ticker-track b { margin-left: 16px; }
  .attorney-layout { display: block; min-height: 0; }
  .attorney-copy { padding: 55px 0 0; }
  .attorney-copy h2 { font-size: 32px; line-height: 1.45; margin-bottom: 23px; }
  .attorney-copy .button { font-size: 23px; }
  .attorney-visual { height: 510px; margin-top: 20px; }
  .attorney-visual img { height: 510px; width: auto; top: auto; bottom: 0; left: auto; right: 0; }
  .attorney-note { max-width: 100%; width: 100%; right: 0; bottom: 34px; }
  .attorney-note .stamp { font-size: clamp(19px,5.3vw,26px); }
  .attorney-note p { font-size: 22px; line-height: 1.5; max-width: 100%; margin: 20px 0; }
  .attorney-note .button { font-size: 26px; gap: 20px; }
  .attorney-note .button .arrow { width: 38px; height: 31px; }
  .intro-grid { grid-template-columns: 1fr; }
  .intro-grid h2 { font-size: 36px; }
  .intro-grid .stamped-photo img { aspect-ratio: 1.2; }
  .stamped-photo .stamp { font-size: clamp(31px,9.5vw,46px); left: 6%; }
  .figma-steps { margin-top: 44px; }
  .figma-step { padding: 15px 0 34px; }
  .figma-step h3 { font-size: 31px; margin-bottom: 19px; }
  .figma-step p { font-size: 16px; }
  .figma-step>.text-link { float: none; }
  .figma-step .text-link { font-size: 20px; }
  .figma-step-split { grid-template-columns: 1fr; gap: 20px; }
  .figma-step-split>img { aspect-ratio: 1.6; }
  .figma-step-reverse .stamped-photo img { aspect-ratio: 1.5; }
  .figma-step-reverse .stamp { font-size: 39px; left: 8%; }
  .figma-step-final { align-items: flex-start; }
  .figma-step-final .button { font-size: 22px; }
  .page-hero-split>.figma-page-portrait { display: none; }
  .footer-brand .brand-name { font-size: 24px; }
  .footer-brand .figma-logo { width: 52px; flex-basis: 52px; scale: .68; margin-right: -18px; }
  .cta-band h2 { font-size: 45px; }
}
@media(max-width:360px){
  .brand-name { font-size: 21px; }
  .figma-logo { width: 45px; flex-basis: 45px; scale: .59; margin-right: -22px; }
  .menu-toggle { font-size: 10px; padding: 7px; }
  .hero-tagline { font-size: 17px; }
  .hero-form { padding: 19px; }
  .hero-form h1 { font-size: 27px; }
  .hero-person { height: 300px; }
  .person-caption { font-size: 14px; }
  .attorney-copy h2 { font-size: 29px; }
  .attorney-note p { font-size: 20px; }
  .attorney-note .button { font-size: 24px; }
  .footer-brand .brand-name { font-size: 21px; }
}

.external-arrow{display:inline-flex;vertical-align:middle;margin-left:8px;rotate:-40deg}.external-arrow .arrow{width:17px;height:14px}
@media(min-width:1151px){.brand-name{font-size:clamp(41px,3.7vw,53px)}}
@media(min-width:901px) and (max-width:1150px){.brand-name{font-size:36px}}
.ticker-track .arrow { padding: 0; }
