.deliverable-section{padding:90px 0}.deliverable-intro{max-width:720px;margin:22px 0 32px;line-height:1.8}.deliverable-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.deliverable-grid article{padding:28px;border:1px solid #cfc6b9}.deliverable-grid span{font-size:11px;letter-spacing:.12em;color:#7c6046}.deliverable-grid h3{font-size:22px;margin:18px 0}.deliverable-grid p,.deliverable-foot{font-size:14px;line-height:1.8}.deliverable-foot{margin-top:26px;max-width:760px}#services .engagement-note{font-size:12px;line-height:1.65}#services .tag{height:auto;white-space:normal}#services .svc-head .lead{max-width:760px}@media(max-width:760px){.deliverable-grid{grid-template-columns:1fr}.deliverable-section{padding:60px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

/* Match the established indigo and violet palette. */
#frikman-refined-site #deliverables{background:var(--bg);color:var(--ink);position:relative;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
#deliverables::before{content:"";position:absolute;width:460px;height:460px;right:-250px;top:-240px;border:1px solid var(--line);border-radius:50%;box-shadow:0 0 0 70px rgba(100,85,170,.025),0 0 0 140px rgba(100,85,170,.025);pointer-events:none}
#deliverables .container{position:relative}
#frikman-refined-site #deliverables .eyebrow{color:var(--accent)}
#deliverables h2{max-width:720px;font-size:clamp(32px,4.5vw,58px);letter-spacing:-.045em;line-height:1.1}
#deliverables .deliverable-intro,#deliverables .deliverable-foot{color:var(--muted)}
#deliverables .deliverable-grid{gap:20px;position:relative}
#deliverables .deliverable-grid article{background:var(--surface);border:1px solid var(--line);padding:32px;position:relative;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
#deliverables .deliverable-grid article::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--indigo),var(--violet));transform:scaleX(.18);transform-origin:left;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
#deliverables .deliverable-grid article:hover{transform:translateY(-7px);box-shadow:0 18px 40px rgba(20,15,74,.09);border-color:var(--accent)}
#deliverables .deliverable-grid article:hover::before{transform:scaleX(1)}
#deliverables .deliverable-grid span{color:var(--accent);font-weight:600;display:inline-block}
#deliverables .deliverable-grid h3{color:var(--ink);letter-spacing:-.025em}
#deliverables .deliverable-grid p{color:var(--muted)}
#deliverables .deliverable-foot{border-left:2px solid var(--accent);padding-left:18px}
@media(prefers-reduced-motion:reduce){#deliverables .deliverable-grid article,#deliverables .deliverable-grid article::before{transition:none}#deliverables .deliverable-grid article:hover{transform:none}}

#deliverables .container{width:min(1200px,calc(100% - 56px));margin-inline:auto}#deliverables{scroll-margin-top:90px}
/* Refined card interactions, without the decorative circle. */
#deliverables::before{content:none}
#deliverables .deliverable-grid article::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(100,85,170,.07) 48%,transparent 75%);transform:translateX(-140%);pointer-events:none;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
#deliverables .deliverable-grid article:hover::after{transform:translateX(140%)}
#deliverables .deliverable-grid span{transition:letter-spacing .4s ease,color .4s ease}
#deliverables .deliverable-grid article:hover span{letter-spacing:.18em;color:var(--indigo)}
#deliverables .deliverable-grid h3{transition:color .3s ease,transform .4s ease}
#deliverables .deliverable-grid article:hover h3{color:var(--violet);transform:translateX(4px)}
#deliverables .deliverable-grid article{border-bottom:3px solid var(--line)}
#deliverables .deliverable-grid article:hover{border-bottom-color:var(--violet)}
@media(prefers-reduced-motion:reduce){#deliverables .deliverable-grid article::after{display:none}#deliverables .deliverable-grid span,#deliverables .deliverable-grid h3{transition:none}#deliverables .deliverable-grid article:hover h3{transform:none}}

/* Native expandable offer details: keyboard and mobile friendly. */
#services .offer-details{margin:22px 0 10px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;border-color:var(--line);text-align:left}
#services .offer-details summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 0;cursor:pointer;font-size:13px;font-weight:600;line-height:1.5}
#services .offer-details summary::-webkit-details-marker{display:none}
#services .offer-toggle{font-size:23px;font-weight:400;line-height:1;transition:transform .25s ease}
#services .offer-details[open] .offer-toggle{transform:rotate(45deg)}
#services .offer-detail-body{padding:6px 0 20px}
#services .offer-detail-body h4{font-size:19px;line-height:1.35;margin:0 0 20px;letter-spacing:-.025em}
#services .offer-detail-item+ .offer-detail-item{margin-top:20px}
#services .offer-detail-item h5{font-size:13px;line-height:1.5;font-weight:600;margin:0 0 6px;color:inherit}
#services .offer-detail-item p{font-size:12px;line-height:1.8;margin:0;color:inherit;opacity:.85}
#services .best .offer-details{border-color:rgba(255,255,255,.3)}
#services .offer-details[open] .offer-detail-body{animation:offer-open .3s ease both}
#services .svc-grid{align-items:start}
#services .offer-details summary:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@keyframes offer-open{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#services .offer-details[open] .offer-detail-body{animation:none}#services .offer-toggle{transition:none}}

/* Height animation is driven by the native details control. */
#services .offer-details[open] .offer-detail-body{animation:none}
#services .offer-details.is-animating{overflow:hidden;will-change:height}
#services .offer-details.is-opening .offer-detail-body{animation:offer-content-in .42s ease both}
@keyframes offer-content-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){#services .offer-details.is-opening .offer-detail-body{animation:none}}

#services .advisory-fields{margin-top:32px;padding-top:24px;border-top:1px solid var(--line);max-width:960px}#services .advisory-fields-label{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 12px}#services .advisory-fields>p:not(.advisory-fields-label){font-size:13px;line-height:2;color:var(--muted);margin:0}#services .advisory-fields span{padding:0 8px;color:var(--accent)}#services .advisory-fields small{display:block;font-size:11px;line-height:1.7;color:var(--muted);margin-top:12px}

#services .advisory-fields-designed{max-width:none;margin-top:48px;padding-top:36px}
#services .fields-heading{margin-bottom:24px}
#services .fields-heading h3{font-size:clamp(23px,3vw,32px);line-height:1.25;letter-spacing:-.035em;margin:0;color:var(--ink)}
#services .fields-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#services .field-card{display:flex;gap:14px;align-items:flex-start;padding:22px 18px;background:var(--surface);border:1px solid var(--line);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
#services .field-card svg{width:25px;height:25px;flex-shrink:0;color:var(--accent);transition:transform .3s ease}
#services .field-card h4{font-size:13px;line-height:1.45;margin:0 0 5px;font-weight:600;color:var(--ink)}
#services .field-card p{font-size:11px;line-height:1.65;margin:0;color:var(--muted)}
#services .field-card:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 8px 22px rgba(20,15,74,.05)}
#services .field-card:hover svg{transform:translateY(-2px)}
#services .advisory-fields .fields-disclaimer{font-size:11px;line-height:1.7;margin:18px 0 0;max-width:780px;color:var(--muted)}
@media(max-width:1000px){#services .fields-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){#services .field-card{padding:16px 12px;gap:9px}#services .field-card svg{width:20px;height:20px}}
@media(prefers-reduced-motion:reduce){#services .field-card,#services .field-card svg{transition:none}#services .field-card:hover,#services .field-card:hover svg{transform:none}}

#services .fields-invitation{margin:24px 0 0;font-size:13px;line-height:1.8;color:var(--muted);max-width:820px}#services .fields-invitation a{color:var(--ink);text-underline-offset:5px;text-decoration-color:var(--line);transition:color .25s ease}#services .fields-invitation a:hover{color:var(--accent);text-decoration-color:currentColor}

#services .field-expand{display:block;padding:0;align-self:start}
#services .field-expand summary{list-style:none;display:flex;align-items:flex-start;gap:14px;padding:22px 18px;cursor:pointer}
#services .field-expand summary::-webkit-details-marker{display:none}
#services .field-label{display:block;flex:1;min-width:0}
#services .field-label strong{display:block;font-size:13px;line-height:1.45;font-weight:600;color:var(--ink);margin-bottom:5px}
#services .field-label>span{display:block;font-size:11px;line-height:1.65;color:var(--muted)}
#services .field-plus{font-size:18px;color:var(--accent);line-height:1;transition:transform .25s ease}
#services .field-expand[open] .field-plus{transform:rotate(45deg)}
#services .field-expand[open]{border-color:var(--accent);box-shadow:0 8px 22px rgba(20,15,74,.05)}
#services .field-expanded-copy{padding:0 18px 22px}
#services .field-expanded-copy p{border-top:1px solid var(--line);padding-top:16px;font-size:12px;line-height:1.8;color:var(--muted)}
#services .field-expand[open] .field-expanded-copy{animation:offer-content-in .3s ease both}
#services .field-expand summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:420px){#services .field-expand summary{padding:16px 12px;gap:9px}#services .field-expanded-copy{padding:0 12px 16px}}
@media(prefers-reduced-motion:reduce){#services .field-expand[open] .field-expanded-copy{animation:none}#services .field-plus{transition:none}}

/* Consistent closed card size, regardless of label wrapping. */
#services .fields-grid{grid-auto-rows:auto;align-items:start}
#services .field-expand summary{box-sizing:border-box;min-height:116px;align-items:center}
#services .field-expand summary .field-label{padding:0}
@media(max-width:420px){#services .field-expand summary{min-height:126px}}

/* Equal dimensions for every area card in its closed state. */
#services .fields-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}
#services .field-expand{width:100%;min-width:0;box-sizing:border-box}
#services .field-expand summary{height:152px;min-height:152px;box-sizing:border-box}
#services .field-expand .field-label strong{overflow-wrap:normal}
@media(max-width:1000px){#services .fields-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){#services .field-expand summary{height:174px;min-height:174px}}

#services .field-expand.field-animating{overflow:hidden;will-change:height}
#services .field-expand[open] .field-expanded-copy{animation:none}
#services .field-expand.field-opening .field-expanded-copy{animation:offer-content-in .4s ease both}
/* Two equally sized, non-shrinking copies make the loop seamless. */
#marquee .mq-track{display:flex;flex-shrink:0;width:max-content;gap:0;animation:frikman-continuous-ticker 42s linear infinite}
#marquee .mq-group{display:flex!important;flex:0 0 auto;gap:0;margin:0}
#marquee.paused .mq-track{animation-play-state:paused}
@keyframes frikman-continuous-ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){#services .field-expand.field-opening .field-expanded-copy{animation:none}#marquee .mq-track{animation:none}}

#marquee .mq-track{animation-duration:var(--ticker-duration,42s)}#marquee .mq-group{width:max-content;min-width:max-content;justify-content:flex-start;padding:0;box-sizing:content-box}#marquee .mq-group span{flex-shrink:0}

/* Keep the logo artwork transparent over its existing hero panel. */
#heroLogo .hero-brand-art{background:transparent;border:0;box-shadow:none}
