@import url('https://fonts.googleapis.com/css2?family=Vesper+Libre:wght@400;700;900&family=Inter:wght@300;400;500;600;700;800&display=swap');
    :root {
    --paper:#F1E9D8;
    --paper-deep:#E8DDC4;
    --paper-soft:#F6F0E2;
    --ink:#1A140E;
    --ink-soft:#3A3127;
    --mute:#8A7E6A;
    --rule:#CFC1A4;
    --red:#C8202A;
    --red-deep:#9A1520;
    --amber:#D4921A;
    --amber-light:#E8A830;
    --amber-pale:#F6EDD6;
    --serif:'Vesper Libre','Times New Roman',serif;
    --sans:'Inter',system-ui,sans-serif;
    --ease:cubic-bezier(.16,1,.3,1);
    --glass-bg:rgba(255,255,255,0.12);
    --glass-border:rgba(255,255,255,0.22);
    --glass-shadow:0 8px 32px rgba(26,20,14,0.12);
}

*,*::before,*::after {
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html {
    scroll-behavior:smooth;
}

body {
    font-family:var(--sans);
    background:var(--paper);
    color:var(--ink-soft);
    overflow-x:hidden !important;
    -webkit-font-smoothing:antialiased;
    font-size:clamp(15px,1.2vw,18px);
    line-height:1.7;
}

::-webkit-scrollbar {
    display:none;
}

html {
    -ms-overflow-style:none;
    scrollbar-width:none;
}

h1,h2,h3,h4 {
    font-family:var(--serif);
    font-weight:900;
    line-height:1.1;
    color:var(--ink);
}

h1 {
    font-size:clamp(34px,5.5vw,68px);
}

h2 {
    font-size:clamp(28px,4.5vw,52px);
}

h3 {
    font-size:clamp(22px,3.5vw,36px);
}

h4 {
    font-size:clamp(18px,2.8vw,26px);
}

.section-label {
    font-family:var(--sans);
    font-size:clamp(16px,1.5vw,22px);
    font-weight:700;
    letter-spacing:3.5px;
    text-transform:uppercase;
    color:var(--mute);
    margin-bottom:14px;
}

.section-title {
    font-family:var(--serif);
    font-weight:900;
    color:var(--ink-soft);
    line-height:1.12;
    font-size:clamp(34px,5.5vw,68px);
}

.section-title .highlight {
    color:var(--red);
}

.section-subtitle {
    font-family:var(--serif);
    color:var(--amber);
    font-weight:700;
    line-height:1.2;
}

.section-desc {
    font-size:clamp(0.9rem,1.2vw,1.1rem);
    line-height:1.7;
    color:var(--ink-soft);
}

.section-divider {
    width:60px;
    height:3px;
    background:var(--red);
    border-radius:3px;
    margin:0 auto;
}

.hero {
    padding:200px 0 140px;
    background:var(--paper-soft);
    position:relative;
    overflow:hidden;
}

.hero-service-v2 {
    position:relative;
    padding:160px 0 100px;
    background:var(--paper-soft);
    overflow:hidden;
}

.hero-main-layout {
    display:grid;
    grid-template-columns:1.2fr 1fr;
    gap:60px;
    align-items:center;
}

.hero-text-block {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}

.mission-pill {
    display:inline-flex;
    align-items:center;
    gap:12px;
    padding:8px 20px;
    background:rgba(212,146,26,0.08);
    border:1px solid rgba(212,146,26,0.2);
    border-radius:100px;
    margin-bottom:24px;
}

.pill-icon {
    color:var(--amber);
    font-weight:800;
}

.pill-text {
    font-size:11px;
    font-weight:800;
    letter-spacing:2px;
    color:var(--amber);
    text-transform:uppercase;
}

.hero-title {
    font-family:var(--serif);
    font-size:clamp(34px,5.5vw,68px);
    font-weight:900;
    line-height:1.05;
    color:var(--ink);
    margin-bottom:24px;
    text-transform:uppercase;
    letter-spacing:-1px;
}

.hero-title .text-red {
    color:var(--red);
}

.text-red {
    color:var(--red);
}

.hero-desc {
    font-size:17px;
    line-height:1.65;
    color:var(--ink-soft);
    font-family:var(--sans);
    margin-bottom:32px;
    max-width:540px;
}

.hero-actions {
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:nowrap;
    width:100%;
}

.cta-bold-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    background:var(--amber);
    color:#fff;
    padding:10px 22px;
    height:44px;
    font-weight:700;
    font-size:14px;
    border-radius:100px;
    gap:6px;
    transition:all 0.3s var(--ease);
    box-shadow:0 6px 20px rgba(212,146,26,0.15);
    box-sizing:border-box;
    white-space:nowrap;
}

.cta-bold-btn:hover {
    background:var(--ink);
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(0,0,0,0.15);
}

.cta-outline-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    background:transparent;
    color:var(--ink);
    padding:10px 22px;
    height:44px;
    font-weight:700;
    font-size:14px;
    border-radius:100px;
    border:1.5px solid var(--ink);
    transition:all 0.3s var(--ease);
    box-sizing:border-box;
    white-space:nowrap;
}

.cta-outline-btn:hover {
    background:var(--ink);
    color:#fff;
    transform:translateY(-2px);
}

@media (max-width:991px) {
  .hero-actions {
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    width:100% !important;
}

.cta-bold-btn,.cta-outline-btn {
    flex:1 1 0% !important;
    min-width:0 !important;
    padding:0 10px !important;
    height:44px !important;
    font-size:13px !important;
    font-weight:700 !important;
    text-align:center !important;
    justify-content:center !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
}

}

@media (max-width:480px) {
  .hero-actions {
    gap:8px !important;
}

.cta-bold-btn,.cta-outline-btn {
    padding:0 6px !important;
    height:42px !important;
    font-size:12px !important;
}

}

.visual-image-card {
    position:relative;
    width:100%;
    max-width:640px;
    aspect-ratio:1.4 / 1;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 40px 100px rgba(0,0,0,0.12);
}

.visual-image-card img {
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.8s var(--ease);
}

.visual-image-card:hover img {
    transform:scale(1.05);
}

.card-accent-border {
    position:absolute;
    top:20px;
    right:20px;
    bottom:20px;
    left:20px;
    border:1px solid rgba(255,255,255,0.2);
    border-radius:16px;
    pointer-events:none;
}

@media (max-width:1200px) and (min-width:992px) {
  .hero-main-layout {
    grid-template-columns:1fr 1fr;
    gap:30px;
    align-items:center;
}

.hero-service-v2 {
    padding:140px 0 80px;
}

.hero-title {
    font-size:clamp(30px,3.8vw,44px);
}

.hero-desc {
    font-size:15px;
    margin-bottom:28px;
}

.hero-actions {
    gap:10px;
}

.cta-bold-btn,.cta-outline-btn {
    padding:12px 24px;
    font-size:13px;
}

.visual-image-card {
    max-width:100%;
    aspect-ratio:1.3 / 1;
}

.mission-pill {
    margin-bottom:20px;
    padding:6px 16px;
}

.pill-text {
    font-size:10px;
}

}

