/* 4Deers main Gear hub — intentionally scoped to /gear/. */
.fdgear-page,
.fdgear-page * { box-sizing: border-box; }

.fdgear-page {
	--fdg-forest: #2c4c3b;
	--fdg-deep: #18281f;
	--fdg-ink: #202723;
	--fdg-clay: #d97757;
	--fdg-paper: #f9f8f6;
	--fdg-sand: #f0ece2;
	--fdg-line: rgba(32,39,35,.16);
	background: var(--fdg-paper);
	color: var(--fdg-ink);
	overflow: clip;
}

.fdgear-shell { width: min(calc(100% - 40px), 1400px); margin-inline: auto; }
.fdgear-kicker { margin: 0 0 20px; color: var(--fdg-clay); font-size: .68rem; font-weight: 850; letter-spacing: .2em; line-height: 1.3; text-transform: uppercase; }
.fdgear-page h1,
.fdgear-page h2,
.fdgear-page h3,
.fdgear-page h4 { font-family: "Playfair Display", Georgia, serif; }

.fdgear-hero { min-height: calc(100svh - 96px); padding: clamp(65px, 8vw, 120px) 0; background: linear-gradient(135deg, #17291f, #2f4e3d); color: #fff; }
.fdgear-hero-grid { display: grid; grid-template-columns: minmax(0,.92fr) minmax(440px,1.08fr); gap: clamp(50px,8vw,120px); align-items: center; }
.fdgear-hero h1 { max-width: 780px; margin: 0; font-size: clamp(4rem,8vw,8.2rem); font-weight: 500; letter-spacing: -.06em; line-height: .93; }
.fdgear-lede { max-width: 670px; margin: 34px 0 0; color: rgba(255,255,255,.73); font-size: clamp(1.05rem,1.5vw,1.25rem); line-height: 1.8; }
.fdgear-button { display: inline-flex; align-items: center; gap: 18px; margin-top: 36px; padding: 16px 20px; border: 1px solid rgba(255,255,255,.48); color: #fff; font-size: .72rem; font-weight: 800; letter-spacing: .04em; text-decoration: none; transition: color .2s ease, background-color .2s ease, border-color .2s ease; }
.fdgear-button span,
.fdgear-text-link span { transition: transform .2s ease; }
.fdgear-button:hover { border-color: #fff; background: #fff; color: var(--fdg-deep); }
.fdgear-button:hover span,
.fdgear-text-link:hover span { transform: translateX(5px); }
.fdgear-hero-image { position: relative; min-height: clamp(500px,55vw,740px); margin: 0; overflow: hidden; background: var(--fdg-deep); }
.fdgear-hero-image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(.7) contrast(1.05); }
.fdgear-hero-image::after { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(7,14,10,.78)); content: ""; }
.fdgear-hero-image figcaption { position: absolute; z-index: 1; right: 28px; bottom: 25px; left: 28px; color: rgba(255,255,255,.77); font-size: .64rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }

.fdgear-section { padding: clamp(90px,11vw,160px) 0; }
.fdgear-section-heading { max-width: 820px; margin-bottom: clamp(45px,7vw,80px); }
.fdgear-section-heading h2,
.fdgear-method h2,
.fdgear-trail h2 { margin: 0; font-size: clamp(3rem,6.3vw,6.4rem); font-weight: 500; letter-spacing: -.055em; line-height: .95; }
.fdgear-section-heading > p:last-child { max-width: 580px; margin: 28px 0 0; color: #626b65; font-size: 1rem; line-height: 1.8; }

.fdgear-adventure-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 28px; }
.fdgear-adventure { grid-column: span 3; border-bottom: 1px solid var(--fdg-line); background: #fff; }
.fdgear-adventure.is-featured { grid-column: span 2; }
.fdgear-adventure-image { display: block; height: 300px; overflow: hidden; background: #d7d3c8; }
.fdgear-adventure.is-featured .fdgear-adventure-image { height: 390px; }
.fdgear-adventure-image img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.73); transition: transform .65s cubic-bezier(.2,.75,.25,1), filter .3s ease; }
.fdgear-adventure:first-child .fdgear-adventure-image img { object-position: 35% center; }
.fdgear-adventure:hover .fdgear-adventure-image img { transform: scale(1.025); filter: saturate(.9); }
.fdgear-adventure-copy { position: relative; padding: 30px 32px 34px; }
.fdgear-number { color: var(--fdg-clay); font-size: .62rem; font-weight: 800; letter-spacing: .14em; }
.fdgear-adventure h3 { margin: 18px 0 0; color: var(--fdg-forest); font-size: clamp(1.8rem,3vw,2.7rem); font-weight: 500; letter-spacing: -.035em; line-height: 1.05; }
.fdgear-adventure p { min-height: 78px; margin: 20px 0 0; color: #626b65; font-size: .9rem; line-height: 1.75; }
.fdgear-text-link { display: inline-flex; align-items: center; gap: 16px; margin-top: 22px; padding-bottom: 7px; border-bottom: 1px solid currentColor; color: inherit; font-size: .7rem; font-weight: 800; letter-spacing: .035em; text-decoration: none; }

.fdgear-start { background: var(--fdg-sand); }
.fdgear-start-grid { display: grid; grid-template-columns: minmax(280px,.75fr) minmax(0,1.25fr); gap: clamp(60px,10vw,150px); align-items: start; }
.fdgear-start .fdgear-section-heading { margin: 0; }
.fdgear-start-links { border-top: 1px solid var(--fdg-line); }
.fdgear-start-links a { display: grid; grid-template-columns: 54px 1fr auto; gap: 22px; align-items: center; min-height: 130px; border-bottom: 1px solid var(--fdg-line); font-family: "Playfair Display",Georgia,serif; font-size: clamp(1.8rem,3.6vw,3.6rem); letter-spacing: -.035em; text-decoration: none; transition: padding .25s ease, background-color .25s ease; }
.fdgear-start-links a:hover { padding-inline: 22px; background: rgba(255,255,255,.58); }
.fdgear-start-links span { color: var(--fdg-clay); font-family: Inter,sans-serif; font-size: .62rem; font-weight: 850; letter-spacing: .12em; }
.fdgear-start-links b { font-family: Inter,sans-serif; font-size: 1rem; font-weight: 500; }

.fdgear-guides { background: var(--fdg-deep); color: #fff; }
.fdgear-section-heading-light { color: #fff; }
.fdgear-guide-types { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.17); border-bottom: 1px solid rgba(255,255,255,.17); }
.fdgear-guide-types article { min-height: 330px; padding: clamp(28px,4vw,52px); border-right: 1px solid rgba(255,255,255,.17); }
.fdgear-guide-types article:last-child { border-right: 0; }
.fdgear-guide-types h3 { margin: 0; font-size: clamp(2rem,3.2vw,3.4rem); font-weight: 500; line-height: 1; }
.fdgear-guide-types p { max-width: 330px; margin: 24px 0 0; color: rgba(255,255,255,.6); font-size: .92rem; line-height: 1.75; }
.fdgear-guide-types .fdgear-text-link { margin-top: 52px; color: #d9e5dc; }
.fdgear-latest { margin-top: 80px; }
.fdgear-latest > h3 { margin: 0 0 32px; font-size: 2rem; font-weight: 500; }
.fdgear-latest-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.fdgear-latest-grid article { padding: 28px; border: 1px solid rgba(255,255,255,.17); }
.fdgear-latest-grid p { margin: 0 0 16px; color: rgba(255,255,255,.5); font-size: .67rem; letter-spacing: .08em; }
.fdgear-latest-grid h4 { margin: 0; font-size: 1.55rem; font-weight: 500; line-height: 1.25; }

.fdgear-method { background: #fff; }
.fdgear-section.fdgear-method { padding-block: clamp(74px,9vw,132px); }
.fdgear-method-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.72fr); gap: clamp(60px,10vw,150px); align-items: start; }
.fdgear-method-copy { padding-top: 18px; }
.fdgear-method-principles { margin: 0; color: var(--fdg-forest); font-family: "Playfair Display",Georgia,serif; font-size: clamp(1.8rem,3vw,3rem); line-height: 1.35; }
.fdgear-method-copy > p:not(.fdgear-method-principles) { max-width: 600px; margin: 32px 0 0; color: #626b65; line-height: 1.8; }
.fdgear-button-dark { border-color: var(--fdg-forest); color: var(--fdg-forest); }
.fdgear-button-dark:hover { background: var(--fdg-forest); color: #fff; }

.fdgear-trail { position: relative; display: grid; min-height: min(780px,82svh); place-items: center; overflow: hidden; color: #fff; }
.fdgear-trail > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: saturate(.7); }
.fdgear-trail-shade { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(10,20,14,.9),rgba(10,20,14,.35)); }
.fdgear-trail-content { position: relative; z-index: 1; padding-block: 100px; }
.fdgear-trail-content > p:not(.fdgear-kicker) { max-width: 610px; margin: 30px 0 0; color: rgba(255,255,255,.75); font-size: 1.1rem; line-height: 1.8; }

.fdgear-page :focus-visible { outline: 3px solid rgba(217,119,87,.85); outline-offset: 4px; }

@media (max-width: 1000px) {
	.fdgear-hero-grid { grid-template-columns: 1fr 1fr; gap: 42px; }
	.fdgear-adventure.is-featured { grid-column: span 3; }
	.fdgear-guide-types article { min-height: 300px; }
}

@media (max-width: 760px) {
	.fdgear-hero { min-height: auto; padding-top: 70px; }
	.fdgear-hero-grid,
	.fdgear-start-grid,
	.fdgear-method-grid { grid-template-columns: 1fr; }
	.fdgear-hero-image { min-height: 520px; }
	.fdgear-adventure,
	.fdgear-adventure.is-featured { grid-column: span 6; }
	.fdgear-adventure-image,
	.fdgear-adventure.is-featured .fdgear-adventure-image { height: 380px; }
	.fdgear-adventure p { min-height: 0; }
	.fdgear-guide-types,
	.fdgear-latest-grid { grid-template-columns: 1fr; }
	.fdgear-guide-types article { min-height: 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.17); }
	.fdgear-guide-types article:last-child { border-bottom: 0; }
	.fdgear-method-copy { padding-top: 0; }
}

@media (max-width: 520px) {
	.fdgear-shell { width: min(calc(100% - 28px),1400px); }
	.fdgear-hero h1 { font-size: clamp(3.5rem,17vw,5rem); }
	.fdgear-hero-image { min-height: 400px; }
	.fdgear-section { padding: 78px 0; }
	.fdgear-section.fdgear-method { padding-block: 64px; }
	.fdgear-adventure-grid { gap: 20px; }
	.fdgear-adventure-image,
	.fdgear-adventure.is-featured .fdgear-adventure-image { height: 300px; }
	.fdgear-adventure-copy { padding: 26px 24px 30px; }
	.fdgear-start-links a { grid-template-columns: 36px 1fr auto; gap: 12px; min-height: 105px; }
	.fdgear-trail { min-height: 700px; }
}

@media (prefers-reduced-motion: reduce) {
	.fdgear-page *,
	.fdgear-page *::before,
	.fdgear-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
