/* Native Gifting For only; shared site identity, typography and footer stay authoritative. */
.gifting-for { overflow-wrap: anywhere; }
.gifting-for .hero--gifting-for {
	min-height: 900px;
	background-image: var(--unwrappedco-hero-image, none);
	background-position: center;
	background-size: cover;
}
.gifting-for .hero--gifting-for::before { background: rgba(0,0,0,.2); }
.gifting-for .hero--gifting-for .hero__content { width: min(950px, calc(100% - 48px)); }
.gifting-for .hero--gifting-for h1 { max-width: 900px; margin-inline: auto; }
.gifting-for .hero--gifting-for .hero__content > p:not(.eyebrow) { max-width: 650px; margin-inline: auto; }
.gifting-for .hero--gifting-for .button { color: #171412; }
.gifting-for > .section:not(.dark-section) .eyebrow { color: #8a5c00; }
.gifting-for .section { padding-block: 130px; }
.gifting-for__heading { margin-bottom: 40px; }
.gifting-for__heading .eyebrow { margin-bottom: 24px; }
.gifting-for__copy { font-size: 16px; line-height: 1.7; color: var(--muted); }
.gifting-for .dark-section .gifting-for__copy { color: #d5d2cf; }
.gifting-for__copy p + p { margin-top: 1em; }
.gifting-for__intro { background-image: url('../images/index/leaf1.png'); background-position: left top; background-repeat: no-repeat; background-size: 235px auto; }
.gifting-for__intro-grid { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 76px; }
.gifting-for__intro-grid--text { grid-template-columns: 1fr; }
.gifting-for__intro .gifting-for__heading h2 { max-width: 650px; }
.gifting-for__intro .gifting-for__heading .gifting-for__copy { margin-top: 34px; }
.gifting-for__comparison { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; background: #0c0c0c; padding: 25px; }
.gifting-for__comparison h3 { font-size: 25px; line-height: 1.2; margin-bottom: 16px; }
.gifting-for__comparison ul { margin: 0; padding-left: 18px; list-style-type: square; }
.gifting-for__comparison li { font-size: 14px; line-height: 1.7; color: #d5d2cf; padding-left: 3px; margin-top: 7px; }
.gifting-for__comparison li::marker { color: var(--gold); }
.gifting-for__collage { position: relative; padding-left: 27%; padding-block: 0; }
.gifting-for__collage-large { width: 100%; height: auto; aspect-ratio: 675 / 784; object-fit: cover; }
.gifting-for__collage-small { position: absolute; width: 45%; height: 68%; left: 0; top: 15%; object-fit: cover; padding: 9px; border: 1px solid #a9a9a9; background: #171717; }
.gifting-for__collage--single { padding-left: 0; }
.gifting-for__collage--single .gifting-for__collage-small { position: static; width: 100%; height: auto; max-height: 760px; }
.gifting-for__process { background: var(--ivory) url('../images/index/leaf2.png') right top / 230px auto no-repeat; }
.gifting-for__process .gifting-for__heading,
.gifting-for__occasions .gifting-for__heading,
.gifting-for__faq .gifting-for__heading { text-align: center; max-width: 1050px; margin: 0 auto 60px; }
.gifting-for__process .gifting-for__heading h2,
.gifting-for__occasions .gifting-for__heading h2 { max-width: 1000px; margin-inline: auto; }
.gifting-for__heading .gifting-for__copy { margin-top: 25px; }
.gifting-for__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.gifting-for__icon { width: 80px; height: 80px; object-fit: contain; }
.gifting-for__step-number { display: block; font-size: 16px; letter-spacing: .07em; padding: 28px 0; margin-bottom: 24px; border-bottom: 1px solid #79746e; position: relative; }
.gifting-for__step-number::before,
.gifting-for__step-number::after { content: ''; width: 5px; height: 5px; position: absolute; bottom: -3px; border-radius: 50%; background: #79746e; }
.gifting-for__step-number::before { left: 0; }
.gifting-for__step-number::after { right: 0; }
.gifting-for__step h3 { font-size: clamp(27px, 2.35vw, 44px); line-height: 1.1; margin-bottom: 20px; }
.gifting-for__features .gifting-for__heading,
.gifting-for__experience .gifting-for__heading { display: grid; grid-template-columns: 1.2fr 1fr; gap: 100px; align-items: center; }
.gifting-for__experience .gifting-for__heading { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); }
.gifting-for__features .eyebrow::before,
.gifting-for__experience .eyebrow::before,
.gifting-for__intro .eyebrow::before { display: none; }
.gifting-for__features .gifting-for__heading h2 { max-width: 750px; }
.gifting-for__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 28px; }
.gifting-for__card-image { height: auto; aspect-ratio: 513 / 599; object-fit: cover; margin-bottom: 28px; }
.gifting-for__card h3 { font-size: clamp(29px, 2.5vw, 44px); line-height: 1.03; margin-bottom: 12px; }
.gifting-for__features .gifting-for__card-title--icon { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 12px; }
.gifting-for__features .gifting-for__card-title--icon h3 { min-width: 0; margin-bottom: 0; }
.gifting-for__features .gifting-for__card-heading-icon { display: block; flex: 0 0 44px; width: 44px; height: 44px; object-fit: contain; margin-top: 5px; }
.gifting-for__closing { margin-top: 42px; max-width: 1000px; }
.gifting-for__carousel { position: relative; }
.gifting-for__occasion-track { display: flex; gap: 30px; padding: 0 0 12px; margin: 0; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: var(--gold-dark) transparent; }
.gifting-for__occasion { flex: 0 0 calc((100% - 120px) / 5); min-width: 0; padding: 45px 20px; background: #050505; color: #fff; text-align: center; scroll-snap-align: start; }
.gifting-for__occasion .gifting-for__icon { margin: 0 auto 24px; }
.gifting-for__occasion h3 { font-size: clamp(25px, 2.1vw, 38px); line-height: 1.08; }
.gifting-for__occasion p { margin-top: 18px; font-size: 14px; color: #d5d2cf; }
.gifting-for .gifting-for__occasions--followed-by-faq { padding-bottom: 40px; }
.gifting-for__section-divider { width: min(1600px, calc(100% - 96px)); height: 1px; margin-inline: auto; background: #dcd7ce; }
.gifting-for .gifting-for__section-divider + .gifting-for__faq { padding-top: 40px; }
.gifting-for__arrow { position: absolute; z-index: 1; top: calc(50% - 6px); transform: translateY(-50%); display: grid; place-items: center; width: 44px; height: 48px; padding: 0; border: 0; background: transparent; cursor: pointer; font-size: 36px; line-height: 1; }
.gifting-for__arrow[hidden] { display: none; }
.gifting-for__arrow:disabled { opacity: .35; cursor: default; }
.gifting-for__arrow--previous { left: -54px; }
.gifting-for__arrow--next { right: -54px; }
.gifting-for__cards--experience { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gifting-for__cards--experience .gifting-for__card-image { aspect-ratio: 378 / 430; margin-bottom: 18px; }
.gifting-for__video-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.gifting-for__video-card { min-width: 0; }
.gifting-for__video-player { position: relative; }
.gifting-for__video-toggle { position: absolute; inset: 0; display: grid; place-items: center; width: 100%; height: 100%; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--gold); cursor: pointer; }
.gifting-for__video-toggle[hidden] { display: none; }
.gifting-for__video-toggle:focus-visible { outline: 3px solid #fff; outline-offset: -5px; box-shadow: inset 0 0 0 8px #0d0d0d; }
.gifting-for__video-play-icon { display: grid; place-items: center; width: 80px; height: 80px; }
.gifting-for__video-play-icon svg { width: 80px; height: 80px; margin-left: 3px; }
.gifting-for__video-player.is-playing .gifting-for__video-play-icon { visibility: hidden; }
.gifting-for__video-card video { display: block; width: 100%; aspect-ratio: 9 / 16; object-fit: cover; background: #0d0d0d; }
.gifting-for__video-card a { display: inline-block; margin-top: 15px; color: var(--gold); font-size: 14px; text-decoration: none; }
.gifting-for__video-card a:hover { text-decoration: underline; }
.gifting-for__video-card a:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
.gifting-for__number { display: block; color: var(--gold); font-size: 13px; letter-spacing: .1em; margin-bottom: 15px; }
.gifting-for__faq-grid { display: grid; grid-template-columns: 1.08fr 1fr; gap: 75px; align-items: start; }
.gifting-for__faq-grid--text { grid-template-columns: 1fr; }
.gifting-for__faq-image { width: 100%; height: auto; aspect-ratio: 724 / 770; object-fit: cover; }
.gifting-for__faq-item summary { scroll-margin-top: calc(var(--header, 100px) + 48px); }
@media (min-width: 901px) {
	.gifting-for__faq-image {
		position: sticky;
		top: var(--faq-sticky-top, var(--header, 100px));
	}
	.admin-bar .gifting-for__faq-image { top: var(--faq-sticky-top, calc(var(--header, 100px) + 32px)); }
}
.gifting-for__faq-item { border-top: 1px solid #dcd7ce; padding-block: 30px; }
.gifting-for__faq-item:last-child { border-bottom: 1px solid #dcd7ce; }
.gifting-for__faq-item summary { display: flex; gap: 24px; align-items: flex-start; cursor: pointer; list-style: none; }
.gifting-for__faq-item summary::-webkit-details-marker { display: none; }
.gifting-for__faq-number { padding-top: 8px; font-size: 12px; color: #756f66; }
.gifting-for__faq-item h3 { flex: 1; font-size: clamp(27px, 2.35vw, 42px); line-height: 1.15; }
.gifting-for__faq-toggle { flex: 0 0 38px; width: 38px; height: 38px; align-self: center; display: grid; place-items: center; border: 1px solid rgba(0,0,0,.75); border-radius: 50%; color: var(--ink); font-family: var(--sans); font-size: 17px; line-height: 1.5; transition: color .3s, border-color .3s, background .3s; }
.gifting-for__faq-item[open] .gifting-for__faq-toggle { background: var(--gold); border-color: var(--gold); color: #fff; }
.gifting-for__faq-item .gifting-for__copy { padding: 20px 56px 0 40px; }
.gifting-for__faq-item .gifting-for__copy p {
	font-size: 18px;
}

@media (min-width: 1181px) {
	.gifting-for__faq-toggle { flex-basis: 46px; width: 46px; height: 46px; font-size: 19px; }
}
@media (max-width: 1700px) {
	.gifting-for__arrow--previous { left: -44px; }
	.gifting-for__arrow--next { right: -44px; }
}
@media (max-width: 1180px) {
	.gifting-for .hero--gifting-for { min-height: 730px; }
	.gifting-for .section { padding-block: 90px; }
	.gifting-for .gifting-for__occasions--followed-by-faq { padding-bottom: 50px; }
	.gifting-for .gifting-for__section-divider + .gifting-for__faq { padding-top: 50px; }
	.gifting-for__intro-grid { gap: 35px; grid-template-columns: 1fr 1fr; }
	.gifting-for__comparison { grid-template-columns: 1fr; padding: 22px; }
	.gifting-for__features .gifting-for__heading,
	.gifting-for__experience .gifting-for__heading { gap: 40px; }
	.gifting-for__occasion-track { gap: 18px; }
	.gifting-for__occasion { flex-basis: calc((100% - 54px) / 4); }
	.gifting-for__faq-grid { gap: 40px; }
	.gifting-for__carousel { padding-bottom: 56px; }
	.gifting-for__arrow { top: auto; bottom: 0; transform: none; }
	.gifting-for__arrow--previous { left: calc(50% - 54px); }
	.gifting-for__arrow--next { right: calc(50% - 54px); }
}
@media (max-width: 900px) {
	.gifting-for__faq-toggle { line-height: 1; text-align: center; }
	.gifting-for .hero--gifting-for { min-height: 680px; }
	.gifting-for .section { padding-block: 70px; }
	.gifting-for .gifting-for__occasions--followed-by-faq { padding-bottom: 48px; }
	.gifting-for .gifting-for__section-divider + .gifting-for__faq { padding-top: 48px; }
	.gifting-for__intro-grid { grid-template-columns: 1fr; gap: 45px; }
	.gifting-for__intro .gifting-for__heading h2 { max-width: none; }
	.gifting-for__comparison { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gifting-for__collage { max-width: 680px; width: 100%; margin-inline: auto; }
	.gifting-for__steps,
	.gifting-for__cards,
	.gifting-for__cards--experience { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 24px; }
	.gifting-for__video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gifting-for__features .gifting-for__heading,
	.gifting-for__experience .gifting-for__heading { grid-template-columns: 1fr; gap: 0; }
	.gifting-for__occasion { flex-basis: calc((100% - 36px) / 3); }
	.gifting-for__faq-grid { gap: 30px; }
	.gifting-for__faq-grid { grid-template-columns: 1fr; }
	.gifting-for__faq-image { max-height: 500px; }
	.gifting-for__faq-item .gifting-for__copy { padding-inline: 0; }
	.gifting-for__faq-item summary { gap: 12px; }
	.gifting-for__faq-number { display: none; }
}
@media (max-width: 600px) {
	.gifting-for__features .gifting-for__card-title--icon { gap: 10px; }
	.gifting-for__features .gifting-for__card-heading-icon { flex-basis: 36px; width: 36px; height: 36px; }
	.gifting-for .hero--gifting-for { min-height: 650px; }
	.gifting-for .hero--gifting-for h1 { font-size: clamp(43px, 11vw, 64px); }
	.gifting-for .hero--gifting-for .hero__content > p:not(.eyebrow) { font-size: 16px; }
	.gifting-for .hero--gifting-for .button { font-size: 15px; }
	.gifting-for .section { padding-block: 56px; }
	.gifting-for__section-divider { width: calc(100% - 34px); }
	.gifting-for .gifting-for__occasions--followed-by-faq { padding-bottom: 40px; }
	.gifting-for .gifting-for__section-divider + .gifting-for__faq { padding-top: 40px; }
	.gifting-for__heading .eyebrow { font-size: 10px; letter-spacing: .17em; }
	.gifting-for__heading h2 { font-size: clamp(38px, 10vw, 54px); }
	.gifting-for__comparison,
	.gifting-for__steps,
	.gifting-for__cards,
	.gifting-for__cards--experience,
	.gifting-for__video-grid,
	.gifting-for__faq-grid { grid-template-columns: 1fr; }
	.gifting-for__step h3,
	.gifting-for__card h3 { font-size: 34px; }
	.gifting-for__process .gifting-for__heading,
	.gifting-for__occasions .gifting-for__heading,
	.gifting-for__faq .gifting-for__heading { margin-bottom: 36px; }
	.gifting-for__occasion-track { gap: 16px; }
	.gifting-for__occasion { flex-basis: 76%; }
	.gifting-for__faq-image { max-height: 500px; }
}
@media (prefers-reduced-motion: reduce) {
	.gifting-for__occasion-track { scroll-behavior: auto; }
}
