/* GUZMAN THE BUILDER, LLC — grade line nav & tailgate build-yard theme
   Palette: PLAN GREY #EDECE6, SITE INK #2A2A28, CAUTION GOLD #BE9A28,
   REBAR STEEL #6E7276, SHEATHING TAN #E5DCC8, POUR DARK #26262A, MARKER RED #A8402E.
   No rgba(), no decimal opacity, no text gradients. */

body{
  font-size:16px;
  margin:0;
  background-color:#EDECE6;
  color:#2A2A28;
  font-family:Georgia,"Times New Roman",serif;
  line-height:1.65;
  overflow-x:hidden;
}

a{color:#6E7276;}
img{max-width:100%;}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px;}
.screen-reader-text{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;}

.btn{display:inline-block;padding:13px 24px;border:2px solid transparent;text-decoration:none;font-family:inherit;cursor:pointer;font-size:16px;letter-spacing:.4px;line-height:1.2;}
.btn-gold{background-color:#BE9A28;color:#26262A;}
.btn-gold:hover{background-color:#26262A;color:#EDECE6;}
.btn-outline{background-color:transparent;color:#2A2A28;border-color:#2A2A28;}
.btn-outline:hover{background-color:#2A2A28;color:#EDECE6;}

/* ============ GRADE LINE NAV ============ */
.gradeline{
  position:sticky;top:0;z-index:60;background-color:#EDECE6;
  box-shadow:0 2px 0 #BE9A28;
}
.gradeline-bar{max-width:1200px;margin:0 auto;padding:8px 24px;display:flex;align-items:center;gap:14px;position:relative;}
.brandlock{display:flex;align-items:center;gap:9px;text-decoration:none;}
.brand-plate{background-color:#BE9A28;color:#26262A;font-weight:bold;letter-spacing:1px;font-size:20px;padding:5px 12px;}
.brand-sub{font-size:11px;color:#6E7276;letter-spacing:1px;}
.sawhorse{position:relative;width:24px;height:16px;flex:none;display:inline-block;}
.sawhorse::before,.sawhorse::after{content:"";position:absolute;top:2px;width:4px;height:15px;background-color:#6E7276;border-radius:1px;transform:rotate(38deg);}
.sawhorse::before{left:3px;}
.sawhorse::after{right:3px;transform:rotate(-38deg);}
.sawhorse .blevel{position:absolute;top:5px;left:2px;right:2px;height:3px;background-color:#BE9A28;}
.sawhorse .blevel::after{content:"";position:absolute;right:6px;top:5px;width:3px;height:5px;border:1px solid #26262A;background-color:#EDECE6;border-radius:2px;}

.stake-links{display:flex;align-items:center;gap:6px;margin-left:auto;}
.stake{text-decoration:none;color:#2A2A28;font-weight:bold;font-size:15px;padding:7px 9px;position:relative;}
.stake.flag::before{content:"";position:absolute;top:-4px;left:50%;transform:translateX(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #6E7276;}
.stake.flag.gold::before{border-bottom-color:#BE9A28;}
.stake:hover{color:#A8402E;}
.nav-cta{background-color:#BE9A28;color:#26262A;text-decoration:none;font-weight:bold;padding:8px 14px;white-space:nowrap;}
.nav-cta:hover{background-color:#26262A;color:#EDECE6;}
.string-line{position:absolute;left:0;right:0;bottom:-4px;height:4px;pointer-events:none;}
.string-line .wire{position:absolute;top:1px;left:0;right:0;height:1px;background-color:#6E7276;}
.string-line .wire::before,.string-line .wire::after{content:"";position:absolute;top:-2px;width:9px;height:9px;background-color:#BE9A28;}
.string-line .wire::before{left:12%;}
.string-line .wire::after{right:12%;}
.nav-toggle{display:none;margin-left:auto;background-color:#BE9A28;color:#26262A;border:none;font-weight:bold;padding:8px 12px;cursor:pointer;}

@media(max-width:820px){
  .brand-sub{display:none;}
  .nav-toggle{display:inline-block;}
  .gradeline.open .stake-links{display:flex;}
  .stake-links{display:none;position:absolute;top:100%;left:0;right:0;background-color:#26262A;flex-direction:column;align-items:stretch;padding:10px 24px 14px;margin-left:0;}
  .stake{color:#E5DCC8;padding:10px 0;}
  .stake.flag::before{display:none;}
  .nav-cta{text-align:center;}
}

/* ============ TAILGATE CLIPBOARD HERO ============ */
.tailgate{background-color:#EDECE6;}
.tailgate-scene{height:44vh;min-height:300px;position:relative;overflow:hidden;background-color:#E5DCC8;}
.scene-inner{max-width:1200px;margin:0 auto;height:100%;position:relative;}

/* lumber stack with gold sticker spacers */
.lumber{position:absolute;left:6%;bottom:6%;width:42%;height:72%;}
.lumber .stick{position:absolute;left:6%;width:88%;height:15%;background-color:#D8CDB2;}
.lumber .stick.s1{bottom:0;}
.lumber .stick.s2{bottom:19%;}
.lumber .stick.s3{bottom:38%;left:2%;width:94%;}
.lumber .stick.s4{bottom:57%;}
.lumber .stick.s5{bottom:76%;left:9%;width:82%;}
.lumber .spacer{position:absolute;left:6%;width:88%;height:4%;background-color:#BE9A28;}
.lumber .spacer.p1{bottom:15%;}
.lumber .spacer.p2{bottom:34%;}
.lumber .spacer.p3{bottom:53%;left:2%;width:94%;}
.lumber .spacer.p4{bottom:72%;}

/* saw-horse pair carrying a long level */
.horses{position:absolute;right:5%;bottom:6%;width:34%;height:44%;}
.horse{position:absolute;bottom:0;width:40%;height:60%;}
.horse.one{left:4%;}
.horse.two{right:4%;}
.horse .top{position:absolute;top:0;left:0;right:0;height:10px;background-color:#6E7276;}
.horse .lega,.horse .legb{position:absolute;top:10px;width:8px;height:52px;background-color:#6E7276;}
.horse.one .lega{left:8%;transform:rotate(18deg);}
.horse.one .legb{right:8%;transform:rotate(-18deg);}
.horse.two .lega{left:8%;transform:rotate(18deg);}
.horse.two .legb{right:8%;transform:rotate(-18deg);}
.horses .toolbeam{position:absolute;top:38%;left:7%;right:7%;height:14px;background-color:#BE9A28;border-radius:2px;}
.horses .bubble{position:absolute;top:36%;right:12%;width:26px;height:20px;background-color:#EDECE6;border:1px solid #A8842C;border-radius:10px;display:flex;align-items:center;justify-content:center;}
.horses .bubble::after{content:"";width:7px;height:7px;border-radius:50%;background-color:#26262A;}

/* caution tape strung across with a sag */
.caution-tape{position:absolute;top:9%;left:0;right:0;height:46px;pointer-events:none;}
.caution-tape .bandbg{position:absolute;left:0;right:0;top:6px;height:13px;background-color:#EDECE6;}
.caution-tape .caution-run{position:absolute;left:0;right:0;top:6px;height:13px;background-image:linear-gradient(115deg,#26262A 47%,#BE9A28 47%,#BE9A28 100%);background-size:26px 26px;}
.tape-post{position:absolute;top:1px;width:7px;height:34px;background-color:#A8402E;}
.tape-post.left{left:3%;}
.tape-post.right{right:3%;}

/* gold float tags pinned like site notices */
.float-tag{position:absolute;background-color:#BE9A28;color:#26262A;padding:8px 14px;font-weight:bold;font-size:13px;letter-spacing:1px;transform:rotate(-3deg);}
.float-tag .num{display:block;font-size:26px;line-height:1;color:#26262A;}
.float-tag .lbl{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:#26262A;}
.float-tag.t-l{top:24%;left:3%;}
.float-tag.t-r{top:46%;right:3%;transform:rotate(2deg);}

/* tailgate slab (lower 44%) */
.tailgate-desk{background-color:#D8CDB2;border-top:5px solid #BE9A28;}
.tailgate-inner{max-width:1200px;margin:0 auto;padding:30px 24px 40px;display:flex;gap:30px;align-items:center;position:relative;}
.hero-copy{flex:1 1 auto;}
.hero-eyebrow{color:#A8402E;font-size:13px;letter-spacing:5px;text-transform:uppercase;font-weight:bold;margin:0 0 6px;}
.hero-title{font-size:42px;line-height:1.12;color:#26262A;margin:0 0 4px;}
.hero-title .om{color:#BE9A28;}
.hero-sub{font-size:18px;color:#2A2A28;margin:0 0 22px;max-width:660px;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;}
.clipboard{flex:none;width:200px;background-color:#FFF7E4;border:2px solid #26262A;padding:16px 14px 12px;transform:rotate(2deg);box-shadow:4px 6px 0 #6E7276;position:relative;margin-left:auto;}
.clipboard::before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;height:9px;background-color:#26262A;}
.clipboard .l{height:8px;background-color:#CFCBBE;margin:0 0 9px;}
.clipboard .l.g{background-color:#BE9A28;}
.clipboard .sig{display:block;text-align:center;font-size:11px;letter-spacing:1px;color:#26262A;text-transform:uppercase;font-weight:bold;margin-top:4px;}

@media(max-width:860px){
  .clipboard{display:none;}
  .tailgate-inner{flex-direction:column;align-items:flex-start;}
  .hero-title{font-size:32px;}
  .lumber{width:62%;}
  .horses{width:45%;}
}

/* scroll reveal */
.reveal{opacity:1;}
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease;}
.js .reveal.visible{opacity:1;transform:none;}
@media(max-width:820px){.hero-title{font-size:32px;}}

/* shared secondary page hero interior */
.page-hero{background-color:#EDECE6;padding:26px 0 6px;}
.page-hero .crumb{color:#6E7276;font-size:12px;letter-spacing:2px;text-transform:uppercase;margin:0;}

/* ============ BUILD BOOK TIMELINE (home) ============ */
.sectionband{max-width:1200px;margin:0 auto;padding:46px 24px 16px;}
.sectionband .kicker{color:#BE9A28;font-size:13px;letter-spacing:5px;text-transform:uppercase;font-weight:bold;margin:0 0 6px;}
.sectionband h2{font-size:34px;line-height:1.15;color:#26262A;margin:0 0 10px;}
.sectionband .lede{max-width:720px;color:#3b3a37;margin:0;font-size:17px;}

/* ============ BUILD BOOK: single grade rail with alternating stations ============ */
.bb-field{
  position:relative;
  max-width:1240px;
  margin:6px auto 30px;
  padding:0 24px;
}
.bb-field .rail{
  position:absolute;
  top:0;bottom:0;left:50%;
  width:3px;
  background-color:#6E7276;
  display:block;
}
.bb-field .rail::before,
.bb-field .rail::after{content:"";position:absolute;left:50%;transform:translateX(-50%);width:15px;height:15px;background-color:#BE9A28;border:2px solid #26262A;}
.bb-field .rail::before{top:-5px;clip-path:polygon(0 0,100% 0,50% 20%,50% 100%);}
.bb-field .rail::after{bottom:-5px;clip-path:polygon(50% 0,50% 80%,100% 100%,0 100%);}

.bb-row{
  position:relative;
  display:flex;
  align-items:center;
  width:100%;
  gap:0;
}
.bb-row .node{
  position:absolute;
  left:50%;
  top:50%;
  width:20px;height:20px;
  border-radius:50%;
  background-color:#BE9A28;
  border:3px solid #26262A;
  transform:translate(-50%,-50%);
  z-index:2;
}
.bb-item{
  width:calc(50% - 46px);
  margin-right:auto;
  margin-left:0;
  background-color:#E5DCC8;
  border-top:4px solid #BE9A28;
  padding:18px 22px 20px;
  position:relative;
  margin-top:6px;margin-bottom:6px;
}
.bb-row .bb-item{order:1;}
.bb-row.flip .bb-item{margin-right:0;margin-left:auto;order:2;}
.bb-row + .bb-row{margin-top:6px;}
.bb-season{display:inline-block;background-color:#26262A;color:#BE9A28;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:bold;padding:3px 9px;margin:0 0 10px;}
.bb-item h3{font-size:22px;line-height:1.22;color:#26262A;margin:0 0 8px;}
.bb-item p{margin:0 0 12px;color:#2A2A28;}
.bb-item .dlink{color:#BE9A28;font-weight:bold;letter-spacing:1px;text-transform:uppercase;font-size:13px;text-decoration:none;border-bottom:2px solid #BE9A28;}
.bb-item .dlink:hover{color:#26262A;border-color:#26262A;}
@media(max-width:860px){
  .bb-field .rail{left:13px;width:3px;}
  .bb-field .rail::before,.bb-field .rail::after{display:none;}
  .bb-row{flex-direction:column;align-items:stretch;}
  .bb-row .node{left:13px;top:30px;transform:translate(-50%,0);}
  .bb-row .bb-item{width:100%;margin-left:34px;margin-right:0;order:2;}
  .bb-row.flip .bb-item{width:100%;margin-left:34px;margin-right:0;}
  .bb-row.flip .node{order:1;}
}

/* ============ BID WALKTHROUGH (POUR DARK) ============ */
.bidwalk{background-color:#26262A;}
.bidwalk .sectionband h2{color:#EDECE6;}
.bidwalk .sectionband .lede{color:#D8CDB2;}
.walkband{max-width:940px;margin:0 auto;padding:0 24px 44px;}
.walk-question{display:flex;gap:18px;margin:0 0 30px;}
.walk-question.st-way{margin-top:0;}
.walk-tick{flex:none;width:26px;height:26px;border-radius:50%;background-color:#BE9A28;color:#26262A;font-weight:bold;font-size:14px;display:flex;align-items:center;justify-content:center;margin-top:3px;}
.walk-q h3{color:#EDECE6;font-size:20px;margin:0 0 8px;line-height:1.3;}
.walk-q p{margin:0;color:#D8CDB2;}

/* ============ TEASER SERVICES (home) ============ */
.teaser{background-color:#EDECE6;padding:0 0 50px;}
.teaserband{max-width:1200px;margin:0 auto;padding:30px 24px 0;}
.teaserband h2{color:#26262A;font-size:30px;margin:0 0 6px;}
.teaserband .kicker{color:#BE9A28;font-size:13px;letter-spacing:5px;text-transform:uppercase;font-weight:bold;margin:0 0 6px;}
.teaser-links{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 0;}
.teaser-links a{background-color:#E5DCC8;color:#2A2A28;text-decoration:none;padding:12px 16px;border-top:3px solid #6E7276;font-weight:bold;flex:1 1 200px;}
.teaser-links a:hover{background-color:#BE9A28;color:#26262A;border-top-color:#26262A;}

/* ============ SERVICES PAGE ============ */
.svc-top{padding:8px 0 0;}
.svc-intro{max-width:860px;margin:0 auto;padding:10px 24px;}
.svc-intro p{color:#2A2A28;}
.svc-list{max-width:980px;margin:0 auto;padding:10px 24px 40px;}
.svc-item{border-top:4px solid #BE9A28;background-color:#E5DCC8;padding:22px 26px;margin:0 0 26px;}
.svc-item:nth-of-type(even){border-top-color:#6E7276;}
.svc-item h3{color:#26262A;margin:0 0 4px;font-size:25px;line-height:1.2;}
.svc-item .stage{color:#A8402E;text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:bold;margin:0 0 10px;}
.svc-item p{color:#2A2A28;margin:0;}
.process-band{background-color:#EDECE6;}
.process-band .row{max-width:1200px;margin:0 auto;padding:20px 24px 8px;}
.process-band h2{color:#26262A;font-size:30px;margin:0 0 6px;}
.process-band .kicker{color:#BE9A28;font-size:13px;letter-spacing:5px;text-transform:uppercase;font-weight:bold;margin:0 0 6px;}
.process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;max-width:1200px;margin:0 auto;padding:20px 24px 46px;}
.pstep{border-top:3px solid #6E7276;padding:14px 16px;text-align:center;}
.pstep.wide{border-top-color:#BE9A28;}
.pstep .n{display:block;color:#BE9A28;font-size:24px;line-height:1;font-weight:bold;}
.pstep h4{color:#26262A;margin:6px 0 6px;font-size:18px;}
.pstep p{margin:0;color:#3b3a37;font-size:15px;}
@media(max-width:560px){.pstep{text-align:left;}}

/* ============ CONTACT PAGE ============ */
.csplit{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:start;padding:20px 0 50px;}
@media(max-width:860px){.csplit{grid-template-columns:1fr;}}
.cformwrap{background-color:#E5DCC8;border-top:4px solid #BE9A28;padding:24px;}
.cformwrap h2{color:#26262A;margin:0 0 6px;font-size:26px;}
.cformwrap .note{color:#2A2A28;margin:0 0 20px;}
.cfield{margin:0 0 16px;}
.cfield label{display:block;color:#26262A;font-weight:bold;margin:0 0 5px;letter-spacing:.4px;}
.cfield input,.cfield textarea,.cfield select{width:100%;box-sizing:border-box;padding:11px 12px;border:2px solid #6E7276;background-color:#FFF7E4;color:#26262A;font-family:inherit;font-size:16px;}
.cfield textarea{min-height:130px;resize:vertical;}
.cfield input:focus,.cfield textarea:focus,.cfield select:focus{outline:none;border-color:#26262A;}
.cform-msg{background-color:#26262A;color:#EDECE6;padding:12px 14px;margin:0 0 16px;display:none;font-size:15px;}
.cformwrap .btn{margin-top:4px;}
.cside{display:flex;flex-direction:column;gap:20px;}
.cfacts{background-color:#EDECE6;border-top:4px solid #6E7276;padding:22px 22px;}
.cfacts h2{color:#26262A;font-size:22px;margin:0 0 10px;}
.cfacts p{margin:3px 0;color:#2A2A28;}
.cfacts p strong{color:#26262A;}
.cfacts a{color:#6E7276;text-decoration:none;}
.cfacts a:hover{color:#A8402E;}
.cfacts ul{margin:8px 0 0;padding:0;list-style:none;}
.cfacts ul li{color:#2A2A28;margin:0 0 3px;}
.faq-clip{background-color:#E5DCC8;border-top:4px solid #BE9A28;padding:20px 22px;}
.faq-clip h2{color:#26262A;font-size:22px;margin:0 0 12px;}
.faq-clip details{margin:0 0 12px;}
.faq-clip summary{cursor:pointer;color:#BE9A28;font-weight:bold;font-size:17px;line-height:1.3;}
.faq-clip details[open] summary{color:#A8402E;}
.faq-clip p{margin:8px 0 0;color:#2A2A28;}

/* ============ YARD GATE FOOTER ============ */
.yardgate{background-color:#26262A;}
.yg-bar{max-width:1200px;margin:0 auto;padding:0 24px;}
.yg-row{display:flex;align-items:center;gap:0;border-top:2px solid #6E7276;}
.yg-seg{padding:16px 16px;flex:1 1 auto;}
.yg-seg .brand{color:#BE9A28;font-weight:bold;font-size:18px;letter-spacing:1px;white-space:nowrap;}
.yg-seg .divider{width:2px;background-color:#6E7276;align-self:stretch;flex:none;}
.yg-rule{width:2px;background-color:#6E7276;flex:none;}
.yg-nav a,.yg-legal a{display:inline-block;color:#E5DCC8;text-decoration:none;font-size:15px;margin:0 14px 4px 0;}
.yg-nav a:hover,.yg-legal a:hover{color:#BE9A28;}
.yg-seg .one{color:#D8CDB2;font-size:14px;line-height:1.6;}
.yg-seg .one a{color:#D8CDB2;text-decoration:none;}
.yg-seg .one a:hover{color:#BE9A28;}
.yg-band-foot{border-top:2px solid #6E7276;}
.copyright{max-width:1200px;margin:0 auto;padding:10px 24px 14px;color:#8b8f93;font-size:13px;position:relative;z-index:1;}
@media(max-width:820px){
  .yg-row{flex-direction:column;align-items:stretch;}
  .yg-rule,.yg-seg .divider{display:none;}
  .yg-seg{border-bottom:2px solid #6E7276;}
}
@media(min-width:821px){.yg-rule{display:block;}}
