.portfolio-site { --x-border:var(--line); --x-ink:var(--ink); --x-bg:var(--surface); --x-muted:var(--muted); --x-hover:var(--soft); --x-line:var(--line); }
.portfolio-legal { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 23px; padding-bottom:24px; font-size:11px; color:var(--muted); }
.portfolio-legal button { background:none; padding:0; color:inherit; font:inherit; }
.portfolio-legal a:hover,.portfolio-legal button:hover { text-decoration:underline; text-underline-offset:4px; }
.portfolio-site .cookie-choice { bottom:20px; }
.desktop-nav { gap:24px; margin-left:10px; }
.project-toolbar { flex-wrap:wrap; }
.filters { flex-wrap:wrap; max-width:100%; }
.footer-blog { font-size:11px; color:var(--muted); text-underline-offset:4px; }
.footer-blog:hover { text-decoration:underline; }
.visual-360 { background:#e2eadf; }
.logo-360 { color:#2d5847; font-size:25px; letter-spacing:-1px; }
.logo-360 b { font-family:Space Grotesk,Arial,sans-serif; font-size:29px; color:#6e8b43; }
.module-preview { border:4px solid #fff; border-radius:6px; transform:rotate(-2deg); box-shadow:0 10px 25px #253f3014; margin-top:33px; }
.visual-garfield { background:#f1e5d6; }
.logo-garfield { color:#714c32; font-size:27px; font-family:Space Grotesk,Arial,sans-serif; }
.logo-garfield>span { font:10px Google Sans Flex,Arial,sans-serif; letter-spacing:0; margin-left:6px; color:#8b715c; }
.garfield-preview { display:flex; align-items:center; gap:24px; padding:22px 0; }
.garfield-preview img { width:112px; height:112px; border-radius:10px; object-fit:cover; box-shadow:0 10px 25px #6f4a2512; transform:rotate(-6deg); }
.garfield-preview strong { font-size:24px; line-height:1.25; letter-spacing:-.7px; font-weight:600; }
.garfield-preview div>span { display:block; font-size:11px; color:#8b715c; margin-top:15px; }
.addons-section { background:var(--surface); border-block:1px solid var(--line); }
.section-description { max-width:740px; margin-top:25px; font-size:15px; color:var(--muted); line-height:1.9; }
.addon-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:21px; margin-top:37px; }
.addon-card { border:1px solid var(--line); border-radius:6px; padding:25px; background:var(--bg); }
.addon-card-head { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.addon-card-head img { width:44px; height:44px; border-radius:6px; object-fit:cover; }
.addon-card-head div>span { font-size:10px; color:var(--muted); display:block; margin-bottom:4px; }
.addon-card h3 { font-size:20px; letter-spacing:-.6px; }
.addon-card p { font-size:13px; color:var(--muted); line-height:1.85; }
.addon-card .addon-lead { font-size:15px; font-weight:550; color:var(--ink); margin-bottom:12px; line-height:1.65; }
.addon-card ul { list-style:none; padding:16px 0 0; margin:18px 0 0; border-top:1px solid var(--line); }
.addon-card li { font-size:11px; color:var(--muted); margin-top:5px; padding-left:15px; position:relative; }
.addon-card li::before { content:'·'; position:absolute; left:0; color:var(--purple-ink); font-size:18px; line-height:1.1; }
.addon-more { display:flex; justify-content:space-between; align-items:center; gap:35px; margin-top:34px; padding-top:29px; border-top:1px solid var(--line); }
.addon-more h3 { font-size:21px; margin-bottom:10px; }
.addon-more p { max-width:640px; font-size:13px; color:var(--muted); line-height:1.85; }
.addon-more .text-link { flex-shrink:0; font-size:12px; }
.emlak-intro { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.emlak-intro h2 { font-size:43px; }
.emlak-intro p:not(.section-kicker) { font-size:15px; color:var(--muted); line-height:1.9; margin-top:23px; max-width:510px; }
.emlak-intro .button { margin-top:26px; }
.access-note { display:block; font-size:11px; color:var(--muted); margin-top:12px; }
.emlak-showcase { background:#dce7db; padding:38px 20px 22px; border-radius:10px; overflow:hidden; }
.emlak-showcase>img { border:5px solid #fff; border-radius:6px; box-shadow:0 15px 30px #28443016; transform:rotate(-3deg); }
.emlak-showcase>span { display:block; color:#66795f; font-size:10px; margin-top:26px; text-align:center; }
.emlak-features { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px 30px; margin-top:56px; }
.emlak-features article { border-top:1px solid var(--line); padding-top:20px; }
.feature-label { display:block; font-size:11px; color:var(--muted); margin-bottom:11px; }
.emlak-features h3 { font-size:23px; margin-bottom:14px; }
.emlak-features p { font-size:14px; color:var(--muted); line-height:1.9; }
.emlak-approach { display:flex; gap:20px; padding:24px 28px; margin-top:38px; border:1px solid var(--line); border-radius:6px; align-items:center; }
.emlak-approach .skill-icon { margin:0; flex-shrink:0; }
.emlak-approach p { font-size:13px; color:var(--muted); line-height:1.85; }
.emlak-approach strong { color:var(--ink); display:block; font-weight:600; margin-bottom:3px; }
@media(max-width:1100px) {
  .desktop-nav { gap:16px; margin-left:0; }
  .desktop-nav a { font-size:13px; }
  .garfield-preview { gap:18px; padding-top:20px; }
  .garfield-preview img { width:90px; height:90px; }
  .garfield-preview strong { font-size:20px; }
  .garfield-preview div>span { font-size:10px; }
  .addon-grid { gap:17px; }
  .addon-card { padding:21px; }
  .addon-card h3 { font-size:18px; }
  .addon-card-head { gap:10px; }
  .emlak-intro { gap:35px; }
  .emlak-intro h2 { font-size:37px; }
  .emlak-features h3 { font-size:21px; }
}
@media(max-width:850px) {
  .addon-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .addon-more { align-items:flex-start; flex-direction:column; gap:16px; }
  .emlak-intro { gap:30px; }
  .emlak-intro h2 { font-size:32px; }
  .emlak-intro p:not(.section-kicker) { font-size:13px; }
  .emlak-features { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .emlak-showcase { padding:30px 15px 17px; }
  .emlak-showcase>span { font-size:9px; }
  .logo-360 { font-size:22px; }
  .logo-360 b { font-size:25px; }
  .logo-garfield { font-size:23px; }
  .logo-garfield>span { font-size:8px; margin-left:2px; }
  .garfield-preview { gap:16px; padding-top:8px; }
  .garfield-preview img { width:71px; height:71px; border-radius:6px; }
  .garfield-preview strong { font-size:17px; }
  .garfield-preview div>span { font-size:9px; margin-top:10px; }
}
@media(max-width:620px) {
  .filter { padding-inline:10px; }
  .project-count { width:100%; text-align:right; margin-top:2px; }
  .module-preview { margin-top:30px; }
  .logo-360 { font-size:25px; }
  .logo-garfield { font-size:26px; }
  .logo-garfield>span { font-size:10px; }
  .garfield-preview { gap:20px; padding-top:17px; }
  .garfield-preview img { width:90px; height:90px; border-radius:10px; }
  .garfield-preview strong { font-size:20px; }
  .garfield-preview div>span { font-size:10px; }
  .section-description { font-size:14px; margin-top:20px; }
  .addon-grid { grid-template-columns:1fr; gap:17px; margin-top:28px; }
  .addon-card { padding:24px; }
  .addon-card-head img { width:46px; height:46px; }
  .addon-card h3 { font-size:22px; }
  .addon-card p { font-size:14px; }
  .addon-card .addon-lead { font-size:16px; }
  .addon-card li { font-size:12px; }
  .addon-more h3 { font-size:23px; }
  .addon-more p { font-size:14px; }
  .emlak-intro { grid-template-columns:1fr; gap:30px; }
  .emlak-intro h2 { font-size:33px; }
  .emlak-intro p:not(.section-kicker) { font-size:14px; }
  .access-note { font-size:10px; }
  .emlak-showcase { padding:27px 15px 20px; border-radius:6px; }
  .emlak-showcase>span { font-size:10px; margin-top:20px; }
  .emlak-features { grid-template-columns:1fr; gap:26px; margin-top:34px; }
  .emlak-features h3 { font-size:24px; }
  .emlak-features p { font-size:14px; }
  .emlak-approach { align-items:flex-start; padding:22px; gap:15px; }
  .emlak-approach .skill-icon { width:35px; height:35px; border-radius:4px; }
  .emlak-approach .icon { width:19px; height:19px; }
  .emlak-approach p { font-size:12px; }
  .footer-blog { font-size:12px; }
  .site-footer .wordmark { width:auto; flex:1; }
}
@media(max-width:360px) {
  .garfield-preview { gap:15px; }
  .garfield-preview img { width:72px; height:72px; border-radius:6px; }
  .garfield-preview strong { font-size:17px; }
  .garfield-preview div>span { font-size:9px; }
  .logo-garfield { font-size:23px; }
  .logo-garfield>span { font-size:8px; }
  .filter { font-size:10px; padding-inline:9px; }
  .addon-card { padding:21px; }
  .addon-card h3 { font-size:20px; }
  .emlak-intro h2 { font-size:30px; }
}
@media print {
  .addons-section,.addon-card { background:#fff; }
  .addon-grid,.emlak-features { grid-template-columns:1fr 1fr; }
  .addon-card,.emlak-features article { break-inside:avoid; }
  .emlak-showcase { display:none; }
  .emlak-intro { display:block; }
}
