/* Direction 05: framed ideas. The approved logo SVG and animated scenes stay intact. */
:root{--ink:#24272b;--lime:#d4f05a;--chalk:#f3f4ed;--white:#30353a;--olive:#d4f05a;--muted:#b6bdb5;--line:#596067}
html{scroll-padding-top:120px}
body{background:#24272b;color:var(--chalk)}
p{color:#bfc5bb}
h1,h2,h3{letter-spacing:.005em;line-height:1.14}
h1{letter-spacing:0}
h1 span{color:var(--lime)}
h2{letter-spacing:.005em}
h3{letter-spacing:.008em}
.eyebrow,.index{color:var(--lime)}
.wordmark{color:var(--chalk);letter-spacing:.065em}
.strapline{color:#d2d8cc}
.site-header{background:#191c1f;border-color:#40454a}
.site-header nav>a:not(.button):hover{color:var(--lime)}
.mobile-toggle{color:var(--chalk);border-color:#5a6065}
.brand img{background:#363a3c;border-radius:4px;padding:2px}
.button.dark{background:#41474c;color:var(--chalk);border-color:#646b70}
.button.dark:hover{background:#515a5d}
.button.dark span{color:var(--lime)}
.underlink{border-color:#737f72}
.underlink:hover{border-color:var(--lime)}
.skip-link{color:var(--ink)}
.mega-menu{background:#292d32;border-color:#62686b;box-shadow:0 20px 40px #1012149a}
.mega-intro{background:#171a1d}
.mega-title{color:var(--chalk);letter-spacing:-.025em}
.mega-links a:hover,.mega-links a[aria-current]{background:#40484a}
.mega-links small{color:#bbc1b8}
.nav-index{color:var(--lime)}
.chevron{color:var(--lime)}
.hero{background:#24272b}
.hero h1{letter-spacing:0;line-height:1.12}
.hero h1 span{font-weight:420}
.hero-intro{color:#e0e3da}
.hero-support{color:#aeb6ad}
.hero-bottom{border-color:#535b5a;color:#c6cec3}
.hero-bottom i{color:var(--lime)}
.illustration-frame{background:#171a1d;border:1px solid #5e6567}
.illustration-frame:before{background-image:radial-gradient(#f7f7f01d .75px,transparent .75px)}
.illustration-frame figcaption{color:#cbd0c6}
.hero-illustration{border-radius:5px}
.web-concept-frame{padding:0;aspect-ratio:1.5;background:#171a1d}
.web-concept-image{display:block;width:100%;height:100%;object-fit:cover}
.web-concept-label{position:absolute;left:10px;bottom:10px;padding:5px 8px;border:1px solid #ffffff45;border-radius:3px;background:#171a1ddd;color:#f3f4ed;font-size:8px;line-height:1.2;letter-spacing:.035em}
.service-panel .web-concept-frame{padding:0}
.app-concept-frame{padding:0;aspect-ratio:1.5;background:#171a1d}
.app-concept-image{display:block;width:100%;height:100%;object-fit:contain}
.app-concept-label{position:absolute;left:10px;bottom:10px;padding:5px 8px;border:1px solid #ffffff45;border-radius:3px;background:#171a1ddd;color:#f3f4ed;font-size:8px;line-height:1.2;letter-spacing:.035em}
.service-panel .app-concept-frame{padding:0}
.framed-hero{padding-top:76px}
.framed-hero .hero-copy{padding:0}
.framed-hero-intro{display:grid;grid-template-columns:1.65fr .8fr;gap:48px;align-items:center}
.framed-hero h1{max-width:850px;min-width:0;margin:0;font-size:clamp(46px,4.3vw,62px);line-height:1.16}
.framed-hero .hero-intro{margin:0;font-size:19px}
.framed-hero .hero-support{margin-top:17px}
.hero-tiles{display:grid;grid-template-columns:1.55fr 1fr 1fr;gap:14px;margin-top:47px}
.hero-tiles .hero-illustration{max-width:none;width:100%;min-width:0;display:flex;flex-direction:column;justify-content:space-between}
.hero-tiles .scene{margin:4px 0;height:290px}
.hero-tile{min-height:385px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #667073;transition:transform .2s,background .2s}
.hero-tile:hover{transform:translateY(-4px)}
.hero-tile:focus-visible{outline:3px solid var(--lime);outline-offset:4px}
.hero-tile strong{font-size:clamp(30px,2.8vw,43px);font-weight:450;letter-spacing:.003em;line-height:1.08}
.hero-tile>span:last-child{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px;font-weight:600}
.hero-tile b{font-size:26px;font-weight:400}
.tile-kicker{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:700}
.lime-tile{background:var(--lime);color:#252b24;border-color:var(--lime)}
.lime-tile:hover{background:#c8e845}
.dark-tile{background:#171a1d;color:var(--chalk)}
.dark-tile:hover{background:#32383b}
.dark-tile .tile-kicker,.dark-tile b{color:var(--lime)}
.framed-hero .hero-bottom{margin-top:45px}
.services-section{background:#30353a}
.section-heading>p{color:#bfc6bc}
.accordions{border-color:#7c8585}
.service-accordion{border-color:#5c6566}
.service-accordion[open]>summary h3,.service-accordion>summary:hover h3{color:var(--lime)}
.service-group{color:#a8b1aa}
.plus:before,.plus:after{background:var(--lime)}
.service-description>p{color:#d5dad1}
.tag-list li{color:#dce9a6;border-color:#78835c}
.process{background:#292e32}
.process-grid li{border-color:#667071}
.process-grid p{color:#bbc3ba}
.about{background:#292e32}
.about .large-copy{color:#e2e6dd}
.hand-note{color:var(--lime)}
.closing-cta{background:#d4f05a;color:#24272b}
.closing-cta .eyebrow,.closing-cta p:not(.eyebrow){color:#3f492a}
.closing-cta .dark{background:#24272b;border-color:#24272b}
.site-footer{background:#171a1d}
.footer-bottom{border-color:#4a5054;color:#bbc2b8}
.page-intro .lead{color:#d4dad0}
.breadcrumbs{color:#afb7af}
.breadcrumbs a:hover{color:var(--lime)}
.detail-hero .lead{color:#cfd5cb}
.fit-section{background:#343a3e}
.two-col .large-copy{color:#e1e5dc}
.deliverables article{border-color:#667071}
.deliverables p{color:#bec5bd}
.dark-section{background:#1c2023}
.dark-section .eyebrow{color:var(--lime)}
.detail-steps li{border-color:#515b5d}
.detail-steps p{color:#bbc3ba}
.faq-section{background:#343a3e}
.faq-item,.faq-item:first-child{border-color:#667071}
.related-grid a{background:#343a3e;border:1px solid #5b6365}
.related-grid a:hover{background:#444c4c}
.related-grid small{color:#bfc6bc}
.contact-note{border-color:var(--lime)}
.contact-prompts{border-color:#60686a}
.contact-prompts ul{color:#c5cbc1}
.project-form{background:#343a3e;border-color:#60686a}
.project-form input,.project-form select,.project-form textarea{background:#22262a;color:var(--chalk);border-color:#697278}
.project-form input::placeholder,.project-form textarea::placeholder{color:#a1aba4}
.form-status{color:var(--lime)}
.form-note{color:#c0c6bd}
.project-form-fallback{border-color:#60686a}
.frame-section{background:#1c2023}
.idea-frames{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:14px;margin:46px 0 30px}
.idea-frames article{min-height:335px;padding:27px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid #687273;background:#343a3f}
.idea-frames article:nth-child(2){background:#d4f05a;color:#24272b;border-color:#d4f05a}
.idea-frames article:nth-child(2) .index,.idea-frames article:nth-child(2) p{color:#38452c}
.idea-frames article:nth-child(3){background:#171a1d}
.idea-frames h3{font-size:clamp(31px,3.4vw,48px);line-height:1.05;letter-spacing:-.025em}
.idea-frames p{font-size:14px;max-width:265px}
.frame-section>.wrap>.underlink{margin-top:12px}
@media(max-width:850px){.idea-frames{grid-template-columns:1fr 1fr}.idea-frames article:first-child{grid-column:1/-1;min-height:260px}}
@media(max-width:1050px){.framed-hero-intro{grid-template-columns:1.45fr 1fr;gap:30px}.framed-hero h1{font-size:clamp(36px,4.3vw,46px)}.hero-tiles{grid-template-columns:1.45fr 1fr}.hero-tiles .hero-illustration{grid-column:1/-1}.hero-tile{min-height:245px}.hero-tiles .scene{height:270px}}
@media(max-width:700px){
  .header-inner{gap:10px}
  .site-header .wordmark{font-size:28px;letter-spacing:.04em}
  .site-header .brand{gap:10px}
  .site-header nav>a:not(.button),.services-menu>summary{border-color:#50585b}
  .mega-menu{background:transparent;border:0;box-shadow:none}
  .mega-links a:hover,.mega-links a[aria-current]{background:#3c4447}
  .hero h1{letter-spacing:0;line-height:1.13}
  .framed-hero{padding-top:42px}
  .framed-hero-intro{grid-template-columns:1fr;gap:24px}
  .framed-hero h1{font-size:clamp(43px,9.7vw,62px)}
  .framed-hero .hero-intro{font-size:18px}
  .hero-tiles{grid-template-columns:1fr;gap:12px;margin-top:34px}
  .hero-tiles .hero-illustration{grid-column:auto}
  .hero-tiles .scene{height:auto}
  .hero-tile{min-height:225px;padding:23px}
  .hero-tile strong{font-size:37px}
  .framed-hero .hero-bottom{margin-top:30px}
  .section{padding:70px 0}
  .idea-frames{grid-template-columns:1fr;margin-top:30px}
  .idea-frames article,.idea-frames article:first-child{min-height:230px;grid-column:auto}
  .idea-frames h3{font-size:37px}
}
@media(max-width:370px){.header-inner{gap:7px}.site-header .brand{gap:6px}.site-header .wordmark{font-size:23px;letter-spacing:.035em}}

/* Interactive virtual-staging comparison */
.property-comparison-section{padding-top:30px}.property-comparison-section .section-heading{align-items:end}.property-comparison-section h2{font-size:clamp(38px,4vw,58px);line-height:1.05;letter-spacing:-.04em}.before-after{margin:0 auto;max-width:1000px}.before-after-view{position:relative;overflow:hidden;aspect-ratio:4/3;background:#30353a;border:1px solid #596067;border-radius:12px;isolation:isolate}.before-after-view img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}.before-after-overlay{clip-path:inset(0 0 0 var(--split,50%));}.before-after-label{position:absolute;z-index:1;top:18px;padding:8px 13px;border-radius:3px;background:#24272bcc;color:#f3f4ed;font-size:11px;font-weight:600;letter-spacing:.04em;pointer-events:none}.before-after-label-start{left:18px}.before-after-label-end{right:18px}.before-after-divider{position:absolute;z-index:2;top:0;bottom:0;left:var(--split,50%);width:2px;background:#f3f4ed;transform:translateX(-50%);pointer-events:none;box-shadow:0 0 8px #0006}.before-after-divider span{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:42px;height:42px;transform:translate(-50%,-50%);border:2px solid #f3f4ed;border-radius:50%;background:#24272b;color:#d4f05a;font-size:21px;box-shadow:0 2px 12px #0004}.before-after-range{position:absolute;z-index:3;inset:0;width:100%;height:100%;margin:0;opacity:.001;cursor:ew-resize;touch-action:pan-y}.before-after-range:focus-visible{opacity:.03;outline:4px solid #d4f05a;outline-offset:-5px}.before-after-range::-webkit-slider-thumb{width:48px;height:100%;-webkit-appearance:none;appearance:none}.before-after-range::-moz-range-thumb{width:48px;height:100%;border:0;background:transparent}.before-after figcaption{margin-top:12px;color:#b6bdb5;font-size:12px;text-align:center}.before-after-view:has(.before-after-range:focus-visible){outline:2px solid #d4f05a;outline-offset:4px}@media(max-width:700px){.property-comparison-section{padding-top:10px}.before-after-view{aspect-ratio:4/3;border-radius:8px}.before-after-label{top:10px;padding:7px 9px;font-size:10px}.before-after-label-start{left:10px}.before-after-label-end{right:10px}.before-after-divider span{width:38px;height:38px}}

/* Compact staged-room comparison in the homepage property accordion */
.service-panel .property-preview-frame{padding:0!important;overflow:hidden}
.property-preview-frame .before-after-view{aspect-ratio:4/3;border:0;border-radius:8px 8px 0 0}
.property-preview-frame .before-after-label{top:10px;padding:6px 9px;font-size:9px;letter-spacing:.09em}
.property-preview-frame .before-after-label-start{left:10px}
.property-preview-frame .before-after-label-end{right:10px}
.property-preview-frame .before-after-divider span{width:34px;height:34px;font-size:18px}
.service-panel .property-preview-frame figcaption{display:block;margin:0;padding:9px 12px;border-top:1px solid #51584b;color:#cbd0c6;font-size:9px;line-height:1.45;text-align:left}

/* Give the property photo headings more breathing room */
.property-comparison-section .section-heading .eyebrow{letter-spacing:2.4px}
.property-comparison-section h2{letter-spacing:-.01em}

/* Property visual packages and agent request form */
.property-pricing-section{background:#1c2023;padding:88px 0}
.property-pricing-section .section-heading{align-items:end}
.pricing-table-wrap{overflow-x:auto;border:1px solid #596067;border-radius:10px;background:#292e32}
.pricing-table{width:100%;border-collapse:collapse;min-width:650px;text-align:left}
.pricing-table th,.pricing-table td{padding:18px 20px;border-bottom:1px solid #4e5659}
.pricing-table thead th{color:#d4f05a;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.pricing-table tbody th{font-weight:600}
.pricing-table tbody td:nth-child(2){color:#f3f4ed;font-size:20px;font-weight:600}
.pricing-table tbody tr:last-child th,.pricing-table tbody tr:last-child td{border-bottom:0}
.pricing-footnote{max-width:760px;margin:20px 0 26px;color:#bdc5bd;font-size:14px;line-height:1.7}
.property-request-form small{display:block;margin-top:8px;color:#bdc5bd;font-size:12px;line-height:1.55}
.property-request-page .contact-copy>p:not(.eyebrow){max-width:520px}
.property-comparison-section .before-after{max-width:500px}
.property-pricing-link{display:inline-flex;gap:8px;align-items:center;margin-top:12px;color:var(--lime);font-size:13px;font-weight:600;text-decoration:none}
.property-pricing-link:hover{text-decoration:underline;text-underline-offset:4px}
.turnaround-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 22px}
.turnaround-summary>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;border:1px solid #596067;border-radius:8px;background:#292e32}
.turnaround-summary span{color:#cbd0c6;font-size:14px}
.turnaround-summary strong{color:var(--lime);font-size:18px;white-space:nowrap}
@media(max-width:700px){.property-pricing-section{padding:62px 0}.pricing-table th,.pricing-table td{padding:14px 15px}}
@media(max-width:520px){.turnaround-summary{grid-template-columns:1fr}.turnaround-summary>div{padding:14px 16px}}

/* Compact property page: examples, prices and a single process row. */
.property-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-top:20px;padding-bottom:64px}
.property-benefits-heading{grid-column:1/-1;margin-bottom:4px}
.property-benefits-heading h2{font-size:clamp(28px,3vw,38px);line-height:1.2;margin:12px 0 0;letter-spacing:-.01em}
.property-benefits article{border-top:2px solid #7c9138;padding-top:16px}
.property-benefits article h3{font-size:21px;line-height:1.3;letter-spacing:0;margin:0 0 10px}
.property-benefits p{font-size:14px;line-height:1.65;color:#bdc5bd;margin:0}
.property-pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.property-package-copy h2{margin:14px 0 18px}
.property-package-copy>p:not(.eyebrow){max-width:450px;font-size:16px;line-height:1.65}
.property-package-copy .property-price-tax{color:var(--lime);font-size:13px;margin:18px 0}
.property-package-copy .property-other-edits{font-size:13px;margin-top:18px;color:#bdc5bd}
.property-other-edits a{text-underline-offset:3px}
.property-pricing-grid .pricing-table{table-layout:fixed}
.property-pricing-grid .pricing-table th:first-child{width:60%}
.property-pricing-grid .pricing-table td,.property-pricing-grid .pricing-table th:last-child{text-align:right}
.property-pricing-grid .pricing-table th,.property-pricing-grid .pricing-table td{padding:16px 22px}
.property-delivery-note{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;margin-top:18px;font-size:13px;color:#bdc5bd}
.property-delivery-note strong{color:var(--lime);font-weight:600}
.property-delivery-start{font-size:12px;color:#aeb8ae;line-height:1.6;margin:10px 0 0}
@media(max-width:760px){.property-benefits{grid-template-columns:1fr;gap:20px}.property-pricing-grid{grid-template-columns:1fr;gap:26px}.property-pricing-grid .pricing-table th,.property-pricing-grid .pricing-table td{padding:14px 18px}}
.property-compact-intro{padding-top:30px;padding-bottom:36px}
.property-compact-intro h1{max-width:950px;font-size:clamp(36px,4.2vw,58px);line-height:1.12;letter-spacing:-.015em;margin:14px 0}
.property-compact-intro>p:not(.eyebrow){max-width:780px;font-size:18px;line-height:1.6}
.property-intro-actions{display:flex;align-items:center;gap:24px;margin-top:22px;flex-wrap:wrap}
.property-gallery{border-top:1px solid #50585b;padding-top:48px;padding-bottom:64px}
.property-tile-gallery{border-top:0;padding-top:12px;padding-bottom:56px}
.property-tile-gallery .property-benefits-heading{margin-bottom:28px}
.property-service-tile{display:flex;flex-direction:column;padding:22px;background:#2b3034;border:1px solid #50585b;border-radius:12px}
.property-tile-copy{flex:1;margin-bottom:24px}
.property-example .property-tile-copy h3{font-size:21px;line-height:1.3;margin:0 0 12px}
.property-tile-copy p{font-size:14px;line-height:1.65;color:#bdc5bd;margin:0}
.property-tile-service{font-size:16px;line-height:1.3;font-weight:600;letter-spacing:.01em;margin:0 0 12px}
.property-service-tile .property-pricing-link{margin-top:16px}
.property-example-disclosure{margin:12px 0 0;font-size:11px;line-height:1.5;color:#bcc4bd}
.property-tile-copy h4{font-size:18px;line-height:1.35;margin:0 0 10px;letter-spacing:0}
.property-scene-example{font-size:12px;color:#bdc5bd;margin:0 0 12px}
.property-treatment-options{min-width:0;border:1px solid #60686a;border-radius:8px;padding:15px;margin:0 0 22px}
.property-treatment-options legend{font-size:13px;font-weight:600;padding:0 5px}
.property-treatment-options p{font-size:12px;color:#bdc5bd;margin:0 0 10px}
.project-form .property-treatment-options label{display:flex;align-items:center;gap:10px;margin:0;min-height:40px}
.project-form .property-treatment-options input{width:18px;height:18px;padding:0;margin:0;flex:none;accent-color:var(--lime)}
.property-booking-note{font-size:13px;line-height:1.65;color:#bdc5bd;margin:18px 0 0}
.property-marketing-disclosure{padding-top:24px}
.property-marketing-disclosure p{max-width:900px;margin:0;border-left:2px solid #7c9138;padding-left:16px;font-size:13px;line-height:1.65;color:#bdc5bd}
@media(max-width:760px){.property-service-tile{padding:18px}.property-tile-copy{margin-bottom:20px}.property-tile-gallery{padding-top:0;padding-bottom:40px}}
.property-gallery>h2{margin:0 0 20px}
.property-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.property-example h3{font-size:22px;letter-spacing:.015em;margin:0 0 14px}
.property-example .before-after{max-width:none;margin:0}
.property-example .before-after-view{aspect-ratio:4/3}
.property-example .before-after-label{top:10px;padding:6px 8px;font-size:10px}
.property-example .before-after-label-start{left:10px}
.property-example .before-after-label-end{right:10px}
.property-example .before-after-divider span{width:34px;height:34px;font-size:18px}
.property-pricing-section{padding:44px 0;scroll-margin-top:100px}
.property-pricing-section .section-heading{margin-bottom:24px}
.property-pricing-section h2{font-size:clamp(30px,3vw,42px);line-height:1.15}
.pricing-table{min-width:0}
.property-process{padding-top:64px;padding-bottom:64px}
.property-process h2{font-size:clamp(28px,3vw,40px);line-height:1.2;margin:12px 0 28px}
.property-process-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;list-style:none;padding:0;margin:0}
.property-process-row li{position:relative;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.property-process-row li:not(:last-child)::after{content:'';position:absolute;left:54px;right:-16px;top:20px;height:1px;background:#7c9138}
.property-step-number{display:grid;place-items:center;flex:none;width:40px;min-width:40px;height:40px;box-sizing:border-box;border:1px solid #7c9138;border-radius:50%;color:var(--lime);font-size:13px;font-weight:600;line-height:1}
.property-process-row h3{font-size:18px;margin:0 0 8px;line-height:1.3}
.property-process-row p{font-size:14px;line-height:1.6;margin:0;color:#bdc5bd}
.property-compact-faq{padding:44px 0}
.property-compact-faq h2{font-size:clamp(28px,3vw,40px)}
.property-final-action{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:28px;padding-bottom:28px}
.property-final-action p{font-size:20px;margin:0}
@media(max-width:760px){.property-gallery-grid{grid-template-columns:1fr;gap:26px;max-width:500px;margin:auto}.property-process-row{grid-template-columns:1fr;gap:20px}.property-process-row li:not(:last-child)::after{display:none}.property-final-action{align-items:flex-start;flex-direction:column}.property-compact-intro{padding-top:20px}.property-pricing-section,.property-compact-faq{padding:34px 0}.property-process{padding-top:34px;padding-bottom:34px}.pricing-table th,.pricing-table td{padding:13px 10px}.pricing-table thead th{font-size:10px;letter-spacing:.04em}}
/* Website package, live-project preview and quote section. */
.website-starting-price { margin: 1.4rem 0; font-size: 1.1rem; }
.website-starting-price strong { color: var(--lime, #d4f05a); }
.website-showcase { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: clamp(2rem, 5vw, 5rem); }
.website-showcase-copy h2 { font-size: clamp(1.8rem, 3vw, 2.8rem); }
.website-device-showcase { margin: 0; min-width: 0; }
.showcase-devices { position: relative; padding: 1rem 12% 1rem 0; }
.showcase-laptop { width: 100%; }
.showcase-laptop-screen { aspect-ratio: 16/10; overflow: hidden; border: 9px solid #111518; border-radius: 12px 12px 4px 4px; background: #080909; box-shadow: 0 15px 35px #0004; }
.showcase-laptop-base { height: 12px; width: 108%; margin-left: -4%; background: linear-gradient(#8c9295, #41484b); border-radius: 2px 2px 50% 50%; }
.showcase-phone { position: absolute; width: 23%; right: 0; bottom: .3rem; border: 6px solid #111518; border-radius: 22px; background: #080909; box-shadow: 0 10px 25px #0007; overflow: hidden; }
.showcase-phone-screen { aspect-ratio: 1/2; overflow: hidden; border-radius: 16px; }
.showcase-track { height: 300%; animation: showcase-scroll 21s ease-in-out infinite; }
.showcase-slide { height: 33.333333%; overflow: hidden; position: relative; background: #080909; }
.showcase-laptop .showcase-slide img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: top; }
.showcase-phone .showcase-slide img { position: absolute; width: 100%; height: auto; max-width: none; top: -6%; }
.showcase-phone .showcase-slide:nth-child(2) img { top: 0; }
@keyframes showcase-scroll { 0%,24% { transform: translateY(0); } 33%,57% { transform: translateY(-33.333333%); } 66%,90% { transform: translateY(-66.666667%); } 100% { transform: translateY(0); } }
.is-paused .showcase-track { animation-play-state: paused; }
.website-device-showcase figcaption { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding-top: .8rem; font-size: .75rem; }
.showcase-pause { border: 1px solid #64716a; background: transparent; color: #d4f05a; padding: .45rem .65rem; border-radius: 4px; cursor: pointer; }
.website-package-section { background: #1c2123; }
.website-package-grid, .website-quote-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.website-package-price { margin: 1.5rem 0; font-size: 1.2rem; }
.website-package-price strong { font-size: 2.6rem; color: #d4f05a; }
.website-package-price span { display: block; font-size: .85rem; }
.website-inclusions { padding: 0; margin: 0; list-style: none; }
.website-inclusions li { padding: 1rem 0; border-bottom: 1px solid #64716a66; }
.website-inclusions li:first-child { padding-top: 0; }
.website-inclusions strong, .website-inclusions span { display: block; }
.website-inclusions strong { color: #d4f05a; margin-bottom: .3rem; }
.website-inclusions span, .website-scope-note { font-size: .95rem; }
.website-scope-note { margin-top: 1.5rem; }
.website-scope-note h3 { font-size: 1.15rem; }
.website-ownership .two-col { gap: 3rem; }
.website-process { padding-bottom: 4rem; }
.website-quote-section { background: #1c2123; scroll-margin-top: 6rem; }
.website-quote-form { width: 100%; background: #2c3235; border: 1px solid #64716a; border-radius: 12px; padding: clamp(1.2rem, 3vw, 2rem); }
.website-quote-benefits { list-style: none; padding: 0; margin: 1.5rem 0 2rem; }
.website-quote-benefits li { margin: .6rem 0; }
.website-quote-benefits li::before { content: '✓'; color: #d4f05a; margin-right: .7rem; }
@media (max-width: 760px) {
  .website-showcase, .website-package-grid, .website-quote-grid { grid-template-columns: 1fr; gap: 2rem; }
  .website-showcase { padding-top: 2rem; padding-bottom: 3rem; }
  .showcase-laptop-screen { border-width: 5px; }
  .showcase-phone { border-width: 4px; border-radius: 14px; }
  .showcase-phone-screen { border-radius: 10px; }
  .website-process { padding-bottom: 2.5rem; }
}
@media (prefers-reduced-motion: reduce) { .showcase-track { animation-play-state: paused; } .website-device-showcase:not(.is-paused) .showcase-track { animation-play-state: running; } }
.property-service-tile .before-after .property-slider-hint {
  display: block;
  margin: .55rem 0 .8rem;
  padding: 0;
  text-align: center;
  font-size: .8rem;
  color: #d4d9d2;
}
/* Keep comparison handles comfortable to grab and visible at either edge. */
.before-after-view .before-after-divider span { width: 44px; height: 36px; border-radius: 18px; border: 2px solid #f3f4ed; font-size: 0; background: #24272b url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='18' viewBox='0 0 24 18' fill='none' stroke='%23d4f05a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 5 4 9l4 4M16 5l4 4-4 4M4 9h16'/%3E%3C/svg%3E") center / 24px 18px no-repeat; }
.before-after-divider { left: clamp(25px, var(--split, 50%), calc(100% - 25px)); }
.before-after-label[hidden] { display: none; }
/* A personal introduction to the independent studio. */
.founder-hero { display: grid; grid-template-columns: 1.5fr 1fr; gap: clamp(2rem, 7vw, 7rem); align-items: center; padding-top: 5rem; padding-bottom: 5rem; }
.founder-hero h1 { font-size: clamp(2.6rem, 4.8vw, 4.5rem); line-height: 1.16; letter-spacing: .005em; }
.founder-hero h1 span { color: #d4f05a; }
.founder-hero .lead { max-width: 640px; margin-top: 1.6rem; font-size: 1.15rem; line-height: 1.7; }
.founder-hero .button { margin-top: 1.5rem; }
.founder-contact { display: flex; flex-wrap: wrap; gap: .8rem 1.5rem; margin-top: 1.25rem; font-size: .95rem; }
.founder-contact a { text-decoration: underline; text-underline-offset: 5px; }
.founder-contact a:hover { color: #d4f05a; }
.privacy-page { max-width: 850px; }
.privacy-page h2 { margin: 2.5rem 0 1rem; font-size: 1.6rem; letter-spacing: 0; }
.privacy-page h1 { margin-bottom: 1.5rem; }
.privacy-page a, .form-note a { text-decoration: underline; text-underline-offset: 3px; }
.founder-note { background: #1b2022; border: 1px solid #59625f; border-radius: 14px; padding: clamp(1.5rem, 3vw, 2.5rem); }
.founder-monogram { display: flex; align-items: baseline; justify-content: space-between; font-size: 5rem; font-weight: 700; color: #d4f05a; line-height: 1.1; padding-bottom: 1.2rem; border-bottom: 1px solid #59625f; }
.founder-monogram span { font-size: 2rem; }
.founder-name { font-size: 1.8rem; margin: 1.3rem 0 .25rem; font-weight: 600; }
.founder-role { font-size: .9rem; color: #bec6c1; }
.founder-note-detail { display: grid; gap: .4rem; margin: 1.5rem 0; font-size: .95rem; }
.founder-note-detail strong { font-weight: 600; }
.founder-note .underlink { font-size: .8rem; }
.founder-story, .founder-industries { background: #1c2123; }
.founder-story .two-col, .founder-approach .two-col { gap: clamp(2rem, 6vw, 6rem); }
.founder-service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.founder-service-grid > a { display: flex; flex-direction: column; border-top: 2px solid #819634; padding-top: 1.5rem; text-decoration: none; }
.founder-service-grid h3 { font-size: 1.5rem; margin-bottom: .8rem; }
.founder-service-grid p { flex: 1; margin-bottom: 1.5rem; }
.founder-service-grid .eyebrow { margin-bottom: 1rem; }
.founder-service-grid > a:hover h3 { color: #d4f05a; }
.founder-app-link { margin-top: 2rem; }
.founder-industry-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.founder-industry-grid article { padding: 1.5rem; border: 1px solid #4b5653; border-radius: 8px; }
.founder-industry-grid h3 { font-size: 1.1rem; margin-bottom: .65rem; }
.founder-industry-grid p { font-size: .95rem; margin-bottom: 0; }
.founder-industry-footer { margin: 1.8rem 0 0; }
@media (max-width: 900px) { .founder-hero { gap: 2rem; } .founder-industry-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 650px) {
  .founder-hero { grid-template-columns: 1fr; padding-top: 3rem; padding-bottom: 3rem; }
  .founder-hero h1 { font-size: clamp(2.5rem, 10vw, 3.5rem); }
  .founder-note { max-width: none; }
  .founder-monogram { font-size: 3.5rem; }
  .founder-service-grid, .founder-industry-grid { grid-template-columns: 1fr; gap: 1.3rem; }
  .founder-service-grid > a { padding-top: 1.2rem; }
  .founder-industry-footer .underlink { display: inline; }
}
/* Refined About page: quieter identity, compact evidence and industry list. */
.founder-hero { grid-template-columns: 1fr; gap: 2rem; max-width: 1000px; }
.founder-hero > div:first-child { max-width: 860px; }
.founder-hero .lead { max-width: 760px; }
.founder-signature { display: flex; flex-wrap: wrap; align-items: center; gap: .7rem 1.5rem; border-top: 1px solid #53605a; padding-top: 1.4rem; color: #c8cfc8; font-size: .9rem; }
.founder-signature-name { color: #d4f05a; font-size: 1.4rem; font-weight: 600; }
.founder-signature .underlink { margin-left: auto; font-size: .85rem; }
.founder-story h2, .founder-proof h2, .founder-approach h2 { font-size: clamp(2rem, 3.5vw, 3rem); line-height: 1.15; }
.founder-proof { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.founder-project-image { display: block; border: 1px solid #53605a; border-radius: 10px; overflow: hidden; background: #181c1e; text-decoration: none; }
.founder-project-image img { display: block; width: 100%; height: auto; }
.founder-project-image > span { display: flex; justify-content: space-between; gap: 1rem; padding: .9rem 1.2rem; font-size: .85rem; }
.founder-service-grid article { display: flex; flex-direction: column; border-top: 2px solid #819634; padding-top: 1.3rem; }
.founder-service-links { display: flex; flex-wrap: wrap; gap: .65rem 1.5rem; }
.founder-services { padding-top: 1rem; }
.founder-industry-grid { grid-template-columns: repeat(2, 1fr); gap: 0 3rem; }
.founder-industry-grid article { border: 0; border-top: 1px solid #53605a; border-radius: 0; padding: 1.2rem 0; }
.founder-industries .section-heading, .founder-services .section-heading { margin-bottom: 2rem; }
.founder-project-image:focus-visible, .founder-signature a:focus-visible, .founder-service-grid a:focus-visible { outline: 3px solid #d4f05a; outline-offset: 5px; }
@media (max-width: 650px) {
  .founder-proof, .founder-industry-grid { grid-template-columns: 1fr; }
  .founder-signature { align-items: flex-start; flex-direction: column; }
  .founder-signature .underlink { margin-left: 0; }
  .founder-services { padding-top: 1rem; }
}
/* Delivered property projects: independent image toggles and looping gallery navigation. */
.property-delivered-section { padding-top: 1rem; }
.property-project-track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 1.5rem; }
.delivered-project { flex: 0 0 100%; min-width: 0; scroll-snap-align: start; display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1fr); gap: clamp(1.5rem, 4vw, 4rem); border: 1px solid #56615b; padding: clamp(1.2rem, 3vw, 2rem); border-radius: 12px; background: #292f32; align-items: center; }
.delivered-project-images { min-width: 0; }
.delivered-project-images figure { margin: 0; position: relative; background: #1b2022; border-radius: 8px; overflow: hidden; }
.delivered-project-images figure[hidden] { display: none; }
.delivered-project-images img { display: block; width: 100%; height: clamp(280px, 32vw, 400px); object-fit: contain; }
.delivered-project-images figcaption { position: absolute; top: .75rem; left: .75rem; background: #202629e8; color: #fff; border-radius: 3px; padding: .4rem .65rem; font-size: .8rem; }
.project-view-controls { display: flex; gap: .5rem; margin-top: .8rem; }
.project-view-controls[hidden], .property-project-navigation[hidden] { display: none; }
.project-view-controls button, .property-project-navigation button { cursor: pointer; border: 1px solid #738565; color: #edf1e7; background: #202629; border-radius: 5px; padding: .65rem 1rem; font: inherit; font-size: .85rem; }
.project-view-controls button[aria-pressed="true"] { background: #d4f05a; color: #202629; border-color: #d4f05a; }
.project-view-controls button:focus-visible, .property-project-navigation button:focus-visible { outline: 3px solid #d4f05a; outline-offset: 3px; }
.delivered-project-copy h3 { font-size: clamp(1.4rem, 2.4vw, 2rem); margin-bottom: 1rem; }
.delivered-project-copy .property-example-disclosure { font-size: .85rem; line-height: 1.6; border-left: 2px solid #819634; padding-left: 1rem; margin: 1.2rem 0; }
.delivered-project-copy .property-pricing-link { display: block; margin-top: 1.2rem; }
.property-project-navigation { display: flex; justify-content: flex-end; align-items: center; gap: 1rem; margin-top: 1rem; }
@media (max-width: 650px) { .delivered-project { grid-template-columns: 1fr; } .delivered-project-images img { height: 340px; } }
.property-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.8rem; margin-top: 1.5rem; }
.property-hero-actions .button { margin-top: 0; }
.property-delivered-section { padding-top: 3rem; padding-bottom: 3rem; }
.property-delivered-section .section-heading { margin-bottom: 1.5rem; }
.property-delivered-section h2 { font-size: clamp(1.8rem, 3vw, 2.5rem); }
.property-delivered-section .delivered-project { grid-template-columns: minmax(0, .65fr) minmax(0, 1fr); padding: 1.5rem; gap: 2rem; }
.property-delivered-section .delivered-project-images img { height: 300px; }
.project-scope-label { font-size: .8rem; color: #d4f05a; line-height: 1.5; margin-bottom: .8rem; }
@media (max-width: 650px) { .property-delivered-section .delivered-project { grid-template-columns: 1fr; gap: 1.5rem; padding: 1.2rem; } .property-delivered-section { padding-top: 2.5rem; padding-bottom: 2.5rem; } }

.workflow-scope-cta{margin-top:24px}


@media(min-width:701px){.mega-intro{padding:24px}.mega-intro .eyebrow{margin-bottom:20px}.mega-title{font-size:27px;margin-bottom:24px}.mega-links{align-self:center}}


/* Selected work and clearer content enquiry routes. */
.home-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.home-work-grid article{padding:24px;border:1px solid #62686b;border-radius:12px;background:#292e32}
.home-work-grid img{width:100%;height:260px;object-fit:cover;object-position:center;border-radius:8px;margin-bottom:24px}
.home-work-grid article:nth-child(2) img{object-fit:contain;background:#1c2224}
.home-work-grid h3{font-size:28px;margin-bottom:16px}
.home-work-grid .underlink{margin-top:20px}
.service-content-link{margin-top:28px;line-height:1.6}
#newsletters-promotions{scroll-margin-top:120px}
@media(max-width:700px){.home-work-grid{grid-template-columns:1fr;gap:24px}.home-work-grid article{padding:20px}.home-work-grid img{height:220px}.service-content-link{display:inline-block}.workflow-scope-cta{max-width:100%}}

/* Compact SME possibilities with examples. */
.sme-possibilities{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.sme-possibilities li{display:grid;grid-template-columns:28px 1fr;gap:16px;border-top:1px solid #62686b;padding:28px 0}
.possibility-number{color:var(--lime);font-size:12px;font-weight:700;padding-top:6px}
.sme-possibilities h3{font-size:24px;line-height:1.3;margin:0 0 12px;letter-spacing:0}
.sme-possibilities p{margin:0 0 12px}
.sme-possibilities .possibility-example{font-size:14px;line-height:1.65;color:#bec5bd;margin-bottom:0}
.sme-possibilities .possibility-example strong{color:var(--chalk)}
.sme-possibilities .underlink{margin-top:20px}
@media(max-width:700px){.sme-possibilities{grid-template-columns:1fr}.sme-possibilities li{gap:12px;padding:24px 0}.sme-possibilities h3{font-size:22px}}

.sme-possibilities li{grid-template-columns:10px 1fr;gap:16px}
.possibility-bullet{width:6px;height:6px;border-radius:50%;background:var(--lime);margin-top:12px}
@media(max-width:700px){.sme-possibilities li{gap:12px}}

.enquiry-path{font-size:14px;line-height:1.8;margin:24px 0;color:var(--lime)}
.property-source-note{margin-top:28px;padding-top:24px;border-top:1px solid #62686b}
.property-source-note h2{font-size:24px;margin-bottom:14px}
.property-source-note p{font-size:15px}

.website-showcase-copy h2{margin-bottom:24px;line-height:1.2}
.website-showcase-copy>p:not(.eyebrow):not(.form-note){margin:0 0 20px;line-height:1.75}
.website-showcase-copy>.underlink{display:inline-flex;margin-top:4px;padding-bottom:10px}
.website-showcase-copy>.form-note{margin-top:24px;max-width:42ch;line-height:1.7}


.property-marketing-disclosure h2{font-size:24px;line-height:1.3;margin:24px 0 16px}
.property-marketing-disclosure p{max-width:90ch;line-height:1.75;margin-bottom:16px}
.property-marketing-disclosure .underlink{margin-top:8px}

.property-package-copy>.property-package-inclusions{margin:24px 0 0}
.property-package-copy>.button{margin-top:24px}
.property-package-copy>.property-other-edits{margin-top:24px}
.property-pricing-grid .property-delivery-note{margin-top:24px}
.property-pricing-grid .property-delivery-start{margin-top:14px}
.property-pricing-grid>div:last-child>p:last-child{margin-top:20px;line-height:1.75}


/* Site-wide service and contact directory. */
.footer-directory{display:grid;grid-template-columns:1.4fr 1fr .7fr 1fr;gap:40px;padding-bottom:48px;align-items:start}
.footer-studio .brand{margin-bottom:24px}
.footer-studio p{font-size:14px;line-height:1.75;color:#bec5bd;max-width:34ch;margin-bottom:16px}
.footer-profile{display:inline-block;font-size:13px;margin-top:4px;text-decoration:underline;text-underline-offset:5px}
.footer-column h2{font-size:11px;line-height:1.5;font-weight:700;text-transform:uppercase;letter-spacing:.13em;color:var(--lime);margin:8px 0 24px}
.footer-column ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:16px}
.footer-column a{font-size:14px;line-height:1.6;color:#bec5bd;overflow-wrap:anywhere}
.footer-column a:hover,.footer-profile:hover{color:var(--lime)}
#selected-work{scroll-margin-top:120px}
@media(max-width:1050px){.footer-directory{grid-template-columns:1fr 1fr;gap:36px}.footer-studio p{max-width:45ch}}
@media(max-width:600px){.footer-directory{grid-template-columns:1fr;gap:32px;padding-bottom:32px}.footer-studio .brand{margin-bottom:20px}.footer-column h2{margin:0 0 16px}.footer-column ul{gap:12px}}

.home-work-links{display:flex;flex-wrap:wrap;gap:16px 24px;margin-top:24px}
.home-work-grid .home-work-links .underlink{margin-top:0}
