/* METASYS / PORTFOLIO LANDING — image-led editorial system */
:root{
 --ph-paper:#f3f2ee;--ph-white:#fff;--ph-ink:#111214;--ph-dark:#090a0c;
 --ph-muted:#686a6d;--ph-line:#d2d1cc;--ph-dark-line:#303236;--ph-blue:#2b63f1;
 --ph-gutter:clamp(18px,5vw,76px);--ph-section:clamp(72px,9vw,136px);
}
#app .portfolio-home{background:var(--ph-paper);color:var(--ph-ink);overflow:clip}
#app .portfolio-home .container{width:min(1480px,calc(100% - var(--ph-gutter) - var(--ph-gutter)));max-width:1480px;margin-inline:auto}
#app .portfolio-home :is(h1,h2,h3,p,figure){margin-top:0}
#app .portfolio-home :is(h1,h2,h3){font-family:Inter,Arial,sans-serif;letter-spacing:-.065em}
#app .portfolio-home a{color:inherit;text-decoration:none}
#app .ph-kicker,#app .ph-topline,#app .ph-hero-bottom,#app .ph-hero-note,#app .ph-card-kicker,#app .ph-project-index,#app .ph-empty-index{
 font:600 10px/1.5 Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase
}
#app .ph-hero{background:var(--ph-dark);color:#fff;padding:0}
#app .ph-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;border-bottom:1px solid var(--ph-dark-line);color:#aeb0b4}
#app .ph-topline b{color:#fff;font-weight:500;padding-inline:7px}
#app .ph-hero-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(28px,5vw,88px);align-items:center;padding-block:clamp(54px,7.5vw,112px) clamp(48px,6vw,82px)}
#app .ph-hero-copy{min-width:0}
#app .ph-hero-copy>.ph-kicker{display:flex;align-items:center;gap:11px;color:#aeb1b8}
#app .ph-hero-copy>.ph-kicker i{display:inline-block;width:19px;height:2px;background:var(--ph-blue);flex:0 0 auto}
#app .ph-hero h1{font-size:clamp(58px,7.4vw,112px);line-height:.94;max-width:9ch;font-weight:650;letter-spacing:-.085em;margin:27px 0 25px;color:#fff}
#app .ph-hero h1 em{font-style:normal;color:#9bb6ff}
#app .ph-hero-copy>p{max-width:39ch;color:#c4c5c8;font-size:clamp(15px,1.35vw,18px);line-height:1.7;margin-bottom:29px}
#app .ph-hero-actions{display:flex;flex-wrap:wrap;gap:10px}
#app .ph-button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:46px;padding:13px 16px;border:1px solid transparent;font-size:12px;font-weight:650;line-height:1.3}
#app .ph-button-light{background:#fff;color:#101114!important;border-color:#fff}
#app .ph-button-outline{background:transparent;color:#fff!important;border-color:#505258}
#app .ph-button-dark{background:var(--ph-ink);color:#fff!important;border-color:var(--ph-ink)}
#app .ph-button-plain{background:transparent;color:var(--ph-ink)!important;border-color:#b9b8b2}
#app .ph-hero-note{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;border-top:1px solid var(--ph-dark-line);margin-top:clamp(34px,5vw,70px);padding-top:14px;color:#85878d}
#app .ph-hero-feature{margin:0;min-width:0}
#app .ph-hero-feature>a{display:block;overflow:hidden;background:#1a1b1f;aspect-ratio:1.04}
#app .ph-hero-feature>a img{width:100%;height:100%;object-fit:cover;object-position:center}
#app .ph-hero-feature figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #3a3b3f;padding:13px 0 0;margin-top:14px;color:#a5a6ab;font:600 10px/1.5 Inter,Arial,sans-serif;letter-spacing:.075em}
#app .ph-hero-feature-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-top:13px}
#app .ph-hero-feature-title strong{font-size:clamp(18px,2vw,26px);line-height:1.2;font-weight:600;letter-spacing:-.035em}
#app .ph-hero-feature-title>span{font-size:12px;color:#a9abb1;text-align:right;white-space:nowrap}
#app .ph-hero-feature-title b{color:#fff;margin-left:6px}
#app .ph-hero-bottom{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 0 19px;border-top:1px solid var(--ph-dark-line);color:#96989e}
#app .ph-hero-bottom a{color:#fff}
#app .ph-section{padding-block:var(--ph-section)}
#app .ph-projects{background:var(--ph-paper);color:var(--ph-ink)}
#app .ph-section-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(210px,.75fr) auto;gap:clamp(20px,3.5vw,55px);align-items:end;margin-bottom:clamp(30px,4.5vw,62px)}
#app .ph-section-head>.ph-kicker,#app .ph-section-head .ph-kicker{color:#65666a}
#app .ph-section-head h2{font-size:clamp(43px,6vw,82px);line-height:.98;font-weight:620;max-width:10ch;margin:15px 0 0}
#app .ph-section-head h2 em{font-style:normal;color:var(--ph-blue)}
#app .ph-section-head>p{font-size:14px;line-height:1.75;color:#55575a;max-width:36ch;margin:0 0 4px}
#app .ph-text-link{display:inline-flex;align-items:center;gap:15px;justify-self:end;white-space:nowrap;padding-bottom:5px;border-bottom:1px solid currentColor;font-size:12px;font-weight:650}
#app .ph-text-link span{font-size:17px}
#app .ph-project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(15px,2vw,28px);row-gap:clamp(32px,5vw,68px)}
#app .ph-project-card{grid-column:span 4;min-width:0}
#app .ph-project-card:nth-child(4n+1){grid-column:span 7}
#app .ph-project-card:nth-child(4n+2){grid-column:span 5}
#app .ph-project-card:nth-child(4n+3){grid-column:span 5}
#app .ph-project-card:nth-child(4n+4){grid-column:span 7}
#app .ph-project-link{display:block;min-width:0}
#app .ph-project-media{position:relative;overflow:hidden;background:#e0dfd9;aspect-ratio:1.23}
#app .ph-project-card:nth-child(4n+2) .ph-project-media,#app .ph-project-card:nth-child(4n+3) .ph-project-media{aspect-ratio:1.08}
#app .ph-project-media img{width:100%;height:100%;object-fit:cover;object-position:center}
#app .ph-project-index{position:absolute;top:12px;left:12px;display:grid;place-items:center;min-width:32px;min-height:30px;padding:4px 7px;background:var(--ph-paper);color:var(--ph-ink)}
#app .ph-project-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-top:16px}
#app .ph-project-meta>div{min-width:0}
#app .ph-project-meta h3{font-size:clamp(22px,2.5vw,34px);line-height:1.08;letter-spacing:-.055em;font-weight:600;margin:8px 0 7px;overflow-wrap:anywhere}
#app .ph-card-kicker{display:block;color:#696b6f;font-size:9px}
#app .ph-project-meta p{color:#5e6064;font-size:12px;margin:0}
#app .ph-arrow{font-size:22px;line-height:1;color:var(--ph-blue);flex:0 0 auto;padding-top:4px}
#app .ph-empty{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:24px;align-items:center;border-top:1px solid var(--ph-line);border-bottom:1px solid var(--ph-line);padding:30px 0}
#app .ph-empty-index{color:#6b6d70}
#app .ph-empty h3{font-size:clamp(22px,3vw,34px);font-weight:600;letter-spacing:-.05em;margin:0 0 8px}
#app .ph-empty p{max-width:55ch;color:#606267;font-size:13px;line-height:1.7;margin:0}
#app .ph-designers{background:#101114;color:#fff}
#app .ph-designers .ph-section-head>.ph-kicker,#app .ph-designers .ph-section-head .ph-kicker{color:#a1a3aa}
#app .ph-designers .ph-section-head h2{color:#fff}
#app .ph-designers .ph-section-head h2 em{color:#9bb6ff}
#app .ph-designers .ph-section-head>p{color:#b7b8bd}
#app .ph-designers .ph-text-link{color:#fff}
#app .ph-designer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(15px,2vw,28px)}
#app .ph-designer-card{display:block;min-width:0;color:#fff}
#app .ph-designer-media{position:relative;overflow:hidden;aspect-ratio:4/4.7;background:#202125}
#app .ph-designer-media img{width:100%;height:100%;object-fit:cover;object-position:center}
#app .ph-designer-meta{display:grid;grid-template-columns:1fr auto;gap:11px 12px;padding-top:15px}
#app .ph-designer-meta>.ph-card-kicker{grid-column:1/-1;color:#92949a}
#app .ph-designer-meta>div{min-width:0}
#app .ph-designer-meta strong{display:block;color:#fff;font-size:clamp(15px,1.5vw,20px);font-weight:600;letter-spacing:-.035em;line-height:1.2;overflow-wrap:anywhere}
#app .ph-designer-meta>div>span{display:block;color:#a5a7ad;font-size:11px;margin-top:7px;line-height:1.5}
#app .ph-designers .ph-arrow{color:#a8bcff}
#app .ph-empty-dark{border-color:#383a40}
#app .ph-empty-dark .ph-empty-index{color:#a1a3aa}
#app .ph-empty-dark h3{color:#fff}
#app .ph-empty-dark p{color:#b7b8bd}
#app .ph-empty-dark .ph-text-link{color:#fff}
#app .ph-statement{background:#e5e4df;color:var(--ph-ink);padding-block:clamp(65px,8vw,112px)}
#app .ph-statement-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.8fr);gap:clamp(28px,6vw,100px);align-items:end}
#app .ph-statement h2{font-size:clamp(42px,6.5vw,88px);line-height:.97;font-weight:620;margin:15px 0 0}
#app .ph-statement h2 em{font-style:normal;color:var(--ph-blue)}
#app .ph-statement-grid>div:last-child>p{font-size:15px;line-height:1.8;color:#4f5053;max-width:47ch;margin:0 0 26px}
#app .ph-statement-actions{display:flex;flex-wrap:wrap;gap:10px}
#app .ph-statement .ph-kicker{color:#5f6063}
#app .site-nav{background:#090a0c;color:#fff;border-bottom:1px solid #303136}
#app .nav-inner{width:min(1480px,calc(100% - clamp(32px,6vw,96px)));height:74px}
#app .logo{color:#fff}
#app .wordmark-glyph{background:transparent;color:#fff;border:1px solid #4b4d52;border-radius:0;margin-right:5px}
#app .logo small{color:#9b9da3}
#app .nav-link{color:#c1c3c8}
#app .nav-link:hover,#app .nav-link.active{color:#fff}
#app .nav-mobile-sub{background:#101114;border-color:#36383e;border-radius:0}
#app .nav-mobile-link{color:#d5d6da;border-radius:0}
#app .nav-mobile-link:hover,#app .nav-mobile-link.active{background:#22242a;color:#fff}
#app .studio-link{color:#d5d6da}
#app .nav-rsvp{background:#fff;color:#111!important;border-color:#fff;border-radius:0}
#app .menu-toggle{background:#101114;color:#fff;border-color:#484a50;border-radius:0}
@media(max-width:1100px){
 #app .ph-hero-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:30px}
 #app .ph-hero h1{font-size:clamp(55px,7.2vw,84px)}
 #app .ph-section-head{grid-template-columns:minmax(0,1fr) minmax(190px,.8fr);gap:24px}
 #app .ph-section-head>.ph-text-link{grid-column:1/-1;justify-self:start}
 #app .ph-designer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
 #app .ph-hero-grid{grid-template-columns:minmax(0,1fr);gap:35px;padding-block:46px}
 #app .ph-hero h1{font-size:clamp(56px,11vw,90px);max-width:10ch}
 #app .ph-hero-feature>a{aspect-ratio:1.18}
 #app .ph-section-head{grid-template-columns:minmax(0,1fr);align-items:start;gap:18px}
 #app .ph-section-head h2{font-size:clamp(43px,9vw,70px)}
 #app .ph-section-head>p{max-width:54ch}
 #app .ph-section-head>.ph-text-link{grid-column:auto;justify-self:start}
 #app .ph-designer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}
 #app .ph-statement-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 #app .ph-empty{grid-template-columns:1fr;gap:13px}
 #app .nav-links{background:#090a0c;border-bottom:1px solid #303136}
 #app .nav-link{color:#e1e2e5}
 #app .nav-mobile-link{color:#e1e2e5}
 #app .nav-mobile-sub{background:#15161a}
 #app .nav-mobile-portal .nav-mobile-link{color:#fff}
}
@media(max-width:560px){
 #app .ph-topline{font-size:9px;gap:12px}
 #app .ph-topline span:last-child{text-align:right;max-width:46%}
 #app .ph-hero-grid{padding-block:40px}
 #app .ph-hero h1{font-size:clamp(50px,12.2vw,70px)}
 #app .ph-hero-actions{display:grid;grid-template-columns:1fr}
 #app .ph-button{width:100%}
 #app .ph-hero-feature>a{aspect-ratio:.95}
 #app .ph-hero-feature-title{align-items:flex-start;flex-direction:column;gap:7px}
 #app .ph-hero-feature-title>span{text-align:left;white-space:normal}
 #app .ph-hero-bottom{font-size:9px}
 #app .ph-project-grid{grid-template-columns:minmax(0,1fr);row-gap:34px}
 #app .ph-project-card,#app .ph-project-card:nth-child(n){grid-column:1}
 #app .ph-project-media,#app .ph-project-card:nth-child(n) .ph-project-media{aspect-ratio:1.12}
 #app .ph-designer-grid{gap:24px 12px}
 #app .ph-designer-media{aspect-ratio:4/4.8}
 #app .ph-designer-meta strong{font-size:16px}
 #app .ph-empty{padding-block:23px}
 #app .ph-statement-actions{display:grid;grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
 #app .portfolio-home *{scroll-behavior:auto}
}