@media (max-width:991px) {
  .hero-main-layout {
    grid-template-columns:1fr;
    gap:50px;
    text-align:left;
}

.hero-service-v2 {
    padding:120px 0 60px;
}

.visual-image-card {
    max-width:100%;
}

}

.hero-desc span {
    color:var(--red);
    font-weight:700;
}

.hero-image-wrapper {
    position:relative;
    display:flex;
    justify-content:flex-end;
    align-items:center;
    width:100%;
}

.hero-image-card {
    position:relative;
    z-index:5;
    width:100%;
    max-width:850px;
    height:clamp(300px,40vh,550px);
    transition:all 0.6s var(--ease);
}

.hero-image-card::before {
    content:'';
    position:absolute;
    top:-15px;
    right:-15px;
    width:clamp(60px,10vw,120px);
    height:clamp(60px,10vw,120px);
    border-top:2px solid var(--red);
    border-right:2px solid var(--red);
    z-index:-1;
    opacity:0.6;
    transition:all 0.4s var(--ease);
}

.hero-image-card::after {
    content:'';
    position:absolute;
    bottom:-15px;
    left:-15px;
    width:clamp(60px,10vw,120px);
    height:clamp(60px,10vw,120px);
    border-bottom:2px solid var(--amber);
    border-left:2px solid var(--amber);
    z-index:-1;
    opacity:0.6;
    transition:all 0.4s var(--ease);
}

.hero-image-card:hover {
    transform:scale(1.02);
}

.hero-image-card img {
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:4px;
    box-shadow:0 20px 80px rgba(0,0,0,0.08);
}

.hero-image-wrapper::before,.hero-image-wrapper::after {
    display:none;
}

@keyframes blobFloat {
    0% {
    transform:translate(0,0) scale(1);
}

33% {
    transform:translate(30px,-50px) scale(1.1);
}

66% {
    transform:translate(-20px,20px) scale(0.9);
}

100% {
    transform:translate(0,0) scale(1);
}

}

