:root{--orange:#ff5a1f;--black:#0a0a0a;--off:#f6f6f4;--gray:#6b6b6b;--line:#ddd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--black);background:var(--off)}h1,h2,h3,.logo{font-family:Montserrat,Arial,sans-serif}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.site-header{height:82px;padding:0 max(24px,calc((100% - 1180px)/2));display:flex;align-items:center;gap:40px;background:#080808;color:white;position:relative;z-index:10}.logo{display:inline-flex;align-items:center;line-height:1}.logo img{display:block;width:146px;height:auto}.builder-ui span{color:var(--orange)}.site-header nav{display:flex;gap:28px;margin-left:auto;font-size:13px}.site-header nav a:hover{color:var(--orange)}.btn{display:inline-block;background:var(--orange);color:white;padding:15px 22px;font-weight:600;font-size:14px;border-radius:3px}.header-cta{margin-left:16px}.menu{display:none;background:none;border:0;color:white;font-size:24px}.hero{min-height:560px;background:#0b0b0b;color:white;position:relative;overflow:hidden;display:flex;align-items:center}.hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 78% 45%,#4a2d18 0,transparent 28%),linear-gradient(90deg,#070707 0%,#101010 52%,#1a130f 100%)}.hero-bg:after{content:"";position:absolute;right:7%;top:17%;width:37%;height:67%;border:1px solid #3c312a;background:linear-gradient(135deg,#151515,#29201a);box-shadow:0 30px 70px #0008;transform:perspective(700px) rotateY(-7deg)}.hero-content{position:relative;width:min(1180px,calc(100% - 48px));margin:auto;z-index:2}.eyebrow{font-size:12px;letter-spacing:4px;font-weight:600}.eyebrow.dark{color:#555}.hero h1{font-size:clamp(48px,6vw,82px);line-height:.96;letter-spacing:-4px;margin:20px 0}.hero h1 em,.contact h2 em{font-style:normal;color:var(--orange)}.lead{font-size:18px;line-height:1.55;max-width:620px}.actions{display:flex;gap:16px;align-items:center;margin-top:28px}.ghost{background:transparent;border:1px solid #888}.services{display:grid;grid-template-columns:repeat(5,1fr);background:var(--off);padding:40px 0}.services article{padding:0 26px;border-right:1px solid var(--line)}.services article:first-child{padding-left:0}.services article:last-child{border:0}.services b{color:var(--orange);font-size:12px}.services h3{font-size:18px;margin:12px 0 8px}.services p{font-size:13px;line-height:1.5;color:#555}.section{padding:90px 0}.work{background:white}.section-intro,.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}.section h2,.contact h2{font-size:clamp(38px,4vw,58px);line-height:1;letter-spacing:-2.5px;margin:14px 0}.section-intro>p,.about-grid>div:last-child{color:#555;line-height:1.7;max-width:520px}.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:42px 0 24px}.placeholder{height:240px;background:linear-gradient(135deg,#111,#3c2b22);position:relative;overflow:hidden}.placeholder:nth-child(2){background:linear-gradient(135deg,#191919,#77543a)}.placeholder:nth-child(3){background:linear-gradient(135deg,#181818,#494949)}.placeholder:nth-child(4){background:linear-gradient(135deg,#e6e1d8,#9c7256)}.placeholder span{position:absolute;bottom:16px;left:16px;background:white;padding:8px 10px;font-weight:600;font-size:12px}.text-link{font-weight:600;font-size:14px}.builder{background:#efefec}.builder-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.builder p{line-height:1.7;color:#555}.builder-ui{background:white;border:1px solid #ccc;border-radius:12px;box-shadow:0 25px 60px #0002;overflow:hidden;transform:rotate(-1deg)}.ui-top{height:52px;border-bottom:1px solid #ddd;display:flex;align-items:center;padding:0 20px;gap:8px;font-size:13px}.ui-top i{width:7px;height:7px;border-radius:50%;background:#ddd}.ui-top i:first-of-type{margin-left:auto}.ui-body{display:grid;grid-template-columns:140px 1fr;min-height:330px}.ui-body aside{padding:28px 20px;line-height:2.8;font-size:12px;color:#555;border-right:1px solid #eee}.preview{margin:25px;background:linear-gradient(120deg,#f4f1ea,#ddd2c3);padding:50px}.preview small{letter-spacing:2px}.preview h3{font-size:34px;line-height:1;margin:16px 0}.preview button{background:var(--orange);border:0;color:white;padding:11px 16px}.about{background:white}.founder{margin-top:24px}.contact{background:#090909;color:white;padding:90px 0}.contact h2{font-size:clamp(44px,5vw,70px)}.contact p:not(.eyebrow){color:#bbb;margin-bottom:30px}footer{background:#050505;color:white;padding:38px 0}.footer{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer p{font-size:12px;color:#999}.footer .logo img{width:132px}@media(max-width:900px){.site-header nav,.header-cta{display:none}.menu{display:block;margin-left:auto}.hero{min-height:600px}.hero-bg:after{opacity:.35;width:55%;right:-12%}.services{grid-template-columns:1fr 1fr}.services article{padding:20px;border-bottom:1px solid var(--line)}.services article:first-child{padding-left:20px}.work-grid{grid-template-columns:1fr 1fr}.builder-grid,.section-intro,.about-grid{grid-template-columns:1fr;gap:30px}.footer{flex-direction:column;align-items:flex-start}}@media(max-width:560px){.wrap,.hero-content{width:calc(100% - 32px)}.site-header{padding:0 16px}.hero{min-height:620px}.hero h1{letter-spacing:-2px}.services{grid-template-columns:1fr}.services article{border-right:0}.work-grid{grid-template-columns:1fr}.placeholder{height:220px}.ui-body{grid-template-columns:1fr}.ui-body aside{display:none}.preview{margin:15px;padding:35px 25px}.actions{flex-wrap:wrap}.footer{align-items:flex-start}}
/* v5 curated portfolio carousels */
.portfolio-section{padding:62px 0;border-top:1px solid #e6e6e2}.portfolio-section:first-child{margin-top:45px}.portfolio-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.portfolio-head h3{font-size:28px;margin:0 0 7px;text-transform:uppercase;letter-spacing:-.6px}.portfolio-head p{margin:0;color:#666;font-size:14px}.carousel-controls{display:flex;gap:8px}.carousel-controls button{width:42px;height:42px;border:1px solid #ccc;background:white;font-size:24px;cursor:pointer}.carousel{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px}.carousel::-webkit-scrollbar{display:none}.work-card{flex:0 0 calc((100% - 36px)/3);scroll-snap-align:start;cursor:zoom-in}.work-image{height:270px;background:#f0f0ed;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid #e4e4e0}.work-image img{width:100%;height:100%;object-fit:contain;display:block}.work-card h4{font:700 14px Montserrat,sans-serif;margin:13px 0 4px}.work-card small{color:#777}.lightbox{position:fixed;inset:0;background:#050505ee;z-index:999;display:none;align-items:center;justify-content:center;padding:40px 80px}.lightbox.open{display:flex}.lightbox figure{margin:0;max-width:min(1400px,90vw);max-height:90vh;text-align:center}.lightbox img{max-width:100%;max-height:82vh;object-fit:contain}.lightbox figcaption{color:#eee;margin-top:12px;font-size:14px}.lightbox-close{position:absolute;right:28px;top:20px;background:none;border:0;color:white;font-size:44px;cursor:pointer}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);border:0;background:#ffffff18;color:white;width:52px;height:70px;font-size:48px;cursor:pointer}.lightbox-nav.prev{left:18px}.lightbox-nav.next{right:18px}
@media(max-width:900px){.work-card{flex-basis:calc((100% - 18px)/2)}}@media(max-width:560px){.portfolio-head{align-items:flex-start}.portfolio-head h3{font-size:23px}.work-card{flex-basis:88%}.work-image{height:250px}.lightbox{padding:55px 18px}.lightbox-nav{width:40px;height:58px}.lightbox-nav.prev{left:4px}.lightbox-nav.next{right:4px}}
/* v6 supporting homepage sections */
.services-section{background:var(--off);padding-top:78px}.services-intro{margin-bottom:42px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{padding:30px;min-height:220px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fafaf8}.service-grid b{font-size:12px;color:var(--orange)}.service-grid h3{font-size:20px;line-height:1.15;margin:22px 0 12px}.service-grid p{font-size:14px;line-height:1.65;color:#5e5e5e;margin:0}.builder-points{display:grid;gap:10px;margin:25px 0 0}.builder-points span{font-size:13px;font-weight:600;padding-left:20px;position:relative}.builder-points span:before{content:'+';position:absolute;left:0;color:var(--orange)}.why{background:#f1f1ee}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:48px;border-top:1px solid #d7d7d2}.why-grid article{padding:30px 26px 10px 0;margin-right:26px;border-right:1px solid #d7d7d2}.why-grid article:last-child{border:0;margin-right:0}.why-grid span,.process-grid b{font-size:12px;color:var(--orange);font-weight:700}.why-grid h3,.process-grid h3{font-size:19px;margin:18px 0 10px}.why-grid p,.process-grid p{font-size:14px;line-height:1.65;color:#626262}.process{background:#0a0a0a;color:#fff}.process .section-intro>p{color:#aaa}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:48px;border-top:1px solid #333}.process-grid article{padding:30px 28px 10px 0;margin-right:28px;border-right:1px solid #333}.process-grid article:last-child{border:0;margin-right:0}.process-grid p{color:#aaa}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end}.contact-copy{padding-bottom:8px}.contact-copy>p:first-child{font-size:17px;line-height:1.7;max-width:470px}.contact-email{font-size:13px!important;color:#777!important;margin:18px 0 0!important}.contact .btn{margin-top:5px}
@media(max-width:900px){.service-grid{grid-template-columns:1fr 1fr}.why-grid,.process-grid{grid-template-columns:1fr 1fr}.why-grid article,.process-grid article{margin-right:0;padding-right:25px}.contact-grid{grid-template-columns:1fr;gap:24px}}
@media(max-width:560px){.service-grid,.why-grid,.process-grid{grid-template-columns:1fr}.service-grid article{min-height:auto}.why-grid article,.process-grid article{border-right:0;border-bottom:1px solid #d7d7d2;padding:24px 0}.process-grid article{border-bottom-color:#333}.why-grid article:last-child,.process-grid article:last-child{border-bottom:0}}
/* v7 selected work homepage */
.featured-work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:42px 0 26px}.featured-work-card{cursor:zoom-in}.featured-work-image{aspect-ratio:1.22/1;background:#eee;overflow:hidden;border:1px solid #e5e5e1}.featured-work-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.featured-work-card:hover .featured-work-image img{transform:scale(1.025)}.featured-work-meta{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-top:12px}.featured-work-meta h3{font-size:14px;margin:0}.featured-work-meta p{font-size:12px;color:#777;margin:0}.view-all{display:inline-block;margin-top:4px}
@media(max-width:900px){.featured-work-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.featured-work-grid{grid-template-columns:1fr}.featured-work-image{aspect-ratio:1.35/1}}
.work-page{background:#fff;min-height:70vh}.work-page h1{font-family:Montserrat,Arial,sans-serif;font-size:clamp(44px,5vw,68px);line-height:.98;letter-spacing:-3px;margin:14px 0}.work-page #portfolio{margin-bottom:45px}

/* v9 — unified rounded portfolio image treatment */
.featured-work-image,
.work-image {
  border: 1px solid #d5d5d1;
  border-radius: 16px;
  overflow: hidden;
  background: #f3f3f0;
}
.featured-work-image img,
.work-image img {
  border-radius: 15px;
}

/* v10 — larger two-up homepage portfolio + orange punctuation */
.orange-period{color:var(--orange)}
.featured-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px;margin-top:48px}
.featured-work-image{aspect-ratio:1.48/1}
.featured-work-meta h3{font-size:16px}
.featured-work-meta p{font-size:13px}
@media(max-width:700px){.featured-work-grid{grid-template-columns:1fr;gap:28px}.featured-work-image{aspect-ratio:1.35/1}}

/* v12 — Our Work organized around client services, not designer disciplines */
.work-hero{align-items:end}.work-nav{display:flex;flex-wrap:wrap;gap:10px;margin:52px 0 12px;padding-bottom:28px;border-bottom:1px solid #deded9}.work-nav a{font-size:12px;font-weight:600;padding:10px 13px;border:1px solid #d8d8d3;border-radius:999px;background:#fafaf8}.work-nav a:hover{border-color:var(--orange);color:var(--orange)}
.service-work{scroll-margin-top:24px;padding:70px 0}.service-work:first-child{margin-top:0}.service-head{display:block;max-width:780px;margin-bottom:30px}.service-number{display:block;color:var(--orange);font:700 12px Montserrat,sans-serif;margin-bottom:14px}.service-head h3{font-size:clamp(28px,3vw,40px);text-transform:none;letter-spacing:-1.5px;margin:0 0 14px}.service-head p{font-size:15px;line-height:1.7;max-width:720px}.service-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 24px}.service-card{cursor:zoom-in}.service-card .work-image{height:auto;aspect-ratio:1.48/1}.service-card .work-image img{object-fit:contain}.service-card h4{font-size:16px;margin-top:14px}.service-card small{font-size:12px;line-height:1.5}.work-cta{margin:35px 0 45px;background:#0a0a0a;color:white;border-radius:16px;padding:58px}.work-cta .eyebrow{color:#999}.work-cta h2{font-size:clamp(34px,4vw,54px);margin:12px 0 16px}.work-cta>p:not(.eyebrow){color:#aaa;line-height:1.7;max-width:610px;margin-bottom:28px}.back-home{display:inline-block;margin-top:10px}
@media(max-width:700px){.work-nav{gap:7px;margin-top:38px}.service-work{padding:52px 0}.service-work-grid{grid-template-columns:1fr;gap:28px}.service-card .work-image{aspect-ratio:1.35/1}.work-cta{padding:38px 26px}}
/* v13 — client attribution + website links */
.service-card .client-line{font-size:13px;margin:7px 0 4px;color:#333}.service-card .client-line strong{font-weight:700}.service-card small{display:block}.project-url{display:inline-block;margin-top:9px;color:var(--orange);font-size:12px;font-weight:700}.project-url:hover{text-decoration:underline}

/* v14: project captions emphasize services delivered */
.services-line{margin:.45rem 0 0;color:#626262;font-size:.92rem;line-height:1.5}.services-line strong{color:#202020;font-weight:600}.client-line{margin-bottom:0}.project-url{display:inline-block;margin-top:.65rem}
/* v16 — revenue-focused starter offers */
.packages{background:#f1f1ee}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:48px}.package-card{background:#fff;border:1px solid #d9d9d4;border-radius:16px;padding:32px;display:flex;flex-direction:column;min-height:520px}.package-card.featured-package{border:2px solid var(--orange);padding:31px}.package-kicker{font:700 11px Montserrat,sans-serif;letter-spacing:2px;color:var(--orange);margin:0 0 20px}.package-card h3{font-size:24px;line-height:1.12;margin:0}.package-card .price{font:700 22px Montserrat,sans-serif;margin:14px 0 18px}.package-card>p:not(.package-kicker):not(.price){color:#5f5f5f;font-size:14px;line-height:1.65}.package-card ul{padding:0;margin:22px 0 28px;list-style:none;border-top:1px solid #e5e5e1}.package-card li{font-size:13px;line-height:1.5;padding:11px 0 11px 20px;border-bottom:1px solid #e5e5e1;position:relative}.package-card li:before{content:'+';position:absolute;left:0;color:var(--orange);font-weight:700}.package-card .text-link{margin-top:auto}.package-note{font-size:12px;color:#777;line-height:1.6;max-width:880px;margin:22px 0 0}@media(max-width:900px){.package-grid{grid-template-columns:1fr}.package-card{min-height:auto}}

/* v17 — full services and pricing page */
.service-page-hero{background:#fff;padding-bottom:64px}.service-page-hero h1{font:800 clamp(48px,6vw,78px)/.98 Montserrat,sans-serif;letter-spacing:-4px;margin:18px 0 24px;max-width:900px}.service-page-lead{font-size:18px;line-height:1.7;color:#555;max-width:760px}.service-jump{display:flex;flex-wrap:wrap;gap:9px;margin-top:34px}.service-jump a{border:1px solid #d8d8d3;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:600}.service-jump a:hover{border-color:var(--orange);color:var(--orange)}.service-detail{background:#fff;scroll-margin-top:20px}.service-detail.alt{background:#f1f1ee}.service-detail-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}.service-detail h2{margin-bottom:22px}.service-copy{color:#5d5d5d;line-height:1.75;max-width:510px}.service-offers{border-top:1px solid #d8d8d3}.service-offers article{padding:25px 0;border-bottom:1px solid #d8d8d3}.service-offers h3{font-size:20px;margin:0 0 8px}.service-offers p{font-size:14px;line-height:1.65;color:#5e5e5e;margin:5px 0}.service-offers .offer-price{font:700 13px Montserrat,sans-serif;color:var(--orange);margin:0 0 10px}@media(max-width:900px){.service-detail-grid{grid-template-columns:1fr;gap:32px}.service-page-hero h1{letter-spacing:-2px}}
/* v18 specialized offers */
.special-offers{background:#0b0b0b;color:#fff}.special-offers .section-intro>p{color:#aaa}.special-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:44px}.special-card{border:1px solid #333;border-radius:16px;padding:34px;background:#111}.special-card .package-kicker{margin-bottom:14px}.special-card h3{font-size:28px;margin:0 0 14px}.special-card p{color:#aaa;line-height:1.65}.special-card .text-link{color:#fff}.feature-list{list-style:none;padding:0;margin:28px 0;border-top:1px solid #ddd}.feature-list li{padding:13px 0 13px 22px;border-bottom:1px solid #ddd;position:relative;font-size:14px}.feature-list li:before{content:'+';position:absolute;left:0;color:var(--orange);font-weight:700}.offer-hero{background:#fff}.offer-hero h1{font:800 clamp(48px,6vw,78px)/.98 Montserrat,sans-serif;letter-spacing:-4px;max-width:980px;margin:18px 0 24px}.offer-lead{font-size:19px;line-height:1.7;color:#555;max-width:780px}.offer-price-big{font:800 34px Montserrat,sans-serif;margin:28px 0 8px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.dark-section{background:#0b0b0b;color:#fff}.dark-section p{color:#aaa;line-height:1.7}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}.plan-card{background:#fff;border:1px solid #ddd;border-radius:16px;padding:30px}.plan-card h3{margin:0 0 8px}.plan-card .price{font:700 25px Montserrat,sans-serif}.plan-card p{color:#666;line-height:1.6}.small-note{font-size:12px;color:#777;line-height:1.6;margin-top:20px}.nav-more{white-space:nowrap}@media(max-width:900px){.special-grid,.split,.plan-grid{grid-template-columns:1fr}.offer-hero h1{letter-spacing:-2px}}

/* v20 — restrained service icon system */
.service-icon{width:42px;height:42px;border:1px solid #d9d9d4;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;background:#fff;color:var(--orange)}
.service-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.service-grid .service-icon{margin-bottom:16px}.service-grid article{position:relative}.service-grid article>b{display:block;margin-top:2px}
.service-detail-grid>div:first-child>.service-icon{width:48px;height:48px;margin-bottom:20px}.service-detail-grid>div:first-child>.service-icon svg{width:25px;height:25px}
.special-grid .service-icon{margin-bottom:20px}
@media(max-width:560px){.service-icon{width:40px;height:40px}.service-detail-grid>div:first-child>.service-icon{width:44px;height:44px}}

/* v21 — Digital Resume icon system */
.resume-icon{width:50px;height:50px;border:1px solid #d9d9d4;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--orange);background:#fff}
.resume-icon svg,.mini-icon svg{fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.resume-icon svg{width:26px;height:26px}.featured-package .resume-icon{border-color:var(--orange)}
.resume-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px}
.resume-feature{border:1px solid #e0e0dc;border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:12px;font-size:13px;background:#fff}
.mini-icon{width:34px;height:34px;border-radius:9px;background:#f4f4f1;color:var(--orange);display:flex;align-items:center;justify-content:center;flex:0 0 34px}
.mini-icon svg{width:18px;height:18px}.resume-feature b{font:600 12px Montserrat,sans-serif}
@media(max-width:800px){.resume-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.resume-feature-grid{grid-template-columns:1fr}}

/* Keep package features visually grouped with the pricing comparison. */
.resume-package-summary{margin-top:24px;padding:24px;background:#eeeee9;border-radius:16px}
.resume-summary-heading h3{margin:0 0 8px;font:700 18px Montserrat,sans-serif}
.resume-summary-heading p{margin:0;color:#60605b;font-size:14px;line-height:1.6}
.resume-package-summary .resume-feature-grid{margin-top:18px;gap:8px 20px}
.resume-package-summary .resume-feature{border:0;border-radius:0;background:transparent;padding:10px 0;align-items:center}
.resume-feature-label{display:flex;flex-direction:column;gap:5px}
.resume-feature-label small{font-size:11px;line-height:1.4;color:#60605b}
@media(max-width:480px){.resume-package-summary{padding:20px}}

.resume-home{background:#fff;border-bottom:1px solid var(--line);padding:64px 0}
.resume-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.resume-home-copy>p:first-child{color:#555;font-size:16px;line-height:1.7;margin-top:0;max-width:520px}
.resume-home-price{font:700 23px Montserrat,sans-serif;margin:20px 0}
.resume-home-copy .btn{display:inline-block}
@media(max-width:900px){.resume-home-grid{grid-template-columns:1fr;gap:24px}.resume-home{padding:48px 0}}

.resume-home-grid{grid-template-columns:1fr 1fr;gap:28px 64px}
.resume-home-grid>div:first-child{grid-column:1}.resume-home-copy{grid-column:1;grid-row:2}
.resume-home-visual{grid-column:2;grid-row:1 / span 2;position:relative;min-height:390px;background:radial-gradient(ellipse at 75% 60%,#ffd8c5,transparent 65%),#f3f1ed;border-radius:24px;overflow:hidden;padding:30px}
.resume-visual-profile{width:78%;background:#fff;border:1px solid #ddd;border-radius:12px;overflow:hidden;box-shadow:0 16px 36px #00000012;transform:rotate(-5deg)}
.resume-visual-toolbar{display:flex;align-items:center;gap:4px;padding:13px;border-bottom:1px solid #eee}.resume-visual-toolbar i{width:5px;height:5px;background:#ddd;border-radius:50%}.resume-visual-toolbar span{margin-left:8px;font-size:8px;letter-spacing:1px;color:#777}
.resume-visual-content{padding:22px}.resume-visual-avatar{background:#ffe4d7;color:var(--orange);width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-weight:700;font-size:12px;margin-bottom:15px}.resume-visual-content strong{display:block;font-size:22px;line-height:1.1;letter-spacing:-.8px}.resume-visual-content strong>span{color:var(--orange)}.resume-visual-content p{font-size:9px;color:#777;margin:12px 0}.resume-visual-lines{display:grid;gap:7px;margin:16px 0}.resume-visual-lines i{height:4px;width:90%;background:#eee;border-radius:5px}.resume-visual-lines i:nth-child(2){width:75%}.resume-visual-lines i:nth-child(3){width:60%}.resume-visual-button{display:inline-block;background:var(--orange);color:#fff;font-size:9px;padding:9px 12px;border-radius:3px}
.resume-visual-card{position:absolute;right:24px;bottom:53px;width:230px;background:#111;color:white;border-radius:12px;padding:20px;box-shadow:0 18px 30px #0003;transform:rotate(8deg)}.resume-visual-card>span{font-size:10px;font-weight:700;letter-spacing:1px}.resume-visual-card svg{position:absolute;right:19px;top:17px;width:28px;height:28px;fill:var(--orange);stroke:var(--orange);stroke-width:2;stroke-linecap:round}.resume-visual-card svg path{fill:none}.resume-visual-card strong{display:block;font-size:19px;line-height:1.2;margin:23px 0 16px}.resume-visual-card small{font-size:8px;letter-spacing:1.4px;color:#aaa}.resume-visual-caption{position:absolute;bottom:17px;left:30px;font-size:11px;font-weight:600;color:#6d615a}
@media(max-width:900px){.resume-home-grid{grid-template-columns:1fr;gap:24px}.resume-home-visual{grid-column:1;grid-row:3;max-width:540px;width:100%}.resume-home-copy{grid-row:2}}
@media(max-width:480px){.resume-home-visual{min-height:370px;padding:24px}.resume-visual-profile{width:88%}.resume-visual-card{width:205px;right:18px}.resume-visual-content strong{font-size:20px}}

.nfc-demo{padding:20px;min-height:420px}.nfc-stage{position:relative;height:340px}.nfc-scene{width:100%;height:100%}.demo-tap-arm{transform-origin:167px 174px;animation:tap-arm 9s ease-in-out both}.demo-chat{animation:chat-hide 9s both}.demo-signal{opacity:0;animation:tap-signal 9s both}.demo-contact{position:absolute;left:50%;top:16px;transform:translateX(-50%) translateY(18px);width:235px;padding:22px;background:white;border:5px solid #191919;border-radius:25px;box-shadow:0 18px 45px #0002;text-align:center;opacity:0;animation:contact-reveal 9s both}.demo-contact-avatar{width:48px;height:48px;display:grid;place-items:center;background:#ffe4d7;color:#e74a17;border-radius:50%;margin:0 auto 12px;font-weight:700}.demo-contact strong{display:block;font-size:20px}.demo-contact>span{display:block;font-size:10px;color:#666;margin:8px 0 18px}.demo-contact-links{display:grid;gap:7px;text-align:left}.demo-contact-links span{padding:9px;background:#f3f3ef;border-radius:5px;font-size:11px}.demo-save{background:var(--orange);color:white;padding:11px;font-size:12px;margin-top:14px;border-radius:5px}.demo-contact small{display:block;font-size:9px;color:#888;margin-top:10px}.demo-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.demo-step{position:relative;height:18px;flex:1;margin:0;font-size:12px;font-weight:600}.demo-step>span{position:absolute;inset:0;opacity:0}.step-chat{animation:step-one 9s both}.step-tap{animation:step-two 9s both}.step-contact{animation:step-three 9s both}.demo-replay{border:1px solid #d4ccc4;background:white;border-radius:20px;padding:8px 12px;cursor:pointer;font:600 11px Inter,sans-serif;color:#222}.demo-replay:hover{border-color:var(--orange)}.demo-note{font-size:10px;line-height:1.5;color:#766c64;margin:12px 0 0}
@keyframes tap-arm{0%,25%{transform:rotate(35deg)}40%,65%{transform:rotate(0)}80%,100%{transform:rotate(35deg)}}
@keyframes chat-hide{0%,25%{opacity:1}35%,100%{opacity:0}}
@keyframes tap-signal{0%,39%{opacity:0}45%,55%{opacity:1}65%,100%{opacity:0}}
@keyframes contact-reveal{0%,62%{opacity:0;transform:translateX(-50%) translateY(18px)}75%,100%{opacity:1;transform:translateX(-50%) translateY(0)}}
@keyframes step-one{0%,29%{opacity:1}30%,100%{opacity:0}}
@keyframes step-two{0%,29%{opacity:0}30%,64%{opacity:1}65%,100%{opacity:0}}
@keyframes step-three{0%,64%{opacity:0}65%,100%{opacity:1}}
.nfc-demo.demo-waiting *{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.nfc-demo *{animation:none!important}.demo-chat,.demo-signal,.step-chat,.step-tap{opacity:0}.demo-contact,.step-contact{opacity:1}.demo-contact{transform:translateX(-50%)}.demo-replay{display:none}}

/* Flat vector palette inspired by the supplied illustration. */
.nfc-demo{background:#f5f5f4;border-radius:20px}.nfc-scene{filter:none}.demo-contact{border-color:#5964ae;box-shadow:0 10px 0 #5964ae18}.demo-contact-avatar{background:#fde0eb;color:#df4387}.demo-contact-links span{background:#eef2fc}.demo-save{background:#ee438a}.demo-replay{border-color:#c8cde5;color:#505da2}.demo-step{color:#414c88}.demo-note{color:#70788c}

.nfc-demo{padding:0;overflow:hidden;background:#f7f5f1}.nfc-demo .nfc-stage{height:auto;aspect-ratio:3/2;overflow:hidden}.nfc-editorial-art{display:block;width:100%;height:100%;object-fit:cover;animation:editorial-scene 9s ease both}.editorial-tap{position:absolute;left:56%;top:49%;width:0;height:0}.editorial-tap i{position:absolute;width:56px;height:56px;border:2px solid var(--orange);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #fff6}.editorial-tap i+i{width:86px;height:86px;border-color:#ff5a1f88;box-shadow:none}.nfc-demo .demo-contact{top:50%;width:210px;padding:16px;animation:editorial-contact 9s both}.nfc-demo .demo-footer{padding:16px 20px 0}.nfc-demo .demo-note{padding:0 20px 16px;margin-bottom:0}.nfc-demo .demo-contact-avatar{width:36px;height:36px;margin-bottom:8px}.nfc-demo .demo-contact>span{margin:6px 0 10px}.nfc-demo .demo-contact-links{gap:5px}.nfc-demo .demo-contact-links span{padding:7px}.nfc-demo .demo-save{margin-top:10px;padding:9px}
@keyframes editorial-scene{0%,25%{transform:scale(1);filter:none}55%,65%{transform:scale(1.045);filter:none}78%,100%{transform:scale(1.045);filter:brightness(.75)}}
@keyframes editorial-contact{0%,62%{opacity:0;transform:translate(-50%,-44%) scale(.94)}75%,100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@media(prefers-reduced-motion:reduce){.nfc-demo .demo-contact{transform:translate(-50%,-50%)}.nfc-editorial-art{filter:brightness(.75)}}

.nfc-demo .demo-contact{border-color:#222;box-shadow:0 10px 0 #22222218}.nfc-demo .demo-contact-avatar{background:#ffe4d7;color:var(--orange)}.nfc-demo .demo-contact-links span{background:#f4f1ed}.nfc-demo .demo-save{background:var(--orange)}.nfc-demo .demo-replay{border-color:#d7cfc7;color:#333}.nfc-demo .demo-step{color:#333}

.hero-bg:after{display:none}.hero{min-height:650px}.hero-content{pointer-events:none}.hero-content a{pointer-events:auto}.hero .lead{max-width:510px}.hero h1{font-size:clamp(48px,5.3vw,76px)}
.hero-portfolio{position:absolute;right:max(24px,calc((100% - 1250px)/2));top:50%;transform:translateY(-50%);width:43%;max-width:565px;height:465px;z-index:1}
.hero-project{position:absolute;margin:0;background:#fafaf8;border:1px solid #ffffff30;border-radius:8px;overflow:hidden;box-shadow:0 24px 50px #0007}.hero-project img{display:block;width:100%;height:calc(100% - 37px);object-fit:cover}.hero-project figcaption{display:flex;align-items:center;justify-content:space-between;height:37px;padding:0 12px;font-size:8px;font-weight:700;letter-spacing:1.1px;color:#666}.hero-project figcaption span{font-size:10px;color:#171717;letter-spacing:0}
.hero-project-web{top:28px;left:3%;width:91%;height:270px;transform:rotate(-5deg);z-index:1}.hero-project-brand{left:0;bottom:10px;width:51%;height:200px;transform:rotate(-8deg);z-index:2}.hero-project-print{right:0;bottom:1px;width:46%;height:214px;transform:rotate(7deg);z-index:3}.hero-project-print img{object-position:center}
@media(min-width:901px) and (max-width:1200px){.hero .lead{max-width:440px}.hero h1{font-size:58px}.hero-portfolio{width:40%;height:410px}.hero-project-web{height:240px}.hero-project-brand{height:170px}.hero-project-print{height:185px}}
@media(max-width:900px){.hero{display:flex;flex-direction:column;align-items:stretch;padding:60px 0 30px;gap:30px}.hero-content{order:0;margin:0 auto}.hero-portfolio{position:relative;top:auto;right:auto;transform:none;order:1;width:calc(100% - 48px);height:430px;margin:0 auto}.hero .lead{max-width:620px}}
@media(max-width:560px){.hero{padding-top:42px}.hero-portfolio{width:calc(100% - 40px);height:330px}.hero-project-web{height:195px;top:15px}.hero-project-brand{height:155px;bottom:8px}.hero-project-print{height:165px}.hero-project figcaption{font-size:6px;padding:0 8px;letter-spacing:.5px}.hero-project figcaption span{font-size:8px}}


.hero-portfolio{width:44%;max-width:600px;height:485px}.hero-project-web{width:94%;height:290px;top:5px;transform:rotate(-3deg)}.hero-project-web img{object-fit:cover;object-position:50% 48%}.hero-project-brand{width:53%;height:220px;bottom:0;transform:rotate(-5deg)}.hero-project-brand img{object-fit:cover;object-position:25% 25%}.hero-project-print{width:47%;height:225px;bottom:0;transform:rotate(5deg)}.hero-project figcaption{font-size:9px;letter-spacing:.6px}.hero-project figcaption span{font-size:11px}
@media(min-width:901px){.hero h1{max-width:54%;font-size:clamp(46px,4.8vw,68px)}.hero .lead{max-width:46%}}
@media(max-width:900px){.hero-portfolio{width:calc(100% - 48px);max-width:600px;height:485px}}
@media(max-width:560px){.hero-portfolio{width:calc(100% - 40px);height:335px}.hero-project-web{height:200px}.hero-project-brand{height:150px}.hero-project-print{height:155px}.hero-project figcaption{font-size:7px}.hero-project figcaption span{font-size:9px}}

.hero-project-crop{position:relative;height:calc(100% - 37px);overflow:hidden;background:#eee}
.hero-project .hero-project-crop img{position:absolute;max-width:none;object-fit:fill;height:auto}
.hero-project-web .hero-project-crop img{width:222.22%;height:326.72%;left:-52.78%;top:-96.81%}
.hero-project-brand .hero-project-crop img{width:320%;height:357.21%;left:-50%;top:-25.58%}
.hero-project-print .hero-project-crop img{width:315.08%;height:238.13%;left:-30.77%;top:-35.42%}

/* Rotating portfolio stack inspired by the supplied motion reference. */
.hero-portfolio{height:420px;perspective:1100px}
.hero-portfolio .hero-project{left:8%;top:25px;right:auto;bottom:auto;width:76%;height:335px;transform:translateX(0) scale(1);transform-origin:center;animation:portfolio-stack 12s cubic-bezier(.45,0,.25,1) infinite;will-change:transform,opacity;box-shadow:0 25px 65px #0008}
.hero-portfolio .hero-project-brand{animation-delay:-8s}.hero-portfolio .hero-project-print{animation-delay:-4s}
@keyframes portfolio-stack{
0%,25%{transform:translateX(0) translateZ(50px) rotateY(-3deg) scale(1);opacity:1;z-index:3}
33%,58%{transform:translateX(26%) translateY(14px) translateZ(-90px) rotateY(-12deg) scale(.87);opacity:.5;z-index:2}
66%,91%{transform:translateX(-17%) translateY(27px) translateZ(-190px) rotateY(10deg) scale(.75);opacity:.25;z-index:1}
100%{transform:translateX(0) translateZ(50px) rotateY(-3deg) scale(1);opacity:1;z-index:3}}
.hero-portfolio:hover .hero-project,.hero-portfolio:focus-within .hero-project{animation-play-state:paused}
@media(max-width:560px){.hero-portfolio{height:320px}.hero-portfolio .hero-project{height:250px;top:15px;width:78%}}
@media(prefers-reduced-motion:reduce){.hero-portfolio .hero-project{animation:none;will-change:auto}.hero-portfolio .hero-project-web{transform:translateX(0);z-index:3}.hero-portfolio .hero-project-brand{transform:translateX(26%) translateY(14px) scale(.87);opacity:.5;z-index:2}.hero-portfolio .hero-project-print{transform:translateX(-17%) translateY(27px) scale(.75);opacity:.25;z-index:1}}

.hero-project-brand .hero-project-crop img{width:100%;height:100%;left:0;top:0;object-fit:cover;object-position:center}

/* Preserve complete source artwork; move cards without scaling or perspective. */
.hero-portfolio{perspective:none;height:420px}
.hero-portfolio .hero-project{width:84%;height:335px;left:0;top:32px;transform-origin:center;animation:portfolio-slide 15s ease-in-out infinite;will-change:auto;border-radius:8px;box-shadow:0 15px 32px #0005}
.hero-portfolio .hero-project-brand{animation-delay:-10s}.hero-portfolio .hero-project-print{animation-delay:-5s}
.hero-project-crop{height:calc(100% - 37px);position:relative;overflow:hidden;background:#eee}
.hero-portfolio .hero-project .hero-project-crop img{position:static;display:block;width:100%;height:100%;max-width:100%;left:auto;top:auto;object-fit:contain;object-position:center}
@keyframes portfolio-slide{0%,26%{transform:translateX(0);opacity:1;z-index:3}33%,59%{transform:translateX(16%) translateY(16px);opacity:.45;z-index:2}66%,92%{transform:translateX(8%) translateY(-16px);opacity:.2;z-index:1}100%{transform:translateX(0);opacity:1;z-index:3}}
@media(max-width:900px){.hero-portfolio{height:420px}.hero-portfolio .hero-project{height:335px}}
@media(max-width:560px){.hero-portfolio{height:280px}.hero-portfolio .hero-project{top:25px;height:235px}}
@media(prefers-reduced-motion:reduce){.hero-portfolio .hero-project{animation:none;transform:none;opacity:1}.hero-portfolio .hero-project-brand,.hero-portfolio .hero-project-print{display:none}}

/* Atmospheric studio photograph with warm grading and a readable text zone. */
.hero-bg{background:#100d0a;isolation:isolate}
.hero-bg:before{content:"";position:absolute;inset:0;background:url('assets/studio-hero-background.png') center 56%/cover no-repeat;filter:saturate(.45) sepia(.2) brightness(.7);opacity:.6;z-index:-1}
.hero-bg:after{content:"";display:block;position:absolute;inset:0;top:0;right:0;width:100%;height:100%;border:0;box-shadow:none;transform:none;background:linear-gradient(90deg,rgba(8,7,6,.88) 0%,rgba(12,9,7,.68) 42%,rgba(18,11,7,.38) 100%),linear-gradient(0deg,rgba(9,7,5,.5),transparent 55%),radial-gradient(ellipse at 80% 55%,rgba(255,90,31,.14),transparent 65%)}
@media(max-width:900px){.hero-bg:after{opacity:1;width:100%;right:0;background:linear-gradient(180deg,rgba(8,7,6,.85),rgba(18,11,7,.55)),radial-gradient(ellipse at 80% 55%,rgba(255,90,31,.12),transparent 65%)}.hero-bg:before{background-position:58% center}}

.site-header nav a.nav-resume{color:var(--orange);font-weight:700}.site-header nav a.nav-resume:hover{color:#ff895b}

/* Engavan hero in the illustrative Builder preview screen. */
.builder-ui .preview{position:relative;isolation:isolate;overflow:hidden;background:#0d171b;color:#fff}
.builder-ui .preview:before{content:"";position:absolute;inset:0;z-index:-2;background-image:url('assets/Engavan-responsive-mockup.png');background-repeat:no-repeat;background-size:160% auto;background-position:50% 28%;filter:saturate(.65)}
.builder-ui .preview:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,12,16,.92),rgba(4,12,16,.73));z-index:-1}
.builder-ui .preview small,.builder-ui .preview h3{color:#fff}.builder-ui .preview p{color:#e1e5e6}.builder-ui .preview button{background:var(--orange);color:#fff}

.builder-ui .preview:before{background-image:url('assets/engavan-hero-screen.png');background-size:cover;background-position:center;filter:saturate(.65)}
.builder-ui .preview:after{background:linear-gradient(90deg,rgba(4,12,16,.90),rgba(4,12,16,.76))}

.support-home{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:28px;padding:28px;border:1px solid var(--line);background:#fff;border-radius:12px}.support-home h3{font-size:22px;margin:8px 0}.support-home p{color:#555;line-height:1.6}.support-home .text-link{flex-shrink:0}.about .why-grid{margin-top:36px}.package-enquiry{display:inline-block;margin-top:20px;font-size:12px}.resume-comparison{margin-top:36px}.comparison-scroll{overflow-x:auto}.resume-comparison table{border-collapse:collapse;width:100%;min-width:580px;font-size:13px;background:#fff}.resume-comparison caption{text-align:left;color:#666;padding:0 0 18px;line-height:1.6}.resume-comparison th,.resume-comparison td{padding:18px 14px;border-bottom:1px solid #ddd;text-align:left;line-height:1.5}.resume-comparison thead{background:#eeeee9}.resume-comparison th:first-child{width:40%}.builder-preview-label{display:inline-block;font-size:11px;padding:10px 12px;background:#ffffff15;color:white;border:1px solid #ffffff40}
@media(max-width:900px){.site-header{position:relative;z-index:20}.site-header nav.mobile-open{display:flex;position:absolute;top:100%;left:0;right:0;background:#111;flex-direction:column;align-items:stretch;padding:20px 24px;gap:0;box-shadow:0 12px 24px #0003}.site-header nav.mobile-open a{padding:14px 0}.support-home{flex-direction:column;align-items:flex-start}}

#packages .package-card{min-height:0}#packages .package-card .text-link{margin-top:24px}

/* Complete looping NFC story, including simulated profile selection. */
.nfc-demo .nfc-editorial-art{animation:resume-scene-loop 16s ease-in-out infinite}
.nfc-demo .demo-signal{animation:resume-signal-loop 16s infinite}
.nfc-demo .demo-contact{animation:resume-phone-loop 16s ease-in-out infinite;overflow:hidden;background:#fff}
.demo-resume-choice{position:relative}.demo-touch{position:absolute;right:14px;top:50%;width:18px;height:18px;border-radius:50%;border:2px solid var(--orange);background:#ff5a1f25;opacity:0;animation:resume-touch-loop 16s infinite}
.nfc-demo .step-chat{animation:resume-step-one 16s infinite}.nfc-demo .step-tap{animation:resume-step-two 16s infinite}.nfc-demo .step-contact{animation:resume-step-three 16s infinite}.nfc-demo .step-resume{animation:resume-step-four 16s infinite}
.demo-resume-document{position:absolute;inset:0;background:#fff9f3;padding:18px 13px;text-align:left;opacity:0;animation:resume-document-loop 16s infinite;pointer-events:none}
.resume-doc-header{display:flex;align-items:center;justify-content:space-between;gap:6px;border-bottom:2px solid var(--orange);padding-bottom:12px}.resume-doc-kicker{font-size:6px;letter-spacing:1px;color:#cf471b;font-weight:700}.demo-contact .resume-doc-header strong{font-size:17px;margin:5px 0}.demo-contact .resume-doc-header small{font-size:7px;margin:0;color:#555}.resume-doc-avatar{display:grid;place-items:center;border-radius:50%;background:#ffdcc7;color:#bd3d13;width:32px;height:32px;flex-shrink:0;font-size:11px;font-weight:700}
.resume-doc-section{margin-top:12px}.resume-doc-section b{font-size:8px;text-transform:uppercase;letter-spacing:.6px;color:#c44519}.resume-doc-section p{font-size:7px;color:#555;line-height:1.5;margin:5px 0}.resume-doc-section i{display:block;height:3px;background:#dad1c8;margin:5px 0;border-radius:2px}.resume-doc-section i:last-child{width:75%}.resume-doc-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:14px}.resume-doc-projects{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:7px}.resume-doc-projects span{display:block;padding:12px 8px;background:#ff5a1f;color:#fff;font-size:10px;font-weight:700;line-height:1.4}.resume-doc-projects span+span{background:#252525}.demo-contact .resume-doc-sample{font-size:7px;text-align:center;margin-top:10px}
@keyframes resume-scene-loop{0%,20%{transform:scale(1);filter:none}34%,40%{transform:scale(1.03);filter:none}47%,87%{transform:scale(1.03);filter:brightness(.7)}96%,100%{transform:scale(1);filter:none}}
@keyframes resume-signal-loop{0%,23%{opacity:0}28%,36%{opacity:1}40%,100%{opacity:0}}
@keyframes resume-phone-loop{0%,39%{opacity:0;transform:translate(-50%,-45%) scale(.96)}47%,86%{opacity:1;transform:translate(-50%,-50%) scale(1)}94%,100%{opacity:0;transform:translate(-50%,-45%) scale(.96)}}
@keyframes resume-touch-loop{0%,55%{opacity:0;transform:translateY(-50%) scale(1.6)}59%{opacity:1;transform:translateY(-50%) scale(1)}63%{opacity:1;transform:translateY(-50%) scale(.7)}66%,100%{opacity:0;transform:translateY(-50%) scale(1.4)}}
@keyframes resume-document-loop{0%,64%{opacity:0;transform:translateX(12px)}69%,88%{opacity:1;transform:translateX(0)}94%,100%{opacity:0;transform:translateX(12px)}}
@keyframes resume-step-one{0%,23%,94%,100%{opacity:1}24%,93%{opacity:0}}
@keyframes resume-step-two{0%,23%{opacity:0}24%,40%{opacity:1}41%,100%{opacity:0}}
@keyframes resume-step-three{0%,40%{opacity:0}41%,64%{opacity:1}65%,100%{opacity:0}}
@keyframes resume-step-four{0%,64%{opacity:0}65%,93%{opacity:1}94%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.nfc-demo .demo-contact{opacity:1;transform:translate(-50%,-50%)}.demo-resume-document{opacity:1;transform:none}.demo-touch,.nfc-demo .step-contact{opacity:0}.nfc-demo .step-resume{opacity:1}}

.nfc-demo .nfc-editorial-art{animation:save-scene-loop 24s ease-in-out infinite}.nfc-demo .demo-signal{animation:save-signal-loop 24s infinite}.nfc-demo .demo-contact{animation:save-phone-loop 24s ease-in-out infinite}.nfc-demo .demo-touch{animation:save-resume-touch 24s infinite}.nfc-demo .demo-resume-document{animation:save-resume-document 24s infinite}.nfc-demo .step-chat{animation:save-step-one 24s infinite}.nfc-demo .step-tap{animation:save-step-two 24s infinite}.nfc-demo .step-contact{animation:save-step-three 24s infinite}.nfc-demo .step-resume{animation:save-step-four 24s infinite}.nfc-demo .step-save{animation:save-step-five 24s infinite}
.demo-save{position:relative}.demo-save-touch{position:absolute;right:13px;top:50%;width:18px;height:18px;border:2px solid white;background:#ffffff50;border-radius:50%;opacity:0;animation:save-button-touch 24s infinite}.demo-saved-contact{position:absolute;inset:0;background:linear-gradient(150deg,#e87037,#853b23 65%,#252525);color:white;padding:12px;opacity:0;animation:save-contact-screen 24s infinite;pointer-events:none}.saved-toolbar{display:flex;justify-content:space-between;font-size:10px}.saved-toolbar span+span{padding:3px 9px;border:1px solid #ffffff55;border-radius:15px}.saved-avatar{margin:8px auto;width:57px;height:57px;border-radius:50%;display:grid;place-items:center;font-size:23px;background:#ffffff20;border:1px solid #ffffff55}.demo-contact .demo-saved-contact strong{font-size:18px}.demo-saved-contact>p{font-size:7px;margin:5px 0 9px;color:#fff}.saved-actions{display:flex;justify-content:space-around;margin-bottom:10px}.saved-actions>span{width:29px;height:29px;background:#ffffff20;border-radius:50%;padding-top:4px;font-size:12px}.demo-contact .saved-actions small{font-size:5px;color:#fff;margin:2px 0 0}.saved-field{background:#ffffff17;border-radius:7px;padding:8px;text-align:left;margin-top:6px;font-size:9px}.demo-contact .saved-field small{color:#ffe4d7;font-size:7px;margin:0 0 4px}.saved-field span{font-size:8px}.saved-confirmation{text-align:center;color:#fff;font-weight:600}.demo-contact .saved-sample{font-size:6px;color:#ffe7d8;margin-top:7px}
@keyframes save-scene-loop{0%,14%{filter:none;transform:scale(1)}22%,28%{filter:none;transform:scale(1.03)}32%,91%{filter:brightness(.7);transform:scale(1.03)}97%,100%{filter:none;transform:scale(1)}}
@keyframes save-signal-loop{0%,15%{opacity:0}18%,24%{opacity:1}28%,100%{opacity:0}}
@keyframes save-phone-loop{0%,26%{opacity:0;transform:translate(-50%,-45%) scale(.96)}32%,91%{opacity:1;transform:translate(-50%,-50%) scale(1)}97%,100%{opacity:0;transform:translate(-50%,-45%) scale(.96)}}
@keyframes save-resume-touch{0%,38%{opacity:0}40%,43%{opacity:1}45%,100%{opacity:0}}
@keyframes save-resume-document{0%,43%{opacity:0;transform:translateX(12px)}47%,59%{opacity:1;transform:translateX(0)}63%,100%{opacity:0;transform:translateX(12px)}}
@keyframes save-button-touch{0%,68%{opacity:0;transform:translateY(-50%) scale(1.5)}70%,73%{opacity:1;transform:translateY(-50%) scale(.85)}76%,100%{opacity:0}}
@keyframes save-contact-screen{0%,74%{opacity:0;transform:translateX(12px)}78%,92%{opacity:1;transform:translateX(0)}97%,100%{opacity:0;transform:translateX(12px)}}
@keyframes save-step-one{0%,15%,97%,100%{opacity:1}16%,96%{opacity:0}}
@keyframes save-step-two{0%,15%{opacity:0}16%,28%{opacity:1}29%,100%{opacity:0}}
@keyframes save-step-three{0%,28%{opacity:0}29%,43%{opacity:1}44%,59%{opacity:0}60%,68%{opacity:1}69%,100%{opacity:0}}
@keyframes save-step-four{0%,43%{opacity:0}44%,59%{opacity:1}60%,100%{opacity:0}}
@keyframes save-step-five{0%,68%{opacity:0}69%,96%{opacity:1}97%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.nfc-demo .demo-saved-contact{opacity:1;transform:none}.nfc-demo .step-resume{opacity:0}.nfc-demo .step-save{opacity:1}.demo-save-touch{display:none}}

.sample-intro{background:#fff}.sample-profile-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:start}.sample-avatar{width:76px;height:76px;display:grid;place-items:center;background:#ffe1d1;color:var(--orange);border-radius:50%;font:700 24px Montserrat,sans-serif}.sample-intro h1{font:800 clamp(44px,6vw,72px)/1 Montserrat,sans-serif;letter-spacing:-2px;margin:25px 0 14px}.sample-role{font-size:20px;font-weight:600}.sample-lead{font-size:18px;color:#555;line-height:1.7;max-width:500px}.sample-secondary{font-size:13px;font-weight:600}.sample-overview{background:#f3f1ec;border-radius:16px;padding:34px}.sample-overview h2{font-size:34px;letter-spacing:-1px}.sample-overview p,.sample-profile-grid p,.sample-project-grid p{line-height:1.7;color:#555}.sample-disclaimer{font-size:12px;line-height:1.6;color:#777}.sample-job{border-bottom:1px solid #ddd;padding:0 0 20px;margin-bottom:24px}.sample-skills{display:flex;gap:8px;flex-wrap:wrap}.sample-skills span{padding:9px 12px;border:1px solid #ddd;border-radius:20px;font-size:12px}.sample-work{background:white}.sample-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:30px}.sample-art{height:240px;border-radius:12px;display:grid;place-items:center}.sample-art-brand{background:#ff5a1f}.sample-art-brand>span{font:800 130px Montserrat,sans-serif;color:white}.sample-art-brand .orange-period{color:#222}.sample-art-web{background:#eae7df;padding:35px}.sample-art-web>div{width:100%;background:white;border-radius:7px;padding:25px;box-shadow:0 12px 24px #0001}.sample-art-web b{display:block;font:700 25px Montserrat,sans-serif;margin:15px 0}.sample-art-web i{display:block;height:5px;background:#eee;margin:8px 0;width:80%}.sample-art-web span{display:block;width:35px;height:6px;background:var(--orange)}
@media(max-width:800px){.sample-profile-grid,.sample-project-grid{grid-template-columns:1fr;gap:30px}.sample-overview{padding:25px}}

.resume-service-process{background:#fff}.resume-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:35px}.resume-process-grid article{border-top:2px solid #ff5a1f;padding-top:18px}.resume-process-grid article>span{color:var(--orange);font-size:12px;font-weight:700}.resume-process-grid h3{font-size:18px}.resume-process-grid p{font-size:14px;line-height:1.7;color:#666}
@media(max-width:900px){.resume-process-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.resume-process-grid{grid-template-columns:1fr}}

.nfc-tap-illustration{margin:24px 0 0;max-width:520px}.nfc-tap-illustration svg{display:block;width:100%;height:auto}.nfc-tap-illustration figcaption{font-size:11px;color:#aaa;text-align:center;margin-top:8px}.dark-section .split{align-items:center}

.networking-section{background:#0a0a0a;color:#fff}.networking-section h2{color:#fff;font-size:clamp(38px,4vw,58px);line-height:1;letter-spacing:-2.5px;text-transform:none}.networking-section h2 .orange-period{color:#ff5a1f}.networking-section .eyebrow{color:#ff5a1f}.networking-section p{color:#e0e0e0}.networking-section .nfc-tap-illustration figcaption{color:#d2d2d2}

/* Digital résumé enquiry journey */
.journey-templates{background:#f5f3ef}
.journey-template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:30px 0}
.journey-template-grid a{display:block;background:white;border:1px solid #ddd;border-radius:12px;overflow:hidden;color:#222;text-decoration:none}
.journey-template-grid img{display:block;width:100%;height:310px;object-fit:cover;object-position:top}
.journey-template-grid span{display:block;padding:18px;font-weight:700}
#resume-enquiry{display:grid;gap:12px;margin-top:24px}
#resume-enquiry label{font-size:13px;font-weight:600;color:white}
#resume-enquiry label span{font-weight:400;color:#bbb}
#resume-enquiry select,#resume-enquiry textarea{box-sizing:border-box;width:100%;padding:13px;border:1px solid #666;border-radius:6px;background:#fff;color:#222;font:14px Inter,Arial,sans-serif}
#resume-enquiry .btn{justify-self:start;margin-top:8px;border:0;cursor:pointer;font:600 14px Inter,Arial,sans-serif}
#resume-enquiry .enquiry-note{font-size:12px;line-height:1.6;color:#bbb;margin:0}
#email-fallback a{color:white;text-decoration:underline}
#resume-process h2,.journey-templates h2{color:#111}
@media(max-width:650px){.journey-template-grid{grid-template-columns:1fr}.journey-template-grid img{height:320px}}

.revision-policy{margin:28px 0;padding:22px;border:1px solid #ddd;border-left:4px solid #ff5a1f;border-radius:6px}.revision-policy h3{font-size:17px;margin:0 0 12px}.revision-policy p{font-size:14px;line-height:1.7;margin:8px 0}.contact .revision-policy{border-color:#555;border-left-color:#ff5a1f}.contact .revision-policy h3,.contact .revision-policy strong{color:#fff}

/* Balanced enquiry composition */
.resume-contact .contact-grid{grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.resume-contact .enquiry-heading{padding-top:8px}
.resume-contact .enquiry-heading h2{font-size:clamp(34px,4vw,54px);line-height:1.06;letter-spacing:-1.8px;margin:20px 0 26px}
.resume-contact .enquiry-intro{max-width:440px;font-size:16px;line-height:1.75;color:#bcbcbc}
.resume-contact .enquiry-form-title{margin:0 0 22px;font-size:22px;color:white}
.resume-contact #resume-enquiry{margin:0;gap:12px}
.resume-contact .contact-copy{padding:28px;background:#171717;border:1px solid #333;border-radius:12px}
.enquiry-policies{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:48px;padding-top:32px;border-top:1px solid #333}
.enquiry-policies article{padding:0 12px 0 0}
.enquiry-policies .policy-kicker{color:#ff5a1f;font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 14px}
.enquiry-policies h3{font-size:18px;line-height:1.4;color:white;margin:0 0 14px}
.enquiry-policies p{font-size:14px;line-height:1.75;color:#bbb;margin:0 0 12px}
.enquiry-policies strong{color:white}
@media(max-width:900px){.resume-contact .contact-grid{grid-template-columns:1fr;gap:30px}.resume-contact .enquiry-heading h2{max-width:600px}.resume-contact .enquiry-intro{max-width:600px}}
@media(max-width:600px){.enquiry-policies{grid-template-columns:1fr;gap:24px;margin-top:30px}.resume-contact .contact-copy{padding:22px}.resume-contact .enquiry-heading h2{font-size:36px}.resume-contact .contact-grid{gap:24px}}

.service-routes{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px;max-width:850px}
.service-routes>a{border:1px solid #d5d5d0;border-radius:8px;padding:22px;background:#fff}
.service-routes span{display:block;font-size:10px;letter-spacing:2px;color:#777;margin-bottom:10px}
.service-routes strong{font-size:17px}.service-routes p{font-size:13px;line-height:1.6;color:#666;margin:10px 0 0}
.service-routes>a:hover{border-color:#ff5a1f}
.business-contact .contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:64px}
.business-contact h2{font-size:clamp(36px,4vw,54px);line-height:1.08;margin:20px 0 24px}
.business-enquiry-intro{font-size:16px;line-height:1.75;color:#bbb;max-width:440px}
.business-contact-details{font-size:14px;line-height:1.9;color:#bbb;margin-top:28px}
.business-form-panel{padding:28px;border:1px solid #333;background:#171717;border-radius:12px}
.business-form-panel>h3{font-size:22px;margin:0 0 22px}
#business-enquiry{display:grid;gap:12px}
#business-enquiry label{display:block;color:white;font-size:13px;font-weight:600;margin-bottom:0}
#business-enquiry input,#business-enquiry select,#business-enquiry textarea{width:100%;font:14px Inter,Arial,sans-serif;border:1px solid #666;border-radius:6px;padding:13px;background:#fff;color:#222}
.business-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.business-form-row label{margin-bottom:12px!important}
#business-enquiry .btn{justify-self:start;border:0;cursor:pointer;margin-top:10px}
#business-enquiry .form-note{font-size:12px;line-height:1.6;color:#bbb;margin:0}
.business-next{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;border-top:1px solid #333;padding-top:30px;margin-top:48px}
.business-next span{color:#ff5a1f;font-size:12px;font-weight:700}
.business-next h3{font-size:17px;margin:12px 0}.business-next p{font-size:14px;line-height:1.7;color:#bbb}
@media(max-width:900px){.business-contact .contact-grid{grid-template-columns:1fr;gap:30px}}
@media(max-width:600px){.service-routes,.business-next,.business-form-row{grid-template-columns:1fr}.business-form-panel{padding:22px}.business-contact h2{font-size:36px}}

.quick-start-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-start-grid .package-card{display:flex;flex-direction:column}.quick-start-grid .package-card>.text-link{margin-top:auto;padding-top:20px}@media(max-width:650px){.quick-start-grid{grid-template-columns:1fr}}

.quick-start-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.quick-start-grid .package-card{padding:24px}.quick-start-grid .package-card h3{font-size:21px;line-height:1.25}@media(max-width:1100px){.quick-start-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.quick-start-grid{grid-template-columns:1fr}}

.quick-start-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.services-visual-hero .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:40px}
.services-visual-hero .wrap>.eyebrow,.services-visual-hero h1,.services-visual-hero .service-page-lead{grid-column:1}
.services-visual-hero h1{font-size:clamp(40px,4.7vw,64px)}
.services-hero-art{grid-column:2;grid-row:1 / span 3;align-self:center;margin:0}
.services-hero-art svg{display:block;width:100%;height:auto}
.services-hero-art figcaption{text-align:center;font-size:11px;letter-spacing:1px;color:#777;margin-top:4px}
.services-visual-hero .service-jump,.services-visual-hero .service-routes{grid-column:1 / -1}
.services-visual-hero .service-routes{max-width:none}
.design-print-section{background:white}
.print-sample-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:36px 0}
.print-sample-grid article{border:1px solid #ddd;border-radius:10px;overflow:hidden;background:#fafaf8}
.print-sample-image{display:flex;align-items:center;background:#ecebe7;height:245px;padding:12px}
.print-sample-image img{width:100%;height:100%;object-fit:contain}
.print-sample-grid article>div{padding:24px}
.print-sample-grid small{font-size:11px;letter-spacing:1px;color:#777}
.print-sample-grid h3{font-size:20px;line-height:1.3;margin:12px 0}
.print-sample-grid p,.print-support-grid p{font-size:14px;line-height:1.7;color:#666}
.print-support-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid #ddd;padding-top:26px;margin-bottom:24px}
.print-support-grid h3{font-size:18px}
@media(max-width:900px){.print-sample-grid{grid-template-columns:1fr}.print-sample-image{height:350px}.services-visual-hero .wrap{column-gap:20px}}
@media(max-width:650px){.quick-start-grid,.print-support-grid{grid-template-columns:1fr}.services-visual-hero .wrap{display:block}.services-hero-art{max-width:420px;margin:24px auto}.print-sample-image{height:270px}}

.print-sample-grid article{display:flex;flex-direction:column}.print-sample-grid article>div{display:flex;flex-direction:column;flex:1}.print-sample-grid .text-link{margin-top:auto;padding-top:8px}

.service-back{display:inline-block;font-size:13px;color:#666;margin-bottom:24px}
.service-directory{padding-top:0}
.service-directory-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.directory-card{display:block;border:1px solid #ddd;border-radius:12px;overflow:hidden;background:#fff;transition:transform .2s,border-color .2s}
.directory-card:hover{transform:translateY(-3px);border-color:#ff5a1f}
.directory-image{height:250px;background:#eae8e4;overflow:hidden}
.directory-image>img{width:100%;height:100%;object-fit:contain}
.directory-copy{padding:28px}
.directory-copy small{font-size:11px;color:#ff5a1f;font-weight:700}
.directory-copy h2{font-size:25px;line-height:1.2;margin:12px 0}
.directory-copy p{font-size:15px;line-height:1.7;color:#666;margin:0 0 22px}
.directory-copy strong{font-size:13px}
.growth-directory-art{height:100%;background:#151515;color:#fff;display:flex;align-items:center;justify-content:center;gap:24px}
.growth-directory-art span{font-size:100px;color:#ff5a1f}.growth-directory-art b{font-size:26px}
@media(max-width:650px){.service-directory-grid{grid-template-columns:1fr}.directory-image{height:230px}}

.site-header{gap:22px}.site-header nav{gap:17px;font-size:12px;white-space:nowrap}.site-header .header-cta{margin-left:0;white-space:nowrap;padding:13px 16px}
.web-sample-hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.web-sample-hero h1{font-size:clamp(38px,4.2vw,60px);line-height:1.05}
.web-hero-sample{margin:0}
.web-hero-sample img{display:block;width:100%;height:auto;border-radius:12px;box-shadow:0 18px 45px #0001}
.web-hero-sample figcaption{font-size:12px;color:#777;margin-top:16px;text-align:center}
.custom-project-note{font-size:15px;line-height:1.7;color:#ccc;border-left:3px solid #ff5a1f;padding-left:18px;max-width:450px;margin:24px 0}
.custom-project-note strong{color:white}
@media(max-width:1200px){.site-header .menu{display:block;margin-left:auto}.site-header nav{display:none}.site-header nav.mobile-open{display:flex;position:absolute;top:100%;left:0;right:0;margin:0;background:#111;flex-direction:column;align-items:stretch;padding:16px 24px;gap:0;box-shadow:0 12px 24px #0003;max-height:calc(100vh - 82px);overflow:auto}.site-header nav.mobile-open a{padding:12px 0}.site-header .header-cta{display:none}}
@media(max-width:800px){.web-sample-hero .wrap{grid-template-columns:1fr;gap:30px}.web-hero-sample{max-width:600px}}

.sample-carousel{min-width:0}
.sample-slide{margin:0}
.sample-slide[hidden]{display:none}
.sample-slide a{display:flex;align-items:center;justify-content:center;height:390px;background:#efede9;border:1px solid #ddd;border-radius:12px;overflow:hidden}
.sample-slide img{display:block;width:100%;height:100%;object-fit:contain}
.sample-slide figcaption{text-align:center;font-size:12px;color:#777;margin:16px 0}
.sample-controls{display:flex;align-items:center;justify-content:center;gap:12px}
.sample-controls button{border:1px solid #ddd;background:white;color:#333;border-radius:20px;min-width:30px;min-height:30px;cursor:pointer;font-size:12px}
.sample-controls button[aria-pressed=true]{background:#ff5a1f;border-color:#ff5a1f;color:white}
.sample-dots{display:flex;gap:7px}.sample-pause{padding:0 12px}
.support-photo-hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.support-photo-hero h1{font-size:clamp(38px,4.2vw,60px);line-height:1.05}
.support-portrait{margin:0}.support-portrait img{width:100%;height:390px;object-fit:cover;object-position:25% center;display:block;border-radius:12px}
.support-portrait figcaption{font-size:12px;text-align:center;color:#777;margin-top:16px}
.home-mobile-portrait{display:none}
.portrait-home-hero{min-height:680px;display:block;padding:110px 0}
.portrait-home-hero .hero-bg:before{background-image:url('assets/edgar-creative-office-optimized.webp');background-position:center center;filter:saturate(.75) brightness(.85);opacity:1}
.portrait-home-hero .hero-bg:after{background:linear-gradient(90deg,rgba(8,8,8,.05) 0%,rgba(8,8,8,.08) 29%,rgba(8,8,8,.86) 42%,rgba(8,8,8,.9) 100%)}
.portrait-home-hero .hero-content{width:31%;margin:0 0 0 40%;position:relative}
.portrait-home-hero h1{font-size:clamp(34px,3.4vw,54px);line-height:1.06;letter-spacing:-1.5px}
.portrait-home-hero .lead{font-size:16px;line-height:1.65}
.portrait-home-hero .hero-portfolio{width:24%;right:3%;top:50%;height:340px;transform:translateY(-50%)}
.portrait-home-hero .actions{flex-wrap:wrap;gap:12px}
@media(max-width:1100px){
.portrait-home-hero{padding:60px 0}
.portrait-home-hero .hero-content{width:52%;margin-left:44%}
.portrait-home-hero .hero-portfolio{position:relative;width:47%;height:280px;top:auto;right:auto;transform:none;margin:32px 0 0 46%}
}
@media(max-width:800px){.support-photo-hero .wrap{grid-template-columns:1fr;gap:30px}.support-portrait img,.sample-slide a{height:340px}}
@media(max-width:650px){
.portrait-home-hero{display:flex;padding:0 0 32px;gap:24px;min-height:0;background:#0b0b0b}
.portrait-home-hero .hero-bg{display:none}
.home-mobile-portrait{display:block;width:100%;height:320px;object-fit:cover;object-position:22% center;order:-1}
.portrait-home-hero .hero-content{width:calc(100% - 40px);margin:0 auto}
.portrait-home-hero h1{font-size:42px}
.portrait-home-hero .hero-portfolio{width:calc(100% - 64px);height:310px;margin:10px auto 0}
.support-portrait img{height:300px}
}

.portrait-home-hero h1,.portrait-home-hero .lead{max-width:100%}.portrait-home-hero .hero-bg:before{background-size:auto 100%;background-position:left center;background-repeat:no-repeat}

/* Tighter portrait area and larger featured work */
@media(min-width:1101px){
.portrait-home-hero .hero-bg:before{right:auto;width:34%;background-size:auto 100%;background-position:25% center}
.portrait-home-hero .hero-bg:after{background:linear-gradient(90deg,transparent 0%,rgba(8,8,8,.12) 24%,#090909 34%,#090909 100%)}
.portrait-home-hero .hero-content{margin-left:35%;width:28%}
.portrait-home-hero h1{font-size:clamp(34px,3vw,52px)}
.portrait-home-hero .hero-portfolio{width:32%;right:2%;height:430px}
.portrait-home-hero .hero-portfolio .hero-project{width:88%;height:390px;top:20px}
}

@media(min-width:1101px){.portrait-home-hero .hero-bg:before{background-position:10% center}}

.hero-portfolio .hero-project{animation-name:portfolio-four;animation-duration:20s}
.hero-portfolio .hero-project-web{animation-delay:0s}
.hero-portfolio .hero-project-brand{animation-delay:-15s}
.hero-portfolio .hero-project-print{animation-delay:-10s}
.hero-portfolio .hero-project-resume{animation-delay:-5s}
@keyframes portfolio-four{
0%,20%{transform:translateX(0);opacity:1;z-index:4}
25%,45%{transform:translateX(12%) translateY(14px);opacity:.4;z-index:3}
50%,70%{transform:translateX(16%) translateY(0);opacity:.15;z-index:2}
75%,95%{transform:translateX(8%) translateY(-14px);opacity:.25;z-index:1}
100%{transform:translateX(0);opacity:1;z-index:4}
}
.resume-carousel-scene{height:calc(100% - 37px);display:flex;align-items:center;justify-content:center;padding:18px;background:radial-gradient(ellipse at 80% 20%,#b8d2ce 0,transparent 60%),linear-gradient(135deg,#e6e4db,#ccd9d6)}
.resume-carousel-browser{height:100%;max-width:85%;display:flex;flex-direction:column;background:#fff;border:1px solid #ddd;border-radius:6px;overflow:hidden;box-shadow:0 12px 25px #264c4433}
.resume-browser-bar{height:13px;flex-shrink:0;display:flex;align-items:center;gap:3px;padding-left:6px;background:#f7f7f5;border-bottom:1px solid #ddd}
.resume-browser-bar i{width:3px;height:3px;background:#bbc5c2;border-radius:50%}
.hero-project-resume .resume-carousel-browser img{height:calc(100% - 13px);width:auto;max-width:100%;object-fit:contain}
@media(prefers-reduced-motion:reduce){.hero-portfolio .hero-project{animation:none}.hero-portfolio .hero-project-web{z-index:4;opacity:1;transform:none}.hero-portfolio .hero-project-resume{opacity:0;pointer-events:none}}

.resume-carousel-scene{position:relative}
.resume-showcase-nfc{position:absolute;right:16px;bottom:28px;width:46%;aspect-ratio:1.65;background:linear-gradient(135deg,#315f5e,#1c4343);color:white;border:1px solid #ffffff44;border-radius:8px;padding:13px;box-shadow:0 10px 20px #143e4440;transform:rotate(-9deg);display:flex;flex-direction:column;justify-content:center;text-align:left}
.resume-showcase-nfc .nfc-card-label{font-size:6px;letter-spacing:1.3px;margin-bottom:12px;color:#bddbd6}
.resume-showcase-nfc strong{font-size:clamp(10px,1vw,15px);line-height:1.2;padding-right:24px}
.resume-showcase-nfc small{font-size:7px;margin-top:4px;color:#d2e3df}
.resume-showcase-nfc svg{position:absolute;width:24px;right:12px;top:38%;color:#cce7df}
.resume-showcase-nfc .nfc-card-footer{font-size:5px;letter-spacing:.7px;margin-top:14px;color:#bddbd6}

.resume-showcase-nfc{width:34%;padding:10px;right:18px;bottom:30px}.resume-showcase-nfc .nfc-card-label{margin-bottom:7px;font-size:5px}.resume-showcase-nfc strong{font-size:10px}.resume-showcase-nfc small{font-size:6px}.resume-showcase-nfc svg{width:18px;right:8px}.resume-showcase-nfc .nfc-card-footer{margin-top:8px;font-size:4px}

.home-process-light{background:#f0f0ec;color:#171717}
.home-process-light .eyebrow{color:#666}
.home-process-light .section-intro>p,.home-process-light .process-grid p{color:#606060}
.home-process-light .process-grid{border-color:#d5d5ce}
.home-process-light .process-grid article{border-color:#d5d5ce}
.home-process-light .service-icon{background:white;border-color:#d8d8d1}
.home-contact-light{background:#f6e8dd;color:#171717;border-top:1px solid #ebd9ca}
.home-contact-light .eyebrow{color:#685b51}
.home-contact-light h2{color:#171717}
.home-contact-light p:not(.eyebrow){color:#5e5147}
.home-contact-light .contact-email{color:#74675c!important}
.home-contact-light .contact-grid{align-items:center}

.skip-link{position:absolute;left:16px;top:-100px;z-index:100;background:white;color:#111;padding:12px 18px;border:2px solid #ff5a1f;border-radius:4px}
.skip-link:focus{top:12px}
:focus-visible{outline:3px solid #ff895c;outline-offset:4px}
.site-header nav a[aria-current=page]{text-decoration:underline;text-decoration-color:#ff5a1f;text-underline-offset:7px}

.tax-note p{font-size:11px;color:#999;line-height:1.6;margin:20px 0 0}

/* Service information and policy drafts */
.legal-links{display:flex;gap:24px;flex-wrap:wrap;padding-top:12px;padding-bottom:24px;font-size:12px}.legal-links a{color:#d6d6d6}.legal-page h1{font-size:clamp(38px,6vw,64px);margin-bottom:24px}.legal-copy{max-width:760px}.legal-copy h2{font-size:26px;line-height:1.25;margin:40px 0 14px}.legal-copy p{line-height:1.75;margin-bottom:16px}.legal-draft{max-width:760px;padding:18px 22px;border-left:3px solid #ff5a1f;background:#f0f0ec}.legal-copy a,.revision-policy a{ text-decoration:underline;text-underline-offset:3px}

/* Keep secondary footer information clear of the logo. */
footer .tax-note{text-align:right}footer .legal-links{justify-content:flex-end;text-align:right}

.service-example{display:inline-block;margin-top:12px}.example-pending{font-size:12px;color:#666;margin-top:12px}

.form-privacy-note{font-size:12px;line-height:1.65;color:#bbb;margin-top:16px}.form-privacy-note a{color:#fff;text-decoration:underline;text-underline-offset:3px}

.recommendations{background:#f0f0ec}.recommendation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.recommendation-card{margin:0;background:#fff;border:1px solid #deded8;border-radius:14px;padding:30px;display:flex;flex-direction:column}.recommendation-mark{font-family:Georgia,serif;color:#ff5a1f;font-size:64px;line-height:.8;margin-bottom:18px}.recommendation-card blockquote{margin:0 0 28px;flex:1}.recommendation-card blockquote p{font-size:16px;line-height:1.75;color:#292929;margin:0}.recommendation-card figcaption{border-top:1px solid #e4e4de;padding-top:20px;display:flex;flex-direction:column;gap:7px}.recommendation-card figcaption strong{font-size:15px}.recommendation-card figcaption span{font-size:12px;line-height:1.6;color:#555}.recommendation-card figcaption small{font-size:11px;color:#666;line-height:1.5}@media(max-width:850px){.recommendation-grid{grid-template-columns:1fr}.recommendation-card{padding:26px}}

.recommendations{background:#ffefe9;background:color-mix(in srgb,#ff5a1f 10%,white)}.recommendation-icon{margin-bottom:20px;background:#fff;border-color:#edbea9}.recommendation-icon svg{stroke:#ff5a1f;fill:none;stroke-width:1.6}

.recommendations{position:relative;overflow:hidden;isolation:isolate}.recommendations>.wrap{position:relative;z-index:1}

.direct-contact{margin-top:32px;padding:24px 0 0;border-top:1px solid #ffffff30;max-width:440px}.direct-contact h3{font-size:20px;line-height:1.3;color:#fff;margin:0 0 12px}.direct-contact p{font-size:14px;line-height:1.7;color:#ccc;margin-bottom:16px}.direct-contact>a{display:block;width:fit-content;color:#fff;font-size:16px;margin:10px 0;text-decoration:underline;text-underline-offset:4px}.direct-contact small{display:block;color:#aaa;font-size:12px;margin-top:14px}.palette-form-note{font-size:11px;line-height:1.6;color:#bbb;margin:8px 0 16px}

.colour-select-wrap{position:relative}.colour-select-wrap #enquiry-colour{padding-left:42px}.colour-selection-dot{position:absolute;left:14px;top:50%;transform:translateY(-50%);height:16px;width:16px;border-radius:50%;border:1px solid #aaa;pointer-events:none;box-shadow:0 0 0 2px #fff}.colour-selection-dot.undecided{border-style:dashed}

.site-header nav a,.site-header nav a.nav-resume,.site-header nav a:hover,.site-header nav a.nav-resume:hover{color:#fff}.site-header nav a:hover{text-decoration:underline;text-underline-offset:7px}

/* Bring featured work closer to the home hero copy. */
@media(min-width:1101px){.portrait-home-hero .hero-content{width:26%}.portrait-home-hero .hero-portfolio{width:36%;max-width:none;right:1%;height:500px}.portrait-home-hero .hero-portfolio .hero-project{width:94%;height:clamp(390px,23vw,460px);top:20px}}

/* Illustrated print service cards */
.home-print-services .package-card{min-height:0;display:flex;flex-direction:column;overflow:hidden}
.home-print-services .print-service-illustration{display:block;width:calc(100% + 64px);height:auto;max-width:none;aspect-ratio:3/2;object-fit:cover;margin:24px -32px -32px;margin-top:auto;padding-top:24px;box-sizing:content-box}
.home-print-services .view-all{display:inline-block;margin-top:24px}

.home-print-services .package-card .price{text-align:center;color:var(--orange);line-height:1.35}

.home-print-services .text-link.view-all[href^="tel:"]{font-size:clamp(18px,1.5vw,22px);line-height:1.5;margin-top:30px;max-width:960px;text-wrap:pretty}

.print-contact-invitation{font-size:clamp(18px,1.5vw,22px);font-weight:700;line-height:1.5;margin-top:30px;max-width:960px}.print-contact-invitation p{margin:0;text-wrap:pretty}.print-contact-options{display:flex;flex-wrap:wrap;gap:8px 28px}.print-contact-options .text-link{font-size:inherit;white-space:nowrap}