/* FIRSTY-INSPIRED PORTFOLIO HOME — clean white space, oversized plum type, lime actions */
:root{
 --fy-paper:#fafaf7;--fy-white:#fff;--fy-plum:#28172f;--fy-plum-soft:#493451;
 --fy-lime:#d9ff38;--fy-lime-soft:#eef8bc;--fy-muted:#6e6871;--fy-line:#e5e2e7;
}
#app .fy-home{background:var(--fy-paper);color:var(--fy-plum);overflow:clip}
#app .fy-home .container{width:min(1480px,calc(100% - clamp(36px,7vw,112px)));max-width:1480px;margin-inline:auto}
#app .fy-home :is(h1,h2,h3,p,figure){margin-top:0}
#app .fy-home :is(h1,h2,h3){font-family:Inter,Arial,sans-serif;letter-spacing:-.07em}
#app .fy-eyebrow,#app .fy-hero-topline,#app .fy-hero-caption>div>span,#app .fy-proof-grid strong,#app .fy-empty-index{
 font:700 10px/1.45 Inter,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase
}
#app .fy-hero{position:relative;isolation:isolate;display:flex;min-height:clamp(700px,74vw,900px);overflow:hidden;background:var(--fy-paper);padding:0}
#app .fy-hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 67%;z-index:-2;opacity:.95}
#app .fy-hero-wash{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#fafaf7 0%,rgba(250,250,247,.98) 29%,rgba(250,250,247,.84) 49%,rgba(250,250,247,.38) 75%,rgba(250,250,247,.12) 100%)}
#app .fy-hero-inner{display:flex;flex-direction:column;min-height:inherit;position:relative}
#app .fy-hero-topline{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid rgba(40,23,47,.12);color:var(--fy-plum-soft)}
#app .fy-hero-topline b{padding-inline:7px;color:#8a7a90}
#app .fy-hero-copy{max-width:1180px;margin-inline:auto;text-align:center;padding:clamp(55px,8.2vw,112px) 0 30px}
#app .fy-hero-copy>.fy-eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--fy-muted)}
#app .fy-hero-copy>.fy-eyebrow i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--fy-lime);outline:1px solid rgba(40,23,47,.25)}
#app .fy-hero h1{font-size:clamp(54px,8.8vw,132px);line-height:.88;font-weight:850;letter-spacing:-.085em;color:var(--fy-plum);margin:24px auto 25px;text-wrap:balance}
#app .fy-hero h1 span{color:var(--fy-plum)}
#app .fy-hero-copy>p{font-family:Georgia,'Times New Roman',serif;font-size:clamp(17px,1.8vw,23px);font-weight:400;line-height:1.5;max-width:690px;margin:0 auto 27px;color:#4c4051}
#app .fy-hero-actions{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}
#app .fy-button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:48px;padding:14px 21px;border:1px solid transparent;border-radius:999px;font:650 12px/1.25 Inter,Arial,sans-serif;transition:background-color .15s ease,color .15s ease,border-color .15s ease}
#app .fy-button-lime{background:var(--fy-lime);border-color:var(--fy-lime);color:var(--fy-plum)!important}
#app .fy-button-light{background:rgba(255,255,255,.72);border-color:rgba(40,23,47,.24);color:var(--fy-plum)!important}
#app .fy-button-plum{background:var(--fy-plum);border-color:var(--fy-plum);color:#fff!important}
#app .fy-hero-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:auto;padding:18px 23px 20px;background:rgba(250,250,247,.87);border:1px solid rgba(40,23,47,.1);border-bottom:0;border-radius:24px 24px 0 0;backdrop-filter:blur(14px)}
#app .fy-hero-caption>div{display:flex;flex-direction:column;gap:6px;min-width:0}
#app .fy-hero-caption>div>span{color:var(--fy-muted);font-size:9px}
#app .fy-hero-caption strong{font-size:clamp(15px,1.7vw,20px);font-weight:700;letter-spacing:-.035em;line-height:1.25}
#app .fy-hero-caption>a{display:inline-flex;align-items:center;gap:15px;white-space:nowrap;padding:12px 17px;border-radius:999px;background:var(--fy-lime);color:var(--fy-plum);font-size:11px;font-weight:700}
#app .fy-hero-caption>a b{font-size:16px}
#app .fy-proof{background:#fff;border-block:1px solid var(--fy-line)}
#app .fy-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3vw,45px);padding-block:25px}
#app .fy-proof-grid>div{display:flex;align-items:center;gap:13px;min-width:0}
#app .fy-proof-symbol{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--fy-lime-soft);color:var(--fy-plum);font-size:19px}
#app .fy-proof-grid>div>div{display:flex;flex-direction:column;gap:4px;min-width:0}
#app .fy-proof-grid strong{font-size:10px;color:var(--fy-plum)}
#app .fy-proof-grid>div>div>span{font-size:12px;line-height:1.5;color:var(--fy-muted)}
#app .fy-section{padding-block:clamp(75px,9vw,130px)}
#app .fy-section-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(230px,.75fr) auto;gap:clamp(20px,3.5vw,55px);align-items:end;margin-bottom:clamp(30px,4.5vw,60px)}
#app .fy-section-head>.fy-eyebrow,#app .fy-section-head .fy-eyebrow{color:var(--fy-muted)}
#app .fy-section-head h2{font-size:clamp(43px,6.4vw,86px);line-height:.94;font-weight:800;max-width:10ch;margin:14px 0 0;color:var(--fy-plum)}
#app .fy-section-head h2 em{font-style:normal;color:#66506c}
#app .fy-section-head>p{font-family:Georgia,'Times New Roman',serif;font-size:16px;line-height:1.7;color:#5e5562;max-width:39ch;margin:0 0 4px}
#app .fy-text-link{display:inline-flex;align-items:center;justify-self:end;gap:14px;white-space:nowrap;padding:11px 0;border-bottom:1px solid currentColor;color:var(--fy-plum);font-size:12px;font-weight:700}
#app .fy-text-link span{font-size:17px}
#app .fy-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(16px,2vw,28px);row-gap:clamp(32px,4.5vw,58px)}
#app .fy-project-grid .ph-project-card,#app .fy-project-grid .ph-project-card:nth-child(n){grid-column:auto;min-width:0}
#app .fy-project-grid .ph-project-media,#app .fy-project-grid .ph-project-card:nth-child(n) .ph-project-media{aspect-ratio:1.18;border-radius:24px;background:#efedf0;overflow:hidden}
#app .fy-project-grid .ph-project-media img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
#app .fy-project-grid .ph-project-link:hover .ph-project-media img{transform:scale(1.025)}
#app .fy-project-grid .ph-project-index{top:13px;left:13px;min-width:34px;min-height:32px;border-radius:999px;background:var(--fy-lime);color:var(--fy-plum)}
#app .fy-project-grid .ph-project-meta{padding-top:15px}
#app .fy-project-grid .ph-project-meta h3{font-size:clamp(21px,2.2vw,29px);font-weight:750;letter-spacing:-.055em;line-height:1.08;margin:7px 0}
#app .fy-project-grid .ph-project-meta p{font-size:12px;color:var(--fy-muted)}
#app .fy-project-grid .ph-card-kicker{color:#7d7182}
#app .fy-project-grid .ph-arrow{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--fy-lime);color:var(--fy-plum);font-size:17px;padding:0}
#app .fy-designers{background:#f1f1e9;color:var(--fy-plum)}
#app .fy-designers .fy-section-head h2{color:var(--fy-plum)}
#app .fy-designers .fy-section-head>p{color:#5e5562}
#app .fy-designer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
#app .fy-designer-grid .ph-designer-card{display:block;min-width:0;color:var(--fy-plum)}
#app .fy-designer-grid .ph-designer-media{position:relative;overflow:hidden;aspect-ratio:4/4.7;border-radius:24px;background:#e3e1e7}
#app .fy-designer-grid .ph-designer-media img{width:100%;height:100%;object-fit:cover;object-position:center}
#app .fy-designer-initials,.designer-initials{display:grid;place-items:center;width:100%;height:100%;background:var(--fy-lime-soft);color:var(--fy-plum);font-size:clamp(34px,5vw,58px);font-weight:800;letter-spacing:-.08em}
#app .fy-designer-grid .ph-designer-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;padding-top:14px}
#app .fy-designer-grid .ph-designer-meta>.ph-card-kicker{grid-column:1/-1;color:#7d7182}
#app .fy-designer-grid .ph-designer-meta>div{min-width:0}
#app .fy-designer-grid .ph-designer-meta strong{display:block;font-size:clamp(15px,1.45vw,20px);font-weight:750;letter-spacing:-.04em;line-height:1.2;overflow-wrap:anywhere;color:var(--fy-plum)}
#app .fy-designer-grid .ph-designer-meta>div>span{display:block;margin-top:7px;color:#6e6871;font-size:11px;line-height:1.5}
#app .fy-designer-grid .ph-arrow{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--fy-lime);color:var(--fy-plum);font-size:17px;padding:0}
#app .fy-empty{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:24px;align-items:center;padding:clamp(24px,4vw,42px);background:#fff;border:1px solid var(--fy-line);border-radius:24px}
#app .fy-empty-index{color:var(--fy-muted)}
#app .fy-empty h3{font-size:clamp(22px,3vw,34px);font-weight:800;letter-spacing:-.055em;margin:0 0 9px}
#app .fy-empty p{font-family:Georgia,'Times New Roman',serif;font-size:15px;line-height:1.7;color:#625867;margin:0;max-width:60ch}
#app .fy-empty-dark{background:#35233d;border-color:#35233d;color:#fff}
#app .fy-empty-dark .fy-empty-index{color:#ded3e1}
#app .fy-empty-dark h3{color:#fff}
#app .fy-empty-dark p{color:#e1d9e4}
#app .fy-empty-dark .fy-text-link{color:var(--fy-lime)}
#app .fy-statement{padding-block:clamp(70px,8.5vw,120px);background:var(--fy-plum);color:#fff}
#app .fy-statement-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(270px,.8fr);gap:clamp(30px,6vw,100px);align-items:end}
#app .fy-statement .fy-eyebrow{color:#ded3e1}
#app .fy-statement h2{font-size:clamp(45px,6.8vw,91px);line-height:.94;font-weight:800;letter-spacing:-.08em;margin:15px 0 0;color:#fff}
#app .fy-statement h2 em{font-style:normal;color:var(--fy-lime)}
#app .fy-statement-grid>div:last-child>p{font-family:Georgia,'Times New Roman',serif;font-size:17px;line-height:1.75;color:#e0d9e3;max-width:47ch;margin:0 0 25px}
#app .fy-statement-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
#app .fy-statement-actions .fy-text-link{color:#fff}
#app .fy-faq{padding-block:clamp(70px,8vw,112px);background:#fff;color:var(--fy-plum)}
#app .fy-faq-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(35px,8vw,120px)}
#app .fy-faq-grid>div:first-child h2{font-size:clamp(43px,5.6vw,74px);line-height:.95;font-weight:800;letter-spacing:-.075em;margin:15px 0 20px}
#app .fy-faq-grid>div:first-child h2 em{font-style:normal;color:#66506c}
#app .fy-faq-grid>div:first-child p{font-family:Georgia,'Times New Roman',serif;color:#655b69;font-size:15px;line-height:1.75;max-width:34ch;margin-bottom:20px}
#app .fy-faq-list details{border-bottom:1px solid var(--fy-line);padding:21px 0}
#app .fy-faq-list details:first-child{border-top:1px solid var(--fy-line)}
#app .fy-faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;list-style:none;color:var(--fy-plum);font-size:15px;font-weight:700;line-height:1.5}
#app .fy-faq-list summary::-webkit-details-marker{display:none}
#app .fy-faq-list summary span{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border-radius:50%;background:var(--fy-lime);font-size:18px;font-weight:500}
#app .fy-faq-list details[open] summary span{transform:rotate(45deg)}
#app .fy-faq-list details p{max-width:58ch;padding:12px 35px 0 0;color:#665c6a;font-family:Georgia,'Times New Roman',serif;font-size:14px;line-height:1.8;margin:0}
@media(max-width:1100px){
 #app .fy-section-head{grid-template-columns:minmax(0,1fr) minmax(200px,.8fr);gap:24px}
 #app .fy-section-head>.fy-text-link{grid-column:1/-1;justify-self:start}
 #app .fy-designer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 #app .fy-empty{grid-template-columns:1fr;gap:13px}
}
@media(max-width:820px){
 #app .fy-hero{min-height:690px}
 #app .fy-hero-copy{padding-top:70px}
 #app .fy-hero h1{font-size:clamp(48px,9.5vw,78px)}
 #app .fy-proof-grid{gap:18px}
 #app .fy-proof-grid>div{align-items:flex-start}
 #app .fy-proof-grid>div>div>span{font-size:11px}
 #app .fy-section-head{grid-template-columns:minmax(0,1fr);gap:18px}
 #app .fy-section-head h2{font-size:clamp(43px,8vw,67px)}
 #app .fy-section-head>p{max-width:55ch}
 #app .fy-section-head>.fy-text-link{grid-column:auto;justify-self:start}
 #app .fy-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 #app .fy-designer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 15px}
 #app .fy-statement-grid,#app .fy-faq-grid{grid-template-columns:minmax(0,1fr);gap:30px}
 #app .fy-empty{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:560px){
 #app .fy-hero{min-height:660px}
 #app .fy-hero-topline{font-size:9px;gap:10px}
 #app .fy-hero-topline span:last-child{text-align:right;max-width:52%}
 #app .fy-hero-copy{padding-top:63px}
 #app .fy-hero h1{font-size:clamp(43px,11.5vw,62px);line-height:.91}
 #app .fy-hero-copy>p{font-size:17px;padding-inline:8px}
 #app .fy-hero-actions{display:grid;grid-template-columns:1fr;max-width:320px;margin-inline:auto}
 #app .fy-button{width:100%}
 #app .fy-hero-caption{align-items:flex-start;flex-direction:column;border-radius:22px 22px 0 0;padding:16px}
 #app .fy-hero-caption>a{width:100%}
 #app .fy-proof-grid{grid-template-columns:minmax(0,1fr);padding-block:16px;gap:15px}
 #app .fy-proof-symbol{flex-basis:35px;width:35px;height:35px}
 #app .fy-project-grid{grid-template-columns:minmax(0,1fr);row-gap:34px}
 #app .fy-project-grid .ph-project-media,#app .fy-project-grid .ph-project-card:nth-child(n) .ph-project-media{aspect-ratio:1.15}
 #app .fy-designer-grid{gap:24px 12px}
 #app .fy-designer-grid .ph-designer-media{aspect-ratio:4/4.8}
 #app .fy-designer-grid .ph-designer-meta strong{font-size:16px}
 #app .fy-statement-actions{align-items:stretch;flex-direction:column;gap:14px}
 #app .fy-statement-actions .fy-text-link{align-self:flex-start}
 #app .fy-faq-list summary{font-size:14px}
 #app .fy-empty{padding:22px}
}
@media(prefers-reduced-motion:reduce){
 #app .fy-home *{scroll-behavior:auto;transition:none!important}
}