.two-tracks {
    padding:110px 0;
    text-align:center;
    position:relative;
    overflow:hidden;
    background:radial-gradient(ellipse at 20% 50%,rgba(200,32,42,0.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 50%,rgba(212,146,26,0.06) 0%,transparent 50%),var(--paper-deep);
}

.two-tracks .section-title {
    font-size:clamp(1.8rem,4vw,2.8rem);
    margin-bottom:6px;
}

.two-tracks .section-subtitle {
    font-size:clamp(1.5rem,3.5vw,2.2rem);
    margin-bottom:16px;
}

.two-tracks .section-desc {
    max-width:620px;
    margin:0 auto 55px;
}

.track-card {
    position:relative;
    border-radius:20px;
    padding:35px 30px;
    text-align:left;
    height:100%;
    display:flex;
    flex-direction:column;
    transition:all 0.6s cubic-bezier(0.16,1,0.3,1);
    background:rgba(255,255,255,0.15);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    border-top:1px solid rgba(255,255,255,0.7);
    border-left:1px solid rgba(255,255,255,0.7);
    border-bottom:1px solid rgba(255,255,255,0.15);
    border-right:1px solid rgba(255,255,255,0.15);
    box-shadow:0 8px 32px rgba(0,0,0,0.05),inset 0 0 20px rgba(255,255,255,0.4);
}

.track-card-header {
    display:flex;
    align-items:center;
    gap:18px;
    margin-bottom:24px;
}

.track-card-icon {
    width:64px;
    height:64px;
    background:#ffffff;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    padding:12px;
    box-shadow:0 4px 12px rgba(0,0,0,0.04);
}

.track-header-text {
    display:flex;
    flex-direction:column;
    gap:4px;
}

.track-cat {
    font-size:0.9rem;
    font-weight:800;
    font-family:var(--serif);
    color:var(--amber);
    letter-spacing:1.5px;
}

.track-target {
    font-size:0.95rem;
    font-weight:900;
    color:var(--ink);
    letter-spacing:0.2px;
}

.track-card .card-desc {
    font-size:0.95rem;
    line-height:1.7;
    color:var(--ink-soft);
    margin-bottom:30px;
    font-weight:500;
}

.sub-card-stack {
    display:flex;
    flex-direction:column;
    gap:12px;
}

.sub-card {
    background:rgba(255,255,255,0.25);
    backdrop-filter:blur(8px);
    border-top:1px solid rgba(255,255,255,0.7);
    border-left:1px solid rgba(255,255,255,0.7);
    border-bottom:1px solid rgba(255,255,255,0.2);
    border-right:1px solid rgba(255,255,255,0.2);
    border-radius:12px;
    padding:14px 18px;
    display:flex;
    align-items:center;
    gap:16px;
    transition:all 0.3s var(--ease);
}

.sub-card:hover {
    transform:translateY(-3px);
    background:rgba(255,255,255,0.4);
    box-shadow:0 8px 24px rgba(0,0,0,0.05);
}

.sub-card-icon {
    flex-shrink:0;
    width:38px;
    height:38px;
    background:#ffffff;
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:6px;
    box-shadow:0 2px 8px rgba(0,0,0,0.04);
}

.sub-card-content strong {
    display:block;
    font-size:0.82rem;
    font-weight:900;
    color:var(--ink);
    margin-bottom:2px;
    letter-spacing:0.5px;
}

.sub-card-content p {
    font-size:0.7rem;
    color:var(--mute);
    line-height:1.4;
    margin:0;
}

.launch-soon-badge {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    padding:14px 28px;
    margin:30px auto 0;
    width:fit-content;
    background:rgba(255,255,255,0.25);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    border-radius:15px;
    border:1px solid rgba(255,255,255,0.5);
    box-shadow:0 5px 15px rgba(0,0,0,0.03);
}

.ls-text {
    font-size:0.95rem;
    font-weight:700;
    color:var(--mute);
    letter-spacing:1.5px;
}

.track-card:hover {
    transform:translateY(-10px);
    box-shadow:0 30px 70px rgba(26,20,14,0.12);
    border-color:rgba(255,255,255,0.7);
}

.engagement {
    padding:120px 0;
    background:var(--paper-soft);
    overflow:hidden;
}

.engagement .section-label {
    color:var(--red);
    font-weight:700;
    letter-spacing:2.5px;
    font-size:1.1rem;
    margin-bottom:20px;
    text-align:center;
    display:block;
    text-transform:uppercase;
}

.engagement .section-title {
    font-family:var(--serif);
    font-size:clamp(1.8rem,4vw,3rem);
    text-align:center;
    margin-bottom:50px;
    line-height:1.15;
    font-weight:900;
    text-transform:uppercase;
    color:var(--ink);
}

.toggle-wrap {
    display:flex;
    justify-content:center;
    gap:16px;
    margin-bottom:60px;
}

.toggle-btn {
    padding:14px 32px;
    border-radius:50px;
    font-weight:700;
    font-size:0.9rem;
    cursor:pointer;
    transition:all 0.4s var(--ease);
    border:2px solid transparent;
    font-family:var(--sans);
    background:var(--paper-deep);
    color:var(--ink);
    letter-spacing:0.3px;
}

.toggle-btn.active {
    background:var(--red);
    color:#fff;
    border-color:var(--red);
    box-shadow:0 8px 24px rgba(200,32,42,0.25);
}

.toggle-btn:not(.active):hover {
    border-color:var(--rule);
    background:#fff;
}

.toggle-btn svg {
    display:none;
}

.timeline-track {
    position:relative;
    width:100%;
    max-width:1200px;
    margin:0 auto;
    padding:0;
}

.timeline-labels {
    display:none;
}

.timeline-line-wrap {
    position:relative;
    height:50px;
    display:flex;
    align-items:center;
    width:100%;
    margin-bottom:0;
}

.timeline-line {
    position:absolute;
    top:50%;
    left:0;
    width:100%;
    height:3px;
    background:var(--amber);
    transform:translateY(-50%);
    border-radius:2px;
    z-index:1;
}

.timeline-dots {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    width:100%;
    position:relative;
    z-index:2;
}

.timeline-node {
    display:flex;
    flex-direction:column;
    align-items:center;
}

.timeline-dot {
    width:22px;
    height:22px;
    background:var(--amber);
    border:3px solid var(--paper-soft);
    border-radius:50%;
    position:relative;
    z-index:3;
    box-shadow:0 0 0 3px var(--amber);
    transition:transform 0.4s cubic-bezier(.16,1,.3,1),box-shadow 0.4s;
}

.timeline-dot::after {
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    width:6px;
    height:6px;
    background:var(--paper-soft);
    border-radius:50%;
    transform:translate(-50%,-50%);
}

.timeline-connector {
    width:3px;
    height:40px;
    background:var(--amber);
    flex-shrink:0;
}

.phase-cards {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px;
    max-width:1200px;
    margin:0 auto;
    align-items:stretch;
}

.phase-card {
    background:rgba(255,255,255,0.35);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-radius:20px;
    padding:35px 25px;
    display:flex;
    flex-direction:column;
    border-top:1px solid rgba(255,255,255,0.8);
    border-left:1px solid rgba(255,255,255,0.8);
    border-bottom:1px solid rgba(255,255,255,0.2);
    border-right:1px solid rgba(255,255,255,0.2);
    box-shadow:0 10px 40px rgba(0,0,0,0.04),inset 0 0 24px rgba(255,255,255,0.35);
    transition:all 0.4s var(--ease);
    height:100%;
    text-align:left;
}

.phase-header {
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    padding-bottom:32px;
    flex:1;
}

.phase-card:hover {
    transform:translateY(-6px);
    box-shadow:0 20px 50px rgba(0,0,0,0.07),inset 0 0 24px rgba(255,255,255,0.45);
}

.phase-tag {
    color:var(--mute);
    font-weight:800;
    font-size:0.7rem;
    letter-spacing:1px;
    text-transform:uppercase;
    margin-bottom:8px;
    display:block;
    white-space:nowrap;
}

.phase-card h4 {
    font-family:var(--serif);
    font-size:clamp(0.9rem,1.1vw,1.15rem);
    font-weight:900;
    margin-bottom:12px;
    text-transform:uppercase;
    color:var(--ink);
    line-height:1.3;
    white-space:normal;
}

.phase-card p {
    font-size:0.9rem;
    line-height:1.6;
    color:var(--ink-soft);
    margin:0;
    text-align:left;
}

.phase-deliverables {
    padding:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    align-items:stretch;
    margin-top:15px;
    gap:8px;
}

.deliverables-label {
    font-size:10px;
    font-weight:800;
    color:var(--ink);
    margin-bottom:16px;
    letter-spacing:2px;
    text-transform:uppercase;
    display:block;
    text-align:left;
}

.me-label {
    color:var(--red);
}

.bd-label {
    color:var(--amber);
}

.phase-deliverables::before {
    display:none;
}

.deliverable-item {
    background:#fff;
    padding:12px 16px;
    border-radius:12px;
    font-size:0.82rem;
    font-weight:700;
    display:flex;
    align-items:flex-start;
    justify-content:flex-start;
    gap:12px;
    width:100%;
    transition:all 0.3s var(--ease);
    border:1px solid rgba(0,0,0,0.03);
    box-shadow:0 4px 12px rgba(0,0,0,0.04);
    line-height:1.3;
}

.deliverable-item:hover {
    transform:translateX(5px);
    box-shadow:0 6px 15px rgba(0,0,0,0.08);
    border-color:var(--amber);
}

.deliverable-item:last-child {
    margin-bottom:0;
}

.d-icon {
    font-size:0.7rem;
    flex-shrink:0;
    margin-top:2px;
}

.d-icon--red {
    color:var(--red);
}

.d-icon--amber {
    color:var(--amber);
}

.phase-bar {
    display:none;
}

.timeline-panel {
    display:none;
}

.timeline-panel.active {
    display:block;
    animation:timelineFade 0.6s var(--ease) forwards;
}

@keyframes timelineFade {
    from {
    opacity:0;
    transform:translateY(30px);
}

to {
    opacity:1;
    transform:translateY(0);
}

}

.approach {
    padding:130px 0;
    background:var(--paper-deep);
    position:relative;
    overflow:hidden;
}

.approach::before {
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-image:radial-gradient(var(--rule) 1px,transparent 1px);
    background-size:40px 40px;
    opacity:0.15;
    pointer-events:none;
}

.approach .section-label {
    display:block;
    text-align:left;
    margin-bottom:14px;
    color:var(--red);
    font-size:3.1rem;
    font-weight:900;
    font-family:var(--serif);
    letter-spacing:2px;
}

.approach .section-title {
    font-size:clamp(2rem,4vw,3rem);
    margin-bottom:15px;
    font-weight:900;
    text-align:left;
}

.approach .section-subtitle {
    font-family:var(--sans);
    font-size:clamp(1rem,1.4vw,1.15rem);
    font-weight:400;
    font-style:italic;
    margin-bottom:64px;
    max-width:600px;
    margin-left:0;
    color:var(--ink-soft);
    opacity:0.8;
    text-align:left;
}

.approach .row {
    align-items:stretch;
}

.approach-card {
    background:rgba(255,255,255,0.7);
    backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,0.5);
    border-radius:24px;
    padding:50px 40px;
    text-align:left;
    height:100%;
    position:relative;
    transition:all 0.5s cubic-bezier(0.16,1,0.3,1);
    box-shadow:0 10px 30px rgba(0,0,0,0.03);
    display:flex;
    flex-direction:column;
}

.approach-card:hover {
    transform:translateY(-12px);
    background:#fff;
    box-shadow:0 30px 60px rgba(26,20,14,0.1);
    border-color:var(--red);
}

.approach-num {
    font-family:var(--serif);
    font-size:4rem;
    font-weight:900;
    color:transparent;
    -webkit-text-stroke:1px var(--rule);
    line-height:1;
    margin-bottom:25px;
    display:block;
    transition:all 0.5s var(--ease);
    flex-shrink:0;
}

