@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;650;700;750;800&display=swap");
:root{--bg:#f8f8f5;--ink:#252b30;--muted:#69757d;--line:#dfe4e3;--blue:#6e8da1;--pale:#eaf0f2;--green:#e5eddd;--serif:Georgia,'Times New Roman',serif;--sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,a{outline-offset:5px}img{display:block;max-width:100%}.page-width{width:min(1280px,calc(100% - 92px));margin:auto}.header{height:106px;display:flex;align-items:center;justify-content:space-between;padding:0 max(46px,calc((100vw - 1280px)/2));position:relative;z-index:25}.brand{font-size:13px;font-weight:680;letter-spacing:.22em;white-space:nowrap}.brand-dot{color:#779ab2;font-size:22px}.navside{font-size:10px;letter-spacing:.16em;color:#8c9699;white-space:nowrap}.pillnav{position:fixed;z-index:50;top:23px;left:50%;transform:translateX(-50%);display:flex;gap:3px;padding:8px;background:#f4f7f7d9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid white;box-shadow:0 10px 35px #4e718c18,0 0 0 1px #b9c6ca55;border-radius:50px}.pillnav a{padding:12px 24px;border-radius:40px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:670;color:#707c83;transition:background .25s,color .25s}.pillnav a:hover,.pillnav a[aria-current]{background:white;color:#222c32;box-shadow:0 2px 14px #637e8b18}.hero{padding:102px 0 92px;border-bottom:1px solid var(--line);position:relative}.hero:before{content:'';position:absolute;z-index:-1;left:21%;top:0;width:68%;height:440px;background:radial-gradient(ellipse at 53% 33%,#dbe9f4a5,transparent 70%);pointer-events:none}.hero-kicker,.section-label{font-size:11px;font-weight:680;letter-spacing:.2em;color:#6d899a}.hero-kicker{display:flex;align-items:center;gap:12px}.sparkline{font-size:20px}.hero-year{margin-left:auto;font-size:10px;color:#9aa4a8}.hero-body{text-align:center;padding:62px 20px 66px}.hero h1,.page-intro h1{font-size:clamp(62px,7.3vw,115px);font-weight:450;letter-spacing:-.07em;line-height:1.06;margin:0}.hero h1 em,.page-intro h1 em,.section-header h2 em,.story-section h2 em,.end-note em{font-family:var(--serif);font-weight:400;color:#688ba4}.hero h1 span{font-family:var(--serif);font-style:italic;letter-spacing:-.055em}.hero-description{font-size:clamp(16px,1.9vw,22px);line-height:1.65;max-width:700px;margin:34px auto 20px;color:#4d5b61}.hero-focus{font-size:12px;letter-spacing:.1em;color:#77888d}.hero-focus span{padding:0 9px;color:#b3bdc1}.hero-bottom{display:flex;align-items:end;justify-content:space-between;color:#4e5b61;font-size:13px;line-height:1.9}.dot{display:inline-block;width:8px;height:8px;background:#85a49b;border-radius:50%;margin-right:9px}.hero-secondary{color:#839095;margin-left:17px}.text-link{font-size:13px;font-weight:650;border-bottom:1px solid #879da7;padding-bottom:7px;display:inline-block}.text-link span{font-size:20px;margin-left:7px}.work-section,.interactive-section{padding:100px 0 40px}.section-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:39px}.section-header h2{font-weight:470;font-size:clamp(38px,4.2vw,65px);letter-spacing:-.055em;line-height:1.1;margin:19px 0 0}.section-header p{max-width:340px;line-height:1.7;font-size:14px;color:var(--muted);margin:0 0 6px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.project-card{border:1px solid #e1e6e5;background:white;border-radius:25px;overflow:hidden;transition:transform .35s,box-shadow .35s;box-shadow:0 8px 24px #33404b08}.project-card:hover{transform:translateY(-6px);box-shadow:0 25px 45px #33404b17}.project-art{height:390px;position:relative;overflow:hidden;padding:24px}.art-eyebrow{font-size:10px;letter-spacing:.13em;font-weight:700;position:relative;z-index:4;color:#64737c}.project-status{position:absolute;bottom:18px;left:22px;z-index:5;color:#577285;background:#ffffffcc;backdrop-filter:blur(10px);padding:8px 12px;border-radius:20px;font-size:10px;letter-spacing:.1em;font-weight:650}.status-live{color:#336b3c}.art-room .project-art{background:linear-gradient(145deg,#e4ebe9,#f3eee7)}.room-render{height:245px;width:76%;position:absolute;left:12%;top:80px;background:linear-gradient(#fcfaf5,#e9e2d8);border:12px solid white;box-shadow:0 20px 40px #757b7624;border-radius:8px;overflow:hidden}.room-window{position:absolute;right:30px;top:25px;width:85px;height:120px;background:linear-gradient(125deg,#d3e5e6,#f1f6f0);border:8px solid #faf9f6}.room-floor{position:absolute;bottom:0;left:0;width:100%;height:82px;background:#cfc4b5;transform:skewY(-4deg);transform-origin:right}.room-sofa{position:absolute;left:18%;top:115px;width:53%;height:70px;background:#aaa7a0;border-radius:26px 26px 6px 6px;box-shadow:0 10px 0 #888e86}.room-table{position:absolute;left:47%;top:172px;width:66px;height:20px;border-radius:50%;background:#736d60;box-shadow:0 16px 0 -6px #5f594f}.room-caption{position:absolute;top:24px;left:20px;background:white;padding:8px 10px;border-radius:3px;font-family:var(--serif);font-size:13px}.art-fresh .project-art{background:linear-gradient(140deg,#edf4e4,#dceaca)}.fresh-visual{height:100%;display:flex;gap:20px;align-items:flex-start;justify-content:center;position:absolute;inset:53px 45px -50px}.fresh-visual img{width:40%;height:355px;object-fit:cover;object-position:top;border-radius:23px 23px 0 0;box-shadow:0 16px 32px #526d4830;transform:rotate(-4deg)}.fresh-visual img+img{transform:translateY(30px) rotate(5deg)}.art-border .project-art{background:linear-gradient(125deg,#e5edf4,#dce5eb)}.border-art{position:absolute;inset:50px 0 0;display:grid;place-items:center}.border-sphere{height:270px;width:270px;border-radius:50%;background:radial-gradient(circle at 38% 35%,#fff,#b5ccd6 48%,#7b98b9);box-shadow:0 20px 38px #57698125}.border-card{position:absolute;left:18%;top:46%;background:#fffef6e8;padding:20px 25px;border-radius:8px;box-shadow:0 15px 24px #4e70853b;font-family:var(--serif);font-size:22px;transform:rotate(-5deg)}.border-card small{font-family:var(--sans);display:block;margin-top:12px;font-size:10px;letter-spacing:.05em}.border-trace{position:absolute;inset:100px 30px 40px;border:1px dashed #7494ab;border-radius:50%;transform:rotate(-18deg)}.art-decode .project-art{background:linear-gradient(145deg,#e9e5dc,#f3f2ec)}.decode-art{position:absolute;inset:70px 0 0;display:grid;place-items:center}.decode-paper{padding:35px;background:#fff;transform:rotate(-7deg);box-shadow:0 12px 24px #71777b2e;width:245px;height:265px;display:flex;flex-direction:column;gap:15px}.paper-head{font-weight:780;font-size:10px;letter-spacing:.1em}.paper-line{display:block;height:7px;background:#d9dee0;border-radius:3px}.paper-line.short{width:70%}.paper-warning{padding:14px 8px;background:#e4ebe7;color:#476960;font-size:12px}.decode-note{position:absolute;left:50%;bottom:47px;background:#566d78;color:#fff;border-radius:6px;padding:16px 20px;transform:rotate(5deg);font-family:var(--serif);line-height:1.45;box-shadow:0 14px 27px #4c60604a}.project-info{display:flex;align-items:flex-end;gap:20px;justify-content:space-between;padding:29px 30px 32px;min-height:210px}.project-type{font-size:10px;font-weight:700;letter-spacing:.13em;color:#7f909b}.project-info h3,.equinox-info h3{font-size:29px;letter-spacing:-.04em;font-weight:560;margin:12px 0 12px}.project-info p,.equinox-info p{max-width:400px;color:#6f7a80;line-height:1.6;font-size:14px;margin:0}.circle-arrow{height:44px;width:44px;flex-shrink:0;border:1px solid #d5dedc;border-radius:50%;display:grid;place-items:center;font-size:21px}.project-card:hover .circle-arrow{background:#e8eff1}.interactive-section{padding-top:100px;padding-bottom:115px}.equinox-card{display:grid;grid-template-columns:1fr 1fr;min-height:390px;border:1px solid var(--line);border-radius:25px;overflow:hidden;background:white}.equinox-art,.eq-page-art{position:relative;background:#252e35;overflow:hidden;min-height:390px;display:flex;align-items:center;justify-content:center;gap:30px}.equinox-art>span,.eq-page-art>span{position:absolute;top:22px;left:24px;color:#bdcad0;font-size:10px;letter-spacing:.12em}.eq-left,.eq-right,.eq-panels div{height:190px;width:150px;border-radius:8px;background:linear-gradient(140deg,#91b8c0,#526c80);color:#fff;display:grid;place-items:center;font-family:var(--serif);font-size:18px;box-shadow:0 0 30px #9eb4be35}.eq-right{background:linear-gradient(140deg,#aa8f9a,#5b5c74)}.eq-divider{position:absolute;height:75px;width:1px;background:#d6e0e4}.equinox-info{padding:57px 56px;display:flex;flex-direction:column;justify-content:center;align-items:start}.equinox-info h3{font-size:34px;margin:18px 0}.underlined{display:inline-block;margin-top:30px;border-bottom:1px solid #667882;padding-bottom:7px;font-size:13px}.end-note{border-top:1px solid var(--line);padding:90px 0 110px;display:flex;align-items:end;justify-content:space-between;gap:20px}.end-note>p{font-size:clamp(34px,4.8vw,70px);letter-spacing:-.05em;max-width:650px;margin:0}.end-note>div{display:grid;gap:12px;font-size:13px}.end-note a{border-bottom:1px solid #5e7b8a;padding-bottom:7px}.footer{border-top:1px solid var(--line);padding:29px max(46px,calc((100vw - 1280px)/2));display:flex;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:.06em;color:#7a858b}
/* subpages */.subpage{padding-bottom:125px}.page-intro{padding:105px 0 90px}.page-intro h1{max-width:1080px;font-size:clamp(55px,6.8vw,104px);margin:28px 0;line-height:1.15}.page-intro>p{font-size:20px;max-width:720px;line-height:1.7;color:#66737a}.outline-button{display:inline-flex;align-items:center;gap:16px;border:1px solid #6b7a80;border-radius:25px;padding:13px 23px;margin-top:20px;font-size:13px;font-weight:630;background:#fff9}.outline-button:hover{background:#e8eff1}.small-note{font-size:10px;color:#9a9fa2}.resume-section{padding:55px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 3fr;gap:36px}.resume-section>h2{font-family:var(--serif);font-weight:400;font-style:italic;font-size:35px;margin:0}.resume-entry{grid-column:2;display:grid;grid-template-columns:1fr 1.65fr;gap:30px;border-top:1px solid #e0e5e5;padding-top:26px}.resume-entry:first-of-type{border-top:none;padding-top:0}.resume-side{display:grid;align-content:start;gap:10px;font-size:14px}.resume-side strong{font-weight:650}.resume-side span{color:#8a9499;font-size:12px}.resume-entry h3{font-size:20px;margin:0 0 12px;font-weight:560}.resume-entry p{color:#66737a;font-size:14px;line-height:1.8;margin:0 0 15px}.disclaimer,.note{font-size:12px!important;color:#899397!important;line-height:1.7!important}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.about-tile{padding:37px;background:#edf1f1;border-radius:20px;min-height:275px}.about-tile.wide{grid-column:span 2}.about-tile h2{font-size:clamp(30px,4vw,51px);line-height:1.15;letter-spacing:-.04em;font-weight:480;margin:36px 0 20px}.about-tile h2 em{font-family:var(--serif);color:#6f8c9e;font-weight:400}.about-tile p{font-size:16px;max-width:680px;line-height:1.7;color:#607078}.color-tile{background:#e5edef}.about-columns{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:45px}.about-contact{padding:110px 0 0}.about-contact h2{font-size:clamp(40px,5vw,72px);font-weight:450;letter-spacing:-.05em;margin:25px 0}.about-contact h2 em{font-family:var(--serif);color:#7d98a5}.about-contact a{border-bottom:1px solid}.preview-top{display:flex;justify-content:space-between;padding-top:60px}.preview-panel{padding:115px 0 60px}.preview-panel h1{font-size:clamp(54px,7vw,110px);font-weight:500;letter-spacing:-.06em;margin:20px 0}.preview-panel>p{max-width:680px;font-size:21px;color:#6b777e;line-height:1.65}.preview-border{border:1px solid var(--line);border-radius:20px;padding:40px;background:#eff2f1;margin-top:60px;max-width:800px}.preview-border span{font-size:11px;letter-spacing:.16em;color:#6b8597;font-weight:700}.preview-border p{line-height:1.8;color:#69767d;max-width:600px}.preview-next{border-top:1px solid var(--line);padding-top:50px}.preview-next h2{font-family:var(--serif);font-weight:400;font-size:32px}.eq-page-art{border-radius:24px;min-height:420px}.eq-panels{display:flex;gap:45px}.eq-panels div:nth-child(2){background:linear-gradient(140deg,#aa8f9a,#5b5c74)}
/* case study */.case-top{padding:65px 0 55px}.case-top h1{font-size:clamp(80px,11vw,166px);font-weight:530;letter-spacing:-.085em;line-height:1.1;margin:24px 0}.accent-dot{color:#80a766}.case-topline{display:flex;justify-content:space-between;align-items:end;gap:40px}.case-topline p{font-size:21px;line-height:1.6;max-width:680px;color:#526066;margin:0}.case-tags{display:flex;gap:8px;flex-wrap:wrap}.case-tags span{padding:10px 13px;background:#eaf0e4;border-radius:24px;color:#526c4c;white-space:nowrap;font-size:11px}.case-cover{min-height:610px;background:#e5efd8;position:relative;overflow:hidden;display:flex;justify-content:center;align-items:center;gap:58px}.case-cover img{height:550px;width:auto;object-fit:contain;filter:drop-shadow(0 20px 18px #5d77572b);align-self:end}.case-cover img:nth-child(2){transform:translateY(45px)}.case-cover>div{position:absolute;bottom:40px;left:6%;color:#4c7443;background:#ffffffe8;padding:19px 26px;border-radius:12px}.case-cover>div span{font-size:10px;letter-spacing:.2em;display:block;margin-bottom:8px}.case-cover>div strong{font-size:19px;line-height:1.25}.case-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding-top:42px;padding-bottom:42px;border-bottom:1px solid var(--line)}.case-facts>div>span{font-size:10px;letter-spacing:.15em;color:#80908d}.case-facts p{font-size:14px;line-height:1.65}.story-section{padding-top:135px;padding-bottom:130px}.story-cols{display:grid;grid-template-columns:1.1fr 1fr;gap:90px}.story-section h2{font-size:clamp(40px,5vw,72px);font-weight:470;letter-spacing:-.05em;line-height:1.16;margin:24px 0}.story-section p{line-height:1.85;color:#57666d;font-size:16px}.story-cols>div:nth-child(2){padding-top:10px}.soft-section{background:#ebefea}.story-right{padding-top:55px!important}.wide-head{margin-bottom:32px!important}.journey{display:flex;align-items:center;justify-content:center;gap:20px;padding:40px 0 50px}.journey>div{width:27%;padding:24px 30px;background:#eff4ec;border-radius:14px;display:grid;gap:9px}.journey span{font-size:11px;color:#688d58}.journey b{font-size:23px}.journey p{font-size:13px;margin:0}.journey i{font-style:normal;color:#77966d;font-size:24px}.phone-row{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;background:#ecf1e8;border-radius:22px;padding:45px 35px}.phone-row figure{margin:0;text-align:center}.phone-row img{max-height:520px;margin:auto;width:auto;object-fit:contain}.phone-row figcaption{font-size:12px;color:#6a7f66;margin-top:18px}.body-lead{max-width:770px}.iteration{margin:65px 0 95px;padding-bottom:55px;border-bottom:1px solid var(--line)}.iteration-title{display:grid;grid-template-columns:170px 1fr 1fr;gap:30px;align-items:start;margin-bottom:25px}.iteration-title span{font-size:12px;font-weight:700;color:#698a61;letter-spacing:.1em}.iteration-title h3{font-size:29px;letter-spacing:-.04em;font-weight:550;margin:0}.iteration-title p{font-size:14px;line-height:1.7;margin:0}.iteration img{border-radius:12px;width:100%;height:auto}.issues{display:grid;gap:10px;margin:25px 0}.issues>div{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:14px 0;border-top:1px solid #cfdad2}.issues b{font-size:13px}.issues span{font-size:13px;color:#65776a}.demo-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;margin-top:55px}.phone-demo{margin:0 auto;height:500px;width:248px;border:10px solid #1f2425;border-radius:43px;box-shadow:0 0 0 2px #7b8380,0 20px 35px #2c3f3423;background:#fbfcf8;overflow:hidden;position:relative}.phone-island{position:absolute;top:13px;left:75px;width:78px;height:23px;border-radius:22px;background:#181d1e;z-index:3}.demo-screen{height:100%;background:#eef4e8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;text-align:center}.demo-screen>span{font-size:9px;letter-spacing:.1em;color:#667f60}.demo-play{height:65px;width:65px;border-radius:50%;background:#67895e;color:white;display:grid;place-items:center;padding-left:3px}.demo-screen p{font-size:14px!important}.demo-layout>div:last-child h3{font-size:32px;font-weight:510;letter-spacing:-.04em}.demo-layout>div:last-child p{max-width:550px}.case .story-section:last-child{border-top:1px solid var(--line)}.reveal{opacity:0;transform:translateY(25px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.project-card{transition:none}}@media(max-width:1050px){.navside{display:none}.header{height:90px}.project-art{height:320px}.story-cols{gap:40px}.case-cover{min-height:460px}.case-cover img{height:420px}.iteration-title{grid-template-columns:140px 1fr}.iteration-title p{grid-column:2}.demo-layout{gap:50px}}@media(max-width:720px){.page-width{width:calc(100% - 36px)}.header{height:92px;padding:0 18px;align-items:end;padding-bottom:15px}.brand{font-size:10px}.pillnav{top:15px;padding:5px;box-shadow:0 5px 20px #4e718c18}.pillnav a{font-size:10px;padding:9px 11px}.hero{padding:60px 0}.hero-body{padding:45px 0}.hero h1{font-size:clamp(49px,11vw,75px)}.hero-description{font-size:16px}.hero-focus{font-size:10px;line-height:1.9}.hero-bottom{align-items:start;gap:25px;flex-direction:column}.hero-year{display:none}.work-section,.interactive-section{padding-top:75px}.section-header{flex-direction:column;align-items:start;gap:20px}.section-header h2{font-size:42px}.project-grid{grid-template-columns:1fr;gap:20px}.project-art{height:330px}.project-info{min-height:0;padding:24px}.project-info h3{font-size:26px}.equinox-card{grid-template-columns:1fr}.equinox-info{padding:35px}.equinox-art{min-height:300px}.eq-left,.eq-right{height:150px;width:110px}.end-note{padding:65px 0;flex-direction:column;align-items:start}.footer{padding:27px 18px;flex-wrap:wrap}.footer span:nth-child(2){display:none}.page-intro{padding:75px 0}.page-intro h1{font-size:51px}.resume-section{grid-template-columns:1fr;gap:25px}.resume-entry{grid-column:1;grid-template-columns:1fr;gap:15px}.about-grid{grid-template-columns:1fr}.about-tile.wide{grid-column:span 1}.about-columns{grid-template-columns:1fr;gap:0}.preview-panel{padding:80px 0 50px}.case-top{padding-top:55px}.case-top h1{font-size:70px}.case-topline{flex-direction:column;align-items:start}.case-topline p{font-size:17px}.case-cover{gap:8px;min-height:350px}.case-cover img{height:300px;max-width:45%}.case-cover>div{bottom:15px;left:12px;padding:10px}.case-cover>div strong{font-size:12px}.case-facts{grid-template-columns:1fr;gap:12px}.story-section{padding-top:83px;padding-bottom:80px}.story-cols{grid-template-columns:1fr;gap:10px}.story-section h2{font-size:44px}.story-right{padding-top:0!important}.journey{gap:8px;justify-content:start}.journey>div{width:31%;padding:12px}.journey b{font-size:16px}.journey p{font-size:11px}.journey i{font-size:14px}.phone-row{gap:8px;padding:22px 9px}.phone-row img{max-height:260px}.phone-row figcaption{font-size:9px}.iteration{margin:40px 0 65px}.iteration-title{grid-template-columns:1fr;gap:10px}.iteration-title p{grid-column:1}.iteration-title h3{font-size:23px}.demo-layout{grid-template-columns:1fr;gap:35px}.equinox-art>span,.eq-page-art>span{font-size:9px}.eq-panels{gap:15px}.eq-panels div{width:125px;height:170px}}

/* V3: refined project hover — gentle image zoom and lifted shadow */
.project-card,.equinox-card{will-change:transform;transition:transform .38s cubic-bezier(.2,.75,.25,1),box-shadow .38s ease,border-color .3s ease}
.project-card:hover,.project-card:focus-within,.equinox-card:hover,.equinox-card:focus-within{transform:translateY(-7px);box-shadow:0 24px 55px rgba(41,59,68,.16),0 5px 15px rgba(41,59,68,.07);border-color:#cbd9de}
.project-art{isolation:isolate}
.project-art .room-render,.project-art .fresh-visual,.project-art .border-art,.project-art .decode-art,.equinox-art .eq-left,.equinox-art .eq-right{transition:transform .6s cubic-bezier(.2,.75,.25,1)}
.project-card:hover .room-render,.project-card:focus-within .room-render{transform:scale(1.045)}
.project-card:hover .fresh-visual,.project-card:focus-within .fresh-visual{transform:scale(1.045)}
.project-card:hover .border-art,.project-card:focus-within .border-art{transform:scale(1.045)}
.project-card:hover .decode-art,.project-card:focus-within .decode-art{transform:scale(1.045)}
.project-card .fresh-visual img{transition:filter .4s}
.project-card:hover .fresh-visual img{filter:saturate(1.055)}
.equinox-card:hover .eq-left,.equinox-card:focus-within .eq-left{transform:scale(1.045)}
.equinox-card:hover .eq-right,.equinox-card:focus-within .eq-right{transform:scale(1.045)}
@media (hover:none){.project-card:hover,.equinox-card:hover{transform:none;box-shadow:0 8px 24px #33404b08}}
@media (prefers-reduced-motion:reduce){.project-card,.equinox-card,.project-art .room-render,.project-art .fresh-visual,.project-art .border-art,.project-art .decode-art,.equinox-art .eq-left,.equinox-art .eq-right{transition:none!important}.project-card:hover,.equinox-card:hover,.project-card:hover .room-render,.project-card:hover .fresh-visual,.project-card:hover .border-art,.project-card:hover .decode-art{transform:none!important}}


/* V4 — clearer large-image project cards; restrained bright cobalt accent. */
:root{--bg:#faf9f6;--ink:#20272b;--muted:#57636b;--line:#d9dfdd;--blue:#557f9c;--accent:#356fe2;}
body{background:var(--bg)}
.hero:before{background:radial-gradient(ellipse at 54% 30%,#dbe9f27d,transparent 70%)}
.hero h1 em,.page-intro h1 em,.section-header h2 em,.story-section h2 em,.end-note em{color:#587f9c}
.section-header p{color:#515e65;font-size:15px}
.project-grid{gap:26px}
.project-card{border:1px solid #d5dcdb;border-radius:28px;box-shadow:0 5px 16px #202e3211,0 1px 3px #202e3210;position:relative}
.project-card:hover,.project-card:focus-within{border-color:#91abc4;box-shadow:0 28px 60px #1b343c26,0 4px 15px #1b343c0d;transform:translateY(-7px)}
.project-art{height:474px;padding:28px;isolation:isolate}
.art-eyebrow{font-size:11px;letter-spacing:.10em;font-weight:720;color:#334751;background:#ffffffdb;padding:8px 11px;border-radius:6px;display:inline-block}
.project-status{font-size:11px;letter-spacing:.04em;bottom:22px;left:25px;padding:12px 16px;background:#fff;box-shadow:0 3px 14px #263b4220;color:#384d59}
.status-live{background:#356fe2;color:white}
.art-fresh .project-art{background:#dcebbb}
.fresh-visual{inset:35px 20px -35px;gap:12px;align-items:flex-start;justify-content:center}
.fresh-visual img{width:46%;height:475px;object-fit:contain;object-position:center top;border-radius:14px;box-shadow:0 12px 32px #1c352a2e;transform:rotate(-1.2deg)}
.fresh-visual img+img{transform:translateY(29px) rotate(1.5deg)}
.project-card:hover .fresh-visual,.project-card:focus-within .fresh-visual{transform:scale(1.04)}
.art-room .project-art{background:linear-gradient(150deg,#e9eeea,#eee4d6)}
.room-render{top:95px;height:300px;width:85%;left:7.5%;box-shadow:0 18px 36px #4e5b542b}
.room-window{height:150px}.room-sofa{top:156px;height:84px}.room-table{top:219px}
.art-border .project-art{background:linear-gradient(140deg,#d8e4ed,#e8edf3)}
.border-art{inset:80px 0 0}.border-sphere{height:310px;width:310px}.border-card{font-size:25px}
.art-decode .project-art{background:linear-gradient(140deg,#e7e4d9,#f3f0e8)}
.decode-art{inset:80px 0 0}.decode-paper{height:300px;width:278px}.decode-note{bottom:65px}
.project-info{padding:30px 34px 35px;min-height:185px;align-items:center}
.project-info h3{font-size:36px;margin:8px 0 10px;font-weight:650;letter-spacing:-.047em;color:#20272b}
.project-type{color:#51636d;font-size:10px;letter-spacing:.12em}
.project-info p{font-size:16px;line-height:1.55;color:#4b595f;max-width:415px}
.circle-arrow{height:53px;width:53px;border-color:#b9cacd;font-size:25px;transition:background .25s,color .25s}
.project-card:hover .circle-arrow,.project-card:focus-within .circle-arrow{background:var(--accent);border-color:var(--accent);color:#fff}
.text-link:hover{color:var(--accent)}
.pillnav a:hover{color:var(--accent)}
@media(max-width:1050px){.project-art{height:380px}.fresh-visual img{height:390px}.room-render{height:250px;top:80px}.room-sofa{top:125px}.room-table{top:188px}.project-info h3{font-size:30px}}
@media(max-width:720px){.project-art{height:365px}.fresh-visual{inset:43px 15px -20px}.fresh-visual img{height:360px}.project-info{padding:24px;min-height:0}.project-info h3{font-size:29px}.project-info p{font-size:14px}.room-render{top:80px;height:240px;width:80%;left:10%}.room-sofa{top:112px}.room-table{top:172px}.project-status{bottom:13px;left:15px}}
@media(prefers-reduced-motion:reduce){.project-card,.project-art .fresh-visual{transition:none!important}}


/* V5 — airier page rhythm, readable type, quiet white surfaces */
:root{--bg:#f7f9fa;--ink:#22292e;--muted:#4e5d66;--line:#e1e6e9;--blue:#668ba5;--accent:#356fe2}
body{background:var(--bg);color:var(--ink)}
.page-width{width:min(1120px,calc(100% - 100px))}
.header{padding-left:max(50px,calc((100vw - 1120px)/2));padding-right:max(50px,calc((100vw - 1120px)/2))}
.hero{padding-top:112px;padding-bottom:110px}
.hero:before{opacity:.4}
.work-section,.interactive-section{padding-top:112px}
.section-header{margin-bottom:54px;gap:62px;align-items:center}
.section-header h2{font-size:clamp(35px,3.7vw,54px);line-height:1.13;letter-spacing:-.048em}
.section-header p{color:#455761;font-size:16px;max-width:315px;line-height:1.65}
.section-label,.hero-kicker,.project-type{color:#53758e}
.project-grid{gap:46px 38px}
.project-card{border:1px solid #edf0f2;background:#fff;border-radius:29px;box-shadow:0 5px 22px rgba(32,50,61,.065),0 1px 4px rgba(32,50,61,.028)}
.project-card:hover,.project-card:focus-within{border-color:#c4d3dd;box-shadow:0 22px 50px rgba(38,59,76,.15),0 5px 13px rgba(38,59,76,.05);transform:translateY(-5px)}
.project-art{height:365px;padding:23px}
.art-room .project-art{background:linear-gradient(135deg,#eaf0f0,#f3f3ef)}
.art-fresh .project-art{background:#e8f0d9}
.art-border .project-art{background:linear-gradient(145deg,#e8eef3,#edf2f6)}
.art-decode .project-art{background:linear-gradient(145deg,#eeeae2,#f8f7f2)}
.art-eyebrow{color:#30404a;background:#fffffff2;font-size:11px;letter-spacing:.075em}
.project-status{background:#fff;color:#354e62;box-shadow:0 2px 12px rgba(33,51,62,.08);font-size:10px}
.status-live{color:#fff;background:#356fe2}
.fresh-visual{inset:27px 23px -24px;gap:15px}
.fresh-visual img{height:366px;width:44%;object-fit:contain;box-shadow:0 12px 27px rgba(30,51,37,.17)}
.room-render{top:74px;height:245px;width:80%;left:10%;border-width:10px;box-shadow:0 11px 25px rgba(55,68,63,.13)}
.room-window{height:112px}.room-sofa{top:119px;height:70px}.room-table{top:179px}
.border-art{inset:56px 0 0}.border-sphere{width:250px;height:250px}.border-card{font-size:22px}
.decode-art{inset:60px 0 0}.decode-paper{height:248px;width:240px}.decode-note{bottom:34px}
.project-info{padding:30px 32px 37px;min-height:193px;align-items:center}
.project-info h3{font-size:31px;line-height:1.2;letter-spacing:-.04em;margin:9px 0 12px}
.project-type{font-size:11px;letter-spacing:.09em}
.project-info p{font-size:15px;line-height:1.65;color:#495861;max-width:365px}
.pillnav{background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.97);box-shadow:0 9px 28px rgba(58,82,94,.10),0 0 0 1px rgba(173,187,194,.24)}
.pillnav a{color:#53616a;font-size:12px}
.project-card:hover .circle-arrow{background:#356fe2}
@media(max-width:1050px){.page-width{width:min(880px,calc(100% - 72px))}.project-grid{gap:26px}.project-art{height:335px}.fresh-visual img{height:332px}.room-render{height:222px}.room-sofa{top:104px}.room-table{top:161px}.project-info{padding:25px}.project-info h3{font-size:28px}.section-header h2{font-size:45px}}
@media(max-width:720px){.page-width{width:calc(100% - 38px)}.header{padding-left:19px;padding-right:19px}.hero{padding-top:55px;padding-bottom:70px}.work-section,.interactive-section{padding-top:76px}.section-header{gap:22px;margin-bottom:30px;align-items:flex-start}.section-header h2{font-size:clamp(34px,8.5vw,45px)}.section-header p{font-size:14px}.project-grid{gap:25px}.project-art{height:330px}.fresh-visual{inset:34px 14px -25px}.fresh-visual img{height:325px}.project-info{padding:24px;min-height:0}.project-info p{font-size:14px}.project-info h3{font-size:28px}.room-render{top:75px;height:210px;width:79%;left:10.5%}.room-sofa{top:98px}.room-table{top:149px}}


/* V6 — luminous color gradients with crisp translucent glass detailing.
   Gradients belong to image panels; text surfaces stay solid and readable. */
:root {
  --bg: #f5f7f9;
  --ink: #1d252c;
  --muted: #45545f;
  --line: #dfe6eb;
  --blue: #5b819e;
  --accent: #276ddd;
}
body { background:var(--bg); color:var(--ink); }
.project-card {
  position:relative;
  border:1.5px solid rgba(255,255,255,.98);
  background:#fff;
  box-shadow:0 5px 15px rgba(28,48,68,.07),0 0 0 1px rgba(116,139,156,.11);
  isolation:isolate;
}
.project-card::after {
  content:""; position:absolute; inset:0; pointer-events:none; z-index:5;
  border-radius:inherit;
  box-shadow:inset 0 1.5px 0 rgba(255,255,255,.98),inset 1px 0 0 rgba(255,255,255,.38);
}
.project-card:hover,.project-card:focus-within {
  border-color:#fff;
  box-shadow:0 21px 51px rgba(38,63,89,.16), 0 0 0 1px rgba(104,148,181,.3);
}
.project-art { isolation:isolate; }
/* Saturated enough to be distinct, still soft enough to put real project work first. */
.art-room .project-art {
 background:linear-gradient(128deg,#d9e9f4 0%,#e4e3f2 35%,#f8ebdf 78%,#fff3e7 100%);
}
.art-fresh .project-art {
 background:linear-gradient(130deg,#f5f6c7 0%,#cbeabf 43%,#aee1bf 78%,#d7f1e6 100%);
}
.art-border .project-art {
 background:linear-gradient(124deg,#e0e5ff 0%,#c5d9fa 43%,#dbe8f8 72%,#f4edf8 100%);
}
.art-decode .project-art {
 background:linear-gradient(128deg,#f6dcd8 0%,#f4e4de 39%,#e6dff3 75%,#f5edf7 100%);
}
/* A subtle internal top-edge reflection suggests real clear glass, not fog. */
.project-art::before {
 content:""; pointer-events:none; position:absolute; z-index:2;
 inset:0 0 auto 0; height:33%;
 background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,0));
}
.art-eyebrow,.project-status {
 position:absolute; z-index:7;
 background:rgba(255,255,255,.76);
 -webkit-backdrop-filter:blur(9px) saturate(1.15);
 backdrop-filter:blur(9px) saturate(1.15);
 border:1px solid rgba(255,255,255,.95);
 box-shadow:0 3px 15px rgba(52,79,101,.10),inset 0 1px 0 rgba(255,255,255,.9);
 color:#263845;
}
.art-eyebrow { font-weight:750; }
.status-live {
 color:#fff; background:rgba(39,109,221,.95); border-color:rgba(255,255,255,.50);
 text-shadow:0 1px 1px rgba(0,0,0,.12);
}
.project-info {
 position:relative; z-index:3;
 background:#fff;
 border-top:1px solid rgba(230,235,238,.7);
}
.project-info h3 { color:#172027; font-weight:700; }
.project-info p { color:#45525b; }
/* Navigation: translucent surface with a crisp, visible border. */
.pillnav {
 background:rgba(255,255,255,.72);
 border:1.5px solid rgba(255,255,255,.98);
 box-shadow:0 10px 32px rgba(52,78,96,.13),inset 0 1px 0 rgba(255,255,255,1),0 0 0 1px rgba(115,144,166,.16);
 -webkit-backdrop-filter:blur(18px) saturate(1.18);
 backdrop-filter:blur(18px) saturate(1.18);
}
.pillnav a { color:#354550; }
.section-header p {color:#485661}
/* Subtle glass only on small labels: no semitransparent body text. */
.project-card:hover .project-art::before {background:linear-gradient(180deg,rgba(255,255,255,.56),rgba(255,255,255,0));}
@media(prefers-reduced-motion:reduce){.project-card,.project-art::before {transition:none!important}}


/* V7 — Yani-inspired restrained blush + mint. Real content and crisp text. */
:root{--bg:#f2f5f7;--ink:#181d22;--muted:#4a565f;--blue:#68899f;--line:#e1e6e9;--accent:#68899f}
body{background:#f2f5f7;color:var(--ink)}
.page-width{width:min(1110px,calc(100% - 100px))}
.header{padding-left:max(50px,calc((100vw - 1110px)/2));padding-right:max(50px,calc((100vw - 1110px)/2))}
.work-section,.interactive-section{padding-top:94px}
.section-header{margin-bottom:48px}
.section-header h2{font-weight:500;letter-spacing:-.053em}
.section-header p{color:#4c5962;font-size:15px}
.project-grid{gap:42px 36px}
.project-card{border-radius:30px;border:2px solid rgba(255,255,255,.98);background:#fff;box-shadow:0 7px 24px rgba(33,47,55,.075),0 0 0 1px rgba(157,171,180,.12);overflow:hidden}
.project-card::after{box-shadow:inset 0 2px 0 rgba(255,255,255,.96)}
.project-card:hover,.project-card:focus-within{transform:translateY(-5px);border-color:#fff;box-shadow:0 22px 44px rgba(27,42,51,.13),0 0 0 1px rgba(156,176,189,.20)}
.project-art{height:365px}
.art-room .project-art{background:radial-gradient(ellipse at 18% 30%,rgba(250,224,234,.40),transparent 68%),linear-gradient(120deg,#f5f5f6 0%,#f9f5f6 53%,#f2f4f5 100%)}
.art-fresh .project-art{background:radial-gradient(ellipse at 68% 52%,rgba(177,233,204,.55),transparent 69%),linear-gradient(125deg,#f6f8f7 0%,#edf7f3 60%,#f4faf8 100%)}
.art-border .project-art{background:radial-gradient(ellipse at 70% 40%,rgba(207,223,237,.53),transparent 72%),linear-gradient(110deg,#f6f8fa,#eaf2f7)}
.art-decode .project-art{background:radial-gradient(ellipse at 30% 40%,rgba(234,219,223,.35),transparent 70%),linear-gradient(115deg,#f9f7f6,#f4f3f2)}
.project-art::before{height:20%;background:linear-gradient(180deg,rgba(255,255,255,.33),transparent)}
.project-card:hover .project-art::before{background:linear-gradient(180deg,rgba(255,255,255,.38),transparent)}
.art-eyebrow,.project-status{background:rgba(255,255,255,.85);color:#35444a;box-shadow:0 2px 8px rgba(30,55,64,.06);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid white}
.status-live{background:rgba(255,255,255,.92);color:#2d5442;text-shadow:none;border-color:#fff}
.project-info{background:#fff;padding:30px 31px;border-top:1px solid rgba(226,234,236,.8)}
.project-info h3{font-size:30px;line-height:1.18;color:#151b1f;font-weight:690}
.project-info p{font-size:15px;line-height:1.6;color:#47545d}
.project-type{color:#647b85}
.pillnav{background:rgba(255,255,255,.78);border:2px solid #fff;box-shadow:0 9px 25px rgba(41,63,77,.13),inset 0 1px 0 #fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.pillnav a{color:#404d56}
.pillnav a:hover,.pillnav a[aria-current]{background:white;color:#1c252a}
.circle-arrow{border-color:#cdd9dd;color:#293841}
.project-card:hover .circle-arrow{background:#627f8e;border-color:#627f8e;color:white}
.hero:before{background:radial-gradient(ellipse at 53% 35%,#e8eef4aa,transparent 69%)}
@media(max-width:1050px){.page-width{width:min(880px,calc(100% - 72px))}.project-grid{gap:30px}.project-art{height:335px}}
@media(max-width:720px){.page-width{width:calc(100% - 38px)}.header{padding-left:19px;padding-right:19px}.project-grid{gap:26px}.project-art{height:315px}.project-info{padding:24px}.project-info h3{font-size:27px}.section-header{margin-bottom:31px}}


/* V8 — restrained Yani-inspired visual system. Warmest blush and palest mint,
   clean chrome, sharp imagery and accessible contrast. No fake project imagery. */
:root {--bg:#f3f5f7;--ink:#171d22;--muted:#515d66;--line:#e0e6e9;--blue:#6e91a5}
body {background:#f3f5f7;color:var(--ink)}
.project-card {border:2px solid #fff;border-radius:29px;box-shadow:0 7px 21px rgba(36,52,62,.075),0 0 0 1px rgba(125,145,158,.07)}
.project-card::after {box-shadow:inset 0 1px 0 #fff}
.project-art {height:374px}
.art-room .project-art {background:radial-gradient(ellipse at 52% 38%,rgba(246,224,233,.35),transparent 60%),linear-gradient(125deg,#f8f8f9 5%,#f6f5f7 52%,#f2f5f7 100%)}
.art-fresh .project-art {background:radial-gradient(ellipse at 52% 43%,rgba(180,230,206,.49),transparent 59%),linear-gradient(118deg,#f6f9f8 0%,#eef8f4 52%,#f3f7f8 100%)}
.art-border .project-art {background:radial-gradient(ellipse at 45% 40%,rgba(201,219,234,.38),transparent 65%),#f7f9fb}
.art-decode .project-art {background:radial-gradient(ellipse at 38% 42%,rgba(242,224,224,.32),transparent 65%),#faf9f8}
.project-info {background:#fdfefe;border-top:1px solid #e9eef0;padding:28px 31px 32px}
.project-info h3 {font-weight:690;color:#171b1f}
.project-info p {color:#4d5862}
.project-art::before {height:12%;background:linear-gradient(180deg,rgba(255,255,255,.21),transparent)}
.art-eyebrow {background:rgba(255,255,255,.94);font-size:10px;color:#37454e;border:1px solid #fff}
.project-status {background:rgba(255,255,255,.91);color:#465760}
.pillnav {background:rgba(255,255,255,.78);border:2px solid #fff;box-shadow:0 8px 25px rgba(48,66,78,.10);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
/* On-scroll, silent real-screen preview. The actual MP4 can replace this screen
   sequence when the user records the app; no fabricated application states. */
.fresh-visual.auto-showcase {inset:48px 28px -20px;display:block;pointer-events:none}
.demo-phone {position:absolute;overflow:hidden;box-shadow:0 16px 28px rgba(30,49,40,.19);background:#1b201d;border-radius:24px 24px 0 0;border:5px solid #262a28;}
.demo-phone-main {width:44%;height:355px;left:7%;top:9px;transform:rotate(-3deg);}
.demo-phone-secondary {width:43%;height:350px;right:6%;top:32px;transform:rotate(4deg)}
.demo-phone img {display:block;width:100%;height:100%;object-fit:cover;object-position:top;max-width:none;transform:none!important;border-radius:0!important;box-shadow:none!important;}
.demo-frame {position:absolute;inset:0;opacity:0;transition:opacity .7s ease}
.demo-frame:first-child {opacity:1}
.demo-phone-secondary img {opacity:1}
.screen-demo-label {position:absolute;z-index:4;top:75%;right:5%;padding:8px 11px;background:rgba(255,255,255,.93);border:1px solid rgba(255,255,255,.99);border-radius:18px;font-size:9px;font-weight:750;letter-spacing:.09em;color:#38664c;box-shadow:0 3px 12px rgba(50,85,62,.1)}
@media(max-width:1050px) {.project-art{height:340px}.demo-phone-main{height:325px}.demo-phone-secondary{height:320px}}
@media(max-width:720px) {.project-art{height:322px}.fresh-visual.auto-showcase{inset:43px 15px -20px}.demo-phone-main{height:310px}.demo-phone-secondary{height:300px}.screen-demo-label{font-size:8px;right:2%}}
@media(prefers-reduced-motion:reduce) {.demo-frame{transition:none}.project-card{transition:none!important}}


/* V8 color continuity: home cards and corresponding case-study pages.
   Subtle reference-inspired palette; original user materials remain intact. */
:root{--site-page:#f2f5f7;--glass-white:rgba(255,255,255,.94)}
body{background:var(--site-page)}
.project-art{isolation:isolate}
.art-room .project-art{
 background:radial-gradient(ellipse at 45% 38%,rgba(249,225,233,.44) 0%,rgba(249,225,233,.19) 39%,transparent 76%),linear-gradient(125deg,#f8f9fa,#f8f8fa 60%,#f3f5f7);
}
.art-fresh .project-art{
 background:radial-gradient(ellipse at 60% 46%,rgba(153,224,189,.47),rgba(193,235,211,.18) 54%,transparent 82%),linear-gradient(125deg,#f8faf9,#f1f8f5 68%,#f6f9fa);
}
.art-border .project-art{
 background:radial-gradient(ellipse at 55% 48%,rgba(193,220,243,.41),transparent 75%),linear-gradient(120deg,#f9fafb,#f0f5f9);
}
.art-decode .project-art{
 background:radial-gradient(ellipse at 50% 44%,rgba(245,215,199,.40),transparent 75%),linear-gradient(125deg,#fafaf9,#faf5f1);
}
.project-card{border:2px solid #fff;box-shadow:0 6px 20px rgba(45,55,63,.085),0 0 0 1px rgba(145,165,180,.07)}
.project-card:hover{box-shadow:0 16px 34px rgba(42,57,69,.14),0 0 0 1px rgba(160,179,190,.15)}
.project-info{background:#fff}
.case-theme-fresh .case-top{background:radial-gradient(ellipse at 58% 45%,rgba(183,231,207,.43),transparent 65%),linear-gradient(120deg,#f9fbfa,#f1f8f5)}
.case-theme-fresh .case-cover{background:radial-gradient(ellipse at 55% 40%,rgba(142,215,176,.35),transparent 75%),linear-gradient(125deg,#f7fbf9,#e9f5ed,#f6f9f8)}
.case-theme-fresh .soft-section{background:linear-gradient(115deg,#f6faf8,#eaf5ee,#f6faf8)}
.case-theme-fresh .phone-row{background:linear-gradient(125deg,#f6faf8,#e9f4ed)}
.case-theme-fresh .case-top .section-label{color:#49735b}
.preview-theme-room .preview-panel{background:radial-gradient(ellipse at 45% 48%,rgba(249,225,233,.50),transparent 77%),linear-gradient(120deg,#fcfbfc,#f7f8f9)}
.preview-theme-border .preview-panel{background:radial-gradient(ellipse at 45% 48%,rgba(193,220,243,.50),transparent 77%),linear-gradient(120deg,#fcfdfe,#f4f7fa)}
.preview-theme-decode .preview-panel{background:radial-gradient(ellipse at 45% 48%,rgba(245,215,199,.50),transparent 77%),linear-gradient(120deg,#fefdfb,#faf7f3)}
.preview-panel{padding:85px 55px 65px;border-radius:28px;border:2px solid #fff;box-shadow:0 9px 28px rgba(40,58,66,.08);margin-top:34px}
.preview-border{background:rgba(255,255,255,.83);border:1px solid rgba(255,255,255,.97)}
/* Real interactive content starts on scroll; no external URL to click. */
.auto-case-demo{margin:45px auto 0;max-width:860px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:35px;align-items:center;padding:35px;border-radius:26px;border:2px solid white;background:linear-gradient(135deg,#f8faf9,#e8f5ed);box-shadow:0 8px 22px rgba(40,68,52,.075)}
.auto-case-demo .screen-window{height:420px;position:relative;display:grid;place-items:center;overflow:hidden}
.auto-case-demo .screen-window img{position:absolute;max-height:395px;max-width:94%;width:auto;opacity:0;transition:opacity .65s ease;filter:drop-shadow(0 9px 10px rgba(42,64,47,.16));}
.auto-case-demo .screen-window img:first-child{opacity:1}
.auto-case-demo h3{font-size:clamp(25px,3vw,35px);font-weight:550;letter-spacing:-.045em}
.auto-case-demo p{font-size:14px;color:#4c6558;line-height:1.75}
.demo-caption{font-size:11px!important;letter-spacing:.075em;color:#47735c!important;text-transform:uppercase;font-weight:650}
@media(max-width:720px){.preview-panel{padding:50px 20px}.auto-case-demo{grid-template-columns:1fr;padding:18px;gap:5px}.auto-case-demo .screen-window{height:360px}.auto-case-demo .screen-window img{max-height:335px}}
@media(prefers-reduced-motion:reduce){.auto-case-demo .screen-window img{transition:none}}


/* PORTFOLIO V9 — Airy, restrained editorial portfolio.
   Based on the user's color / spacing reference. Uses genuine project imagery.
   Only CSS; no network assets or dependencies. */
:root {--bg:#f2f5f7;--ink:#15191e;--muted:#65717c;--line:#e4e9ed;--blue:#7290a3}
html {scroll-behavior:smooth}
body {background:#f2f5f7;color:var(--ink);font-size:16px}
.page-width {width:min(1110px,calc(100% - 80px))}
.header {height:108px;padding:0 max(40px,calc((100vw - 1110px)/2))}
.brand {font-size:13px;font-weight:730;letter-spacing:.14em}
.brand-dot {color:#efb8c6}
.navside {letter-spacing:.08em;color:#74828b}
.pillnav {top:20px;padding:6px;background:rgba(255,255,255,.81);border:2px solid white;box-shadow:0 7px 22px rgba(61,77,87,.10);backdrop-filter:blur(12px)}
.pillnav a {padding:10px 21px;color:#6e7983;font-size:11px}
.pillnav a[aria-current],.pillnav a:hover {background:#fff;color:#19212a}
.work-section {padding:60px 0 52px}
.section-header {align-items:center;gap:42px;margin-bottom:43px}
.section-header h2 {font-family:var(--sans);font-size:clamp(34px,3.95vw,54px);font-weight:720;line-height:1.12;letter-spacing:-.055em;margin:20px 0 0;max-width:780px}
.section-header p {max-width:282px;color:#65707a;font-size:14px;line-height:1.75}
.section-label {color:#8b9aa6;font-size:10px;letter-spacing:.25em}
.project-grid {gap:35px 34px}
.project-card {border:2px solid #fff;border-radius:29px;background:#f8f9fb;box-shadow:0 9px 24px rgba(47,60,67,.10);transform:translateZ(0);isolation:isolate;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease}
.project-card:hover {transform:translateY(-5px);box-shadow:0 20px 34px rgba(47,60,67,.14)}
.project-art {height:410px;padding:27px;isolation:isolate}
.art-room .project-art {background:radial-gradient(ellipse at 48% 55%,rgba(250,225,235,.53),transparent 68%),linear-gradient(145deg,#fbfbfd,#f6f4f8 65%,#f9fafd)}
.art-fresh .project-art {background:radial-gradient(ellipse at 55% 54%,rgba(165,231,201,.69),transparent 69%),linear-gradient(135deg,#f9fcfb,#f0f9f5 70%,#f7fbfa)}
.art-border .project-art {background:radial-gradient(ellipse at 54% 47%,rgba(188,214,233,.58),transparent 71%),#f8fafc}
.art-decode .project-art {background:radial-gradient(ellipse at 55% 50%,rgba(245,223,211,.60),transparent 73%),#fbfaf9}
.project-art::before {height:20%;background:linear-gradient(180deg,rgba(255,255,255,.44),transparent)}
.art-eyebrow {display:inline-block;border-radius:18px;padding:7px 11px;background:rgba(255,255,255,.74);border:1px solid rgba(255,255,255,.94);font-size:10px;font-weight:700;letter-spacing:.1em;color:#54636f;backdrop-filter:blur(6px);box-shadow:none}
.project-status {bottom:16px;left:22px;background:#fbdde6;color:#a1425e;font-size:12px;letter-spacing:0;font-weight:670;padding:8px 15px;box-shadow:none;border:0;text-transform:none}
.art-fresh .project-status {background:#dff5d6;color:#387b36}
.art-border .project-status {background:#e2ecfb;color:#4b6594}
.art-decode .project-status {background:#f6e7dd;color:#9e6d57}
.project-info {background:rgba(249,250,252,.99);min-height:185px;padding:23px 25px 29px;align-items:end;border-top:0}
.project-type {font-size:9px;letter-spacing:.09em;color:#70818c}
.project-info h3 {font-size:25px;font-weight:750;letter-spacing:-.035em;margin:12px 0 8px;color:#11151a}
.project-info p {font-size:14px;line-height:1.55;color:#667079;max-width:350px}
.circle-arrow {height:43px;width:43px;border:1px solid #fff;background:rgba(255,255,255,.8);box-shadow:0 3px 8px rgba(47,67,72,.08);font-size:21px}
.project-card:hover .circle-arrow {background:#fff;border-color:#fff;color:#222}
.room-render {top:90px;height:260px;max-width:82%;left:9%;width:82%;border-width:9px;box-shadow:0 14px 22px rgba(102,100,98,.13)}
/* Showcase authentic screenshots. Do not overlay synthetic app interfaces. */
.fresh-visual.auto-showcase {inset:59px 18px -25px}
.demo-phone {border:0;background:transparent;box-shadow:none;overflow:visible;border-radius:0}
.demo-phone-main {left:4%;top:9px;width:49%;height:375px;transform:rotate(-3deg)}
.demo-phone-secondary {right:2%;top:28px;width:48%;height:372px;transform:rotate(3deg)}
.demo-phone img {object-fit:contain;object-position:top;filter:drop-shadow(0 10px 10px rgba(41,69,49,.15));border-radius:0!important}
.demo-frame {position:absolute;inset:0}
/* Subpages keep the matching project tints and original truthful case study. */
.case-theme-fresh .case-cover,.case-theme-fresh .case-top {background:radial-gradient(ellipse at 48% 43%,rgba(164,230,197,.44),transparent 68%),#f7fbf9}
.preview-theme-room .preview-panel {background:radial-gradient(ellipse at 48% 45%,rgba(248,222,232,.52),transparent 74%),#fbfbfd}
.preview-theme-border .preview-panel {background:radial-gradient(ellipse at 48% 45%,rgba(188,214,233,.55),transparent 74%),#fbfcfd}
.preview-theme-decode .preview-panel {background:radial-gradient(ellipse at 48% 45%,rgba(245,223,211,.50),transparent 74%),#fbfbfa}
@media(min-width:1280px){.page-width{width:min(1110px,calc(100% - 160px))}}
@media(max-width:950px){.page-width{width:calc(100% - 64px)}.section-header h2{font-size:40px}.project-art{height:345px}.demo-phone-main{height:312px}.demo-phone-secondary{height:310px}.room-render{height:215px;top:78px}}
@media(max-width:720px){.page-width{width:calc(100% - 34px)}.header{height:95px;padding:0 20px}.brand{font-size:11px}.navside{display:none}.pillnav{top:16px;left:auto;right:12px;transform:none;padding:4px}.pillnav a{padding:10px 11px;font-size:9px}.work-section{padding:36px 0 40px}.section-header{display:block;margin-bottom:26px}.section-header h2{font-size:clamp(34px,9vw,46px)}.section-header p{margin-top:22px}.project-grid{grid-template-columns:1fr;gap:25px}.project-art{height:330px}.project-info{min-height:150px;padding:21px}.room-render{top:65px;height:220px}.demo-phone-main{height:295px}.demo-phone-secondary{height:290px}.interactive-section{padding-top:48px}}
@media(prefers-reduced-motion:reduce){.project-card{transition:none}.project-card:hover{transform:none}}

/* V10 — clear, airy reference-aligned design system. Added as overrides so all case-study pages keep working. */
:root { --bg:#f4f7fa; --ink:#171d25; --muted:#536170; --blue:#688aab; --line:#e4ebf1; --sans:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif; }
html { background:var(--bg); }
body { background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased; }
/* Restrained powder-blue and soft lavender light at the top, fading out before projects. */
body::before {content:"";position:absolute;z-index:-1;top:0;left:0;right:0;height:525px;background:radial-gradient(ellipse 55% 78% at 27% 5%,rgba(163,215,249,.65),transparent 86%),radial-gradient(ellipse 44% 70% at 87% 4%,rgba(222,219,248,.56),transparent 90%),linear-gradient(180deg,#eff7ff 0%,#f4f7fa 100%);pointer-events:none;}
.page-width {width:min(1160px,calc(100% - 80px));margin-inline:auto;}
.header {height:107px;padding:0 max(40px,calc((100vw - 1160px)/2));position:relative;}
.brand {font-weight:650;letter-spacing:.16em;font-size:12px;}
.navside {font-size:10px;letter-spacing:.16em;color:#6b7b89;}
.pillnav {top:21px;padding:7px;gap:5px;border:2px solid rgba(255,255,255,.92);background:rgba(247,250,255,.52);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);box-shadow:0 12px 30px rgba(74,107,152,.10),inset 0 1px 0 rgba(255,255,255,.96);}
.pillnav a {font-size:12px;letter-spacing:.1em;font-weight:650;padding:12px 24px;color:#637282;}
.pillnav a[aria-current],.pillnav a:hover {background:#fff;color:#1d2530;box-shadow:0 4px 18px rgba(80,110,150,.09);}
.work-section {padding:42px 0 50px;}
.section-header {gap:42px;margin-bottom:37px;align-items:end;}
.section-label {font-size:11px;color:#7c91a5;letter-spacing:.25em;font-weight:650;}
.work-section .section-header h2 {font-size:clamp(32px,3.6vw,52px);line-height:1.16;letter-spacing:-.048em;font-weight:620;max-width:760px;margin:20px 0 0;}
.work-section .section-header p {max-width:270px;font-size:15px;line-height:1.75;color:#657487;margin:0 0 7px;}
.project-grid {gap:32px;grid-template-columns:repeat(2,minmax(0,1fr));}
.project-card {border:2px solid #fff;border-radius:28px;background:rgba(255,255,255,.82);box-shadow:0 14px 32px rgba(67,88,107,.095),0 1px 2px rgba(67,88,107,.05);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s cubic-bezier(.2,.8,.2,1);}
.project-card:hover {transform:translateY(-7px);box-shadow:0 25px 48px rgba(62,87,112,.15);}
.project-art {height:360px;padding:26px;}
.art-eyebrow {display:inline-block;padding:9px 13px;background:rgba(255,255,255,.8);border-radius:999px;font-size:10px;letter-spacing:.14em;font-weight:680;color:#455769;border:1px solid rgba(255,255,255,.9);}
.art-room .project-art {background:radial-gradient(ellipse at 48% 55%,rgba(241,201,215,.32),transparent 64%),linear-gradient(140deg,#fbfafb 2%,#f7edf2 55%,#f6f8fa 100%);}
.art-fresh .project-art {background:radial-gradient(ellipse at 63% 53%,rgba(161,225,182,.38),transparent 72%),linear-gradient(142deg,#f8fdfb 2%,#e8f7ef 58%,#f6fcfa 100%);}
.art-border .project-art {background:linear-gradient(145deg,#fbfdff,#e8f2fb 64%,#f5f9fe);}
.art-decode .project-art {background:linear-gradient(145deg,#fffdfa,#f9f0eb 64%,#fdf8f6);}
.project-info {min-height:154px;padding:24px 27px 29px;background:rgba(255,255,255,.94);align-items:end;}
.project-type {color:#788897;font-size:10px;letter-spacing:.13em;font-weight:680;}
.project-info h3 {font-size:28px;letter-spacing:-.035em;font-weight:650;margin:6px 0 6px;color:#19222a;}
.project-info p {color:#5d6b78;font-size:13.5px;line-height:1.55;max-width:390px;}
.project-status {background:rgba(255,255,255,.88);color:#586d78;letter-spacing:.045em;font-weight:620;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
.circle-arrow {width:43px;height:43px;background:white;border-color:#e1e8ee;color:#2b4255;box-shadow:0 3px 12px rgba(55,80,110,.075);}
.project-card:hover .circle-arrow {background:#e9f2fa;color:#243a4e;}
.room-render {width:79%;left:10.5%;top:88px;height:228px;box-shadow:0 14px 30px rgba(80,72,71,.12);border:10px solid rgba(255,255,255,.93);}
.fresh-visual {inset:49px 24px -50px;}
.demo-phone-main {left:6%;width:42%;height:323px;top:20px;transform:rotate(-5deg);}
.demo-phone-secondary {right:6%;width:41%;height:317px;top:37px;transform:rotate(6deg);}
.demo-phone {border:3px solid #2b2e2c;box-shadow:0 19px 33px rgba(55,85,65,.20);border-radius:21px 21px 0 0;transition:transform .55s ease;}
.project-card:hover .demo-phone-main {transform:rotate(-4deg) translateY(-8px) scale(1.025);}
.project-card:hover .demo-phone-secondary {transform:rotate(5deg) translateY(-8px) scale(1.025);}
/* Keep glass only on edges / navigation, never blur the text or screenshots. */
.interactive-section {padding-top:85px;}
.page-intro h1 {font-size:clamp(48px,6.8vw,92px);letter-spacing:-.055em;}
/* same color palette carries onto real case study */
body:has(.case-cover) .case-cover, body:has(.auto-showcase-case) .case-cover {border:1px solid rgba(255,255,255,.9);}
@media(max-width:900px){.page-width{width:calc(100% - 44px)}.project-grid{gap:22px}.work-section .section-header h2{font-size:clamp(32px,4vw,46px)}.project-art{height:310px}.demo-phone-main{height:280px}.demo-phone-secondary{height:280px}.room-render{height:204px;top:72px}.header{padding-inline:23px}}
@media(max-width:680px){.header{height:104px;padding:0 18px 12px;align-items:end}.brand{font-size:10px}.navside{display:none}.page-width{width:calc(100% - 32px)}.work-section{padding-top:32px}.section-header{display:block;margin-bottom:24px}.work-section .section-header h2{font-size:clamp(30px,8vw,43px);line-height:1.19}.work-section .section-header p{max-width:100%;font-size:14px;margin-top:18px}.project-grid{grid-template-columns:1fr;gap:25px}.project-art{height:342px}.project-info{padding:22px}.pillnav{top:10px;padding:5px}.pillnav a{font-size:10px;padding:10px 15px}.demo-phone-main{height:313px}.demo-phone-secondary{height:310px}.room-render{height:220px}.interactive-section{padding-top:58px}}
@media(prefers-reduced-motion:reduce){.project-card,.demo-phone{transition:none!important}}
/* Ensure the ambient top gradient is visible behind content. */
body::before { z-index:0; }
body > header, body > main, body > footer { position:relative; z-index:1; }
.pillnav { z-index:100; }


/* V11 — legible editorial type and balanced section hierarchy */
:root { --sans: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif; }
body { font-family: var(--sans); font-weight: 400; letter-spacing: normal; }
.section-header h2, .work-section .section-header h2 {
  font-family: var(--sans); font-weight: 570; letter-spacing:-.042em;
  font-size:clamp(31px,3.05vw,46px); line-height:1.16;
  max-width: 830px; text-wrap: balance;
}
.section-header p, .work-section .section-header p { font-size:15px; line-height:1.65; color:#566473; }
.project-info h3 { font-family:var(--sans); font-weight:600; letter-spacing:-.035em; }
.project-info p { font-size:14px; line-height:1.65; color:#53616d; }
.brand { letter-spacing:.15em; font-weight:600; }
.pillnav a { font-family:var(--sans); font-weight:560; letter-spacing:.11em; }
.page-width { width:min(1120px,calc(100% - 88px)); }
.work-section { padding-bottom:130px; }
.project-grid { column-gap:34px; row-gap:66px; }
.project-info { min-height:166px; }
/* Interactive work is secondary to the four product case studies. */
.interactive-section { padding-top:92px; padding-bottom:110px; border-top:1px solid rgba(117,136,149,.15); }
.interactive-section .section-header { margin-bottom:36px; }
.interactive-section .section-header h2 { font-size:clamp(29px,2.8vw,42px); }
.equinox-card {
  width: min(860px,100%); margin:0 auto; grid-template-columns: 44% 56%;
  min-height:232px; border-radius:24px; background:rgba(255,255,255,.94);
  border:1.5px solid rgba(255,255,255,.95);
  box-shadow:0 10px 26px rgba(57,74,87,.075);
}
.equinox-art { min-height:232px; background:#344049; gap:16px; }
.equinox-art > span { font-size:9px; top:16px; left:18px; }
.equinox-art .eq-left, .equinox-art .eq-right { width:85px; height:118px; font-size:11px; border-radius:7px; }
.equinox-art .eq-divider { height:54px; }
.equinox-info { padding:24px 33px; }
.equinox-info h3 { font-size:24px; font-weight:580; letter-spacing:-.035em; margin:9px 0; }
.equinox-info p { font-size:13px; line-height:1.55; }
.equinox-info .project-type { font-size:9px; }
.equinox-info .underlined { margin-top:15px; font-size:12px; }
@media (max-width:900px) {
  .page-width { width:calc(100% - 54px); }
  .project-grid { row-gap:48px; column-gap:23px; }
  .work-section { padding-bottom:95px; }
  .interactive-section { padding-top:76px; }
}
@media (max-width:680px) {
  .page-width { width:calc(100% - 32px); }
  .work-section .section-header h2 { font-size:clamp(30px,7.6vw,41px); }
  .project-grid { row-gap:30px; }
  .work-section { padding-bottom:78px; }
  .interactive-section { padding-top:68px; }
  .equinox-card { grid-template-columns:1fr; width:100%; }
  .equinox-art { min-height:205px; }
  .equinox-info { padding:25px; }
}


/* V12 — recruiting-first, airy pastel system. Shared across all pages.
   Visual treatment adapts from references; no copied design assets.
   Real Freshlings screens are the only rendered software proof. */
:root{--bg:#f3f6f9;--ink:#1b232b;--muted:#52616f;--line:#dfe7eb;--sans:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif}
html{scroll-padding-top:110px}
body{background:var(--bg);color:var(--ink);font-family:var(--sans)}
body::before{position:absolute;z-index:0;top:0;left:0;right:0;height:530px;background:radial-gradient(ellipse 48% 70% at 18% 0%,rgba(162,215,250,.57),transparent 91%),radial-gradient(ellipse 44% 70% at 86% 3%,rgba(217,216,249,.42),transparent 90%),linear-gradient(180deg,#f2f8ff 0%,rgba(243,246,249,0) 100%)}
body > header,body > main,body > footer{position:relative;z-index:1}
.page-width{width:min(1160px,calc(100% - 100px))}
.header{height:110px;padding-inline:max(48px,calc((100vw - 1160px)/2));}
.brand{font-weight:630;letter-spacing:.11em}
.pillnav{position:fixed;left:50%;right:auto;transform:translateX(-50%);top:19px;gap:2px;padding:7px;background:rgba(248,251,255,.62);border:2px solid rgba(255,255,255,.97);border-radius:70px;-webkit-backdrop-filter:blur(17px) saturate(1.13);backdrop-filter:blur(17px) saturate(1.13);box-shadow:0 9px 31px rgba(53,86,126,.13),inset 0 1px 0 rgba(255,255,255,.99);z-index:100}
.pillnav a{font-size:12px;letter-spacing:.1em;padding:13px 28px;font-weight:590;color:#596671}
.pillnav a[aria-current],.pillnav a:hover{background:#fff;color:#1b2530;box-shadow:0 2px 13px rgba(64,82,108,.08)}
/* Increase deliberate breathing room between editorial headline and main work */
.work-section{padding-top:82px;padding-bottom:152px}
.work-section .section-header{display:flex;align-items:end;gap:70px;margin-bottom:100px}
.work-section .section-header>div{max-width:770px;min-width:0}
.work-section .section-header h2{font-family:var(--sans);font-weight:580;font-size:clamp(35px,3.6vw,55px);line-height:1.22;letter-spacing:-.044em;max-width:770px;margin-top:24px;text-wrap:pretty}
.work-section .section-header p{font-size:16px;max-width:275px;line-height:1.8;color:#4a5a68;margin-bottom:8px}
.section-label{color:#7e93a8;letter-spacing:.23em;font-size:11px;font-weight:700}
.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:39px;row-gap:85px}
.project-card{border-radius:31px;overflow:hidden;background:#fff;border:2px solid rgba(255,255,255,1);box-shadow:0 12px 30px rgba(39,58,74,.095),0 0 0 1px rgba(189,201,213,.14);transition:transform .42s ease,box-shadow .42s ease}
.project-card:hover,.project-card:focus-within{transform:translateY(-6px);box-shadow:0 22px 41px rgba(39,58,74,.14),0 0 0 1px rgba(177,197,211,.22)}
.project-art{height:400px;overflow:hidden}
.art-fresh .project-art{background:radial-gradient(ellipse at 51% 50%,rgba(150,230,189,.42),transparent 69%),linear-gradient(125deg,#fcfefd,#e8f7ef 74%,#f7fbfa)}
.art-room .project-art{background:radial-gradient(ellipse at 52% 48%,rgba(246,206,220,.36),transparent 69%),linear-gradient(125deg,#fffcfd,#f9f0f5 77%,#fafbfd)}
.art-border .project-art{background:radial-gradient(ellipse at 52% 47%,rgba(171,205,234,.36),transparent 72%),linear-gradient(125deg,#fbfdff,#edf5fc)}
.art-decode .project-art{background:radial-gradient(ellipse at 52% 48%,rgba(244,212,191,.32),transparent 69%),linear-gradient(125deg,#fffdfc,#faf3ef)}
/* translucent chrome only; never blur artwork or type */
.project-art::before{height:13%;background:linear-gradient(180deg,rgba(255,255,255,.36),transparent)}
.art-eyebrow{background:rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.98);box-shadow:0 3px 14px rgba(54,82,91,.065);color:#465665;font-size:10px;font-weight:720;padding:9px 13px}
.project-status{background:rgba(255,255,255,.92)!important;border:1px solid #fff!important;color:#4b6876!important;font-size:11px}
.art-fresh .project-status{color:#327052!important}
.project-info{min-height:166px;padding:26px 30px 29px;background:rgba(255,255,255,.99)}
.project-info h3{font-family:var(--sans);font-weight:610;font-size:29px;letter-spacing:-.035em;color:#17232d;margin:7px 0}
.project-info p{font-size:14px;line-height:1.65;color:#566571;max-width:370px}
.project-type{color:#728695;font-size:10px;letter-spacing:.11em;font-weight:700}
.circle-arrow{background:#fff;border:1px solid #dae5eb;box-shadow:0 3px 14px rgba(47,72,87,.07);color:#2a4659}
.project-card:hover .circle-arrow{background:#e7f1f9;border-color:#d5e5f0;color:#214763}
/* Showcase supporting art in an understated editorial row */
.interactive-section{padding:98px 0 125px;border-top:1px solid rgba(139,164,185,.16)}
.interactive-section .section-header{margin-bottom:39px;align-items:end}
.interactive-section .section-header h2{font-family:var(--sans);font-size:clamp(27px,2.8vw,39px);font-weight:560;letter-spacing:-.035em}
.interactive-section .section-header p{font-size:14px;max-width:315px}
.equinox-card{max-width:790px;min-height:200px;grid-template-columns:37% 63%;border-radius:24px;box-shadow:0 7px 24px rgba(45,61,70,.05);border:1px solid #e6ebed;background:#fff}
.equinox-art{min-height:200px;background:#eaf0f4;position:relative;color:#344655}
.equinox-art .eq-left,.equinox-art .eq-right{width:74px;height:104px;font-size:10px;box-shadow:none}
.equinox-art > span{color:#728392}
.equinox-info{padding:25px 33px}
.equinox-info h3{font-size:23px;margin:10px 0;font-weight:590;letter-spacing:-.035em}
.equinox-info p{font-size:13px;line-height:1.6;color:#53626d}
/* project pages: same palette as homepage and comfortable reading */
.case-theme-fresh .case-top,.case-theme-fresh .case-cover,.case-theme-fresh .soft-section{background:radial-gradient(ellipse at 60% 42%,rgba(171,229,194,.37),transparent 74%),linear-gradient(120deg,#fbfefd,#eef8f3)}
.preview-theme-room .preview-panel{background:radial-gradient(ellipse at 44% 45%,rgba(245,209,226,.47),transparent 70%),#fffafb}
.preview-theme-border .preview-panel{background:radial-gradient(ellipse at 44% 45%,rgba(198,222,241,.48),transparent 70%),#fafdff}
.preview-theme-decode .preview-panel{background:radial-gradient(ellipse at 44% 45%,rgba(250,219,195,.38),transparent 70%),#fffdfa}
/* Accessibility / responsive behavior */
@media(max-width:1020px){.page-width{width:calc(100% - 68px)}.work-section .section-header{gap:30px;margin-bottom:82px}.work-section .section-header h2{font-size:clamp(32px,4.1vw,45px)}.project-grid{column-gap:25px;row-gap:55px}.project-art{height:335px}}
@media(max-width:690px){.page-width{width:calc(100% - 32px)}.header{height:106px;padding:0 17px 14px;align-items:end}.brand{font-size:10px}.navside{display:none}.pillnav{top:10px;padding:4px}.pillnav a{padding:10px 14px;font-size:10px}.work-section{padding-top:56px;padding-bottom:90px}.work-section .section-header{display:block;margin-bottom:61px}.work-section .section-header h2{font-size:clamp(30px,7.2vw,42px);line-height:1.2;margin-top:15px}.work-section .section-header p{font-size:14px;margin:20px 0 0;max-width:100%}.project-grid{grid-template-columns:1fr;row-gap:30px}.project-art{height:333px}.project-info{min-height:0;padding:23px}.project-info h3{font-size:26px}.interactive-section{padding:78px 0 95px}.interactive-section .section-header{display:block}.interactive-section .section-header p{margin-top:15px}.equinox-card{grid-template-columns:1fr;max-width:100%}.equinox-art{min-height:175px}.equinox-info{padding:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1!important;transform:none!important}.project-card,.demo-phone,.demo-frame,.case-frame{transition:none!important}}

/* Walkthrough can be paused by readers */
.auto-case-demo{position:relative;padding-bottom:55px}
.auto-pause{position:absolute;right:22px;bottom:15px;border:1px solid #b5cfbf;border-radius:999px;background:#fff;color:#2e644e;padding:8px 15px;font-family:inherit;font-size:12px;cursor:pointer}
.auto-pause:hover{background:#eaf5ef}


/* V13 — Unified flowing Freshlings hero: no boxed-off mint poster. */
.case-theme-fresh{background:#f8fafb;}
.case-theme-fresh .header{background:transparent;}
.case-theme-fresh .case{background:linear-gradient(180deg,#f7faff 0%,#f9fbfa 42%,#ffffff 68%);}
.case-theme-fresh .fresh-hero-flow{
  position:relative;
  isolation:isolate;
  background:
    radial-gradient(ellipse 53% 40% at 52% 36%,rgba(180,232,205,.54),transparent 82%),
    radial-gradient(ellipse 45% 35% at 11% 0%,rgba(199,227,252,.66),transparent 82%),
    radial-gradient(ellipse 39% 37% at 91% 3%,rgba(226,226,252,.46),transparent 78%),
    linear-gradient(180deg,#f6faff 0%,#f3faf6 60%,#f8fcfa 87%,#ffffff 100%);
  padding-bottom:0;
}
.case-theme-fresh .fresh-hero-flow::after{
  content:'';position:absolute;left:0;right:0;bottom:-2px;height:175px;
  background:linear-gradient(180deg,rgba(255,255,255,0),#ffffff 100%);
  pointer-events:none;z-index:2;
}
.case-theme-fresh .case-top{
  background:none!important;
  padding-top:clamp(76px,8vw,124px);
  padding-bottom:clamp(58px,7vw,115px);
  position:relative;z-index:3;
}
.case-theme-fresh .case-top h1{
  font-family:var(--sans);font-weight:530;
  font-size:clamp(70px,9vw,126px);
  letter-spacing:-.065em;line-height:1.03;
  margin:32px 0 38px;
  overflow-wrap:anywhere;
}
.case-theme-fresh .case-topline{align-items:center;gap:45px;}
.case-theme-fresh .case-topline p{font-size:clamp(17px,1.8vw,21px);max-width:640px;line-height:1.62;color:#455760;}
.case-theme-fresh .case-cover{
  margin:0 auto;
  width:min(1040px,calc(100% - 100px));
  position:relative;z-index:1;
  min-height:480px;
  padding:10px 22px 0;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  display:flex;gap:45px;align-items:flex-start;justify-content:center;
  overflow:hidden;
}
.case-theme-fresh .case-cover img{
  height:530px;max-width:40%;width:auto;object-fit:contain;align-self:flex-start;
  filter:drop-shadow(0 24px 22px rgba(42,79,62,.14));
}
.case-theme-fresh .case-cover img:nth-child(2){transform:translateY(45px);}
.case-theme-fresh .case-cover > div{display:none;}
.case-theme-fresh .case-facts{background:#ffffff;position:relative;z-index:3;padding-top:80px;padding-bottom:85px;}
.case-theme-fresh .story-section:first-of-type{padding-top:100px;}
/* Section rhythm: airy core work, intentionally quieter supplementary work. */
.work-section .section-header{margin-bottom:clamp(65px,7vw,110px);}
.project-grid{row-gap:clamp(52px,6vw,84px);}
.work-section{padding-bottom:clamp(125px,13vw,190px);}
.interactive-section{padding-top:clamp(90px,9vw,140px);}
.interactive-section .equinox-card{max-width:780px;margin:0 auto;}
.interactive-section .section-header{margin-bottom:62px;}
@media(max-width:900px){
 .case-theme-fresh .case-top{padding-top:85px;padding-bottom:65px;}
 .case-theme-fresh .case-top h1{font-size:clamp(65px,11vw,100px);}
 .case-theme-fresh .case-topline{flex-direction:column;align-items:flex-start;gap:23px;}
 .case-theme-fresh .case-cover{width:calc(100% - 50px);min-height:365px;gap:14px;}
 .case-theme-fresh .case-cover img{height:400px;max-width:45%;}
 .case-theme-fresh .case-facts{padding-top:60px;}
}
@media(max-width:600px){
 .case-theme-fresh .case-top{padding-top:98px;padding-bottom:52px;}
 .case-theme-fresh .case-top h1{font-size:clamp(54px,13vw,84px);letter-spacing:-.06em;margin:20px 0 27px;}
 .case-theme-fresh .case-topline p{font-size:16px;}
 .case-theme-fresh .case-cover{width:calc(100% - 14px);gap:8px;min-height:285px;padding:0 4px;}
 .case-theme-fresh .case-cover img{height:310px;max-width:48%;}
 .case-theme-fresh .case-cover img:nth-child(2){transform:translateY(28px);}
 .case-theme-fresh .fresh-hero-flow::after{height:96px;}
 .case-theme-fresh .case-facts{padding-top:45px;padding-bottom:60px;}
 .work-section .section-header{margin-bottom:50px;}
 .project-grid{row-gap:30px;}
 .work-section{padding-bottom:100px;}
 .interactive-section{padding-top:85px;}
}

/* V14 — About: journey-map editorial timeline */
.about-v14{--journey-ink:#222a30;--journey-muted:#566775;--journey-blue:#7ca6c4;--journey-lavender:#e8ebfb;--journey-mint:#e7f3ec;color:var(--journey-ink);}
.about-v14-inner{width:min(1120px,calc(100% - 84px));margin:0 auto;}
.about-v14-hero{position:relative;padding:95px 0 112px;overflow:hidden;background:radial-gradient(ellipse at 22% 14%,#d7eafa 0%,transparent 49%),radial-gradient(ellipse at 83% 31%,#eeeeff 0%,transparent 47%),linear-gradient(180deg,#f5f8fb,#f9fafb);}
.about-v14-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:75px;align-items:end;margin-top:39px;}
.about-v14-overline{font-size:18px;margin:0 0 19px;color:#495a68;}
.about-v14-hero h1{font-family:var(--sans);font-size:clamp(46px,6.1vw,88px);font-weight:560;letter-spacing:-.065em;line-height:1.08;margin:0;}
.about-v14-hero h1 em,.about-v14-section-head h2 em,.about-v14-future h2 em,.about-v14-archive h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.04em;color:#668eaa;}
.about-v14-intro{font-size:16px;line-height:1.76;color:#4e5f6b;max-width:400px;}
.about-v14-intro p{margin:0 0 15px;}
.about-v14-chips{margin-top:45px;display:flex;gap:9px;flex-wrap:wrap;}
.about-v14-chips span{padding:10px 16px;border:1px solid #ffffffef;background:#ffffff9a;border-radius:30px;color:#516674;font-size:12px;box-shadow:0 3px 14px #41617c0a;}
.about-v14-story{padding-top:125px;padding-bottom:128px;}
.about-v14-section-head{display:flex;gap:55px;justify-content:space-between;align-items:end;margin-bottom:65px;}
.about-v14-section-head h2,.about-v14-future h2,.about-v14-archive h2{font-size:clamp(39px,4.1vw,58px);font-weight:490;letter-spacing:-.05em;margin:19px 0 0;line-height:1.15;}
.about-v14-section-head>p{max-width:310px;font-size:15px;line-height:1.8;color:var(--journey-muted);margin:0;}
.journey-timeline{position:relative;display:grid;grid-template-columns:1fr 1fr;column-gap:130px;row-gap:32px;padding:28px 0;}
.journey-axis{position:absolute;width:3px;left:calc(50% - 1.5px);top:4%;bottom:5%;background:linear-gradient(180deg,#c0dff2,#b6d5df,#b9d8c7,#e9d4b8);border-radius:20px;}
.journey-step{position:relative;display:flex;gap:18px;align-items:flex-start;min-width:0;}
.journey-step.left{grid-column:1;}
.journey-step.right{grid-column:2;transform:translateY(55px);}
.journey-step.left:nth-of-type(odd){margin-top:4px;}
.journey-step.right:nth-of-type(even){margin-top:42px;}
.journey-number{width:51px;height:51px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:2px solid #fff;background:#e4edf5;border-radius:50%;color:#55768c;font-size:16px;font-weight:680;box-shadow:0 5px 16px #6b91a419;}
.journey-step:nth-of-type(3n) .journey-number{background:#e7f0e5;color:#5e8668;}
.journey-step:nth-of-type(4n) .journey-number{background:#f8ede6;color:#a17b63;}
.journey-content{padding:27px 28px 29px;background:#ffffffee;border:1px solid #e4e9e9;box-shadow:0 15px 42px #5a6b7d0b;border-radius:22px;flex:1;}
.journey-phase{font-size:10px;letter-spacing:.2em;font-weight:730;color:#6789a0;}
.journey-content h3{font-size:22px;letter-spacing:-.038em;font-weight:630;margin:15px 0 12px;line-height:1.3;}
.journey-content p{font-size:14px;color:#52616b;line-height:1.8;margin:0 0 20px;}
.journey-skill{display:inline-block;font-size:12px;color:#5b7d91;border-top:1px solid #e6edef;padding-top:13px;}
.about-v14-future{padding:110px 0;background:radial-gradient(ellipse at 75% 45%,#e3f0e5b8,transparent 61%),linear-gradient(120deg,#f4f7f8,#f6f8f3);}
.future-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center;}
.about-v14-future p{color:#52616b;font-size:16px;line-height:1.78;max-width:540px;}
.about-v14-future p strong{font-weight:600;color:#324b58;}
.journey-link{display:inline-block;margin-top:18px;padding:13px 0;border-bottom:1px solid #7c9bad;font-size:14px;font-weight:660;}
.future-cycle{display:grid;grid-template-columns:1fr 25px 1fr;gap:15px 10px;align-items:center;justify-items:center;border:1px solid #ffffff;background:#ffffff90;border-radius:28px;padding:43px 23px;box-shadow:0 20px 55px #5a777812;}
.future-cycle span{padding:15px 12px;border-radius:30px;text-align:center;width:100%;background:#ebf2f4;color:#506b76;font-size:13px;font-weight:650;}
.future-cycle span:nth-of-type(3n){background:#e7f0e5;}
.future-cycle b{font-size:21px;font-weight:400;color:#8aa7a9;}
.about-v14-archive{padding-top:118px;padding-bottom:135px;display:grid;grid-template-columns:.42fr .58fr;gap:68px;align-items:start;}
.about-v14-archive p{font-size:15px;line-height:1.85;color:#52616b;}
.about-v14-archive a{display:block;position:relative;border:1px solid #e2e7e6;background:white;padding:12px;border-radius:19px;box-shadow:0 12px 36px #48596912;overflow:hidden;}
.about-v14-archive img{width:100%;height:auto;border-radius:9px;}
.archive-open{display:block;margin:11px 6px 4px;font-size:13px;color:#435e6a;font-weight:650;}
@media(max-width:850px){.about-v14-hero-grid{gap:25px}.journey-timeline{column-gap:60px}.journey-content{padding:22px}.future-layout{gap:40px}.about-v14-archive{gap:35px}}
@media(max-width:700px){.about-v14-inner{width:calc(100% - 36px)}.about-v14-hero{padding:70px 0 75px}.about-v14-hero-grid{grid-template-columns:1fr;gap:22px;margin-top:25px}.about-v14-hero h1{font-size:clamp(42px,11vw,60px)}.about-v14-intro{font-size:15px}.about-v14-story{padding-top:78px;padding-bottom:80px}.about-v14-section-head{display:block;margin-bottom:33px}.about-v14-section-head>p{margin-top:20px}.journey-timeline{display:block;padding:0 0 0 24px}.journey-axis{left:8px;top:0;bottom:0;width:2px}.journey-step,.journey-step.right{margin:0 0 25px!important;transform:none;display:flex;gap:12px}.journey-number{width:34px;height:34px;font-size:11px;margin-left:-32px;z-index:2}.journey-content{padding:20px 17px}.journey-content h3{font-size:20px}.journey-content p{font-size:13px}.about-v14-future{padding:75px 0}.future-layout{grid-template-columns:1fr;gap:34px}.about-v14-archive{display:block;padding-top:75px;padding-bottom:90px}.about-v14-archive a{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.journey-step{transition:none!important}}

/* V15 — hiring-focused introduction & accessible journey-map viewer */
.intro-v15{padding-top:68px;padding-bottom:82px;position:relative;isolation:isolate}
.intro-v15::before{content:"";position:absolute;inset:-106px -7vw -5px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 21% 10%,rgba(165,213,248,.36),transparent 49%),radial-gradient(ellipse at 82% 8%,rgba(209,209,248,.23),transparent 46%)}
.intro-v15-kicker,.intro-v15-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;letter-spacing:.14em;font-weight:700;color:#587789}
.intro-v15-status{display:flex;align-items:center;gap:10px}
.intro-v15-dot{width:9px;height:9px;border-radius:50%;background:#78b48c;box-shadow:0 0 0 4px #78b48c20}
.intro-v15-year{color:#8b9ba8}
.intro-v15-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(275px,.6fr);gap:clamp(35px,6vw,110px);align-items:end;margin-top:70px}
.intro-v15-greeting{font-size:clamp(17px,1.7vw,22px);font-weight:530;letter-spacing:-.01em;color:#354e5d;margin:0 0 17px}
.intro-v15 h1{font-size:clamp(47px,5.4vw,76px);letter-spacing:-.058em;line-height:1.085;max-width:820px;margin:0;font-weight:630;color:#202930}
.intro-v15 h1 em{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.045em;color:#668ca7;font-weight:400}
.intro-v15-aside{padding-bottom:3px;color:#52616b;font-size:clamp(15px,1.15vw,17px);line-height:1.75}
.intro-v15-aside p{margin:0 0 15px}
.intro-v15-about{display:inline-flex;gap:15px;align-items:center;padding-bottom:5px;border-bottom:1px solid #8ca5b5;font-size:14px;font-weight:650;color:#334b5c;margin-top:7px}
.intro-v15-about:hover{color:#376d96}
.intro-v15-bottom{border-top:1px solid #d6e2e9;margin-top:74px;padding-top:22px}
/* hierarchy: introduction, then projects; project descriptions stay close to thumbnails */
#work.work-section{padding-top:40px}
#work .section-header{margin-bottom:78px}
#work .section-header h2{font-size:clamp(28px,3.15vw,45px);line-height:1.17;letter-spacing:-.035em;max-width:760px}
#work .section-header p{max-width:300px}
.map-lightbox[hidden]{display:none!important}
.map-lightbox{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:52px 25px 24px;background:rgba(16,26,38,.83);backdrop-filter:blur(9px)}
.map-lightbox-frame{position:relative;max-width:min(1360px,96vw);max-height:94vh;display:flex;flex-direction:column;align-items:center;gap:10px}
.map-lightbox-frame img{display:block;max-width:100%;max-height:calc(90vh - 82px);object-fit:contain;box-shadow:0 20px 80px #0006;background:#fff;border-radius:6px}
.map-lightbox-frame p{color:#f4f8fa;font-size:12px;margin:0;text-align:center}
.map-lightbox-close{position:absolute;top:-46px;right:0;display:flex;align-items:center;gap:9px;color:#202b33;background:#fff;border:0;border-radius:999px;padding:8px 17px;font-size:22px;cursor:pointer;box-shadow:0 7px 22px #0004}
.map-lightbox-close span{font-size:13px;font-weight:650}
.about-v14-archive a:focus-visible,.map-lightbox-close:focus-visible{outline:3px solid #3988cd;outline-offset:4px}
@media(max-width:850px){.intro-v15{padding-top:35px;padding-bottom:54px}.intro-v15-grid{grid-template-columns:1fr;gap:22px;margin-top:44px}.intro-v15 h1{font-size:clamp(42px,8vw,67px)}.intro-v15-aside{max-width:640px}.intro-v15-bottom{margin-top:45px}#work.work-section{padding-top:35px}#work .section-header{margin-bottom:50px}}
@media(max-width:560px){.intro-v15-kicker,.intro-v15-bottom{font-size:9px}.intro-v15-year,.intro-v15-bottom>span:last-child{display:none}.intro-v15 h1{font-size:clamp(39px,10vw,54px)}.intro-v15-grid{margin-top:38px}.map-lightbox{padding:58px 12px 18px}.map-lightbox-frame img{max-height:calc(88vh - 74px)}}
@media(prefers-reduced-motion:reduce){.intro-v15 *, .map-lightbox *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.resume-unavailable{opacity:.65;cursor:default;display:inline-block}


/* V16 — reduce decoration, put evidence and legibility first */
/* Stronger interface imagery with no heavy white curtain at the section boundary */
.case-theme-fresh .fresh-hero-flow::after{height:34px;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.42));}
.case-theme-fresh .case-cover{min-height:480px;overflow:visible;align-items:flex-start;}
.case-theme-fresh .case-cover img{filter:drop-shadow(0 10px 13px rgba(27,51,37,.10));}
.case-theme-fresh .case-facts{padding-top:32px;padding-bottom:39px;}
.case-theme-fresh .case-top{padding-bottom:52px;}
.case-theme-fresh .case-top h1{font-size:clamp(58px,7.5vw,110px);margin:20px 0 23px;}
.case-theme-fresh .case-topline p{font-size:clamp(17px,1.5vw,20px);}
.case-theme-fresh .story-section{padding-top:66px;padding-bottom:66px;}
.case-theme-fresh .story-section:first-of-type{padding-top:75px;}
.case-theme-fresh .story-section .section-label{display:none;}
.case-theme-fresh .story-section h2{margin-top:0;margin-bottom:27px;}
.case-theme-fresh .story-section p{line-height:1.65;}
.case-theme-fresh .demo-layout{gap:45px;margin-top:25px;}
.case-theme-fresh .iteration{margin-top:34px;margin-bottom:52px;}
.case-theme-fresh .auto-case-demo{margin-top:28px;}
.case-theme-fresh .case-tags span{background:#e8f1e9;border:1px solid #dfeae1;}
/* Archive: plain legible image, not a nonfunctional enlarged-view link. */
.about-v14-archive{grid-template-columns:1fr;gap:24px;padding-top:75px;padding-bottom:85px;}
.about-v14-archive>div:first-child{max-width:760px;}
.about-v14-archive .archive-image-static{padding:15px;border:1px solid #e2e7e6;background:#fff;border-radius:20px;}
.about-v14-archive .archive-image-static img{width:100%;height:auto;border-radius:8px;}
.about-v14-archive .archive-image-static{box-shadow:0 12px 28px #4859690a;}
.real-app-preview{min-height:380px;display:grid;place-items:center;border-radius:22px;background:#eaf4ed;padding:18px;}
.real-app-preview img{height:390px;max-width:100%;width:auto;object-fit:contain;filter:drop-shadow(0 12px 14px #26442f20);}
@media(max-width:720px){
 .case-theme-fresh .case-top{padding-bottom:40px;}
 .case-theme-fresh .case-top h1{font-size:clamp(54px,13vw,76px);}
 .case-theme-fresh .case-cover{min-height:305px;overflow:hidden;}
 .case-theme-fresh .case-cover img{height:320px;}
 .case-theme-fresh .case-cover img:nth-child(2){transform:translateY(10px);}
 .case-theme-fresh .case-facts{padding-top:24px;padding-bottom:30px;}
 .case-theme-fresh .story-section{padding-top:52px;padding-bottom:52px;}
 .about-v14-archive{padding-top:60px;padding-bottom:65px;}
 .real-app-preview{min-height:280px;}.real-app-preview img{height:315px;}
}


/* V17 — tighter editorial hierarchy, a single continuous ambient gradient. */
:root{--bg:#f3f6f9;--ink:#202830;--muted:#516170;}
html,body{background:#f3f6f9;}
body{position:relative;isolation:isolate;}
body::before{
 content:"";position:absolute;inset:0 0 auto; height:1050px;z-index:0;pointer-events:none;
 background:
  radial-gradient(ellipse 65% 48% at 16% 3%,rgba(171,218,249,.61) 0%,rgba(171,218,249,.27) 49%,transparent 100%),
  radial-gradient(ellipse 55% 46% at 90% 2%,rgba(222,220,247,.44) 0%,rgba(222,220,247,.18) 54%,transparent 100%),
  linear-gradient(180deg,#eff7ff 0%,#f0f6fb 35%,#f3f6f9 90%,#f3f6f9 100%);
}
body>header,body>main,body>footer{z-index:1;position:relative;}
.intro-v15{padding-top:34px;padding-bottom:48px;}
.intro-v15::before{display:none;}
.intro-v17-eyebrow{font-size:12px;letter-spacing:.2em;font-weight:690;color:#68869b;margin-bottom:16px;}
.intro-v15-grid{margin-top:24px;align-items:center;}
.intro-v15 h1{font-size:clamp(43px,5.1vw,72px);line-height:1.12;letter-spacing:-.048em;}
.intro-v15-bottom{display:none!important;}
#work.work-section{padding-top:45px;padding-bottom:70px;}
#work .section-header{margin-bottom:45px;}
#work .section-header h2{font-size:clamp(29px,3.2vw,44px);font-weight:570;}
.project-grid{row-gap:52px;}
.interactive-section{border-top:1px solid rgba(114,145,165,.16);padding-top:48px!important;padding-bottom:75px!important;}
.interactive-section .section-header{margin-bottom:32px!important;}
.interactive-section .section-header h2{font-size:clamp(28px,3vw,40px);}
.interactive-section .equinox-card{max-width:740px;}
.project-art::before{opacity:.32;}
/* Soft feathered project themes; no abrupt color banding or hard gradient stop. */
.art-fresh .project-art{background:radial-gradient(ellipse 78% 80% at 50% 48%,rgba(192,236,212,.69),rgba(219,246,233,.25) 72%,transparent 100%),#f9fcfb;}
.art-room .project-art{background:radial-gradient(ellipse 78% 80% at 48% 49%,rgba(248,217,229,.64),rgba(252,236,242,.22) 74%,transparent 100%),#fbfafb;}
.art-border .project-art{background:radial-gradient(ellipse 78% 80% at 49% 49%,rgba(207,224,244,.68),transparent 100%),#fbfcfe;}
.art-decode .project-art{background:radial-gradient(ellipse 78% 80% at 49% 49%,rgba(248,227,210,.65),transparent 100%),#fefbfa;}
.case-theme-fresh .fresh-hero-flow{
 background:radial-gradient(ellipse 62% 48% at 53% 42%,rgba(183,233,202,.48),transparent 100%),radial-gradient(ellipse 55% 46% at 12% 2%,rgba(188,222,248,.38),transparent 100%),radial-gradient(ellipse 44% 39% at 93% 0%,rgba(230,224,248,.28),transparent 100%),linear-gradient(180deg,#f3f9fd 0%,#f7fbfa 78%,#ffffff 100%);
}
.case-theme-fresh .fresh-hero-flow::after{height:0!important;display:none!important;}
.case-theme-fresh .case-cover{overflow:visible;}
.case-theme-fresh .case-facts{padding-top:28px;}
.page-intro{padding-top:65px;padding-bottom:45px;}
.page-intro h1{font-size:clamp(49px,6.3vw,90px);}
/* About uses its own subtle but seamless blue/lavender wash. */
.about-v14-hero{background:radial-gradient(ellipse 62% 76% at 16% 4%,rgba(187,222,249,.48),transparent 100%),radial-gradient(ellipse 53% 75% at 91% 4%,rgba(224,223,248,.33),transparent 100%),linear-gradient(180deg,#f3f8fc,#f3f6f9);}
@media(max-width:850px){.intro-v15{padding-top:20px;padding-bottom:33px}.intro-v15-grid{margin-top:22px}#work.work-section{padding-top:28px;padding-bottom:55px}.interactive-section{padding-top:42px!important}.project-grid{row-gap:36px}}
@media(max-width:600px){.intro-v15 h1{font-size:clamp(38px,10vw,55px)}.intro-v17-eyebrow{font-size:10px}.intro-v15-aside{font-size:14px}#work .section-header{margin-bottom:30px}.interactive-section{padding-top:32px!important}}


/* V18 — continuous page-level ambient light, no stacked hero rectangles. */
html,body{background:#f3f6f9;}
body{position:relative;isolation:isolate;min-height:100vh;}
/* The same atmospheric layer starts behind the navigation and runs seamlessly
   down the hero. Its bottom fades into the shared page background. */
body::before{
  content:"";position:absolute;z-index:0;pointer-events:none;
  inset:0 0 auto 0;height:1180px;
  background:
    radial-gradient(ellipse 78% 57% at 16% 0%,rgba(177,220,248,.58) 0%,rgba(202,231,250,.24) 53%,transparent 100%),
    radial-gradient(ellipse 68% 55% at 89% 0%,rgba(220,219,246,.44) 0%,rgba(235,232,250,.20) 55%,transparent 100%),
    linear-gradient(180deg,rgba(247,250,253,.25) 0%,rgba(243,246,249,.0) 100%);
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 46%,rgba(0,0,0,.72) 66%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 0%,#000 46%,rgba(0,0,0,.72) 66%,transparent 100%);
}
body>header,body>main,body>footer{position:relative;z-index:1;}
/* No independently painted blue rectangle underneath the About hero. */
.about-v14,.about-v14-hero{background:transparent!important;}
/* On Freshlings, keep the same blue/lilac light and introduce mint as a
   transparent, soft wash with its own feathered edges. */
.case-theme-fresh .case{background:transparent!important;}
.case-theme-fresh .fresh-hero-flow{
  background:transparent!important;
  position:relative;isolation:isolate;
}
.case-theme-fresh .fresh-hero-flow::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  inset:-110px 0 -150px;
  background:radial-gradient(ellipse 67% 55% at 52% 48%,rgba(175,230,196,.43) 0%,rgba(207,242,222,.19) 58%,transparent 100%);
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 20%,#000 72%,transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0%,#000 20%,#000 72%,transparent 100%);
}
.case-theme-fresh .fresh-hero-flow::after{display:none!important;}
.case-theme-fresh .case-top,.case-theme-fresh .case-cover{background:transparent!important;}
.case-theme-fresh .case-facts{background:transparent!important;}
/* Slightly airier editorial rhythm requested for Home; preserve card scale. */
@media(min-width:851px){
  .intro-v15{padding-bottom:82px;}
  #work.work-section{padding-top:60px;}
  .project-grid{row-gap:76px;}
}
@media(max-width:850px){
  .intro-v15{padding-bottom:48px;}
  #work.work-section{padding-top:42px;}
  .project-grid{row-gap:49px;}
}
@media(max-width:600px){
  .intro-v15{padding-bottom:38px;}
  #work.work-section{padding-top:32px;}
  .project-grid{row-gap:35px;}
  body::before{height:960px;}
}


/* V19 Visual Exploration — editorial identity + purposeful dimensionality */
:root { --v19-ink:#202a32; --v19-blue:#6489a4; }
body { color:var(--v19-ink); }
/* Deliberately restrained headline: large, not oversized, with just one editorial accent. */
.intro-v15 h1 {font-size:clamp(44px,4.65vw,70px);line-height:1.105;max-width:890px;letter-spacing:-.055em;font-weight:620;}
.intro-v15 h1 em {font-weight:400;letter-spacing:-.035em;}
.intro-v15-grid{align-items:center;}
.intro-v15-aside {max-width:410px;}
.signature-line{margin-top:32px;display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:#49687b;font-size:12px;letter-spacing:.025em;font-weight:590;}
.signature-line span{border:1px solid rgba(136,170,190,.35);background:rgba(255,255,255,.62);border-radius:100px;padding:8px 12px;}
.signature-line i{color:#7d9bae;font-size:15px;font-style:normal;}
/* Keep copy legible but let visual art exceed the ordinary template vocabulary. */
.project-card{overflow:hidden;transform:translateZ(0);transition:box-shadow .4s ease, transform .4s ease,border-color .3s ease;}
.project-card .project-art{isolation:isolate;overflow:hidden;}
.project-art .art-eyebrow{z-index:6;}
.project-card .project-info{position:relative;z-index:6;}
.project-card .project-art > div:not(.border-trace){transition:transform .65s cubic-bezier(.2,.7,.2,1);}
.project-card:hover{transform:translateY(-5px);box-shadow:0 21px 55px rgba(57,78,91,.13);}
.project-card:hover .project-art > div:not(.border-trace){transform:translateY(-7px) scale(1.022);}
/* Spatial layering of genuine screenshots. Do not change the app's actual UI. */
.art-fresh .project-art{background:radial-gradient(ellipse 63% 69% at 55% 55%,rgba(166,228,192,.59),rgba(219,246,231,.3) 67%,transparent 100%),#fafcfb;}
.fresh-visual{filter:drop-shadow(0 16px 14px rgba(45,89,64,.09));}
.art-fresh .demo-phone-main{transform:rotate(-7deg) translateY(6px);transform-origin:50% 85%;}
.art-fresh .demo-phone-secondary{transform:rotate(8deg) translateY(24px);transform-origin:50% 85%;}
.art-fresh:hover .demo-phone-main{transform:rotate(-5deg) translateY(-7px) scale(1.025);}
.art-fresh:hover .demo-phone-secondary{transform:rotate(6deg) translateY(13px) scale(1.025);}
/* Each project uses a distinct visual composition while sharing the card system. */
.art-room .room-render{transform:rotate(-3deg) scale(.95);filter:drop-shadow(0 13px 12px rgba(77,65,63,.09));}
.art-room:hover .room-render{transform:rotate(-1deg) translateY(-8px) scale(.98)!important;}
.art-border .border-art{transform:rotate(2deg);}
.art-border:hover .border-art{transform:rotate(0deg) translateY(-5px) scale(1.02)!important;}
.art-decode .decode-art{transform:rotate(-2deg);}
.art-decode:hover .decode-art{transform:rotate(0deg) translateY(-5px) scale(1.02)!important;}
.visual-chip{position:absolute;z-index:6;bottom:28px;right:25px;font-size:11px;letter-spacing:.015em;font-weight:620;padding:11px 15px;border:1px solid rgba(255,255,255,.85);border-radius:100px;background:rgba(255,255,255,.82);color:#395167;box-shadow:0 8px 25px rgba(51,77,88,.09);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none;transform:rotate(-3deg);}
.chip-fresh{background:rgba(251,255,251,.84);color:#4b765f;transform:rotate(4deg)}
.chip-room{color:#9a6680;transform:rotate(-4deg)}
.chip-border{color:#58799d;transform:rotate(3deg)}
.chip-decode{color:#a47f61;transform:rotate(-3deg)}
/* Preserve a distinction between primary case studies and the secondary installation. */
.interactive-section .equinox-card{max-width:740px;}
.interactive-section .section-header h2{font-weight:540;letter-spacing:-.04em;}
/* Never compromise readability or motion preferences. */
@media(max-width:900px){.intro-v15 h1{font-size:clamp(40px,6.5vw,60px)}.visual-chip{bottom:14px;right:14px;font-size:10px;}}
@media(max-width:600px){.intro-v15 h1{font-size:clamp(36px,9.5vw,49px)}.signature-line{gap:6px;margin-top:23px}.signature-line span{font-size:10px;padding:7px 9px}.visual-chip{display:none}.art-fresh .demo-phone-main{transform:rotate(-3deg)}.art-fresh .demo-phone-secondary{transform:rotate(5deg) translateY(8px)}}
@media(prefers-reduced-motion:reduce){.project-card,.project-card .project-art>div,.art-fresh .demo-phone-main,.art-fresh .demo-phone-secondary{transition:none!important;transform:none!important}.project-card:hover,.project-card:hover .project-art>div{transform:none!important}}


/* V20 — Spatial editorial meets restrained personal collage. */
body{background-color:#f7f9fc;}
.editorial-hero{position:relative;isolation:isolate;min-height:670px;padding-top:155px;padding-bottom:104px;overflow:visible;}
.editorial-hero:before{content:"";position:absolute;z-index:-1;top:-110px;left:50%;transform:translateX(-50%);width:100vw;height:820px;pointer-events:none;background:radial-gradient(ellipse 41% 52% at 72% 32%,rgba(173,195,255,.55),transparent 77%),radial-gradient(ellipse 50% 64% at 23% 21%,rgba(192,231,255,.63),transparent 78%),radial-gradient(ellipse 40% 47% at 68% 79%,rgba(241,211,233,.39),transparent 82%);}
.editorial-hero .intro-v15-grid{position:relative;z-index:2;max-width:900px;}
.editorial-hero .intro-v15-main{max-width:700px;}
.editorial-hero h1{font-size:clamp(48px,5.0vw,79px);line-height:1.065;letter-spacing:-.067em;max-width:780px;}
.editorial-hero h1 em{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.05em;font-weight:400;color:#5879ad;}
.editorial-hero .intro-v15-aside{max-width:310px;align-self:end;background:rgba(255,255,255,.52);border-left:1px solid rgba(114,137,170,.22);padding:14px 18px;backdrop-filter:blur(11px);border-radius:0 14px 14px 0;}
.editorial-hero .intro-v15-aside p{font-size:15px;line-height:1.65;}
.hero-notebook{font-family:Georgia,serif;font-style:italic;color:#6784aa!important;font-size:14px!important;margin-top:14px!important;}
.hero-gallery{position:absolute;z-index:1;right:max(-18px,calc((100vw - 1560px)/-4));top:114px;width:min(43vw,570px);height:480px;pointer-events:none;perspective:900px;}
.hero-gallery:before{content:"";position:absolute;inset:21% 8%;border-radius:50%;filter:blur(40px);background:radial-gradient(circle,rgba(168,206,245,.49),rgba(239,211,237,.31) 54%,transparent 76%);}
.hero-orbit{position:absolute;top:44%;left:13%;height:36%;width:89%;border:1.5px solid rgba(116,154,221,.49);border-radius:50%;transform:rotate(-18deg);}
.orbit-b{transform:rotate(24deg) scale(.8);border-color:rgba(157,175,218,.32);}
.hero-shot{position:absolute;margin:0;overflow:hidden;background:#fff;border:8px solid rgba(255,255,255,.86);box-shadow:0 20px 45px rgba(51,66,92,.17);border-radius:25px;}
.hero-shot img{display:block;width:100%;height:100%;object-fit:cover;}
.hero-shot-phone{width:36%;height:85%;left:30%;top:7%;transform:rotate(-8deg);z-index:3;}
.hero-shot-phone img{object-fit:cover;object-position:top;}
.hero-shot-detail{width:29%;height:64%;right:2%;top:15%;transform:rotate(9deg);z-index:2;}
.hero-shot-room{width:31%;height:39%;left:0;bottom:12%;transform:rotate(7deg);z-index:1;border-radius:17px;}
.hero-note{position:absolute;z-index:5;padding:11px 17px;background:rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.95);box-shadow:0 10px 24px rgba(76,94,121,.10);font:italic 17px Georgia,serif;color:#537292;letter-spacing:-.01em;border-radius:8px;}
.hero-note-one{left:3%;top:15%;transform:rotate(-8deg);}
.hero-note-one span{color:#c37eaa}.hero-note-two{right:1%;bottom:4%;transform:rotate(5deg);}
.hero-scribble{position:absolute;right:12%;top:0;font-size:34px;color:#c7a0da;transform:rotate(18deg);}
.v20-work{position:relative;z-index:3;padding-top:25px;}
.v20-work .section-header{margin-bottom:42px;}
.v20-work .project-grid{row-gap:65px;column-gap:36px;}
.project-card .project-art{position:relative;}
.real-project-art{position:absolute!important;inset:0;overflow:hidden;transform:none!important;}
.real-project-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .7s cubic-bezier(.2,.8,.2,1);filter:none;}
.project-card:hover .real-project-art img{transform:scale(1.045);}
.art-border .real-project-art img{object-position:52% 48%;}
.art-room .real-project-art img{object-position:50% 46%;}
.art-decode .real-project-art img{object-position:50% 48%;}
.art-room .project-art,.art-border .project-art,.art-decode .project-art{background:#edf1f6;}
.v20-art-caption{position:absolute;z-index:5;bottom:21px;left:22px;color:#2d4150;background:rgba(255,255,255,.88);padding:9px 13px;border-radius:20px;font-size:11px;letter-spacing:.08em;font-weight:600;box-shadow:0 5px 20px rgba(34,52,64,.09);}
.project-card .art-eyebrow{background:rgba(255,255,255,.91);padding:8px 12px;border-radius:100px;}
.project-card .project-status{z-index:7;}
.interactive-section .equinox-art{position:relative;overflow:hidden;background:#eef0f5;}
.interactive-section .equinox-art img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;}
.equinox-image-tag{position:absolute;bottom:20px;left:20px;padding:10px 14px;border-radius:18px;color:#233349;background:rgba(255,255,255,.84);font-size:11px;letter-spacing:.06em;}
@media(max-width:1150px){.hero-gallery{opacity:.72;right:-60px;width:42vw;}.editorial-hero .intro-v15-grid{max-width:780px}.editorial-hero h1{max-width:610px;}}
@media(max-width:900px){.editorial-hero{min-height:0;padding-top:145px;padding-bottom:35px;}.hero-gallery{position:relative;top:auto;right:auto;width:min(100%,560px);height:390px;margin:20px auto 0;opacity:1;}.editorial-hero .intro-v15-grid{max-width:none;}.editorial-hero h1{font-size:clamp(44px,8vw,68px)}.editorial-hero .intro-v15-aside{max-width:100%;}.v20-work .project-grid{row-gap:36px;}}
@media(max-width:600px){.editorial-hero{padding-top:112px;padding-bottom:12px;}.editorial-hero h1{font-size:clamp(37px,10vw,53px)}.hero-gallery{height:310px;margin-top:16px}.hero-shot{border-width:5px;border-radius:17px}.hero-note{font-size:11px;padding:8px 11px}.v20-work .project-grid{row-gap:28px}.v20-art-caption{font-size:9px;bottom:13px;left:13px}.real-project-art img{object-position:center;}}
@media(prefers-reduced-motion:reduce){.real-project-art img{transition:none!important}.project-card:hover .real-project-art img{transform:none!important}}


/* V21 — layout repair: visual composition without obscuring content */
.editorial-hero{display:block!important;min-height:0!important;padding-top:42px!important;padding-bottom:76px!important;overflow:visible!important;}
.editorial-hero .intro-v15-grid{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)!important;gap:clamp(34px,5vw,85px)!important;max-width:100%!important;align-items:center!important;margin-top:40px!important;}
.editorial-hero .intro-v15-main{max-width:100%!important;min-width:0;}
.editorial-hero h1{font-size:clamp(44px,4.4vw,68px)!important;max-width:100%!important;overflow-wrap:normal;line-height:1.12!important;}
.editorial-hero .intro-v15-aside{background:transparent!important;border:0!important;backdrop-filter:none!important;box-shadow:none!important;border-radius:0!important;padding:0!important;margin-top:24px!important;max-width:570px!important;}
.editorial-hero .intro-v15-aside p{font-size:15px!important;line-height:1.65!important;margin-bottom:9px!important;}
.editorial-hero .intro-v15-aside p:nth-of-type(2),.editorial-hero .hero-notebook{display:none!important;}
.hero-gallery{position:relative!important;z-index:1!important;top:auto!important;right:auto!important;width:100%!important;max-width:520px!important;height:440px!important;margin:0 auto!important;opacity:1!important;overflow:visible;pointer-events:none;}
.hero-gallery .hero-shot-phone{left:16%!important;top:2%!important;width:47%!important;height:93%!important;transform:rotate(-5deg)!important;}
.hero-gallery .hero-shot-detail{left:auto!important;right:2%!important;top:17%!important;width:37%!important;height:70%!important;transform:rotate(6deg)!important;}
.hero-gallery .hero-shot{border-width:6px!important;box-shadow:0 18px 38px rgba(45,63,91,.14)!important;}
.hero-gallery:before{inset:12% 4%!important;filter:blur(25px)!important;}
.v20-work{padding-top:12px!important;}
.v20-work .project-grid{column-gap:32px!important;row-gap:44px!important;}
.project-card .project-art{overflow:hidden!important;}
.project-card .project-status,.project-card .v20-art-caption{display:none!important;}
.project-card .art-eyebrow{display:none!important;}
.v21-back{display:inline-flex;align-items:center;gap:6px;position:relative;z-index:7;margin:20px 0 12px max(24px,calc((100vw - 1280px)/2));padding:10px 15px;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid #d9e4ea;color:#385468;font-size:13px;font-weight:600;box-shadow:0 4px 17px #507a9810;}
.subpage .v21-back{margin-left:0;}
.case-theme-fresh .fresh-hero-flow{padding-top:0!important;}
.case-theme-fresh .case-top{padding-top:35px!important;padding-bottom:40px!important;}
.case-theme-fresh .case-top h1{font-size:clamp(60px,8vw,112px)!important;margin:22px 0 24px!important;}
.case-theme-fresh .case-topline{gap:16px!important;}
.case-theme-fresh .case-cover{min-height:390px!important;overflow:hidden!important;}
.case-theme-fresh .case-cover img{height:430px!important;}
.case-theme-fresh .case-facts{padding-top:36px!important;}
@media(max-width:960px){.editorial-hero .intro-v15-grid{grid-template-columns:1fr!important;gap:22px!important;}.hero-gallery{height:330px!important;max-width:440px!important;}.editorial-hero{padding-top:32px!important;padding-bottom:45px!important;}.editorial-hero h1{font-size:clamp(42px,7vw,65px)!important;}.editorial-hero .intro-v15-main{max-width:680px!important;}}
@media(max-width:600px){.editorial-hero{padding-top:25px!important;padding-bottom:32px!important;}.editorial-hero .intro-v15-grid{margin-top:18px!important;}.editorial-hero h1{font-size:clamp(37px,9vw,50px)!important;}.hero-gallery{height:290px!important;max-width:340px!important;}.hero-gallery .hero-shot{border-width:4px!important;}.v21-back{margin:15px 0 5px 16px;font-size:12px;}.subpage .v21-back{margin-left:0;}.case-theme-fresh .case-cover{min-height:280px!important;}.case-theme-fresh .case-cover img{height:320px!important;}}
@media(prefers-reduced-motion:reduce){.hero-gallery .hero-shot{transition:none!important}.project-card{transition:none!important}}

/* V22 — one consistent back link per case study, no duplicates */
.v21-back{display:none!important}
.page-back-row{width:100%;display:flex;align-items:center;justify-content:flex-start;padding:14px 0 20px;margin:0;}
.case>.page-back-row{width:min(1280px,calc(100% - 92px));margin:0 auto;}
.page-back-link{display:inline-flex;align-items:center;font-size:14px;font-weight:620;line-height:1.4;color:#3b596c;border-bottom:1px solid #abc0cd;padding:5px 0 7px;transition:color .2s;}
.page-back-link:hover{color:#1f3140;}
.subpage>.page-back-row + .page-intro{padding-top:30px;}
.subpage>.page-back-row + .preview-top{padding-top:15px;}
.preview-panel{padding-top:53px;}
.case-theme-fresh .case-top{padding-top:26px!important;}
.about-v14-hero{padding-top:43px;}
@media(max-width:700px){.case>.page-back-row{width:calc(100% - 36px)}.page-back-row{padding:10px 0 14px}.about-v14-hero{padding-top:35px}.subpage>.page-back-row + .page-intro{padding-top:24px;}}

/* V23 — Freshlings breadcrumb uses exactly the same grid as its title.
   The V22 1280px custom breadcrumb width caused the left-edge mismatch. */
.case-theme-fresh .case > .page-back-row.page-width,
.case-theme-fresh .case-top.page-width {
  width: min(1160px, calc(100% - 100px));
  margin-inline: auto;
}
@media (max-width: 1020px) {
  .case-theme-fresh .case > .page-back-row.page-width,
  .case-theme-fresh .case-top.page-width { width: calc(100% - 68px); }
}
@media (max-width: 690px) {
  .case-theme-fresh .case > .page-back-row.page-width,
  .case-theme-fresh .case-top.page-width { width: calc(100% - 32px); }
}

/* V24 — center the original Design Journey Map within its framed archive. */
.about-v14-archive .archive-image-static {
  box-sizing:border-box;
  width:100%;
  max-width:1120px;
  margin-inline:auto;
  padding:clamp(12px,2vw,24px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.about-v14-archive .archive-image-static img {
  box-sizing:border-box;
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  margin-inline:auto;
  object-fit:contain;
}


/* V25: The map is one image, framed with equal whitespace on ALL four sides.
   Remove the previous max-width:1120px restriction which caused the map to appear
   narrow with visually unequal side space in wide desktop screenshots. */
.about-v14-archive .archive-image-static{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:24px !important;
  box-sizing:border-box !important;
  border:1px solid #e2e7e6;
  border-radius:22px;
  background:#fff;
  overflow:hidden;
}
.about-v14-archive .archive-image-static > img{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:3px;
  object-fit:contain;
}
@media(max-width:700px){
  .about-v14-archive .archive-image-static{padding:12px !important;}
}
/* Freshlings: small, readable, research-grounded add-food flow */
.add-food-flow{margin-top:30px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.add-food-step{padding:clamp(22px,3vw,38px);border:1px solid #e0e9d9;border-radius:24px;background:#fcfefa;min-width:0;}
.add-food-step:nth-child(2){background:#eef7df;}
.add-food-step .step-number{display:inline-block;color:#4a721d;font-size:12px;letter-spacing:.14em;font-weight:750;margin-bottom:13px;}
.add-food-step h3{margin:0 0 15px;font-size:clamp(20px,2.5vw,28px);letter-spacing:-.035em;color:#233029;}
.add-food-step p,.add-food-step li{color:#4d5d52;font-size:15px;line-height:1.75;}
.add-food-step ul{margin:12px 0 0;padding-left:19px;}
.add-food-step li+li{margin-top:5px;}
.add-food-caption{margin-top:19px;padding:16px 20px;border-left:3px solid #87ad57;background:#f5faee;border-radius:0 12px 12px 0;font-size:15px;line-height:1.7;color:#41583c;}
.add-food-footnote{font-size:12px;line-height:1.65;color:#76857c;margin-top:15px;}
@media(max-width:680px){.add-food-flow{grid-template-columns:1fr;gap:12px}.add-food-step{padding:20px;}}


/* V26 — unified inner page left edge, same principle as correct AI Room Planner reference. */
.case-theme-fresh .case > .page-back-row.page-width,
.case-theme-fresh .case-top.page-width {
 width:min(1160px,calc(100% - 100px))!important;
 margin-inline:auto!important;
 padding-left:0!important;padding-right:0!important;box-sizing:border-box!important;
}
.case-theme-fresh .fresh-hero-flow .case-top{margin-left:auto!important;margin-right:auto!important;}
@media(max-width:1020px){.case-theme-fresh .case > .page-back-row.page-width,.case-theme-fresh .case-top.page-width{width:calc(100% - 68px)!important}}
@media(max-width:690px){.case-theme-fresh .case > .page-back-row.page-width,.case-theme-fresh .case-top.page-width{width:calc(100% - 32px)!important}}
.v26-core,.v26-freshness,.v26-design-system,.v26-recipes,.v26-states{clear:both;}
.v26-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:30px 0 18px;}
.v26-steps>div{padding:22px 18px;border:1px solid #dbe5df;border-radius:17px;background:#f5faf6;min-height:145px;}
.v26-steps span{font-size:11px;font-weight:750;letter-spacing:.12em;color:#517459;display:block;margin-bottom:18px;}
.v26-steps strong{font-size:17px;line-height:1.35;display:block;color:#26382e;}
.v26-caption{font-size:14px!important;color:#687b74!important;line-height:1.55!important;margin:14px 0 0!important;}
.v26-two-col{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:start;}
.v26-status-list{display:grid;gap:10px;}
.v26-status-list>div{display:flex;align-items:center;justify-content:space-between;border-radius:14px;padding:16px 20px;background:#f4f8ef;gap:15px;}
.v26-status-list>div:nth-child(2){background:#f6f1e2}.v26-status-list>div:nth-child(3){background:#f8e9e4}.v26-status-list>div:nth-child(4){background:#eeeff0}
.v26-status-list b{font-size:16px;color:#263632;}.v26-status-list span{font-size:14px;color:#51626a;}
.v26-full-slide{display:block;width:100%;height:auto;border:1px solid #e2ebe5;border-radius:18px;box-shadow:0 12px 35px rgba(34,54,42,.06);margin:28px auto 0;}
@media(max-width:800px){.v26-steps{grid-template-columns:repeat(2,minmax(0,1fr));}.v26-two-col{grid-template-columns:1fr;gap:20px;}}
@media(max-width:470px){.v26-steps{grid-template-columns:1fr;}.v26-steps>div{min-height:0}.v26-status-list>div{align-items:start;flex-direction:column}}

.about-v14-archive .archive-image-static{padding:24px!important;}
.about-v14-archive .archive-image-static>img{width:100%!important;max-width:100%!important;margin:0!important;}
@media(max-width:700px){.about-v14-archive .archive-image-static{padding:12px!important;}}

/* V27 — About: consistent editorial alignment.
   Align the hero's content edge with the global header (1160px).
   Align the right description with the first headline line, not with the bottom of the heading. */
@media (min-width: 701px) {
  .about-v14-hero > .about-v14-inner {
    width: min(1160px, calc(100% - 84px));
  }
  .about-v14-hero-grid {
    align-items: start;
  }
  .about-v14-hero-grid > .about-v14-intro {
    align-self: start;
    margin-top: 75px;
  }
}
@media (max-width: 700px) {
  .about-v14-hero-grid > .about-v14-intro { margin-top: 0; }
}


/* V28 — ABOUT ONLY: quiet continuous background, tighter editorial rhythm,
   and original Design Journey Map displayed directly without a frame. */
body.about-page-v28 { background:#f3f6f9 !important; }
body.about-page-v28::before {
  /* A single continuous light wash, never repeated for individual sections. */
  position:absolute;
  height:1120px;
  background:
    radial-gradient(ellipse 75% 60% at 18% 0%,rgba(178,220,250,.46),transparent 100%),
    radial-gradient(ellipse 65% 62% at 92% 0%,rgba(225,223,248,.29),transparent 100%);
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.78) 40%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.78) 40%,transparent 100%);
}
body.about-page-v28 .about-v14-hero,
body.about-page-v28 .about-v14-story,
body.about-page-v28 .about-v14-future,
body.about-page-v28 .about-v14-archive {
  background:transparent !important;
  background-image:none !important;
}
body.about-page-v28 .about-v14-hero { padding-bottom:42px; }
body.about-page-v28 .about-v14-story { padding-top:56px; padding-bottom:54px; }
body.about-page-v28 .about-v14-section-head { margin-bottom:30px; }
body.about-page-v28 .journey-timeline { row-gap:14px; padding:12px 0 24px; }
body.about-page-v28 .journey-step.right { transform:translateY(22px); }
body.about-page-v28 .journey-step.right:nth-of-type(even) { margin-top:15px; }
body.about-page-v28 .about-v14-future { padding:55px 0 60px; }
body.about-page-v28 .about-v14-archive { padding-top:55px; padding-bottom:82px; gap:22px; }
body.about-page-v28 .about-v14-archive .archive-image-static {
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  width:100% !important;
  max-width:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  background:transparent !important;
  overflow:visible !important;
}
body.about-page-v28 .about-v14-archive .archive-image-static > img {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  object-fit:contain;
}
@media(max-width:700px){
  body.about-page-v28 .about-v14-hero {padding-bottom:30px;}
  body.about-page-v28 .about-v14-story {padding-top:42px;padding-bottom:35px;}
  body.about-page-v28 .about-v14-section-head{margin-bottom:27px;}
  body.about-page-v28 .journey-timeline{padding:0 0 3px 24px;}
  body.about-page-v28 .journey-step.right{transform:none;}
  body.about-page-v28 .about-v14-future{padding:43px 0 45px;}
  body.about-page-v28 .about-v14-archive{padding-top:42px;padding-bottom:60px;}
}

/* V29: remove asymmetric whitespace baked into the map asset; keep its frame transparent. */
body.about-page-v29 .about-v14-archive .archive-image-static{padding:0!important;margin:0!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important;}
body.about-page-v29 .about-v14-archive .archive-image-static img{display:block;width:100%;height:auto;object-fit:contain;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;}

body.about-page-v29 { background:#f3f6f9 !important; }
body.about-page-v29::before {
  /* A single continuous light wash, never repeated for individual sections. */
  position:absolute;
  height:1120px;
  background:
    radial-gradient(ellipse 75% 60% at 18% 0%,rgba(178,220,250,.46),transparent 100%),
    radial-gradient(ellipse 65% 62% at 92% 0%,rgba(225,223,248,.29),transparent 100%);
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.78) 40%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.78) 40%,transparent 100%);
}
body.about-page-v29 .about-v14-hero,
body.about-page-v29 .about-v14-story,
body.about-page-v29 .about-v14-future,
body.about-page-v29 .about-v14-archive {
  background:transparent !important;
  background-image:none !important;
}
body.about-page-v29 .about-v14-hero { padding-bottom:42px; }
body.about-page-v29 .about-v14-story { padding-top:56px; padding-bottom:54px; }
body.about-page-v29 .about-v14-section-head { margin-bottom:30px; }
body.about-page-v29 .journey-timeline { row-gap:14px; padding:12px 0 24px; }
body.about-page-v29 .journey-step.right { transform:translateY(22px); }
body.about-page-v29 .journey-step.right:nth-of-type(even) { margin-top:15px; }
body.about-page-v29 .about-v14-future { padding:55px 0 60px; }
body.about-page-v29 .about-v14-archive { padding-top:55px; padding-bottom:82px; gap:22px; }
body.about-page-v29 .about-v14-archive .archive-image-static {
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  width:100% !important;
  max-width:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  background:transparent !important;
  overflow:visible !important;
}
body.about-page-v29 .about-v14-archive .archive-image-static > img {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  object-fit:contain;
}
@media(max-width:700px){
  body.about-page-v29 .about-v14-hero {padding-bottom:30px;}
  body.about-page-v29 .about-v14-story {padding-top:42px;padding-bottom:35px;}
  body.about-page-v29 .about-v14-section-head{margin-bottom:27px;}
  body.about-page-v29 .journey-timeline{padding:0 0 3px 24px;}
  body.about-page-v29 .journey-step.right{transform:none;}
  body.about-page-v29 .about-v14-future{padding:43px 0 45px;}
  body.about-page-v29 .about-v14-archive{padding-top:42px;padding-bottom:60px;}
}


/* V30: streamlined visual evidence and clearer hero image. */
.v30-feature-cover{width:min(100% - 48px,1120px);margin:44px auto 0;min-height:unset;overflow:hidden;border-radius:32px;background:transparent;box-shadow:0 18px 60px rgba(39,56,55,.09);}
.v30-hero-board{height:600px;position:relative;background:radial-gradient(ellipse at 54% 56%,#d2f4dc 0%,#ebf9f1 39%,#f9faf9 76%);border:1px solid rgba(255,255,255,.96);border-radius:32px;overflow:hidden;}
.v30-hero-top{position:absolute;top:34px;left:44px;right:44px;z-index:2;display:flex;justify-content:space-between;font-size:12px;font-weight:700;letter-spacing:.17em;color:#47735a;}
.v30-phone-center{position:absolute;top:96px;bottom:-75px;left:50%;transform:translateX(-50%);width:320px;filter:drop-shadow(0 23px 24px rgba(40,59,45,.18));}
.v30-phone-center img{display:block;width:100%;height:100%;object-fit:contain;object-position:top center;}
.v30-hero-bottom{position:absolute;bottom:28px;left:36px;right:36px;display:flex;align-items:center;justify-content:space-between;gap:18px;z-index:3;}
.v30-label-pill{display:inline-block;padding:12px 20px;background:#e1f2cf;border-radius:30px;color:#2a6843;font-size:14px;font-weight:700;}
.v30-hero-note{background:rgba(255,255,255,.9);padding:10px 18px;border-radius:24px;font-size:14px;color:#4b5d57;}
.v30-card-art{height:100%;min-height:400px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 51% 58%,#bcefd6 0,#e8f8ef 48%,#f9faf8 83%);}
.v30-card-top{display:flex;justify-content:space-between;gap:12px;position:absolute;top:28px;left:28px;right:28px;font-size:11px;letter-spacing:.13em;font-weight:700;color:#547161;z-index:2;}
.v30-card-image{position:absolute;top:84px;bottom:-80px;left:50%;transform:translateX(-50%);width:min(55%,320px);filter:drop-shadow(0 22px 23px rgba(30,50,40,.15));transition:transform .45s ease;}
.v30-card-image img{width:100%;height:100%;display:block;object-fit:contain;object-position:top center;}
.project-card:hover .v30-card-image{transform:translateX(-50%) scale(1.035)}
.v30-card-pill{position:absolute;left:30px;bottom:25px;padding:10px 17px;border-radius:24px;background:#e8f5d6;font-size:14px;font-weight:700;color:#347344;z-index:3;}
.v30-step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:44px 0 0;}
.v30-step-grid>div{background:#f4f8f5;border:1px solid #e2eae3;border-radius:20px;padding:32px;}
.v30-step-grid small,.v30-before-after-label{font-size:11px;letter-spacing:.15em;color:#54836b;font-weight:750;}
.v30-step-grid h3{font-size:28px;letter-spacing:-.04em;margin:16px 0 8px;}
.v30-step-grid p{font-size:16px;color:#586b65;line-height:1.65;margin:0;}
.v30-screens-intro{display:flex;justify-content:space-between;gap:32px;align-items:end;}
.v30-screens-intro>p{max-width:360px;color:#61746e;}
.v30-screen-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:32px;}
.v30-screen-grid figure{display:flex;flex-direction:column;align-items:center;margin:0;padding:32px 22px 22px;background:#f4f7f4;border:1px solid #e6eae7;border-radius:24px;min-width:0;}
.v30-screen-grid img{height:400px;width:100%;object-fit:contain;filter:drop-shadow(0 12px 17px rgba(25,37,28,.11));}
.v30-screen-grid figcaption{align-self:stretch;display:flex;flex-direction:column;gap:5px;margin-top:20px;color:#54615c;font-size:14px;line-height:1.5;}
.v30-screen-grid figcaption b{color:#253b2e;font-size:17px;}
.v30-role{border-top:1px solid #dae5df;}
.v30-before-after-label{display:block;margin:13px 0 0;}
@media(max-width:760px){.v30-feature-cover{width:calc(100% - 28px);margin-top:24px}.v30-hero-board{height:480px}.v30-hero-top{top:24px;left:22px;right:22px;font-size:9px}.v30-phone-center{width:235px;top:88px;bottom:-45px}.v30-hero-bottom{left:16px;right:16px;bottom:16px}.v30-hero-note{display:none}.v30-card-art{min-height:310px}.v30-card-image{top:72px;width:52%;}.v30-step-grid,.v30-screen-grid{grid-template-columns:1fr}.v30-screen-grid img{height:340px}.v30-screens-intro{display:block}}
@media(prefers-reduced-motion:reduce){.v30-card-image{transition:none!important}}

/* v30.1 — Freshlings home card: transparent phone cutout, no dark screenshot matte. */
.v30-card-image{width:min(52%,295px);top:84px;bottom:-105px;filter:drop-shadow(0 18px 22px rgba(30,50,40,.13));}
.v30-card-image img{object-fit:contain;object-position:top center;}
@media(max-width:760px){.v30-card-image{width:51%;top:72px;bottom:-90px;}}


/* V31 — portfolio cards: clean reference-inspired spacing and lighter chrome.
   Scoped to the home Selected Work section; case studies retain their design. */
@media (min-width: 1060px) {
  .v20-work.page-width { width: min(1200px, calc(100% - 112px)); }
}
.v20-work .project-grid { column-gap:26px!important; row-gap:44px!important; align-items:stretch; }
.v20-work .project-card {
  border:1px solid rgba(255,255,255,.88)!important;
  border-radius:30px;
  background:#fff;
  box-shadow:0 8px 24px rgba(39,58,74,.065),0 0 0 1px rgba(169,184,197,.09);
}
.v20-work .project-card::after {
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68);
}
.v20-work .project-card:hover, .v20-work .project-card:focus-within {
  box-shadow:0 18px 40px rgba(39,58,74,.11),0 0 0 1px rgba(169,184,197,.14);
}
.v20-work .project-art {height:390px;}
.v20-work .project-info {
  padding:26px 30px 30px;
  min-height:170px;
  border-top:0;
}
.v20-work .project-info h3 {font-size:clamp(26px,2.2vw,30px);margin:9px 0 8px;}
.v20-work .project-info p {font-size:14px;line-height:1.55;max-width:430px;}
.v20-work .v30-card-art {min-height:0;height:100%;}
.v20-work .v30-card-image {top:81px;bottom:-100px;width:min(51%,290px);}
.v20-work .v30-card-top {left:32px;right:32px;top:29px;}
.v20-work .v30-card-pill {display:none!important;}
@media (max-width: 1059px) {
  .v20-work .project-grid {column-gap:24px!important;}
  .v20-work .project-art {height:340px;}
  .v20-work .project-info {padding:23px 25px 27px;min-height:168px;}
  .v20-work .v30-card-image {top:74px;bottom:-93px;width:51%;}
}
@media (max-width: 690px) {
  .v20-work .project-grid {grid-template-columns:1fr;row-gap:26px!important;}
  .v20-work .project-art {height:330px;}
  .v20-work .project-info {padding:22px 23px 25px;min-height:0;}
  .v20-work .v30-card-top {left:20px;right:20px;top:22px;font-size:9px;}
  .v20-work .v30-card-image {top:65px;bottom:-86px;width:50%;}
}

/* V31.1 — Narrow centered Selected Work layout, matching the reference.
   Reduce the width of the ENTIRE two-column section, not the card border. */
@media (min-width: 901px) {
  #work.v20-work.page-width {
    width: min(1120px, calc(100% - 112px)) !important;
    max-width: 1120px !important;
    margin-left: auto;
    margin-right: auto;
  }
  #work.v20-work .project-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px !important;
  }
}
@media (max-width: 900px) {
  #work.v20-work.page-width { width: calc(100% - 44px) !important; }
}
@media (max-width: 690px) {
  #work.v20-work.page-width { width: calc(100% - 32px) !important; }
}


/* V31.2 hero cleanup */
.editorial-hero .intro-v15-about{display:none!important;}
.hero-gallery .hero-shot img{object-fit:contain!important;object-position:center top!important;background:transparent!important;}
.hero-gallery .hero-shot{background:transparent!important;overflow:visible!important;}

/* V31.3 — Secondary interactive project: compact horizontal showcase */
@media (min-width: 721px) {
  .interactive-section .section-header {
    width: min(820px, 100%);
    margin: 0 auto 28px !important;
    align-items: end;
  }
  .interactive-section .section-header h2 {font-size:clamp(30px,2.9vw,40px);}
  .interactive-section .section-header p {max-width:250px;font-size:13px;}
  .interactive-section .equinox-card {
    display:grid;
    width:min(820px,100%);
    max-width:820px !important;
    grid-template-columns:44% minmax(0,56%);
    min-height:0;
    height:300px;
    margin:0 auto;
    border-radius:26px;
    border:1px solid rgba(226,233,238,.9);
    box-shadow:0 12px 32px rgba(49,66,78,.065);
  }
  .interactive-section .equinox-art {
    min-height:0;
    height:100%;
  }
  .interactive-section .equinox-art img {object-fit:cover;object-position:center 48%;}
  .interactive-section .equinox-info {padding:28px 34px;}
  .interactive-section .equinox-info h3 {font-size:clamp(22px,2vw,27px);margin:10px 0 12px;}
  .interactive-section .equinox-info p {font-size:13px;line-height:1.6;}
  .interactive-section .equinox-info .underlined {margin-top:20px;}
}
@media (max-width: 720px) {
  .interactive-section .equinox-card {width:100%;max-width:100%;grid-template-columns:1fr;height:auto;}
  .interactive-section .equinox-art {height:220px;min-height:220px;}
  .interactive-section .equinox-info {padding:25px;}
}

/* V31.4: Equinox spans the same left/right grid edges as Selected Work,
   while staying short to signal a secondary project. */
@media (min-width: 901px) {
  .interactive-section.page-width {
    width: min(1120px, calc(100% - 112px)) !important;
    max-width: 1120px !important;
    margin-left:auto !important; margin-right:auto !important;
  }
}
@media (min-width: 721px) and (max-width: 900px) {
  .interactive-section.page-width {
    width:calc(100% - 44px) !important;
    margin-left:auto !important; margin-right:auto !important;
  }
}
@media (min-width: 721px) {
  .interactive-section .section-header {
    width:100% !important; max-width:none !important;
    margin-left:0 !important; margin-right:0 !important;
  }
  .interactive-section .equinox-card {
    width:100% !important; max-width:none !important;
    margin-left:0 !important; margin-right:0 !important;
    height:300px !important; min-height:0 !important;
    grid-template-columns:44% minmax(0, 56%) !important;
  }
}
@media (max-width: 720px) {
  .interactive-section.page-width {width:calc(100% - 44px) !important;}
}
@media (max-width: 690px) {
  .interactive-section.page-width {width:calc(100% - 32px) !important;}
}


/* V31.4 accent update — use each project's visual palette, preserve original layout. */
#work .project-grid .project-card .project-type {
  display:inline-block!important; width:fit-content;
  padding:8px 13px; border-radius:999px;
  background:var(--work-accent-bg)!important;
  color:var(--work-accent-ink)!important;
  font-size:10px; font-weight:700; line-height:1.4;
  letter-spacing:.08em;
}
#work .project-grid .art-fresh {--work-accent-bg:#e1f0d1;--work-accent-ink:#38763d;}
#work .project-grid .art-room {--work-accent-bg:#e8e8f1;--work-accent-ink:#646481;}
#work .project-grid .art-border {--work-accent-bg:#e2eefa;--work-accent-ink:#547394;}
#work .project-grid .art-decode {--work-accent-bg:#f7e7dc;--work-accent-ink:#95634b;}
#work .project-grid .art-fresh .v30-card-top {color:#507c64!important;}
#work .project-grid .project-card .circle-arrow {transition:background .2s,color .2s,border-color .2s;}
#work .project-grid .project-card:hover .circle-arrow {
  background:var(--work-accent-bg)!important; color:var(--work-accent-ink)!important;
  border-color:var(--work-accent-bg)!important;
}


/* V31.4 FONT PREVIEW — reference-inspired typography; layout unchanged */
:root { --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif; }
body { font-family: var(--sans); }

/* Black project titles: tighter and clean, like the reference. */
#work .project-card .project-info h3,
.interactive-section .equinox-info h3 {
  font-family: var(--sans) !important;
  font-weight: 700 !important;
  letter-spacing: -0.045em !important;
  line-height: 1.19 !important;
  color: #171b1f !important;
}

/* Header title: matching black typography, retain the contrasting blue italic. */
.editorial-hero h1 {
  font-family: var(--sans) !important;
  font-weight: 700 !important;
  letter-spacing: -0.063em !important;
  line-height: 1.105 !important;
  color: #20272d !important;
}
.editorial-hero h1 em {
  font-family: Georgia, "Times New Roman", serif !important;
  font-style: italic;
  font-weight: 400 !important;
  letter-spacing: -0.045em !important;
  color: #5d7fb6 !important;
}
.editorial-hero .intro-v15-greeting {
  font-family: var(--sans) !important;
  font-weight: 500 !important;
  letter-spacing: -0.028em !important;
}
.editorial-hero .intro-v15-aside,
#work .project-card .project-info p,
.interactive-section .equinox-info p {
  font-family: var(--sans) !important;
  font-weight: 400 !important;
  letter-spacing: -0.014em !important;
}

/* Reference-inspired small labels: crisp, without altering existing accent colors. */
#work .project-grid .project-card .project-type {
  font-family: var(--sans) !important;
  font-weight: 650 !important;
}
#work .section-header h2,
.interactive-section .section-header h2 {
  font-family: var(--sans) !important;
  font-weight: 700 !important;
  letter-spacing: -0.05em !important;
}

/* Freshlings editorial case study — static vertical layout; no carousel */
.fc-page{background:#fff;color:#191f21} .fc-page .header{background:#fff} .fc-container{width:min(1120px,calc(100% - 76px));margin-inline:auto} .fc-back{padding:10px 0 40px;color:#64717a;font-size:13px}.fc-back a:hover,.fc-next:hover{text-decoration:underline}.fc-kicker{font-size:11px;letter-spacing:.2em;font-weight:750;color:#4e8664}.fc-intro{padding:42px 0 74px}.fc-intro-title{display:grid;grid-template-columns:1.5fr .7fr;gap:62px;align-items:end}.fc-intro h1{font-size:clamp(68px,9vw,124px);font-weight:730;letter-spacing:-.075em;line-height:1;margin:18px 0 24px}.fc-dot{color:#92bd83}.fc-tagline{font-size:clamp(21px,2.5vw,30px);line-height:1.36;max-width:700px;letter-spacing:-.03em;margin:0}.fc-summary{font-size:16px;line-height:1.75;color:#63707a}.fc-facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #e1e8e5;padding-top:33px;margin-top:70px;gap:20px}.fc-facts div{border-left:2px solid #a3d6b1;padding-left:16px}.fc-facts span{display:block;font-size:10px;color:#7b878c;letter-spacing:.15em;font-weight:750;margin-bottom:12px}.fc-facts strong{font-size:13px;line-height:1.65;font-weight:550}.fc-hero-showcase{background:radial-gradient(ellipse at 49% 43%,#d0e9e0 0%,#eaf4f1 36%,#eff3ff 76%);overflow:hidden}.fc-hero-inner{width:min(1240px,calc(100% - 50px));margin:auto;position:relative;padding:55px 0 0}.fc-hero-label{font-size:11px;letter-spacing:.21em;color:#4e8067;font-weight:750;text-align:center}.fc-hero-phones{display:flex;justify-content:center;align-items:flex-end;gap:clamp(12px,4vw,65px);height:540px;margin-top:34px}.fc-hero-phones img{height:590px;max-width:31%;width:auto;object-fit:contain;object-position:bottom;filter:drop-shadow(0 13px 18px #51675b24)}.fc-hero-phones img:nth-child(2){height:550px;transform:translateY(20px)}.fc-hero-phones img:nth-child(3){height:520px;transform:translateY(26px)}.fc-section{padding-top:115px;padding-bottom:115px}.fc-section-title{max-width:820px;margin-bottom:50px}.fc-section h2,.fc-section-title h2,.fc-learning h2,.fc-outcome h2{font-size:clamp(37px,4.7vw,63px);line-height:1.13;letter-spacing:-.055em;font-weight:700;margin:17px 0 0}.fc-page h2 em{font-family:Georgia,serif;font-weight:400;color:#628b7f}.fc-two-col{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.fc-two-col p{font-size:16px;color:#5d6970;line-height:1.8;margin:0 0 16px}.fc-two-col .fc-lead{font-weight:600;font-size:clamp(21px,2vw,27px);line-height:1.48;color:#25332c}.fc-note{font-size:13px!important;color:#7b878a!important}.fc-section-desc{font-size:16px;color:#66747a;max-width:690px;line-height:1.75;margin:23px 0 0}.fc-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.fc-steps article{padding:32px 29px;border:1px solid #e5ebe7;border-radius:22px;background:#f8fbf9}.fc-steps article span,.fc-iteration-grid article>div>span{font-size:11px;letter-spacing:.15em;color:#619077;font-weight:750}.fc-steps h3{font-size:30px;letter-spacing:-.04em;margin:22px 0 12px}.fc-steps p,.fc-iteration-grid p{color:#62717a;line-height:1.68;font-size:14px}.fc-feature-band{background:#f5f8f7;padding:110px 0 100px}.fc-four-phones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.fc-four-phones figure{margin:0;min-width:0;text-align:center}.fc-four-phones img{width:100%;height:475px;object-fit:contain;filter:drop-shadow(0 9px 14px #253b2c19)}.fc-four-phones figcaption{display:grid;gap:6px;margin-top:22px}.fc-four-phones figcaption b{font-size:17px;letter-spacing:-.02em}.fc-four-phones figcaption span{font-size:13px;color:#738087}.fc-feature-row{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;margin:0 0 100px}.fc-feature-row:last-child{margin-bottom:0}.fc-feature-row.fc-reverse .fc-feature-copy{order:2}.fc-feature-row.fc-reverse .fc-feature-image{order:1}.fc-feature-copy h2{font-size:clamp(33px,3.9vw,49px);letter-spacing:-.05em;line-height:1.18;margin:18px 0 25px}.fc-feature-copy>p{line-height:1.82;color:#5c686f;font-size:16px}.fc-rationale{border-left:3px solid #afd8b0;padding-left:20px;margin-top:30px}.fc-rationale b{font-size:12px;color:#477455}.fc-rationale p{color:#56645c;font-size:14px;line-height:1.7}.fc-feature-image{height:570px;border-radius:26px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;padding:28px 28px 0}.fc-feature-image img{height:570px;width:auto;max-width:94%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 13px 18px #4e68501c)}.fc-mint{background:radial-gradient(ellipse at 50% 50%,#d3eee1,#f0f8f4 78%)}.fc-blue{background:radial-gradient(ellipse at 50% 50%,#d8e7f4,#f2f7fa 78%)}.fc-cream{background:radial-gradient(ellipse at 50% 50%,#eee9d8,#faf9f3 78%)}.fc-iteration{background:#f6f8f9;padding:112px 0}.fc-iteration-grid{display:grid;grid-template-columns:1fr;gap:29px}.fc-iteration-grid article{display:grid;grid-template-columns:270px minmax(0,1fr);gap:28px;align-items:center;padding:25px;border-radius:24px;background:white;border:1px solid #e8eef0}.fc-iteration-grid h3{font-size:25px;letter-spacing:-.04em;line-height:1.25;margin:14px 0}.fc-iteration-grid img{width:100%;border-radius:9px;height:auto}.fc-learning{padding-bottom:70px}.fc-testing{border-radius:28px;background:#edf7f0;display:grid;grid-template-columns:1fr 1fr;gap:55px;padding:54px}.fc-testing h3{font-size:29px;line-height:1.3;letter-spacing:-.04em}.fc-testing p,.fc-testing-points span{font-size:14px;line-height:1.7;color:#5b7161}.fc-testing-points>div{padding:14px 0;border-bottom:1px solid #cddfd2;display:grid;gap:6px}.fc-testing-points strong{font-size:15px}.fc-outcome{max-width:880px}.fc-outcome>p{font-size:18px;line-height:1.85;color:#637078;margin:28px 0 38px}.fc-next{font-weight:650;font-size:14px;border-bottom:1px solid #839c8d;padding-bottom:8px}.fc-page .footer{background:#fff}@media(max-width:800px){.fc-container{width:min(100% - 42px,680px)}.fc-intro-title,.fc-two-col,.fc-feature-row,.fc-testing{grid-template-columns:1fr;gap:27px}.fc-facts{grid-template-columns:repeat(2,1fr);gap:28px}.fc-intro{padding:25px 0 53px}.fc-hero-phones{height:370px;gap:8px}.fc-hero-phones img{height:410px;max-width:32%}.fc-hero-phones img:nth-child(2){height:385px}.fc-hero-phones img:nth-child(3){height:365px}.fc-section{padding-top:74px;padding-bottom:74px}.fc-four-phones{grid-template-columns:repeat(2,1fr);row-gap:48px}.fc-four-phones img{height:350px}.fc-feature-row{margin-bottom:60px}.fc-feature-row.fc-reverse .fc-feature-copy,.fc-feature-row.fc-reverse .fc-feature-image{order:initial}.fc-feature-image{height:460px}.fc-feature-image img{height:460px}.fc-iteration-grid article{grid-template-columns:1fr}.fc-steps{grid-template-columns:1fr}.fc-testing{padding:28px}.fc-feature-band,.fc-iteration{padding:75px 0}}@media(max-width:480px){.fc-hero-inner{width:calc(100% - 14px)}.fc-hero-phones{height:300px}.fc-hero-phones img{height:330px}.fc-hero-phones img:nth-child(2){height:306px}.fc-hero-phones img:nth-child(3){height:293px}.fc-four-phones{gap:12px}.fc-four-phones img{height:285px}.fc-feature-image{height:390px}.fc-feature-image img{height:390px}.fc-intro h1{font-size:64px}}


/* Freshlings editorial PDF-informed sections: responsive, scroll-first */
.fc-strategy-expanded>h2,.fc-details>h2,.fc-design-grid h2,.fc-system-strip h2{font-size:clamp(34px,4vw,54px);letter-spacing:-.05em;line-height:1.12;margin:20px 0 28px}
.fc-contrast{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:40px 0 22px}.fc-contrast>div{border:1px solid #e5eae6;border-radius:20px;padding:32px;background:#f9fbf8}.fc-contrast>div:last-child{background:#e9f3e5}.fc-contrast span,.fc-detail-grid article>span{font-size:11px;font-weight:750;letter-spacing:.16em;color:#4b8464}.fc-contrast h3,.fc-detail-grid h3{font-size:24px;letter-spacing:-.035em;margin:14px 0}.fc-contrast p,.fc-detail-grid p,.fc-design-grid p{line-height:1.8;color:#5e6c70}.fc-system-strip{background:#f5f8f5;padding:80px 0}.fc-flow-four{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:34px}.fc-flow-four article{border-top:2px solid #aacb9e;padding:20px 12px 10px 0}.fc-flow-four b{font-size:19px;letter-spacing:-.03em}.fc-flow-four p{font-size:14px;line-height:1.7;color:#60706a}.fc-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:40px}.fc-detail-grid article{padding:29px;border-radius:22px;border:1px solid #e5ece6;background:#f9fbf9}.fc-detail-grid small{display:block;font-size:12px;line-height:1.75;color:#7b8680;border-top:1px solid #dfe9df;padding-top:16px;margin-top:20px}.fc-design-system{background:#f2f6ee;padding:90px 0}.fc-design-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:9%;align-items:center}.fc-swatch-row{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.fc-swatch-row>div{min-width:0;font-size:11px;color:#627267;line-height:1.5}.fc-swatch-row i{display:block;height:75px;border-radius:12px;margin-bottom:12px}.fc-type-sample{margin-top:30px;padding:25px;background:#fff;border-radius:18px;display:grid;gap:8px}.fc-type-sample strong{font-size:34px;letter-spacing:-.03em;color:#735543}.fc-type-sample span{font-size:11px;color:#69746f}.fc-type-sample p{margin:0;font-size:14px}.fc-evidence-boundary{font-size:13px;line-height:1.7;color:#7b8580;max-width:700px;margin:-25px 0 40px}
@media(max-width:800px){.fc-contrast,.fc-detail-grid,.fc-design-grid{grid-template-columns:1fr}.fc-flow-four{grid-template-columns:repeat(2,1fr)}.fc-design-system,.fc-system-strip{padding:68px 0}}@media(max-width:480px){.fc-flow-four{grid-template-columns:1fr}.fc-contrast>div,.fc-detail-grid article{padding:24px}.fc-swatch-row i{height:56px}}

/* Native case-study revisions — no PDF page images */
.fc-process .fc-steps{grid-template-columns:repeat(4,minmax(0,1fr))}
.fc-process .fc-steps article{padding:25px 21px}
.fc-process .fc-steps h3{font-size:23px}
.fc-add-diagram{background:#f3f8f3;border:1px solid #e1ece3;border-radius:28px;padding:32px 38px}
.fc-add-step{background:#fff;border:1px solid #e0e8df;border-radius:20px;padding:24px 28px}
.fc-add-number{color:#407a59;font-size:11px;font-weight:750;letter-spacing:.14em}
.fc-add-step h3{font-size:23px;letter-spacing:-.04em;margin:12px 0}
.fc-add-step ul{padding-left:19px;margin:10px 0 0;color:#5b6a64;line-height:1.9;font-size:14px}
.fc-add-arrow{text-align:center;color:#7eaa84;font-size:24px;padding:8px}
.fc-add-caption{font-size:12px;color:#728178;line-height:1.6;margin:19px 0 0}
.fc-native-iteration{display:block!important;padding:36px 42px!important}
.fc-native-iteration h3{font-size:clamp(25px,2.8vw,35px);max-width:700px;margin:14px 0 22px}
.fc-iteration-columns{display:grid;grid-template-columns:1.2fr .8fr;gap:35px;align-items:center}
.fc-iteration-state{padding:24px;border-radius:18px;background:#f6faf7;margin-bottom:14px}
.fc-iteration-state b{font-size:11px;letter-spacing:.1em;color:#4d8962}
.fc-iteration-state p{margin:10px 0 0!important;font-size:15px!important;line-height:1.7!important}
.fc-iteration-copy small{display:block;font-size:12px;color:#809087;line-height:1.6}
.fc-iteration-device{background:radial-gradient(ellipse,#d8efdf,#f5f9f6);border-radius:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:430px;padding:30px 20px 15px}
.fc-iteration-device img{height:385px!important;width:auto!important;max-width:90%;object-fit:contain;border-radius:0!important;filter:drop-shadow(0 10px 12px #314c3921)}
.fc-iteration-device span{font-size:11px;letter-spacing:.1em;color:#668474;margin-top:12px}
@media(max-width:920px){.fc-process .fc-steps{grid-template-columns:repeat(2,1fr)}.fc-iteration-columns{grid-template-columns:1fr}.fc-native-iteration{padding:25px!important}}
@media(max-width:520px){.fc-process .fc-steps{grid-template-columns:1fr}.fc-add-diagram{padding:16px}.fc-add-step{padding:20px}.fc-iteration-device{min-height:350px}.fc-iteration-device img{height:300px!important}}

/* Freshlings hiring-ready case study refinements */
.fc-compare-stack{display:grid;gap:44px;}
.fc-native-compare{border-radius:28px;background:#fff;border:1px solid #e1e9e4;padding:clamp(20px,3.5vw,42px);box-shadow:0 10px 28px rgba(36,57,41,.045);}
.fc-compare-heading{margin-bottom:24px;}
.fc-compare-heading h3{font-size:clamp(24px,2.8vw,37px);line-height:1.18;letter-spacing:-.04em;margin:12px 0 0;}
.fc-compare-devices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.fc-compare-devices figure{margin:0;border-radius:21px;background:#f6f9f4;overflow:hidden;display:flex;flex-direction:column;}
.fc-compare-device{height:340px;display:flex;justify-content:center;align-items:center;padding:20px 14px;background:radial-gradient(circle at 50% 45%,#e8f4e4,transparent 75%);}
.fc-compare-device img{max-height:100%;max-width:100%;width:auto;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(32,43,36,.09))}
.fc-compare-devices figcaption{padding:20px 22px 25px;display:grid;gap:10px;line-height:1.6;color:#4f6256;font-size:14px;}
.fc-compare-devices figcaption strong{font-size:11px;letter-spacing:.14em;color:#3e741d;}
.fc-recruiter-proof{padding-top:36px;}
.fc-proof-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.fc-proof-grid article{padding:27px 24px;background:#eff7ea;border-radius:19px;}
.fc-proof-grid article:nth-child(2){background:#eff2f8;}
.fc-proof-grid article:nth-child(3){background:#fbf6ee;}
.fc-proof-grid article span{font-size:11px;letter-spacing:.14em;font-weight:700;color:#50752c;}
.fc-proof-grid h3{font-size:21px;line-height:1.3;letter-spacing:-.035em;margin:15px 0;}
.fc-proof-grid p{line-height:1.65;font-size:14px;color:#5c6a63;margin:0;}
.fc-image-evidence{font-size:12px;line-height:1.5;color:#69766e;margin:24px auto 0;max-width:800px;text-align:center;}
@media(max-width:700px){.fc-compare-devices{grid-template-columns:1fr}.fc-compare-device{height:300px}.fc-proof-grid{grid-template-columns:1fr}.fc-native-compare{padding:18px}.fc-compare-stack{gap:23px}}

/* Real Add Food workflow — replace previous schematic with actual simulator screens */
.fc-feature-add{display:block!important}
.fc-feature-add .fc-feature-copy{max-width:850px;margin-bottom:34px}
.fc-add-real{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.fc-add-shot{margin:0;min-width:0}
.fc-add-shot-frame{display:flex;align-items:center;justify-content:center;overflow:hidden;padding:18px 12px;background:#f0f5ed;border:1px solid #e4ece3;border-radius:23px}
.fc-add-shot img{height:auto;width:auto;max-width:100%;max-height:465px;object-fit:contain;border-radius:13px}
.fc-add-shot figcaption{display:flex;flex-direction:column;gap:7px;margin-top:16px;color:#64716b;font-size:14px;line-height:1.55}
.fc-add-shot figcaption strong{font-size:15px;color:#25352b}
.fc-add-real-note{margin-top:16px;font-size:12px;letter-spacing:.02em;color:#82918a}
@media(max-width:800px){.fc-add-real{grid-template-columns:1fr 1fr}.fc-add-shot:last-child{grid-column:1/-1;max-width:360px;margin:auto}}
@media(max-width:540px){.fc-add-real{grid-template-columns:1fr}.fc-add-shot:last-child{grid-column:auto;max-width:none}.fc-add-shot-frame{padding:12px}.fc-add-shot img{max-height:570px}}


/* Freshlings V5 refinements: smoother intro gradient, screen alignment, tighter crops, and stronger on-scroll reveal */
.fc-top-shell{position:relative;overflow:hidden;background:linear-gradient(118deg,#fbfcfd 0%,#eef5fb 26%,#f6f8fe 66%,#fcfcfd 100%)}
.fc-top-shell::before{content:"";position:absolute;inset:-10% -8% auto -8%;height:130%;background:radial-gradient(55% 65% at 18% 30%,rgba(205,227,242,.90) 0%,rgba(205,227,242,0) 62%),radial-gradient(52% 68% at 82% 28%,rgba(224,228,244,.82) 0%,rgba(224,228,244,0) 64%),linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,0));pointer-events:none;filter:blur(2px)}
.fc-top-shell::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(255,255,255,0) 32%)}
.fc-back,.fc-intro{position:relative;z-index:1}

.fc-hero-showcase{background:linear-gradient(180deg,#eff6f3 0%,#edf5f1 36%,#f5f8fb 100%);overflow:hidden}
.fc-hero-inner{width:min(1280px,calc(100% - 50px));margin:auto;position:relative;padding:55px 0 14px}
.fc-hero-phones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;justify-items:center;gap:clamp(8px,2vw,28px);height:auto;margin-top:34px}
.fc-hero-phones img{height:560px;max-width:100%;width:auto;object-fit:contain;object-position:bottom;filter:drop-shadow(0 16px 20px rgba(54,74,61,.12))}
.fc-hero-phones img:nth-child(2),.fc-hero-phones img:nth-child(3),.fc-hero-phones img:nth-child(4){height:560px;transform:none}

.fc-four-phones{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:end}
.fc-four-phones img{width:100%;height:470px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 10px 14px rgba(37,59,44,.10))}

.fc-feature-image{height:560px}
.fc-feature-image img{height:548px;object-position:center bottom}
.fc-add-real{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.fc-add-shot-frame{display:flex;align-items:flex-start;justify-content:center;overflow:hidden;padding:16px 12px 10px;background:linear-gradient(180deg,#f3f7f1 0%,#eef4eb 100%);border:1px solid #e1e8de;border-radius:26px;min-height:420px}
.fc-add-shot img{height:auto;width:auto;max-width:100%;max-height:450px;object-fit:contain;border-radius:0}
.fc-compare-device{height:360px;display:flex;justify-content:center;align-items:center;padding:14px;background:radial-gradient(circle at 50% 45%,#edf5eb,transparent 75%)}
.fc-compare-device img{max-height:100%;max-width:100%;width:auto;object-fit:contain;filter:drop-shadow(0 10px 14px rgba(32,43,36,.08))}

@media(max-width:980px){.fc-hero-phones{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}.fc-hero-phones img,.fc-hero-phones img:nth-child(2),.fc-hero-phones img:nth-child(3),.fc-hero-phones img:nth-child(4){height:420px}.fc-four-phones{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:42px}}
@media(max-width:700px){.fc-top-shell::before{inset:-12% -16% auto -16%;height:135%}.fc-hero-phones img,.fc-hero-phones img:nth-child(2),.fc-hero-phones img:nth-child(3),.fc-hero-phones img:nth-child(4){height:340px}.fc-add-real{grid-template-columns:1fr}.fc-add-shot-frame{min-height:0}}


/* Freshlings V6 polish: cleaner crops, stronger stagger reveals, and tighter portfolio spacing */
.reveal{opacity:0;transform:translate3d(0,42px,0) scale(.985);filter:blur(2px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform,filter}
.reveal.visible{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}

.fc-container{width:min(1140px,calc(100% - 92px))}
.fc-back{padding:18px 0 46px;font-size:13px}
.fc-intro{padding:54px 0 96px}
.fc-intro-title{gap:76px;align-items:end}
.fc-summary{max-width:420px}
.fc-facts{padding-top:38px;margin-top:78px;gap:24px}
.fc-hero-inner{padding:62px 0 26px}
.fc-hero-label{margin-bottom:8px}
.fc-section{padding-top:128px;padding-bottom:128px}
.fc-section-title{max-width:850px;margin-bottom:58px}
.fc-section-desc{margin-top:24px;max-width:720px}
.fc-two-col{gap:10%}
.fc-feature-band{padding:124px 0 116px}
.fc-steps{gap:18px}
.fc-steps article{padding:34px 30px 32px;border-radius:24px}
.fc-flow-four{gap:22px;margin-top:40px}
.fc-flow-four article{padding:24px 14px 12px 0}
.fc-four-phones{gap:26px;align-items:end}
.fc-four-phones figure{display:flex;flex-direction:column;justify-content:flex-end;height:100%}
.fc-four-phones figcaption{margin-top:24px}
.fc-feature-row{gap:9%;margin:0 0 122px}
.fc-feature-copy h2{margin:18px 0 26px}
.fc-rationale{margin-top:34px;padding-left:22px}
.fc-feature-image{height:584px;padding:32px 32px 0;border-radius:30px}
.fc-feature-image img{height:560px;max-width:92%}
.fc-add-real{gap:24px;margin-top:8px}
.fc-add-shot-frame{padding:18px 14px 12px;border-radius:28px;min-height:448px;background:linear-gradient(180deg,#f4f7f3 0%,#eef4eb 100%)}
.fc-add-shot img{max-height:470px;filter:drop-shadow(0 10px 18px rgba(28,38,30,.08))}
.fc-add-shot figcaption{margin-top:18px;gap:8px}
.fc-add-real-note,.fc-image-evidence{margin-top:20px}
.fc-detail-grid{margin-top:48px;gap:24px}
.fc-detail-grid article{padding:32px;border-radius:24px}
.fc-design-system{padding:104px 0}
.fc-swatch-row{gap:12px}
.fc-type-sample{margin-top:32px;padding:28px;border-radius:20px}
.fc-iteration{padding:124px 0}
.fc-compare-stack{gap:52px}
.fc-native-compare{padding:clamp(24px,3.5vw,44px);border-radius:30px}
.fc-compare-heading{margin-bottom:28px}
.fc-compare-devices{gap:22px}
.fc-compare-devices figure{border-radius:23px}
.fc-compare-device{height:370px;padding:22px 16px;background:radial-gradient(circle at 50% 44%,#e9f4e6,transparent 74%)}
.fc-proof-grid{gap:18px}
.fc-proof-grid article{padding:30px 26px;border-radius:22px}
.fc-evidence-boundary{margin:-18px 0 42px}
.fc-testing{gap:60px;padding:58px;border-radius:30px}
.fc-testing-points>div{padding:16px 0}
.fc-outcome{max-width:900px}
.fc-outcome>p{margin:30px 0 40px}

/* cleaner transparent assets */
.fc-compare-device img,.fc-four-phones img,.fc-hero-phones img,.fc-add-shot img{background:transparent}

@media(max-width:980px){
  .fc-container{width:min(100% - 54px,760px)}
  .fc-section{padding-top:94px;padding-bottom:94px}
  .fc-feature-band,.fc-iteration,.fc-design-system{padding:84px 0}
  .fc-feature-row{margin-bottom:84px}
  .fc-add-shot-frame{min-height:390px}
  .fc-compare-device{height:320px}
}
@media(max-width:700px){
  .fc-container{width:min(100% - 32px,680px)}
  .fc-back{padding:14px 0 30px}
  .fc-intro{padding:34px 0 62px}
  .fc-intro-title{gap:28px}
  .fc-facts{margin-top:54px;padding-top:26px}
  .fc-section{padding-top:74px;padding-bottom:74px}
  .fc-section-title{margin-bottom:36px}
  .fc-feature-band,.fc-iteration,.fc-design-system{padding:72px 0}
  .fc-four-phones{row-gap:44px}
  .fc-feature-image{height:430px;padding:20px 20px 0}
  .fc-feature-image img{height:410px}
  .fc-add-shot-frame{padding:14px 10px 8px;min-height:0}
  .fc-add-shot img{max-height:420px}
  .fc-testing{padding:30px;gap:32px}
}

/* V7 visual correction: no faux masking, consistent image frames, more restrained layout */
.fc-add-real{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px}
.fc-add-shot{display:flex;flex-direction:column;align-items:stretch}
.fc-add-shot-frame{height:490px;min-height:0;padding:18px;background:#f5f7f4;border:1px solid #e5ebe5;border-radius:24px;align-items:center;justify-content:center}
.fc-add-shot-frame img{display:block;width:auto;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.fc-add-shot figcaption{margin-top:18px}
.fc-compare-devices{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.fc-compare-devices figure{min-width:0}
.fc-compare-device{height:420px;padding:25px 15px;background:#f7faf7;overflow:hidden}
.fc-compare-device img{max-height:100%;height:100%;max-width:100%;width:auto;object-fit:contain}
.fc-four-phones{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:start}
.fc-four-phones figure{height:auto;justify-content:flex-start}
.fc-four-phones img{height:440px;max-height:440px;object-fit:contain;object-position:center bottom}
.fc-four-phones figcaption{min-height:74px;align-content:start}
.fc-hero-phones{align-items:end}
.fc-hero-phones img{object-position:center bottom}
.fc-section{padding-top:108px;padding-bottom:108px}
.fc-feature-row{margin-bottom:100px}
.fc-feature-band,.fc-iteration{padding:104px 0}
.fc-native-compare{overflow:hidden}
.fc-compare-heading h3{overflow-wrap:anywhere}
@media(max-width:900px){.fc-add-real{grid-template-columns:repeat(2,minmax(0,1fr))}.fc-add-shot:last-child{grid-column:1/-1;max-width:440px;margin-inline:auto}.fc-four-phones{grid-template-columns:repeat(2,minmax(0,1fr))}.fc-four-phones img{height:380px}.fc-compare-device{height:340px}}
@media(max-width:600px){.fc-add-real{grid-template-columns:1fr}.fc-add-shot:last-child{grid-column:auto;max-width:none}.fc-add-shot-frame{height:480px}.fc-four-phones img{height:310px}.fc-compare-devices{grid-template-columns:1fr}.fc-compare-device{height:390px}}

/* V8: iteration images retain phone shape, not their old rectangular screenshot matte */
.fc-compare-device{background:radial-gradient(ellipse at 50% 55%,#eef5ed 0%,#f7f9f5 65%,#f8faf7 100%)!important;overflow:hidden;}
.fc-compare-device img{filter:drop-shadow(0 10px 14px rgba(20,35,27,.10))!important;object-fit:contain!important;}
.fc-compare-devices{align-items:stretch;}
.fc-compare-devices figure{min-width:0;}
.fc-compare-device{height:380px!important;}
@media(max-width:700px){.fc-compare-device{height:325px!important}}

/* V9: visual-first editorial case study cover and honest personal contribution */
.fc-page .fc-cover{position:relative;isolation:isolate;background:#fcfdff;min-height:680px;overflow:hidden}
.fc-cover-glow{position:absolute;z-index:-1;inset:-20% -12%;background:radial-gradient(ellipse 49% 55% at 50% 53%,#d8effc 0%,#e9f5fe 29%,rgba(235,246,255,0) 76%);filter:blur(26px);pointer-events:none}
.fc-cover .fc-hero-inner{width:min(1130px,calc(100% - 64px));padding:80px 0 30px;text-align:center}
.fc-cover-overline,.fc-cover-footnote{font-size:12px;letter-spacing:.17em;font-weight:700;color:#608078}
.fc-cover-footnote{display:block;margin-top:24px;letter-spacing:.03em;font-weight:500;color:#718489}
.fc-cover-visual{position:relative;height:530px;display:flex;align-items:flex-end;justify-content:center;max-width:1000px;margin:12px auto 0}
.fc-cover-phone{position:absolute;object-fit:contain;max-width:none!important;filter:drop-shadow(0 17px 18px rgba(45,66,83,.15));transform:none!important}
.fc-cover-left{height:450px;left:13%;bottom:10px;z-index:1;transform:rotate(-9deg)!important}
.fc-cover-center{height:515px;left:50%;bottom:0;z-index:3;transform:translateX(-50%)!important}
.fc-cover-right{height:450px;right:13%;bottom:10px;z-index:2;transform:rotate(9deg)!important}
.fc-top-shell{background:linear-gradient(180deg,#fff,#f7fafb)!important}
.fc-top-shell:before,.fc-top-shell:after{display:none!important}
.fc-intro{padding-top:66px!important}
.fc-intro h1{font-size:clamp(62px,8vw,112px)!important}
.fc-compare-device{height:450px!important;background:radial-gradient(circle at 50% 42%,#edf5ed,transparent 76%)!important;padding:18px!important}
.fc-compare-device img{height:100%!important;max-height:100%!important;width:auto!important;object-fit:contain!important}
.fc-compare-devices{gap:25px!important}
.fc-compare-devices figcaption{min-height:140px}
@media(max-width:820px){.fc-page .fc-cover{min-height:500px}.fc-cover .fc-hero-inner{padding:65px 0 20px}.fc-cover-visual{height:365px}.fc-cover-left,.fc-cover-right{height:300px}.fc-cover-center{height:345px}.fc-cover-left{left:8%}.fc-cover-right{right:8%}.fc-compare-device{height:355px!important}}
@media(max-width:520px){.fc-page .fc-cover{min-height:390px}.fc-cover .fc-hero-inner{width:calc(100% - 24px);padding:45px 0 15px}.fc-cover-visual{height:260px}.fc-cover-left,.fc-cover-right{height:218px}.fc-cover-center{height:253px}.fc-cover-left{left:-3%}.fc-cover-right{right:-3%}.fc-cover-footnote{font-size:10px}.fc-compare-device{height:350px!important}}

/* V10 — Freshlings branded, continuous hero and purposeful navigation */
.theme-freshlings{--project-forest:#304137;--project-green:#91e879;--project-ink:#273b30;--project-mint:#e8f7e5;--project-warm:#fcfdf9; background:#fcfdf9; color:var(--project-ink); background-image: radial-gradient(ellipse 58% 330px at 50% 350px,rgba(186,225,199,.49),rgba(237,248,237,.29) 62%, transparent 100%),linear-gradient(180deg,#f7faf7 0,#fcfdf9 960px); background-repeat:no-repeat; background-size:100% 960px,100% 960px}
.theme-freshlings .header{background:transparent;isolation:isolate}
.theme-freshlings .brand-dot,.theme-freshlings .fc-dot{color:#79c96d}
.theme-freshlings .fc-page .header,.theme-freshlings .fc-cover,.theme-freshlings .fc-top-shell{background:transparent!important}
.theme-freshlings .fc-cover{background:transparent!important; min-height:610px!important; overflow:hidden!important}
.theme-freshlings .fc-cover-glow{display:none!important}
.theme-freshlings .fc-top-shell{background:transparent!important}
.theme-freshlings .fc-cover .fc-hero-inner{padding-top:24px!important}
.theme-freshlings .fc-cover-overline{color:#58826c}
.theme-freshlings .fc-cover-brand{display:flex;justify-content:center;align-items:center;gap:14px;margin:14px auto 12px;color:#334b3b;font-weight:800;font-size:21px;letter-spacing:-.045em}
.theme-freshlings .fc-cover-brand img{height:38px;width:38px;object-fit:contain}
.theme-freshlings .fc-cover-brand small{display:block;font-size:10px;font-weight:500;color:#66786b;letter-spacing:.015em;margin-top:4px}
.theme-freshlings .fc-cover-visual{margin-top:0;height:470px}
.theme-freshlings .fc-cover-left{height:390px;left:15%}
.theme-freshlings .fc-cover-center{height:450px}
.theme-freshlings .fc-cover-right{height:390px;right:15%}
.theme-freshlings .fc-cover-footnote{margin-top:16px}
/* Active highlight visibly green, never plain white; keyboard focus and hover are equally clear */
.theme-freshlings .pillnav{background:linear-gradient(115deg,rgba(242,250,242,.98),rgba(225,245,224,.96));border:1px solid #cfe7d0;box-shadow:0 9px 32px rgba(38,83,50,.12),inset 0 1px rgba(255,255,255,.95);gap:5px}
.theme-freshlings .pillnav a{color:#4a6252;position:relative;transition:background .25s ease,color .25s ease,box-shadow .25s ease,transform .25s ease}
.theme-freshlings .pillnav a:hover,.theme-freshlings .pillnav a:focus-visible{background:linear-gradient(115deg,#def4d6,#bdeba9);color:#233b27;box-shadow:inset 0 0 0 1px #a4d79b,0 3px 12px rgba(81,140,63,.13)}
.theme-freshlings .pillnav a[aria-current="page"]{background:linear-gradient(125deg,#c7efb8,#98e286);color:#23402b;box-shadow:inset 0 0 0 1px rgba(81,153,77,.16),0 3px 12px rgba(71,130,61,.16)}
.theme-freshlings .pillnav a:active{transform:scale(.96)}
.theme-freshlings .fc-kicker{color:#527c57}
.theme-freshlings .fc-page h2 em{color:#4c9161}
.theme-freshlings .fc-brand-panel{margin:18px auto 0;padding:0 30px;max-width:1340px}
.theme-freshlings .fc-brand-panel-inner{background:#304137;border-radius:30px;min-height:240px;display:flex;gap:55px;justify-content:center;align-items:center;padding:40px;color:white;overflow:hidden}
.theme-freshlings .fc-brand-panel-inner img{width:140px;height:148px;object-fit:contain;flex-shrink:0}
.theme-freshlings .fc-brand-panel-inner span{font-size:10px;letter-spacing:.18em;color:#acd79f;font-weight:700}
.theme-freshlings .fc-brand-panel-inner strong{display:block;font-size:clamp(42px,6vw,74px);letter-spacing:-.065em;line-height:1.25}
.theme-freshlings .fc-brand-panel-inner p{color:#aaec8e;font-size:clamp(15px,2vw,22px);margin:8px 0 0}
@media(max-width:820px){.theme-freshlings .fc-cover{min-height:450px!important}.theme-freshlings .fc-cover-visual{height:315px}.theme-freshlings .fc-cover-left,.theme-freshlings .fc-cover-right{height:260px}.theme-freshlings .fc-cover-center{height:315px}.theme-freshlings .fc-cover-left{left:9%}.theme-freshlings .fc-cover-right{right:9%}.theme-freshlings .fc-brand-panel-inner{gap:24px;min-height:190px}.theme-freshlings .fc-brand-panel-inner img{width:105px;height:115px}}
@media(max-width:520px){.theme-freshlings .fc-cover{min-height:350px!important}.theme-freshlings .fc-cover .fc-hero-inner{padding-top:16px!important}.theme-freshlings .fc-cover-brand{font-size:17px}.theme-freshlings .fc-cover-brand img{height:32px;width:32px}.theme-freshlings .fc-cover-visual{height:227px}.theme-freshlings .fc-cover-left,.theme-freshlings .fc-cover-right{height:187px}.theme-freshlings .fc-cover-center{height:220px}.theme-freshlings .fc-cover-left{left:0}.theme-freshlings .fc-cover-right{right:0}.theme-freshlings .fc-brand-panel{padding:0 14px}.theme-freshlings .fc-brand-panel-inner{padding:26px 18px;border-radius:22px;gap:15px;min-height:150px}.theme-freshlings .fc-brand-panel-inner img{width:76px;height:85px}.theme-freshlings .fc-brand-panel-inner strong{font-size:36px}.theme-freshlings .fc-brand-panel-inner span{font-size:8px}.theme-freshlings .fc-brand-panel-inner p{font-size:12px}.theme-freshlings .pillnav{top:12px;padding:5px;gap:0}.theme-freshlings .pillnav a{padding:10px 15px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.theme-freshlings .pillnav a{transition:none}}


/* V11 | GLOBAL SITE NAVIGATION — theme-independent; gradient ONLY on hover/focus.
   Freshlings page branding does not affect the shared HOME / RESUME / ABOUT controls. */
.pillnav,
.theme-freshlings .pillnav {
  background:rgba(250,252,253,.86);
  border:1px solid rgba(255,255,255,.94);
  box-shadow:0 9px 32px rgba(73,100,121,.12),0 0 0 1px rgba(142,163,177,.13);
  backdrop-filter:blur(22px);
  -webkit-backdrop-filter:blur(22px);
  gap:4px;
}
.pillnav a,
.theme-freshlings .pillnav a {
  color:#586872;
  background:transparent;
  box-shadow:none;
  border:1px solid transparent;
  transition:background .26s ease,color .26s ease,box-shadow .26s ease,transform .22s ease;
}
/* The current page is indicated by a subtle darker label, not a filled project-color chip. */
.pillnav a[aria-current="page"],
.theme-freshlings .pillnav a[aria-current="page"] {
  color:#283a46;
  background:transparent;
  border-color:transparent;
  box-shadow:none;
}
/* Gradient appears only while the pointer is over an option or keyboard focus is on it. */
.pillnav a:hover,
.pillnav a:focus-visible,
.pillnav a[aria-current="page"]:hover,
.pillnav a[aria-current="page"]:focus-visible,
.theme-freshlings .pillnav a:hover,
.theme-freshlings .pillnav a:focus-visible,
.theme-freshlings .pillnav a[aria-current="page"]:hover,
.theme-freshlings .pillnav a[aria-current="page"]:focus-visible {
  background:linear-gradient(115deg,#e6f1fa 0%,#d9e9f3 46%,#eaf5ef 100%);
  color:#263d4a;
  box-shadow:inset 0 0 0 1px rgba(139,175,195,.28),0 3px 14px rgba(98,136,162,.13);
}
.pillnav a:active,
.theme-freshlings .pillnav a:active {transform:scale(.98)}
@media(prefers-reduced-motion:reduce){.pillnav a,.theme-freshlings .pillnav a{transition:none}}


/* V12: polished edges, restrained product hover lift. The three phones retain their original angles. */
.theme-freshlings .fc-cover-visual{isolation:isolate;overflow:visible}
.theme-freshlings .fc-cover-phone{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform-origin:50% 68%;
  transition:transform .42s cubic-bezier(.2,.75,.25,1),filter .42s ease;
  will-change:transform;
  cursor:zoom-in;
}
.theme-freshlings .fc-cover-left{transform:rotate(-9deg) scale(1)!important}
.theme-freshlings .fc-cover-center{transform:translateX(-50%) scale(1)!important}
.theme-freshlings .fc-cover-right{transform:rotate(9deg) scale(1)!important}
@media(hover:hover) and (pointer:fine){
  .theme-freshlings .fc-cover-left:hover{transform:rotate(-9deg) scale(1.055)!important;z-index:7;filter:drop-shadow(0 24px 24px rgba(39,57,49,.21))}
  .theme-freshlings .fc-cover-center:hover{transform:translateX(-50%) scale(1.055)!important;z-index:7;filter:drop-shadow(0 24px 24px rgba(39,57,49,.21))}
  .theme-freshlings .fc-cover-right:hover{transform:rotate(9deg) scale(1.055)!important;z-index:7;filter:drop-shadow(0 24px 24px rgba(39,57,49,.21))}
}
@media(prefers-reduced-motion:reduce){.theme-freshlings .fc-cover-phone{transition:none;will-change:auto}}

/* V13 — detailed Freshlings design system. Scoped to this case study. */
.fc-ds-v13{background:#f8fbf4!important;padding:96px 0!important;color:#26362e}.fc-ds-v13 *{box-sizing:border-box}.fc-ds-lead{display:grid;grid-template-columns:1.25fr 1fr;gap:60px;align-items:end;margin-bottom:35px}.fc-ds-lead p{margin:0;color:#66736b;line-height:1.8;max-width:480px}.fc-ds-v13 h2{font-size:clamp(35px,4.5vw,63px);letter-spacing:-.055em;line-height:1.1;margin:14px 0 0}.fc-ds-v13 h3{font-size:clamp(20px,2vw,28px);letter-spacing:-.04em;line-height:1.2;margin:9px 0 16px}.fc-ds-v13 p{line-height:1.65}.fc-ds-eyebrow{display:block;color:#63952b;letter-spacing:.17em;font-size:11px;font-weight:850}.fc-ds-top{display:grid;grid-template-columns: minmax(220px,.68fr) minmax(0,1.72fr);gap:19px}.fc-ds-identity,.fc-ds-palette,.fc-ds-module,.fc-ds-components,.fc-ds-iconography{background:white;border:1px solid #e0ecd2;border-radius:24px;padding:28px}.fc-ds-identity{background:linear-gradient(150deg,#ebf8db,#fbfdf7);display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:370px}.fc-ds-identity img{height:165px;max-width:100%;object-fit:contain;object-position:left}.fc-ds-identity p,.fc-ds-components-copy p,.fc-ds-iconography p,.fc-ds-module p{color:#758078;font-size:14px;margin:8px 0 0}.fc-ds-color-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.fc-ds-color-grid>div{min-width:0}.fc-ds-color-grid i{display:block;width:100%;height:76px;border-radius:14px}.fc-ds-color-grid b,.fc-ds-color-grid small{display:block;line-height:1.5;font-size:11px;color:#735543;margin-top:5px}.fc-ds-color-grid small{margin:0;color:#8a918a}.fc-ds-semantics{border-top:1px solid #e7eee3;padding-top:22px;margin-top:25px;display:flex;gap:14px;flex-wrap:wrap;align-items:center;color:#735543;font-size:12px}.fc-ds-semantics>span{font-weight:700;margin-right:8px}.fc-ds-semantics div{display:flex;gap:7px;align-items:center}.fc-ds-semantics i{width:24px;height:24px;border-radius:8px;display:inline-block}.fc-ds-lower{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin-top:19px}.fc-ds-type-title{font-size:44px;font-weight:850;color:#735543;letter-spacing:-.045em;margin:20px 0}.fc-ds-type-row{display:flex;justify-content:space-between;gap:10px;align-items:baseline;border-top:1px solid #e9eee5;padding:12px 0;color:#735543}.fc-ds-type-row b{font-size:22px}.fc-ds-type-row span{font-size:11px;color:#96918a;text-align:right}.fc-ds-states>div{display:grid;grid-template-columns:95px minmax(0,1fr) 65px;align-items:center;gap:10px;margin:12px 0}.fc-ds-states b{border-radius:999px;padding:7px 5px;text-align:center;font-size:11px;color:#467017;background:#edf5e4}.fc-ds-states b.soon{color:#9B5C0B;background:#fff1d9}.fc-ds-states b.urgent{color:#AB3727;background:#fbe5e1}.fc-ds-states b.expired{color:#7f796f;background:#f5f5f1}.fc-ds-states .track{height:10px;border-radius:99px;background:#e3f2c6;overflow:hidden}.fc-ds-states .track i{display:block;height:100%;border-radius:99px}.fc-ds-states small{font-size:11px;text-align:right;color:#735543}.fc-ds-components{margin-top:19px;display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;align-items:center}.fc-ds-components-demo{max-width:650px}.fc-ds-food-card{background:#edf7dd;padding:15px;border-radius:18px;display:flex;align-items:center;gap:15px;color:#735543}.fc-ds-carrot{font-size:31px;background:white;padding:8px;border-radius:15px}.fc-ds-food-card>div{flex:1}.fc-ds-food-card b,.fc-ds-food-card span:not(.fc-ds-carrot){display:block}.fc-ds-food-card span:not(.fc-ds-carrot){font-size:12px}.fc-ds-mini-track{width:100%;background:#d5e8b9;height:8px;border-radius:99px;margin-top:9px;overflow:hidden}.fc-ds-mini-track i{display:block;width:43%;height:100%;background:#e46b54;border-radius:99px}.fc-ds-button-row{display:flex;gap:12px;margin:14px 0}.fc-ds-btn{padding:12px 23px;border-radius:99px;font-size:13px;font-weight:750}.fc-ds-btn.primary{background:#467017;color:white}.fc-ds-btn.lime{background:#c0fa63;color:#365212}.fc-ds-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.fc-ds-stats div{background:#edf7dd;padding:15px;border-radius:18px;color:#735543}.fc-ds-stats div:last-child{background:#ffdf59}.fc-ds-stats small,.fc-ds-stats strong{display:block}.fc-ds-stats strong{font-size:25px}.fc-ds-iconography{margin-top:19px;display:grid;grid-template-columns:.8fr 1.2fr;gap:25px;align-items:center}.fc-ds-icons{font-size:clamp(22px,3vw,34px);letter-spacing:.12em;line-height:2.1;overflow-wrap:anywhere}
@media(max-width:900px){.fc-ds-lead,.fc-ds-top,.fc-ds-lower,.fc-ds-components,.fc-ds-iconography{grid-template-columns:1fr}.fc-ds-identity{min-height:0;flex-direction:row;gap:20px;align-items:center}.fc-ds-identity img{height:110px}.fc-ds-color-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:500px){.fc-ds-v13{padding:70px 0!important}.fc-ds-identity,.fc-ds-palette,.fc-ds-module,.fc-ds-components,.fc-ds-iconography{padding:19px;border-radius:19px}.fc-ds-identity{flex-direction:column;align-items:start}.fc-ds-color-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.fc-ds-color-grid i{height:53px}.fc-ds-states>div{grid-template-columns:75px minmax(0,1fr) 52px;gap:6px}.fc-ds-states b,.fc-ds-states small{font-size:9px}.fc-ds-stats strong{font-size:18px}.fc-ds-stats div{padding:10px}.fc-ds-lead{gap:16px}}
/* V13 — Equinox card shares global interactive card affordances. */
.interactive-section .equinox-card{position:relative;overflow:hidden;cursor:pointer;transition:transform .42s cubic-bezier(.2,.7,.2,1),box-shadow .42s cubic-bezier(.2,.7,.2,1),border-color .3s ease;will-change:transform}
.interactive-section .equinox-art img{transition:transform .62s cubic-bezier(.2,.7,.2,1);transform-origin:center center}
.interactive-section .equinox-card:hover,.interactive-section .equinox-card:focus-visible{transform:translateY(-6px);box-shadow:0 28px 68px rgba(53,74,90,.17);border-color:#c8d4dd}
.interactive-section .equinox-card:hover .equinox-art img,.interactive-section .equinox-card:focus-visible .equinox-art img{transform:scale(1.045)}
.interactive-section .equinox-info .underlined{display:inline-block;transition:transform .32s ease,color .32s ease}
.interactive-section .equinox-card:hover .equinox-info .underlined,.interactive-section .equinox-card:focus-visible .equinox-info .underlined{transform:translate(3px,-2px);color:#557d94}
.interactive-section .equinox-card:focus-visible{outline:3px solid #7d9fb8;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.interactive-section .equinox-card,.interactive-section .equinox-art img,.interactive-section .equinox-info .underlined{transition:none!important}.interactive-section .equinox-card:hover,.interactive-section .equinox-card:focus-visible,.interactive-section .equinox-card:hover .equinox-art img,.interactive-section .equinox-card:focus-visible .equinox-art img,.interactive-section .equinox-card:hover .equinox-info .underlined{transform:none!important}}

/* V14 — original iconography and centered content */
.fc-ds-iconography{display:grid!important;grid-template-columns:minmax(220px,.56fr) minmax(0,1.44fr)!important;align-items:center!important;justify-items:stretch;gap:32px!important;min-height:240px;padding:34px 36px!important;}
.fc-ds-icon-intro{display:flex;flex-direction:column;justify-content:center;align-self:center;min-width:0;}
.fc-ds-icon-intro h3{margin:9px 0 10px;}
.fc-ds-icon-visual{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;align-self:center;}
.fc-ds-icon-visual img{display:block;width:100%;height:auto;max-height:176px;object-fit:contain;object-position:center center;}
@media(max-width:900px){.fc-ds-iconography{grid-template-columns:1fr!important;gap:22px!important;padding:25px!important;min-height:0}.fc-ds-icon-intro{text-align:center;align-items:center}.fc-ds-icon-visual img{max-height:none}}
@media(max-width:520px){.fc-ds-iconography{padding:20px 15px!important}.fc-ds-icon-visual{overflow-x:auto;justify-content:flex-start}.fc-ds-icon-visual img{min-width:660px;max-width:none;width:660px}.fc-ds-icon-intro p{max-width:33ch}}

/* V15 — centered brand character content */
.theme-freshlings .fc-ds-v13 .fc-ds-identity{justify-content:center!important;align-items:center!important;gap:20px!important;text-align:center!important;padding:36px 28px!important;}
.theme-freshlings .fc-ds-v13 .fc-ds-identity>div{width:100%;max-width:330px;margin:0 auto;}
.theme-freshlings .fc-ds-v13 .fc-ds-identity img{display:block;width:min(66%,195px);height:auto;max-height:190px;object-fit:contain;object-position:center;margin:0 auto 4px;}
.theme-freshlings .fc-ds-v13 .fc-ds-identity h3{margin:13px auto 18px;}
.theme-freshlings .fc-ds-v13 .fc-ds-identity p{margin:0 auto;max-width:310px;}
@media(max-width:900px){.theme-freshlings .fc-ds-v13 .fc-ds-identity{flex-direction:column!important;min-height:380px}}
@media(max-width:500px){.theme-freshlings .fc-ds-v13 .fc-ds-identity{padding:35px 22px!important;min-height:0;gap:17px!important}}
/* Match the round detail action used by the main product cards. */
.interactive-section .equinox-info{position:relative;padding-bottom:85px;}
.interactive-section .equinox-entry{position:absolute;right:35px;bottom:35px;width:48px;height:48px;border:1px solid #d5dedc;border-radius:50%;display:grid;place-items:center;font-size:23px;color:#304b5c;background:#fff;transition:background .32s ease,transform .32s ease,border-color .32s ease;}
.interactive-section .equinox-card:hover .equinox-entry,.interactive-section .equinox-card:focus-visible .equinox-entry{background:#e8eff1;border-color:#bbced7;transform:translate(2px,-2px)}
.interactive-section .equinox-info .underlined{font-size:13px;}
@media(max-width:600px){.interactive-section .equinox-info{padding-bottom:82px}.interactive-section .equinox-entry{right:25px;bottom:25px}}
@media(prefers-reduced-motion:reduce){.interactive-section .equinox-entry{transition:none!important}.interactive-section .equinox-card:hover .equinox-entry{transform:none!important}}

/* V16 — Equinox card: remove duplicate CTA and balance content with the shared round arrow. */
.interactive-section .equinox-info {
  position:relative;display:flex;flex-direction:column;align-items:flex-start;
  justify-content:center;gap:0;min-width:0;
  padding:42px 104px 42px 44px;
}
.interactive-section .equinox-info .project-type {margin-bottom:15px;}
.interactive-section .equinox-info h3 {margin:0 0 18px;line-height:1.22;}
.interactive-section .equinox-info p {margin:0;max-width:49ch;line-height:1.65;}
.interactive-section .equinox-entry {right:32px;bottom:32px;}
@media(max-width:690px){
  .interactive-section .equinox-info{padding:32px 82px 35px 26px;min-height:220px;}
  .interactive-section .equinox-entry{right:23px;bottom:25px;width:44px;height:44px;}
}
@media(max-width:390px){
  .interactive-section .equinox-info{padding-right:26px;padding-bottom:100px;}
}

/* V17 — contribution, embedded prototype video, closing reflection */
.fc-contribution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:38px 0 24px}
.fc-contribution-grid article{border:1px solid #dce9d5;border-radius:22px;padding:26px 28px;background:#fffefa}
.fc-contribution-grid article>span{display:block;font-size:11px;letter-spacing:.13em;font-weight:750;color:#648769;margin-bottom:13px}
.fc-contribution-grid h3{font-size:clamp(20px,2vw,27px);color:#253b30;letter-spacing:-.025em;margin:0 0 12px}
.fc-contribution-grid p,.fc-contribution-note p{line-height:1.7;color:#66756c;margin:0}
.fc-contribution-note{display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center;padding:22px 28px;border-radius:20px;background:#eff6e8}
.fc-contribution-note strong{color:#335c38;font-size:16px}
.fc-demo-section{background:linear-gradient(120deg,#f0f6eb 0%,#f7faf4 51%,#edf5ec 100%);padding:clamp(64px,8vw,112px) 0;overflow:hidden}
.fc-demo-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.82fr);align-items:center;gap:clamp(32px,7vw,105px)}
.fc-demo-copy h2{font-size:clamp(42px,5vw,75px);letter-spacing:-.055em;line-height:1.05;color:#263b2f;margin:22px 0 30px}
.fc-demo-copy h2 em{color:#63886a;font-weight:400}
.fc-demo-copy p{font-size:clamp(16px,1.32vw,20px);line-height:1.68;color:#62736b;max-width:620px;margin:0 0 16px}
.fc-demo-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.fc-demo-meta span{border:1px solid #cce0c6;border-radius:100px;padding:8px 12px;color:#426b4d;font-size:11px;letter-spacing:.08em;font-weight:700}
.fc-demo-media{display:flex;flex-direction:column;align-items:center;gap:14px;min-width:0}
.fc-prototype-video{display:block;width:min(100%,315px);max-height:630px;aspect-ratio:9/19.5;object-fit:contain;border-radius:29px;background:#202d26;box-shadow:0 22px 60px rgba(25,62,33,.16);border:7px solid #26342b}
.fc-demo-caption{font-size:12px;color:#78867c;text-align:center}
.fc-outcome p{max-width:920px}.fc-reflection-takeaway{padding-top:10px;color:#344e3a!important}
@media(max-width:780px){.fc-contribution-grid{grid-template-columns:1fr}.fc-contribution-note{grid-template-columns:1fr;gap:9px}.fc-demo-layout{grid-template-columns:1fr}.fc-demo-copy h2{margin-bottom:22px}.fc-prototype-video{width:min(75vw,300px)}}
@media(prefers-reduced-motion:reduce){.fc-prototype-video{scroll-behavior:auto}}


/* V18 / Freshlings: restrained image-only hover enhancement.
   Hero phones retain their existing V12 tilt and 1.055x effect. */
@media (hover:hover) and (pointer:fine) {
  .theme-freshlings .fc-four-phones figure > img,
  .theme-freshlings .fc-feature-image > img,
  .theme-freshlings .fc-add-shot-frame > img,
  .theme-freshlings .fc-compare-device > img {
    transition: transform .42s cubic-bezier(.2,.72,.2,1), filter .42s ease;
    will-change: transform;
  }
  /* Primary app screens: subtle lift; image-only so accompanying text doesn't move. */
  .theme-freshlings .fc-four-phones figure:hover > img { transform:translateY(-7px) scale(1.04); }
  .theme-freshlings .fc-feature-image:hover > img { transform:translateY(-6px) scale(1.035); }
  /* Three Add Food screenshots: careful to preserve frame edges and readability. */
  .theme-freshlings .fc-add-shot-frame:hover > img { transform:scale(1.03); }
  /* Before/After imagery remains aligned for meaningful side-by-side comparison. */
  .theme-freshlings .fc-compare-device:hover > img { transform:scale(1.025); }
}
/* Hover only where an actual hovering pointer exists; touch screens remain still. */
@media (hover:none), (pointer:coarse) {
  .theme-freshlings .fc-four-phones figure > img,
  .theme-freshlings .fc-feature-image > img,
  .theme-freshlings .fc-add-shot-frame > img,
  .theme-freshlings .fc-compare-device > img {transition:none!important;transform:none!important;will-change:auto!important;}
}
@media (prefers-reduced-motion:reduce) {
  .theme-freshlings .fc-four-phones figure > img,
  .theme-freshlings .fc-feature-image > img,
  .theme-freshlings .fc-add-shot-frame > img,
  .theme-freshlings .fc-compare-device > img {transition:none!important;transform:none!important;will-change:auto!important;}
}

/* V19 — resume editorial typography and layout */
.resume-editorial{grid-template-columns:minmax(150px, .9fr) minmax(0,3fr);gap:clamp(26px,4.5vw,80px);padding:70px 0;}
.resume-editorial>h2{font-size:clamp(39px,4vw,65px);line-height:1.05;letter-spacing:-.045em;color:#18232b;}
.resume-editorial .resume-entry{grid-template-columns:minmax(205px, .95fr) minmax(0,1.65fr);gap:clamp(24px,4vw,70px);padding:32px 0 36px;border-top:0;border-bottom:1px solid #d8dfe4;align-items:start;}
.resume-editorial .resume-entry:first-of-type{padding-top:0;}
.resume-editorial .resume-entry:last-of-type{border-bottom:0;padding-bottom:0;}
.resume-editorial .resume-side{gap:11px;font-size:17px;line-height:1.4;}
.resume-editorial .resume-side strong{font-size:18px;line-height:1.35;font-weight:690;color:#222c34;}
.resume-editorial .resume-side span{font-size:14px;line-height:1.55;color:#788793;}
.resume-editorial .resume-side .resume-role{font-weight:630;color:#27333c;font-size:16px;}
.resume-editorial .resume-entry h3{font-size:clamp(19px,1.8vw,26px);font-weight:650;letter-spacing:-.025em;line-height:1.3;margin:0 0 16px;}
.resume-editorial .resume-entry p{font-size:16px;line-height:1.78;color:#647581;max-width:740px;}
.resume-editorial .resume-entry .resume-honor{color:#405d72;font-weight:620;}
.resume-editorial .resume-bullets{padding-left:22px;margin:0;color:#33414c;font-size:16px;line-height:1.75;}
.resume-editorial .resume-bullets li{padding-left:7px;margin:0 0 12px;}
@media(max-width:900px){.resume-editorial{grid-template-columns:1fr;gap:25px}.resume-editorial .resume-entry{grid-column:1;}}
@media(max-width:600px){.resume-editorial{padding:52px 0}.resume-editorial .resume-entry{grid-template-columns:1fr;gap:17px;padding:26px 0}.resume-editorial .resume-side strong{font-size:17px}.resume-editorial .resume-entry h3{font-size:20px}.resume-editorial .resume-entry p,.resume-editorial .resume-bullets{font-size:14px}}


/* V20 — quieter resume editorial headings and diffuse localized light */
.resume-editorial {
  position:relative;
  isolation:isolate;
  background:radial-gradient(ellipse 47% 61% at 19% 38%, rgba(192,193,235,.20) 0%, rgba(211,221,247,.12) 36%, rgba(245,248,251,0) 82%);
}
.resume-editorial:nth-of-type(3) {
  background:radial-gradient(ellipse 44% 66% at 22% 44%, rgba(188,209,239,.18), rgba(242,246,251,0) 80%);
}
.resume-editorial:nth-of-type(4) {
  background:radial-gradient(ellipse 45% 63% at 21% 40%, rgba(207,201,234,.16), rgba(242,246,251,0) 82%);
}
.resume-editorial>h2 {
  font-size:clamp(35px, 2.85vw, 49px);
  line-height:1.18;
  letter-spacing:-.035em;
  max-width:100%;
  overflow-wrap:normal;
}
@media(max-width:900px) {
  .resume-editorial>h2 {font-size:clamp(33px,5.1vw,45px);}
  .resume-editorial {background-size:100% 100%;}
}
@media(max-width:600px) {
  .resume-editorial>h2 {font-size:36px;}
  .resume-editorial {background:radial-gradient(ellipse 80% 35% at 20% 11%,rgba(192,204,237,.15),transparent 90%);}
}


/* V21 — consistent typographic language for the three PERSONAL site pages only.
   Case studies retain their own typography and product branding. */
:root { --site-display-color:#202930; --site-accent-italic:#5d7fb6; --site-body-color:#586874; }
.site-home .editorial-hero h1,
.site-resume .page-intro h1,
.site-about .about-v14-hero h1 {
  font-family:var(--sans)!important;
  font-weight:700!important;
  font-size:clamp(54px,6.1vw,98px)!important;
  line-height:1.075!important;
  letter-spacing:-.065em!important;
  color:var(--site-display-color)!important;
  text-wrap:balance;
}
.site-home .editorial-hero h1 em,
.site-resume .page-intro h1 em,
.site-about .about-v14-hero h1 em {
  font-family:Georgia,'Times New Roman',serif!important;
  font-weight:400!important;
  font-style:italic!important;
  font-size:1em!important;
  line-height:inherit!important;
  letter-spacing:-.05em!important;
  color:var(--site-accent-italic)!important;
}
.site-home .intro-v15-greeting,
.site-about .about-v14-overline {
  font-family:var(--sans)!important;
  font-size:clamp(18px,1.7vw,23px)!important;
  font-weight:500!important;
  line-height:1.45!important;
  color:#405767!important;
  letter-spacing:-.02em!important;
}
.site-home .intro-v15-aside p:not(.hero-notebook),
.site-resume .page-intro>p,
.site-about .about-v14-intro p {
  font-family:var(--sans)!important;
  font-size:clamp(17px,1.46vw,20px)!important;
  font-weight:400!important;
  line-height:1.7!important;
  letter-spacing:-.012em!important;
  color:var(--site-body-color)!important;
}
.site-home .intro-v17-eyebrow,
.site-resume .page-intro .section-label,
.site-about .about-v14-kicker {
  font-family:var(--sans)!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:.21em!important;
  color:#7890a6!important;
}
/* The resume keeps its own editorial section hierarchy below the hero. */
.site-resume .resume-editorial>h2 {font-family:Georgia,'Times New Roman',serif!important;font-style:italic;font-weight:400!important;font-size:clamp(36px,3vw,49px)!important;letter-spacing:-.035em!important;}
@media(max-width:700px){
 .site-home .editorial-hero h1,.site-resume .page-intro h1,.site-about .about-v14-hero h1 {font-size:clamp(43px,10.5vw,65px)!important;letter-spacing:-.06em!important;overflow-wrap:normal;}
 .site-home .intro-v15-aside p:not(.hero-notebook),.site-resume .page-intro>p,.site-about .about-v14-intro p {font-size:16px!important;}
}


/* V22 — LOCKED PERSONAL-SITE TYPOGRAPHY SYSTEM.
   Fonts: Inter for all utilitarian/UI text; Georgia italic for editorial accents.
   Product case studies retain their original brand identity. */
:root {
 --type-ui: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
 --type-editorial: Georgia,"Times New Roman",serif;
 --type-display-size:clamp(52px,6vw,96px);
 --type-section-size:clamp(35px,3vw,49px);
 --type-subheading-size:clamp(22px,2vw,29px);
 --type-body-size:16px;
 --type-intro-size:clamp(17px,1.46vw,20px);
 --type-label-size:12px;
 --type-accent:#5d7fb6;
 --type-primary:#202930;
 --type-secondary:#586874;
}
.site-home,.site-resume,.site-about {font-family:var(--type-ui);font-size:var(--type-body-size);color:var(--type-primary)}
.site-home .editorial-hero h1,.site-resume .page-intro h1,.site-about .about-v14-hero h1 {
 font-family:var(--type-ui)!important;font-weight:700!important;
 font-size:var(--type-display-size)!important;line-height:1.075!important;
 letter-spacing:-.063em!important;color:var(--type-primary)!important;
}
.site-home .editorial-hero h1 em,.site-resume .page-intro h1 em,.site-about .about-v14-hero h1 em {
 font-family:var(--type-editorial)!important;font-style:italic!important;font-weight:400!important;
 font-size:1em!important;letter-spacing:-.05em!important;color:var(--type-accent)!important;
}
.site-resume .resume-editorial>h2,
.site-about .about-v14-section-head h2,
.site-about .about-v14-future h2,
.site-about .about-v14-archive h2 {
 font-family:var(--type-editorial)!important;font-size:var(--type-section-size)!important;
 font-weight:400!important;line-height:1.2!important;letter-spacing:-.035em!important;
}
.site-home .section-header h2,.site-home .interactive-section .section-header h2 {
 font-family:var(--type-ui)!important;font-size:var(--type-section-size)!important;
 font-weight:650!important;line-height:1.18!important;letter-spacing:-.045em!important;
}
.site-home .project-info h3,.site-home .equinox-info h3,
.site-resume .resume-entry h3,.site-about .journey-content h3 {
 font-family:var(--type-ui)!important;font-weight:650!important;
 font-size:var(--type-subheading-size)!important;line-height:1.26!important;letter-spacing:-.028em!important;
}
.site-home .intro-v15-aside p:not(.hero-notebook),
.site-resume .page-intro>p,.site-about .about-v14-intro p {
 font-family:var(--type-ui)!important;font-size:var(--type-intro-size)!important;
 line-height:1.65!important;font-weight:400!important;color:var(--type-secondary)!important;
}
.site-resume .resume-editorial .resume-entry p,.site-resume .resume-editorial .resume-bullets,
.site-about .journey-content p,.site-home .project-info p,.site-home .equinox-info p {
 font-family:var(--type-ui)!important;font-size:var(--type-body-size)!important;
 line-height:1.65!important;color:var(--type-secondary);
}
.site-home .pillnav a,.site-resume .pillnav a,.site-about .pillnav a {
 font-family:var(--type-ui)!important;font-size:12px!important;font-weight:600!important;
 letter-spacing:.11em!important;
}
.site-home .section-label,.site-resume .section-label,.site-about .about-v14-kicker {
 font-family:var(--type-ui)!important;font-size:var(--type-label-size)!important;
 font-weight:700!important;letter-spacing:.19em!important;
}
@media(max-width:700px){
 :root{--type-display-size:clamp(42px,10vw,65px);--type-section-size:clamp(33px,6vw,43px);--type-subheading-size:22px;--type-intro-size:16px;--type-body-size:15px}
}


/* V23 — consolidated personal-site color and minimal resume style.
   Product-specific case studies are intentionally unaffected. */
:root {
  --portfolio-ink:#202930;
  --portfolio-accent:#5d7fb6;
  --portfolio-greeting:#405869;
  --portfolio-copy:#586874;
}
.site-home .intro-v15-greeting,
.site-about .about-v14-overline {
  font-family:var(--type-ui)!important;
  font-size:clamp(18px,1.7vw,24px)!important;
  font-weight:400!important;
  color:var(--portfolio-greeting)!important;
  letter-spacing:0!important;
  line-height:1.4!important;
}
.site-home .editorial-hero h1,
.site-resume .page-intro h1,
.site-about .about-v14-hero h1 {color:var(--portfolio-ink)!important;}
.site-home .editorial-hero h1 em,
.site-resume .page-intro h1 em,
.site-about .about-v14-hero h1 em {color:var(--portfolio-accent)!important;}
.site-home .intro-v15-aside p:not(.hero-notebook),
.site-resume .page-intro>p,
.site-about .about-v14-intro p {color:var(--portfolio-copy)!important;}
/* A resume is an information document: one consistent page glow, no individual section halos. */
.site-resume .resume-editorial,
.site-resume .resume-editorial:nth-of-type(3),
.site-resume .resume-editorial:nth-of-type(4) {background:none!important;}
.site-resume .resume-editorial {padding:clamp(38px,4vw,56px) 0!important;gap:clamp(24px,3.5vw,55px)!important;}
.site-resume .resume-editorial>h2 {
  color:var(--portfolio-ink)!important;
  font-family:var(--type-editorial)!important;
  font-size:clamp(35px,2.8vw,46px)!important;
  font-weight:400!important;
  font-style:italic!important;
  line-height:1.16!important;
}
.site-resume .resume-editorial .resume-entry {
  padding:23px 0 26px!important;
  gap:clamp(18px,3vw,46px)!important;
  border-color:#dbe3e9!important;
}
.site-resume .resume-editorial .resume-entry:first-of-type {padding-top:0!important;}
.site-resume .resume-editorial .resume-entry:last-of-type {padding-bottom:0!important;}
.site-resume .resume-editorial .resume-side strong {
  font-family:var(--type-ui)!important; font-size:17px!important;
  font-weight:650!important;color:var(--portfolio-ink)!important;
}
.site-resume .resume-editorial .resume-entry h3 {
  font-family:var(--type-ui)!important;font-size:clamp(19px,1.5vw,22px)!important;
  font-weight:650!important;color:var(--portfolio-ink)!important;
  margin-bottom:10px!important;
}
.site-resume .resume-editorial .resume-entry p,
.site-resume .resume-editorial .resume-bullets {
  font-family:var(--type-ui)!important;color:var(--portfolio-copy)!important;
  font-size:16px!important;line-height:1.65!important;
}
.site-resume .resume-editorial .resume-honor {font-weight:600!important;color:var(--portfolio-copy)!important;}
@media(max-width:700px){
  .site-resume .resume-editorial{padding:35px 0!important;gap:20px!important;}
  .site-resume .resume-editorial .resume-entry{padding:20px 0 23px!important;}
  .site-resume .resume-editorial .resume-entry p,
  .site-resume .resume-editorial .resume-bullets{font-size:15px!important;}
}

/* V24 — Freshlings work card: edge-to-edge phone crop.
   The image is intentionally taller than the art region; the art region's
   existing overflow:hidden clips the phone at its bottom edge. */
#work.v20-work .art-fresh .project-art {
  overflow: hidden !important;
}
#work.v20-work .art-fresh .v30-card-image {
  top: 76px;
  bottom: auto;
  width: min(63%, 354px);
  height: auto;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  filter: drop-shadow(0 13px 16px rgba(31, 57, 44, .12));
  transition: transform .45s cubic-bezier(.2,.8,.2,1);
}
#work.v20-work .art-fresh .v30-card-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: initial;
  image-rendering: auto;
}
#work.v20-work .art-fresh:hover .v30-card-image {
  transform: translateX(-50%) scale(1.035);
}
@media (max-width: 1059px) {
  #work.v20-work .art-fresh .v30-card-image {top: 69px; width: min(65%, 335px);}
}
@media (max-width: 690px) {
  #work.v20-work .art-fresh .v30-card-image {top: 61px; width: min(66%, 320px);}
}
@media (prefers-reduced-motion: reduce) {
  #work.v20-work .art-fresh .v30-card-image {transition: none !important;}
  #work.v20-work .art-fresh:hover .v30-card-image {transform: translateX(-50%) !important;}
}


/* V25 — eliminate the Freshlings card's horizontal dead strip.
   .project-art had padding:24px while .v30-card-art only filled its
   content box, leaving the parent's padded bottom visibly exposed.
   Make the artwork fully bleed to the information panel boundary. */
#work.v20-work .art-fresh .project-art {
  padding:0!important;
  overflow:hidden!important;
}
#work.v20-work .art-fresh .v30-card-art {
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
}
#work.v20-work .art-fresh .project-art::before {
  display:none!important;
}
#work.v20-work .art-fresh .v30-card-image {
  z-index:1;
}


/* V26: Unified project-card interactions and seamless Freshlings image.
   All links in Selected Work and the Equinox feature share one interaction system. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  #work .project-card, .interactive-section .equinox-card {
    transition: transform .42s cubic-bezier(.2,.75,.2,1),
                box-shadow .42s cubic-bezier(.2,.75,.2,1),
                border-color .42s ease!important;
  }
  #work .project-card:hover, #work .project-card:focus-visible,
  .interactive-section .equinox-card:hover,
  .interactive-section .equinox-card:focus-visible {
    transform:translateY(-8px)!important;
    box-shadow:0 30px 60px rgba(35,53,68,.17),0 4px 13px rgba(35,53,68,.055)!important;
    border-color:rgba(163,189,202,.55)!important;
  }
  #work .project-card .circle-arrow, .interactive-section .equinox-card .equinox-entry {
    transition: transform .36s ease, background .36s ease, border-color .36s ease, box-shadow .36s ease!important;
  }
  #work .project-card:hover .circle-arrow, #work .project-card:focus-visible .circle-arrow,
  .interactive-section .equinox-card:hover .equinox-entry,
  .interactive-section .equinox-card:focus-visible .equinox-entry {
    transform:translate(3px,-3px)!important;
    box-shadow:0 8px 18px rgba(44,73,90,.12)!important;
  }
  /* Crop every image inside its existing art frame, never over the card border. */
  #work .project-card:hover .real-project-art img,
  #work .project-card:focus-visible .real-project-art img {transform:scale(1.055)!important;}
  #work .art-fresh:hover .v30-card-image,
  #work .art-fresh:focus-visible .v30-card-image {
    transform:translateX(-50%) scale(1.055)!important;
  }
}
/* Fix the actual seam: one continuous layer from art top through the cut line.
   The phone graphic crosses the bottom of the art viewport and is clipped there.
   No gradient mask, inset, padding, or separate footer strip. */
#work.v20-work .art-fresh .project-art {
  position:relative!important; padding:0!important;
  overflow:hidden!important;
  background:#f5faf6!important;
  isolation:isolate;
}
#work.v20-work .art-fresh .v30-card-art {
  position:absolute!important; inset:0!important;
  margin:0!important; padding:0!important;
  height:100%!important; min-height:0!important; width:100%!important;
  background:radial-gradient(ellipse 65% 62% at 50% 61%,#d0f4e1 0%,#edf9f2 70%,#f8fbf9 100%)!important;
  overflow:hidden!important;
}
#work.v20-work .art-fresh .v30-card-image {
  position:absolute!important;left:50%!important;top:72px!important;bottom:auto!important;
  width:min(66%,366px)!important;height:auto!important;
  transform:translateX(-50%);filter:drop-shadow(0 16px 18px rgba(26,58,40,.13));
}
#work.v20-work .art-fresh .v30-card-image img {
  display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;
}
#work.v20-work .art-fresh .project-art::before,
#work.v20-work .art-fresh .project-art::after {content:none!important;display:none!important;}
/* The information section begins immediately at the crop, as in the reference. */
#work.v20-work .art-fresh .project-info {position:relative;z-index:2;margin-top:0!important;}
#work.v20-work .project-card, .interactive-section .equinox-card {overflow:hidden;cursor:pointer;}
#work.v20-work .project-card:focus-visible, .interactive-section .equinox-card:focus-visible {outline:3px solid #6e9bb5;outline-offset:4px;}
@media(max-width:1059px){#work.v20-work .art-fresh .v30-card-image{top:68px!important;width:min(70%,350px)!important;}}
@media(max-width:690px){#work.v20-work .art-fresh .v30-card-image{top:60px!important;width:min(75%,330px)!important;}}
@media(hover:none), (pointer:coarse), (prefers-reduced-motion:reduce){
 #work .project-card, .interactive-section .equinox-card,
 #work .project-card .circle-arrow, .interactive-section .equinox-entry,
 #work .real-project-art img, #work .v30-card-image {transition:none!important;}
 #work .project-card:hover, .interactive-section .equinox-card:hover {transform:none!important;}
 #work .project-card:hover .real-project-art img {transform:none!important;}
 #work .art-fresh:hover .v30-card-image {transform:translateX(-50%)!important;}
}


/* V27 — shared frosted navigation with a sliding white current-page chip. */
.pillnav,.theme-freshlings .pillnav{
 --nav-position:0;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));
 width:min(468px,calc(100vw - 34px));box-sizing:border-box;
 padding:7px!important;gap:0!important;isolation:isolate;
 background:rgba(241,248,254,.70)!important;border:2px solid rgba(255,255,255,.98)!important;
 border-radius:999px!important;box-shadow:0 13px 31px rgba(62,97,135,.13),inset 0 1px rgba(255,255,255,.85)!important;
 -webkit-backdrop-filter:blur(22px) saturate(1.1);backdrop-filter:blur(22px) saturate(1.1);
}
.pillnav::before,.theme-freshlings .pillnav::before{
 content:"";position:absolute;z-index:0;left:7px;top:7px;bottom:7px;
 width:calc((100% - 14px)/3);border-radius:999px;background:#fff;
 box-shadow:0 3px 15px rgba(80,105,130,.07);
 transform:translateX(calc(var(--nav-position) * 100%));
 transition:transform .46s cubic-bezier(.22,1,.36,1);
 pointer-events:none;
}
.pillnav a,.theme-freshlings .pillnav a,
.pillnav a[aria-current="page"],.theme-freshlings .pillnav a[aria-current="page"]{
 position:relative!important;z-index:1;display:flex;align-items:center;justify-content:center;
 min-width:0!important;padding:16px 10px!important;border:0!important;
 background:transparent!important;box-shadow:none!important;border-radius:999px!important;
 color:#64717b!important;font-weight:650!important;font-size:12px!important;letter-spacing:.13em!important;
 transition:color .25s ease!important;
}
.pillnav a[aria-current="page"],.theme-freshlings .pillnav a[aria-current="page"]{color:#202930!important}
.pillnav a:hover,.pillnav a:focus-visible,.theme-freshlings .pillnav a:hover,.theme-freshlings .pillnav a:focus-visible{color:#243c52!important;background:transparent!important;box-shadow:none!important}
.pillnav:has(a:hover)::before,.pillnav:has(a:focus-visible)::before{background:linear-gradient(125deg,#fff 0%,#f4f9ff 56%,#eff1ff 100%)}
@media(max-width:520px){.pillnav,.theme-freshlings .pillnav{width:min(344px,calc(100vw - 26px));padding:5px!important}.pillnav::before,.theme-freshlings .pillnav::before{left:5px;top:5px;bottom:5px;width:calc((100% - 10px)/3)}.pillnav a,.theme-freshlings .pillnav a{padding:12px 7px!important;font-size:10px!important}}
/* V27 — subtle automatic atmospheric drift only on the Home page hero. */
.site-home .editorial-hero::before,.site-home .editorial-hero::after{
 content:"";position:absolute;pointer-events:none;z-index:-1;
 width:min(820px,85vw);height:650px;border-radius:50%;filter:blur(60px);
 opacity:.50;will-change:transform;
}
.site-home .editorial-hero::before{left:-18%;top:-22%;background:radial-gradient(ellipse,rgba(123,197,251,.42),rgba(152,216,255,.16) 47%,transparent 73%);animation:portfolio-v27-drift-blue 18s ease-in-out infinite alternate}
.site-home .editorial-hero::after{right:-17%;top:0;background:radial-gradient(ellipse,rgba(170,151,232,.35),rgba(207,196,253,.18) 48%,transparent 74%);animation:portfolio-v27-drift-lilac 23s ease-in-out infinite alternate}
@keyframes portfolio-v27-drift-blue{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(130px,65px,0) scale(1.14)}}
@keyframes portfolio-v27-drift-lilac{from{transform:translate3d(0,0,0) scale(1.08)}to{transform:translate3d(-135px,85px,0) scale(.98)}}
@media(max-width:700px),(prefers-reduced-motion:reduce){.site-home .editorial-hero::before,.site-home .editorial-hero::after{animation:none!important;will-change:auto}}
@media(prefers-reduced-motion:reduce){.pillnav::before,.theme-freshlings .pillnav::before,.pillnav a,.theme-freshlings .pillnav a{transition:none!important}}

/* V28 — compact, centered introductory hero + narrower project listings. */
.pillnav,.theme-freshlings .pillnav{width:min(392px,calc(100vw - 48px))!important;top:22px!important;}
.pillnav a,.theme-freshlings .pillnav a{padding:12px 8px!important;font-size:11px!important;}
.site-home .compact-home-hero{
  width:min(1100px,calc(100% - 64px)); min-height: min(730px,88svh);
  margin:0 auto;display:flex;align-items:center;justify-content:center;
  padding:155px 20px 108px!important;text-align:center;position:relative;isolation:isolate;
  background:transparent!important;overflow:visible;
}
.site-home .compact-home-hero .compact-hero-inner{position:relative;z-index:2;max-width:860px;}
.site-home .compact-home-hero .compact-hero-hello{font:italic 400 clamp(30px,4vw,56px)/1.1 Georgia,serif;color:#202930;margin:0 0 16px;}
.site-home .compact-home-hero h1{font:italic 400 clamp(54px,6.4vw,96px)/1.12 Georgia,serif!important;color:#202930!important;letter-spacing:-.052em!important;margin:0 auto 23px;max-width:none;}
.site-home .compact-home-hero h1 em{color:#5D7FB6!important;font:inherit!important;}
.site-home .compact-hero-links{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;align-items:center;}
.site-home .compact-hero-links span{border:1px solid rgba(116,134,184,.5);background:rgba(255,255,255,.48);border-radius:999px;padding:12px 23px;font-size:14px;color:#4c5673;white-space:nowrap;}
.site-home .compact-hero-subline{color:#586874;font-size:clamp(15px,1.5vw,19px);line-height:1.6;margin:30px auto 0;max-width:650px;}
/* Visible blue/lilac background washes drift independently beneath the text. */
.site-home .compact-home-hero::before,.site-home .compact-home-hero::after{display:block!important;position:absolute!important;z-index:0!important;pointer-events:none;width:min(840px,75vw);height:600px;opacity:.9!important;filter:blur(49px);border-radius:50%;will-change:transform;}
.site-home .compact-home-hero::before{content:"";top:3%;left:-12%;background:radial-gradient(ellipse,rgba(123,191,251,.44) 0%,rgba(148,209,253,.2) 48%,transparent 73%);animation:v28-blue-shift 11s ease-in-out infinite alternate!important;}
.site-home .compact-home-hero::after{content:"";bottom:-8%;right:-12%;top:auto;background:radial-gradient(ellipse,rgba(159,140,229,.40) 0%,rgba(195,179,245,.2) 48%,transparent 72%);animation:v28-lilac-shift 14s ease-in-out infinite alternate!important;}
@keyframes v28-blue-shift{from{transform:translate3d(-100px,-35px,0) scale(.9)}to{transform:translate3d(160px,80px,0) scale(1.14)}}
@keyframes v28-lilac-shift{from{transform:translate3d(105px,55px,0) scale(1.15)}to{transform:translate3d(-155px,-100px,0) scale(.92)}}
/* Spacious side margins for both project sections; preserve two columns on desktop. */
.site-home #work.page-width,.site-home .interactive-section.page-width{width:min(1050px,calc(100% - 132px))!important;margin-left:auto;margin-right:auto;}
@media(max-width:760px){
 .site-home .compact-home-hero{width:calc(100% - 28px);min-height:570px;padding:130px 8px 90px!important;}
 .site-home .compact-home-hero h1{font-size:clamp(45px,10vw,69px)!important;}
 .site-home .compact-hero-links span{font-size:12px;padding:10px 15px;}
 .site-home #work.page-width,.site-home .interactive-section.page-width{width:calc(100% - 38px)!important;}
 .pillnav,.theme-freshlings .pillnav{top:15px!important;width:min(360px,calc(100vw - 28px))!important;}
}
@media(prefers-reduced-motion:reduce){.site-home .compact-home-hero::before,.site-home .compact-home-hero::after{animation:none!important;will-change:auto}}

/* V29 — centered home typography, project character, nav hover color. */
.site-home .compact-home-hero{width:min(1100px,calc(100% - 48px));margin-inline:auto!important;padding-left:0!important;padding-right:0!important;display:grid!important;place-items:center!important;}
.site-home .compact-home-hero .compact-hero-inner{position:relative;width:min(100%,850px);margin-inline:auto!important;text-align:center!important;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.site-home .compact-hero-hello,.site-home .compact-home-hero h1,.site-home .compact-hero-subline{text-align:center!important;margin-left:auto!important;margin-right:auto!important;}
.site-home .compact-hero-links{width:100%;justify-content:center!important;}
.site-home .compact-hero-mascot{position:absolute;width:clamp(72px,8vw,115px);height:auto;right:-32px;top:45%;transform:translate(80%,-50%) rotate(9deg);object-fit:contain;filter:drop-shadow(0 12px 18px rgba(93,143,69,.08));pointer-events:none;}
.pillnav a:hover,.pillnav a:focus-visible,.theme-freshlings .pillnav a:hover,.theme-freshlings .pillnav a:focus-visible{color:#5D7FB6!important;}
@media(max-width:1150px){.site-home .compact-hero-mascot{right:0;top:100%;transform:translateY(8px);width:76px;opacity:.9;}}
@media(max-width:760px){.site-home .compact-home-hero{width:calc(100% - 24px)!important;}.site-home .compact-hero-mascot{width:58px;right:4px;top:105%;}}

/* V30 — homepage horizontal project icon strip; no floating hero mascot */
.site-home .compact-hero-mascot { display:none!important; }
.site-home .compact-home-hero .hero-project-icons {
  display:flex; flex-flow:row wrap; justify-content:center; align-items:center;
  width:100%; gap:18px; margin:22px auto 16px;
  position:relative; z-index:3;
}
.site-home .compact-home-hero .hero-project-icon {
  flex:0 0 auto; width:76px; height:76px; display:flex;
  align-items:center; justify-content:center; box-sizing:border-box;
  background:rgba(255,255,255,.45);
  border:1px solid rgba(255,255,255,.84); border-radius:20px;
  box-shadow:0 10px 26px rgba(72,91,122,.09), inset 0 1px 0 rgba(255,255,255,.8);
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  text-decoration:none; cursor:pointer;
  transition:transform .34s cubic-bezier(.2,.8,.2,1),background .34s ease,box-shadow .34s ease,border-color .34s ease;
}
.site-home .compact-home-hero .hero-project-icon img {
  display:block; width:48px; height:54px; max-width:80%; max-height:80%;
  object-fit:contain; flex:none; transform:none; filter:none;
}
@media(hover:hover) and (pointer:fine){
  .site-home .compact-home-hero .hero-project-icon:hover {
    transform:translateY(-5px) scale(1.055);
    background:rgba(255,255,255,.67); border-color:#fff;
    box-shadow:0 18px 34px rgba(72,91,122,.16),0 0 0 6px rgba(93,127,182,.06);
  }
}
.site-home .compact-home-hero .hero-project-icon:focus-visible {
  outline:2px solid #5D7FB6; outline-offset:4px;
}
@media(max-width:640px){
  .site-home .compact-home-hero .hero-project-icons { gap:14px; margin:18px auto 12px; }
  .site-home .compact-home-hero .hero-project-icon { width:64px;height:64px;border-radius:18px; }
  .site-home .compact-home-hero .hero-project-icon img { width:42px;height:48px; }
}
@media(prefers-reduced-motion:reduce){
  .site-home .compact-home-hero .hero-project-icon { transition:none!important; }
  .site-home .compact-home-hero .hero-project-icon:hover { transform:none!important; }
}

/* V32: Freshlings design system — independent scroll reveal and micro-interactions */
.theme-freshlings .fc-cover .fc-hero-inner{padding-top:clamp(30px,5vw,65px)}
.theme-freshlings .fc-cover-brand{gap:13px;margin:0 auto 22px;font-size:clamp(25px,3vw,38px);line-height:1.1}
.theme-freshlings .fc-cover-brand img{width:clamp(48px,5.8vw,72px);height:clamp(48px,5.8vw,72px);animation:fc-sprout-breathe 4.8s ease-in-out infinite;transform-origin:50% 82%;}
@keyframes fc-sprout-breathe{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}
.theme-freshlings .fc-cover-brand img:hover{animation-play-state:paused;transform:scale(1.07)}
/* Child elements appear sequentially as they enter the viewport, not as one block. */
@media (prefers-reduced-motion:no-preference){
  .theme-freshlings .fc-ds-enter{opacity:0;transform:translate3d(0,24px,0);transition:opacity .68s ease,transform .68s cubic-bezier(.22,1,.36,1);transition-delay:var(--fc-reveal-delay,0ms)}
  .theme-freshlings .fc-ds-enter.fc-is-visible{opacity:1;transform:none}
}
.theme-freshlings .fc-ds-color-grid>div{min-width:0}
.theme-freshlings .fc-ds-color-grid i{transform:scale(1);transform-origin:center;transition:transform .34s cubic-bezier(.22,1,.36,1),box-shadow .34s ease;will-change:transform}
.theme-freshlings .fc-ds-icon-visual img{transform:scale(1);transition:transform .4s cubic-bezier(.22,1,.36,1);transform-origin:center center;}
.theme-freshlings .fc-ds-identity>img{transition:transform .38s cubic-bezier(.22,1,.36,1);}
.theme-freshlings .fc-ds-states .track i{transition:filter .25s ease}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
.theme-freshlings .fc-ds-color-grid>div:hover i{transform:scale(1.075);box-shadow:0 8px 18px rgba(40,65,32,.13)}
.theme-freshlings .fc-ds-icon-visual:hover img{transform:scale(1.035)}
.theme-freshlings .fc-ds-identity:hover>img{transform:scale(1.045)}
.theme-freshlings .fc-ds-states>div:hover .track i{filter:brightness(1.08)}
}
@media (prefers-reduced-motion:reduce){
.theme-freshlings .fc-cover-brand img{animation:none;transform:none!important}
.theme-freshlings .fc-ds-enter{opacity:1!important;transform:none!important;transition:none!important}
.theme-freshlings .fc-ds-color-grid i,.theme-freshlings .fc-ds-icon-visual img,.theme-freshlings .fc-ds-identity>img{transition:none!important}
}


/* Freshlings v32: PDF-grounded decision and data additions */
.fc-v32-scanner,.fc-v32-data-section{--v32-ink:#334139;--v32-leaf:#467017;--v32-bark:#735543}
.fc-v32-scanner .fc-section-title,.fc-v32-data-section .fc-section-title{max-width:850px}
.fc-v32-comparison{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);align-items:stretch;gap:20px;margin:46px 0 28px}
.fc-v32-comparison article{border-radius:25px;background:#f5f4ee;padding:34px;min-height:275px;border:1px solid rgba(60,80,50,.10);display:flex;flex-direction:column;gap:13px}
.fc-v32-comparison .fc-v32-compare-positive{background:#eff8dd}
.fc-v32-mini,.fc-v32-pipeline span,.fc-v32-data-grid article>span{font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--v32-leaf)}
.fc-v32-symbol{font-size:46px;line-height:1;color:var(--v32-leaf);margin-top:8px}
.fc-v32-comparison h3,.fc-v32-data-grid h3{font-size:clamp(20px,2vw,28px);line-height:1.15;letter-spacing:-.03em;margin:0;color:var(--v32-ink)}
.fc-v32-comparison p,.fc-v32-data-grid p,.fc-v32-pipeline p{font-size:15px;line-height:1.65;margin:0;color:#4c584e}
.fc-v32-caption{font-size:12px;margin-top:auto;color:var(--v32-bark);font-weight:600;line-height:1.55}
.fc-v32-compare-arrow{align-self:center;justify-self:center;font-size:32px;color:var(--v32-leaf)}
.fc-v32-pipeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:12px 0 22px}
.fc-v32-pipeline>div{border:1px solid rgba(60,80,50,.15);border-radius:18px;padding:23px 20px;min-width:0;display:flex;flex-direction:column;gap:10px}
.fc-v32-pipeline strong{color:var(--v32-ink);font-size:18px;letter-spacing:-.02em}
.fc-v32-data-section{background:#edf3e7;padding:clamp(68px,9vw,132px) 0;margin:clamp(40px,6vw,92px) 0}
.fc-v32-data-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:42px 0 62px}
.fc-v32-data-grid article{background:#fffefa;border-radius:22px;padding:28px 22px;min-height:255px;display:flex;flex-direction:column;gap:14px}
.fc-v32-data-grid small{font-size:12px;line-height:1.5;color:#647061;margin-top:auto}
.fc-v32-freshness{background:#34463c;border-radius:28px;padding:clamp(25px,5vw,55px);color:white;display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(20px,6vw,90px);align-items:center}
.fc-v32-freshness h3{font-size:clamp(24px,3vw,40px);line-height:1.12;letter-spacing:-.04em;margin:12px 0 20px;color:#fff}
.fc-v32-freshness .fc-kicker{color:#c0fa63}.fc-v32-freshness p{color:#e1e9dc;line-height:1.7}
.fc-v32-freshness .fc-note{font-size:12px;color:#bfd0c1}
.fc-v32-hp-list{display:grid;gap:25px}
.fc-v32-hp-row{display:grid;gap:10px}.fc-v32-hp-row>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:14px}
.fc-v32-hp-row span{color:#d4e0d1}.fc-v32-hp-track{height:12px;background:rgba(255,255,255,.17);border-radius:99px;overflow:hidden}.fc-v32-hp-track i{display:block;height:100%;border-radius:99px}
.fc-v32-source{font-size:12px;color:#536455;line-height:1.6;margin-top:22px}
@media(max-width:820px){.fc-v32-pipeline,.fc-v32-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fc-v32-freshness{grid-template-columns:1fr}.fc-v32-comparison{grid-template-columns:1fr;gap:8px}.fc-v32-compare-arrow{transform:rotate(90deg);font-size:26px}.fc-v32-comparison article{min-height:auto}}
@media(max-width:520px){.fc-v32-pipeline,.fc-v32-data-grid{grid-template-columns:1fr}.fc-v32-comparison article{padding:25px}.fc-v32-pipeline>div{padding:20px}.fc-v32-data-grid article{min-height:0}.fc-v32-data-section{margin:55px 0}}


/* V33 — Freshlings optional check-in exploration; scoped to project case study */
.fc-checkin{padding-top:clamp(58px,7vw,112px);padding-bottom:clamp(55px,7vw,105px)}
.fc-checkin-insight{display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(22px,5vw,72px);align-items:center;margin:36px 0 28px;padding:clamp(24px,4vw,44px);background:#f1f5e9;border:1px solid #e1e8d5;border-radius:24px}
.fc-checkin-insight h3{font-size:clamp(24px,2.7vw,37px);line-height:1.14;letter-spacing:-.04em;margin:12px 0;color:#345b21}.fc-checkin-insight p{line-height:1.8;max-width:55ch;color:#56604e;font-size:15px}
.fc-checkin-scenarios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.fc-checkin-scenario{min-width:0;border:1px solid #e6e7dd;background:#fafaf6;border-radius:23px;padding:clamp(20px,3vw,36px);display:flex;flex-direction:column;align-items:center;overflow:hidden}.fc-checkin-copy{align-self:stretch;min-height:226px}.fc-checkin-copy h3{font-size:clamp(23px,2.15vw,31px);line-height:1.18;letter-spacing:-.035em;margin:12px 0}.fc-checkin-copy p{line-height:1.75;font-size:14px;color:#5b6254;max-width:56ch}.fc-checkin-flow{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:22px 0 18px}.fc-checkin-flow span{font-size:11px;font-weight:600;color:#467017;background:#eaf1dc;padding:8px 10px;border-radius:40px}.fc-checkin-flow b{font-size:12px;color:#849475}
.fc-checkin-phone{position:relative;margin:16px auto 0;width:min(100%,278px);height:436px;border:7px solid #263325;border-radius:36px;background:#fff;box-shadow:0 22px 42px #28382a22;overflow:hidden;color:#303c28;font-family:Arial,sans-serif}.fc-checkin-phone-top{height:32px;padding:10px 17px 0;display:flex;justify-content:space-between;font-size:10px;font-weight:700}.fc-checkin-app{height:calc(100% - 32px);padding:9px 14px;background:#f4f7ef}.fc-checkin-app-head{font-size:24px;font-weight:900;display:flex;justify-content:space-between;align-items:center}.fc-checkin-app-head span{font-size:20px}.fc-checkin-faded{opacity:.24;filter:blur(2px);padding-top:15px}.fc-checkin-faded>div{font-size:13px;font-weight:800;margin:12px 0}.fc-checkin-faded i{display:block;height:48px;background:#c7ddba;margin:9px 0;border-radius:13px}.fc-checkin-dialog{position:absolute;left:12px;right:12px;top:112px;background:white;border:1px solid #e1e8d7;border-radius:20px;padding:15px;box-shadow:0 15px 35px #1e321b30}.fc-checkin-dialog-head{display:flex;gap:7px;align-items:center;font-size:12px}.fc-checkin-dialog-head span:last-child{margin-left:auto;color:#788476}.fc-checkin-leaf{color:#467017}.fc-checkin-dialog>p{font-size:15px;font-weight:800;margin:15px 0}.fc-checkin-food{display:flex;justify-content:space-between;align-items:center;padding:11px 9px;background:#f6f8f2;border-radius:9px;font-size:12px;font-weight:700}.fc-checkin-food small{font-size:10px;color:#8d7550}.fc-checkin-options{display:flex;gap:4px;margin:12px 0 18px}.fc-checkin-options span{flex:1;text-align:center;font-size:9px;padding:9px 2px;background:#eff3e8;border-radius:7px}.fc-checkin-options span:nth-child(2){background:#dceac9;color:#3c6320}.fc-checkin-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;padding:0 5px;color:#607058}.fc-checkin-bottom strong{background:#467017;color:white;border-radius:9px;padding:10px 19px}.fc-checkin-caption{display:block;max-width:300px;text-align:center;font-size:11px;line-height:1.55;margin:19px 0 0;color:#798274}
.fc-checkin-notification{background:linear-gradient(160deg,#a6c3b0 0%,#91ab9f 46%,#52685a 100%);color:white}.fc-lock-time{text-align:center;margin:29px 0 22px;font-size:14px}.fc-lock-time strong{font-size:60px;letter-spacing:-.07em;line-height:1.1}.fc-lock-note{margin:0 12px 10px;border-radius:15px;background:#eff3edf0;color:#27362b;padding:12px 14px}.fc-lock-note-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:9px;font-weight:800;color:#5a705c}.fc-lock-note-head small{font-weight:400}.fc-lock-note>b{font-size:12px}.fc-lock-note p{font-size:10px;line-height:1.4;margin:5px 0 0}.fc-lock-delay{font-size:10px;letter-spacing:.02em;text-align:center;padding:9px;color:white}.fc-lock-followup{background:#f7fff2}.fc-checkin-principles{margin-top:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fc-checkin-principles>div{background:#f5f5f0;border-radius:16px;padding:22px}.fc-checkin-principles span{font-size:11px;letter-spacing:.07em;font-weight:800;color:#467017}.fc-checkin-principles p{font-size:13px;line-height:1.7;color:#596354;margin:12px 0 0}.fc-checkin-disclosure{margin-top:24px}
@media(max-width:790px){.fc-checkin-insight,.fc-checkin-scenarios{grid-template-columns:1fr}.fc-checkin-copy{min-height:0}.fc-checkin-principles{grid-template-columns:1fr}.fc-checkin-phone{height:436px}}
@media(prefers-reduced-motion:reduce){.fc-checkin *{animation:none!important;transition:none!important}}

/* V34: clearly visible navigation to Freshlings follow-up exploration */
.fc-checkin-jump-wrap{margin-top:20px;margin-bottom:24px}
.fc-checkin-jump{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;border:1px solid #d8e5c9;border-radius:18px;padding:19px 24px;background:#edf5e5;color:#30491d;text-decoration:none;box-shadow:0 10px 26px rgba(64,100,28,.06);transition:transform .2s ease,box-shadow .2s ease}
.fc-checkin-jump:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(64,100,28,.12)}
.fc-checkin-jump-label{font-size:10px;letter-spacing:.12em;font-weight:800;color:#467017}
.fc-checkin-jump-title{flex:1;font-weight:750;font-size:17px;min-width:210px}
.fc-checkin-jump-action{font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
#fridge-checkin{scroll-margin-top:85px}
@media(max-width:660px){.fc-checkin-jump{align-items:flex-start;flex-direction:column;gap:8px}.fc-checkin-jump-title{min-width:0}}


/* V35: native case-study table of contents, replacing the single green jump card */
.fc-side-toc{position:fixed;z-index:70;left:20px;top:50%;transform:translateY(-43%);width:178px;padding:19px 16px;border:1px solid rgba(66,91,50,.12);border-radius:18px;background:rgba(252,253,247,.93);box-shadow:0 14px 32px rgba(24,45,20,.07);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.fc-side-toc-eyebrow{display:block;color:#7b9070;font-size:10px;letter-spacing:.13em;font-weight:750;margin-bottom:13px}
.fc-side-toc-links{display:flex;flex-direction:column;gap:1px}
.fc-side-toc a{position:relative;display:block;color:#736b62;text-decoration:none;font-size:12px;line-height:1.35;padding:9px 8px 9px 12px;border-radius:8px;transition:color .2s,background .2s}
.fc-side-toc a:hover{background:#eef6e7;color:#386315}
.fc-side-toc a.is-active{background:#e9f4d6;color:#35660e;font-weight:750}
.fc-side-toc a.is-active:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:3px;background:#8abf39;border-radius:4px}
.fc-side-toc-progress{display:block;height:1px;background:rgba(73,111,39,.15);margin-top:14px}
.fc-page section[id]{scroll-margin-top:110px}
@media(min-width:1450px){.fc-page main,.fc-page>.footer{padding-left:105px;box-sizing:border-box}}
@media(max-width:1449px) and (min-width:1100px){.fc-side-toc{left:10px;width:151px;padding:13px 9px}.fc-side-toc a{font-size:11px;padding:8px 7px}.fc-page main{padding-left:115px;box-sizing:border-box}}
@media(max-width:1099px){.fc-side-toc{position:sticky;transform:none;top:68px;left:auto;width:auto;z-index:70;margin:0;padding:7px 14px;border-radius:0;border-left:0;border-right:0;box-shadow:0 3px 9px rgba(24,45,20,.05)}.fc-side-toc-eyebrow,.fc-side-toc-progress{display:none}.fc-side-toc-links{flex-direction:row;gap:5px;overflow-x:auto;scrollbar-width:none;white-space:nowrap}.fc-side-toc-links::-webkit-scrollbar{display:none}.fc-side-toc a{flex:0 0 auto;font-size:12px;padding:9px 12px}.fc-side-toc a.is-active:before{display:none}.fc-page section[id]{scroll-margin-top:130px}}
@media(max-width:650px){.fc-side-toc{top:60px;padding:5px 10px}.fc-side-toc a{font-size:11px;padding:8px 10px}}

/* V36 — quiet, editorial Freshlings table of contents */
@media (min-width: 1100px) {
  .fc-side-toc {
    padding: 7px 0 7px 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .fc-side-toc-eyebrow { margin: 0 0 14px 15px; color: #7f9277; }
  .fc-side-toc-links {
    border-left: 2px solid #dae2d5;
    padding-left: 0;
    gap: 0;
  }
  .fc-side-toc a {
    color: #79716a;
    background: transparent;
    border-radius: 0;
    padding: 9px 9px 9px 17px;
    line-height: 1.4;
  }
  .fc-side-toc a:hover { background: transparent; color: #467017; }
  .fc-side-toc a.is-active {
    background: transparent;
    color: #356510;
    font-weight: 750;
  }
  .fc-side-toc a.is-active:before {
    left: -2px;
    top: 5px;
    bottom: 5px;
    width: 3px;
    background: #86b83f;
    border-radius: 3px;
  }
  .fc-side-toc-progress { display: none; }
}
@media (max-width: 1099px) {
  .fc-side-toc {
    border: 0;
    background: rgba(250,251,247,.96);
    box-shadow: none;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
  }
  .fc-side-toc a { border-radius: 6px; }
  .fc-side-toc a.is-active {
    background: transparent;
    color: #356510;
    font-weight: 750;
    box-shadow: inset 0 -2px #86b83f;
  }
  .fc-side-toc a:hover { background: rgba(134,184,63,.08); }
}

/* V37: feedback-to-design evidence in Freshlings case study */
.fc-iteration-insight {max-width: 720px; margin: 10px 0 20px; font-size: .94rem; line-height: 1.65; color: inherit; opacity: .83;}
.fc-iteration-insight strong {font-weight: 700;}
.fc-summary a {display: inline-block; margin-top: 10px; text-decoration: underline; text-underline-offset: 4px;}

/* V38 — Freshlings prototype CTA: consistent, low-key green accent */
.theme-freshlings .fc-summary .fc-prototype-cta {
  display: inline-flex; align-items: center; gap: 10px;
  width: fit-content; max-width: 100%; margin-top: 22px;
  padding: 11px 15px; border-radius: 10px;
  background: #e9f2e7; border: 1px solid #d3e4d0;
  color: #2f5e3f; font: inherit; font-size: 14px; font-weight: 650;
  line-height: 1.35; letter-spacing: -.01em; text-decoration: none;
  text-underline-offset: initial; transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.theme-freshlings .fc-summary .fc-prototype-cta:hover {
  background: #dcebd9; border-color: #b7d6b5; transform: translateY(-1px);
}
.theme-freshlings .fc-summary .fc-prototype-cta:focus-visible {
  outline: 3px solid #6a9773; outline-offset: 3px;
}
.theme-freshlings .fc-prototype-play {
  width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: currentColor; stroke-width: 1.6;
}
.theme-freshlings .fc-prototype-play path { fill: currentColor; stroke: none; }
.theme-freshlings .fc-prototype-arrow {font-size: 17px; line-height: 1; margin-left: 3px;}
@media (prefers-reduced-motion: reduce) {
  .theme-freshlings .fc-summary .fc-prototype-cta {transition: none;}
  .theme-freshlings .fc-summary .fc-prototype-cta:hover {transform: none;}
}


.interactive-section .equinox-card .equinox-entry{background:#c5a0e6!important;color:#24102e!important;border-color:#c5a0e6!important}
.interactive-section .equinox-card:hover .equinox-entry{background:#dfc0f5!important;color:#27132e!important}

/* V43: Equinox purple arrow is visible by default, not only on hover */
a.equinox-card .equinox-entry,a.equinox-card:not(:hover) .equinox-entry{background:#c5a0e6!important;color:#24102e!important;border-color:#c5a0e6!important;opacity:1!important}
a.equinox-card:hover .equinox-entry{background:#d9b4f0!important;color:#24102e!important}

/* V45: five functional hero links and hover-only Equinox accent */
.site-home .compact-home-hero .hero-project-icons{display:grid!important;grid-template-columns:repeat(5,76px);gap:17px;justify-content:center;max-width:100%;}
.site-home .compact-home-hero .hero-project-icon{width:76px;height:76px;position:relative;}
.site-home .hero-project-glyph{font-family:Georgia,serif;font-size:37px;line-height:1;color:#6f8191;transition:color .25s,transform .25s;display:block;}
.site-home .hero-project-equinox .hero-project-glyph{color:#927ca2;}
.site-home .hero-project-icon:hover .hero-project-glyph{transform:scale(1.08);color:#547cb7;}
.site-home .hero-project-equinox:hover .hero-project-glyph{color:#8f52b5;}
.site-home .compact-home-hero .hero-project-icon:hover{transform:translateY(-5px) scale(1.055)!important;}
.site-home .interactive-section .equinox-card .equinox-entry,
.site-home .interactive-section .equinox-card:not(:hover):not(:focus-visible) .equinox-entry{background:#fff!important;color:#304b5c!important;border-color:#d5dedc!important;}
.site-home .interactive-section .equinox-card:hover .equinox-entry,
.site-home .interactive-section .equinox-card:focus-visible .equinox-entry{background:#c5a0e6!important;color:#24102e!important;border-color:#c5a0e6!important;}
@media(max-width:640px){.site-home .compact-home-hero .hero-project-icons{grid-template-columns:repeat(5,minmax(0,62px));gap:7px;}.site-home .compact-home-hero .hero-project-icon{width:100%;height:62px;border-radius:15px;}.site-home .hero-project-glyph{font-size:29px;}.site-home .compact-home-hero .hero-project-icon img{max-width:70%;max-height:70%;}}
@media(max-width:380px){.site-home .compact-home-hero .hero-project-icons{grid-template-columns:repeat(5,minmax(0,54px));gap:5px;}.site-home .compact-home-hero .hero-project-icon{height:54px;}}
@media(prefers-reduced-motion:reduce){.site-home .compact-home-hero .hero-project-icon:hover{transform:none!important;}}

/* V48 — Freshlings left navigation adopts Equinox's lightweight scroll-spy movement. */
@media (min-width:1100px) {
 .fc-side-toc-links { border-left:0; }
 .fc-side-toc a { border-left:2px solid #dae2d5; padding:8px 10px 8px 13px; transition:color .25s ease,border-color .25s ease,transform .25s ease; }
 .fc-side-toc a:hover {transform:translateX(3px);border-left-color:#86b83f;}
 .fc-side-toc a.is-active {border-left-color:#86b83f;color:#356510;background:transparent;font-weight:650;}
 .fc-side-toc a.is-active:before {display:none;}
}
@media (max-width:1099px) {
 .fc-side-toc a {transition:color .25s ease, box-shadow .25s ease, transform .25s ease;}
 .fc-side-toc a:hover {transform:translateY(-2px);}
}
@media (prefers-reduced-motion:reduce) {.fc-side-toc a {transition:none!important;}}

/* V56: user's original warm/cool Equinox still for fifth homepage icon */
.site-home .compact-home-hero .hero-project-equinox .eq-mini-thumbnail{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover;display:block;border-radius:inherit;}
.site-home .compact-home-hero .hero-project-equinox{overflow:hidden;padding:0!important;}

/* V58 — AI Room project hover and arrow consistently use its blue identity */
#work .project-grid .art-room{--work-accent-bg:#dbeaff;--work-accent-ink:#075fb9}
#work .project-grid .art-room:hover,#work .project-grid .art-room:focus-within{border-color:#bad7fa!important;box-shadow:0 21px 55px rgba(8,100,199,.15)!important}
#work .project-grid .art-room:hover .circle-arrow,#work .project-grid .art-room:focus-within .circle-arrow{background:#0864c7!important;border-color:#0864c7!important;color:#fff!important}
#work .project-grid .art-room:hover .project-type{color:#075fb9!important}
.site-home .hero-project-room:hover,.site-home .hero-project-room:focus-visible{background:#dbeaff!important;border-color:#8abafa!important}
.site-home .hero-project-room:hover .hero-project-glyph,.site-home .hero-project-room:focus-visible .hero-project-glyph{color:#0864c7!important}

/* V61: AI Room tile fills the entire matching hero icon frame. */
.site-home .compact-home-hero .hero-project-room{overflow:hidden;padding:0!important;}
.site-home .compact-home-hero .hero-project-room img.ai-mini-thumbnail{
 width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
 display:block;object-fit:cover;object-position:50% 50%;border-radius:inherit;
 transition:transform .35s cubic-bezier(.2,.7,.2,1),filter .35s ease;
}
.site-home .compact-home-hero .hero-project-room:hover img.ai-mini-thumbnail,
.site-home .compact-home-hero .hero-project-room:focus-visible img.ai-mini-thumbnail{transform:scale(1.055);}
@media(prefers-reduced-motion:reduce){.site-home .compact-home-hero .hero-project-room img.ai-mini-thumbnail{transition:none!important;transform:none!important;}}

/* V69 — five smaller, consistently sized homepage project icons. */
.site-home .compact-home-hero .hero-project-icons {
  grid-template-columns:repeat(5,64px)!important;
  gap:14px!important;
}
.site-home .compact-home-hero .hero-project-icon {
  width:64px!important;
  height:64px!important;
  border-radius:17px;
}
.site-home .hero-project-glyph {font-size:31px;}
.site-home .compact-home-hero .hero-project-icon img:not(.ai-mini-thumbnail):not(.eq-mini-thumbnail) {
  max-width:72%; max-height:72%; width:auto; height:auto;
}
@media(max-width:640px) {
  .site-home .compact-home-hero .hero-project-icons {
    grid-template-columns:repeat(5,minmax(0,52px))!important;
    gap:8px!important;
  }
  .site-home .compact-home-hero .hero-project-icon {
    width:100%!important;height:52px!important;border-radius:14px;
  }
  .site-home .hero-project-glyph {font-size:25px;}
}
@media(max-width:360px) {
  .site-home .compact-home-hero .hero-project-icons {
    grid-template-columns:repeat(5,minmax(0,46px))!important;
    gap:5px!important;
  }
  .site-home .compact-home-hero .hero-project-icon {height:46px!important;border-radius:12px;}
}

/* V71 — Resume detail-column typography aligned with the portfolio text system.
   Keep institutional names and editorial section headings unchanged. */
.site-resume .resume-editorial .resume-detail {min-width:0; overflow-wrap:break-word;}
.site-resume .resume-editorial .resume-detail h3 {
  font-family:var(--type-ui),Inter,Arial,sans-serif!important;
  font-size:clamp(18px,1.45vw,21px)!important;
  font-weight:620!important;
  letter-spacing:-.025em!important;
  line-height:1.38!important;
  margin:0 0 9px!important;
}
.site-resume .resume-editorial .resume-detail p,
.site-resume .resume-editorial .resume-detail .resume-bullets {
  font-family:var(--type-ui),Inter,Arial,sans-serif!important;
  font-size:16px!important;
  font-weight:400!important;
  letter-spacing:normal!important;
  line-height:1.68!important;
  color:var(--portfolio-copy)!important;
}
.site-resume .resume-editorial .resume-detail .resume-honor {
  font-size:15px!important;
  font-weight:550!important;
}
.site-resume .resume-editorial .resume-entry {grid-template-columns:minmax(170px,.95fr) minmax(0,1.65fr);}
@media(max-width:700px){
  .site-resume .resume-editorial .resume-entry {grid-template-columns:minmax(0,1fr)!important;}
  .site-resume .resume-editorial .resume-detail h3 {font-size:19px!important;}
  .site-resume .resume-editorial .resume-detail p,
  .site-resume .resume-editorial .resume-detail .resume-bullets {font-size:15px!important;}
}


/* V72: Shared portfolio presentation system */
.site-home .compact-hero-links span{font-size:12px!important;font-weight:560!important;padding:10px 18px!important;letter-spacing:0!important}
.site-home .compact-hero-links{gap:10px!important;margin-top:22px!important}
.site-home .compact-home-hero .hero-project-icons{margin-top:23px!important;margin-bottom:16px!important;gap:14px!important}
.site-home .compact-hero-subline{margin-top:22px!important;font-size:clamp(14px,1.35vw,17px)!important}
.shared-project-nav{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:62px;padding:26px 0;border-top:1px solid currentColor;color:inherit;border-color:rgba(127,139,151,.28);font:550 14px/1.5 Inter,Arial,sans-serif}
.shared-project-nav a{color:inherit;text-decoration:none;opacity:.78;transition:opacity .2s,color .2s}
.shared-project-nav a:hover,.shared-project-nav a:focus-visible{opacity:1;text-decoration:underline;text-underline-offset:5px}
.fc-page .shared-project-nav{color:#355b43}
.ar-case .shared-project-nav{color:#155da9}
.eq-case .shared-project-nav{color:#d9c4e7;border-top-color:#403745}
.footer{display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;min-height:85px;font-size:12px!important;letter-spacing:.01em}
.footer>span:nth-child(2){display:block!important;text-align:center;white-space:nowrap}
.footer>a:last-child{justify-self:end;text-decoration:none}
.footer>a:last-child:hover{text-decoration:underline;text-underline-offset:4px}
.fc-prototype-cta{gap:11px!important}
.fc-prototype-arrow{display:none!important}
@media(max-width:680px){.shared-project-nav{gap:14px;font-size:12px;padding:19px 0;margin-top:42px}.footer{grid-template-columns:1fr auto!important;gap:12px!important;padding:24px 18px!important}.footer>span:nth-child(2){display:none!important}.site-home .compact-hero-links{gap:8px!important}.site-home .compact-hero-links span{padding:9px 12px!important;font-size:11px!important}.site-home .compact-home-hero .hero-project-icons{gap:8px!important}}


/* V75 — About/Resume design system: one editorial text scale and one intentional motion model. */
.site-resume .resume-editorial .resume-detail h3{font-family:Inter,Arial,sans-serif!important;font-size:20px!important;font-weight:600!important;letter-spacing:-.028em!important;line-height:1.35!important;margin:0 0 10px!important;color:#242f38!important}
.site-resume .resume-editorial .resume-detail p,.site-resume .resume-editorial .resume-detail .resume-bullets{font-family:Inter,Arial,sans-serif!important;font-size:16px!important;font-weight:400!important;line-height:1.7!important;letter-spacing:0!important;color:#586874!important}
.site-resume .resume-editorial .resume-detail .resume-honor{font-weight:400!important;font-size:16px!important;color:#586874!important}
.site-about .future-layout{gap:clamp(28px,5vw,76px);align-items:start}
.site-about .future-cycle.future-process-v75{display:block!important;padding:28px clamp(20px,3vw,36px)!important;background:linear-gradient(145deg,#ffffffed,#f5f8fbeb)!important;border:1px solid #dce5ec!important;border-radius:24px!important;box-shadow:0 16px 46px #44657714!important}
.site-about .future-process-head{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}
.site-about .future-process-head>span{font:700 10px/1.4 Inter,Arial,sans-serif!important;letter-spacing:.18em;color:#6383a0;background:none!important;padding:0!important;text-align:left!important;width:auto!important;border-radius:0!important}
.site-about .future-process-head strong{font:600 19px/1.35 Inter,Arial,sans-serif;color:#253a4a;letter-spacing:-.025em}
.site-about .future-process-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;counter-reset:future}
.site-about .future-process-steps li{display:flex;gap:12px;align-items:start;min-width:0;padding:16px 12px;background:#eef3f7;border:1px solid #e4ebf0;border-radius:14px;position:relative;transition:transform .25s ease,background .25s ease}
.site-about .future-process-steps li:hover{transform:translateY(-3px);background:#e6f0f7}
.site-about .future-step-index{flex:0 0 auto!important;width:auto!important;padding:1px 0!important;background:none!important;color:#6d92b1!important;font:700 12px/1.4 Inter,Arial,sans-serif!important;text-align:left!important;border-radius:0!important}
.site-about .future-step-text{display:flex!important;flex-direction:column;gap:5px;min-width:0;width:auto!important;padding:0!important;background:transparent!important;text-align:left!important;border-radius:0!important;color:inherit!important}
.site-about .future-step-text strong{font:650 15px/1.3 Inter,Arial,sans-serif;color:#263b4b}
.site-about .future-step-text small{font:400 12px/1.4 Inter,Arial,sans-serif;color:#697c8a}
.site-about .future-process-note{margin:20px 0 0!important;padding-top:13px;border-top:1px solid #dae4ea;color:#698397!important;font:400 12px/1.5 Inter,Arial,sans-serif!important;max-width:none!important;display:flex;align-items:center;justify-content:space-between;gap:10px}
.site-about .future-process-note span{width:auto!important;background:none!important;padding:0!important;color:#638cb0!important;font-size:23px!important}
.site-about .about-v14-future .about-future-copy-v75 p{max-width:590px}
.site-about .about-v14-future .journey-link{display:none!important}
.site-about .about-v14-future.reveal,.site-about .about-v14-archive.reveal{transition-duration:.85s}
@media(max-width:800px){.site-about .future-process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.site-about .future-layout{gap:28px}}
@media(max-width:440px){.site-about .future-process-steps{grid-template-columns:1fr}.site-about .future-process-steps li{padding:13px}}
@media(prefers-reduced-motion:reduce){.site-about .future-process-steps li{transition:none!important}.site-about .future-process-steps li:hover{transform:none}}

/* V76 — About timeline: one consistent, visible scroll reveal on both columns. */
@media (prefers-reduced-motion: no-preference) {
 body.site-about .journey-timeline .journey-step.reveal {
   opacity:0;filter:blur(3px);transform:translate3d(0,56px,0) scale(.975);
   transition: opacity .82s cubic-bezier(.2,.75,.2,1),transform .82s cubic-bezier(.2,.75,.2,1),filter .82s ease;
   transition-delay:0ms;will-change:opacity,transform,filter;
 }
 body.site-about .journey-timeline .journey-step.reveal.visible {
   opacity:1;filter:blur(0);transform:translate3d(0,0,0) scale(1);
 }
 body.site-about .journey-timeline .journey-step.right.reveal.visible {transform:translate3d(0,22px,0) scale(1);}
 body.site-about .about-v14-future.reveal {transition-duration:.85s;}
}
@media (prefers-reduced-motion: reduce) {
 body.site-about .journey-timeline .journey-step.reveal,
 body.site-about .journey-timeline .journey-step.reveal.visible {opacity:1!important;filter:none!important;transform:none!important;transition:none!important}
}
@media (max-width:700px) and (prefers-reduced-motion:no-preference){
 body.site-about .journey-timeline .journey-step.right.reveal.visible {transform:none;}
}

/* V78 Border Sense editorial warm coral theme */
.hero-project-border{overflow:hidden!important}.hero-project-border .bs-icon-image{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit;max-width:none!important;max-height:none!important;transition:transform .3s ease}.hero-project-border:hover .bs-icon-image{transform:scale(1.08)}.hero-project-border:hover,.hero-project-border:focus-visible{border-color:#d97b55!important;box-shadow:0 7px 28px #d97b5544!important}.project-card.art-border:hover .circle-arrow{background:#d97b55!important;color:#fff!important}.project-card.art-border:hover{border-color:#e2a082!important}

/* V79 — Border Sense: warm coral consistently throughout home previews */
#work .project-grid .art-border {--work-accent-bg:#fff0e7;--work-accent-ink:#b96b48}
#work .project-grid .art-border .project-type{background:#fff0e7!important;color:#b96b48!important}
#work .project-grid .art-border .project-art{background:linear-gradient(130deg,#fff3eb 0%,#f6e2d6 65%,#ffede3 100%)!important}
#work .project-grid .art-border .project-status{background:#fff0e7!important;color:#b96b48!important}
#work .project-grid .art-border:hover .circle-arrow{background:#d47752!important;color:white!important;border-color:#d47752!important}
.hero-project-border:hover,.hero-project-border:focus-visible{border-color:#d47752!important;box-shadow:0 8px 26px #d4775240!important}

/* V81 Border Sense homepage identifier */
.hero-project-border:hover,.hero-project-border:focus-visible{border-color:#D47855!important;box-shadow:0 0 0 4px #f2b38e55,0 15px 35px #d4785526!important}

/* V84 — thematic home hover rings, consistent for image tiles and glyphs. */
.site-home .compact-home-hero .hero-project-icon {--icon-accent:#71819b;isolation:isolate;outline:0 solid transparent;outline-offset:3px;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important;}
.site-home .hero-project-freshlings {--icon-accent:#76bd62!important;}
.site-home .hero-project-room {--icon-accent:#0864c7!important;}
.site-home .hero-project-border {--icon-accent:#d67b56!important;}
.site-home .hero-project-decode {--icon-accent:#7b829e!important;}
.site-home .hero-project-equinox {--icon-accent:#b78ada!important;}
.site-home .compact-home-hero .hero-project-icon:is(:hover,:focus-visible) {
 border:2px solid var(--icon-accent)!important;
 outline:2px solid var(--icon-accent)!important;
 box-shadow:0 0 0 5px color-mix(in srgb,var(--icon-accent) 15%, transparent),0 12px 24px #1a304316!important;
}
.site-home .compact-home-hero .hero-project-icon:is(:hover,:focus-visible)::after { content:'';position:absolute;left:21%;right:21%;bottom:-9px;height:3px;border-radius:4px;background:var(--icon-accent);pointer-events:none; }
.site-home .compact-home-hero::before {background:radial-gradient(ellipse,rgba(92,174,246,.59) 0%,rgba(119,198,253,.29) 48%,transparent 73%)!important;}
.site-home .compact-home-hero::after {background:radial-gradient(ellipse,rgba(143,115,230,.53) 0%,rgba(187,161,246,.28) 48%,transparent 72%)!important;}
.site-home .editorial-hero::before {background:radial-gradient(ellipse,rgba(112,186,250,.54),rgba(142,209,254,.23) 47%,transparent 73%)!important;}
.site-home .editorial-hero::after {background:radial-gradient(ellipse,rgba(153,131,225,.44),rgba(196,180,250,.25) 48%,transparent 74%)!important;}
@media(prefers-reduced-motion:reduce){.site-home .compact-home-hero .hero-project-icon{transition:none!important;}}

/* V90 — five distinct project identity hovers */
.hero-project-icon.hero-project-freshlings:hover{--project-icon-accent:#65B96D!important}
.hero-project-icon.hero-project-room:hover{--project-icon-accent:#1768C9!important}
.hero-project-icon.hero-project-border:hover{--project-icon-accent:#C46F88!important}
.hero-project-icon.hero-project-decode:hover{--project-icon-accent:#DE8715!important}
.hero-project-icon.hero-project-equinox:hover{--project-icon-accent:#A67BD2!important}
.hero-project-icon .decode-mini-thumbnail{width:100%;height:100%;object-fit:cover;object-position:75% center;border-radius:inherit;display:block}
.hero-project-icon.hero-project-decode:hover{border-color:#DE8715!important;box-shadow:0 0 0 3px rgba(222,135,21,.15)!important}
.hero-project-icon.hero-project-freshlings:hover{border-color:#65B96D!important}
.hero-project-icon.hero-project-equinox:hover{border-color:#A67BD2!important}
.hero-project-icon.hero-project-border:hover{border-color:#C46F88!important}
body:has(.hero-project-icons)::before{background:radial-gradient(ellipse 48% 70% at 18% 0%,rgba(146,207,249,.67),transparent 91%),radial-gradient(ellipse 44% 70% at 86% 3%,rgba(198,187,244,.55),transparent 90%),linear-gradient(180deg,#eaf5ff 0%,rgba(243,246,249,0) 100%)}

/* V91 | one source of truth for home project color identity */
.site-home .compact-home-hero .hero-project-freshlings{--icon-accent:#65B96D!important}
.site-home .compact-home-hero .hero-project-room{--icon-accent:#1768C9!important}
.site-home .compact-home-hero .hero-project-border{--icon-accent:#C46F88!important}
.site-home .compact-home-hero .hero-project-decode{--icon-accent:#DE8715!important}
.site-home .compact-home-hero .hero-project-equinox{--icon-accent:#A67BD2!important}
.site-home .compact-home-hero .hero-project-icon{
  padding:0!important;overflow:visible!important;
  border:1.5px solid #fff!important;
  outline:0!important;
  box-shadow:0 4px 18px #2634540e;
  background:#f2f4fb!important;
}
.site-home .compact-home-hero .hero-project-icon img{
  width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  display:block;object-fit:cover!important;object-position:center;
  border-radius:inherit;clip-path:inset(0 round 15px);
}
.site-home .compact-home-hero .hero-project-icon:is(:hover,:focus-visible){
  border-color:var(--icon-accent)!important;outline:0!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--icon-accent) 30%,transparent),0 12px 28px #2634541c!important;
}
.site-home .compact-home-hero .hero-project-icon:is(:hover,:focus-visible)::after{
  background:var(--icon-accent)!important;bottom:-11px!important;
}
.site-home .hero-project-decode .decode-mini-thumbnail{object-position:50% 49%!important}
#work .project-grid .art-border{
  --work-accent-bg:#fbedf2!important;--work-accent-ink:#A85772!important;
}
#work .project-grid .art-decode{
  --work-accent-bg:#fff1dc!important;--work-accent-ink:#A85E09!important;
}
#work .project-grid .art-border .project-type{background:#fbedf2!important;color:#A85772!important}
#work .project-grid .art-decode .project-type{background:#fff1dc!important;color:#A85E09!important}
#work .project-grid .art-border .project-art{background:#fff2f5!important}
#work .project-grid .art-decode .project-art{background:#fff3df!important}
#work .project-grid .art-border .circle-arrow,
#work .project-grid .art-decode .circle-arrow{transition:background .23s ease,color .23s ease,border-color .23s ease,transform .23s ease}
#work .project-grid .art-border .circle-arrow{background:#fbedf2!important;border-color:#f1d6e1!important;color:#A85772!important}
#work .project-grid .art-decode .circle-arrow{background:#fff1dc!important;border-color:#f2dab4!important;color:#A85E09!important}
#work .project-grid .art-border:hover .circle-arrow{background:#C46F88!important;border-color:#C46F88!important;color:#fff!important}
#work .project-grid .art-decode:hover .circle-arrow{background:#DE8715!important;border-color:#DE8715!important;color:#fff!important}
#work .project-grid .art-border:hover{border-color:#e9b6c8!important}
#work .project-grid .art-decode:hover{border-color:#edc286!important}
#work .project-grid .art-border .project-info,
#work .project-grid .art-decode .project-info{min-height:204px;display:flex;align-items:center;justify-content:space-between;gap:22px}
#work .project-grid .art-border .project-info>div,
#work .project-grid .art-decode .project-info>div{min-width:0}
#work .project-grid .art-border .project-art .real-project-art img,
#work .project-grid .art-decode .project-art .real-project-art img{width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:640px){
  .site-home .compact-home-hero .hero-project-icon img{clip-path:inset(0 round 11px)}
  #work .project-grid .art-border .project-info,
  #work .project-grid .art-decode .project-info{min-height:0}
}

/* V92 — Border Sense home card: use the rose project palette throughout. */
.site-home #work .project-grid .art-border .project-art{background:#fff0f5!important}
.site-home #work .project-grid .art-border .project-info{background:#fff!important}

/* V94 - Consistent space below project navigation, all five projects */
body.fc-page .shared-project-nav, body.ar-case .shared-project-nav, body.bs-page .shared-project-nav, body.dc-page .shared-project-nav, body.eq-case .shared-project-nav { margin-bottom: clamp(72px, 7vw, 116px) !important; }
@media(max-width:680px) { body.fc-page .shared-project-nav, body.ar-case .shared-project-nav, body.bs-page .shared-project-nav, body.dc-page .shared-project-nav, body.eq-case .shared-project-nav { margin-bottom: 64px !important; } }

/* V95 — shared personal-brand atmospheric gradient; project identities remain separate. */
body.site-home::before {
  height:1100px!important;
  background:radial-gradient(ellipse 64% 50% at 14% 5%,rgba(135,205,250,.60),transparent 90%),radial-gradient(ellipse 60% 48% at 90% 7%,rgba(182,166,238,.44),transparent 90%),linear-gradient(180deg,#edf7ff 0%,rgba(243,246,249,0) 100%)!important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 48%,transparent 100%)!important;mask-image:linear-gradient(to bottom,#000 0%,#000 48%,transparent 100%)!important;
}
body.site-resume::before,body.site-about::before {
  height:790px!important;
  background:radial-gradient(ellipse 62% 55% at 14% 2%,rgba(180,219,246,.40),transparent 90%),radial-gradient(ellipse 54% 49% at 88% 4%,rgba(215,205,245,.26),transparent 90%),linear-gradient(180deg,#f0f7fd 0%,rgba(243,246,249,0) 100%)!important;
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 43%,transparent 100%)!important;mask-image:linear-gradient(to bottom,#000 0%,#000 43%,transparent 100%)!important;
}
body.site-resume .page-intro,body.site-about .about-v14-hero {background:transparent!important;}
@media(max-width:700px){body.site-home::before{height:850px!important}body.site-resume::before,body.site-about::before{height:720px!important}}

/* V102 / unified text family across all site pages (project colors preserved) */
html body, html button, html input, html textarea, html select{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;}
.site-home h1 em,.site-resume h1 em,.site-about h1 em,.dc-page h2 em,.about-page-v29 h2 em{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;}
/* Resume/About share the Home blue/lilac atmospheric palette, at reduced saturation */
body.site-resume::before,body.site-about::before{content:"";position:absolute;z-index:-1;pointer-events:none;top:0;left:0;right:0;height:820px;background:radial-gradient(ellipse 46% 65% at 12% 4%,rgba(170,211,245,.35),transparent 94%),radial-gradient(ellipse 43% 65% at 89% 5%,rgba(203,190,241,.28),transparent 93%),linear-gradient(180deg,#f2f8ff 0%,rgba(250,251,253,0) 100%)!important;}
body.site-resume,body.site-about{position:relative;isolation:isolate;}
.site-resume .page-intro p{display:none}
.site-resume .resume-project-tags{color:#697884;font-size:12px;letter-spacing:.02em;margin:3px 0 13px}
.site-resume .resume-detail .resume-bullets{margin-top:8px}
/* About: concise timeline, gentle photo accents; no large lifestyle gallery */
.about-v14-story .journey-three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:42px 0 80px}
.journey-three-card{background:rgba(255,255,255,.82);border:1px solid #dce5ec;border-radius:22px;padding:28px;min-width:0}
.journey-three-card h3{font-size:clamp(23px,2.5vw,32px);line-height:1.18;margin:16px 0}
.journey-three-card p{line-height:1.7;color:#566675;font-size:15px}
.about-photo{margin:20px 0 0;max-width:220px}
.about-photo img{width:100%;aspect-ratio:1.24;object-fit:cover;border-radius:13px}
.about-photo figcaption{margin-top:8px;font-size:11px;color:#738292;line-height:1.4}
.about-v14-future .about-future-refined{display:block}
.about-v14-future .about-future-refined .about-future-copy-v75{max-width:none}
.about-approach-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:32px}
.about-approach-grid article{padding:22px;background:#ffffffc9;border:1px solid #dce5eb;border-radius:18px}
.about-approach-grid article>span{font-size:11px;letter-spacing:.11em;color:#6d87a5;font-weight:700}
.about-approach-grid h3{font-size:21px;line-height:1.2;margin:14px 0 10px}
.about-approach-grid p{color:#586778;font-size:14px;line-height:1.7}
.about-direction{margin-top:75px;max-width:830px}
.about-personal-note{display:flex;align-items:center;gap:22px;margin-top:58px;margin-bottom:85px}
.about-personal-note img{width:114px;height:114px;border-radius:16px;object-fit:cover;flex:none}
.about-personal-note p{max-width:420px;color:#6c7a87;font-size:14px;line-height:1.6}
@media(max-width:850px){.about-v14-story .journey-three-grid,.about-approach-grid{grid-template-columns:1fr}.about-photo{max-width:190px}.about-personal-note img{width:90px;height:90px}}

/* V103: About photo is a quiet visual accent, separate from equal-height journey cards. */
.site-about .about-v14-story .about-journey-photo{width:146px;max-width:32%;margin:-44px 4px 64px auto;padding:0;border:0;background:transparent;}
.site-about .about-v14-story .about-journey-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:11px;box-shadow:none;}
@media(max-width:850px){.site-about .about-v14-story .about-journey-photo{width:124px;margin:-45px 0 56px auto;}}
@media(max-width:480px){.site-about .about-v14-story .about-journey-photo{width:108px;margin:-46px 0 48px auto;}}

/* V104: understated, consistent About travel photography */
.site-about .about-photo-strip{padding:64px 0 102px;}
.site-about .about-photo-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:22px;}
.site-about .about-photo-heading p{margin:0;font-size:13px;color:#6c7b88;line-height:1.6;}
.site-about .about-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:830px;margin:0 auto;}
.site-about .about-photo-grid figure{margin:0;overflow:hidden;border-radius:15px;background:#eaf0f5;aspect-ratio:1.47;}
.site-about .about-photo-grid img{width:100%;height:100%;object-fit:cover;display:block;}
.site-about .about-photo-grid figure:first-child img{object-position:center 49%;}
.site-about .about-photo-grid figure:nth-child(2) img{object-position:center 52%;}
.site-about .about-photo-grid figure:last-child img{object-position:center 60%;}
@media(max-width:680px){.site-about .about-photo-strip{padding:42px 0 72px}.site-about .about-photo-heading{display:block}.site-about .about-photo-heading p{margin-top:9px}.site-about .about-photo-grid{gap:8px}.site-about .about-photo-grid figure{border-radius:9px;aspect-ratio:0.9;}}

/* V105 — About photography: subtle contained zoom; never overlays neighboring content */
.site-about .about-photo-grid figure{position:relative;isolation:isolate;overflow:hidden;cursor:zoom-in;}
.site-about .about-photo-grid figure img{transform:scale(1);transform-origin:center center;transition:transform .42s cubic-bezier(.2,.75,.25,1);will-change:transform;}
@media (hover:hover) and (pointer:fine){
  .site-about .about-photo-grid figure:hover img{transform:scale(1.085);}
}
.site-about .about-photo-grid figure:focus-visible{outline:2px solid #6d91c7;outline-offset:3px;}
.site-about .about-photo-grid figure:focus-visible img{transform:scale(1.085);}
@media (hover:none){
  .site-about .about-photo-grid figure:active img{transform:scale(1.06);}
}
@media (prefers-reduced-motion:reduce){
  .site-about .about-photo-grid figure img{transition:none;will-change:auto;}
}

/* V106 Freshlings portfolio narrative refinements */
.fc-v106-triad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:32px 0 20px}.fc-v106-triad article{padding:22px;border:1px solid rgba(80,100,74,.17);border-radius:18px;background:rgba(250,252,246,.82)}.fc-v106-triad span,.fc-v106-inline-intro span{font-size:11px;font-weight:800;letter-spacing:.11em;color:#638b4d}.fc-v106-triad h3{font-size:18px;line-height:1.3;margin:10px 0}.fc-v106-triad p{font-size:14px;line-height:1.55;margin:0}.fc-v106-opportunity{margin-top:16px!important}.fc-v106-inline-intro{padding-top:20px;padding-bottom:5px}.fc-v106-inline-intro p{max-width:840px;margin:12px 0;color:#56604f}.fc-iteration{scroll-margin-top:95px}.fc-demo-section{scroll-margin-top:95px}@media(max-width:700px){.fc-v106-triad{grid-template-columns:1fr}.fc-v106-triad article{padding:16px}}

/* V108 — Freshlings Problem: eliminate the empty disclaimer column. */
.fc-page #problem .fc-v108-problem-intro{max-width:880px;margin:0 0 42px}
.fc-page #problem .fc-v108-problem-intro .fc-lead{font-size:clamp(21px,2.4vw,30px);line-height:1.47;letter-spacing:-.022em;font-weight:570;color:#26392f;margin:0 0 18px}
.fc-page #problem .fc-v108-context{font-size:13px;line-height:1.7;color:#788983;max-width:760px;margin:0}
.fc-page #problem .fc-section-title{margin-bottom:38px}
.fc-page #problem.fc-section{padding-bottom:90px}
@media(max-width:700px){.fc-page #problem .fc-v108-problem-intro{margin-bottom:30px}.fc-page #problem.fc-section{padding-bottom:65px}}

/* V110: Freshlings personal check-in exploration, focused design rationale */
.fc-checkin-decision{margin:clamp(26px,4vw,56px) 0; padding:clamp(22px,3vw,38px);border-radius:22px;background:linear-gradient(125deg,rgba(227,242,231,.65),rgba(248,250,247,.96));border:1px solid rgba(68,103,83,.13)}
.fc-checkin-decision-header{max-width:760px;margin-bottom:22px}
.fc-checkin-decision-header h3{margin:8px 0 10px;font-size:clamp(1.35rem,2.2vw,1.85rem);line-height:1.22}
.fc-checkin-decision-header p{margin:0;color:#52675b;line-height:1.65}
.fc-checkin-decision-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.fc-checkin-decision-grid>div{position:relative;background:rgba(255,255,255,.78);border:1px solid rgba(68,103,83,.14);border-radius:16px;padding:22px 18px;min-width:0}
.fc-checkin-decision-grid .fc-checkin-choice-selected{background:#fff;border:1.5px solid #6c987d;box-shadow:0 8px 23px rgba(36,88,56,.06)}
.fc-checkin-choice{display:block;font-size:.84rem;font-weight:700;line-height:1.45;letter-spacing:.005em;color:#315040}
.fc-checkin-decision-grid p{font-size:.89rem;line-height:1.65;color:#4e6156;margin:10px 0 0}
.fc-checkin-selected-label{display:inline-block;margin-top:15px;font-size:.66rem;font-weight:700;letter-spacing:.09em;color:#467d59}
.fc-checkin-next{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(16px,4vw,48px);padding:clamp(22px,3vw,36px);margin-top:28px;border:1px solid rgba(65,100,79,.2);border-radius:20px;background:#fbfcfa}
.fc-checkin-next h3{font-size:clamp(1.18rem,1.9vw,1.6rem);line-height:1.3;margin:8px 0 0}
.fc-checkin-next p{color:#526057;font-size:.95rem;line-height:1.7;margin:0}
@media(max-width:760px){.fc-checkin-decision-grid,.fc-checkin-next{grid-template-columns:1fr}.fc-checkin-decision-grid>div{padding:17px}.fc-checkin-decision{padding:19px}}

/* V134 — Home / Selected Work: one consistent resting-state arrow across every project.
   Project colors are intentionally reserved for hover/focus. */
.site-home #work .project-grid .project-card:not(:hover):not(:focus-within) .circle-arrow,
.site-home .interactive-section .equinox-card:not(:hover):not(:focus-within) .equinox-entry {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  border-radius: 50% !important;
  background: #f1f5f8 !important;
  border: 1px solid #cbd8e2 !important;
  color: #36556b !important;
  box-shadow: 0 3px 11px rgba(46, 76, 98, .08) !important;
  opacity: 1 !important;
  display: grid !important;
  place-items: center !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 22px !important;
  font-weight: 450 !important;
}
@media (max-width: 600px) {
  .site-home #work .project-grid .project-card:not(:hover):not(:focus-within) .circle-arrow,
  .site-home .interactive-section .equinox-card:not(:hover):not(:focus-within) .equinox-entry {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
  }
}
