/* Visual campaign portfolio: artifact-led content, original editorial palette. */
.farah-icon {flex-shrink:0;vertical-align:middle;}
.farah-sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.farah-hero {grid-template-columns:1.05fr .95fr;gap:70px;padding-block:35px 48px;align-items:center;}
.farah-hero-title {font-size:clamp(3rem,4.9vw,5.5rem);line-height:1.04;margin-bottom:22px;}
.farah-hero-description {max-width:405px;margin-bottom:26px;font-size:1.05rem;}
.farah-secondary-link {font-size:.95rem;color:var(--fe-ink);}
.farah-hero-platforms {display:flex;gap:24px;padding-top:35px;font-size:.8rem;color:var(--fe-muted);}
.farah-hero-platforms span {display:flex;gap:8px;align-items:center;}
.farah-hero-platforms svg {width:19px;height:19px;color:var(--fe-burgundy);}
.farah-hero-visual {position:relative;padding-top:25px;}
.farah-portrait {border-radius:180px 180px 6px 6px;}
.farah-portrait img {height:clamp(360px,34vw,490px);}
.farah-campaign-orbit {position:absolute;top:-6px;left:0;right:0;height:140px;pointer-events:none;}
.farah-campaign-orbit svg {width:100%;height:100%;overflow:visible;fill:none;stroke:var(--fe-burgundy);stroke-width:1;stroke-dasharray:3 5;}
.farah-campaign-orbit span {position:absolute;display:inline-block;background:var(--fe-ivory);padding:7px 14px;border:1px solid var(--fe-rule);font-size:.75rem;}
.orbit-plan {top:70px;left:-25px;transform:rotate(-8deg);}.orbit-launch {top:0;left:44%;transform:rotate(5deg);}.orbit-optimize {top:70px;right:-25px;transform:rotate(8deg);}
.farah-portrait-note {display:flex;gap:12px;align-items:center;position:absolute;bottom:25px;left:-30px;background:var(--fe-ivory);padding:16px 22px;box-shadow:0 10px 30px #201d1b12;font-size:.8rem;line-height:1.6;}
.farah-portrait-note svg {width:36px;height:36px;color:var(--fe-burgundy);}
.farah-portrait-note strong {font-weight:500;}
.farah-focus-strip {display:flex;justify-content:space-between;gap:20px;align-items:center;border-block:1px solid var(--fe-rule);padding-block:20px;font-size:.85rem;margin-bottom:45px;}
.farah-focus-strip svg {color:var(--fe-burgundy);width:22px;}
.farah-campaigns {border-top:0;padding-top:0;}
.farah-section h2 em {color:var(--fe-burgundy);font-weight:400;}
.farah-campaign-grid {display:grid;grid-template-columns:1fr 1fr;gap:28px;}
.farah-search-scene,.farah-meta-scene {height:410px;position:relative;overflow:hidden;}
.farah-search-scene {background:#dedfd2;padding:55px 35px 30px;display:flex;flex-direction:column;justify-content:center;}
.farah-search-window {background:#fffdf8;border-radius:12px;transform:rotate(-3deg);box-shadow:0 16px 40px #201d1b16;}
.farah-window-top {display:flex;align-items:center;gap:5px;padding:14px 18px;border-bottom:1px solid #e5ded5;}
.farah-window-top > span {width:5px;height:5px;background:#cbb9ae;border-radius:50%;}
.farah-window-top small {font-size:.63rem;margin-left:auto;color:#655e56;}
.farah-search-query {display:flex;align-items:center;gap:12px;border:1px solid #cbb9ae;border-radius:30px;margin:18px 20px 0;padding:10px 14px;font-size:.75rem;}
.farah-search-query svg {width:16px;height:16px;}
.farah-search-ad {padding:20px 24px 27px;}
.farah-search-ad small {font-size:.65rem;color:#655e56;}
.farah-search-ad .farah-ad-title {font-family:var(--fe-display);font-size:1.9rem;line-height:1.1;margin:10px 0;color:var(--fe-burgundy);}
.farah-search-ad p:not(.farah-ad-title) {font-size:.7rem;line-height:1.5;margin-bottom:12px;max-width:300px;}
.farah-ad-links {display:flex;gap:20px;font-size:.63rem;color:var(--fe-burgundy);}
.farah-intent-route {display:flex;justify-content:center;gap:13px;align-items:center;margin-top:27px;font-size:.67rem;color:#37392f;}
.farah-intent-route svg {width:18px;height:18px;}
.farah-meta-scene {background:var(--fe-burgundy);display:grid;grid-template-columns:.9fr 1.1fr;color:var(--fe-ivory);align-items:stretch;}
.farah-creative-copy {padding:40px 0 50px 30px;z-index:1;display:flex;flex-direction:column;justify-content:space-between;}
.farah-creative-copy > span:first-child {font-size:.65rem;}
.farah-creative-copy p {font-family:var(--fe-display);font-size:clamp(2.4rem,3vw,3.7rem);line-height:1.05;margin:0 -50px 25px 0;}
.farah-creative-copy em {font-weight:400;}
.farah-creative-copy .farah-creative-cta {font-size:.6rem;text-transform:uppercase;letter-spacing:.07em;}
.farah-creative-image {margin:0;height:100%;}
.farah-creative-image img {width:100%;height:100%;display:block;object-fit:cover;}
.farah-creative-tag {position:absolute;bottom:14px;right:16px;font-size:.6rem;display:flex;gap:6px;align-items:center;background:#f6f1e9;color:#6d2438;padding:8px 12px;}
.farah-creative-tag svg {width:16px;height:16px;}
.farah-campaign-caption {display:flex;justify-content:space-between;align-items:center;padding-top:20px;gap:15px;}
.farah-campaign-caption h3 {font-size:2rem;margin-bottom:5px;}
.farah-campaign-caption p {font-size:.8rem;color:var(--fe-muted);margin:0;}
.farah-circle-link {width:44px;height:44px;border:1px solid var(--fe-rule);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.farah-circle-link:hover {background:var(--fe-burgundy);color:var(--fe-ivory);}
.farah-example-note {font-size:.65rem;color:var(--fe-muted);margin:14px 0 0;}
.farah-workflow {padding-block:45px 65px;}
.farah-stage-controls {display:flex;border-block:1px solid var(--fe-rule);margin:30px 0 0;}
.farah-stage-controls button {flex:1;text-align:left;display:flex;justify-content:space-between;gap:10px;align-items:center;padding:20px 15px;background:transparent;border:0;font:400 1.1rem var(--fe-body);color:var(--fe-muted);cursor:pointer;}
.farah-stage-controls button[aria-selected=true] {background:var(--fe-burgundy);color:var(--fe-ivory);}
.farah-stage-controls button:hover:not([aria-selected=true]) {background:#e9dfd3;color:var(--fe-ink);}
.farah-stage-controls svg {width:20px;}
.farah-stage-panel {display:grid;grid-template-columns:.95fr 1.05fr;gap:50px;padding-top:35px;}
.farah-stage-panel[hidden] {display:none;}
.farah-stage-copy h3 {font-size:2.1rem;margin-bottom:15px;}
.farah-stage-copy > p {font-size:.95rem;max-width:430px;margin-bottom:22px;color:var(--fe-muted);}
.farah-stage-copy ul {list-style:none;padding:0;margin:0;font-size:.85rem;}
.farah-stage-copy li {display:flex;gap:10px;align-items:center;margin:9px 0;}
.farah-stage-copy li svg {width:18px;height:18px;color:var(--fe-burgundy);}
.farah-stage-diagram {background:#e9dfd3;display:flex;flex-direction:column;justify-content:space-between;padding:25px 25px 20px;min-height:270px;}
.farah-diagram-label {font-size:.7rem;color:var(--fe-muted);}
.farah-diagram-nodes {display:flex;align-items:center;justify-content:center;}
.farah-diagram-node {display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center;font-size:.7rem;max-width:110px;}
.farah-diagram-node svg {width:54px;height:54px;stroke-width:1;color:var(--fe-burgundy);}
.farah-diagram-connector {height:1px;flex:1;background:#a28275;max-width:50px;margin:0 10px 33px;position:relative;}
.farah-diagram-connector::after {content:'';width:6px;height:6px;border-top:1px solid #a28275;border-right:1px solid #a28275;transform:rotate(45deg);position:absolute;right:0;top:-3px;}
.farah-stage-diagram > p {font-size:.65rem;color:var(--fe-muted);margin:0;}
.js .farah-stage-panel:not([hidden]) .farah-diagram-connector {animation:route-draw .55s cubic-bezier(.16,1,.3,1) both;transform-origin:left;}
@keyframes route-draw {from {transform:scaleX(0)}to {transform:scaleX(1)}}
.farah-profile {display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:55px 65px;}
.farah-profile-intro > p {font-size:1rem;max-width:450px;color:var(--fe-muted);}
.farah-profile-intro > a {font-size:.9rem;}
.farah-career-company {font-size:.9rem;color:var(--fe-burgundy);font-weight:500;margin-bottom:28px;}
.farah-career-role {display:flex;gap:22px;padding-bottom:30px;position:relative;}
.farah-career-role:first-of-type::before {content:'';position:absolute;left:5px;top:15px;bottom:0;width:1px;background:var(--fe-rule);}
.farah-career-point {width:11px;height:11px;border:1px solid var(--fe-burgundy);border-radius:50%;flex-shrink:0;margin-top:8px;background:var(--fe-ivory);position:relative;}
.farah-career-role:first-of-type .farah-career-point {background:var(--fe-burgundy);}
.farah-career-role h3 {font-size:1.65rem;margin-bottom:10px;}
.farah-career-role p,.farah-career-role span:not(.farah-career-point) {font-size:.8rem;color:var(--fe-muted);margin:0;}
.farah-action-contact {display:grid;grid-template-columns:1.1fr .9fr;gap:60px;padding-block:55px 65px;}
.farah-action-contact h2 {font-size:clamp(2.5rem,4.4vw,4.7rem);line-height:1.04;}
.farah-action-contact > div > p {font-size:.95rem;max-width:350px;}
.farah-contact-email {font-size:1rem;}
.farah-contact-phone {margin-top:12px;}
.farah-contact-phone a {color:var(--fe-muted);font-size:.85rem;}
.farah-brief {padding:28px;background:#e9dfd3;}
.farah-brief h3 {font-size:1.8rem;margin-bottom:20px;}
.farah-brief fieldset {border:0;padding:0;margin:0 0 20px;display:flex;flex-wrap:wrap;gap:8px;}
.farah-brief fieldset label {cursor:pointer;}
.farah-brief fieldset label span {display:inline-block;font-size:.75rem;padding:9px 12px;border:1px solid #a28275;border-radius:3px;}
.farah-brief input[type=radio] {position:absolute;opacity:0;width:1px;height:1px;}
.farah-brief input:checked + span {background:var(--fe-burgundy);color:var(--fe-ivory);border-color:var(--fe-burgundy);}
.farah-brief input:focus-visible + span {outline:2px solid var(--fe-burgundy);outline-offset:3px;}
.farah-brief-label {display:block;font-size:.75rem;margin-bottom:8px;}
.farah-brief textarea {display:block;width:100%;resize:vertical;min-height:90px;background:var(--fe-ivory);color:var(--fe-ink);border:1px solid #a28275;border-radius:0;padding:12px;font:400 .85rem/1.5 var(--fe-body);margin-bottom:18px;caret-color:var(--fe-burgundy);}
.farah-brief textarea::placeholder {color:#655e56;opacity:1;}
.farah-brief textarea:focus-visible {outline:2px solid var(--fe-burgundy);outline-offset:3px;}
.farah-brief .farah-brief-note {font-size:.65rem;color:var(--fe-muted);margin:12px 0 0;}
@media(max-width:1000px) {
 .farah-hero {gap:45px;}.farah-hero-title {font-size:clamp(2.8rem,4.9vw,4.7rem);}
 .farah-search-scene,.farah-meta-scene {height:370px;}.farah-search-scene {padding:40px 22px 24px;}
 .farah-search-ad .farah-ad-title {font-size:1.65rem;}.farah-creative-copy {padding-left:22px;}
 .farah-profile {gap:45px;}.farah-action-contact {gap:35px;}
}
@media(max-width:700px) {
 .farah-hero {padding-block:20px 32px;gap:40px;}.farah-hero-title {font-size:clamp(2.8rem,11.5vw,4.6rem);}
 .farah-hero-description {font-size:1rem;}.farah-hero-platforms {padding-top:24px;}
 .farah-hero-visual {width:100%;padding-inline:16px;padding-top:25px;}.farah-portrait img {height:360px;}
 .farah-campaign-orbit {left:16px;right:16px;}.orbit-plan {left:-10px;}.orbit-optimize {right:-10px;}
 .farah-portrait-note {left:0;bottom:18px;padding:12px 16px;font-size:.75rem;}
 .farah-focus-strip {gap:10px;font-size:.62rem;padding-block:17px;margin-bottom:32px;}.farah-focus-strip svg {width:16px;}
 .farah-campaign-grid {grid-template-columns:1fr;gap:30px;}.farah-search-scene,.farah-meta-scene {height:360px;}
 .farah-search-scene {padding:28px 22px 20px;}.farah-search-ad .farah-ad-title {font-size:1.8rem;}
 .farah-creative-copy p {font-size:2.8rem;}.farah-campaign-caption h3 {font-size:1.8rem;}
 .farah-workflow {padding-block:32px 42px;}.farah-stage-controls {margin-top:25px;}
 .farah-stage-controls button {padding:16px 8px;justify-content:center;font-size:.85rem;}.farah-stage-controls svg {display:none;}
 .farah-stage-panel {grid-template-columns:1fr;gap:22px;padding-top:28px;}.farah-stage-copy h3 {font-size:1.9rem;}
 .farah-stage-diagram {min-height:240px;padding:20px;}.farah-diagram-node {font-size:.65rem;}.farah-diagram-node svg {width:46px;height:46px;}.farah-diagram-connector {margin-inline:7px;}
 .farah-profile {grid-template-columns:1fr;gap:32px;padding-block:35px 40px;}
 .farah-action-contact {grid-template-columns:1fr;gap:28px;padding-block:35px 45px;}.farah-action-contact h2 {font-size:2.75rem;}
 .farah-brief {padding:22px;}.farah-brief h3 {font-size:1.65rem;}
}
@media(prefers-reduced-motion:reduce) {.js .farah-stage-panel:not([hidden]) .farah-diagram-connector {animation:none;}}
@media(max-width:700px) {
 .farah-search-scene {height:auto;min-height:390px;padding-bottom:28px;}
 .farah-search-window {flex-shrink:0;}
 .farah-intent-route {flex-shrink:0;margin-top:25px;}
}