.approach-card:hover .approach-num {
    color:var(--red);
    -webkit-text-stroke:1px var(--red);
    transform:scale(1.1);
}

.approach-card h4 {
    font-family:var(--serif);
    font-size:1.4rem;
    font-weight:900;
    margin-bottom:18px;
    color:var(--ink);
    letter-spacing:-0.5px;
    flex-shrink:0;
}

.approach-card p {
    font-size:1rem;
    line-height:1.8;
    color:var(--ink-soft);
    margin:0;
    opacity:0.9;
    flex:1;
}

.pricing {
    padding:120px 0;
    background:radial-gradient(circle at 100% 0%,rgba(212,146,26,0.04) 0%,transparent 40%),radial-gradient(circle at 0% 100%,rgba(200,32,42,0.04) 0%,transparent 40%),var(--paper-soft);
}

.pricing .section-label {
    text-align:center;
    color:var(--red);
    font-size:clamp(2rem,4vw,3.1rem);
    font-weight:900;
    letter-spacing:4px;
    margin-bottom:30px;
    font-family:var(--serif);
}

.price-card {
    background:#ffffff;
    border:none;
    border-radius:20px;
    padding:28px 28px 24px;
    height:100%;
    text-align:left;
    box-shadow:0 4px 20px rgba(26,20,14,0.04);
    transition:all 0.5s var(--ease);
    display:flex;
    flex-direction:column;
    position:relative;
    overflow:hidden;
    z-index:1;
}

.price-card::before {
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    border-radius:20px 20px 0 0;
    transition:height 0.4s var(--ease);
}