/* Shared header follows the same Firsty-inspired light canvas on every route. */
#app .site-nav{background:var(--fy-paper);color:var(--fy-plum);border-bottom:1px solid var(--fy-line)}
#app .nav-inner{height:76px}
#app .logo{color:var(--fy-plum)}
#app .wordmark-glyph{background:var(--fy-lime);color:var(--fy-plum);border:0;border-radius:50%}
#app .logo small{color:#85798a}
#app .nav-link{color:#5e5363}
#app .nav-link:hover,#app .nav-link.active{color:var(--fy-plum)}
#app .nav-mobile-sub{background:#fff;border:1px solid var(--fy-line);border-radius:18px;box-shadow:0 14px 35px rgba(40,23,47,.09)}
#app .nav-mobile-link{color:var(--fy-plum);border-radius:12px}
#app .nav-mobile-link:hover,#app .nav-mobile-link.active{background:var(--fy-lime-soft);color:var(--fy-plum)}
#app .studio-link{color:var(--fy-plum)}
#app .nav-rsvp{background:var(--fy-lime);color:var(--fy-plum)!important;border-color:var(--fy-lime);border-radius:999px}
#app .menu-toggle{background:var(--fy-lime);color:var(--fy-plum);border-color:var(--fy-lime);border-radius:999px}
@media(max-width:820px){
 #app .nav-links{background:var(--fy-paper);border-bottom:1px solid var(--fy-line)}
 #app .nav-links .nav-link,#app .nav-links .nav-mobile-link{color:var(--fy-plum)}
 #app .nav-links .nav-mobile-sub{background:#fff;border-color:var(--fy-line)}
}
