 :root{--ink:#17211d;--forest:#213b31;--forest2:#304e40;--sand:#d2bd91;--paper:#f7f6f1;--muted:#69736d;--line:#dedfd7;--white:#fff;--heading:"Manrope",sans-serif;--body:"DM Sans",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-9999px;top:0;background:white;padding:12px;z-index:100}.skip-link:focus{left:10px}.site-header{height:92px;padding:0 clamp(22px,6vw,92px);display:flex;align-items:center;justify-content:space-between;gap:30px;position:absolute;z-index:20;top:0;left:0;right:0;color:white;border-bottom:1px solid #ffffff2a}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-mark{width:48px;height:48px;border:1px solid #c6b181;border-radius:50%;display:grid;place-items:center;color:#e0d0a9;font-family:var(--heading);font-weight:800;letter-spacing:-3px;font-size:18px;position:relative}.brand-mark span{color:white}.brand-copy{display:flex;flex-direction:column;line-height:1.3}.brand-copy strong{font:800 16px var(--heading);letter-spacing:2px}.brand-copy small{font-size:8px;letter-spacing:1.5px;color:#d6c9a8}.primary-nav{display:flex;align-items:center;gap:clamp(14px,2vw,31px);font-size:12px;font-weight:700}.primary-nav>a,.nav-drop-trigger{color:#fff;opacity:.92;transition:opacity .2s}.primary-nav>a:hover,.nav-drop-trigger:hover{opacity:1;color:#e0c99a}.nav-drop-trigger{border:0;background:none;padding:12px 0;font-weight:700;font-size:12px}.nav-drop-trigger span{color:#d8c393;margin-left:5px}.nav-dropdown{position:relative}.dropdown-menu{display:none;position:absolute;top:100%;left:-18px;min-width:210px;padding:9px;background:#14221d;border:1px solid #ffffff24;box-shadow:0 15px 35px #0003}.nav-dropdown.open .dropdown-menu,.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{display:block}.dropdown-menu a{display:block;padding:11px 12px;font-size:12px;color:#f5f4ed}.dropdown-menu a:hover{background:#ffffff12;color:#e0c99a}.primary-nav .nav-login,.primary-nav .nav-admin,.primary-nav .nav-member{padding:9px 12px;border:1px solid #ffffff72}.primary-nav .nav-admin{border-color:#d6c08f;color:#e3d0a0}.nav-toggle{display:none;background:transparent;border:0;padding:8px}.nav-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px}.hero{min-height:720px;height:min(850px,100svh);max-height:940px;background:#17211d;color:white;position:relative;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;background-image:url('../images/cave-background.jpg'),url('https://images.unsplash.com/photo-1519681393784-d120267933ba?auto=format&fit=crop&w=2200&q=85');background-size:cover;background-position:center 48%;transform:scale(1.015)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,16,13,.88) 0%,rgba(11,17,14,.67) 48%,rgba(10,15,13,.32) 100%),linear-gradient(0deg,rgba(9,15,12,.55),transparent 60%)}.hero-content{position:relative;z-index:1;width:min(1120px,88%);margin:45px auto 0}.eyebrow,.section-kicker{font-size:10px;font-weight:700;letter-spacing:2.1px;color:var(--sand);display:flex;align-items:center;gap:12px}.eyebrow-line{height:1px;width:35px;background:var(--sand)}h1,h2,h3,p{margin-top:0}.hero h1{font:600 clamp(44px,6.2vw,84px)/1.09 var(--heading);letter-spacing:-3.8px;margin:28px 0 22px;max-width:950px}.hero h1 em{font-style:normal;color:#d9c79f}.hero-lede{font-size:16px;max-width:560px;color:#e0e3df;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:14px 19px;font-size:12px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:#d4c092;color:#17211d}.button-primary:hover{background:#e5d5ae}.button-ghost{border:1px solid #ffffff80;color:#fff}.button-ghost:hover{background:#ffffff14}.hero-caption,.hero-scroll{position:absolute;z-index:1;bottom:28px;font-size:9px;letter-spacing:1.6px;color:#e3e3db}.hero-caption{left:6%}.caption-dot{display:inline-block;width:6px;height:6px;background:#d8c18f;border-radius:50%;margin-right:8px}.hero-scroll{right:6%;display:flex;gap:15px;align-items:center}.hero-scroll span{font-size:18px}.section-wrap{width:min(1180px,88%);margin:0 auto}.intro-section{padding-top:115px;padding-bottom:105px}.intro-grid{display:grid;grid-template-columns:1.15fr .7fr;gap:10%;align-items:end;margin-top:22px}.intro-grid h2,.section-heading h2,.feature-copy h2,.newsletter-inner h2{font:600 clamp(32px,4.2vw,52px)/1.2 var(--heading);letter-spacing:-2px;margin:0}.intro-grid h2 span,.section-heading h2 span,.feature-copy h2 span{color:#7b897e}.intro-copy p{color:#59655e;font-size:15px;line-height:1.9}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:12px;font-weight:700;border-bottom:1px solid #9a9f93;padding:4px 0 8px}.text-link span{color:#78856f}.stat-line{border-top:1px solid var(--line);margin-top:66px;padding-top:25px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat-line div{display:flex;flex-direction:column;gap:5px}.stat-line strong{font:700 26px var(--heading);color:#7b897e}.stat-line span{font-size:12px;color:#59655e}.services-section{background:#eceee7;padding:94px 0 105px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:40px}.section-heading h2{margin-top:17px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{min-height:320px;padding:27px 28px;position:relative;overflow:hidden;color:white;background:#263d32;display:flex;flex-direction:column;align-items:flex-start;transition:transform .25s}.service-card:hover{transform:translateY(-5px)}.service-geology{background:linear-gradient(0deg,#17241deF,#17241d66),url('https://images.unsplash.com/photo-1464822759023-fed622ff2c3b?auto=format&fit=crop&w=900&q=80') center/cover}.service-geophysics{background:linear-gradient(0deg,#17241df2,#17241d75),url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=900&q=80') center/cover}.service-remote{background:linear-gradient(0deg,#17241df2,#17241d70),url('https://images.unsplash.com/photo-1473448912268-2022ce9509d8?auto=format&fit=crop&w=900&q=80') center/cover}.service-number{font-size:10px;letter-spacing:1.5px;color:#d7c69d}.service-icon{font-size:35px;color:#d7c69d;margin-top:30px}.service-card h3{font:600 23px/1.3 var(--heading);letter-spacing:-.5px;margin:12px 0}.service-card p{font-size:13px;color:#e0e5df;max-width:280px;line-height:1.8;margin-bottom:30px}.card-arrow{position:absolute;right:27px;bottom:23px;color:#d7c69d}.feature-section{display:grid;grid-template-columns:1fr 1fr;background:#1b2c24;color:white;min-height:520px}.feature-photo{background:linear-gradient(#14221d25,#14221d25),url('../images/geological-team-meeting.webp') center/cover;min-height:420px}.feature-copy{padding:clamp(45px,7vw,100px);align-self:center}.feature-copy h2{margin:22px 0}.feature-copy h2 span{color:#d5c294}.feature-copy p{font-size:14px;line-height:1.9;color:#c8d0ca;max-width:480px;margin:24px 0 28px}.button-light{background:#f1eee3;color:#1b2c24}.updates-section{padding-top:105px;padding-bottom:110px}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post-card{min-width:0}.post-card>img,.post-placeholder{display:block;width:100%;height:205px;object-fit:cover;background:#dfe2d9}.post-placeholder{display:flex;align-items:end;padding:18px;background:linear-gradient(135deg,#304b3d,#a8ad92);color:#fff;font-size:10px;letter-spacing:2px}.post-meta{margin-top:22px;color:#7d867d;font-size:10px;letter-spacing:.7px}.post-card h3{font:600 20px/1.4 var(--heading);margin:8px 0}.post-card p{font-size:13px;color:#69736d;line-height:1.8}.post-card .text-link{margin-top:4px}.empty-updates{border:1px solid var(--line);padding:28px;display:flex;gap:20px;align-items:center}.empty-symbol{font-size:34px;color:#8d9a86}.empty-updates h3{margin-bottom:4px;font:600 19px var(--heading)}.empty-updates p{font-size:13px;color:var(--muted);margin:0}.empty-updates .text-link{margin-left:auto;white-space:nowrap}.newsletter-band{background:#dfe4d9;padding:70px 0}.newsletter-inner{width:min(1180px,88%);margin:auto;display:grid;grid-template-columns:1fr .85fr;gap:10%;align-items:center}.newsletter-inner h2{margin:16px 0 12px}.newsletter-inner h2 em{font-style:normal;color:#687c69}.newsletter-inner p{font-size:13px;color:#59655e;max-width:470px}.newsletter-form{display:flex;position:relative;gap:0}.newsletter-form input[type=email]{width:100%;min-width:0;padding:15px 14px;background:#fff;border:1px solid #d7dcd2;outline:none;font-size:12px}.newsletter-form input:focus{border-color:#6b846d}.newsletter-form>button{border:0;background:#203b30;color:white;padding:0 18px;font-size:12px;font-weight:700;white-space:nowrap}.newsletter-form>button:hover{background:#385746}.newsletter-form small{font-size:10px;color:#68736b;position:absolute;top:calc(100% + 9px);left:0}.site-footer{background:#14221c;color:#e8ebe5;padding:65px clamp(22px,6vw,92px) 0}.footer-main{display:grid;grid-template-columns:1.3fr .65fr .8fr 1.15fr;gap:45px;padding-bottom:55px}.brand-footer .brand-mark{width:43px;height:43px}.footer-brand p,.footer-newsletter p{font-size:12px;line-height:1.9;color:#adb9b0;max-width:290px;margin-top:20px}.footer-main h3{font:600 13px var(--heading);margin:0 0 17px;color:#d7c69d}.footer-main>div:not(:first-child)>a{display:block;color:#c1cbc3;font-size:12px;margin:10px 0}.footer-main>div>a:hover{color:#fff}.footer-newsletter .newsletter-form input{background:#26362e;border-color:#405147;color:#fff}.footer-newsletter .newsletter-form input::placeholder{color:#b4beb6}.footer-newsletter .newsletter-form small{color:#9eaaa1}.footer-bottom{border-top:1px solid #ffffff21;padding:20px 0;display:flex;justify-content:space-between;gap:15px;color:#9eaaa1;font-size:10px}.page-hero{padding:170px 6% 75px;background:#20352a;color:#fff;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#14231dec,#14231d88);pointer-events:none}.page-hero>*{position:relative;z-index:1}.page-hero h1{font:600 clamp(38px,5vw,65px)/1.15 var(--heading);letter-spacing:-2px;margin:17px 0}.page-hero p{max-width:650px;color:#d2dbd3}.content-section{width:min(1000px,88%);margin:0 auto;padding:65px 0 100px}.content-section h2{font:600 30px var(--heading);letter-spacing:-1px}.content-section p{color:#59655e;line-height:1.9}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.content-tile{padding:25px;border:1px solid var(--line);background:#fff}.content-tile h3{font:600 19px var(--heading)}.content-tile p{font-size:13px}.form-card{max-width:600px;margin:0 auto;background:#fff;border:1px solid var(--line);padding:clamp(22px,4vw,42px)}.form-card h1,.form-card h2{font:700 29px var(--heading);letter-spacing:-1px}.form-card>p{color:var(--muted);font-size:13px}.field{margin:18px 0}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}.field input,.field textarea,.field select{width:100%;padding:12px 13px;border:1px solid #d8ddd5;background:#fcfcfa;color:var(--ink);border-radius:0}.field textarea{min-height:170px;resize:vertical}.form-button{border:0;background:#233f32;color:white;padding:13px 20px;font-size:12px;font-weight:700}.form-button:hover{background:#365b47}.notice{padding:13px 15px;margin:18px 0;background:#e8eee5;border-left:3px solid #5d8065;font-size:13px}.notice.error{background:#f8e9e6;border-color:#b35e51}.notice.warning{background:#f5f0df;border-color:#c7a75e}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#68736b}.inline-form{display:inline-flex;gap:6px;align-items:center}.small-button{padding:7px 9px;border:1px solid #bfc9bd;background:#fff;font-size:11px}.small-button.danger{color:#a23c31;border-color:#d9b7b2}.status-pill{display:inline-block;padding:4px 8px;background:#e7ece4;font-size:10px;text-transform:uppercase;letter-spacing:.6px}.status-pill.pending{background:#f4ecd6}.status-pill.rejected,.status-pill.removed{background:#f4e2df}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:35px}.dashboard-stat{padding:22px;background:white;border:1px solid var(--line)}.dashboard-stat strong{display:block;font:700 29px var(--heading)}.dashboard-stat span{font-size:12px;color:var(--muted)}.post-body{font-size:16px;line-height:1.95;white-space:normal}.post-body p{margin:0 0 1.1em}.post-cover{width:100%;max-height:450px;object-fit:cover;margin:20px 0}.post-list{display:grid;gap:20px}.post-list-item{padding:20px;background:#fff;border:1px solid var(--line)}.post-list-item h2{font:600 22px var(--heading);margin:8px 0}.post-list-item p{font-size:13px;color:var(--muted)}.post-list-item .text-link{margin-top:8px}.contact-layout{display:grid;grid-template-columns:.7fr 1fr;gap:50px}.contact-details{padding:25px;background:#e9ece5}.contact-details h3{font:600 18px var(--heading)}.contact-details p{font-size:13px}.muted{color:var(--muted)}@media(max-width:1050px){.site-header{padding:0 4%;gap:15px}.primary-nav{gap:13px;font-size:11px}.primary-nav .nav-login,.primary-nav .nav-admin,.primary-nav .nav-member{padding:7px}.footer-main{grid-template-columns:1fr 1fr;gap:35px}}@media(max-width:780px){.site-header{height:76px;padding:0 22px}.nav-toggle{display:block;z-index:2}.primary-nav{display:none;position:absolute;top:76px;left:0;right:0;padding:15px 22px 25px;background:#14221c;align-items:stretch;gap:0;flex-direction:column;max-height:calc(100svh - 76px);overflow:auto}.primary-nav.open{display:flex}.primary-nav>a,.nav-drop-trigger{display:block;padding:13px 0;text-align:left;width:100%;font-size:13px}.nav-dropdown{width:100%}.dropdown-menu{position:static;border:0;box-shadow:none;padding:0 0 5px 12px;background:#1a2c23}.dropdown-menu a{padding:10px}.primary-nav .nav-login,.primary-nav .nav-admin,.primary-nav .nav-member{border:0;padding:13px 0}.hero{height:auto;min-height:700px;max-height:none}.hero-content{padding:110px 0 110px;margin:0 auto}.hero h1{font-size:clamp(42px,10vw,68px);letter-spacing:-2.5px}.hero-lede{font-size:14px}.hero-caption{bottom:20px}.hero-scroll{display:none}.intro-section{padding-top:75px;padding-bottom:75px}.intro-grid{grid-template-columns:1fr;gap:25px}.stat-line{grid-template-columns:1fr 1fr;margin-top:42px}.services-section{padding:70px 0}.section-heading{align-items:flex-start;flex-direction:column}.service-grid,.post-grid,.content-grid{grid-template-columns:1fr}.service-card{min-height:270px}.feature-section{grid-template-columns:1fr}.feature-photo{min-height:300px}.feature-copy{padding:45px 7% 60px}.updates-section{padding-top:75px;padding-bottom:75px}.post-card>img,.post-placeholder{height:240px}.newsletter-band{padding:55px 0 75px}.newsletter-inner{grid-template-columns:1fr;gap:25px}.empty-updates{align-items:flex-start;flex-wrap:wrap}.empty-updates .text-link{margin-left:0}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-brand,.footer-newsletter{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:5px}.page-hero{padding-top:135px}.contact-layout{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:1fr 1fr}}@media(max-width:430px){.brand-mark{width:42px;height:42px}.brand-copy strong{font-size:14px}.brand-copy small{font-size:7px}.hero-actions{align-items:stretch;flex-direction:column;max-width:260px}.button{justify-content:space-between}.footer-main{grid-template-columns:1fr}.footer-brand,.footer-newsletter{grid-column:auto}.dashboard-grid{grid-template-columns:1fr}.newsletter-form.newsletter-large{display:grid;grid-template-columns:1fr}.newsletter-large>button{padding:13px}.newsletter-large small{position:static;grid-column:1;margin-top:8px}.stat-line{gap:18px}.stat-line strong{font-size:22px}}


/* GRMEC typography-only update: larger navigation and page headings.
   Deliberately does not change logo sizing, positioning, or upload behavior. */
.site-header .primary-nav,
.site-header .primary-nav > a,
.site-header .primary-nav .nav-drop-trigger,
.site-header .primary-nav .dropdown-menu a {
  font-size: 16px !important;
}
.site-header .primary-nav { gap: clamp(14px, 1.8vw, 28px) !important; }
.hero h1,
.page-hero h1,
h1 {
  font-size: clamp(42px, 5.2vw, 68px) !important;
  line-height: 1.12 !important;
}
.section-heading h2,
.feature-copy h2,
.newsletter-inner h2,
h2 {
  font-size: clamp(30px, 3.5vw, 44px) !important;
  line-height: 1.2 !important;
}
h3,
.card h3,
.project-card h3,
.post-card h3,
.news-card h3 {
  font-size: clamp(20px, 2vw, 25px) !important;
  line-height: 1.3 !important;
}
@media (max-width: 900px) {
  .site-header .primary-nav,
  .site-header .primary-nav > a,
  .site-header .primary-nav .nav-drop-trigger,
  .site-header .primary-nav .dropdown-menu a {
    font-size: 17px !important;
  }
  .hero h1, .page-hero h1, h1 {
    font-size: clamp(36px, 8vw, 52px) !important;
  }
  .section-heading h2, .feature-copy h2, .newsletter-inner h2, h2 {
    font-size: clamp(28px, 6vw, 38px) !important;
  }
}
