/*
 Theme Name:   Twenty Twenty-Five Child
 Theme URI:    https://gricustomerportal.com/
 Description:  Child theme for Twenty Twenty-Five (GRI Customer Portal)
 Author:       GRI
 Author URI:   https://gricustomerportal.com/
 Template:     twentytwentyfive
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  twentytwentyfive-child
*/

/* Custom styles go below */
/* ===== GRI Portal Theme ===== */
:root{
  --gri-teal:#1b8a7e;
  --gri-teal-light:#2cb9a5;
  --gri-gold:#d2a155;
  --gri-text:#1f1f1f;
  --gri-bg:#f6f7f8;
}

/* Typography */
body{
  font-family: "Inter", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: var(--gri-text);
  background: #fff;
}
h1,h2,h3,h4{
  font-family: "Montserrat", Inter, Arial, sans-serif;
  letter-spacing:.02em;
  color: var(--gri-text);
}
h1{
  font-weight:800;
  text-transform:uppercase;
}

/* Site header / nav (Navigation block) */
.wp-site-blocks > header,
header.wp-block-template-part{
  border-bottom: 4px solid var(--gri-teal);
}
nav.wp-block-navigation{
  --wp--navigation--color: var(--gri-text);
  --wp--preset--color--foreground: var(--gri-text);
}
.wp-block-navigation a{
  font-weight:600;
  text-decoration:none;
  padding:.6rem .8rem;
  border-radius:.5rem;
}
.wp-block-navigation a:hover{
  background: var(--gri-bg);
  color: var(--gri-teal);
}

/* Primary call-to-action buttons */
a.wp-element-button, .wp-block-button__link, .gri-btn{
  background: var(--gri-teal);
  color:#fff;
  border-radius:.6rem;
  padding:.7rem 1rem;
  font-weight:600;
  text-decoration:none;
  display:inline-block;
}
a.wp-element-button:hover, .wp-block-button__link:hover, .gri-btn:hover{
  background: var(--gri-teal-light);
  color:#fff;
}

/* Cards (Customer Drive) */
.gri-drive-links{ margin-top:1rem; }
.gri-drive-links h2{
  margin-bottom:1rem;
}
.gri-cards .gri-card{
  background:#fff;
  border:1px solid #e7e8ea;
  border-radius:14px;
  box-shadow: 0 6px 20px rgba(0,0,0,.05);
  transition:.15s ease;
}
.gri-cards .gri-card strong{
  color: var(--gri-text);
}
.gri-cards .gri-card:hover{
  transform: translateY(-2px);
  border-color: var(--gri-teal);
  box-shadow: 0 10px 28px rgba(27,138,126,.15);
}

/* Login module (Profile Builder) */
.gri-portal-login{
  background:#fff;
  border:1px solid #e7e8ea;
  border-radius:14px;
  box-shadow:0 6px 20px rgba(0,0,0,.05);
  padding:24px;
  margin: 24px 0;
}
.gri-portal-login .wppb-user-forms{
  --wppb-primary: var(--gri-teal);
}
.gri-portal-login a{ color: var(--gri-teal); }
.gri-portal-login a:hover{ color: var(--gri-teal-light); }

/* Footer subtle */
footer.wp-block-template-part{
  border-top:1px solid #eee;
  background: #fff;
}

/* Utility */
.badge{
  display:inline-block; font-size:.75rem; font-weight:700;
  padding:.2rem .5rem; border-radius:.35rem;
  background: var(--gri-gold); color:#000;
}

/* Header alignment polish */
header.wp-block-template-part .wp-block-group.alignfull{
  box-sizing: border-box;
}
header.wp-block-template-part .wp-block-image img{
  display:block;
  height:auto;
  max-height:56px; /* keep header compact */
  width:auto;
}

header.wp-block-template-part .wp-block-image img{
  display:block;
  height:auto;
  max-height:56px;
  width:auto;
}