.price-card--gtm::before {
    background:linear-gradient(90deg,var(--amber),#E8A830);
}

.price-card--bd::before {
    background:linear-gradient(90deg,#5D6778,#8A93A5);
}

.price-card:hover {
    transform:translateY(-6px);
    box-shadow:0 16px 48px rgba(26,20,14,0.08);
}

.price-card:hover::before {
    height:6px;
}

.card-pill {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:5px 12px;
    border-radius:6px;
    font-size:0.65rem;
    font-weight:800;
    letter-spacing:1.5px;
    margin-bottom:14px;
    text-transform:uppercase;
    width:fit-content;
}

.pill--gtm {
    background:#FDF6E8;
    color:var(--amber);
}

.pill--bd {
    background:#EDEEF1;
    color:#5D6778;
}

.price-card h4 {
    font-family:var(--serif);
    font-size:clamp(1.35rem,2.2vw,1.6rem);
    font-weight:900;
    line-height:1.2;
    margin-bottom:10px;
    color:var(--ink);
}

.price-card .card-desc {
    font-size:0.88rem;
    line-height:1.6;
    color:var(--ink-soft);
    margin-bottom:20px;
    flex:0 0 auto;
}

.price-main-box {
    margin-bottom:16px;
    margin-top:auto;
}

.price-label {
    font-size:10px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
    color:var(--mute);
    margin-bottom:4px;
}

.price-amount {
    font-family:var(--sans);
    font-size:clamp(2rem,3.5vw,2.5rem);
    font-weight:900;
    color:var(--ink);
    line-height:1;
    display:flex;
    align-items:baseline;
    gap:8px;
}

.price-type {
    font-size:0.85rem;
    font-weight:600;
    color:var(--mute);
}

.price-tags {
    display:flex;
    gap:8px;
    margin-bottom:20px;
    flex-wrap:wrap;
}

.price-tag {
    background:#F8F9FA;
    border:1px solid rgba(0,0,0,0.06);
    border-radius:50px;
    padding:7px 14px;
    font-size:0.72rem;
    font-weight:700;
    color:#5D6778;
    display:flex;
    align-items:center;
    gap:5px;
}

.price-divider {
    height:1px;
    background:rgba(0,0,0,0.06);
    margin:0 0 16px;
    width:100%;
}

.btn-price {
    display:block;
    width:100%;
    padding:14px 20px;
    border-radius:50px;
    font-size:0.9rem;
    font-weight:800;
    text-decoration:none;
    transition:all 0.3s var(--ease);
    text-align:center;
    border:none;
}

.btn-price:hover {
    transform:scale(1.02);
    filter:brightness(1.05);
}

.btn-price--gtm {
    background:var(--amber);
    color:#ffffff;
}

.btn-price--bd {
    background:#6B7280;
    color:#ffffff;
}

.btn-dark-outline {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:11px 26px;
    border:1.5px solid var(--ink);
    background:transparent;
    color:var(--ink);
    font-size:0.82rem;
    font-weight:600;
    border-radius:7px;
    cursor:pointer;
    transition:all 0.3s var(--ease);
    text-decoration:none;
    font-family:var(--sans);
    letter-spacing:0.2px;
}

.btn-dark-outline:hover {
    background:var(--ink);
    color:#fff;
    transform:translateY(-1px);
    box-shadow:0 4px 14px rgba(26,20,14,0.15);
}

.btn-primary {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:14px 40px;
    border:none;
    background:var(--red);
    color:#fff;
    font-size:0.95rem;
    font-weight:800;
    border-radius:100px;
    cursor:pointer;
    transition:all 0.3s var(--ease);
    text-decoration:none;
    font-family:var(--sans);
    letter-spacing:0.2px;
}

.btn-primary:hover {
    background:var(--red-deep);
    border-color:var(--red-deep);
    color:#fff;
    transform:translateY(-1px);
    box-shadow:0 4px 16px rgba(200,32,42,0.3);
}

.custom-interlude {
    padding:130px 0;
    background:var(--paper-deep);
    border-top:1px solid var(--rule);
    border-bottom:1px solid var(--rule);
    position:relative;
    overflow:hidden;
}

.interlude-content {
    position:relative;
    padding-left:60px;
}

.interlude-content .quote-mark {
    position:absolute;
    top:-40px;
    left:-20px;
    font-family:var(--serif);
    font-size:200px;
    color:var(--amber);
    opacity:0.15;
    line-height:1;
    pointer-events:none;
}

.interlude-label {
    color:var(--amber);
    font-size:11px;
    font-weight:800;
    letter-spacing:4px;
    margin-bottom:24px;
}

.interlude-content h3 {
    font-family:var(--serif);
    font-size:clamp(2.2rem,5vw,3.8rem);
    font-weight:900;
    margin-bottom:24px;
    color:var(--ink);
    line-height:1;
    letter-spacing:-1px;
}

.interlude-text {
    font-size:clamp(1.1rem,1.6vw,1.4rem);
    line-height:1.6;
    color:var(--ink-soft);
    margin-bottom:48px;
    max-width:640px;
    font-weight:500;
}

.interlude-attributes {
    padding-left:50px;
    border-left:1px solid var(--rule);
    display:flex;
    flex-direction:column;
    gap:40px;
}

.attr-item {
    display:flex;
    gap:20px;
    align-items:flex-start;
}

.attr-dot {
    width:8px;
    height:8px;
    background:var(--amber);
    border-radius:50%;
    margin-top:8px;
    flex-shrink:0;
}

.attr-item h6 {
    font-size:0.75rem;
    font-weight:900;
    letter-spacing:2px;
    color:var(--ink);
    margin-bottom:6px;
}

.attr-item p {
    font-size:0.88rem;
    color:var(--mute);
    margin:0;
    font-weight:500;
}

@media (max-width:991px) {
  .interlude-content {
    padding-left:0;
    margin-bottom:60px;
}

.interlude-attributes {
    padding-left:0;
    border-left:none;
    border-top:1px solid var(--rule);
    padding-top:60px;
}

.interlude-content .quote-mark {
    left:-30px;
}

}

.faq {
    padding:100px 0;
    background:var(--paper-soft);
}

.faq .section-label {
    text-align:left;
    color:var(--mute);
    margin-bottom:16px;
}

.faq-heading {
    position:sticky;
    top:120px;
}

.faq-heading h2 {
    font-family:var(--serif);
    font-size:clamp(28px,4.5vw,52px);
    font-weight:900;
    line-height:1.1;
    margin-bottom:20px;
    color:var(--ink);
}

.faq-heading h2 .highlight {
    color:var(--red);
}

.faq-heading p {
    font-size:0.95rem;
    color:var(--ink-soft);
    line-height:1.7;
    max-width:340px;
}

.faq-item {
    border-bottom:1px solid rgba(0,0,0,0.06);
    padding:22px 20px;
    cursor:pointer;
    transition:all 0.4s var(--ease);
    border-radius:14px;
    margin-bottom:6px;
}

.faq-item:hover {
    background:rgba(255,255,255,0.5);
    border-color:transparent;
}

.faq-item.open {
    background:#ffffff;
    box-shadow:0 6px 24px rgba(26,20,14,0.04);
    border-color:transparent;
}

.faq-question {
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-family:var(--serif);
    font-size:0.98rem;
    font-weight:700;
    color:var(--ink);
    transition:color 0.3s;
    gap:20px;
}

.q-text {
    flex:1;
    line-height:1.5;
}

.faq-item.open .faq-question,.faq-item:hover .faq-question {
    color:var(--red);
}

.faq-arrow {
    font-size:1.4rem;
    font-weight:300;
    transition:transform 0.4s cubic-bezier(0.16,1,0.3,1);
    flex-shrink:0;
    line-height:1;
    color:var(--mute);
}

.faq-item.open .faq-arrow {
    transform:rotate(45deg);
    color:var(--red);
}

.faq-answer {
    max-height:0;
    overflow:hidden;
    transition:all 0.5s cubic-bezier(0.16,1,0.3,1);
}

.faq-item.open .faq-answer {
    max-height:400px;
    padding-top:16px;
}

.faq-answer p {
    font-size:0.92rem;
    line-height:1.7;
    color:var();
    margin:0;
}

.cta-section {
    padding:110px 0;
    text-align:center;
    background:var(--paper-deep);
}

.cta-section h2 {
    font-family:var(--serif);
    font-size:clamp(2rem,5vw,3.2rem);
    font-weight:900;
    margin-bottom:6px;
    line-height:1.15;
}

.cta-section h2 .highlight {
    color:var(--red);
}

.cta-section p {
    font-size:1.05rem;
    color:var(--ink-soft);
    max-width:680px;
    margin:0 auto 40px;
    line-height:1.8;
    font-weight:500;
}

.cta-buttons {
    display:flex;
    gap:14px;
    justify-content:center;
    flex-wrap:wrap;
}

.fade-up {
    opacity:0;
    transform:translateY(32px);
    transition:opacity 0.7s var(--ease),transform 0.7s var(--ease);
}

.fade-up.visible {
    opacity:1;
    transform:translateY(0);
}

@media (min-width:1600px) {
  .hero-service-v2 .container {
    max-width:1500px;
}

.hero-service-v2 {
    padding:200px 0 120px;
}

.hero-title {
    font-size:82px;
    margin-bottom:30px;
}

.hero-desc {
    font-size:20px;
    max-width:700px;
    margin-bottom:50px;
}

.hero-main-layout {
    gap:100px;
    grid-template-columns:1fr 1fr;
}

.visual-image-card {
    max-width:800px;
}

.cta-bold-btn,.cta-outline-btn {
    font-size:16px;
    padding:18px 42px;
}

.two-tracks .container {
    max-width:1500px;
}

.two-tracks .section-title {
    font-size:3.5rem;
}

.two-tracks .section-subtitle {
    font-size:2.5rem;
}

.two-tracks .section-desc {
    font-size:1.3rem;
    max-width:800px;
}

.track-card {
    padding:45px 40px;
}

.track-cat {
    font-size:1rem;
}

.track-target {
    font-size:1.1rem;
}

.track-card .card-desc {
    font-size:1.1rem;
    margin-bottom:40px;
}

.sub-card {
    padding:18px 22px;
    gap:20px;
}

.sub-card-content strong {
    font-size:0.95rem;
}

.sub-card-content p {
    font-size:0.8rem;
}

.engagement .container {
    max-width:1500px;
}

.engagement .section-label {
    font-size:1.2rem;
    margin-bottom:25px;
}

.engagement .section-title {
    font-size:3.5rem;
    margin-bottom:60px;
}

.toggle-btn {
    padding:16px 36px;
    font-size:1.05rem;
}

.phase-cards {
    max-width:1400px;
    gap:30px;
}

.timeline-track {
    max-width:1400px;
}

.phase-card {
    padding:40px 30px;
}

.phase-header {
    min-height:200px;
}

.phase-tag {
    font-size:0.8rem;
}

.phase-card h4 {
    font-size:1.3rem;
}

.phase-card p {
    font-size:1rem;
}

.deliverables-label {
    font-size:11px;
}

.deliverable-item {
    font-size:0.95rem;
    padding:14px 18px;
}

.approach .container {
    max-width:1500px;
}

.approach .section-label {
    font-size:3.6rem;
}

.approach .section-title {
    font-size:3.5rem;
}

.approach .section-subtitle {
    font-size:1.3rem;
    max-width:750px;
}

.approach-card {
    padding:60px 50px;
}

.approach-num {
    font-size:4.8rem;
    margin-bottom:30px;
}

.approach-card h4 {
    font-size:1.6rem;
}

.approach-card p {
    font-size:1.15rem;
}

.pricing .container {
    max-width:1500px;
}

.pricing .section-label {
    font-size:3.6rem;
}

.price-card {
    padding:36px;
}

.card-pill {
    font-size:0.8rem;
    padding:6px 14px;
}

.price-card h4 {
    font-size:2rem;
}

.price-card .card-desc {
    font-size:1.05rem;
}

.price-amount {
    font-size:3rem;
}

.price-tag {
    font-size:0.85rem;
    padding:10px 18px;
}

.btn-price {
    font-size:1.05rem;
    padding:18px 24px;
}

.custom-interlude .container {
    max-width:1500px;
}

.custom-interlude {
    padding:160px 0;
}

.interlude-label {
    font-size:13px;
}

.interlude-content h3 {
    font-size:4rem;
}

.interlude-text {
    font-size:1.5rem;
    max-width:750px;
}

.interlude-content .quote-mark {
    font-size:250px;
    top:-50px;
}

.attr-item h6 {
    font-size:0.9rem;
}

.attr-item p {
    font-size:1.05rem;
}

.faq .container {
    max-width:1500px;
}

.faq-heading h2 {
    font-size:3.5rem;
}

.faq-heading p {
    font-size:1.15rem;
    max-width:450px;
}

.faq-question {
    font-size:1.15rem;
}

.faq-answer p {
    font-size:1.05rem;
}

.cta-section .container {
    max-width:1500px;
}

.cta-section {
    padding:140px 0;
}

.cta-section h2 {
    font-size:4rem;
}

.cta-section p {
    font-size:1.3rem;
    max-width:800px;
}

.btn-primary {
    font-size:1.05rem;
    padding:18px 46px;
}

.btn-dark-outline {
    font-size:1rem;
    padding:14px 30px;
}

}

@media (min-width:2000px) {
  .hero-service-v2 .container {
    max-width:1800px;
}

.hero-service-v2 {
    padding:240px 0 150px;
}

.hero-title {
    font-size:96px;
    margin-bottom:40px;
}

.hero-desc {
    font-size:24px;
    max-width:850px;
    margin-bottom:60px;
    line-height:1.8;
}

.hero-main-layout {
    gap:140px;
}

.visual-image-card {
    max-width:1000px;
}

.cta-bold-btn,.cta-outline-btn {
    font-size:18px;
    padding:20px 48px;
}

.two-tracks .container {
    max-width:1800px;
}

.two-tracks {
    padding:140px 0;
}

.two-tracks .section-title {
    font-size:4rem;
}

.two-tracks .section-subtitle {
    font-size:2.8rem;
}

.two-tracks .section-desc {
    font-size:1.45rem;
    max-width:900px;
    margin-bottom:70px;
}

.two-tracks .row {
    --bs-gutter-x:3rem;
}

.track-card {
    padding:55px 50px;
}

.track-card-icon {
    width:75px;
    height:75px;
}

.track-cat {
    font-size:1.1rem;
}

.track-target {
    font-size:1.25rem;
}

.track-card .card-desc {
    font-size:1.2rem;
}

.sub-card {
    padding:22px 28px;
}

.sub-card-icon {
    width:45px;
    height:45px;
}

.sub-card-content strong {
    font-size:1.05rem;
}

.sub-card-content p {
    font-size:0.9rem;
}

.engagement .container {
    max-width:1800px;
}

.engagement {
    padding:160px 0;
}

.engagement .section-label {
    font-size:1.4rem;
    margin-bottom:30px;
}

.engagement .section-title {
    font-size:4.5rem;
    margin-bottom:75px;
}

.toggle-wrap {
    margin-bottom:75px;
}

.toggle-btn {
    padding:18px 42px;
    font-size:1.2rem;
}

.phase-cards {
    max-width:1700px;
    gap:40px;
}

.timeline-track {
    max-width:1700px;
}

.timeline-line-wrap {
    height:60px;
}

.timeline-dot {
    width:28px;
    height:28px;
    border-width:4px;
    box-shadow:0 0 0 4px var(--amber);
}

.timeline-dot::after {
    width:8px;
    height:8px;
}

.timeline-connector {
    height:50px;
    width:4px;
}

.phase-card {
    padding:50px 40px;
    border-radius:24px;
}

.phase-header {
    min-height:230px;
}

.phase-tag {
    font-size:0.9rem;
}

.phase-card h4 {
    font-size:1.5rem;
    margin-bottom:16px;
}

.phase-card p {
    font-size:1.15rem;
}

.deliverables-label {
    font-size:13px;
    margin-bottom:20px;
}

.deliverable-item {
    font-size:1.1rem;
    padding:16px 22px;
    border-radius:16px;
    gap:16px;
}

.d-icon {
    font-size:0.9rem;
}

.approach .container {
    max-width:1800px;
}

.approach {
    padding:170px 0;
}

.approach .section-label {
    font-size:4.2rem;
}

.approach .section-title {
    font-size:4.2rem;
    margin-bottom:25px;
}

.approach .section-subtitle {
    font-size:1.5rem;
    max-width:900px;
    margin-bottom:90px;
}

.approach .row {
    --bs-gutter-x:4rem;
    --bs-gutter-y:4rem;
}

.approach-card {
    padding:70px 60px;
    border-radius:30px;
}

.approach-num {
    font-size:5.5rem;
    margin-bottom:40px;
}

.approach-card h4 {
    font-size:1.8rem;
    margin-bottom:24px;
}

.approach-card p {
    font-size:1.3rem;
}

.pricing .container {
    max-width:1800px;
}

.pricing {
    padding:160px 0;
}

.pricing .section-label {
    font-size:4.5rem;
    margin-bottom:50px;
}

.pricing .row {
    --bs-gutter-x:3rem;
}

.price-card {
    padding:45px 45px 40px;
    border-radius:24px;
}

.card-pill {
    font-size:0.9rem;
    padding:8px 16px;
    margin-bottom:20px;
}

.price-card h4 {
    font-size:2.3rem;
    margin-bottom:16px;
}

.price-card .card-desc {
    font-size:1.2rem;
    margin-bottom:30px;
}

.price-label {
    font-size:13px;
    margin-bottom:8px;
}

.price-amount {
    font-size:3.5rem;
}

.price-type {
    font-size:1.1rem;
}

.price-tags {
    gap:12px;
    margin-bottom:30px;
}

.price-tag {
    font-size:0.95rem;
    padding:12px 22px;
}

.btn-price {
    font-size:1.2rem;
    padding:22px 30px;
    border-radius:60px;
}

.custom-interlude .container {
    max-width:1800px;
}

.custom-interlude {
    padding:200px 0;
}

.interlude-label {
    font-size:15px;
    margin-bottom:30px;
}

.interlude-content h3 {
    font-size:5.5rem;
    margin-bottom:30px;
}

.interlude-text {
    font-size:1.8rem;
    max-width:900px;
}

.interlude-content .quote-mark {
    font-size:300px;
    top:-60px;
    left:-40px;
}

.attr-item h6 {
    font-size:1.1rem;
}

.attr-item p {
    font-size:1.3rem;
}

.faq .container {
    max-width:1800px;
}

.faq {
    padding:180px 0;
}

.faq-heading h2 {
    font-size:4.5rem;
}

.faq-heading p {
    font-size:1.4rem;
    max-width:550px;
}

.faq-item {
    padding:30px 25px;
    margin-bottom:12px;
}

.faq-question {
    font-size:1.35rem;
}

.faq-answer p {
    font-size:1.25rem;
}

.cta-section .container {
    max-width:1800px;
}

.cta-section {
    padding:180px 0;
}

.cta-section h2 {
    font-size:5rem;
}

.cta-section p {
    font-size:1.5rem;
    max-width:900px;
}

.btn-primary {
    font-size:1.25rem;
    padding:22px 56px;
}

.btn-dark-outline {
    font-size:1.2rem;
    padding:18px 36px;
}

}

@media (min-width:2560px) {
  .hero-service-v2 .container {
    max-width:2300px;
}

.hero-service-v2 {
    padding:280px 0 180px;
}

.hero-title {
    font-size:130px;
    margin-bottom:50px;
}

.hero-desc {
    font-size:32px;
    max-width:1100px;
    margin-bottom:80px;
    line-height:1.8;
}

.hero-main-layout {
    gap:180px;
}

.visual-image-card {
    max-width:1200px;
    border-radius:32px;
}

.card-accent-border {
    top:40px;
    right:40px;
    bottom:40px;
    left:40px;
    border-width:3px;
    border-radius:28px;
}

.cta-bold-btn,.cta-outline-btn {
    font-size:26px;
    padding:28px 64px;
}

.mission-pill {
    padding:16px 36px;
    margin-bottom:40px;
}

.pill-text {
    font-size:18px;
}

.pill-icon {
    font-size:18px;
}

.two-tracks .container {
    max-width:2300px;
}

.two-tracks {
    padding:180px 0;
}

.two-tracks .section-title {
    font-size:5rem;
}

.two-tracks .section-subtitle {
    font-size:3.5rem;
}

.two-tracks .section-desc {
    font-size:1.8rem;
    max-width:1100px;
    margin-bottom:90px;
}

.two-tracks .row {
    --bs-gutter-x:5rem;
}

.track-card {
    padding:70px 60px;
    border-radius:30px;
}

.track-card-icon {
    width:90px;
    height:90px;
    border-radius:18px;
    padding:16px;
}

.track-cat {
    font-size:1.3rem;
}

.track-target {
    font-size:1.5rem;
}

.track-card .card-desc {
    font-size:1.5rem;
    margin-bottom:60px;
}

.sub-card {
    padding:30px 35px;
    border-radius:18px;
    gap:25px;
}

.sub-card-icon {
    width:60px;
    height:60px;
    padding:12px;
}

.sub-card-content strong {
    font-size:1.3rem;
    margin-bottom:6px;
}

.sub-card-content p {
    font-size:1.1rem;
    line-height:1.5;
}

.launch-soon-badge {
    padding:20px 40px;
}

.ls-text {
    font-size:1.2rem;
}

.section-label {
    font-size:clamp(24px,1.8vw,32px);
    letter-spacing:5px;
    margin-bottom:24px;
}

.engagement .container {
    max-width:2300px;
}

.engagement {
    padding:220px 0;
}

.engagement .section-label {
    font-size:1.8rem;
    margin-bottom:40px;
    letter-spacing:4px;
}

.engagement .section-title {
    font-size:6rem;
    margin-bottom:90px;
}

.toggle-wrap {
    margin-bottom:100px;
    gap:24px;
}

.toggle-btn {
    padding:24px 56px;
    font-size:1.5rem;
    border-width:3px;
}

.phase-cards {
    max-width:2200px;
    gap:50px;
}

.timeline-track {
    max-width:2200px;
}

.timeline-line-wrap {
    height:80px;
}

.timeline-dot {
    width:36px;
    height:36px;
    border-width:5px;
    box-shadow:0 0 0 5px var(--amber);
}

.timeline-dot::after {
    width:12px;
    height:12px;
}

.timeline-connector {
    height:70px;
    width:6px;
}

.timeline-line {
    height:6px;
    border-radius:4px;
}

.phase-card {
    padding:60px 50px;
    border-radius:32px;
}

.phase-header {
    min-height:280px;
    padding-bottom:40px;
}

.phase-tag {
    font-size:1.1rem;
    margin-bottom:12px;
}

.phase-card h4 {
    font-size:2rem;
    margin-bottom:24px;
}

.phase-card p {
    font-size:1.4rem;
    line-height:1.6;
}

.deliverables-label {
    font-size:16px;
    margin-bottom:28px;
    letter-spacing:3px;
}

.deliverable-item {
    font-size:1.35rem;
    padding:22px 30px;
    border-radius:20px;
    gap:20px;
}

.d-icon {
    font-size:1.1rem;
    margin-top:4px;
}

.approach .container {
    max-width:2300px;
}

.approach {
    padding:230px 0;
}

.approach .section-label {
    font-size:5.5rem;
    margin-bottom:30px;
}

.approach .section-title {
    font-size:5.5rem;
    margin-bottom:35px;
}

.approach .section-subtitle {
    font-size:1.8rem;
    max-width:1200px;
    margin-bottom:120px;
}

.approach .row {
    --bs-gutter-x:6rem;
    --bs-gutter-y:6rem;
}

.approach-card {
    padding:90px 80px;
    border-radius:40px;
}

.approach-num {
    font-size:7.5rem;
    margin-bottom:50px;
    -webkit-text-stroke:2px var(--rule);
}

.approach-card h4 {
    font-size:2.2rem;
    margin-bottom:30px;
}

.approach-card p {
    font-size:1.6rem;
    line-height:1.9;
}

.pricing .container {
    max-width:2300px;
}

.pricing {
    padding:200px 0;
}

.pricing .section-label {
    font-size:6rem;
    margin-bottom:70px;
    letter-spacing:6px;
}

.pricing .row {
    --bs-gutter-x:5rem;
}

.price-card {
    padding:60px 60px 55px;
    border-radius:32px;
}

.price-card::before {
    height:6px;
}

.price-card:hover::before {
    height:10px;
}

.card-pill {
    font-size:1.1rem;
    padding:12px 22px;
    margin-bottom:25px;
    border-radius:10px;
}

.price-card h4 {
    font-size:3rem;
    margin-bottom:20px;
}

.price-card .card-desc {
    font-size:1.5rem;
    margin-bottom:40px;
}

.price-label {
    font-size:16px;
    margin-bottom:12px;
    letter-spacing:3px;
}

.price-amount {
    font-size:4.5rem;
    gap:12px;
}

.price-type {
    font-size:1.4rem;
}

.price-tags {
    gap:16px;
    margin-bottom:40px;
}

.price-tag {
    font-size:1.2rem;
    padding:16px 28px;
    border-radius:60px;
}

.btn-price {
    font-size:1.5rem;
    padding:28px 40px;
    border-radius:80px;
}

.custom-interlude .container {
    max-width:2300px;
}

.custom-interlude {
    padding:260px 0;
}

.interlude-label {
    font-size:20px;
    margin-bottom:40px;
    letter-spacing:6px;
}

.interlude-content h3 {
    font-size:7.5rem;
    margin-bottom:50px;
}

.interlude-text {
    font-size:2.4rem;
    max-width:1200px;
    line-height:1.7;
}

.interlude-content .quote-mark {
    font-size:400px;
    top:-80px;
    left:-60px;
}

.attr-item {
    gap:30px;
}

.attr-dot {
    width:14px;
    height:14px;
    margin-top:12px;
}

.attr-item h6 {
    font-size:1.5rem;
    margin-bottom:12px;
}

.attr-item p {
    font-size:1.6rem;
}

.faq .container {
    max-width:2300px;
}

.faq {
    padding:240px 0;
}

.faq-heading h2 {
    font-size:6.5rem;
    margin-bottom:40px;
}

.faq-heading p {
    font-size:1.8rem;
    max-width:700px;
    line-height:1.8;
}

.faq-item {
    padding:40px 35px;
    margin-bottom:20px;
    border-radius:24px;
}

.faq-question {
    font-size:1.8rem;
}

.faq-answer p {
    font-size:1.6rem;
    line-height:1.8;
}

.faq-arrow {
    font-size:2.2rem;
}

.cta-section .container {
    max-width:2300px;
}

.cta-section {
    padding:220px 0;
}

.cta-section h2 {
    font-size:6.5rem;
    margin-bottom:20px;
}

.cta-section p {
    font-size:2rem;
    max-width:1200px;
    margin-bottom:60px;
}

.cta-buttons {
    gap:24px;
}

.btn-primary {
    font-size:1.6rem;
    padding:30px 70px;
}

.btn-dark-outline {
    font-size:1.5rem;
    padding:24px 46px;
    border-width:2.5px;
}

.footer-upper {
    padding:150px 10% 120px;
}

.footer-top-row {
    gap:140px;
    margin-bottom:100px;
    padding-bottom:80px;
}

.footer-logo-img {
    width:220px;
}

.footer-brand-name {
    font-size:34px;
}

.footer-desc-main {
    font-size:1.6rem;
    max-width:1100px;
}

.footer-desc-tagline {
    font-size:1.7rem;
}

.footer-nav-row {
    gap:120px;
}

.footer-col-title {
    font-size:1.6rem;
    margin-bottom:40px;
}

.footer-links a,.footer-email-link {
    font-size:1.6rem;
}

.footer-bottom-strip {
    padding:50px 10%;
}

.footer-copy {
    font-size:1.4rem;
}

.social-btn {
    width:54px;
    height:54px;
}

.social-btn svg {
    width:22px;
    height:22px;
}

}

@media (max-width:992px) {
  .hero {
    padding:140px 0 60px;
    text-align:left;
}

.hero .section-title {
    font-size:clamp(1.8rem,5vw,2.8rem);
    text-align:left;
    margin-bottom:20px;
}

.hero-label-wrap {
    justify-content:flex-start;
    margin-bottom:15px;
}

.hero-desc {
    margin:0 0 30px;
    text-align:left;
    font-size:clamp(0.95rem,1.3vw,1.15rem);
}

.hero .row {
    flex-direction:column;
}

.hero-image-wrapper {
    justify-content:center !important;
    margin-top:40px;
}

.hero-image-card {
    width:100%;
    max-width:100%;
    height:auto;
    aspect-ratio:4/3;
}

.hero-actions {
    display:flex;
    flex-direction:row;
    gap:12px;
    align-items:center;
    flex-wrap:wrap;
    margin-top:20px;
}

.hero-actions .ms-3 {
    margin-left:0 !important;
}

.phase-cards {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    margin-top:30px;
    padding:0 20px;
}

.timeline-track {
    display:none !important;
}

.phase-card {
    opacity:1 !important;
    transform:none !important;
}

.phase-card h4 {
    white-space:normal;
    font-size:1rem;
}

.phase-tag {
    white-space:normal;
}

.approach .section-title,.approach .section-label,.approach .section-subtitle {
    text-align:center;
    margin-left:auto;
    margin-right:auto;
}

.approach .section-subtitle {
    margin-left:auto;
    margin-right:auto;
}

.footer-top-row {
    grid-template-columns:1fr;
    gap:28px;
}

.footer-logo-block {
    width:100%;
}

.footer-nav-row {
    grid-template-columns:repeat(2,1fr);
    gap:32px;
}

.track-card {
    padding:28px 24px;
}

}

@media (max-width:768px) {
  .hero {
    padding:110px 5% 50px;
}

.hero-service-v2 .hero-title {
    font-size:clamp(28px,6vw,42px);
    text-align:left;
}

.hero-desc {
    font-size:clamp(0.9rem,1.2vw,1rem);
    text-align:left;
}

.hero-actions {
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:flex-start;
    width:100%;
    gap:16px;
}

.cta-bold-btn,.cta-outline-btn {
    width:auto;
    padding:14px 32px;
    font-size:15px;
    text-align:center;
}

.phase-cards {
    grid-template-columns:1fr;
    gap:16px;
}

.phase-card {
    padding:24px 20px;
    text-align:left;
    grid-template-rows:auto auto;
}

.phase-header {
    padding-bottom:16px;
}

.phase-deliverables {
    min-height:auto;
    padding:20px 15px;
}

.deliverable-item {
    min-height:auto;
}

.pricing {
    padding:80px 5%;
}

.pricing .section-label {
    font-size:2rem;
    margin-bottom:30px;
}

.approach .section-label {
    font-size:2rem;
}

.faq .section-label {
    text-align:center;
    margin-bottom:10px;
}

.faq-heading {
    text-align:center;
    margin-bottom:40px;
}

.faq-heading h2 {
    font-size:clamp(24px,5vw,32px);
}

.faq-heading p {
    margin:0 auto;
}

.faq-item {
    padding:20px 15px;
}

.price-card {
    padding:22px 20px;
}

.price-amount {
    font-size:2rem;
}

.price-tag {
    padding:6px 12px;
    font-size:0.7rem;
}

.two-tracks {
    padding:70px 5%;
}

.track-card {
    padding:24px 20px;
}

.track-card-header {
    margin-bottom:16px;
    gap:12px;
}

.track-card-icon {
    width:50px;
    height:50px;
    padding:8px;
}

.track-cat {
    font-size:0.8rem;
}

.track-target {
    font-size:0.85rem;
}

.track-card .card-desc {
    font-size:0.88rem;
    margin-bottom:20px;
}

.sub-card {
    padding:10px 12px;
    gap:10px;
}

.sub-card-icon {
    width:30px;
    height:30px;
    padding:4px;
}

.sub-card-content strong {
    font-size:0.75rem;
}

.sub-card-content p {
    font-size:0.65rem;
}

.engagement {
    padding:70px 5%;
}

.faq {
    padding:70px 5%;
}

.cta-section {
    padding:70px 5%;
}

.toggle-wrap {
    gap:10px;
    margin-bottom:40px;
}

.toggle-btn {
    padding:12px 24px;
    font-size:0.82rem;
}

.footer-upper {
    padding:60px 6% 48px;
    text-align:center;
}

.footer-top-row {
    text-align:center;
}

.footer-logo-block {
    margin:0 auto;
}

}

@media (max-width:576px) {
  }

@media (max-width:480px) {
  .hero .section-title {
    font-size:1.5rem;
}

.logo-text {
    font-size:18px;
}

.toggle-btn {
    padding:10px 18px;
    font-size:0.78rem;
    border-radius:30px;
}

.engagement .section-title {
    font-size:1.5rem;
}

.phase-card h4 {
    font-size:0.9rem;
}

}
