/* Search-ad arrival: clear hierarchy, immediate contact and a calm enquiry path. */
:root{--service-lift:0 18px 40px #1e0b3c10,0 3px 8px #1e0b3c06;--service-quiet-shadow:0 8px 22px #1e0b3c08}
.campaign-header{position:relative;z-index:5;border-bottom:1px solid #e8ebf0;background:var(--paper);padding-top:18px;padding-bottom:18px}
.campaign-header nav a:last-child{box-shadow:0 4px 10px #4c1d9512;transition:background .2s,box-shadow .2s}
.campaign-hero{padding-top:40px;padding-bottom:48px;gap:4%;min-height:630px}
.hero-copy{position:relative;z-index:2}
.hero-intro{font-size:18px;line-height:1.65;max-width:47ch}
.hero-actions{margin-top:27px}
.hero-actions .pointed-action{min-height:56px;box-shadow:0 10px 23px #4c1d951c}
.hero-copy>.channel-pair{gap:12px;margin-top:15px;align-items:center}
.hero-copy>.channel-pair a{border:1px solid #dfe3eb;border-radius:7px;background:#ffffffbd;padding:0 13px;min-height:44px;text-decoration:none;font-size:12px;box-shadow:0 3px 8px #1e0b3c04;transition:background .2s,border-color .2s,box-shadow .2s}
.hero-copy>.channel-pair a:first-child{background:white;color:var(--violet);border-color:#c5afdF}
.hero-copy>.channel-pair a:hover{background:#ffffff;border-color:var(--violet);box-shadow:0 5px 12px #1e0b3c0a}
.hero-copy>.channel-pair .channel-hint{font-size:10px;font-weight:400;color:var(--muted);border-left:1px solid #dfe3eb;padding-left:8px;margin-left:1px}
.hero-assurance{font-size:12px;line-height:1.5;margin-top:18px;max-width:48ch}
.dark-opening .hero-copy>.channel-pair a{background:#fff;color:var(--violet)}
.dark-opening .hero-copy>.channel-pair a:hover{background:#ffffff}
.hero-demonstration{min-width:0}
.service-assurances{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 5%;border-top:1px solid #e8ebf0;border-bottom:1px solid #e8ebf0;background:#ffffff}
.service-assurances>span{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.5;color:var(--muted)}
.service-assurances svg{color:var(--violet)}
.comp-benefits{gap:30px;padding-top:40px;padding-bottom:40px}
.comp-benefits article{position:relative;padding-left:27px}
.comp-benefits .service-icon{width:44px;height:44px;border-radius:12px;transform:none;margin-bottom:18px;box-shadow:0 5px 12px #4c1d950a}
.comp-benefits .service-icon svg{width:25px;height:25px}
.comp-benefits-dark .service-icon{background:#ffffff;color:var(--violet)}
.comp-benefits h3{font-size:18px;letter-spacing:-.02em}
.comp-benefits p{font-size:14px;line-height:1.65}
.process ol{margin:0;gap:28px}
.process li:before{border:0;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e8ebf0;color:var(--violet);box-shadow:0 5px 12px #4c1d9509;line-height:1;font-weight:650}
.process h3{font-size:17px;letter-spacing:-.015em}
.process li p{font-size:13px;line-height:1.65}
.dark-process .process li:before{background:#ffffff;color:var(--violet)}
.packages .package-list article{transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s}
.enquiry-section{background:linear-gradient(130deg,#ffffff,#ffffff);gap:7%;padding-top:60px;padding-bottom:60px}
.enquiry-section:target .campaign-form{border-color:#ab8acc;box-shadow:0 18px 40px #4c1d9510}
.campaign-form{box-shadow:var(--service-lift);border-color:#dfe3eb;padding:29px;border-radius:13px;transition:border-color .3s,box-shadow .3s}
.campaign-form label{font-size:12px;line-height:1.5;font-weight:600;gap:7px;margin-bottom:16px}
.campaign-form input:not([type=hidden]),.campaign-form textarea{background:#fdfcfe;min-height:46px;border-color:#c6b6d6;border-radius:6px;padding:11px 12px;transition:border-color .2s,box-shadow .2s,background .2s}
.campaign-form textarea{min-height:110px;font-size:14px;line-height:1.6}
.campaign-form input:not([type=hidden]):hover,.campaign-form textarea:hover{border-color:#9d80be}
.campaign-form input:not([type=hidden]):focus,.campaign-form textarea:focus{background:#fff;border-color:var(--violet);box-shadow:0 0 0 3px #8b5cf614;outline:2px solid var(--violet);outline-offset:2px}
.campaign-form .optional-fields{margin-bottom:15px;border-top:1px solid #e8ebf0}
.campaign-form .optional-fields summary{font-size:12px;line-height:1.5;min-height:46px;padding:13px 0}
.campaign-form .pointed-action{min-height:54px;font-size:15px}
.campaign-form .form-privacy{font-size:11px;line-height:1.6}
.campaign-form .terms-line{font-size:10px;line-height:1.6;margin-bottom:18px}
.enquiry-copy>p{font-size:16px;line-height:1.65}
.enquiry-copy .next-note{font-size:13px;line-height:1.65;max-width:47ch}
.enquiry-questions{margin-top:32px;max-width:49ch}
.enquiry-questions details{border-top:1px solid #dfe3eb}
.enquiry-questions summary{font-size:14px;line-height:1.5;min-height:48px;padding:14px 0}
.enquiry-questions details p{font-size:13px;line-height:1.65;color:var(--muted);padding:0 0 17px}
.scope-and-form .enquiry-questions,.process-and-form .enquiry-questions{margin-top:20px}
.scope-and-form .enquiry-questions summary,.process-and-form .enquiry-questions summary{font-size:12px;min-height:44px;padding:12px 0}
.scope-and-form .enquiry-questions details p,.process-and-form .enquiry-questions details p{font-size:12px}
.scope-and-form .enquiry-copy{margin-bottom:24px}
.comp-close{background:linear-gradient(125deg,#32105c,#4c1d95);padding-top:45px;padding-bottom:45px;position:relative;isolation:isolate;overflow:hidden}
.comp-close:before{content:"";position:absolute;inset:0 50% 0 0;background:linear-gradient(145deg,transparent 48%,#ffffff07 48%,#ffffff02 72%,transparent 72%);z-index:-1}
.simple-footer{border-top:1px solid #e8ebf0}
.simple-footer>a img{filter:none}
.mobile-enquiry-bar{display:none}
.mobile-enquiry-bar[hidden]{display:none!important}
.campaign-page[data-service=websites] .campaign-hero{gap:1%;padding-top:35px;padding-bottom:40px;min-height:590px}
.campaign-page[data-service=websites] .hero-copy{margin-right:0}
.campaign-page[data-service=websites] .campaign-hero h1{font-size:clamp(35px,3.65vw,53px)}
.campaign-page[data-service=websites] .showcase-websites>div{display:block}
.campaign-page[data-service=websites] .showcase-websites h2{white-space:normal;max-width:25ch}
.campaign-page[data-service=websites] .showcase-websites>div>p{margin-top:18px;max-width:65ch}
.campaign-page[data-service=websites] .packages{padding-top:30px}
.campaign-page[data-service=landing-pages] .campaign-hero{min-height:790px;grid-template-columns:.95fr 1.05fr}
.campaign-page[data-service=landing-pages] .hero-copy{padding-top:35px}
.campaign-page[data-service=portals] .campaign-hero{gap:30px;padding-top:35px;padding-bottom:45px}
.campaign-page[data-service=portals] .hero-copy>.channel-pair{justify-content:center}
.campaign-page[data-service=portals] .hero-intro{margin-top:20px;max-width:61ch}
.campaign-page[data-service=portals] .hero-assurance{margin-top:15px}
.campaign-page[data-service=portals] .hero-demonstration{width:min(1080px,100%)}
.campaign-page[data-service=presentations] .campaign-hero{padding-top:30px}
.campaign-page[data-service=presentations] .hero-copy>.channel-pair{margin-top:15px}
.showcase-portals,.showcase-web-apps{grid-template-columns:1fr 1fr}
.showcase-social-content{grid-template-columns:.85fr 1.15fr}
.showcase-branding>div{margin-bottom:35px}
.bespoke-workflow-automation .workflow-steps li{font-size:14px;padding-top:17px;padding-bottom:17px}
.bespoke-email-journeys .email-paper{border-radius:4px;background:#ffffff;padding:28px}
.bespoke-email-journeys .email-paper h3{font-size:31px;line-height:1.12;letter-spacing:-.035em}
.bespoke-assistants .chat-answer{min-height:0;font-size:14px;line-height:1.65}
.bespoke-assistants .chat-question{margin-top:16px}
.bespoke-bookings .demo-days{margin-top:24px}
.bespoke-bookings .demo-days button{min-height:54px}
.bespoke-bookings .time-options button{min-height:47px}
@media(hover:hover) and (pointer:fine){.packages .package-list article:hover{transform:translateY(-4px);border-color:#bda4d9;box-shadow:0 14px 25px #1e0b3c10}.campaign-header nav a:last-child:hover{background:var(--ink);box-shadow:0 6px 15px #4c1d951a}}
@media(max-width:1000px){.campaign-header{padding-top:15px;padding-bottom:15px}.hero-actions .pointed-action{font-size:14px;padding:9px 14px}.campaign-hero{min-height:0;gap:4%}.hero-copy>.channel-pair{gap:8px}.hero-copy>.channel-pair a{font-size:11px;padding:0 10px}.hero-copy>.channel-pair .channel-hint{display:none}.campaign-form{padding:24px}.service-assurances>span{font-size:11px}.campaign-page[data-service=websites] .campaign-hero{min-height:0}.campaign-page[data-service=landing-pages] .campaign-hero{min-height:0}.native-plan header>span{display:none}}
@media(max-width:700px){
 .campaign-header{padding:14px 5%;gap:12px}.campaign-header img{width:123px}.campaign-header nav{gap:12px;font-size:11px}.campaign-header nav a:last-child{padding:0 11px;min-height:42px}
 .campaign-hero,.campaign-page[data-service=websites] .campaign-hero,.campaign-page[data-service=landing-pages] .campaign-hero,.campaign-page[data-service=social-video] .campaign-hero{padding:28px 5% 35px;grid-template-columns:1fr;gap:28px;min-height:0}
 .campaign-page[data-service=landing-pages] .hero-copy{padding-top:0}
 .hero-intro{font-size:16px;line-height:1.65;margin-top:20px;max-width:49ch}
 .hero-actions{margin-top:24px}.hero-actions .pointed-action{font-size:14px;min-height:54px;padding:10px 15px}
 .hero-copy>.channel-pair{gap:10px;margin-top:14px}.hero-copy>.channel-pair a{padding:0 12px;min-height:44px;font-size:12px}.hero-copy>.channel-pair .channel-hint{display:inline;font-size:9px}
 .hero-assurance{font-size:11px;line-height:1.6;margin-top:15px}
 .service-assurances{flex-direction:column;align-items:flex-start;gap:9px;padding:20px 5%}.service-assurances>span{font-size:11px;gap:9px}
 .comp-benefits{padding-top:25px;padding-bottom:25px;gap:0}.comp-benefits article,.comp-benefits article:first-child{display:grid;grid-template-columns:44px 1fr;column-gap:18px;padding:23px 0}.comp-benefits article .service-icon{grid-row:1/3;margin:0}.comp-benefits article h3{font-size:17px}.comp-benefits article p{font-size:13px;line-height:1.65;margin-top:8px}
 .process ol{gap:22px}.process li{padding-left:47px}.process li:before{width:30px;height:30px}.process h3{font-size:16px}.process li p{font-size:13px}
 .enquiry-section{padding:42px 5%;gap:27px}.enquiry-copy>p{font-size:15px}.enquiry-copy .next-note{font-size:12px;line-height:1.65}.campaign-form{padding:24px 19px}.campaign-form label{font-size:12px}.campaign-form input:not([type=hidden]){font-size:16px;min-height:46px}.campaign-form textarea{font-size:16px;min-height:115px}.campaign-form .pointed-action{font-size:14px}.enquiry-questions{margin-top:25px}.enquiry-questions summary{font-size:13px}.enquiry-questions details p{font-size:12px}
 .scope-and-form .enquiry-copy{margin-bottom:24px}.comp-close{padding-top:35px;padding-bottom:35px}
 .campaign-page[data-service=presentations] .campaign-hero{padding-top:28px}.campaign-page[data-service=presentations] .hero-copy>.channel-pair{justify-content:flex-start}.presentation-aside{display:none}
 .campaign-page[data-service=portals] .campaign-hero{padding-top:28px;gap:28px}.campaign-page[data-service=portals] .hero-copy>.channel-pair{justify-content:flex-start}.campaign-page[data-service=portals] .hero-assurance{margin-left:0}.campaign-page[data-service=portals] .hero-intro{margin-top:20px}
 .showcase-portals,.showcase-web-apps,.showcase-social-content{grid-template-columns:1fr}
 body.campaign-page[data-service]{padding-bottom:84px}
 .mobile-enquiry-bar{position:fixed;left:0;right:0;bottom:0;z-index:20;padding:12px 5% max(12px,env(safe-area-inset-bottom));background:#fffffff7;border-top:1px solid #dfe3eb;box-shadow:0 -6px 25px #1e0b3c0d}
 .mobile-enquiry-bar .pointed-action{width:100%;justify-content:center;font-size:14px;min-height:50px}
 .mobile-enquiry-bar:not([hidden]){display:block}
}
@media(max-width:370px){.campaign-header nav>a:nth-child(2){display:none}.hero-copy>.channel-pair .channel-hint{display:none}}
@media(prefers-reduced-motion:reduce){.campaign-form,.campaign-form input,.campaign-form textarea,.packages .package-list article,.campaign-header nav a,.hero-copy>.channel-pair a{transition:none!important}}
.process li:before{left:0;top:0}
/* Final review corrections: ordinary flow reserves each complete design. */
.campaign-page[data-service=websites] .showcase-websites{display:block}
.campaign-page[data-service=websites] .showcase-websites>.native-work-pair{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:28px 0 0}
@media(max-width:700px){.campaign-page[data-service=websites] .showcase-websites>.native-work-pair{grid-template-columns:1fr;gap:20px;margin-top:25px}}
/* Standalone prices use Pointed's display face; running copy stays in Inter. */
.package-list strong,.calculator .estimate output{font-family:Bungee,Inter,sans-serif;font-weight:400;letter-spacing:-.025em;font-variant-numeric:normal}
@media(min-width:701px) and (max-width:1000px){.campaign-page[data-service=websites] .packages{display:block}}
@media(max-width:700px){.package-list strong{font-size:30px;white-space:nowrap}}
