/* Reference-matched Maddock theme. All assets are local. */
:root{--gold:#e9bd5c;--red:#8e090b;--black:#120c08;--cream:#f8f3e9;--ink:#1c1916}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.5 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:#b67c25}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #d2a13e;outline-offset:4px}.wrap{width:min(1240px,calc(100% - 48px));margin:auto}header{background:var(--black);color:white;border-bottom:1px solid #634316}.header-inner{height:104px;display:flex;gap:25px;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;font:35px/1 Georgia,serif;letter-spacing:2px;white-space:nowrap}.brand svg{width:64px;height:64px;color:var(--gold)}.brand small{display:block;color:#e8d2a0;font:12px Arial;letter-spacing:4px;text-align:center;margin-top:7px}nav{display:flex;gap:20px;align-items:center;font-size:13px;white-space:nowrap}nav a{padding:9px 0}nav a[aria-current]{border-bottom:1px solid var(--gold)}.button{display:inline-block;background:linear-gradient(#a01718,#790707);border:1px solid #dcb65e;box-shadow:inset 0 0 0 2px #ffffff09;color:white;padding:16px 24px;font:bold 12px/1.4 Arial;cursor:pointer;border-radius:3px}.button:hover{color:#fff1cb;background:#a51618}.header-cta{font-size:11px;padding:14px 18px;white-space:nowrap}.outline{background:#08070699;color:var(--gold)}h1,h2,h3,blockquote{font-family:Georgia,'Times New Roman',serif}h1,h2,h3{line-height:1.08}h1{margin:0}p{margin:0 0 20px}.hero{min-height:690px;position:relative;background:radial-gradient(ellipse at 60% 18%,#5e3619 0,#241307 38%,#070605 80%);overflow:hidden;color:white;border-bottom:2px solid var(--gold)}.hero-photo{position:absolute;right:0;top:0;width:44%;height:100%;object-fit:cover;object-position:60% center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,#080502aa 54%,transparent 66%);pointer-events:none}.hero>.wrap{position:relative;z-index:1;padding-block:120px 65px}.hero-copy{width:68%}.hero h1{font-size:clamp(55px,6.9vw,94px);line-height:.94;font-weight:bold;letter-spacing:-2px;text-shadow:0 3px 12px #000}.hero h1 em{font-style:normal;color:#f0c466;white-space:nowrap}.hero h2{font-size:28px;margin:26px 0 24px}.hero p{font-size:18px;line-height:1.4;max-width:710px;text-shadow:0 2px 6px #000}.actions{display:flex;gap:28px;margin-top:32px}.practice-rail{background:linear-gradient(#1c180f,#080806);color:white;border-bottom:1px solid #b99245}.practice-rail>.wrap{display:grid;grid-template-columns:repeat(6,1fr);padding:20px 0}.practice-rail a{text-align:center;padding:7px 10px;border-right:1px solid #705b33}.practice-rail a:last-child{border:0}.practice-rail svg{display:block;width:42px;height:42px;color:var(--gold);margin:0 auto 12px}.practice-rail strong{display:block;font-size:15px}.practice-rail span{display:block;font-size:12px;margin-top:2px}.featured{padding-block:40px 50px}.section-heading{position:relative;text-align:center;margin-bottom:30px}.section-heading h2{font-size:28px;margin:0}.section-heading>a{position:absolute;right:0;top:8px;font-size:12px;color:var(--red);font-weight:bold}.practice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.practice-card{border-right:1px solid #dfd2bd;padding-right:20px}.practice-card:last-child{border:0;padding-right:0}.practice-card img{display:block;width:100%;height:200px;object-fit:cover;border-radius:3px}.practice-card>div{padding:16px 8px}.practice-card h3{font:700 17px/1.2 Arial;margin:0 0 8px}.practice-card p{font-size:14px;margin-bottom:15px}.practice-card a:not([aria-hidden]){font-size:14px;font-weight:bold;color:var(--red)}.sunset{background:url('images/ranch-sunset-2109.webp') center/100% 100% no-repeat;min-height:430px;color:white;position:relative;border-bottom:2px solid #b98b39}.sunset:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0a070466,transparent 80%)}.sunset .wrap{position:relative;padding-top:95px;padding-bottom:40px}.sunset blockquote{font-style:italic;line-height:1.15;font-size:41px;margin:0;width:60%;text-shadow:0 2px 5px #000}.sunset p{font-size:14px;letter-spacing:2px;color:var(--gold);margin:12px 0 25px}.stats{background:radial-gradient(ellipse,#650b07,#2d0503);color:var(--gold);padding:40px 0 15px}.stats>.wrap{display:grid;grid-template-columns:repeat(4,1fr)}.stats .wrap>div{text-align:center;border-right:1px solid #ac6523}.stats .wrap>div:last-child{border:0}.stats svg{width:52px;height:52px;display:block;margin:0 auto 16px}.stats strong{font:700 40px/1.1 Georgia;display:block}.stats span{display:block;color:white;font-size:16px;margin-top:9px}.stats-note{text-align:center;font-size:11px;color:#d9bca9;margin:26px 20px 0}footer{background:#100b08;color:#c8b9a4;padding:35px 0 20px;font-size:11px}.footer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.footer-top .brand{font-size:23px}.footer-top svg{width:40px;height:40px}.footer-top small{font-size:8px}footer p{border-top:1px solid #4a351f;padding-top:20px}.menu-toggle{display:none;border:1px solid var(--gold);color:var(--gold);background:transparent;padding:10px 14px}.skip{position:absolute;top:-100px;background:var(--gold);color:#000;padding:12px;z-index:9}.skip:focus{top:10px}.page-mast{background:linear-gradient(105deg,#110c08,#4b2614);color:white;padding:65px 0;border-bottom:2px solid var(--gold)}.page-mast p,.eyebrow{font-size:12px;letter-spacing:2px;color:#a66b1d;font-weight:bold}.page-mast p{color:var(--gold)}.page-mast h1{font-size:60px;margin:8px 0 15px}.page-mast span{font:italic 24px Georgia;color:var(--gold)}.section{padding-block:70px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.section h2{font-size:40px;margin:15px 0 25px}.attorney-photo{width:100%;height:570px;object-fit:cover;object-position:center top}.intro{font:26px/1.4 Georgia;max-width:850px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:30px;margin-bottom:60px}.values article{border-left:2px solid #c49b50;padding:15px 25px}.values h2{font-size:29px}.values h3{font-size:25px;margin:0 0 16px}.notice{padding:18px;border-left:3px solid #b78d43;background:#eae0d0;font-size:13px}.practice-detail{display:grid;grid-template-columns:1fr 1.4fr;gap:50px;align-items:center;padding-block:50px;border-top:1px solid #d8cbb8;scroll-margin-top:20px}.practice-detail img{width:100%;height:280px;object-fit:cover}.practice-detail h2{font-size:38px}.text-link{color:var(--red);font-weight:bold}.testimonial span{color:#b5892a}.testimonial blockquote{font-size:26px;font-style:italic;margin:25px 0}.testimonial small{color:#6e604f}dl{margin:30px 0}dt{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:#8b5d21}dd{margin:5px 0 20px}form{padding:35px;background:#eee4d5;border:1px solid #d2bc94}form h3{font-size:30px;margin:0 0 20px}.small{font-size:13px}label{display:block;font-size:14px;font-weight:bold;margin:17px 0 6px}input,textarea,select{width:100%;border:1px solid #a89371;padding:12px;background:#fffaf3;color:#201b16;font:16px Arial;line-height:1.4}textarea{resize:vertical}form button{margin-top:20px}#form-status{font-size:13px;margin-top:20px}
@media(max-width:1100px){.header-inner{gap:15px}.brand{font-size:27px}.brand svg{width:45px;height:45px}.brand small{font-size:9px}nav{gap:14px;font-size:11px}.header-cta{padding:11px 12px;font-size:9px}.hero{min-height:580px}.hero>.wrap{padding-top:100px}.hero h2{font-size:24px}.hero p{font-size:16px}.practice-card img{height:160px}.practice-rail strong{font-size:13px}.practice-rail span{font-size:10px}}
@media(max-width:760px){.wrap{width:calc(100% - 32px)}.header-inner{height:auto;min-height:80px;flex-wrap:wrap;padding-block:16px}.brand{font-size:24px}.brand svg{width:40px;height:40px}.header-cta{display:none}.menu-toggle:not([hidden]){display:block}nav{width:100%;flex-wrap:wrap;font-size:13px;gap:8px 20px}nav[data-enhanced=true]{display:none}nav[data-enhanced=true].open{display:flex}.hero{min-height:640px}.hero-photo{width:100%;opacity:.52;object-position:right center}.hero:after{background:linear-gradient(90deg,#080503bb,#08050344)}.hero>.wrap{padding-block:85px 55px}.hero-copy{width:100%}.hero h1{font-size:clamp(44px,11vw,78px);letter-spacing:-1px}.hero h2{font-size:23px;line-height:1.2;max-width:350px}.hero p{max-width:430px;font-size:16px}.desktop-break{display:none}.actions{gap:12px;flex-wrap:wrap}.button{font-size:11px;padding:14px 17px}.practice-rail>.wrap{grid-template-columns:repeat(3,1fr);gap:20px 0}.practice-rail a:nth-child(3){border-right:0}.practice-rail svg{width:32px;height:32px}.practice-rail strong{font-size:12px}.featured{padding-block:30px}.section-heading{text-align:left}.section-heading h2{font-size:22px;max-width:230px}.section-heading>a{position:static;display:inline-block;margin-top:12px}.practice-grid{grid-template-columns:repeat(2,1fr);gap:24px 14px}.practice-card{padding-right:0;border:0}.practice-card img{height:135px}.practice-card>div{padding:12px 0}.practice-card h3{font-size:15px}.practice-card p,.practice-card a:not([aria-hidden]){font-size:12px}.sunset{min-height:380px;background-size:auto 100%;background-position:65% center}.sunset:before{background:#08050366}.sunset .wrap{padding-block:70px 35px}.sunset blockquote{width:100%;font-size:29px}.sunset p{font-size:11px}.stats>.wrap{grid-template-columns:repeat(2,1fr);gap:30px 0}.stats .wrap>div:nth-child(2){border:0}.stats strong{font-size:32px}.stats span{font-size:12px}.stats svg{width:38px;height:38px}.footer-top{gap:20px;flex-wrap:wrap}.footer-top>a:last-child{font-size:10px}.split,.values,.practice-detail{grid-template-columns:1fr;gap:28px}.section{padding-block:45px}.page-mast{padding-block:40px}.page-mast h1{font-size:44px}.attorney-photo{height:420px;max-width:400px}.section h2{font-size:34px}.values{margin-bottom:40px}.practice-detail{padding-block:35px}.practice-detail img{height:230px}form{padding:24px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

/* Library panel from the supplied mockup, softened behind live hero text. */
.hero{background:linear-gradient(90deg,#080502aa,#08050299 52%,#080502),url('images/library-250.webp') left top/60% 100% no-repeat,#090604}

/* Rebranded wordmark proportions. */
.brand{font-size:29px;letter-spacing:1.5px}.brand small{font-size:11px;letter-spacing:3px}
@media(max-width:1100px){.brand{font-size:24px}.brand small{font-size:9px;letter-spacing:2px}}
@media(max-width:760px){.brand{font-size:21px}.brand small{font-size:9px;letter-spacing:2px}.brand svg{width:36px;height:36px}}

/* Full-photo hero: natural image ratio, separate copy, no crop or overlay. */
.hero {
  display: grid;
  grid-template-columns: minmax(0, 40%) minmax(0, 60%);
  align-items: center;
  min-height: 0;
  overflow: visible;
  background: linear-gradient(115deg, #160e08, #090604);
}
.hero::after { display: none; }
.hero > .wrap {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 44px clamp(24px, 3vw, 54px);
}
.hero-copy { width: 100%; }
.hero .hero-photo {
  grid-column: 2;
  grid-row: 1;
  position: static;
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  opacity: 1;
}
.hero h1 { font-size: clamp(40px, 4.5vw, 72px); letter-spacing: -1px; }
.hero h1 em { white-space: normal; }
.hero h2 { font-size: clamp(20px, 1.65vw, 26px); line-height: 1.25; }
.hero p { font-size: 16px; line-height: 1.5; }
.hero .desktop-break { display: none; }
.hero .actions { gap: 12px; flex-wrap: wrap; }
.hero .button { padding: 14px 17px; font-size: 11px; }
@media (max-width: 1000px) {
  .hero { grid-template-columns: minmax(0, 1fr); }
  .hero > .wrap { grid-column: 1; grid-row: 1; padding: 40px 24px; }
  .hero .hero-photo { grid-column: 1; grid-row: 2; }
  .hero-copy { max-width: 700px; margin: auto; }
  .hero h1 { font-size: clamp(40px, 7vw, 64px); }
  .hero h2 { max-width: none; font-size: 23px; }
  .hero p { max-width: 650px; }
}
@media (max-width: 480px) {
  .hero > .wrap { padding: 34px 18px; }
  .hero h1 { font-size: clamp(34px, 10vw, 48px); }
  .hero h2 { font-size: 21px; margin: 22px 0 18px; }
  .hero p { font-size: 15px; }
  .hero .actions { margin-top: 24px; }
}

/* Use the compact navigation before tablet widths can overflow. */
@media (min-width: 761px) and (max-width: 1000px) {
  .header-inner { height: auto; min-height: 80px; flex-wrap: wrap; padding-block: 16px; }
  .header-cta { display: none; }
  .menu-toggle:not([hidden]) { display: block; }
  nav { width: 100%; flex-wrap: wrap; font-size: 13px; gap: 8px 20px; }
  nav[data-enhanced=true] { display: none; }
  nav[data-enhanced=true].open { display: flex; }
}

/* Responsive sunset sources retain the original aspect ratio and CSS crop. */
@media (max-width: 760px) {
  .sunset {
    background-image: url('images/ranch-sunset-1280.webp');
    background-image: image-set(
      url('images/ranch-sunset-1280.webp') 1x,
      url('images/ranch-sunset-2109.webp') 2x
    );
  }
}
