:where(.pg-portland-or-mac-repair) *,:where(.pg-portland-or-mac-repair) :before,:where(.pg-portland-or-mac-repair) :after{box-sizing:border-box;margin:0;padding:0}html:has(.pg-portland-or-mac-repair){scroll-behavior:smooth}body:has(.pg-portland-or-mac-repair){background:var(--fx-bg-ffffff);color:var(--fx-ink-000000);-webkit-font-smoothing:antialiased;font-family:DM Sans,sans-serif;line-height:1.6;overflow-x:hidden}.pg-portland-or-mac-repair a{color:inherit;text-decoration:none}:root:has(.pg-portland-or-mac-repair){--green:#8fc748;--green-dim:#8fc7481a;--mono:"Fira Code", monospace;--border:var(--fx-line-e5e5e5);--bg-off:var(--fx-bg-f7f7f5)}.pg-portland-or-mac-repair .mobile-br{display:none}.pg-portland-or-mac-repair .hero{background:var(--fx-bg-ffffff);justify-content:center;align-items:flex-start;min-height:100svh;padding:0 40px;display:flex;position:relative;overflow:visible}.pg-portland-or-mac-repair .hero:before{content:"";background-image:linear-gradient(to right, rgb(var(--fx-shade) / calc(.03 * var(--fx-grid-k,1))) 1px, transparent 1px), linear-gradient(to bottom, rgb(var(--fx-shade) / calc(.03 * var(--fx-grid-k,1))) 1px, transparent 1px);pointer-events:none;z-index:0;background-position:-1px -1px;background-size:40px 40px;position:absolute;inset:0}.pg-portland-or-mac-repair .hero-inner{z-index:1;opacity:0;flex-direction:column;width:100%;max-width:1400px;margin:0 auto;padding:0;transition:opacity .2s;display:flex;position:relative}.pg-portland-or-mac-repair .hero-top{grid-template-columns:1fr 1fr;align-items:start;gap:60px;margin-bottom:0;display:grid}.pg-portland-or-mac-repair .hero-left{flex-direction:column;display:flex}.pg-portland-or-mac-repair .terminal-badge{background:var(--green-dim);color:var(--fx-ink-000000);font-family:var(--mono);border:1px solid var(--green);letter-spacing:1px;border-radius:4px;align-self:flex-start;align-items:center;gap:8px;margin-bottom:24px;padding:7px 14px;font-size:11px;font-weight:700;display:inline-flex}.pg-portland-or-mac-repair .hero h1{letter-spacing:-.04em;color:var(--fx-ink-000000);margin-bottom:18px;font-size:clamp(36px,4.5vw,68px);font-weight:900;line-height:1}.pg-portland-or-mac-repair .hero h1 .accent{color:var(--green)}.pg-portland-or-mac-repair .hero-subtitle{color:var(--fx-ink-666666);margin-bottom:36px;font-size:clamp(15px,1.05vw,17px);line-height:1.8}.pg-portland-or-mac-repair .hero-contact{flex-direction:column;gap:0;display:flex}.pg-portland-or-mac-repair .hero-contact-top{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:28px;padding-bottom:16px;display:flex}.pg-portland-or-mac-repair .hero-contact-item{color:var(--fx-ink-333333);font-size:clamp(13px,1.2vw,18px);font-weight:700;font-family:var(--mono);white-space:nowrap;align-items:center;gap:9px;text-decoration:none;transition:color .2s;display:flex}.pg-portland-or-mac-repair .hero-contact-item:hover{color:var(--green)}.pg-portland-or-mac-repair .hero-contact-item svg{color:var(--green);flex-shrink:0;width:14px;height:14px}.pg-portland-or-mac-repair .hero-contact-divider{background:var(--border);flex-shrink:0;width:1px;height:16px}.pg-portland-or-mac-repair .hero-contact-bottom{flex-wrap:wrap;align-items:center;gap:10px;padding-top:14px;display:flex}.pg-portland-or-mac-repair .status-pill{font-family:var(--mono);letter-spacing:.5px;color:var(--green);align-items:center;gap:6px;font-size:clamp(13px,1.2vw,18px);font-weight:700;display:inline-flex}.pg-portland-or-mac-repair .status-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot;box-shadow:0 0 6px #8fc748cc}.pg-portland-or-mac-repair .status-dot.closed{background:#e53e3e;animation:none;box-shadow:0 0 6px #e53e3e99}.pg-portland-or-mac-repair .status-pill.closed{color:var(--fx-tint-e53e3e)}@keyframes pulse-dot{0%,to{box-shadow:0 0 6px #8fc748cc}50%{box-shadow:0 0 12px #8fc748}}.pg-portland-or-mac-repair .hours-toggle{cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;padding:0;font-family:inherit;display:inline-flex}.pg-portland-or-mac-repair .hours-detail{color:var(--fx-mid-999999);font-size:clamp(13px,1.2vw,18px);font-family:var(--mono)}.pg-portland-or-mac-repair .hours-detail span{color:var(--fx-ink-555555)}.pg-portland-or-mac-repair .hours-caret{color:var(--fx-mid-aaaaaa);font-size:18px;line-height:1;transition:transform .2s}.pg-portland-or-mac-repair .hours-caret.open{transform:rotate(180deg)}.pg-portland-or-mac-repair .hours-dropdown{opacity:0;background:var(--fx-bg-f9f9f9);border:1px solid var(--border);border-radius:6px;width:fit-content;min-width:400px;max-width:500px;max-height:0;margin-top:8px;transition:max-height .45s,opacity .35s;overflow:hidden}.pg-portland-or-mac-repair .hours-dropdown.open{opacity:1;max-height:200px}.pg-portland-or-mac-repair .hours-row-item{justify-content:space-between;align-items:center;padding:clamp(7px,.6vw,12px) clamp(10px,1vw,18px);display:flex}.pg-portland-or-mac-repair .hours-row-item:not(:last-child){border-bottom:1px solid var(--border)}.pg-portland-or-mac-repair .hday{color:var(--fx-ink-333333);font-size:clamp(12px,1.2vw,18px);font-weight:600;font-family:var(--mono);white-space:nowrap}.pg-portland-or-mac-repair .htime{color:var(--fx-ink-000000);font-size:clamp(12px,1.2vw,18px);font-weight:700;font-family:var(--mono);white-space:nowrap}.pg-portland-or-mac-repair .htime.closed-day{color:var(--fx-mid-999999)}.pg-portland-or-mac-repair .hero-btns{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.pg-portland-or-mac-repair .btn-primary{color:#fff;border:2px solid var(--fx-line-000000);white-space:nowrap;background:#000;border-radius:6px;justify-content:space-between;align-items:center;gap:28px;padding:clamp(11px,.9vw,15px) clamp(32px,2.6vw,44px);font-size:clamp(13px,1vw,15px);font-weight:700;transition:background .2s;display:inline-flex}.pg-portland-or-mac-repair .btn-primary:hover{background:#222}.pg-portland-or-mac-repair .btn-arrow{font-size:16px;transition:transform .2s;display:inline-block}.pg-portland-or-mac-repair .btn-primary:hover .btn-arrow{transform:translate(4px)}.pg-portland-or-mac-repair .hero-right{flex-direction:column;align-self:flex-start;display:flex;position:sticky;top:0}.pg-portland-or-mac-repair .hero-map{border:2px solid var(--border);border-radius:8px;width:100%;height:460px;overflow:hidden}@media (max-width:640px){.pg-portland-or-mac-repair .hero-map{height:180px}}@media (min-width:641px) and (max-width:968px){.pg-portland-or-mac-repair .hero-map{height:240px}}.pg-portland-or-mac-repair .hero-map iframe{border:none;width:100%;height:100%;display:block}.pg-portland-or-mac-repair .section-label{font-family:var(--mono);letter-spacing:3px;color:var(--green);text-transform:uppercase;text-align:center;margin-bottom:16px;font-size:clamp(11px,.75vw,15px);font-weight:700;display:block}.pg-portland-or-mac-repair .section-header{letter-spacing:-.04em;text-align:center;margin-bottom:48px;font-size:clamp(36px,3.2vw,62px);font-weight:900;line-height:1}.pg-portland-or-mac-repair .section-header .accent{color:var(--green)}.pg-portland-or-mac-repair .section-sub{color:var(--fx-ink-555555);font-size:clamp(14px,1vw,18px);font-family:var(--mono);max-width:580px;margin-bottom:48px}.pg-portland-or-mac-repair .section-centered{text-align:center;margin-bottom:52px}.pg-portland-or-mac-repair .section-centered .section-sub{margin-top:10px;margin-bottom:0}.pg-portland-or-mac-repair .services-section{background:var(--bg-off);padding:120px 40px}.pg-portland-or-mac-repair .services-inner{max-width:1400px;margin:0 auto}.pg-portland-or-mac-repair .services-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.pg-portland-or-mac-repair .svc-card{background:var(--fx-bg-ffffff);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:10px;padding:28px 24px;display:flex}.pg-portland-or-mac-repair .svc-num{font-family:var(--mono);letter-spacing:2px;text-transform:uppercase;color:var(--green);font-size:10px;font-weight:700}.pg-portland-or-mac-repair .svc-title{color:var(--fx-ink-000000);letter-spacing:-.02em;font-size:clamp(14px,1.2vw,20px);font-weight:800;line-height:1.15}.pg-portland-or-mac-repair .svc-body{color:var(--fx-ink-555555);font-size:clamp(12px,.85vw,15px);line-height:1.7}.pg-portland-or-mac-repair .models-section{background:var(--fx-bg-ffffff);padding:120px 40px}.pg-portland-or-mac-repair .models-inner{max-width:1400px;margin:0 auto}.pg-portland-or-mac-repair .models-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.pg-portland-or-mac-repair .model-card{background:var(--fx-bg-ffffff);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:8px;padding:28px 24px;display:flex}.pg-portland-or-mac-repair .model-card-name{color:var(--fx-ink-000000);letter-spacing:-.02em;font-size:clamp(16px,1.4vw,24px);font-weight:800;line-height:1.1}.pg-portland-or-mac-repair .model-card-gen{color:var(--green);font-size:clamp(10px,.7vw,13px);font-family:var(--mono);letter-spacing:1px;text-transform:uppercase;border-bottom:1px solid var(--border);padding-bottom:12px;font-weight:700}.pg-portland-or-mac-repair .model-card-desc{color:var(--fx-ink-555555);font-size:clamp(12px,.85vw,15px);line-height:1.7}.pg-portland-or-mac-repair .why-section{background:#111;padding:120px 40px}.pg-portland-or-mac-repair .why-inner{max-width:1400px;margin:0 auto}.pg-portland-or-mac-repair .why-section .section-label{color:var(--green)}.pg-portland-or-mac-repair .why-section .section-header{color:#fff}.pg-portland-or-mac-repair .why-section .section-sub{color:var(--fx-mid-888888)}.pg-portland-or-mac-repair .why-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.pg-portland-or-mac-repair .why-card{border:1px solid #2a2a2a;border-top:2px solid var(--green);background:#1a1a1a;border-radius:8px;flex-direction:column;gap:12px;padding:32px 28px;display:flex}.pg-portland-or-mac-repair .why-num{font-family:var(--mono);letter-spacing:2px;color:var(--green);font-size:10px;font-weight:700}.pg-portland-or-mac-repair .why-title{color:#fff;letter-spacing:-.02em;font-size:clamp(15px,1.3vw,22px);font-weight:800;line-height:1.2}.pg-portland-or-mac-repair .why-body{color:var(--fx-mid-aaaaaa);font-size:clamp(12px,.85vw,15px);line-height:1.75}.pg-portland-or-mac-repair .faq-section{background:var(--fx-bg-ffffff);padding:120px 40px}.pg-portland-or-mac-repair .faq-inner{max-width:1400px;margin:0 auto}.pg-portland-or-mac-repair .faq-cols{flex-direction:column;align-items:center;display:flex}.pg-portland-or-mac-repair .faq-left{text-align:center;margin-bottom:40px}.pg-portland-or-mac-repair .faq-left .section-sub{max-width:680px;margin:14px auto 0;line-height:1.8}.pg-portland-or-mac-repair .faq-columns{grid-template-columns:1fr 1fr;gap:0 40px;width:100%;max-width:1300px;margin:0 auto;display:grid}.pg-portland-or-mac-repair .faq-col{flex-direction:column;display:flex}.pg-portland-or-mac-repair .faq-item{border-bottom:1px solid var(--border)}.pg-portland-or-mac-repair .faq-item:first-child{border-top:1px solid var(--border)}.pg-portland-or-mac-repair .faq-q{cursor:pointer;text-align:left;width:100%;color:var(--fx-ink-000000);background:0 0;border:none;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-family:DM Sans,sans-serif;font-size:clamp(14px,1.1vw,18px);font-weight:700;transition:color .2s;display:flex}.pg-portland-or-mac-repair .faq-q:hover{color:var(--green)}.pg-portland-or-mac-repair .faq-icon{font-family:var(--mono);color:var(--green);flex-shrink:0;font-size:18px;line-height:1;transition:transform .25s}.pg-portland-or-mac-repair .faq-item.open .faq-icon{transform:rotate(45deg)}.pg-portland-or-mac-repair .faq-a{max-height:0;color:var(--fx-ink-555555);font-size:clamp(13px,.95vw,16px);line-height:1.8;transition:max-height .35s,padding .3s;overflow:hidden}.pg-portland-or-mac-repair .faq-item.open .faq-a{max-height:400px;padding-bottom:20px}.pg-portland-or-mac-repair .faq-cta-box{background:var(--bg-off);border:1px solid var(--border);clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px));justify-content:space-between;align-items:center;gap:32px;width:100%;max-width:1300px;margin:40px auto 0;padding:36px 40px;display:flex;position:relative}.pg-portland-or-mac-repair .faq-cta-box:before{content:"";background:var(--green);height:2px;position:absolute;top:0;left:0;right:0}.pg-portland-or-mac-repair .faq-cta-text{flex-direction:column;gap:4px;display:flex}.pg-portland-or-mac-repair .faq-cta-h{letter-spacing:-.03em;color:var(--fx-ink-000000);font-size:clamp(18px,1.7vw,30px);font-weight:900}.pg-portland-or-mac-repair .faq-cta-sub{color:var(--fx-ink-666666);font-size:clamp(12px,.85vw,15px);font-family:var(--mono)}@media (max-width:640px){.pg-portland-or-mac-repair .hero-inner{opacity:1;padding:100px 0 60px}.pg-portland-or-mac-repair .hero{padding:0 20px}.pg-portland-or-mac-repair .hero-top{grid-template-columns:1fr;gap:32px}.pg-portland-or-mac-repair .hero-right{display:block}.pg-portland-or-mac-repair .hero h1{font-size:clamp(34px,11vw,60px)}.pg-portland-or-mac-repair .hero-contact-top{gap:16px}.pg-portland-or-mac-repair .hero-contact-divider{display:none}.pg-portland-or-mac-repair .hours-dropdown{min-width:unset;width:100%;max-width:100%}.pg-portland-or-mac-repair .btn-primary{justify-content:center;gap:10px}.pg-portland-or-mac-repair .hero-btns{flex-wrap:nowrap}.pg-portland-or-mac-repair .services-section,.pg-portland-or-mac-repair .models-section,.pg-portland-or-mac-repair .why-section,.pg-portland-or-mac-repair .faq-section{padding:60px 20px}.pg-portland-or-mac-repair .services-grid,.pg-portland-or-mac-repair .models-grid,.pg-portland-or-mac-repair .why-grid,.pg-portland-or-mac-repair .faq-columns{grid-template-columns:1fr}.pg-portland-or-mac-repair .faq-cta-box{text-align:center;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));flex-direction:column;align-items:center}.pg-portland-or-mac-repair .mobile-br{display:block}}@media (min-width:641px) and (max-width:968px){.pg-portland-or-mac-repair .hero{padding:0 24px}.pg-portland-or-mac-repair .hero-top{grid-template-columns:1fr;gap:40px}.pg-portland-or-mac-repair .hero-right{display:block}.pg-portland-or-mac-repair .services-section,.pg-portland-or-mac-repair .models-section,.pg-portland-or-mac-repair .why-section,.pg-portland-or-mac-repair .faq-section{padding:60px 24px}.pg-portland-or-mac-repair .services-grid{grid-template-columns:repeat(2,1fr)}.pg-portland-or-mac-repair .models-grid,.pg-portland-or-mac-repair .why-grid{grid-template-columns:1fr 1fr}.pg-portland-or-mac-repair .faq-columns{grid-template-columns:1fr}}@media (hover:none){.pg-portland-or-mac-repair .svc-card:hover{background:var(--fx-bg-ffffff)}.pg-portland-or-mac-repair .model-card:hover{border-color:var(--border)}}@media (min-width:969px) and (max-width:1200px){.pg-portland-or-mac-repair .hero{padding:0 32px}.pg-portland-or-mac-repair .services-section,.pg-portland-or-mac-repair .models-section,.pg-portland-or-mac-repair .why-section,.pg-portland-or-mac-repair .faq-section{padding:80px 32px}.pg-portland-or-mac-repair .services-grid,.pg-portland-or-mac-repair .why-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1201px) and (max-width:1536px){.pg-portland-or-mac-repair .hero-inner,.pg-portland-or-mac-repair .services-inner,.pg-portland-or-mac-repair .models-inner,.pg-portland-or-mac-repair .why-inner,.pg-portland-or-mac-repair .faq-inner{max-width:1400px}.pg-portland-or-mac-repair .services-section,.pg-portland-or-mac-repair .models-section,.pg-portland-or-mac-repair .why-section,.pg-portland-or-mac-repair .faq-section{padding:100px 40px}}@media (min-width:1537px) and (max-width:1920px){.pg-portland-or-mac-repair .hero{padding:0 60px}.pg-portland-or-mac-repair .hero-inner{max-width:1500px}.pg-portland-or-mac-repair .hero-top{gap:80px}.pg-portland-or-mac-repair .hero h1{font-size:clamp(66px,4.5vw,84px)}.pg-portland-or-mac-repair .hero-subtitle{font-size:clamp(16px,1.05vw,19px)}.pg-portland-or-mac-repair .services-section,.pg-portland-or-mac-repair .models-section,.pg-portland-or-mac-repair .why-section,.pg-portland-or-mac-repair .faq-section{padding:120px 60px}.pg-portland-or-mac-repair .services-inner,.pg-portland-or-mac-repair .models-inner,.pg-portland-or-mac-repair .why-inner,.pg-portland-or-mac-repair .faq-inner{max-width:1500px}}@media (min-width:1921px){.pg-portland-or-mac-repair .hero{padding:0 80px}.pg-portland-or-mac-repair .hero-inner{max-width:1800px}.pg-portland-or-mac-repair .hero-top{gap:100px}.pg-portland-or-mac-repair .hero h1{font-size:clamp(72px,4.2vw,90px)}.pg-portland-or-mac-repair .hero-subtitle{font-size:clamp(17px,1.05vw,20px)}.pg-portland-or-mac-repair .services-section,.pg-portland-or-mac-repair .models-section,.pg-portland-or-mac-repair .why-section,.pg-portland-or-mac-repair .faq-section{padding:140px 80px}.pg-portland-or-mac-repair .services-inner,.pg-portland-or-mac-repair .models-inner,.pg-portland-or-mac-repair .why-inner,.pg-portland-or-mac-repair .faq-inner{max-width:1800px}}@media (min-width:2560px){.pg-portland-or-mac-repair .hero{padding:0 100px}.pg-portland-or-mac-repair .hero-inner{max-width:1800px}.pg-portland-or-mac-repair .hero h1{font-size:clamp(68px,3.6vw,86px)}.pg-portland-or-mac-repair .hero-subtitle{font-size:clamp(18px,1.05vw,22px)}.pg-portland-or-mac-repair .services-section,.pg-portland-or-mac-repair .models-section,.pg-portland-or-mac-repair .why-section,.pg-portland-or-mac-repair .faq-section{padding:160px 100px}.pg-portland-or-mac-repair .services-inner,.pg-portland-or-mac-repair .models-inner,.pg-portland-or-mac-repair .why-inner,.pg-portland-or-mac-repair .faq-inner{max-width:1800px}}@media (min-width:641px) and (max-width:968px){.pg-portland-or-mac-repair .models-grid>.model-card:last-child:nth-child(odd){grid-column:1/-1}}.pg-portland-or-mac-repair .faq-section.faq-section{background:var(--fx-bg-f9f9f9)}.pg-portland-or-mac-repair .faq-cta-center.faq-cta-center{background:var(--fx-bg-ffffff);border:1px solid var(--border);justify-content:space-between;max-width:760px;margin-left:auto;margin-right:auto}.pg-portland-or-mac-repair .faq-cta-text.faq-cta-text{text-align:left}@media (max-width:640px){.pg-portland-or-mac-repair .faq-cta-text.faq-cta-text{text-align:center}}@media (min-width:1921px){.pg-portland-or-mac-repair .faq-q.faq-q{padding:24px 0;font-size:18px}.pg-portland-or-mac-repair .faq-a.faq-a{font-size:16px}.pg-portland-or-mac-repair .faq-header h2{font-size:48px}.pg-portland-or-mac-repair .faq-cta-text h3{font-size:22px}}@media (max-width:640px){.pg-portland-or-mac-repair .faq-cta-box{text-align:center;align-items:stretch}.pg-portland-or-mac-repair .faq-cta-box .btn-primary{justify-content:center;gap:10px;width:100%}}
