- Run record
- loading
Loading this Run…
Loading the Revisions of this Run…
A published source file of Revision 0 of Fjora — Taste the North 1.2.0, shown as text in the browser.
Source is browser-viewable only. There is no download or archive endpoint, and no additional license is granted beyond inspection and research.
@charset "UTF-8";
:root {
font-family: Arial, Helvetica, sans-serif;
color: #243b33;
background: #f6f6ef;
font-synthesis: none;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
--paper: #f6f6ef;
--pine: #243b33;
--muted: #637068;
--line: #d5dacf;
--serif: Georgia, "Times New Roman", serif;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 105px; }
body { margin: 0; min-width: 320px; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; color: inherit; }
a { color: inherit; text-decoration: none; }
button, summary { cursor: pointer; }
button { border-radius: 0; }
img { display: block; max-width: 100%; }
svg { display: block; }
h1, h2, h3, p, figure { margin: 0; }
h1, h2, h3 { font-weight: 400; }
::selection { color: var(--paper); background: #466151; }
:focus-visible { outline: 2px solid #75855e; outline-offset: 6px; }
.skip-link { position: fixed; top: -80px; left: 16px; padding: 15px 20px; background: var(--pine); color: white; z-index: 100; }
.skip-link:focus { top: 12px; }
.content-width { width: calc(100% - 144px); max-width: 1296px; margin-inline: auto; }
.eyebrow { font-size: 10px; font-weight: 500; line-height: 1.6; letter-spacing: 1.9px; text-transform: uppercase; }
.arrow { width: 24px; height: 24px; flex-shrink: 0; }
.arrow--down { transform: rotate(90deg); }
.arrow--up { transform: rotate(-90deg); }
.wordmark { width: 143px; height: auto; }
.site-header { position: sticky; top: 0; z-index: 30; min-height: 88px; padding: 0 48px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; background: var(--paper); }
.brand-link { display: block; width: fit-content; padding: 4px 0; }
.main-navigation { display: flex; align-items: center; gap: 37px; }
.main-navigation a { position: relative; padding: 14px 0; font-size: 12px; }
.main-navigation a::after { content: ""; position: absolute; bottom: 7px; left: 0; width: 0; height: 1px; background: currentColor; transition: width 180ms ease; }
.main-navigation a:hover::after { width: 100%; }
.header-note { justify-self: end; display: flex; align-items: center; gap: 9px; font-size: 11px; color: #5c695e; }
.status-dot { width: 5px; height: 5px; border-radius: 50%; background: #6f825b; }
.menu-toggle { display: none; }
.hero { position: relative; min-height: 650px; height: min(49vw, 750px); margin: 0 24px; overflow: hidden; color: var(--paper); background: #4c615f; }
.hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 52%; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10, 32, 32, .48), rgba(16, 34, 32, .13) 55%, rgba(16, 34, 32, .03)), linear-gradient(0deg, rgba(13, 33, 32, .44), transparent 30%); }
.hero-content { position: relative; z-index: 1; padding: 66px 64px 95px; }
.hero-eyebrow { display: flex; align-items: center; gap: 12px; font-size: 10px; letter-spacing: 2px; }
.hero-eyebrow svg { width: 20px; height: 20px; }
.hero h1 { font-family: var(--serif); font-size: clamp(92px, 8.4vw, 135px); letter-spacing: -5px; line-height: .99; margin: 32px 0 27px; }
.hero h1 em { font-weight: 400; }
.hero-description { font-size: 14px; line-height: 1.8; letter-spacing: .1px; color: #f2f3e9; }
.primary-link { display: inline-flex; gap: 40px; align-items: center; justify-content: space-between; padding: 17px 22px; margin-top: 31px; font-size: 12px; font-weight: 500; background: var(--paper); color: var(--pine); transition: background 200ms, gap 200ms; }
.primary-link:hover { background: #e2e8d8; gap: 48px; }
.primary-link .arrow { width: 18px; height: 18px; }
.hero-bottom { position: absolute; bottom: 32px; left: 64px; display: flex; align-items: center; gap: 18px; font-size: 8px; letter-spacing: 1.65px; }
.hero-bottom-rule { width: 46px; height: 1px; background: #f6f6ef66; }
.northern-seal { position: absolute; bottom: 39px; right: 49px; width: 128px; height: 128px; color: #f1f2e8; transform: rotate(12deg); }
.northern-seal > svg { width: 100%; height: 100%; }
.seal-landscape { position: absolute; width: 66px; top: 41px; left: 31px; transform: rotate(-12deg); }
.qualities { min-height: 89px; display: flex; align-items: center; justify-content: center; gap: 68px; border-bottom: 1px solid var(--line); }
.qualities span { text-transform: uppercase; font-size: 10px; letter-spacing: 1.9px; }
.qualities svg { width: 13px; height: 13px; color: #7a886e; }
.section-space { padding-block: 95px 99px; }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 39px; }
.section-heading .eyebrow { margin-bottom: 20px; }
h2 { font-family: var(--serif); font-size: clamp(40px, 4vw, 61px); line-height: 1.12; letter-spacing: -2px; }
h2 em { font-weight: 400; }
.section-intro { color: var(--muted); font-size: 13px; line-height: 1.75; padding-bottom: 4px; }
.flavor-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 24px; }
.flavor-option { display: flex; align-items: center; position: relative; gap: 20px; padding: 12px 22px 12px 12px; border: 1px solid var(--line); background: transparent; text-align: left; transition: background 180ms, border-color 180ms; }
.flavor-option:hover { background: #edf0e5; border-color: #909e82; }
.flavor-option.is-selected { background: #e7ecdf; border-color: #7b8a68; }
.flavor-option > img { width: 70px; height: 88px; flex-shrink: 0; object-fit: cover; mix-blend-mode: multiply; }
.option-copy { display: flex; flex-direction: column; gap: 5px; }
.option-number { font-size: 8px; letter-spacing: 1.5px; color: var(--muted); }
.option-name { font-family: var(--serif); font-size: 24px; letter-spacing: -.5px; }
.option-note { font-size: 10px; color: var(--muted); line-height: 1.5; }
.selection-dot { margin-left: auto; width: 18px; height: 18px; border: 1px solid #adb6a1; border-radius: 50%; flex-shrink: 0; align-self: center; }
.is-selected .selection-dot { background: var(--pine); border-color: var(--pine); color: var(--paper); }
.selection-dot svg { width: 16px; height: 16px; }
.flavor-detail { display: grid; grid-template-columns: 1fr 1fr; min-height: 604px; background: #edf0e4; }
.tone-berry { background: #f0e9db; }
.tone-spruce { background: #e4ece3; }
.detail-photo { position: relative; overflow: hidden; background: #eeeee8; }
.product-image { position: absolute; height: 100%; width: 100%; object-fit: contain; object-position: center; mix-blend-mode: multiply; animation: fade-in 500ms ease; }
.photo-index { position: absolute; bottom: 25px; left: 29px; right: 29px; display: flex; justify-content: space-between; font-size: 8px; letter-spacing: 1.6px; color: #495944; }
.detail-copy { position: relative; padding: 60px 64px 42px; animation: fade-in 400ms ease; }
.botanical-sprig { position: absolute; right: 29px; top: 26px; width: 67px; height: 98px; color: #84936c; opacity: .5; transform: rotate(14deg); }
.detail-eyebrow { position: relative; font-size: 9px; margin: 0 0 26px; }
.detail-copy h3 { position: relative; font-family: var(--serif); font-size: clamp(40px, 3.9vw, 60px); letter-spacing: -1.9px; line-height: 1.1; }
.flavor-character { font-family: var(--serif); font-size: 20px; font-style: italic; margin: 12px 0 34px; color: #617050; }
.tone-berry .flavor-character { color: #81643b; }
.tone-spruce .flavor-character { color: #486950; }
.botanicals .eyebrow, .tasting-note .eyebrow { font-size: 9px; letter-spacing: 1.6px; }
.botanicals { border-top: 1px solid #687d4e33; padding-top: 24px; }
.botanicals ul { display: flex; flex-wrap: wrap; padding: 0; margin: 11px 0 25px; list-style: none; gap: 7px 0; }
.botanicals li { font-size: 12px; line-height: 1.7; }
.botanicals li + li::before { content: "·"; margin: 0 11px; color: #758063; }
.tasting-note > p:last-child { font-size: 14px; color: #5b6859; line-height: 1.85; margin-top: 10px; max-width: 350px; }
.detail-bottom { display: flex; align-items: center; gap: 13px; padding-top: 33px; font-size: 10px; line-height: 1.7; }
.detail-bottom svg { height: 29px; width: 29px; color: #6f7d5b; }
.detail-bottom span span { color: #64705e; }
.collection-footnote { display: flex; justify-content: space-between; gap: 12px; padding-top: 21px; color: var(--muted); font-size: 10px; line-height: 1.6; }
.story { display: grid; grid-template-columns: 1fr 1fr; margin: 0 24px; background: #243e35; color: var(--paper); }
.story-copy { align-self: center; padding: 80px 11.5%; }
.story-copy > .eyebrow { font-size: 9px; color: #d0d8c3; margin-bottom: 34px; }
.story h2 { font-size: clamp(40px, 4.2vw, 64px); line-height: 1.1; letter-spacing: -2.5px; }
.story h2 em { color: #c7d1b6; }
.story-prose { max-width: 359px; margin-top: 31px; color: #d2dace; font-size: 13px; line-height: 1.95; }
.story-prose p + p { margin-top: 17px; }
.story-signature { display: flex; align-items: center; gap: 20px; margin-top: 37px; }
.story-signature svg { width: 60px; height: 47px; color: #c6d0b5; }
.story-signature p { font-size: 11px; line-height: 1.8; }
.story-signature span { color: #bdcbb9; }
.story-figure { position: relative; min-height: 645px; }
.story-figure img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 53%; }
.story-figure::after { content: ""; position: absolute; inset: 60% 0 0; background: linear-gradient(transparent, #0c201947); }
.story-figure figcaption { position: absolute; z-index: 1; bottom: 28px; right: 30px; font-family: var(--serif); font-size: 17px; font-style: italic; }
.questions { display: grid; grid-template-columns: 1fr 1.2fr; gap: 60px; padding-block: 112px 118px; }
.questions-heading .eyebrow { margin-bottom: 22px; }
.questions-heading h2 { font-size: 58px; }
.questions-heading > p:not(.eyebrow) { margin-top: 23px; font-size: 13px; color: var(--muted); }
.questions-star { width: 36px; height: 36px; margin-top: 37px; color: #7b886d; }
.question-list { border-top: 1px solid var(--line); }
.question { border-bottom: 1px solid var(--line); }
.question summary { display: flex; align-items: center; min-height: 77px; gap: 23px; padding: 22px 3px; list-style: none; font-size: 15px; line-height: 1.6; }
.question summary::-webkit-details-marker { display: none; }
.question summary:hover { color: #6c7d56; }
.question-number { font-size: 9px; letter-spacing: .8px; color: #7b8675; }
.expand-icon { display: block; position: relative; width: 24px; height: 24px; margin-left: auto; flex-shrink: 0; }
.expand-icon::before, .expand-icon::after { content: ""; position: absolute; background: currentColor; top: 11px; left: 6px; width: 12px; height: 1px; }
.expand-icon::after { transform: rotate(90deg); transition: transform 180ms; }
.question[open] .expand-icon::after { transform: rotate(0deg); }
.question > p { padding: 0 45px 25px 39px; color: var(--muted); font-size: 13px; line-height: 1.9; max-width: 550px; }
.site-footer { background: #e6eadd; padding: 42px 72px 25px; }
.footer-top { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.footer-top > p { font-family: var(--serif); font-size: 29px; letter-spacing: -.6px; }
.footer-top a { display: flex; align-items: center; gap: 19px; font-size: 11px; }
.footer-top a:hover .arrow { transform: rotate(-90deg) translateX(4px); }
.footer-top .arrow { width: 18px; height: 18px; transition: transform 180ms; }
.footer-brand { display: flex; align-items: center; justify-content: space-between; gap: 80px; margin: 42px 0 44px; }
.footer-brand > .wordmark { width: min(67%, 870px); }
.footer-brand-note { text-align: center; padding-inline: 37px; }
.footer-brand-note svg { width: 59px; height: 59px; margin: 0 auto 24px; }
.footer-brand-note p { font-size: 9px; letter-spacing: 2px; line-height: 1.8; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid #bbc5ae; padding-top: 24px; color: #5c6958; font-size: 10px; line-height: 1.8; }
@keyframes fade-in { from { opacity: .35; } to { opacity: 1; } }
@media (min-width: 1600px) {
.hero-content { padding-top: 78px; }
.hero h1 { margin-top: 40px; }
.story { max-width: 1600px; margin-inline: auto; }
}
@media (max-width: 1100px) {
.site-header { padding-inline: 32px; }
.content-width { width: calc(100% - 80px); }
.hero { min-height: 625px; }
.hero-content { padding-left: 44px; }
.hero-bottom { left: 44px; }
.qualities { gap: 35px; }
.section-heading { align-items: flex-start; }
.section-heading h2 { max-width: 520px; }
.section-intro { padding-top: 34px; min-width: 185px; }
.flavor-option { gap: 10px; padding-right: 15px; }
.flavor-option > img { width: 54px; height: 78px; }
.option-name { font-size: 20px; }
.option-note { font-size: 9px; }
.detail-copy { padding: 48px 38px 38px; }
.flavor-detail { min-height: 590px; }
.story-copy { padding: 62px 10%; }
.story h2 { font-size: 45px; }
.story-figure { min-height: 645px; }
.questions { grid-template-columns: .85fr 1.2fr; gap: 35px; }
.questions-heading h2 { font-size: 47px; }
.site-footer { padding-inline: 40px; }
}
@media (max-width: 760px) {
html { scroll-padding-top: 93px; }
.site-header { min-height: 76px; padding-inline: 24px; grid-template-columns: 1fr auto; }
.site-header .wordmark { width: 119px; }
.header-note { display: none; }
.menu-toggle { display: flex; align-items: center; gap: 12px; font-size: 11px; padding: 15px 0 15px 15px; border: 0; background: none; }
.menu-lines { position: relative; display: block; width: 20px; height: 16px; }
.menu-lines span { position: absolute; left: 0; top: 4px; width: 20px; height: 1px; background: currentColor; transition: transform 180ms, top 180ms; }
.menu-lines span + span { top: 11px; }
.is-open .menu-lines span { top: 8px; transform: rotate(45deg); }
.is-open .menu-lines span + span { transform: rotate(-45deg); }
.main-navigation { display: none; position: absolute; top: 76px; left: 0; right: 0; padding: 10px 24px 22px; background: var(--paper); border-bottom: 1px solid var(--line); box-shadow: 0 10px 18px #1c392a0c; }
.main-navigation.is-open { display: flex; flex-direction: column; gap: 0; align-items: stretch; }
.main-navigation a { padding: 18px 0; font-family: var(--serif); font-size: 22px; border-top: 1px solid var(--line); }
.main-navigation a::after { display: none; }
.content-width { width: calc(100% - 48px); }
.hero { margin-inline: 12px; height: 644px; min-height: 0; }
.hero-image { object-position: 55% center; }
.hero-shade { background: linear-gradient(90deg, #0e242747, #0d262519), linear-gradient(0deg, #09262a87, transparent 80%); }
.hero-content { padding: 54px 25px 100px; }
.hero-eyebrow { font-size: 8px; letter-spacing: 1.45px; gap: 9px; }
.hero-eyebrow svg { width: 16px; height: 16px; flex-shrink: 0; }
.hero h1 { font-size: 83px; line-height: 1.01; letter-spacing: -4px; margin: 43px 0 27px; }
.hero-description { font-size: 13px; line-height: 1.85; }
.primary-link { margin-top: 29px; padding: 16px 20px; gap: 36px; font-size: 11px; }
.hero-bottom { bottom: 29px; left: 25px; flex-direction: column; align-items: flex-start; gap: 9px; font-size: 7px; letter-spacing: 1.25px; }
.hero-bottom-rule { display: none; }
.hero-bottom > span:last-child { font-size: 6px; opacity: .7; }
.northern-seal { width: 90px; height: 90px; right: 24px; bottom: 25px; }
.seal-landscape { width: 46px; top: 29px; left: 22px; }
.qualities { min-height: 91px; gap: 15px; justify-content: space-between; }
.qualities span { font-size: 7px; line-height: 1.6; letter-spacing: 1px; text-align: center; }
.qualities span:last-child { max-width: 88px; }
.qualities svg { height: 10px; width: 10px; flex-shrink: 0; }
.section-space { padding-block: 62px 66px; }
.section-heading { display: block; margin-bottom: 28px; }
.section-heading .eyebrow { margin-bottom: 20px; }
.eyebrow { font-size: 8px; letter-spacing: 1.7px; }
h2 { font-size: 41px; line-height: 1.12; letter-spacing: -1.6px; }
.section-heading h2 { max-width: 340px; }
.section-intro { margin-top: 18px; padding: 0; font-size: 13px; line-height: 1.8; }
.flavor-options { gap: 8px; margin-bottom: 16px; }
.flavor-option { display: flex; flex-direction: column; align-items: center; gap: 7px; padding: 12px 4px 14px; text-align: center; min-width: 0; }
.flavor-option > img { width: 64px; height: 80px; }
.option-copy { gap: 7px; width: 100%; }
.option-number { font-size: 7px; }
.option-name { font-size: 14px; letter-spacing: -.4px; white-space: nowrap; }
.option-note { display: none; }
.selection-dot { width: 13px; height: 13px; position: absolute; top: 8px; right: 7px; }
.selection-dot svg { width: 11px; height: 11px; }
.flavor-detail { grid-template-columns: 1fr; min-height: 0; }
.detail-photo { height: 403px; }
.photo-index { bottom: 18px; left: 19px; right: 19px; font-size: 6px; letter-spacing: 1.25px; }
.detail-copy { padding: 36px 25px 31px; }
.botanical-sprig { width: 54px; height: 77px; right: 22px; top: 20px; }
.detail-eyebrow { margin-bottom: 22px; font-size: 8px; letter-spacing: 1.4px; }
.detail-copy h3 { font-size: 43px; letter-spacing: -1.7px; }
.flavor-character { font-size: 18px; margin: 11px 0 26px; }
.botanicals { padding-top: 21px; }
.botanicals li { font-size: 11px; }
.botanicals li + li::before { margin-inline: 9px; }
.botanicals ul { margin-bottom: 23px; }
.tasting-note > p:last-child { font-size: 14px; line-height: 1.85; }
.detail-bottom { padding-top: 28px; }
.collection-footnote { flex-direction: column; font-size: 9px; gap: 5px; padding-top: 17px; }
.story { grid-template-columns: 1fr; margin-inline: 12px; }
.story-copy { padding: 51px 28px 45px; }
.story-copy > .eyebrow { margin-bottom: 27px; font-size: 8px; }
.story h2 { font-size: 42px; letter-spacing: -1.7px; }
.story-prose { font-size: 14px; line-height: 1.85; margin-top: 27px; }
.story-signature { margin-top: 29px; gap: 16px; }
.story-signature svg { width: 51px; height: 42px; }
.story-signature p { font-size: 10px; }
.story-figure { min-height: 436px; }
.story-figure figcaption { font-size: 16px; bottom: 23px; right: 23px; }
.questions { grid-template-columns: 1fr; gap: 32px; padding-block: 66px 69px; }
.questions-heading { position: relative; }
.questions-heading .eyebrow { margin-bottom: 20px; }
.questions-heading h2 { font-size: 43px; }
.questions-heading > p:not(.eyebrow) { font-size: 12px; margin-top: 16px; }
.questions-star { display: none; }
.question summary { gap: 14px; min-height: 75px; padding-block: 20px; font-size: 14px; }
.question-number { font-size: 8px; }
.expand-icon { width: 20px; }
.expand-icon::before, .expand-icon::after { left: 4px; }
.question > p { padding: 0 27px 23px 28px; font-size: 13px; }
.site-footer { padding: 31px 24px 23px; }
.footer-top { align-items: center; gap: 16px; }
.footer-top > p { font-size: 22px; max-width: 170px; line-height: 1.2; }
.footer-top a { font-size: 9px; gap: 10px; }
.footer-top .arrow { width: 14px; height: 14px; }
.footer-brand { margin: 34px 0 31px; gap: 24px; }
.footer-brand > .wordmark { width: 100%; }
.footer-brand-note { display: none; }
.footer-bottom { flex-direction: column; gap: 10px; padding-top: 21px; font-size: 10px; line-height: 1.8; }
}
@media (max-width: 360px) {
.hero h1 { font-size: 72px; }
.hero-content { padding-left: 22px; padding-right: 20px; }
.hero-eyebrow { letter-spacing: 1px; font-size: 7px; }
.content-width { width: calc(100% - 36px); }
.option-name { font-size: 12px; }
.story h2 { font-size: 36px; }
.detail-copy { padding-inline: 21px; }
.detail-copy h3 { font-size: 39px; }
.qualities { gap: 10px; }
.questions-heading h2 { font-size: 39px; }
}
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
*, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}