@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/megan-font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/megan-font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/megan-font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/megan-font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/megan-font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/megan-font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/megan-font-6.ttf) format('truetype');
}

:root{--ink:#262626;--muted:#69655e;--line:#ded7cc;--paper:#F6F2EA;--oxblood:#6B2936;--olive:#737A55}body{background:var(--paper);color:var(--ink);font-family:'Inter',Arial,sans-serif}h1,h2,.project-label h3,.letter-card h3{font-family:'Fraunces',Georgia,serif}.case-hero h1,.concept-hero h1{font-family:'Fraunces',Georgia,serif}h1{letter-spacing:-.045em}.wordmark{color:var(--oxblood)}header>.mark{color:var(--olive)}.eyebrow,.mock-label,.number{color:#626942}.back-link,.client-link,.contact a,.reference-links a,.reel-original{color:var(--oxblood)}a:hover{color:var(--oxblood)}a:focus-visible,button:focus-visible{outline-color:var(--oxblood)}.project-card:hover{border-color:var(--oxblood)}.project-arrow,.letter-card .project-arrow{color:var(--oxblood)}.project-label h3{font-weight:500}.letter-card.recommendation-banner{display:flex;align-items:center;gap:20px;padding:0;border:1px solid var(--line);overflow:hidden;background:#F6F2EA}.recommendation-banner img{display:block;width:100%;height:auto}.recommendation-banner:hover{border-color:var(--oxblood)}

.letter-card.megan-recommendation{display:block;padding:0;overflow:hidden;text-decoration:none;border:1px solid var(--line);background:var(--paper)}.recommendation-art{background:var(--oxblood);color:var(--paper);min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:30px;text-align:center}.recommendation-kicker{font-family:'Inter',Arial,sans-serif;font-size:10px;letter-spacing:2px}.recommendation-title{font-family:'Fraunces',Georgia,serif;font-size:clamp(25px,4vw,38px);line-height:1.12;font-weight:500}.recommendation-symbol{font-size:23px}.recommendation-label{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;font-size:14px;color:var(--oxblood)}.megan-recommendation:hover{border-color:var(--oxblood)}

.letter-card.slim-recommendation{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;min-height:0;border:1px solid var(--line);border-left:3px solid var(--oxblood);background:var(--paper);color:var(--oxblood);text-decoration:none;font-family:Inter,Arial,sans-serif;font-size:15px}.slim-recommendation:hover{border-color:var(--oxblood)}

/* Shared portfolio layout: client artwork stays inside the media. */
.portfolio-page{background:#F6F2EA;color:#262626}.portfolio-page main,.portfolio-page header,.portfolio-page footer{max-width:1120px;padding-left:40px;padding-right:40px}.portfolio-page header{height:88px}.portfolio-page .wordmark{font-size:12px;letter-spacing:1px}.portfolio-page header>.mark{font-size:22px}.portfolio-page .back-link{margin:24px 0 0;font-size:13px}.portfolio-page .case-hero,.portfolio-page .concept-hero,.portfolio-page .project-page{padding:56px 0 60px}.portfolio-page .case-hero h1,.portfolio-page .concept-hero h1,.portfolio-page .project-page h1{font-family:'Fraunces',Georgia,serif;font-size:clamp(38px,5.5vw,64px);line-height:1.08;letter-spacing:-.035em;font-weight:400;max-width:850px;margin:0 0 26px}.portfolio-page .case-hero>p:not(.eyebrow),.portfolio-page .concept-lede,.portfolio-page .project-intro p,.portfolio-page .intro{font-family:'Inter',Arial,sans-serif;font-size:18px;line-height:1.7;letter-spacing:0;max-width:700px}.portfolio-page .eyebrow{font-family:'Inter',Arial,sans-serif;font-size:10px;letter-spacing:1.5px;margin:0 0 20px;color:#69655e}.portfolio-page .case-section,.portfolio-page .brief-block,.portfolio-page .portfolio-section{padding:36px 0 48px;border-top:1px solid #ded7cc}.portfolio-page .case-section>h2,.portfolio-page .brief-block>h2,.portfolio-page .section-heading h2,.portfolio-page .brand-story-row h2,.portfolio-page .project-intro h2{font-family:'Fraunces',Georgia,serif;font-size:27px;line-height:1.2;letter-spacing:-.02em;font-weight:400;margin:0 0 20px}.portfolio-page .case-section>p,.portfolio-page .brief-block p,.portfolio-page .brand-story-row p,.portfolio-page .band-reference p,.portfolio-page .section-intro{font-family:'Inter',Arial,sans-serif;font-size:15px;line-height:1.8;color:#59564f;max-width:760px}.portfolio-page .reference-reels,.portfolio-page .aberdeen-posts{gap:20px;align-items:start;margin:28px 0}.portfolio-page .reference-reels iframe,.portfolio-page .aberdeen-posts iframe{height:560px;border:1px solid #ded7cc}.portfolio-page .concept-pair{gap:32px;align-items:start}.portfolio-page .brand-story-row{gap:44px;align-items:center}.portfolio-page .credit,.portfolio-page .stock-credit{font-size:11px;line-height:1.7;color:#777167}.portfolio-page footer{padding-top:22px;padding-bottom:26px;border-top:1px solid #ded7cc}.home-page .hero{padding-top:68px;padding-bottom:70px}.home-page .hero h1{font-family:'Fraunces',Georgia,serif;font-size:clamp(52px,7.5vw,86px);line-height:1.02;letter-spacing:-.045em;font-weight:400}.home-page .about,.home-page .work{padding:32px 0 48px}.home-page .about-grid{gap:48px;margin-top:24px}.home-page .project-grid{gap:22px;margin-top:24px}.home-page .project-card{border:0;border-bottom:1px solid #ded7cc;transform:none}.home-page .project-card:hover{transform:none}.home-page .project-image{aspect-ratio:4/3;background:#eee8dd!important;padding:30px;min-height:0}.home-page .venue-logos{background:#eee8dd!important;gap:18px}.home-page .venue-logos img{filter:brightness(0);opacity:.8;object-fit:contain;max-width:100%;max-height:64px}.home-page .venue-divider{background:#c8c1b5}.home-page .sunplus-card-art img{filter:grayscale(1);opacity:.85;max-height:110px;object-fit:contain}.home-page .concept-cover-home{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;text-align:center;color:#262626}.cover-symbol{font-size:27px;color:#6B2936}.cover-title{font-family:'Fraunces',Georgia,serif;font-size:34px;line-height:1.05}.cover-subtitle{font-size:9px;letter-spacing:1.5px;color:#69655e}.home-page .project-label{padding:18px 0;min-height:85px}.home-page .project-label h3{font-family:'Inter',Arial,sans-serif;font-size:15px;line-height:1.5;font-weight:500;letter-spacing:0}.home-page .project-arrow{font-size:18px}.home-page .slim-recommendation{margin-top:24px}.portfolio-page .example-grid>.example>a{text-decoration:none;display:block}.portfolio-page .example-grid .concept-cover{aspect-ratio:1!important;box-sizing:border-box}.portfolio-page .example-grid .example h3{font-family:'Inter',Arial,sans-serif;font-size:17px;font-weight:500;line-height:1.4;margin-top:18px}.portfolio-page .example-grid .example>p{font-size:13px;color:#69655e}.portfolio-page .contact{padding:36px 0 48px}.portfolio-page .concept-hero>img{height:340px;max-width:100%;object-fit:cover}.portfolio-page .content-demo{padding:36px 0;gap:32px}.portfolio-page .mock-label{font-size:10px;color:#69655e;letter-spacing:1.2px}.portfolio-page .concept-copy h2{font-size:24px}.portfolio-page .concept-copy p{font-size:14px;line-height:1.8}
@media(max-width:760px){.portfolio-page main,.portfolio-page header,.portfolio-page footer{padding-left:24px;padding-right:24px}.portfolio-page header{height:74px}.portfolio-page .case-hero,.portfolio-page .concept-hero,.portfolio-page .project-page{padding:38px 0 42px}.portfolio-page .case-section,.portfolio-page .brief-block,.portfolio-page .portfolio-section{padding:28px 0 36px}.portfolio-page .case-hero>p:not(.eyebrow),.portfolio-page .concept-lede{font-size:16px}.home-page .hero{padding:45px 0 48px}.home-page .project-image{aspect-ratio:4/3!important}.home-page .project-label{min-height:0}.portfolio-page .reference-reels,.portfolio-page .aberdeen-posts{grid-template-columns:1fr}.portfolio-page .reference-reels article,.portfolio-page .aberdeen-posts article{width:100%;max-width:420px;margin:auto}.portfolio-page .concept-pair,.portfolio-page .brand-story-row{grid-template-columns:1fr}.portfolio-page .brand-story-logo{position:static}}

.portfolio-page .letter-card.slim-recommendation{background:var(--oxblood);color:#fff;border-color:var(--oxblood)}
.portfolio-page .letter-card.slim-recommendation:hover{background:#55202b;color:#fff;border-color:#55202b}

/* A consistent finish for clickable elements. */
.portfolio-page a,.portfolio-page button{transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s}
.portfolio-page a:focus-visible,.portfolio-page button:focus-visible{outline:3px solid var(--olive);outline-offset:5px}
.portfolio-page .back-link{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--line);border-radius:999px;text-decoration:none;background:#fbf8f2;line-height:1.4}
.portfolio-page .back-link:hover{background:#ece7dd;border-color:#bdb4a4;transform:translateX(-2px)}
.portfolio-page .contact a{display:inline-flex!important;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border:1px solid var(--oxblood);border-radius:999px;text-decoration:none;font-size:14px;line-height:1.4;background:var(--oxblood);color:white;margin:8px 12px 0 0!important}
.portfolio-page .contact a+ a{background:transparent;color:var(--oxblood)}
.portfolio-page .contact a:hover{background:#55202b;color:white;box-shadow:0 4px 12px #6b29361a;transform:translateY(-2px)}
.portfolio-page .letter-card.slim-recommendation{border-radius:12px;box-shadow:0 3px 10px #6b293610}
.portfolio-page .letter-card.slim-recommendation:hover{transform:translateY(-2px);box-shadow:0 6px 16px #6b293620}
.portfolio-page .slim-recommendation>span:last-child,.home-page .project-arrow{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:#ffffff18}
.home-page .project-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fbf8f2;box-shadow:0 2px 8px #26262604}
.home-page .project-label{padding:18px 20px}
.home-page .project-arrow{background:#eee8dd;color:var(--oxblood)}
.home-page .project-card:hover{transform:translateY(-4px);border-color:#b6a494;box-shadow:0 10px 24px #2626260b}
.home-page .project-card:hover .project-arrow{background:var(--oxblood);color:white}
.portfolio-page .work-banner,.portfolio-page .calendar-banner{border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #26262605;text-decoration:none}
.portfolio-page .work-banner:hover,.portfolio-page .calendar-banner:hover{transform:translateY(-3px);box-shadow:0 8px 22px #2626260d;border-color:#b6a494}
.portfolio-page .email-cover-link,.portfolio-page .concept-cover{border-radius:12px;overflow:hidden}
.portfolio-page .email-cover-link:hover{transform:translateY(-3px);box-shadow:0 8px 22px #26262612}
.portfolio-page .example>p>a,.portfolio-page .reference-links a,.portfolio-page .reel-original{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#fbf8f2;color:var(--oxblood);text-decoration:none;font-size:12px}
.portfolio-page .example>p>a:hover,.portfolio-page .reference-links a:hover,.portfolio-page .reel-original:hover{background:#ece7dd;border-color:#bdb4a4}
.portfolio-page .bloom-nav button,.portfolio-page .carousel-navigation>button,.portfolio-page .carousel-navigation .carousel-prev,.portfolio-page .carousel-navigation .carousel-next{min-height:42px;padding:10px 16px;border:1px solid var(--line);border-radius:999px;background:#fbf8f2;color:var(--oxblood);font-family:Inter,Arial,sans-serif;font-size:12px;font-weight:500;cursor:pointer}
.portfolio-page .bloom-nav button:hover,.portfolio-page .carousel-navigation>button:hover{background:var(--oxblood);color:white;border-color:var(--oxblood)}
.portfolio-page .bloom-nav,.portfolio-page .carousel-navigation{padding:16px 12px;align-items:center;gap:10px}
.portfolio-page .bloom-status{font-family:Inter,Arial,sans-serif;font-size:11px;color:var(--muted)}
@media(max-width:480px){.portfolio-page .contact a{font-size:12px;padding:12px 16px;max-width:100%;overflow-wrap:anywhere}.home-page .project-label{padding:16px}.portfolio-page .bloom-nav button{padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.portfolio-page a,.portfolio-page button{transition:none}.portfolio-page a:hover{transform:none}}

.megan-icon{display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:-.12em;overflow:visible}.portfolio-page .mark .megan-icon{width:22px;height:22px}.cover-symbol .megan-icon{width:28px;height:28px}.portfolio-page a>.megan-icon{margin-left:.35em}.portfolio-page .back-link>.megan-icon{margin-left:0;margin-right:.25em}
